diff --git a/.dockerignore b/.dockerignore index e0bfcd4eca9..b7c3d2235b7 100644 --- a/.dockerignore +++ b/.dockerignore @@ -16,3 +16,5 @@ logs /worlds #.mvn dependency-reduced-pom.xml +* +!/target/powernukkit-*.jar diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md deleted file mode 100644 index e504979cc44..00000000000 --- a/.github/CONTRIBUTING.md +++ /dev/null @@ -1,107 +0,0 @@ -How to submit a bug report ---- - -Before creating an issue, make sure: - 1. Your title and content is not confusing or content-less. - 2. All text is written in proper English. - -If it's a bug or problem: - 1. This bug can be reproduced. - 2. This bug can be found in the latest build. - 3. Dumps, backtraces or files are provided. - 4. It's you yourself who first found this bug. - -If it's advice or a feature request: - 1. This feature does not exist in the latest build. - 2. This feature is logical and clear-cut. - 3. It's you yourself who first came up with the idea. - -Nukkit will create a bug report for EVERY exception and error detected, and there are some columns you need to fill out in the report. If multiple exceptions are triggered, you should combine the stacktrace into one report and then submit the report. - -In the report, you can see if the error is caused by Nukkit or a plugin. However, when "PLUGIN ERROR" is "false" and there are plugins running, it does not necessarily indicate that the error is caused by Nukkit. - -To submit bugs and problems, please upload the automatically generated report. Make sure you have filled in all blanks in the template. Please provide **as much information as you could**, or our developers might got stuck or confused when looking into your issue. - -To submit feature requests and suggestions, please explicitly describe the feature you want or your suggestion. - -**Note that the Issues section on GitHub is not for contents that are not related to the two categories listed above. Irrelevant issues will be closed. Please visit our forums for other kinds of discussions.** - -Example ---- - -### Issue Description - -It seems that the player you are manipulating does not seem to be moving from other people, and it seems that you are not moving from others. - -I do not know because I have not logged in to anything other than my server, but it works normally with Wi-Fi multi. - -### OS and Versions - -* Nukkit Version: https://github.com/Nukkit/Nukkit/pull/1517 - -* Java Version: -``` -java version "9" -Java(TM) SE Runtime Environment (build 9+175) -Java HotSpot(TM) 64-Bit Server VM (build 9+175, mixed mode) -``` - -* Host Configuration: - - -| Item | Value | -|:----:|:-----:| -| Host OS | Microsoft Windows [10.0.10240] | -| Memory(RAM) | 4 GB | -| Storage Size | 1 TB | -| Storage Type | SSD | -| CPU Type | Intel Xeon X5650 | -| CPU Core Count | 12 cores 24 threads | -| Upstream Bandwidth | 100 Mbps | - -* Client Configuration: - -| Item | Value | -|:----:|:-----:| -| Client Edition | Android | -| Client Version | 1.0.4 | - -``` -### Issue Description - -It seems that the player you are manipulating does not seem to be moving from other people, and it seems that you are not moving from others. - -I do not know because I have not logged in to anything other than my server, but it works normally with Wi-Fi multi. - -### OS and Versions - -* Nukkit Version: https://github.com/Nukkit/Nukkit/pull/1517 - -* Java Version: - -java version "9" -Java(TM) SE Runtime Environment (build 9+175) -Java HotSpot(TM) 64-Bit Server VM (build 9+175, mixed mode) - - -* Host Configuration: - - -| Item | Value | -|:----:|:-----:| -| Host OS | Microsoft Windows [10.0.10240] | -| Memory(RAM) | 4 GB | -| Storage Size | 1 TB | -| Storage Type | SSD | -| CPU Type | Intel Xeon X5650 | -| CPU Core Count | 12 cores 24 threads | -| Upstream Bandwidth | 100 Mbps | - -* Client Configuration: - -| Item | Value | -|:----:|:-----:| -| Client Edition | Android | -| Client Version | 1.0.4 | - -``` diff --git a/.github/workflows/github-publish-release.yml b/.github/workflows/github-publish-release.yml index c60786d8a6a..22ffe4229f2 100644 --- a/.github/workflows/github-publish-release.yml +++ b/.github/workflows/github-publish-release.yml @@ -28,12 +28,12 @@ jobs: run: sed -i 's@-CUSTOM@@' pom.xml - name: Build with Maven - run: mvn -B package --file pom.xml + run: mvn --no-transfer-progress -B package --file pom.xml - name: Adjust the release repository url run: sed -i 's@https://oss.sonatype.org/service/local/staging/deploy/maven2/@https://maven.pkg.github.com/PowerNukkit/PowerNukkit@' pom.xml - name: Publish to GitHub Packages Apache Maven - run: mvn -B deploy -Dgpg.skip=true -DskipTests=false -s $GITHUB_WORKSPACE/settings.xml + run: mvn --no-transfer-progress -B deploy -Dgpg.skip=true -DskipTests=false -s $GITHUB_WORKSPACE/settings.xml env: GITHUB_TOKEN: ${{ github.token }} diff --git a/.github/workflows/github-publish-snapshot.yml b/.github/workflows/github-publish-snapshot.yml index 0f6852c36eb..8e6a6e2ec9d 100644 --- a/.github/workflows/github-publish-snapshot.yml +++ b/.github/workflows/github-publish-snapshot.yml @@ -29,12 +29,12 @@ jobs: run: sed -i 's@-CUSTOM@@' pom.xml - name: Build with Maven - run: mvn -B package --file pom.xml + run: mvn --no-transfer-progress -B package --file pom.xml - name: Adjust the snapshot repository url run: sed -i 's@https://oss.sonatype.org/content/repositories/snapshots@https://maven.pkg.github.com/PowerNukkit/PowerNukkit@' pom.xml - name: Publish to GitHub Packages Apache Maven - run: mvn -B deploy -Dgpg.skip=true -DskipTests=false -s $GITHUB_WORKSPACE/settings.xml + run: mvn --no-transfer-progress -B deploy -Dgpg.skip=true -DskipTests=false -s $GITHUB_WORKSPACE/settings.xml env: GITHUB_TOKEN: ${{ github.token }} diff --git a/.github/workflows/javadoc.yml b/.github/workflows/javadoc.yml index ca0d509a515..287f2f862ae 100644 --- a/.github/workflows/javadoc.yml +++ b/.github/workflows/javadoc.yml @@ -26,10 +26,10 @@ jobs: - name: Adjust pom.xml run: sed -i 's/-CUSTOM//g' pom.xml - name: Generate javadoc - run: mvn javadoc:javadoc + run: mvn --no-transfer-progress javadoc:javadoc - name: Get version run: | - PN_VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout) + PN_VERSION=$(mvn --no-transfer-progress help:evaluate -Dexpression=project.version -q -DforceStdout) echo "Version: $PN_VERSION" echo "PN_VERSION=$PN_VERSION" >> $GITHUB_ENV - uses: actions/checkout@v2 diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml index 4027cefa30a..628b6a71d41 100644 --- a/.github/workflows/maven.yml +++ b/.github/workflows/maven.yml @@ -24,7 +24,7 @@ jobs: with: java-version: 1.8 - name: Build with Maven - run: mvn -B package -DskipTests=false -Darguments="-Dmaven.javadoc.skip=true" + run: mvn --no-transfer-progress -B package -DskipTests=false -Darguments="-Dmaven.javadoc.skip=true" - name: Rename artifacts run: mv target/powernukkit-*-shaded.jar target/powernukkit.jar - name: Archive artifacts diff --git a/.github/workflows/notify-sentry-release.yml b/.github/workflows/notify-sentry-release.yml index e8512ca3da9..a398f14d0e5 100644 --- a/.github/workflows/notify-sentry-release.yml +++ b/.github/workflows/notify-sentry-release.yml @@ -21,7 +21,7 @@ jobs: - name: Get version run: | SHA=$(echo $GITHUB_SHA | cut -c1-7) - PN_VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)-git-$SHA + PN_VERSION=$(mvn --no-transfer-progress help:evaluate -Dexpression=project.version -q -DforceStdout)-git-$SHA echo "Version: $PN_VERSION" echo "PN_VERSION=$PN_VERSION-git" >> $GITHUB_ENV - name: Create Sentry release diff --git a/.github/workflows/publish-snapshot.yml b/.github/workflows/publish-snapshot.yml index a4ab115cdfc..71f0f43cfe0 100644 --- a/.github/workflows/publish-snapshot.yml +++ b/.github/workflows/publish-snapshot.yml @@ -26,7 +26,13 @@ jobs: server-username: MAVEN_USERNAME server-password: MAVEN_PASSWORD - name: Publish snapshot - run: mvn -B deploy -Dgpg.skip=true -DskipTests=false + run: mvn --no-transfer-progress -B deploy -Dgpg.skip=true -DskipTests=false env: MAVEN_USERNAME: ${{ secrets.POWERNUKKIT_SNAPSHOT_USER }} MAVEN_PASSWORD: ${{ secrets.POWERNUKKIT_SNAPSHOT_PASSWORD }} + - name: Trigger powernukkit-versions.json update + uses: peter-evans/repository-dispatch@v2 + with: + token: ${{ secrets.POWERNUKKIT_VERSIONS_TOKEN }} + event-type: update-versions-json + repository: PowerNukkit/powernukkit-version-aggregator diff --git a/.github/workflows/sonar.yml b/.github/workflows/sonar.yml new file mode 100644 index 00000000000..8ef0cc4cfda --- /dev/null +++ b/.github/workflows/sonar.yml @@ -0,0 +1,38 @@ +name: Sonar +on: + push: + branches: + - master + - bleeding + pull_request: + types: [opened, synchronize, reopened] +jobs: + build: + name: Sonar + runs-on: ubuntu-latest + #if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository + steps: + - uses: actions/checkout@v1 + with: + submodules: true + - name: Set up JDK 11 + uses: actions/setup-java@v1 + with: + java-version: 11 + - name: Cache SonarCloud packages + uses: actions/cache@v1 + with: + path: ~/.sonar/cache + key: ${{ runner.os }}-sonar + restore-keys: ${{ runner.os }}-sonar + - name: Cache Maven packages + uses: actions/cache@v1 + with: + path: ~/.m2 + key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} + restore-keys: ${{ runner.os }}-m2 + - name: Build and analyze + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any + SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} + run: mvn --no-transfer-progress -B verify -Dmaven.javadoc.skip=true -Dgpg.skip=true -DskipTests=false -Denforcer.skip=true --no-transfer-progress org.sonarsource.scanner.maven:sonar-maven-plugin:sonar -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn diff --git a/.gitignore b/.gitignore index 7db4d2e93fd..4167682c346 100644 --- a/.gitignore +++ b/.gitignore @@ -234,6 +234,10 @@ data/ data/* /src/main/resources/rebel.xml /run +!/src/main/resources/* +!/src/main/resources/**/* +!/src/test/resources/* +!/src/test/resources/**/* ### Add the codestyle to the repo !/.idea/codeStyles diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml index 1b48798caab..b66515b41bd 100644 --- a/.idea/codeStyles/Project.xml +++ b/.idea/codeStyles/Project.xml @@ -13,26 +13,8 @@ - - - - - \ No newline at end of file + diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index fc36ca52bff..00000000000 --- a/.travis.yml +++ /dev/null @@ -1,7 +0,0 @@ -language: java - -jdk: - - openjdk8 - -install: - - mvn clean package \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index de074aaa686..7f79270547f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,9 +6,154 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 with an added upstream's major version number in front of the major version, so we have a better distinction from Nukkit 1.X and 2.X. -## [Unreleased 1.5.0.1-PN] - Future ([Check the milestone](https://github.com/PowerNukkit/PowerNukkit/milestone/22?closed=1)) +## [Unreleased 1.6.1.0-PN] - Future ([Check the milestone](https://github.com/PowerNukkit/PowerNukkit/milestone/25?closed=1)) Click the link above to see the future. +## [1.6.0.1-PN] - 2022-04-21 ([Check the milestone](https://github.com/PowerNukkit/PowerNukkit/milestone/27?closed=1)) +Fixes backward compatibility with some important plugins, also pull some changes from NukkitX + +### Fixes +- [#1343] Fix player data properties being sent twice +- [#1343] Client side issues caused by normal data flags not being sent with extended flags +- [#1343] Item Net ID should be 1 if the item is not air +- [#1343] Accuracy of player movements +- [#1343] Maximum chat message size was too low +- [#1344] Backward compatibility with PowerNukkit port of Wode's AntiXRay plugin + +### Changed +- [#1344] Log4J version to `2.17.1` (seriously, stop hacking it people) +- [#1343] Cornflower and Lily of the Valley will now be generated in flower forest biomes + +## [1.6.0.0-PN] - 2022-04-20 ([Check the milestone](https://github.com/PowerNukkit/PowerNukkit/milestone/29?closed=1)) +Major version change adding support to Minecraft `1.18.30`. + +### Breaking changes +- [#1267] Changed Nimbus Jose JWT library from `7.9` to `9.13` +- [#1267] Removed some deprecated APIs, check the JDiff for details. +- [#1267] Changed the method signature to customize the boss bar color +- [#1267] `ItemArmor.TIER_OTHER` is not a constant anymore. + +### Depreciation +- [#1266] Some APIs become deprecated, check the JDiff for details. +- [#1266] `ItemTrident.setCreative` and `getCreative` are now deprecated. +- [#1341] Some items had their name changed and their ID on `ItemID` are now deprecated + +### Added +- [#1266] API to get the potion names, level in roman string and tipped arrow potion. +- [#1266] API for the banner pattern snout (Piglin) +- [#1341] New sounds to the sound enum +- [#1341] New particles effects to the relevant enums + +### Changed +- [#1258] Changed supported version to Minecraft Bedrock Edition `1.18.0`. + +### Fixes +- [#267] Regression of: Fishing hooks without players, loaded from the level save. +- [#1267] Network decoding of the `MoveEntityDeltaPacket` +- [#1267] `isOp` param of the `CapturingCommandSender` constructors were not being used +- [#1267] Boats placed by dispenser could have the wrong wood type +- [#1267] Falling anvil was not dealing damage to the entities correctly +- [#1267] Some randomizers could pick the same number over and over again. +- [#1267] Bowl and Crossbow fuel time +- [#1267] The durability of some items + +### Documentation +- [#1267] Added all missing `@PowerNukkitOnly` annotations +- [#1267] Added all missing `@Override` annotations +- [#1267] Removed all incorrect `@PowerNukkitOnly` annotations + +### Others +There are many other fixes, additions and changes not documented in this file due to the size of this update. + +Check the [git logs][1.6.0.0-PN] for details on what has changed since 1.5.2.1-PN + +## [1.5.2.1-PN] - 2021-12-21 ([Check the milestone](https://github.com/PowerNukkit/PowerNukkit/milestone/30?closed=1)) + +### CRITICAL SECURITY FIX +- [#1266], [#1270] Changed Log4J library from `2.13.3` to `2.17.0` + +## [1.5.2.0-PN] - 2021-12-01 ([Check the milestone](https://github.com/PowerNukkit/PowerNukkit/milestone/28?closed=1)) +This new version adds protocol support for Minecraft `1.17.40` as if it was `1.16.221` with some new features and fixes. + +We are still working on `1.17` and `1.18` new features, but we plain to release them in December 2021. + +`1.18` support will be added on `1.6.0.0-PN` and it will be released as soon as possible. + +Thank you for the translations! +Help us to translate PowerNukkit at https://translate.powernukkit.org + +Want to talk? +Talk to us at https://discuss.powernukkit.org and/or https://powernukkit.org/discord + +### Added +- [#1233] New API classes and methods were added, check the [JDiff](https://devs.powernukkit.org/jdiff/1.5.2.0-PN_x_1.5.1.0-PN/changes.html) for details. +- [#1193] Add more damage causes to the API and improve magma block death message +- [#1233] French translations (thank you for the translations!) + +### Changed +- [#1244] Changed the `recipes.json` and `creativeitems.json` format for easier changes, updates, and maintenance (backward compatible) +- [#1233] Updated Deutsche, Indonesian, Korean, Poland, Russian, Spanish, Turkish, Vietnamese, Brazilian Portuguese, and Simplified Chinese translations. (thank you!) + +### Fixes +- [#1187] Fixes powered rails do not update in a row +- [#1191] `SimpleChunkManager.setBlockAtLayer` ignoring the layer +- [#1174] Fixes Infinite loop with double chest and comparator +- [#1202] Improves unknown item handling, shows unknown block instead of disconnections +- [#982] Populator error due to corruption on compressed light data +- [#1214] Fixed the names for BlockConcrete and BlockConcretePowder +- [#1172] Fix and improve resource pack related packets + +## [1.5.1.0-PN] - 2021-07-05 ([Check the milestone](https://github.com/PowerNukkit/PowerNukkit/milestone/22?closed=1)) +Our goal on this version was to fix bugs, and we did it, we fixed a lot of them! + +Thank you for the translations! +Help us to translate PowerNukkit at https://translate.powernukkit.org + +Want to talk? +Talk to us at https://discuss.powernukkit.org and/or https://powernukkit.org/discord + +### Changed +- [#1107] Guava version from `29.0` to `30.1.1` +- [#1107] SnakeYAML version from `1.26` to `1.28` +- [#1134] Update the Chinese, Russian, and Turkish translations. Thank you for your contributions! +- [#1149] Update the Spanish, and Russian translations. Also improved the message when a plugin is not found. Thank you for your contributions! +- [#1177] Update the Portuguese, Chinese, and Polish translations. Also added the key `language.locale` to allow plugin devs to build a `Locale` object +- [#1150] The `show_death_message` gamerule was renamed to `show_death_messages`. A backward compatibility code will keep the old one working, but it's now deprecated. +- [#1151] Improved `/setworldspaw` auto completion +- [#1153] Deprecate BlockNetherBrick in favor of BlockBricksNether +- [#783] Campfire now drop 2 charcoal always +- [#783] Soul campfire now drops 1 soul sand +- [#783] Soul campfire now deal double the damage that normal campfires deals +- [#783] Campfire and Soul campfire now deal damage even the entity is sneaking +- [#783] Campfire and Soul campfire now breaks when pushed by piston +- [#669] Improved the output of the `/kill @e` command + +### Added +- [#1146] Added implementation for `AnimateEntityPacket` +- [#1150] The `freeze_damage` gamerule +- [#1150] Mappings for Goat, Glow Squid, and Axolotl entities and spawn eggs +- [#783] Campfire and Soul Campfire can now be lit by burning entities stepping on it +- [#783] Campfire and Soul Campfire can now be unlit by throwing a splash water bottle on it +- [#783] Campfire and Soul Campfire can now lit by using an item enchanted with fire aspect +- [#669] New API methods to get the name of the entity for display + +### Fixes +- [#1119] `TickSyncPacket` was not registered +- [#1120] Entities sometimes gets invisible for some players +- [#1122] Backward compatibility with plugins setting full bark logs with 17:13 +- [#1132] You don't dismount the vehicle when you teleport, causing you to glitch +- [#1103] The output message of the `/enchant` command +- [#1100] Abrupt Time Change +- [#1130] Soul Campfire and End Crystal were rendering as other items in the inventory +- [#1139] Backward compatibility with some custom world generators +- [#1147] Sharpness damage calculation +- [#1153] Some code quality issues reported by sonar +- [#1170] Cobwebs are now breakable by using shears +- [#702] Burning arrow and rain will make a lot of particles +- [#625] If you instant kill a mob with fire aspect enchant tool, it will not give fire aspect drops +- [#979] Fixes an issue where the players could not hear each other walking +- [#576] Swimming in a 1x1 tunnel of water was causing suffocation damage by the block above the player + ## [1.5.0.0-PN] - 2021-06-11 ([Check the milestone](https://github.com/PowerNukkit/PowerNukkit/milestone/26?closed=1)) This was quick! This new version add protocol support for Minecraft `1.17.0` as if it was `1.16.221`. @@ -570,7 +715,7 @@ Fixes several anvil issues. ### Changed - Make BlockLectern implements Faceable -- The versioning convention now follows this pattern:
`upstream.major.minor.patch-PN`
[Click here for details.](https://github.com/PowerNukkit/PowerNukkit/blob/7912aa4be68e94a52762361c2d5189b7bbc58d2a/pom.xml#L8-L14) +- The versioning convention now follows this pattern:
`upstream.major.minor.patch-PN`
[Click here for details.](https://github.com/PowerNukkit/PowerNukkit/blob/7912aa4be68e94a52762361c2d5189b7bbc58d2a/pom.xml#L8-L14) ## [1.1.1.0-PN] - 2020-01-21 ### Fixes @@ -681,7 +826,12 @@ Fixes several anvil issues. [updated changelog]:https://github.com/PowerNukkit/PowerNukkit/blob/bleeding/CHANGELOG.md [discord guild]: https://powernukkit.org/discord -[Unreleased 1.5.0.1-PN]: https://github.com/PowerNukkit/PowerNukkit/compare/v1.5.0.0-PN...bleeding +[Unreleased 1.6.1.0-PN]: https://github.com/PowerNukkit/PowerNukkit/compare/v1.6.0.1-PN...bleeding +[1.6.0.1-PN]: https://github.com/PowerNukkit/PowerNukkit/compare/v1.6.0.0-PN...v1.6.0.1-PN +[1.6.0.0-PN]: https://github.com/PowerNukkit/PowerNukkit/compare/v1.5.2.1-PN...v1.6.0.0-PN +[1.5.2.1-PN]: https://github.com/PowerNukkit/PowerNukkit/compare/v1.5.2.0-PN...v1.5.2.1-PN +[1.5.2.0-PN]: https://github.com/PowerNukkit/PowerNukkit/compare/v1.5.1.0-PN...v1.5.2.0-PN +[1.5.1.0-PN]: https://github.com/PowerNukkit/PowerNukkit/compare/v1.5.0.0-PN...v1.5.1.0-PN [1.5.0.0-PN]: https://github.com/PowerNukkit/PowerNukkit/compare/v1.4.0.0-PN...v1.5.0.0-PN [1.4.0.0-PN]: https://github.com/PowerNukkit/PowerNukkit/compare/v1.3.1.5-PN...v1.4.0.0-PN [1.3.1.5-PN]: https://github.com/PowerNukkit/PowerNukkit/compare/v1.3.1.4-PN...v1.3.1.5-PN @@ -824,16 +974,59 @@ Fixes several anvil issues. [#469]: https://github.com/PowerNukkit/PowerNukkit/issues/469 [#475]: https://github.com/PowerNukkit/PowerNukkit/issues/475 [#544]: https://github.com/PowerNukkit/PowerNukkit/issues/544 +[#576]: https://github.com/PowerNukkit/PowerNukkit/issues/576 +[#625]: https://github.com/PowerNukkit/PowerNukkit/issues/625 +[#669]: https://github.com/PowerNukkit/PowerNukkit/issues/669 +[#702]: https://github.com/PowerNukkit/PowerNukkit/issues/702 [#765]: https://github.com/PowerNukkit/PowerNukkit/issues/765 [#766]: https://github.com/PowerNukkit/PowerNukkit/issues/766 [#770]: https://github.com/PowerNukkit/PowerNukkit/issues/770 [#776]: https://github.com/PowerNukkit/PowerNukkit/issues/776 [#777]: https://github.com/PowerNukkit/PowerNukkit/issues/777 [#778]: https://github.com/PowerNukkit/PowerNukkit/issues/778 +[#783]: https://github.com/PowerNukkit/PowerNukkit/issues/783 [#857]: https://github.com/PowerNukkit/PowerNukkit/issues/857 [#882]: https://github.com/PowerNukkit/PowerNukkit/issues/882 [#902]: https://github.com/PowerNukkit/PowerNukkit/issues/902 [#917]: https://github.com/PowerNukkit/PowerNukkit/issues/917 [#959]: https://github.com/PowerNukkit/PowerNukkit/issues/959 [#960]: https://github.com/PowerNukkit/PowerNukkit/issues/960 +[#979]: https://github.com/PowerNukkit/PowerNukkit/issues/979 +[#982]: https://github.com/PowerNukkit/PowerNukkit/issues/982 [#990]: https://github.com/PowerNukkit/PowerNukkit/issues/990 +[#1100]: https://github.com/PowerNukkit/PowerNukkit/issues/1100 +[#1103]: https://github.com/PowerNukkit/PowerNukkit/issues/1103 +[#1107]: https://github.com/PowerNukkit/PowerNukkit/issues/1107 +[#1119]: https://github.com/PowerNukkit/PowerNukkit/issues/1119 +[#1120]: https://github.com/PowerNukkit/PowerNukkit/issues/1120 +[#1122]: https://github.com/PowerNukkit/PowerNukkit/issues/1122 +[#1130]: https://github.com/PowerNukkit/PowerNukkit/issues/1130 +[#1132]: https://github.com/PowerNukkit/PowerNukkit/issues/1132 +[#1134]: https://github.com/PowerNukkit/PowerNukkit/issues/1134 +[#1139]: https://github.com/PowerNukkit/PowerNukkit/issues/1139 +[#1146]: https://github.com/PowerNukkit/PowerNukkit/issues/1146 +[#1147]: https://github.com/PowerNukkit/PowerNukkit/issues/1147 +[#1149]: https://github.com/PowerNukkit/PowerNukkit/issues/1149 +[#1150]: https://github.com/PowerNukkit/PowerNukkit/issues/1150 +[#1151]: https://github.com/PowerNukkit/PowerNukkit/issues/1151 +[#1120]: https://github.com/PowerNukkit/PowerNukkit/issues/1120 +[#1153]: https://github.com/PowerNukkit/PowerNukkit/issues/1153 +[#1170]: https://github.com/PowerNukkit/PowerNukkit/issues/1170 +[#1172]: https://github.com/PowerNukkit/PowerNukkit/issues/1172 +[#1174]: https://github.com/PowerNukkit/PowerNukkit/issues/1174 +[#1177]: https://github.com/PowerNukkit/PowerNukkit/issues/1177 +[#1187]: https://github.com/PowerNukkit/PowerNukkit/issues/1187 +[#1191]: https://github.com/PowerNukkit/PowerNukkit/issues/1191 +[#1193]: https://github.com/PowerNukkit/PowerNukkit/issues/1193 +[#1202]: https://github.com/PowerNukkit/PowerNukkit/issues/1202 +[#1214]: https://github.com/PowerNukkit/PowerNukkit/issues/1214 +[#1233]: https://github.com/PowerNukkit/PowerNukkit/issues/1233 +[#1244]: https://github.com/PowerNukkit/PowerNukkit/issues/1244 +[#1216]: https://github.com/PowerNukkit/PowerNukkit/issues/1216 +[#1258]: https://github.com/PowerNukkit/PowerNukkit/issues/1258 +[#1266]: https://github.com/PowerNukkit/PowerNukkit/issues/1266 +[#1267]: https://github.com/PowerNukkit/PowerNukkit/issues/1267 +[#1270]: https://github.com/PowerNukkit/PowerNukkit/issues/1270 +[#1341]: https://github.com/PowerNukkit/PowerNukkit/issues/1341 +[#1343]: https://github.com/PowerNukkit/PowerNukkit/issues/1343 +[#1344]: https://github.com/PowerNukkit/PowerNukkit/issues/1344 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 00000000000..688de4acd69 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,119 @@ +# Contributing Guidelines + +Thank you for showing interest in the development of PowerNukkit We aim to provide a good collaborating environment for everyone involved, and as such have decided to list some of the most important things to keep in mind in the process. The guidelines below have been chosen based on past experience. + +These are not "official rules" *per se*, but following them will help everyone deal with things in the most efficient manner. + +## Table of contents + +1. [I would like to submit an issue!](#i-would-like-to-submit-an-issue) +2. [I would like to submit a pull request!](#i-would-like-to-submit-a-pull-request) + +## I would like to submit an issue! + +Issues, bug reports and feature suggestions are welcomed, though please keep in mind that at any point in time, hundreds of issues are open, which vary in severity and the amount of time needed to address them. As such it's not uncommon for issues to remain unresolved for a long time or even closed outright if they are deemed not important enough to fix in the foreseeable future. + +* **Before submitting an issue, try searching existing issues first.** + + For housekeeping purposes, we close issues that overlap with or duplicate other pre-existing issues - you can help us not to have to do that by searching existing issues yourself first. The issue search box, as well as the issue tag system, are tools you can use to check if an issue has been reported before. + +* **When submitting a bug report, please try to include as much detail as possible.** + + Bugs are not equal - some of them will be reproducible every time on pretty much all hardware, while others will be hard to track down due to being specific to particular hardware or even somewhat random in nature. As such, providing as much detail as possible when reporting a bug is hugely appreciated. A good starting set of information consists of: + + * the server logs (when avaliable), which can be obtained with: + * `/debugpaste upload` + * `[Server path]/logs/latest.log` + * your system specifications (including the operating system and platform you are playing on), + * a reproduction scenario (list of steps you have performed leading up to the occurrence of the bug), + * a video or picture of the bug, if at all possible. + +* **Provide more information when asked to do so.** + + Sometimes when a bug is more elusive or complicated, none of the information listed above will pinpoint a concrete cause of the problem. In this case we will most likely ask you for additional info. Providing that information is beneficial to both parties - we can track down the problem better, and hopefully fix it for you at some point once we know where it is! + +* **When submitting a feature proposal, please describe it in the most understandable way you can.** + + Communicating your idea for a feature can often be hard, and we would like to avoid any misunderstandings. As such, please try to explain your idea in a short, but understandable manner. + +* **Refrain from posting "+1" comments.** + + If an issue has already been created, saying that you also experience it without providing any additional details doesn't really help us in any way. To express support for a proposal or indicate that you are also affected by a particular bug, you can use comment reactions instead. + +* **Refrain from asking if an issue has been resolved yet.** + + As mentioned above, the issue tracker has hundreds of issues open at any given time. Currently PowerNukkit is being worked on by two members of the core team, and a handful of outside contributors who offer their free time to help out. As such, it can happen that an issue gets placed on the backburner due to being less important; generally posting a comment demanding its resolution some months or years after it is reported is not very likely to increase its priority. + +* **Avoid long discussions about non-development topics.** + + GitHub is mostly a developer space, and as such isn't really fit for lengthened discussions about gameplay mechanics (which might not even be in any way confirmed for the final release) and similar non-technical matters. Such matters are probably best addressed at the PowerNukkit forums. + +## I would like to submit a pull request! + +We also welcome pull requests from unaffiliated contributors. The [issue tracker](https://github.com/powernukkit/powernukkit/issues) should provide plenty of issues that you can work on; we also mark issues that we think would be good for newcomers with the [`good first issue`](https://github.com/powernukkit/powernukkit/issues?q=is%3Aissue+is%3Aopen+label%3Agood%20first%20issue) label. + +Here are some key things to note before jumping in: + +* **Make sure you are comfortable with Java and your development environment.** + + While we are accepting of all kinds of contributions, we also have a certain quality standard we'd like to uphold and limited time to review your code. Therefore, we would like to avoid providing entry-level advice, and as such if you're not very familiar with Java as a programming language, we'd recommend that you start off with a few personal projects to get acquainted with the language's syntax, toolchain and principles of object-oriented programming first. + +* **Make sure you are familiar with git and the pull request workflow.** + + [git](https://git-scm.com/) is a distributed version control system that might not be very intuitive at the beginning if you're not familiar with version control. In particular, projects using git have a particular workflow for submitting code changes, which is called the pull request workflow. + + To make things run more smoothly, we recommend that you look up some online resources to familiarise yourself with the git vocabulary and commands, and practice working with forks and submitting pull requests at your own pace. A high-level overview of the process can be found in [this article by GitHub](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/proposing-changes-to-your-work-with-pull-requests). + + We also provide a [handy link](https://powernukkit.org/pr) for making pull requests to PowerNukkit: `https://powernukkit.org/pr`. + +* **Make sure to submit pull requests off of a topic branch.** + + As described in the article linked in the previous point, topic branches help you parallelise your work and separate it from the main `bleeding` branch, and additionally are easier for maintainers to work with. Working with multiple `bleeding` branches across many remotes is difficult to keep track of, and it's easy to make a mistake and push to the wrong `bleeding` branch by accident. + +* **Add tests for your code whenever possible.** + + Automated tests are an essential part of a quality and reliable codebase. They help to make the code more maintainable by ensuring it is safe to reorganise (or refactor) the code in various ways, and also prevent regressions - bugs that resurface after having been fixed at some point in the past. If it is viable, please put in the time to add tests, so that the changes you make can last for a (hopefully) very long time. + +* **Run tests before opening a pull request.** + + Tying into the previous point, sometimes changes in one part of the codebase can result in unpredictable changes in behaviour in other pieces of the code. This is why it is best to always try to run tests before opening a PR. + + Continuous integration will always run the tests for you (and us), too, but it is best not to rely on it, as there might be many builds queued at any time. Running tests on your own will help you be more certain that at the point of clicking the "Create pull request" button, your changes are as ready as can be. + +* **Make sure that the pull request is complete before opening it.** + + Whether it's fixing a bug or implementing new functionality, it's best that you make sure that the change you want to submit as a pull request is as complete as it can be before clicking the *Create pull request* button. Having to track if a pull request is ready for review or not places additional burden on reviewers. + + Draft pull requests are an option, but use them sparingly and within reason. They are best suited to discuss code changes that cannot be easily described in natural language or have a potential large impact on the future direction of the project. When in doubt, don't open drafts unless a maintainer asks you to do so. + +* **Only push code when it's ready.** + + As an extension of the above, when making changes to an already-open PR, please try to only push changes you are reasonably certain of. Pushing after every commit causes the continuous integration build queue to grow in size, slowing down work and taking up time that could be spent verifying other changes. + +* **Make sure to keep the *Allow edits from maintainers* check box checked.** + + To speed up the merging process, collaborators and team members will sometimes want to push changes to your branch themselves, to make minor code style adjustments or to otherwise refactor the code without having to describe how they'd like the code to look like in painstaking detail. Having the *Allow edits from maintainers* check box checked lets them do that; without it they are forced to report issues back to you and wait for you to address them. + +* **Refrain from continually merging the master branch back to the PR.** + + Unless there are merge conflicts that need resolution, there is no need to keep merging `bleeding` back to a branch over and over again. One of the maintainers will merge `bleeding` themselves before merging the PR itself anyway, and continual merge commits can cause CI to get overwhelmed due to queueing up too many builds. + +* **Refrain from force-pushing to the PR branch.** + + Force-pushing should be avoided, as it can lead to accidentally overwriting a maintainer's changes or CI building wrong commits. We value all history in the project, so there is no need to squash or amend commits in most cases. + + The cases in which force-pushing is warranted are very rare (such as accidentally leaking sensitive info in one of the files committed, adding unrelated files, or mis-merging a dependent PR). + +* **Be patient when waiting for the code to be reviewed and merged.** + + As much as we'd like to review all contributions as fast as possible, our time is limited, as team members have to work on their own tasks in addition to reviewing code. As such, work needs to be prioritised, and it can unfortunately take weeks or months for your PR to be merged, depending on how important it is deemed to be. + +* **Don't mistake criticism of code for criticism of your person.** + + As mentioned before, we are highly committed to quality when it comes to the project. This means that contributions from less experienced community members can take multiple rounds of review to get to a mergeable state. We try our utmost best to never conflate a person with the code they authored, and to keep the discussion focused on the code at all times. Please consider our comments and requests a learning experience, and don't treat it as a personal attack. + +* **Feel free to reach out for help.** + + If you're uncertain about some part of the codebase or some inner workings of the game and framework, please reach out either by leaving a comment in the relevant issue or PR thread, or by posting a message in the [development Discord server](https://www.powernukkit.org/discord). We will try to help you as much as we can. + + When it comes to which form of communication is best, GitHub generally lends better to longer-form discussions, while Discord is better for snappy call-and-response answers. Use your best discretion when deciding, and try to keep a single discussion in one place instead of moving back and forth. diff --git a/Dockerfile b/Dockerfile index d532ff6fafb..175fb9aa4bd 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,37 +3,35 @@ # Requires Docker v17.05 # Prepare the source -FROM alpine/git:v2.26.2 AS prepare - -# Copy the source -WORKDIR /src -COPY pom.xml /src - -COPY src/main/java /src/src/main/java -COPY src/main/resources /src/src/main/resources - -COPY src/test/java/cn /src/src/test/java/cn -COPY src/test/resources /src/src/test/resources - -# Update the language submodule -RUN if [ -z "$(ls -A /src/src/main/resources/lang)" ]; then git submodule update --init; fi - -# Prepare to build the source -FROM maven:3.6-jdk-8-alpine as build - -# Copy the source -WORKDIR /src -COPY --from=prepare /src /src - -# Build the source -RUN mvn --no-transfer-progress -Dmaven.javadoc.skip=true clean package +#FROM maven:3.8-jdk-8-slim as build +# +#RUN DEBIAN_FRONTEND=noninteractive apt update && DEBIAN_FRONTEND=noninteractive apt install -y git && rm -rf /var/lib/apt/lists/* +# +## Copy the source +#WORKDIR /src +#COPY pom.xml /src +# +#COPY src/main/java /src/src/main/java +#COPY src/main/resources /src/src/main/resources +# +#COPY src/test/java/cn /src/src/test/java/cn +#COPY src/test/resources /src/src/test/resources +# +#COPY .git /src/.git +# +## Update the language submodule +#RUN if [ -z "$(ls -A /src/src/main/resources/lang)" ]; then git submodule update --init; fi +# +## Build the source +#RUN mvn --no-transfer-progress -Dmaven.javadoc.skip=true clean package # Use OpenJDK JRE image to runtime FROM openjdk:8-jre-slim AS run LABEL maintainer="José Roberto de Araújo Júnior " # Copy artifact from build image -COPY --from=build /src/target/powernukkit-*-shaded.jar /app/powernukkit.jar +#COPY --from=build /src/target/powernukkit-*-shaded.jar /app/powernukkit.jar +COPY target/powernukkit-*-shaded.jar /app/powernukkit.jar # Create minecraft user RUN useradd --user-group \ @@ -58,4 +56,4 @@ USER minecraft:minecraft WORKDIR /data # Run app -CMD [ "java", "-jar", "/app/powernukkit.jar" ] +CMD [ "java", "-XX:+UseG1GC", "-XX:+ParallelRefProcEnabled", "-XX:MaxGCPauseMillis=200", "-XX:+UnlockExperimentalVMOptions", "-XX:+DisableExplicitGC", "-XX:+AlwaysPreTouch", "-XX:G1NewSizePercent=30", "-XX:G1MaxNewSizePercent=40", "-XX:G1HeapRegionSize=8M", "-XX:G1ReservePercent=20", "-XX:G1HeapWastePercent=5", "-XX:G1MixedGCCountTarget=4", "-XX:InitiatingHeapOccupancyPercent=15", "-XX:G1MixedGCLiveThresholdPercent=90", "-XX:G1RSetUpdatingPauseTimePercent=5", "-XX:SurvivorRatio=32", "-XX:+PerfDisableSharedMem", "-XX:MaxTenuringThreshold=1", "-Dusing.aikars.flags=https://mcflags.emc.gs", "-Daikars.new.flags=true", "-jar", "/app/powernukkit.jar" ] diff --git a/Dockerfile.arm64 b/Dockerfile.arm64 deleted file mode 100644 index 045f840c8e0..00000000000 --- a/Dockerfile.arm64 +++ /dev/null @@ -1,33 +0,0 @@ -FROM arm64v8/openjdk:8-jdk-slim AS build -WORKDIR /usr/local/src/nukkit -COPY src /usr/local/src/nukkit/src -COPY mvn* pom.xml /usr/local/src/nukkit/ -COPY .git /usr/local/src/nukkit/.git -COPY .mvn /usr/local/src/nukkit/.mvn -COPY .gitmodules /usr/local/src/nukkit/.gitmodules -RUN apt-get -y update && \ - apt-get install -y build-essential git maven && \ - git submodule update --init && \ - mvn clean package - -FROM arm64v8/openjdk:8-jre-slim AS run -LABEL maintainer="Chris Fordham " -COPY --from=build /usr/local/src/nukkit/target/nukkit-1.0-SNAPSHOT.jar /opt/nukkit/nukkit.jar -COPY nukkit.yml.default /etc/opt/nukkit/nukkit.yml -RUN useradd --user-group \ - --no-create-home \ - --home-dir /var/opt/nukkit \ - --shell /usr/sbin/nologin \ - minecraft && \ - mkdir -p /var/opt/nukkit && \ - chown -R minecraft /opt/nukkit /var/opt/nukkit /etc/opt/nukkit/nukkit.yml && \ - ln -sfv /etc/opt/nukkit/nukkit.yml /var/opt/nukkit/nukkit.yml && \ - apt-get -y update && \ - apt-get -y install lsof && \ - rm -rf /var/lib/apt/lists/* -USER minecraft -VOLUME /etc/opt/nukkit /var/opt/nukkit /opt/nukkit -EXPOSE 19132 -WORKDIR /var/opt/nukkit -ENTRYPOINT ["java"] -CMD [ "-jar", "/opt/nukkit/nukkit.jar" ] diff --git a/Jenkinsfile b/Jenkinsfile deleted file mode 100644 index 9880016507b..00000000000 --- a/Jenkinsfile +++ /dev/null @@ -1,60 +0,0 @@ -pipeline { - agent any - tools { - maven 'Maven 3' - jdk 'Java 8' - } - options { - buildDiscarder(logRotator(artifactNumToKeepStr: '5')) - } - stages { - stage ('Build') { - steps { - sh 'mvn clean package' - } - post { - success { - junit 'target/surefire-reports/**/*.xml' - archiveArtifacts artifacts: 'target/powernukkit-*.jar', fingerprint: true - } - } - } - - stage ('Deploy') { - when { - branch "master" - } - - steps { - rtMavenDeployer ( - id: "maven-deployer", - serverId: "opencollab-artifactory", - releaseRepo: "maven-releases", - snapshotRepo: "maven-snapshots" - ) - rtMavenResolver ( - id: "maven-resolver", - serverId: "opencollab-artifactory", - releaseRepo: "release", - snapshotRepo: "snapshot" - ) - rtMavenRun ( - pom: 'pom.xml', - goals: 'javadoc:javadoc javadoc:jar source:jar install -DskipTests', - deployerId: "maven-deployer", - resolverId: "maven-resolver" - ) - rtPublishBuildInfo ( - serverId: "opencollab-artifactory" - ) - step([$class: 'JavadocArchiver', javadocDir: 'target/site/apidocs', keepAll: false]) - } - } - } - - post { - always { - deleteDir() - } - } -} diff --git a/Makefile b/Makefile deleted file mode 100644 index 2bf78eea82f..00000000000 --- a/Makefile +++ /dev/null @@ -1,85 +0,0 @@ -DOCKER_REGISTRY = index.docker.io -IMAGE_NAME = nukkit -IMAGE_VERSION = latest -IMAGE_ORG = flaccid -IMAGE_TAG = $(DOCKER_REGISTRY)/$(IMAGE_ORG)/$(IMAGE_NAME):$(IMAGE_VERSION) -export DOCKER_BUILDKIT = 1 - -WORKING_DIR := $(shell pwd) - -.DEFAULT_GOAL := docker-build - -.PHONY: build run - -# TODO: finish -#build:: ## builds nukkit - -# TODO: finish -#run:: ## runs the binary - -docker-release:: docker-build docker-push ## builds and pushes the docker image to the registry -docker-release-arm64:: docker-build-arm64 docker-push-arm64 ## builds and pushes the arm64 docker image to the registry - -docker-push:: ## pushes the docker image to the registry - @docker push $(IMAGE_TAG) - -docker-push-arm64:: ## pushes the arm64 docker image to the registry - @docker push $(DOCKER_REGISTRY)/$(IMAGE_ORG)/$(IMAGE_NAME):arm64 - -docker-build:: ## builds the docker image locally - @echo http_proxy=$(HTTP_PROXY) http_proxy=$(HTTPS_PROXY) - @echo building $(IMAGE_TAG) - @docker build --pull \ - --build-arg=http_proxy=$(HTTP_PROXY) \ - --build-arg=https_proxy=$(HTTPS_PROXY) \ - -t $(IMAGE_TAG) $(WORKING_DIR) - -docker-build-arm64:: ## builds the arm64 docker image locally - @echo http_proxy=$(HTTP_PROXY) http_proxy=$(HTTPS_PROXY) - @echo building $(IMAGE_TAG) - @docker build --pull \ - --build-arg=http_proxy=$(HTTP_PROXY) \ - --build-arg=https_proxy=$(HTTPS_PROXY) \ - -f Dockerfile.arm64 \ - -t $(DOCKER_REGISTRY)/$(IMAGE_ORG)/$(IMAGE_NAME):arm64 $(WORKING_DIR) - -docker-run:: ## runs the docker image locally - @docker run \ - -it \ - -p 19132:19132 \ - $(DOCKER_REGISTRY)/$(IMAGE_ORG)/$(IMAGE_NAME):$(IMAGE_VERSION) - -helm-install:: ## installs using helm from chart in repo - @helm install --name nukkit ./charts/nukkit - -helm-upgrade:: ## upgrades deployed helm release - @helm upgrade nukkit ./charts/nukkit - -helm-purge:: ## deletes and purges deployed helm release - @helm delete --purge nukkit - -helm-render:: ## prints out the rendered chart - @helm install --dry-run --debug charts/nukkit - -helm-validate:: ## runs a lint on the helm chart - @helm lint charts/nukkit - -install-ghr:: ## installs ghr - @cd /tmp - @wget https://github.com/tcnksm/ghr/releases/download/v0.12.2/ghr_v0.12.2_linux_amd64.tar.gz - @tar zxvf ghr_v0.12.2_linux_amd64.tar.gz - @sudo mv ghr_v0.12.2_linux_amd64/ghr /usr/local/bin/ - -# a help target including self-documenting targets (see the awk statement) -define HELP_TEXT -Usage: make [TARGET]... [MAKEVAR1=SOMETHING]... - -Available targets: -endef -export HELP_TEXT -help: ## this help target - @cat .banner - @echo - @echo "$$HELP_TEXT" - @awk 'BEGIN {FS = ":.*?## "} /^[a-zA-Z_-]+:.*?## / \ - {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}' $(MAKEFILE_LIST) diff --git a/README.md b/README.md index 49ef8d665ea..b1a37306cc2 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,9 @@ -![nukkit](https://raw.githubusercontent.com/PowerNukkit/PowerNukkit/master/.github/images/banner.png) +[PowerNukkit](https://powernukkit.org) [![License: GPL v3](https://img.shields.io/badge/License-GPL%20v3-blue.svg)](LICENSE) -[![PowerNukkit v1.X](https://github.com/PowerNukkit/PowerNukkit/workflows/PowerNukkit%20v1.X/badge.svg?branch=master)](https://github.com/PowerNukkit/PowerNukkit/actions?query=branch%3Amaster) +[![PowerNukkit v1.X](https://github.com/PowerNukkit/PowerNukkit/workflows/PowerNukkit%20v1.X/badge.svg?branch=master)](https://builds.powernukkit.org/buildConfiguration/PowerNukkit_Releases#all-projects) +[![TeamCity Build Status](https://builds.powernukkit.org/app/rest/builds/buildType:(id:PowerNukkit_Snapshots)/statusIcon)](https://builds.powernukkit.org/buildConfiguration/PowerNukkit_Snapshots) +[![Coverage](https://sonarcloud.io/api/project_badges/measure?project=PowerNukkit_PowerNukkit&metric=coverage)](https://sonarcloud.io/dashboard?id=PowerNukkit_PowerNukkit) [![Discord](https://img.shields.io/discord/728280425255927879)](https://powernukkit.org/discord) Introduction @@ -26,12 +28,17 @@ Most Cloudburst Nukkit plugins are supported but they may not understand the new Links -------------------- -* __[PowerNukkit Website](https://powernukkit.org/)__ -* __[PowerNukkit Forum and Guides](https://discuss.powernukkit.org/)__ -* __[Download PowerNukkit Releases](https://powernukkit.org/releases)__ -* __[Download PowerNukkit Snapshots](https://powernukkit.org/snapshots)__ -* __[PowerNukkit Discord](https://powernukkit.org/discord)__ -* __[Cloudburst Nukkit Plugins](https://cloudburstmc.org/resources/categories/nukkit-plugins.1/)__ +- __[🌐 PowerNukkit Website](https://powernukkit.org/)__ +- __[👩🏽‍💻 PowerNukkit Website for Plugin Developers](https://devs.powernukkit.org/)__ +- __[💬 PowerNukkit Forum and Guides](https://discuss.powernukkit.org/)__ +- __[💬 PowerNukkit Discord](https://powernukkit.org/discord)__ +- __[💾 Download PowerNukkit Recommended Build](https://powernukkit.org/#download)__ +- __[💾 Download PowerNukkit Releases](https://powernukkit.org/#stable)__ +- __[💾 Download PowerNukkit Snapshots](https://powernukkit.org/#snapshot)__ +- __[🥚 Download PowerNukkit Pterodactyl Eggs](https://powernukkit.org/#pterodactyl)__ +- __[🔌 Download PowerNukkit Plugins](https://plugins.powernukkit.org)__ +- __[🔌 Download Cloudburst Nukkit Plugins](https://cloudburstmc.org/resources/categories/nukkit-plugins.1/)__ +- __[🧩 PowerNukkit Plugin Requests](https://discuss.powernukkit.org/c/plugins/plugin-requests/13)__ Creating Plugins ---------------- @@ -44,7 +51,7 @@ repositories { } dependencies { - compile group: 'org.powernukkit', name: 'powernukkit', version: '1.5.0.0-PN' + compile group: 'org.powernukkit', name: 'powernukkit', version: '1.6.0.1-PN' } ``` @@ -54,7 +61,7 @@ dependencies { org.powernukkit powernukkit - 1.5.0.0-PN + 1.6.0.1-PN ``` @@ -126,8 +133,12 @@ docker rm powernukkit Check the [docker-compose.yml](docker-compose.yml) file for more details. ### Supported tags -* _bleeding_ (⚠️ **use with care, may contains unstable code!** ⚠️) -* 1.5.0.0, 1.5.0, 1.5, 1, latest +* _bleeding_ (⚠️ **use with care, may contain unstable code!** ⚠️) +* 1.6.0.1, 1.6.0, 1.6, 1, latest +* 1.6.0.0 +* 1.5.2.0, 1.5.2, 1.5 +* 1.5.1.0, 1.5.1 +* 1.5.0.0, 1.5.0 * 1.4.0.0, 1.4.0, 1.4 * 1.3.1.5, 1.3.1, 1.3 * 1.3.1.4 @@ -187,7 +198,10 @@ Completely remove the chart: Contributing ------------ -Please read the [CONTRIBUTING](.github/CONTRIBUTING.md) guide before submitting any issue. Issues with insufficient information or in the wrong format will be closed and will not be reviewed. +Please read the [CONTRIBUTING](CONTRIBUTING.md) guide before submitting any issue. Issues with insufficient information or in the wrong format will be closed and will not be reviewed. + +--------- +[![SonarCloud](https://sonarcloud.io/images/project_badges/sonarcloud-white.svg)](https://sonarcloud.io/dashboard?id=PowerNukkit_PowerNukkit) --------- diff --git a/UPGRADING_TO_NEXT_MINECRAFT.md b/UPGRADING_TO_NEXT_MINECRAFT.md new file mode 100644 index 00000000000..7dccf64e17e --- /dev/null +++ b/UPGRADING_TO_NEXT_MINECRAFT.md @@ -0,0 +1,92 @@ +# Thank you +Thank your for your interest in contributing with PowerNukkit. + +We really need your help by testing, finding and reporting bugs and compatibility issues, +suggesting features, and submitting pull requests with enhancements and bug-fixes. + +## How to upgrade PowerNukkit to the next Minecraft protocol version +First thing first, we need to know what exactly has changed to the protocol. + +### Finding what changed +- Check https://wiki.vg/Bedrock_Protocol, it's usually outdated, but maybe will be up-to-date in future. +- Check https://bedrock.dev/docs/stable/Addons, it has useful information about ids. + You can get the block id out of an item id. If the item id is less than `255`, that item represents a block. + If the id is between `0` and `255`, you can use that id as block id. If the id is **negative**, you can + get the real block id with this formula: `255 - itemId`, for example, if the item id is `-4`, + then we do `255 - (-4)` which is equals to `255 + 4` = `259`, another valid formula and easier for humans + is `255 + |itemId|`, so we would do `255 + |-4|` = `255 + 4` = `259`. +- Check for changes in https://github.com/CloudburstMC/Protocol/commits/develop +- Check for changes in https://github.com/CloudburstMC/Network +- Check for changes in https://github.com/CloudburstMC/ProxyPass +- Check for changes in https://github.com/pmmp/PocketMine-MP/commits/stable +- Check for changes in https://github.com/JSPrismarine/JSPrismarine/commits/master +- The links above can help you to determine what have changed to the protocol, we are not racing or disputing + with other server implementations, when the protocol changes everybody needs to do the same update, so + we can replicate what others have done. Remember only privileged people have access to the official + bedrock edition protocol documentation provided by Microsoft, unfortunately, nobody in our team have this privilege, + so we need to gather information around the internet. + +### Update Bedrock-ProxyPass, Bedrock-Protocol, and Bedrock-Network +Now that we know what have change, we need to update: +- https://github.com/PowerNukkit/Bedrock-Network +- https://github.com/PowerNukkit/Bedrock-Protocol +- https://github.com/PowerNukkit/Bedrock-ProxyPass + +#### Setting up Bedrock-ProxyPass in IntelliJ IDEA +- Checkout and open as a project: https://github.com/PowerNukkit/Bedrock-ProxyPass.git +- Checkout but **don't open as a project, only download the source**: https://github.com/PowerNukkit/Bedrock-Network +- Checkout but **don't open as a project, only download the source**: https://github.com/PowerNukkit/Bedrock-Protocol +- Open the **Maven** tab, click the **+** button to add a maven project to the current project (That should be Bedrock-ProxyPass) +- Add: **Bedrock-Network**, and **Bedrock-Protocol** that you have just downloaded +- Press **Shift** two times to open the search window and search for the **Action**: `manage git remotes` +- Add a new remote for all 3 git repositores, pointing to the cloudburst equivalent of the project: + * Bedrock-Network: https://github.com/CloudburstMC/Network.git + * Bedrock-Protocol: https://github.com/CloudburstMC/Protocol.git + * Bedrock-Proxy-Pass: https://github.com/CloudburstMC/ProxyPass.git +- Open the **Git** menu at the top of the window and click **Fetch** +- Open the **Git** tab at the bottom of the Window and open the **Log: ** tab +- Click **Paths: All** and deselect all 3 roots +- Click **Paths: No roots** and select only **Bedrock-Network** +- Find the last commit tagged **cloudburst/develop** +- Right click it and select: `Branch 'cloudburst/develop'` -> `Pull into current using merge` (manual merge may be necessary) +- Click **Paths:** button again and select only **Bedrock-Protocol** and do the same +- Repeat this process with **Bedrock-ProxyPass** but find the **cloudburst/master** tag in the logs instead of **cloudburst/develop** +- Manually adjust the **pom.xml** of the last **bedrock-vNNN** module at **Bedrock Protocol** +- You may need to update the `ProxyPass.CODEC` manually too. +- Build and run ProxyPass proxying [Vanilla Bedrock Dedicated Server](https://www.minecraft.net/en-us/download/server/bedrock) + with the config to export data enabled +- Connect to the vanilla bedrock server thought the proxy for it to extract the necessary data from the connection. + +### Run the update tools +Now that you have extracted the data, confirm that PMMP have released the last BedrockData, +the update tools make use of that: https://github.com/pmmp/BedrockData + +The update tools are classes that are located at the test folder of this project, +they have some pre-requisites explained in the comments right on top of the files, +make sure they are fulfilled before running or things can go wrong... + +- Adjust the path in `org.powernukkit.updater.AllResourcesDownloader.main(String[])` to point to + the data folder in your ProxyPass run folder, some data will be loaded from there +- Run `org.powernukkit.updater.AllResourcesDownloader.main(String[])` +- Run `mvn clean package` (Don't skip!) +- Run `org.powernukkit.updater.RuntimeItemIdUpdater.main(String[])` +- Run `mvn clean package` (Don't skip!) +- Run `org.powernukkit.dumps.ItemIdDumper.main(String[])` +- Run `org.powernukkit.dumps.RuntimeBlockStateDumper.main(String[])` +- Adjust all necessary block properties +- Run `org.powernukkit.updater.AllResourceUpdater.main(String[])` +- Run `mvn clean package` (Don't skip!) + +### After the update +Try to start the server, make sure no error or warning is logged, +new blocks/items may cause issues, and we need to fix or handle them +from the Java classes, **without changing any resource**, only Java code! + +Some existing blocks may receive new block state properties, make sure +to update their class file to include the new properties + +Some properties may receive new values, update them too. + +You can check what has changed investigating the files in the dumps folder, +they give you different views of the blocks, items, and block states, so +we can find what's happening easier. diff --git a/docker-compose.yml b/docker-compose.yml index b8dd8824df0..db9bfa0591a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -54,7 +54,7 @@ services: # # You may change the version as you desire # The version list: https://hub.docker.com/r/powernukkit/powernukkit/tags - image: powernukkit/powernukkit:1.3 + image: powernukkit/powernukkit:1.6 # # If you want to use an other port, change only the number before ":", keep the :19132 and :19132/udp at the end diff --git a/docker_pterodactyl-image-java11.Dockerfile b/docker_pterodactyl-image-java11.Dockerfile new file mode 100644 index 00000000000..821f6e42890 --- /dev/null +++ b/docker_pterodactyl-image-java11.Dockerfile @@ -0,0 +1,41 @@ +# +# Get the pterodacty egg from https://github.com/PowerNukkit/PowerNukkit-Pterodactyl-Egg! +# + +# Prepare the source +#FROM maven:3.8-jdk-8-slim as build +# +#RUN DEBIAN_FRONTEND=noninteractive apt update && DEBIAN_FRONTEND=noninteractive apt install -y git && rm -rf /var/lib/apt/lists/* +# +## Copy the source +#WORKDIR /src +#COPY pom.xml /src +# +#COPY src/main/java /src/src/main/java +#COPY src/main/resources /src/src/main/resources +# +#COPY src/test/java/cn /src/src/test/java/cn +#COPY src/test/resources /src/src/test/resources +# +#COPY .git /src/.git +# +## Update the language submodule +#RUN if [ -z "$(ls -A /src/src/main/resources/lang)" ]; then git submodule update --init; fi +# +## Build the source +#RUN mvn --no-transfer-progress -Dmaven.javadoc.skip=true clean package + +# Final image +FROM ghcr.io/pterodactyl/yolks:java_11 as pterodactyl + +LABEL author="José Roberto de Araújo Júnior" maintainer="joserobjr@powernukkit.org" + +USER root +ENV USER=root HOME=/root + +RUN mkdir -p /opt/PowerNukkit +#COPY --from=build /src/target/powernukkit-*-shaded.jar /opt/PowerNukkit/PowerNukkit.jar +COPY target/powernukkit-*-shaded.jar /opt/PowerNukkit/PowerNukkit.jar + +USER container +ENV USER=container HOME=/home/container diff --git a/docker_pterodactyl-image-java8.Dockerfile b/docker_pterodactyl-image-java8.Dockerfile new file mode 100644 index 00000000000..b45b8a62927 --- /dev/null +++ b/docker_pterodactyl-image-java8.Dockerfile @@ -0,0 +1,41 @@ +# +# Get the pterodacty egg from https://github.com/PowerNukkit/PowerNukkit-Pterodactyl-Egg! +# + +# Prepare the source +#FROM maven:3.8-jdk-8-slim as build +# +#RUN DEBIAN_FRONTEND=noninteractive apt update && DEBIAN_FRONTEND=noninteractive apt install -y git && rm -rf /var/lib/apt/lists/* +# +## Copy the source +#WORKDIR /src +#COPY pom.xml /src +# +#COPY src/main/java /src/src/main/java +#COPY src/main/resources /src/src/main/resources +# +#COPY src/test/java/cn /src/src/test/java/cn +#COPY src/test/resources /src/src/test/resources +# +#COPY .git /src/.git +# +## Update the language submodule +#RUN if [ -z "$(ls -A /src/src/main/resources/lang)" ]; then git submodule update --init; fi +# +## Build the source +#RUN mvn --no-transfer-progress -Dmaven.javadoc.skip=true clean package + +# Final image +FROM ghcr.io/pterodactyl/yolks:java_8 as pterodactyl + +LABEL author="José Roberto de Araújo Júnior" maintainer="joserobjr@powernukkit.org" + +USER root +ENV USER=root HOME=/root + +RUN mkdir -p /opt/PowerNukkit +#COPY --from=build /src/target/powernukkit-*-shaded.jar /opt/PowerNukkit/PowerNukkit.jar +COPY target/powernukkit-*-shaded.jar /opt/PowerNukkit/PowerNukkit.jar + +USER container +ENV USER=container HOME=/home/container diff --git a/block-id-dump-from-items.properties b/dumps/block-id-dump-from-items.properties similarity index 100% rename from block-id-dump-from-items.properties rename to dumps/block-id-dump-from-items.properties diff --git a/block-properties.ini b/dumps/block-properties.ini similarity index 98% rename from block-properties.ini rename to dumps/block-properties.ini index 2fc95e01538..857a443f6bb 100644 --- a/block-properties.ini +++ b/dumps/block-properties.ini @@ -1,6 +1,7 @@ # WARNING! Don't edit this file! It's automatically regenerated! [properties] +active=0,1 age=0,1,2 age=0,1,2,3 age=0,1,2,3,4,5 @@ -15,10 +16,12 @@ big_dripleaf_head=0,1 big_dripleaf_tilt=full_tilt,none,partial_tilt,unstable bite_counter=0,1,2,3,4,5,6 block_light_level=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 +bloom=0,1 brewing_stand_slot_a_bit=0,1 brewing_stand_slot_b_bit=0,1 brewing_stand_slot_c_bit=0,1 button_pressed_bit=0,1 +candles=0,1,2,3 cauldron_liquid=lava,powder_snow,water chemistry_table_type=compound_creator,element_constructor,lab_table,material_reducer chisel_type=chiseled,default,lines,smooth @@ -60,15 +63,16 @@ huge_mushroom_bits=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 in_wall_bit=0,1 infiniburn_bit=0,1 item_frame_map_bit=0,1 +item_frame_photo_bit=0,1 kelp_age=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25 lever_direction=down_east_west,down_north_south,east,north,south,up_east_west,up_north_south,west liquid_depth=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 +lit=0,1 moisturized_amount=0,1,2,3,4,5,6,7 monster_egg_stone_type=chiseled_stone_brick,cobblestone,cracked_stone_brick,mossy_stone_brick,stone,stone_brick multi_face_direction_bits=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63 new_leaf_type=acacia,dark_oak new_log_type=acacia,dark_oak -no_drop_bit=0,1 occupied_bit=0,1 old_leaf_type=birch,jungle,oak,spruce old_log_type=birch,jungle,oak,spruce diff --git a/block-states.ini b/dumps/block-states.ini similarity index 92% rename from block-states.ini rename to dumps/block-states.ini index 8fbd4f021be..8d3664a4e36 100644 --- a/block-states.ini +++ b/dumps/block-states.ini @@ -148,6 +148,13 @@ upside_down_bit=0,1 [minecraft:birch_wall_sign] facing_direction=0,1,2,3,4,5 +[minecraft:black_candle] +candles=0,1,2,3 +lit=0,1 + +[minecraft:black_candle_cake] +lit=0,1 + [minecraft:black_glazed_terracotta] facing_direction=0,1,2,3,4,5 @@ -173,6 +180,13 @@ wall_post_bit=0,1 [minecraft:blast_furnace] facing_direction=0,1,2,3,4,5 +[minecraft:blue_candle] +candles=0,1,2,3 +lit=0,1 + +[minecraft:blue_candle_cake] +lit=0,1 + [minecraft:blue_glazed_terracotta] facing_direction=0,1,2,3,4,5 @@ -202,6 +216,13 @@ brewing_stand_slot_c_bit=0,1 upside_down_bit=0,1 weirdo_direction=0,1,2,3 +[minecraft:brown_candle] +candles=0,1,2,3 +lit=0,1 + +[minecraft:brown_candle_cake] +lit=0,1 + [minecraft:brown_glazed_terracotta] facing_direction=0,1,2,3,4,5 @@ -229,6 +250,13 @@ bite_counter=0,1,2,3,4,5,6 direction=0,1,2,3 extinguished=0,1 +[minecraft:candle] +candles=0,1,2,3 +lit=0,1 + +[minecraft:candle_cake] +lit=0,1 + [minecraft:carpet] color=black,blue,brown,cyan,gray,green,light_blue,lime,magenta,orange,pink,purple,red,silver,white,yellow @@ -282,6 +310,8 @@ age=0,1,2,3,4,5 [minecraft:clay] +[minecraft:client_request_placeholder_block] + [minecraft:coal_block] [minecraft:coal_ore] @@ -337,7 +367,7 @@ composter_fill_level=0,1,2,3,4,5,6,7,8 [minecraft:concrete] color=black,blue,brown,cyan,gray,green,light_blue,lime,magenta,orange,pink,purple,red,silver,white,yellow -[minecraft:concretePowder] +[minecraft:concrete_powder] color=black,blue,brown,cyan,gray,green,light_blue,lime,magenta,orange,pink,purple,red,silver,white,yellow [minecraft:conduit] @@ -453,6 +483,13 @@ top_slot_bit=0,1 upside_down_bit=0,1 weirdo_direction=0,1,2,3 +[minecraft:cyan_candle] +candles=0,1,2,3 +lit=0,1 + +[minecraft:cyan_candle_cake] +lit=0,1 + [minecraft:cyan_glazed_terracotta] facing_direction=0,1,2,3,4,5 @@ -928,6 +965,9 @@ liquid_depth=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 [minecraft:frame] facing_direction=0,1,2,3,4,5 item_frame_map_bit=0,1 +item_frame_photo_bit=0,1 + +[minecraft:frog_spawn] [minecraft:frosted_ice] age=0,1,2,3 @@ -944,6 +984,7 @@ facing_direction=0,1,2,3,4,5 [minecraft:glow_frame] facing_direction=0,1,2,3,4,5 item_frame_map_bit=0,1 +item_frame_photo_bit=0,1 [minecraft:glow_lichen] multi_face_direction_bits=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63 @@ -970,9 +1011,23 @@ weirdo_direction=0,1,2,3 [minecraft:gravel] +[minecraft:gray_candle] +candles=0,1,2,3 +lit=0,1 + +[minecraft:gray_candle_cake] +lit=0,1 + [minecraft:gray_glazed_terracotta] facing_direction=0,1,2,3,4,5 +[minecraft:green_candle] +candles=0,1,2,3 +lit=0,1 + +[minecraft:green_candle_cake] +lit=0,1 + [minecraft:green_glazed_terracotta] facing_direction=0,1,2,3,4,5 @@ -1018,7 +1073,7 @@ pillar_axis=x,y,z [minecraft:info_update2] -[minecraft:invisibleBedrock] +[minecraft:invisible_bedrock] [minecraft:iron_bars] @@ -1120,15 +1175,36 @@ open_bit=0,1 [minecraft:light_block] block_light_level=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 +[minecraft:light_blue_candle] +candles=0,1,2,3 +lit=0,1 + +[minecraft:light_blue_candle_cake] +lit=0,1 + [minecraft:light_blue_glazed_terracotta] facing_direction=0,1,2,3,4,5 +[minecraft:light_gray_candle] +candles=0,1,2,3 +lit=0,1 + +[minecraft:light_gray_candle_cake] +lit=0,1 + [minecraft:light_weighted_pressure_plate] redstone_signal=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 [minecraft:lightning_rod] facing_direction=0,1,2,3,4,5 +[minecraft:lime_candle] +candles=0,1,2,3 +lit=0,1 + +[minecraft:lime_candle_cake] +lit=0,1 + [minecraft:lime_glazed_terracotta] facing_direction=0,1,2,3,4,5 @@ -1163,11 +1239,30 @@ pillar_axis=x,y,z [minecraft:loom] direction=0,1,2,3 +[minecraft:magenta_candle] +candles=0,1,2,3 +lit=0,1 + +[minecraft:magenta_candle_cake] +lit=0,1 + [minecraft:magenta_glazed_terracotta] facing_direction=0,1,2,3,4,5 [minecraft:magma] +[minecraft:mangrove_leaves] +persistent_bit=0,1 +update_bit=0,1 + +[minecraft:mangrove_propagule] +facing_direction=0,1,2,3,4,5 +growth=0,1,2,3,4,5,6,7 + +[minecraft:mangrove_propagule_hanging] +facing_direction=0,1,2,3,4,5 +growth=0,1,2,3,4,5,6,7 + [minecraft:medium_amethyst_bud] facing_direction=0,1,2,3,4,5 @@ -1196,7 +1291,28 @@ weirdo_direction=0,1,2,3 upside_down_bit=0,1 weirdo_direction=0,1,2,3 -[minecraft:movingBlock] +[minecraft:moving_block] + +[minecraft:mud] + +[minecraft:mud_brick_double_slab] +top_slot_bit=0,1 + +[minecraft:mud_brick_slab] +top_slot_bit=0,1 + +[minecraft:mud_brick_stairs] +upside_down_bit=0,1 +weirdo_direction=0,1,2,3 + +[minecraft:mud_brick_wall] +wall_connection_type_east=none,short,tall +wall_connection_type_north=none,short,tall +wall_connection_type_south=none,short,tall +wall_connection_type_west=none,short,tall +wall_post_bit=0,1 + +[minecraft:mud_bricks] [minecraft:mycelium] @@ -1239,6 +1355,16 @@ powered_bit=0,1 [minecraft:obsidian] +[minecraft:ochre_froglight] +pillar_axis=x,y,z + +[minecraft:orange_candle] +candles=0,1,2,3 +lit=0,1 + +[minecraft:orange_candle_cake] +lit=0,1 + [minecraft:orange_glazed_terracotta] facing_direction=0,1,2,3,4,5 @@ -1258,13 +1384,25 @@ top_slot_bit=0,1 [minecraft:packed_ice] +[minecraft:packed_mud] + +[minecraft:pearlescent_froglight] +pillar_axis=x,y,z + +[minecraft:pink_candle] +candles=0,1,2,3 +lit=0,1 + +[minecraft:pink_candle_cake] +lit=0,1 + [minecraft:pink_glazed_terracotta] facing_direction=0,1,2,3,4,5 [minecraft:piston] facing_direction=0,1,2,3,4,5 -[minecraft:pistonArmCollision] +[minecraft:piston_arm_collision] facing_direction=0,1,2,3,4,5 [minecraft:planks] @@ -1390,6 +1528,13 @@ direction=0,1,2,3 facing_direction=0,1,2,3,4,5 growth=0,1,2,3,4,5,6,7 +[minecraft:purple_candle] +candles=0,1,2,3 +lit=0,1 + +[minecraft:purple_candle_cake] +lit=0,1 + [minecraft:purple_glazed_terracotta] facing_direction=0,1,2,3,4,5 @@ -1422,6 +1567,13 @@ rail_direction=0,1,2,3,4,5,6,7,8,9 [minecraft:raw_iron_block] +[minecraft:red_candle] +candles=0,1,2,3 +lit=0,1 + +[minecraft:red_candle_cake] +lit=0,1 + [minecraft:red_flower] flower_type=allium,cornflower,houstonia,lily_of_the_valley,orchid,oxeye,poppy,tulip_orange,tulip_pink,tulip_red,tulip_white @@ -1461,6 +1613,8 @@ redstone_signal=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 [minecraft:reeds] age=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 +[minecraft:reinforced_deepslate] + [minecraft:repeating_command_block] conditional_bit=0,1 facing_direction=0,1,2,3,4,5 @@ -1488,10 +1642,21 @@ sapling_type=acacia,birch,dark_oak,jungle,oak,spruce stability=0,1,2,3,4,5,6,7 stability_check=0,1 +[minecraft:sculk] + +[minecraft:sculk_catalyst] +bloom=0,1 + [minecraft:sculk_sensor] powered_bit=0,1 -[minecraft:seaLantern] +[minecraft:sculk_shrieker] +active=0,1 + +[minecraft:sculk_vein] +multi_face_direction_bits=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63 + +[minecraft:sea_lantern] [minecraft:sea_pickle] cluster_count=0,1,2,3 @@ -1510,7 +1675,6 @@ facing_direction=0,1,2,3,4,5 [minecraft:skull] facing_direction=0,1,2,3,4,5 -no_drop_bit=0,1 [minecraft:slime] @@ -1618,10 +1782,10 @@ ground_sign_direction=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 [minecraft:standing_sign] ground_sign_direction=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 -[minecraft:stickyPistonArmCollision] +[minecraft:sticky_piston] facing_direction=0,1,2,3,4,5 -[minecraft:sticky_piston] +[minecraft:sticky_piston_arm_collision] facing_direction=0,1,2,3,4,5 [minecraft:stone] @@ -1727,7 +1891,7 @@ upside_down_bit=0,1 [minecraft:trapped_chest] facing_direction=0,1,2,3,4,5 -[minecraft:tripWire] +[minecraft:trip_wire] attached_bit=0,1 disarmed_bit=0,1 powered_bit=0,1 @@ -1766,6 +1930,9 @@ output_subtract_bit=0,1 direction=0,1,2,3 repeater_delay=0,1,2,3 +[minecraft:verdant_froglight] +pillar_axis=x,y,z + [minecraft:vine] vine_direction_bits=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 @@ -1915,6 +2082,13 @@ weeping_vines_age=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23, [minecraft:wheat] growth=0,1,2,3,4,5,6,7 +[minecraft:white_candle] +candles=0,1,2,3 +lit=0,1 + +[minecraft:white_candle_cake] +lit=0,1 + [minecraft:white_glazed_terracotta] facing_direction=0,1,2,3,4,5 @@ -1945,6 +2119,13 @@ wood_type=acacia,birch,dark_oak,jungle,oak,spruce [minecraft:wool] color=black,blue,brown,cyan,gray,green,light_blue,lime,magenta,orange,pink,purple,red,silver,white,yellow +[minecraft:yellow_candle] +candles=0,1,2,3 +lit=0,1 + +[minecraft:yellow_candle_cake] +lit=0,1 + [minecraft:yellow_flower] [minecraft:yellow_glazed_terracotta] diff --git a/item-id-dump.properties b/dumps/item-id-dump.properties similarity index 99% rename from item-id-dump.properties rename to dumps/item-id-dump.properties index 608544c27e9..c558ae4e881 100644 --- a/item-id-dump.properties +++ b/dumps/item-id-dump.properties @@ -1,304 +1,304 @@ --2=minecraft:prismarine_stairs --3=minecraft:dark_prismarine_stairs --4=minecraft:prismarine_bricks_stairs --5=minecraft:stripped_spruce_log --6=minecraft:stripped_birch_log --7=minecraft:stripped_jungle_log --8=minecraft:stripped_acacia_log --9=minecraft:stripped_dark_oak_log --10=minecraft:stripped_oak_log --11=minecraft:blue_ice --12=minecraft:element_1 --13=minecraft:element_2 --14=minecraft:element_3 --15=minecraft:element_4 --16=minecraft:element_5 --17=minecraft:element_6 --18=minecraft:element_7 --19=minecraft:element_8 --20=minecraft:element_9 --21=minecraft:element_10 --22=minecraft:element_11 --23=minecraft:element_12 --24=minecraft:element_13 --25=minecraft:element_14 --26=minecraft:element_15 --27=minecraft:element_16 --28=minecraft:element_17 --29=minecraft:element_18 --30=minecraft:element_19 --31=minecraft:element_20 --32=minecraft:element_21 --33=minecraft:element_22 --34=minecraft:element_23 --35=minecraft:element_24 --36=minecraft:element_25 --37=minecraft:element_26 --38=minecraft:element_27 --39=minecraft:element_28 --40=minecraft:element_29 --41=minecraft:element_30 --42=minecraft:element_31 --43=minecraft:element_32 --44=minecraft:element_33 --45=minecraft:element_34 --46=minecraft:element_35 --47=minecraft:element_36 --48=minecraft:element_37 --49=minecraft:element_38 --50=minecraft:element_39 --51=minecraft:element_40 --52=minecraft:element_41 --53=minecraft:element_42 --54=minecraft:element_43 --55=minecraft:element_44 --56=minecraft:element_45 --57=minecraft:element_46 --58=minecraft:element_47 --59=minecraft:element_48 --60=minecraft:element_49 --61=minecraft:element_50 --62=minecraft:element_51 --63=minecraft:element_52 --64=minecraft:element_53 --65=minecraft:element_54 --66=minecraft:element_55 --67=minecraft:element_56 --68=minecraft:element_57 --69=minecraft:element_58 --70=minecraft:element_59 --71=minecraft:element_60 --72=minecraft:element_61 --73=minecraft:element_62 --74=minecraft:element_63 --75=minecraft:element_64 --76=minecraft:element_65 --77=minecraft:element_66 --78=minecraft:element_67 --79=minecraft:element_68 --80=minecraft:element_69 --81=minecraft:element_70 --82=minecraft:element_71 --83=minecraft:element_72 --84=minecraft:element_73 --85=minecraft:element_74 --86=minecraft:element_75 --87=minecraft:element_76 --88=minecraft:element_77 --89=minecraft:element_78 --90=minecraft:element_79 --91=minecraft:element_80 --92=minecraft:element_81 --93=minecraft:element_82 --94=minecraft:element_83 --95=minecraft:element_84 --96=minecraft:element_85 --97=minecraft:element_86 --98=minecraft:element_87 --99=minecraft:element_88 --100=minecraft:element_89 --101=minecraft:element_90 --102=minecraft:element_91 --103=minecraft:element_92 --104=minecraft:element_93 --105=minecraft:element_94 --106=minecraft:element_95 --107=minecraft:element_96 --108=minecraft:element_97 --109=minecraft:element_98 --110=minecraft:element_99 --111=minecraft:element_100 --112=minecraft:element_101 --113=minecraft:element_102 --114=minecraft:element_103 --115=minecraft:element_104 --116=minecraft:element_105 --117=minecraft:element_106 --118=minecraft:element_107 --119=minecraft:element_108 --120=minecraft:element_109 --121=minecraft:element_110 --122=minecraft:element_111 --123=minecraft:element_112 --124=minecraft:element_113 --125=minecraft:element_114 --126=minecraft:element_115 --127=minecraft:element_116 --128=minecraft:element_117 --129=minecraft:element_118 --130=minecraft:seagrass --131=minecraft:coral --132=minecraft:coral_block --133=minecraft:coral_fan --134=minecraft:coral_fan_dead --135=minecraft:coral_fan_hang --136=minecraft:coral_fan_hang2 --137=minecraft:coral_fan_hang3 --138=minecraft:item.kelp --139=minecraft:dried_kelp_block --140=minecraft:acacia_button --141=minecraft:birch_button --142=minecraft:dark_oak_button --143=minecraft:jungle_button --144=minecraft:spruce_button --145=minecraft:acacia_trapdoor --146=minecraft:birch_trapdoor --147=minecraft:dark_oak_trapdoor --148=minecraft:jungle_trapdoor --149=minecraft:spruce_trapdoor --150=minecraft:acacia_pressure_plate --151=minecraft:birch_pressure_plate --152=minecraft:dark_oak_pressure_plate --153=minecraft:jungle_pressure_plate --154=minecraft:spruce_pressure_plate --155=minecraft:carved_pumpkin --156=minecraft:sea_pickle --157=minecraft:conduit --158=minecraft:air --159=minecraft:turtle_egg --160=minecraft:bubble_column --161=minecraft:barrier --162=minecraft:double_stone_slab3 --163=minecraft:bamboo --164=minecraft:bamboo_sapling --165=minecraft:scaffolding --166=minecraft:double_stone_slab4 --167=minecraft:real_double_stone_slab3 --168=minecraft:real_double_stone_slab4 --169=minecraft:granite_stairs --170=minecraft:diorite_stairs --171=minecraft:andesite_stairs --172=minecraft:polished_granite_stairs --173=minecraft:polished_diorite_stairs --174=minecraft:polished_andesite_stairs --175=minecraft:mossy_stone_brick_stairs --176=minecraft:smooth_red_sandstone_stairs --177=minecraft:smooth_sandstone_stairs --178=minecraft:end_brick_stairs --179=minecraft:mossy_cobblestone_stairs --180=minecraft:normal_stone_stairs --181=minecraft:spruce_standing_sign --182=minecraft:spruce_wall_sign --183=minecraft:smooth_stone --184=minecraft:red_nether_brick_stairs --185=minecraft:smooth_quartz_stairs --186=minecraft:birch_standing_sign --187=minecraft:birch_wall_sign --188=minecraft:jungle_standing_sign --189=minecraft:jungle_wall_sign --190=minecraft:acacia_standing_sign --191=minecraft:acacia_wall_sign --192=minecraft:darkoak_standing_sign --193=minecraft:darkoak_wall_sign --194=minecraft:lectern --195=minecraft:grindstone --196=minecraft:blast_furnace --197=minecraft:stonecutter_block --198=minecraft:smoker --199=minecraft:lit_smoker --200=minecraft:cartography_table --201=minecraft:fletching_table --202=minecraft:smithing_table --203=minecraft:barrel --204=minecraft:loom --206=minecraft:bell --207=minecraft:sweet_berry_bush --208=minecraft:lantern --209=minecraft:item.campfire --210=minecraft:lava_cauldron --211=minecraft:jigsaw --212=minecraft:wood --213=minecraft:composter --214=minecraft:lit_blast_furnace --215=minecraft:light_block --216=minecraft:wither_rose --217=minecraft:stickypistonarmcollision --218=minecraft:bee_nest --219=minecraft:beehive --220=minecraft:honey_block --221=minecraft:honeycomb_block --222=minecraft:lodestone --223=minecraft:crimson_roots --224=minecraft:warped_roots --225=minecraft:crimson_stem --226=minecraft:warped_stem --227=minecraft:warped_wart_block --228=minecraft:crimson_fungus --229=minecraft:warped_fungus --230=minecraft:shroomlight --231=minecraft:weeping_vines --232=minecraft:crimson_nylium --233=minecraft:warped_nylium --234=minecraft:basalt --235=minecraft:polished_basalt --236=minecraft:soul_soil --237=minecraft:soul_fire --238=minecraft:item.nether_sprouts --239=minecraft:target --240=minecraft:stripped_crimson_stem --241=minecraft:stripped_warped_stem --242=minecraft:crimson_planks --243=minecraft:warped_planks --244=minecraft:item.crimson_door --245=minecraft:item.warped_door --246=minecraft:crimson_trapdoor --247=minecraft:warped_trapdoor --250=minecraft:crimson_standing_sign --251=minecraft:warped_standing_sign --252=minecraft:crimson_wall_sign --253=minecraft:warped_wall_sign --254=minecraft:crimson_stairs --255=minecraft:warped_stairs --256=minecraft:crimson_fence --257=minecraft:warped_fence --258=minecraft:crimson_fence_gate --259=minecraft:warped_fence_gate --260=minecraft:crimson_button --261=minecraft:warped_button --262=minecraft:crimson_pressure_plate --263=minecraft:warped_pressure_plate --264=minecraft:crimson_slab --265=minecraft:warped_slab --266=minecraft:crimson_double_slab --267=minecraft:warped_double_slab --268=minecraft:soul_torch --269=minecraft:soul_lantern --270=minecraft:netherite_block --271=minecraft:ancient_debris --272=minecraft:respawn_anchor --273=minecraft:blackstone --274=minecraft:polished_blackstone_bricks --275=minecraft:polished_blackstone_brick_stairs --276=minecraft:blackstone_stairs --277=minecraft:blackstone_wall --278=minecraft:polished_blackstone_brick_wall --279=minecraft:chiseled_polished_blackstone --280=minecraft:cracked_polished_blackstone_bricks --281=minecraft:gilded_blackstone --282=minecraft:blackstone_slab --283=minecraft:blackstone_double_slab --284=minecraft:polished_blackstone_brick_slab --285=minecraft:polished_blackstone_brick_double_slab --286=minecraft:item.chain --287=minecraft:twisting_vines --288=minecraft:nether_gold_ore --289=minecraft:crying_obsidian --290=minecraft:item.soul_campfire --291=minecraft:polished_blackstone --292=minecraft:polished_blackstone_stairs --293=minecraft:polished_blackstone_slab --294=minecraft:polished_blackstone_double_slab --295=minecraft:polished_blackstone_pressure_plate --296=minecraft:polished_blackstone_button --297=minecraft:polished_blackstone_wall --298=minecraft:warped_hyphae --299=minecraft:crimson_hyphae --300=minecraft:stripped_crimson_hyphae --301=minecraft:stripped_warped_hyphae --302=minecraft:chiseled_nether_bricks --303=minecraft:cracked_nether_bricks --304=minecraft:quartz_bricks -305=minecraft:unknown +-304=minecraft:quartz_bricks +-303=minecraft:cracked_nether_bricks +-302=minecraft:chiseled_nether_bricks +-301=minecraft:stripped_warped_hyphae +-300=minecraft:stripped_crimson_hyphae +-299=minecraft:crimson_hyphae +-298=minecraft:warped_hyphae +-297=minecraft:polished_blackstone_wall +-296=minecraft:polished_blackstone_button +-295=minecraft:polished_blackstone_pressure_plate +-294=minecraft:polished_blackstone_double_slab +-293=minecraft:polished_blackstone_slab +-292=minecraft:polished_blackstone_stairs +-291=minecraft:polished_blackstone +-290=minecraft:item.soul_campfire +-289=minecraft:crying_obsidian +-288=minecraft:nether_gold_ore +-287=minecraft:twisting_vines +-286=minecraft:item.chain +-285=minecraft:polished_blackstone_brick_double_slab +-284=minecraft:polished_blackstone_brick_slab +-283=minecraft:blackstone_double_slab +-282=minecraft:blackstone_slab +-281=minecraft:gilded_blackstone +-280=minecraft:cracked_polished_blackstone_bricks +-279=minecraft:chiseled_polished_blackstone +-278=minecraft:polished_blackstone_brick_wall +-277=minecraft:blackstone_wall +-276=minecraft:blackstone_stairs +-275=minecraft:polished_blackstone_brick_stairs +-274=minecraft:polished_blackstone_bricks +-273=minecraft:blackstone +-272=minecraft:respawn_anchor +-271=minecraft:ancient_debris +-270=minecraft:netherite_block +-269=minecraft:soul_lantern +-268=minecraft:soul_torch +-267=minecraft:warped_double_slab +-266=minecraft:crimson_double_slab +-265=minecraft:warped_slab +-264=minecraft:crimson_slab +-263=minecraft:warped_pressure_plate +-262=minecraft:crimson_pressure_plate +-261=minecraft:warped_button +-260=minecraft:crimson_button +-259=minecraft:warped_fence_gate +-258=minecraft:crimson_fence_gate +-257=minecraft:warped_fence +-256=minecraft:crimson_fence +-255=minecraft:warped_stairs +-254=minecraft:crimson_stairs +-253=minecraft:warped_wall_sign +-252=minecraft:crimson_wall_sign +-251=minecraft:warped_standing_sign +-250=minecraft:crimson_standing_sign +-247=minecraft:warped_trapdoor +-246=minecraft:crimson_trapdoor +-245=minecraft:item.warped_door +-244=minecraft:item.crimson_door +-243=minecraft:warped_planks +-242=minecraft:crimson_planks +-241=minecraft:stripped_warped_stem +-240=minecraft:stripped_crimson_stem +-239=minecraft:target +-238=minecraft:item.nether_sprouts +-237=minecraft:soul_fire +-236=minecraft:soul_soil +-235=minecraft:polished_basalt +-234=minecraft:basalt +-233=minecraft:warped_nylium +-232=minecraft:crimson_nylium +-231=minecraft:weeping_vines +-230=minecraft:shroomlight +-229=minecraft:warped_fungus +-228=minecraft:crimson_fungus +-227=minecraft:warped_wart_block +-226=minecraft:warped_stem +-225=minecraft:crimson_stem +-224=minecraft:warped_roots +-223=minecraft:crimson_roots +-222=minecraft:lodestone +-221=minecraft:honeycomb_block +-220=minecraft:honey_block +-219=minecraft:beehive +-218=minecraft:bee_nest +-217=minecraft:stickypistonarmcollision +-216=minecraft:wither_rose +-215=minecraft:light_block +-214=minecraft:lit_blast_furnace +-213=minecraft:composter +-212=minecraft:wood +-211=minecraft:jigsaw +-210=minecraft:lava_cauldron +-209=minecraft:item.campfire +-208=minecraft:lantern +-207=minecraft:sweet_berry_bush +-206=minecraft:bell +-204=minecraft:loom +-203=minecraft:barrel +-202=minecraft:smithing_table +-201=minecraft:fletching_table +-200=minecraft:cartography_table +-199=minecraft:lit_smoker +-198=minecraft:smoker +-197=minecraft:stonecutter_block +-196=minecraft:blast_furnace +-195=minecraft:grindstone +-194=minecraft:lectern +-193=minecraft:darkoak_wall_sign +-192=minecraft:darkoak_standing_sign +-191=minecraft:acacia_wall_sign +-190=minecraft:acacia_standing_sign +-189=minecraft:jungle_wall_sign +-188=minecraft:jungle_standing_sign +-187=minecraft:birch_wall_sign +-186=minecraft:birch_standing_sign +-185=minecraft:smooth_quartz_stairs +-184=minecraft:red_nether_brick_stairs +-183=minecraft:smooth_stone +-182=minecraft:spruce_wall_sign +-181=minecraft:spruce_standing_sign +-180=minecraft:normal_stone_stairs +-179=minecraft:mossy_cobblestone_stairs +-178=minecraft:end_brick_stairs +-177=minecraft:smooth_sandstone_stairs +-176=minecraft:smooth_red_sandstone_stairs +-175=minecraft:mossy_stone_brick_stairs +-174=minecraft:polished_andesite_stairs +-173=minecraft:polished_diorite_stairs +-172=minecraft:polished_granite_stairs +-171=minecraft:andesite_stairs +-170=minecraft:diorite_stairs +-169=minecraft:granite_stairs +-168=minecraft:real_double_stone_slab4 +-167=minecraft:real_double_stone_slab3 +-166=minecraft:double_stone_slab4 +-165=minecraft:scaffolding +-164=minecraft:bamboo_sapling +-163=minecraft:bamboo +-162=minecraft:double_stone_slab3 +-161=minecraft:barrier +-160=minecraft:bubble_column +-159=minecraft:turtle_egg +-158=minecraft:air +-157=minecraft:conduit +-156=minecraft:sea_pickle +-155=minecraft:carved_pumpkin +-154=minecraft:spruce_pressure_plate +-153=minecraft:jungle_pressure_plate +-152=minecraft:dark_oak_pressure_plate +-151=minecraft:birch_pressure_plate +-150=minecraft:acacia_pressure_plate +-149=minecraft:spruce_trapdoor +-148=minecraft:jungle_trapdoor +-147=minecraft:dark_oak_trapdoor +-146=minecraft:birch_trapdoor +-145=minecraft:acacia_trapdoor +-144=minecraft:spruce_button +-143=minecraft:jungle_button +-142=minecraft:dark_oak_button +-141=minecraft:birch_button +-140=minecraft:acacia_button +-139=minecraft:dried_kelp_block +-138=minecraft:item.kelp +-137=minecraft:coral_fan_hang3 +-136=minecraft:coral_fan_hang2 +-135=minecraft:coral_fan_hang +-134=minecraft:coral_fan_dead +-133=minecraft:coral_fan +-132=minecraft:coral_block +-131=minecraft:coral +-130=minecraft:seagrass +-129=minecraft:element_118 +-128=minecraft:element_117 +-127=minecraft:element_116 +-126=minecraft:element_115 +-125=minecraft:element_114 +-124=minecraft:element_113 +-123=minecraft:element_112 +-122=minecraft:element_111 +-121=minecraft:element_110 +-120=minecraft:element_109 +-119=minecraft:element_108 +-118=minecraft:element_107 +-117=minecraft:element_106 +-116=minecraft:element_105 +-115=minecraft:element_104 +-114=minecraft:element_103 +-113=minecraft:element_102 +-112=minecraft:element_101 +-111=minecraft:element_100 +-110=minecraft:element_99 +-109=minecraft:element_98 +-108=minecraft:element_97 +-107=minecraft:element_96 +-106=minecraft:element_95 +-105=minecraft:element_94 +-104=minecraft:element_93 +-103=minecraft:element_92 +-102=minecraft:element_91 +-101=minecraft:element_90 +-100=minecraft:element_89 +-99=minecraft:element_88 +-98=minecraft:element_87 +-97=minecraft:element_86 +-96=minecraft:element_85 +-95=minecraft:element_84 +-94=minecraft:element_83 +-93=minecraft:element_82 +-92=minecraft:element_81 +-91=minecraft:element_80 +-90=minecraft:element_79 +-89=minecraft:element_78 +-88=minecraft:element_77 +-87=minecraft:element_76 +-86=minecraft:element_75 +-85=minecraft:element_74 +-84=minecraft:element_73 +-83=minecraft:element_72 +-82=minecraft:element_71 +-81=minecraft:element_70 +-80=minecraft:element_69 +-79=minecraft:element_68 +-78=minecraft:element_67 +-77=minecraft:element_66 +-76=minecraft:element_65 +-75=minecraft:element_64 +-74=minecraft:element_63 +-73=minecraft:element_62 +-72=minecraft:element_61 +-71=minecraft:element_60 +-70=minecraft:element_59 +-69=minecraft:element_58 +-68=minecraft:element_57 +-67=minecraft:element_56 +-66=minecraft:element_55 +-65=minecraft:element_54 +-64=minecraft:element_53 +-63=minecraft:element_52 +-62=minecraft:element_51 +-61=minecraft:element_50 +-60=minecraft:element_49 +-59=minecraft:element_48 +-58=minecraft:element_47 +-57=minecraft:element_46 +-56=minecraft:element_45 +-55=minecraft:element_44 +-54=minecraft:element_43 +-53=minecraft:element_42 +-52=minecraft:element_41 +-51=minecraft:element_40 +-50=minecraft:element_39 +-49=minecraft:element_38 +-48=minecraft:element_37 +-47=minecraft:element_36 +-46=minecraft:element_35 +-45=minecraft:element_34 +-44=minecraft:element_33 +-43=minecraft:element_32 +-42=minecraft:element_31 +-41=minecraft:element_30 +-40=minecraft:element_29 +-39=minecraft:element_28 +-38=minecraft:element_27 +-37=minecraft:element_26 +-36=minecraft:element_25 +-35=minecraft:element_24 +-34=minecraft:element_23 +-33=minecraft:element_22 +-32=minecraft:element_21 +-31=minecraft:element_20 +-30=minecraft:element_19 +-29=minecraft:element_18 +-28=minecraft:element_17 +-27=minecraft:element_16 +-26=minecraft:element_15 +-25=minecraft:element_14 +-24=minecraft:element_13 +-23=minecraft:element_12 +-22=minecraft:element_11 +-21=minecraft:element_10 +-20=minecraft:element_9 +-19=minecraft:element_8 +-18=minecraft:element_7 +-17=minecraft:element_6 +-16=minecraft:element_5 +-15=minecraft:element_4 +-14=minecraft:element_3 +-13=minecraft:element_2 +-12=minecraft:element_1 +-11=minecraft:blue_ice +-10=minecraft:stripped_oak_log +-9=minecraft:stripped_dark_oak_log +-8=minecraft:stripped_acacia_log +-7=minecraft:stripped_jungle_log +-6=minecraft:stripped_birch_log +-5=minecraft:stripped_spruce_log +-4=minecraft:prismarine_bricks_stairs +-3=minecraft:dark_prismarine_stairs +-2=minecraft:prismarine_stairs 1=minecraft:stone 2=minecraft:grass 3=minecraft:dirt @@ -628,7 +628,9 @@ 325_2=minecraft:cod_bucket 325_3=minecraft:salmon_bucket 325_4=minecraft:tropical_fish_bucket +325_5=minecraft:pufferfish_bucket 325_8=minecraft:water_bucket +325_10=minecraft:lava_bucket 328=minecraft:minecart 329=minecraft:saddle 330=minecraft:iron_door @@ -641,7 +643,6 @@ 333_3=minecraft:jungle_boat 333_4=minecraft:acacia_boat 333_5=minecraft:dark_oak_boat -325_10=minecraft:lava_bucket 334=minecraft:leather 335=minecraft:kelp 336=minecraft:brick @@ -711,13 +712,6 @@ 381=minecraft:ender_eye 382=minecraft:glistering_melon_slice 383=minecraft:spawn_egg -434_0=minecraft:creeper_banner_pattern -434_1=minecraft:skull_banner_pattern -434_2=minecraft:flower_banner_pattern -434_3=minecraft:mojang_banner_pattern -434_4=minecraft:field_masoned_banner_pattern -434_5=minecraft:bordure_indented_banner_pattern -434_6=minecraft:piglin_banner_pattern 383_10=minecraft:chicken_spawn_egg 383_11=minecraft:cow_spawn_egg 383_12=minecraft:pig_spawn_egg @@ -740,7 +734,7 @@ 383_31=minecraft:dolphin_spawn_egg 383_32=minecraft:zombie_spawn_egg 383_33=minecraft:creeper_spawn_egg -383_34=minecraft:wither_skeleton_spawn_egg +383_34=minecraft:skeleton_spawn_egg 383_35=minecraft:spider_spawn_egg 383_36=minecraft:zombie_pigman_spawn_egg 383_37=minecraft:slime_spawn_egg @@ -754,6 +748,7 @@ 383_45=minecraft:witch_spawn_egg 383_46=minecraft:stray_spawn_egg 383_47=minecraft:husk_spawn_egg +383_48=minecraft:wither_skeleton_spawn_egg 383_49=minecraft:guardian_spawn_egg 383_50=minecraft:elder_guardian_spawn_egg 383_51=minecraft:npc_spawn_egg @@ -782,6 +777,9 @@ 383_125=minecraft:strider_spawn_egg 383_126=minecraft:zoglin_spawn_egg 383_127=minecraft:piglin_brute_spawn_egg +383_128=minecraft:goat_spawn_egg +383_129=minecraft:glow_squid_spawn_egg +383_130=minecraft:axolotl_spawn_egg 384=minecraft:experience_bottle 385=minecraft:fire_charge 386=minecraft:writable_book @@ -833,6 +831,13 @@ 432=minecraft:chorus_fruit 433=minecraft:popped_chorus_fruit 434=minecraft:banner_pattern +434_0=minecraft:creeper_banner_pattern +434_1=minecraft:skull_banner_pattern +434_2=minecraft:flower_banner_pattern +434_3=minecraft:mojang_banner_pattern +434_4=minecraft:field_masoned_banner_pattern +434_5=minecraft:bordure_indented_banner_pattern +434_6=minecraft:piglin_banner_pattern 437=minecraft:dragon_breath 438=minecraft:splash_potion 441=minecraft:lingering_potion @@ -909,4 +914,5 @@ 758=minecraft:chain 759=minecraft:music_disc_pigstep 760=minecraft:nether_sprouts +772=minecraft:spyglass 801=minecraft:soul_campfire diff --git a/dumps/needed-class-changes.json b/dumps/needed-class-changes.json new file mode 100644 index 00000000000..9e26dfeeb6e --- /dev/null +++ b/dumps/needed-class-changes.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/runtime_block_states.dat.dump.txt b/dumps/runtime_block_states.dat.dump.txt similarity index 94% rename from runtime_block_states.dat.dump.txt rename to dumps/runtime_block_states.dat.dump.txt index d3fedaea1e1..43771dcb583 100644 --- a/runtime_block_states.dat.dump.txt +++ b/dumps/runtime_block_states.dat.dump.txt @@ -2,30729 +2,32913 @@ minecraft:acacia_button;button_pressed_bit=0;facing_direction=0 blockId=395 -runtimeId=0 +runtimeId=7173 minecraft:acacia_button;button_pressed_bit=0;facing_direction=1 blockId=395 -runtimeId=1 +runtimeId=7174 minecraft:acacia_button;button_pressed_bit=0;facing_direction=2 blockId=395 -runtimeId=2 +runtimeId=7175 minecraft:acacia_button;button_pressed_bit=0;facing_direction=3 blockId=395 -runtimeId=3 +runtimeId=7176 minecraft:acacia_button;button_pressed_bit=0;facing_direction=4 blockId=395 -runtimeId=4 +runtimeId=7177 minecraft:acacia_button;button_pressed_bit=0;facing_direction=5 blockId=395 -runtimeId=5 +runtimeId=7178 minecraft:acacia_button;button_pressed_bit=1;facing_direction=0 blockId=395 -runtimeId=6 +runtimeId=7179 minecraft:acacia_button;button_pressed_bit=1;facing_direction=1 blockId=395 -runtimeId=7 +runtimeId=7180 minecraft:acacia_button;button_pressed_bit=1;facing_direction=2 blockId=395 -runtimeId=8 +runtimeId=7181 minecraft:acacia_button;button_pressed_bit=1;facing_direction=3 blockId=395 -runtimeId=9 +runtimeId=7182 minecraft:acacia_button;button_pressed_bit=1;facing_direction=4 blockId=395 -runtimeId=10 +runtimeId=7183 minecraft:acacia_button;button_pressed_bit=1;facing_direction=5 blockId=395 -runtimeId=11 +runtimeId=7184 minecraft:acacia_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=0 blockId=196 -runtimeId=12 +runtimeId=4348 minecraft:acacia_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=1 blockId=196 -runtimeId=13 +runtimeId=4349 minecraft:acacia_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=2 blockId=196 -runtimeId=14 +runtimeId=4350 minecraft:acacia_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=3 blockId=196 -runtimeId=15 +runtimeId=4351 minecraft:acacia_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=0 blockId=196 -runtimeId=28 +runtimeId=4364 minecraft:acacia_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=1 blockId=196 -runtimeId=29 +runtimeId=4365 minecraft:acacia_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=2 blockId=196 -runtimeId=30 +runtimeId=4366 minecraft:acacia_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=3 blockId=196 -runtimeId=31 +runtimeId=4367 minecraft:acacia_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=0 blockId=196 -runtimeId=20 +runtimeId=4356 minecraft:acacia_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=1 blockId=196 -runtimeId=21 +runtimeId=4357 minecraft:acacia_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=2 blockId=196 -runtimeId=22 +runtimeId=4358 minecraft:acacia_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=3 blockId=196 -runtimeId=23 +runtimeId=4359 minecraft:acacia_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=0 blockId=196 -runtimeId=36 +runtimeId=4372 minecraft:acacia_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=1 blockId=196 -runtimeId=37 +runtimeId=4373 minecraft:acacia_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=2 blockId=196 -runtimeId=38 +runtimeId=4374 minecraft:acacia_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=3 blockId=196 -runtimeId=39 +runtimeId=4375 minecraft:acacia_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=0 blockId=196 -runtimeId=16 +runtimeId=4352 minecraft:acacia_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=1 blockId=196 -runtimeId=17 +runtimeId=4353 minecraft:acacia_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=2 blockId=196 -runtimeId=18 +runtimeId=4354 minecraft:acacia_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=3 blockId=196 -runtimeId=19 +runtimeId=4355 minecraft:acacia_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=0 blockId=196 -runtimeId=32 +runtimeId=4368 minecraft:acacia_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=1 blockId=196 -runtimeId=33 +runtimeId=4369 minecraft:acacia_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=2 blockId=196 -runtimeId=34 +runtimeId=4370 minecraft:acacia_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=3 blockId=196 -runtimeId=35 +runtimeId=4371 minecraft:acacia_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=0 blockId=196 -runtimeId=24 +runtimeId=4360 minecraft:acacia_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=1 blockId=196 -runtimeId=25 +runtimeId=4361 minecraft:acacia_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=2 blockId=196 -runtimeId=26 +runtimeId=4362 minecraft:acacia_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=3 blockId=196 -runtimeId=27 +runtimeId=4363 minecraft:acacia_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=0 blockId=196 -runtimeId=40 +runtimeId=4376 minecraft:acacia_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=1 blockId=196 -runtimeId=41 +runtimeId=4377 minecraft:acacia_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=2 blockId=196 -runtimeId=42 +runtimeId=4378 minecraft:acacia_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=3 blockId=196 -runtimeId=43 +runtimeId=4379 minecraft:acacia_fence_gate;in_wall_bit=0;open_bit=0;direction=0 blockId=187 -runtimeId=44 +runtimeId=7528 minecraft:acacia_fence_gate;in_wall_bit=0;open_bit=0;direction=1 blockId=187 -runtimeId=45 +runtimeId=7529 minecraft:acacia_fence_gate;in_wall_bit=0;open_bit=0;direction=2 blockId=187 -runtimeId=46 +runtimeId=7530 minecraft:acacia_fence_gate;in_wall_bit=0;open_bit=0;direction=3 blockId=187 -runtimeId=47 +runtimeId=7531 minecraft:acacia_fence_gate;in_wall_bit=0;open_bit=1;direction=0 blockId=187 -runtimeId=48 +runtimeId=7532 minecraft:acacia_fence_gate;in_wall_bit=0;open_bit=1;direction=1 blockId=187 -runtimeId=49 +runtimeId=7533 minecraft:acacia_fence_gate;in_wall_bit=0;open_bit=1;direction=2 blockId=187 -runtimeId=50 +runtimeId=7534 minecraft:acacia_fence_gate;in_wall_bit=0;open_bit=1;direction=3 blockId=187 -runtimeId=51 +runtimeId=7535 minecraft:acacia_fence_gate;in_wall_bit=1;open_bit=0;direction=0 blockId=187 -runtimeId=52 +runtimeId=7536 minecraft:acacia_fence_gate;in_wall_bit=1;open_bit=0;direction=1 blockId=187 -runtimeId=53 +runtimeId=7537 minecraft:acacia_fence_gate;in_wall_bit=1;open_bit=0;direction=2 blockId=187 -runtimeId=54 +runtimeId=7538 minecraft:acacia_fence_gate;in_wall_bit=1;open_bit=0;direction=3 blockId=187 -runtimeId=55 +runtimeId=7539 minecraft:acacia_fence_gate;in_wall_bit=1;open_bit=1;direction=0 blockId=187 -runtimeId=56 +runtimeId=7540 minecraft:acacia_fence_gate;in_wall_bit=1;open_bit=1;direction=1 blockId=187 -runtimeId=57 +runtimeId=7541 minecraft:acacia_fence_gate;in_wall_bit=1;open_bit=1;direction=2 blockId=187 -runtimeId=58 +runtimeId=7542 minecraft:acacia_fence_gate;in_wall_bit=1;open_bit=1;direction=3 blockId=187 -runtimeId=59 +runtimeId=7543 minecraft:acacia_pressure_plate;redstone_signal=0 blockId=405 -runtimeId=60 +runtimeId=5203 minecraft:acacia_pressure_plate;redstone_signal=1 blockId=405 -runtimeId=61 +runtimeId=5204 minecraft:acacia_pressure_plate;redstone_signal=2 blockId=405 -runtimeId=62 +runtimeId=5205 minecraft:acacia_pressure_plate;redstone_signal=3 blockId=405 -runtimeId=63 +runtimeId=5206 minecraft:acacia_pressure_plate;redstone_signal=4 blockId=405 -runtimeId=64 +runtimeId=5207 minecraft:acacia_pressure_plate;redstone_signal=5 blockId=405 -runtimeId=65 +runtimeId=5208 minecraft:acacia_pressure_plate;redstone_signal=6 blockId=405 -runtimeId=66 +runtimeId=5209 minecraft:acacia_pressure_plate;redstone_signal=7 blockId=405 -runtimeId=67 +runtimeId=5210 minecraft:acacia_pressure_plate;redstone_signal=8 blockId=405 -runtimeId=68 +runtimeId=5211 minecraft:acacia_pressure_plate;redstone_signal=9 blockId=405 -runtimeId=69 +runtimeId=5212 minecraft:acacia_pressure_plate;redstone_signal=10 blockId=405 -runtimeId=70 +runtimeId=5213 minecraft:acacia_pressure_plate;redstone_signal=11 blockId=405 -runtimeId=71 +runtimeId=5214 minecraft:acacia_pressure_plate;redstone_signal=12 blockId=405 -runtimeId=72 +runtimeId=5215 minecraft:acacia_pressure_plate;redstone_signal=13 blockId=405 -runtimeId=73 +runtimeId=5216 minecraft:acacia_pressure_plate;redstone_signal=14 blockId=405 -runtimeId=74 +runtimeId=5217 minecraft:acacia_pressure_plate;redstone_signal=15 blockId=405 -runtimeId=75 +runtimeId=5218 minecraft:acacia_stairs;upside_down_bit=0;weirdo_direction=0 blockId=163 -runtimeId=76 +runtimeId=6123 minecraft:acacia_stairs;upside_down_bit=0;weirdo_direction=1 blockId=163 -runtimeId=77 +runtimeId=6124 minecraft:acacia_stairs;upside_down_bit=0;weirdo_direction=2 blockId=163 -runtimeId=78 +runtimeId=6125 minecraft:acacia_stairs;upside_down_bit=0;weirdo_direction=3 blockId=163 -runtimeId=79 +runtimeId=6126 minecraft:acacia_stairs;upside_down_bit=1;weirdo_direction=0 blockId=163 -runtimeId=80 +runtimeId=6127 minecraft:acacia_stairs;upside_down_bit=1;weirdo_direction=1 blockId=163 -runtimeId=81 +runtimeId=6128 minecraft:acacia_stairs;upside_down_bit=1;weirdo_direction=2 blockId=163 -runtimeId=82 +runtimeId=6129 minecraft:acacia_stairs;upside_down_bit=1;weirdo_direction=3 blockId=163 -runtimeId=83 +runtimeId=6130 minecraft:acacia_standing_sign;ground_sign_direction=0 blockId=445 -runtimeId=84 +runtimeId=6213 minecraft:acacia_standing_sign;ground_sign_direction=1 blockId=445 -runtimeId=85 +runtimeId=6214 minecraft:acacia_standing_sign;ground_sign_direction=2 blockId=445 -runtimeId=86 +runtimeId=6215 minecraft:acacia_standing_sign;ground_sign_direction=3 blockId=445 -runtimeId=87 +runtimeId=6216 minecraft:acacia_standing_sign;ground_sign_direction=4 blockId=445 -runtimeId=88 +runtimeId=6217 minecraft:acacia_standing_sign;ground_sign_direction=5 blockId=445 -runtimeId=89 +runtimeId=6218 minecraft:acacia_standing_sign;ground_sign_direction=6 blockId=445 -runtimeId=90 +runtimeId=6219 minecraft:acacia_standing_sign;ground_sign_direction=7 blockId=445 -runtimeId=91 +runtimeId=6220 minecraft:acacia_standing_sign;ground_sign_direction=8 blockId=445 -runtimeId=92 +runtimeId=6221 minecraft:acacia_standing_sign;ground_sign_direction=9 blockId=445 -runtimeId=93 +runtimeId=6222 minecraft:acacia_standing_sign;ground_sign_direction=10 blockId=445 -runtimeId=94 +runtimeId=6223 minecraft:acacia_standing_sign;ground_sign_direction=11 blockId=445 -runtimeId=95 +runtimeId=6224 minecraft:acacia_standing_sign;ground_sign_direction=12 blockId=445 -runtimeId=96 +runtimeId=6225 minecraft:acacia_standing_sign;ground_sign_direction=13 blockId=445 -runtimeId=97 +runtimeId=6226 minecraft:acacia_standing_sign;ground_sign_direction=14 blockId=445 -runtimeId=98 +runtimeId=6227 minecraft:acacia_standing_sign;ground_sign_direction=15 blockId=445 -runtimeId=99 +runtimeId=6228 minecraft:acacia_trapdoor;open_bit=0;upside_down_bit=0;direction=0 blockId=400 -runtimeId=100 +runtimeId=5539 minecraft:acacia_trapdoor;open_bit=0;upside_down_bit=0;direction=1 blockId=400 -runtimeId=101 +runtimeId=5540 minecraft:acacia_trapdoor;open_bit=0;upside_down_bit=0;direction=2 blockId=400 -runtimeId=102 +runtimeId=5541 minecraft:acacia_trapdoor;open_bit=0;upside_down_bit=0;direction=3 blockId=400 -runtimeId=103 +runtimeId=5542 minecraft:acacia_trapdoor;open_bit=0;upside_down_bit=1;direction=0 blockId=400 -runtimeId=104 +runtimeId=5543 minecraft:acacia_trapdoor;open_bit=0;upside_down_bit=1;direction=1 blockId=400 -runtimeId=105 +runtimeId=5544 minecraft:acacia_trapdoor;open_bit=0;upside_down_bit=1;direction=2 blockId=400 -runtimeId=106 +runtimeId=5545 minecraft:acacia_trapdoor;open_bit=0;upside_down_bit=1;direction=3 blockId=400 -runtimeId=107 +runtimeId=5546 minecraft:acacia_trapdoor;open_bit=1;upside_down_bit=0;direction=0 blockId=400 -runtimeId=108 +runtimeId=5547 minecraft:acacia_trapdoor;open_bit=1;upside_down_bit=0;direction=1 blockId=400 -runtimeId=109 +runtimeId=5548 minecraft:acacia_trapdoor;open_bit=1;upside_down_bit=0;direction=2 blockId=400 -runtimeId=110 +runtimeId=5549 minecraft:acacia_trapdoor;open_bit=1;upside_down_bit=0;direction=3 blockId=400 -runtimeId=111 +runtimeId=5550 minecraft:acacia_trapdoor;open_bit=1;upside_down_bit=1;direction=0 blockId=400 -runtimeId=112 +runtimeId=5551 minecraft:acacia_trapdoor;open_bit=1;upside_down_bit=1;direction=1 blockId=400 -runtimeId=113 +runtimeId=5552 minecraft:acacia_trapdoor;open_bit=1;upside_down_bit=1;direction=2 blockId=400 -runtimeId=114 +runtimeId=5553 minecraft:acacia_trapdoor;open_bit=1;upside_down_bit=1;direction=3 blockId=400 -runtimeId=115 +runtimeId=5554 minecraft:acacia_wall_sign;facing_direction=0 blockId=446 -runtimeId=116 +runtimeId=3664 minecraft:acacia_wall_sign;facing_direction=1 blockId=446 -runtimeId=117 +runtimeId=3665 minecraft:acacia_wall_sign;facing_direction=2 blockId=446 -runtimeId=118 +runtimeId=3666 minecraft:acacia_wall_sign;facing_direction=3 blockId=446 -runtimeId=119 +runtimeId=3667 minecraft:acacia_wall_sign;facing_direction=4 blockId=446 -runtimeId=120 +runtimeId=3668 minecraft:acacia_wall_sign;facing_direction=5 blockId=446 -runtimeId=121 +runtimeId=3669 minecraft:activator_rail;rail_direction=0;rail_data_bit=0 blockId=126 -runtimeId=122 +runtimeId=323 minecraft:activator_rail;rail_direction=0;rail_data_bit=1 blockId=126 -runtimeId=128 +runtimeId=329 minecraft:activator_rail;rail_direction=1;rail_data_bit=0 blockId=126 -runtimeId=123 +runtimeId=324 minecraft:activator_rail;rail_direction=1;rail_data_bit=1 blockId=126 -runtimeId=129 +runtimeId=330 minecraft:activator_rail;rail_direction=2;rail_data_bit=0 blockId=126 -runtimeId=124 +runtimeId=325 minecraft:activator_rail;rail_direction=2;rail_data_bit=1 blockId=126 -runtimeId=130 +runtimeId=331 minecraft:activator_rail;rail_direction=3;rail_data_bit=0 blockId=126 -runtimeId=125 +runtimeId=326 minecraft:activator_rail;rail_direction=3;rail_data_bit=1 blockId=126 -runtimeId=131 +runtimeId=332 minecraft:activator_rail;rail_direction=4;rail_data_bit=0 blockId=126 -runtimeId=126 +runtimeId=327 minecraft:activator_rail;rail_direction=4;rail_data_bit=1 blockId=126 -runtimeId=132 +runtimeId=333 minecraft:activator_rail;rail_direction=5;rail_data_bit=0 blockId=126 -runtimeId=127 +runtimeId=328 minecraft:activator_rail;rail_direction=5;rail_data_bit=1 blockId=126 -runtimeId=133 +runtimeId=334 minecraft:air blockId=0 -runtimeId=134 +runtimeId=6564 minecraft:allow blockId=210 -runtimeId=135 +runtimeId=7024 minecraft:amethyst_block blockId=582 -runtimeId=136 +runtimeId=304 minecraft:amethyst_cluster;facing_direction=0 blockId=584 -runtimeId=137 +runtimeId=7751 minecraft:amethyst_cluster;facing_direction=1 blockId=584 -runtimeId=138 +runtimeId=7752 minecraft:amethyst_cluster;facing_direction=2 blockId=584 -runtimeId=139 +runtimeId=7753 minecraft:amethyst_cluster;facing_direction=3 blockId=584 -runtimeId=140 +runtimeId=7754 minecraft:amethyst_cluster;facing_direction=4 blockId=584 -runtimeId=141 +runtimeId=7755 minecraft:amethyst_cluster;facing_direction=5 blockId=584 -runtimeId=142 +runtimeId=7756 minecraft:ancient_debris blockId=526 -runtimeId=143 +runtimeId=6031 minecraft:andesite_stairs;upside_down_bit=0;weirdo_direction=0 blockId=426 -runtimeId=144 +runtimeId=5258 minecraft:andesite_stairs;upside_down_bit=0;weirdo_direction=1 blockId=426 -runtimeId=145 +runtimeId=5259 minecraft:andesite_stairs;upside_down_bit=0;weirdo_direction=2 blockId=426 -runtimeId=146 +runtimeId=5260 minecraft:andesite_stairs;upside_down_bit=0;weirdo_direction=3 blockId=426 -runtimeId=147 +runtimeId=5261 minecraft:andesite_stairs;upside_down_bit=1;weirdo_direction=0 blockId=426 -runtimeId=148 +runtimeId=5262 minecraft:andesite_stairs;upside_down_bit=1;weirdo_direction=1 blockId=426 -runtimeId=149 +runtimeId=5263 minecraft:andesite_stairs;upside_down_bit=1;weirdo_direction=2 blockId=426 -runtimeId=150 +runtimeId=5264 minecraft:andesite_stairs;upside_down_bit=1;weirdo_direction=3 blockId=426 -runtimeId=151 +runtimeId=5265 minecraft:anvil;damage=broken;direction=0 blockId=145 -runtimeId=164 +runtimeId=6520 minecraft:anvil;damage=broken;direction=1 blockId=145 -runtimeId=165 +runtimeId=6521 minecraft:anvil;damage=broken;direction=2 blockId=145 -runtimeId=166 +runtimeId=6522 minecraft:anvil;damage=broken;direction=3 blockId=145 -runtimeId=167 +runtimeId=6523 minecraft:anvil;damage=slightly_damaged;direction=0 blockId=145 -runtimeId=156 +runtimeId=6512 minecraft:anvil;damage=slightly_damaged;direction=1 blockId=145 -runtimeId=157 +runtimeId=6513 minecraft:anvil;damage=slightly_damaged;direction=2 blockId=145 -runtimeId=158 +runtimeId=6514 minecraft:anvil;damage=slightly_damaged;direction=3 blockId=145 -runtimeId=159 +runtimeId=6515 minecraft:anvil;damage=undamaged;direction=0 blockId=145 -runtimeId=152 +runtimeId=6508 minecraft:anvil;damage=undamaged;direction=1 blockId=145 -runtimeId=153 +runtimeId=6509 minecraft:anvil;damage=undamaged;direction=2 blockId=145 -runtimeId=154 +runtimeId=6510 minecraft:anvil;damage=undamaged;direction=3 blockId=145 -runtimeId=155 +runtimeId=6511 minecraft:anvil;damage=very_damaged;direction=0 blockId=145 -runtimeId=160 +runtimeId=6516 minecraft:anvil;damage=very_damaged;direction=1 blockId=145 -runtimeId=161 +runtimeId=6517 minecraft:anvil;damage=very_damaged;direction=2 blockId=145 -runtimeId=162 +runtimeId=6518 minecraft:anvil;damage=very_damaged;direction=3 blockId=145 -runtimeId=163 +runtimeId=6519 minecraft:azalea blockId=592 -runtimeId=168 +runtimeId=6804 minecraft:azalea_leaves;persistent_bit=0;update_bit=0 blockId=579 -runtimeId=169 +runtimeId=7652 minecraft:azalea_leaves;persistent_bit=0;update_bit=1 blockId=579 -runtimeId=170 +runtimeId=7653 minecraft:azalea_leaves;persistent_bit=1;update_bit=0 blockId=579 -runtimeId=171 +runtimeId=7654 minecraft:azalea_leaves;persistent_bit=1;update_bit=1 blockId=579 -runtimeId=172 +runtimeId=7655 minecraft:azalea_leaves_flowered;persistent_bit=0;update_bit=0 blockId=580 -runtimeId=173 +runtimeId=6304 minecraft:azalea_leaves_flowered;persistent_bit=0;update_bit=1 blockId=580 -runtimeId=174 +runtimeId=6305 minecraft:azalea_leaves_flowered;persistent_bit=1;update_bit=0 blockId=580 -runtimeId=175 +runtimeId=6306 minecraft:azalea_leaves_flowered;persistent_bit=1;update_bit=1 blockId=580 -runtimeId=176 +runtimeId=6307 minecraft:bamboo;bamboo_leaf_size=large_leaves;age_bit=0;bamboo_stalk_thickness=thick blockId=418 -runtimeId=182 +runtimeId=3694 minecraft:bamboo;bamboo_leaf_size=large_leaves;age_bit=0;bamboo_stalk_thickness=thin blockId=418 -runtimeId=181 +runtimeId=3693 minecraft:bamboo;bamboo_leaf_size=large_leaves;age_bit=1;bamboo_stalk_thickness=thick blockId=418 -runtimeId=188 +runtimeId=3700 minecraft:bamboo;bamboo_leaf_size=large_leaves;age_bit=1;bamboo_stalk_thickness=thin blockId=418 -runtimeId=187 +runtimeId=3699 minecraft:bamboo;bamboo_leaf_size=no_leaves;age_bit=0;bamboo_stalk_thickness=thick blockId=418 -runtimeId=178 +runtimeId=3690 minecraft:bamboo;bamboo_leaf_size=no_leaves;age_bit=0;bamboo_stalk_thickness=thin blockId=418 -runtimeId=177 +runtimeId=3689 minecraft:bamboo;bamboo_leaf_size=no_leaves;age_bit=1;bamboo_stalk_thickness=thick blockId=418 -runtimeId=184 +runtimeId=3696 minecraft:bamboo;bamboo_leaf_size=no_leaves;age_bit=1;bamboo_stalk_thickness=thin blockId=418 -runtimeId=183 +runtimeId=3695 minecraft:bamboo;bamboo_leaf_size=small_leaves;age_bit=0;bamboo_stalk_thickness=thick blockId=418 -runtimeId=180 +runtimeId=3692 minecraft:bamboo;bamboo_leaf_size=small_leaves;age_bit=0;bamboo_stalk_thickness=thin blockId=418 -runtimeId=179 +runtimeId=3691 minecraft:bamboo;bamboo_leaf_size=small_leaves;age_bit=1;bamboo_stalk_thickness=thick blockId=418 -runtimeId=186 +runtimeId=3698 minecraft:bamboo;bamboo_leaf_size=small_leaves;age_bit=1;bamboo_stalk_thickness=thin blockId=418 -runtimeId=185 +runtimeId=3697 minecraft:bamboo_sapling;sapling_type=acacia;age_bit=0 blockId=419 -runtimeId=197 +runtimeId=7505 minecraft:bamboo_sapling;sapling_type=acacia;age_bit=1 blockId=419 -runtimeId=198 +runtimeId=7506 minecraft:bamboo_sapling;sapling_type=birch;age_bit=0 blockId=419 -runtimeId=193 +runtimeId=7501 minecraft:bamboo_sapling;sapling_type=birch;age_bit=1 blockId=419 -runtimeId=194 +runtimeId=7502 minecraft:bamboo_sapling;sapling_type=dark_oak;age_bit=0 blockId=419 -runtimeId=199 +runtimeId=7507 minecraft:bamboo_sapling;sapling_type=dark_oak;age_bit=1 blockId=419 -runtimeId=200 +runtimeId=7508 minecraft:bamboo_sapling;sapling_type=jungle;age_bit=0 blockId=419 -runtimeId=195 +runtimeId=7503 minecraft:bamboo_sapling;sapling_type=jungle;age_bit=1 blockId=419 -runtimeId=196 +runtimeId=7504 minecraft:bamboo_sapling;sapling_type=oak;age_bit=0 blockId=419 -runtimeId=189 +runtimeId=7497 minecraft:bamboo_sapling;sapling_type=oak;age_bit=1 blockId=419 -runtimeId=190 +runtimeId=7498 minecraft:bamboo_sapling;sapling_type=spruce;age_bit=0 blockId=419 -runtimeId=191 +runtimeId=7499 minecraft:bamboo_sapling;sapling_type=spruce;age_bit=1 blockId=419 -runtimeId=192 +runtimeId=7500 minecraft:barrel;facing_direction=0;open_bit=0 blockId=458 -runtimeId=201 +runtimeId=4450 minecraft:barrel;facing_direction=0;open_bit=1 blockId=458 -runtimeId=207 +runtimeId=4456 minecraft:barrel;facing_direction=1;open_bit=0 blockId=458 -runtimeId=202 +runtimeId=4451 minecraft:barrel;facing_direction=1;open_bit=1 blockId=458 -runtimeId=208 +runtimeId=4457 minecraft:barrel;facing_direction=2;open_bit=0 blockId=458 -runtimeId=203 +runtimeId=4452 minecraft:barrel;facing_direction=2;open_bit=1 blockId=458 -runtimeId=209 +runtimeId=4458 minecraft:barrel;facing_direction=3;open_bit=0 blockId=458 -runtimeId=204 +runtimeId=4453 minecraft:barrel;facing_direction=3;open_bit=1 blockId=458 -runtimeId=210 +runtimeId=4459 minecraft:barrel;facing_direction=4;open_bit=0 blockId=458 -runtimeId=205 +runtimeId=4454 minecraft:barrel;facing_direction=4;open_bit=1 blockId=458 -runtimeId=211 +runtimeId=4460 minecraft:barrel;facing_direction=5;open_bit=0 blockId=458 -runtimeId=206 +runtimeId=4455 minecraft:barrel;facing_direction=5;open_bit=1 blockId=458 -runtimeId=212 +runtimeId=4461 minecraft:barrier blockId=416 -runtimeId=213 +runtimeId=5960 minecraft:basalt;pillar_axis=x blockId=489 -runtimeId=215 +runtimeId=4298 minecraft:basalt;pillar_axis=y blockId=489 -runtimeId=214 +runtimeId=4297 minecraft:basalt;pillar_axis=z blockId=489 -runtimeId=216 +runtimeId=4299 minecraft:beacon blockId=138 -runtimeId=217 +runtimeId=145 minecraft:bed;head_piece_bit=0;occupied_bit=0;direction=0 blockId=26 -runtimeId=218 +runtimeId=6565 minecraft:bed;head_piece_bit=0;occupied_bit=0;direction=1 blockId=26 -runtimeId=219 +runtimeId=6566 minecraft:bed;head_piece_bit=0;occupied_bit=0;direction=2 blockId=26 -runtimeId=220 +runtimeId=6567 minecraft:bed;head_piece_bit=0;occupied_bit=0;direction=3 blockId=26 -runtimeId=221 +runtimeId=6568 minecraft:bed;head_piece_bit=0;occupied_bit=1;direction=0 blockId=26 -runtimeId=222 +runtimeId=6569 minecraft:bed;head_piece_bit=0;occupied_bit=1;direction=1 blockId=26 -runtimeId=223 +runtimeId=6570 minecraft:bed;head_piece_bit=0;occupied_bit=1;direction=2 blockId=26 -runtimeId=224 +runtimeId=6571 minecraft:bed;head_piece_bit=0;occupied_bit=1;direction=3 blockId=26 -runtimeId=225 +runtimeId=6572 minecraft:bed;head_piece_bit=1;occupied_bit=0;direction=0 blockId=26 -runtimeId=226 +runtimeId=6573 minecraft:bed;head_piece_bit=1;occupied_bit=0;direction=1 blockId=26 -runtimeId=227 +runtimeId=6574 minecraft:bed;head_piece_bit=1;occupied_bit=0;direction=2 blockId=26 -runtimeId=228 +runtimeId=6575 minecraft:bed;head_piece_bit=1;occupied_bit=0;direction=3 blockId=26 -runtimeId=229 +runtimeId=6576 minecraft:bed;head_piece_bit=1;occupied_bit=1;direction=0 blockId=26 -runtimeId=230 +runtimeId=6577 minecraft:bed;head_piece_bit=1;occupied_bit=1;direction=1 blockId=26 -runtimeId=231 +runtimeId=6578 minecraft:bed;head_piece_bit=1;occupied_bit=1;direction=2 blockId=26 -runtimeId=232 +runtimeId=6579 minecraft:bed;head_piece_bit=1;occupied_bit=1;direction=3 blockId=26 -runtimeId=233 +runtimeId=6580 minecraft:bedrock;infiniburn_bit=0 blockId=7 -runtimeId=234 +runtimeId=6971 minecraft:bedrock;infiniburn_bit=1 blockId=7 -runtimeId=235 +runtimeId=6972 minecraft:bee_nest;direction=0;honey_level=0 blockId=473 -runtimeId=236 +runtimeId=5704 minecraft:bee_nest;direction=0;honey_level=1 blockId=473 -runtimeId=240 +runtimeId=5708 minecraft:bee_nest;direction=0;honey_level=2 blockId=473 -runtimeId=244 +runtimeId=5712 minecraft:bee_nest;direction=0;honey_level=3 blockId=473 -runtimeId=248 +runtimeId=5716 minecraft:bee_nest;direction=0;honey_level=4 blockId=473 -runtimeId=252 +runtimeId=5720 minecraft:bee_nest;direction=0;honey_level=5 blockId=473 -runtimeId=256 +runtimeId=5724 minecraft:bee_nest;direction=1;honey_level=0 blockId=473 -runtimeId=237 +runtimeId=5705 minecraft:bee_nest;direction=1;honey_level=1 blockId=473 -runtimeId=241 +runtimeId=5709 minecraft:bee_nest;direction=1;honey_level=2 blockId=473 -runtimeId=245 +runtimeId=5713 minecraft:bee_nest;direction=1;honey_level=3 blockId=473 -runtimeId=249 +runtimeId=5717 minecraft:bee_nest;direction=1;honey_level=4 blockId=473 -runtimeId=253 +runtimeId=5721 minecraft:bee_nest;direction=1;honey_level=5 blockId=473 -runtimeId=257 +runtimeId=5725 minecraft:bee_nest;direction=2;honey_level=0 blockId=473 -runtimeId=238 +runtimeId=5706 minecraft:bee_nest;direction=2;honey_level=1 blockId=473 -runtimeId=242 +runtimeId=5710 minecraft:bee_nest;direction=2;honey_level=2 blockId=473 -runtimeId=246 +runtimeId=5714 minecraft:bee_nest;direction=2;honey_level=3 blockId=473 -runtimeId=250 +runtimeId=5718 minecraft:bee_nest;direction=2;honey_level=4 blockId=473 -runtimeId=254 +runtimeId=5722 minecraft:bee_nest;direction=2;honey_level=5 blockId=473 -runtimeId=258 +runtimeId=5726 minecraft:bee_nest;direction=3;honey_level=0 blockId=473 -runtimeId=239 +runtimeId=5707 minecraft:bee_nest;direction=3;honey_level=1 blockId=473 -runtimeId=243 +runtimeId=5711 minecraft:bee_nest;direction=3;honey_level=2 blockId=473 -runtimeId=247 +runtimeId=5715 minecraft:bee_nest;direction=3;honey_level=3 blockId=473 -runtimeId=251 +runtimeId=5719 minecraft:bee_nest;direction=3;honey_level=4 blockId=473 -runtimeId=255 +runtimeId=5723 minecraft:bee_nest;direction=3;honey_level=5 blockId=473 -runtimeId=259 +runtimeId=5727 minecraft:beehive;direction=0;honey_level=0 blockId=474 -runtimeId=260 +runtimeId=6032 minecraft:beehive;direction=0;honey_level=1 blockId=474 -runtimeId=264 +runtimeId=6036 minecraft:beehive;direction=0;honey_level=2 blockId=474 -runtimeId=268 +runtimeId=6040 minecraft:beehive;direction=0;honey_level=3 blockId=474 -runtimeId=272 +runtimeId=6044 minecraft:beehive;direction=0;honey_level=4 blockId=474 -runtimeId=276 +runtimeId=6048 minecraft:beehive;direction=0;honey_level=5 blockId=474 -runtimeId=280 +runtimeId=6052 minecraft:beehive;direction=1;honey_level=0 blockId=474 -runtimeId=261 +runtimeId=6033 minecraft:beehive;direction=1;honey_level=1 blockId=474 -runtimeId=265 +runtimeId=6037 minecraft:beehive;direction=1;honey_level=2 blockId=474 -runtimeId=269 +runtimeId=6041 minecraft:beehive;direction=1;honey_level=3 blockId=474 -runtimeId=273 +runtimeId=6045 minecraft:beehive;direction=1;honey_level=4 blockId=474 -runtimeId=277 +runtimeId=6049 minecraft:beehive;direction=1;honey_level=5 blockId=474 -runtimeId=281 +runtimeId=6053 minecraft:beehive;direction=2;honey_level=0 blockId=474 -runtimeId=262 +runtimeId=6034 minecraft:beehive;direction=2;honey_level=1 blockId=474 -runtimeId=266 +runtimeId=6038 minecraft:beehive;direction=2;honey_level=2 blockId=474 -runtimeId=270 +runtimeId=6042 minecraft:beehive;direction=2;honey_level=3 blockId=474 -runtimeId=274 +runtimeId=6046 minecraft:beehive;direction=2;honey_level=4 blockId=474 -runtimeId=278 +runtimeId=6050 minecraft:beehive;direction=2;honey_level=5 blockId=474 -runtimeId=282 +runtimeId=6054 minecraft:beehive;direction=3;honey_level=0 blockId=474 -runtimeId=263 +runtimeId=6035 minecraft:beehive;direction=3;honey_level=1 blockId=474 -runtimeId=267 +runtimeId=6039 minecraft:beehive;direction=3;honey_level=2 blockId=474 -runtimeId=271 +runtimeId=6043 minecraft:beehive;direction=3;honey_level=3 blockId=474 -runtimeId=275 +runtimeId=6047 minecraft:beehive;direction=3;honey_level=4 blockId=474 -runtimeId=279 +runtimeId=6051 minecraft:beehive;direction=3;honey_level=5 blockId=474 -runtimeId=283 +runtimeId=6055 minecraft:beetroot;growth=0 blockId=244 -runtimeId=284 +runtimeId=5234 minecraft:beetroot;growth=1 blockId=244 -runtimeId=285 +runtimeId=5235 minecraft:beetroot;growth=2 blockId=244 -runtimeId=286 +runtimeId=5236 minecraft:beetroot;growth=3 blockId=244 -runtimeId=287 +runtimeId=5237 minecraft:beetroot;growth=4 blockId=244 -runtimeId=288 +runtimeId=5238 minecraft:beetroot;growth=5 blockId=244 -runtimeId=289 +runtimeId=5239 minecraft:beetroot;growth=6 blockId=244 -runtimeId=290 +runtimeId=5240 minecraft:beetroot;growth=7 blockId=244 -runtimeId=291 +runtimeId=5241 minecraft:bell;attachment=hanging;toggle_bit=0;direction=0 blockId=461 -runtimeId=296 +runtimeId=6828 minecraft:bell;attachment=hanging;toggle_bit=0;direction=1 blockId=461 -runtimeId=297 +runtimeId=6829 minecraft:bell;attachment=hanging;toggle_bit=0;direction=2 blockId=461 -runtimeId=298 +runtimeId=6830 minecraft:bell;attachment=hanging;toggle_bit=0;direction=3 blockId=461 -runtimeId=299 +runtimeId=6831 minecraft:bell;attachment=hanging;toggle_bit=1;direction=0 blockId=461 -runtimeId=312 +runtimeId=6844 minecraft:bell;attachment=hanging;toggle_bit=1;direction=1 blockId=461 -runtimeId=313 +runtimeId=6845 minecraft:bell;attachment=hanging;toggle_bit=1;direction=2 blockId=461 -runtimeId=314 +runtimeId=6846 minecraft:bell;attachment=hanging;toggle_bit=1;direction=3 blockId=461 -runtimeId=315 +runtimeId=6847 minecraft:bell;attachment=multiple;toggle_bit=0;direction=0 blockId=461 -runtimeId=304 +runtimeId=6836 minecraft:bell;attachment=multiple;toggle_bit=0;direction=1 blockId=461 -runtimeId=305 +runtimeId=6837 minecraft:bell;attachment=multiple;toggle_bit=0;direction=2 blockId=461 -runtimeId=306 +runtimeId=6838 minecraft:bell;attachment=multiple;toggle_bit=0;direction=3 blockId=461 -runtimeId=307 +runtimeId=6839 minecraft:bell;attachment=multiple;toggle_bit=1;direction=0 blockId=461 -runtimeId=320 +runtimeId=6852 minecraft:bell;attachment=multiple;toggle_bit=1;direction=1 blockId=461 -runtimeId=321 +runtimeId=6853 minecraft:bell;attachment=multiple;toggle_bit=1;direction=2 blockId=461 -runtimeId=322 +runtimeId=6854 minecraft:bell;attachment=multiple;toggle_bit=1;direction=3 blockId=461 -runtimeId=323 +runtimeId=6855 minecraft:bell;attachment=side;toggle_bit=0;direction=0 blockId=461 -runtimeId=300 +runtimeId=6832 minecraft:bell;attachment=side;toggle_bit=0;direction=1 blockId=461 -runtimeId=301 +runtimeId=6833 minecraft:bell;attachment=side;toggle_bit=0;direction=2 blockId=461 -runtimeId=302 +runtimeId=6834 minecraft:bell;attachment=side;toggle_bit=0;direction=3 blockId=461 -runtimeId=303 +runtimeId=6835 minecraft:bell;attachment=side;toggle_bit=1;direction=0 blockId=461 -runtimeId=316 +runtimeId=6848 minecraft:bell;attachment=side;toggle_bit=1;direction=1 blockId=461 -runtimeId=317 +runtimeId=6849 minecraft:bell;attachment=side;toggle_bit=1;direction=2 blockId=461 -runtimeId=318 +runtimeId=6850 minecraft:bell;attachment=side;toggle_bit=1;direction=3 blockId=461 -runtimeId=319 +runtimeId=6851 minecraft:bell;attachment=standing;toggle_bit=0;direction=0 blockId=461 -runtimeId=292 +runtimeId=6824 minecraft:bell;attachment=standing;toggle_bit=0;direction=1 blockId=461 -runtimeId=293 +runtimeId=6825 minecraft:bell;attachment=standing;toggle_bit=0;direction=2 blockId=461 -runtimeId=294 +runtimeId=6826 minecraft:bell;attachment=standing;toggle_bit=0;direction=3 blockId=461 -runtimeId=295 +runtimeId=6827 minecraft:bell;attachment=standing;toggle_bit=1;direction=0 blockId=461 -runtimeId=308 +runtimeId=6840 minecraft:bell;attachment=standing;toggle_bit=1;direction=1 blockId=461 -runtimeId=309 +runtimeId=6841 minecraft:bell;attachment=standing;toggle_bit=1;direction=2 blockId=461 -runtimeId=310 +runtimeId=6842 minecraft:bell;attachment=standing;toggle_bit=1;direction=3 blockId=461 -runtimeId=311 +runtimeId=6843 minecraft:big_dripleaf;big_dripleaf_tilt=full_tilt;big_dripleaf_head=0;direction=0 blockId=578 -runtimeId=327 +runtimeId=5903 minecraft:big_dripleaf;big_dripleaf_tilt=full_tilt;big_dripleaf_head=0;direction=1 blockId=578 -runtimeId=335 +runtimeId=5911 minecraft:big_dripleaf;big_dripleaf_tilt=full_tilt;big_dripleaf_head=0;direction=2 blockId=578 -runtimeId=343 +runtimeId=5919 minecraft:big_dripleaf;big_dripleaf_tilt=full_tilt;big_dripleaf_head=0;direction=3 blockId=578 -runtimeId=351 +runtimeId=5927 minecraft:big_dripleaf;big_dripleaf_tilt=full_tilt;big_dripleaf_head=1;direction=0 blockId=578 -runtimeId=331 +runtimeId=5907 minecraft:big_dripleaf;big_dripleaf_tilt=full_tilt;big_dripleaf_head=1;direction=1 blockId=578 -runtimeId=339 +runtimeId=5915 minecraft:big_dripleaf;big_dripleaf_tilt=full_tilt;big_dripleaf_head=1;direction=2 blockId=578 -runtimeId=347 +runtimeId=5923 minecraft:big_dripleaf;big_dripleaf_tilt=full_tilt;big_dripleaf_head=1;direction=3 blockId=578 -runtimeId=355 +runtimeId=5931 minecraft:big_dripleaf;big_dripleaf_tilt=none;big_dripleaf_head=0;direction=0 blockId=578 -runtimeId=324 +runtimeId=5900 minecraft:big_dripleaf;big_dripleaf_tilt=none;big_dripleaf_head=0;direction=1 blockId=578 -runtimeId=332 +runtimeId=5908 minecraft:big_dripleaf;big_dripleaf_tilt=none;big_dripleaf_head=0;direction=2 blockId=578 -runtimeId=340 +runtimeId=5916 minecraft:big_dripleaf;big_dripleaf_tilt=none;big_dripleaf_head=0;direction=3 blockId=578 -runtimeId=348 +runtimeId=5924 minecraft:big_dripleaf;big_dripleaf_tilt=none;big_dripleaf_head=1;direction=0 blockId=578 -runtimeId=328 +runtimeId=5904 minecraft:big_dripleaf;big_dripleaf_tilt=none;big_dripleaf_head=1;direction=1 blockId=578 -runtimeId=336 +runtimeId=5912 minecraft:big_dripleaf;big_dripleaf_tilt=none;big_dripleaf_head=1;direction=2 blockId=578 -runtimeId=344 +runtimeId=5920 minecraft:big_dripleaf;big_dripleaf_tilt=none;big_dripleaf_head=1;direction=3 blockId=578 -runtimeId=352 +runtimeId=5928 minecraft:big_dripleaf;big_dripleaf_tilt=partial_tilt;big_dripleaf_head=0;direction=0 blockId=578 -runtimeId=326 +runtimeId=5902 minecraft:big_dripleaf;big_dripleaf_tilt=partial_tilt;big_dripleaf_head=0;direction=1 blockId=578 -runtimeId=334 +runtimeId=5910 minecraft:big_dripleaf;big_dripleaf_tilt=partial_tilt;big_dripleaf_head=0;direction=2 blockId=578 -runtimeId=342 +runtimeId=5918 minecraft:big_dripleaf;big_dripleaf_tilt=partial_tilt;big_dripleaf_head=0;direction=3 blockId=578 -runtimeId=350 +runtimeId=5926 minecraft:big_dripleaf;big_dripleaf_tilt=partial_tilt;big_dripleaf_head=1;direction=0 blockId=578 -runtimeId=330 +runtimeId=5906 minecraft:big_dripleaf;big_dripleaf_tilt=partial_tilt;big_dripleaf_head=1;direction=1 blockId=578 -runtimeId=338 +runtimeId=5914 minecraft:big_dripleaf;big_dripleaf_tilt=partial_tilt;big_dripleaf_head=1;direction=2 blockId=578 -runtimeId=346 +runtimeId=5922 minecraft:big_dripleaf;big_dripleaf_tilt=partial_tilt;big_dripleaf_head=1;direction=3 blockId=578 -runtimeId=354 +runtimeId=5930 minecraft:big_dripleaf;big_dripleaf_tilt=unstable;big_dripleaf_head=0;direction=0 blockId=578 -runtimeId=325 +runtimeId=5901 minecraft:big_dripleaf;big_dripleaf_tilt=unstable;big_dripleaf_head=0;direction=1 blockId=578 -runtimeId=333 +runtimeId=5909 minecraft:big_dripleaf;big_dripleaf_tilt=unstable;big_dripleaf_head=0;direction=2 blockId=578 -runtimeId=341 +runtimeId=5917 minecraft:big_dripleaf;big_dripleaf_tilt=unstable;big_dripleaf_head=0;direction=3 blockId=578 -runtimeId=349 +runtimeId=5925 minecraft:big_dripleaf;big_dripleaf_tilt=unstable;big_dripleaf_head=1;direction=0 blockId=578 -runtimeId=329 +runtimeId=5905 minecraft:big_dripleaf;big_dripleaf_tilt=unstable;big_dripleaf_head=1;direction=1 blockId=578 -runtimeId=337 +runtimeId=5913 minecraft:big_dripleaf;big_dripleaf_tilt=unstable;big_dripleaf_head=1;direction=2 blockId=578 -runtimeId=345 +runtimeId=5921 minecraft:big_dripleaf;big_dripleaf_tilt=unstable;big_dripleaf_head=1;direction=3 blockId=578 -runtimeId=353 +runtimeId=5929 minecraft:birch_button;button_pressed_bit=0;facing_direction=0 blockId=396 -runtimeId=356 +runtimeId=7708 minecraft:birch_button;button_pressed_bit=0;facing_direction=1 blockId=396 -runtimeId=357 +runtimeId=7709 minecraft:birch_button;button_pressed_bit=0;facing_direction=2 blockId=396 -runtimeId=358 +runtimeId=7710 minecraft:birch_button;button_pressed_bit=0;facing_direction=3 blockId=396 -runtimeId=359 +runtimeId=7711 minecraft:birch_button;button_pressed_bit=0;facing_direction=4 blockId=396 -runtimeId=360 +runtimeId=7712 minecraft:birch_button;button_pressed_bit=0;facing_direction=5 blockId=396 -runtimeId=361 +runtimeId=7713 minecraft:birch_button;button_pressed_bit=1;facing_direction=0 blockId=396 -runtimeId=362 +runtimeId=7714 minecraft:birch_button;button_pressed_bit=1;facing_direction=1 blockId=396 -runtimeId=363 +runtimeId=7715 minecraft:birch_button;button_pressed_bit=1;facing_direction=2 blockId=396 -runtimeId=364 +runtimeId=7716 minecraft:birch_button;button_pressed_bit=1;facing_direction=3 blockId=396 -runtimeId=365 +runtimeId=7717 minecraft:birch_button;button_pressed_bit=1;facing_direction=4 blockId=396 -runtimeId=366 +runtimeId=7718 minecraft:birch_button;button_pressed_bit=1;facing_direction=5 blockId=396 -runtimeId=367 +runtimeId=7719 minecraft:birch_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=0 blockId=194 -runtimeId=368 +runtimeId=7025 minecraft:birch_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=1 blockId=194 -runtimeId=369 +runtimeId=7026 minecraft:birch_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=2 blockId=194 -runtimeId=370 +runtimeId=7027 minecraft:birch_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=3 blockId=194 -runtimeId=371 +runtimeId=7028 minecraft:birch_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=0 blockId=194 -runtimeId=384 +runtimeId=7041 minecraft:birch_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=1 blockId=194 -runtimeId=385 +runtimeId=7042 minecraft:birch_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=2 blockId=194 -runtimeId=386 +runtimeId=7043 minecraft:birch_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=3 blockId=194 -runtimeId=387 +runtimeId=7044 minecraft:birch_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=0 blockId=194 -runtimeId=376 +runtimeId=7033 minecraft:birch_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=1 blockId=194 -runtimeId=377 +runtimeId=7034 minecraft:birch_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=2 blockId=194 -runtimeId=378 +runtimeId=7035 minecraft:birch_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=3 blockId=194 -runtimeId=379 +runtimeId=7036 minecraft:birch_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=0 blockId=194 -runtimeId=392 +runtimeId=7049 minecraft:birch_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=1 blockId=194 -runtimeId=393 +runtimeId=7050 minecraft:birch_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=2 blockId=194 -runtimeId=394 +runtimeId=7051 minecraft:birch_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=3 blockId=194 -runtimeId=395 +runtimeId=7052 minecraft:birch_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=0 blockId=194 -runtimeId=372 +runtimeId=7029 minecraft:birch_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=1 blockId=194 -runtimeId=373 +runtimeId=7030 minecraft:birch_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=2 blockId=194 -runtimeId=374 +runtimeId=7031 minecraft:birch_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=3 blockId=194 -runtimeId=375 +runtimeId=7032 minecraft:birch_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=0 blockId=194 -runtimeId=388 +runtimeId=7045 minecraft:birch_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=1 blockId=194 -runtimeId=389 +runtimeId=7046 minecraft:birch_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=2 blockId=194 -runtimeId=390 +runtimeId=7047 minecraft:birch_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=3 blockId=194 -runtimeId=391 +runtimeId=7048 minecraft:birch_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=0 blockId=194 -runtimeId=380 +runtimeId=7037 minecraft:birch_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=1 blockId=194 -runtimeId=381 +runtimeId=7038 minecraft:birch_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=2 blockId=194 -runtimeId=382 +runtimeId=7039 minecraft:birch_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=3 blockId=194 -runtimeId=383 +runtimeId=7040 minecraft:birch_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=0 blockId=194 -runtimeId=396 +runtimeId=7053 minecraft:birch_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=1 blockId=194 -runtimeId=397 +runtimeId=7054 minecraft:birch_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=2 blockId=194 -runtimeId=398 +runtimeId=7055 minecraft:birch_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=3 blockId=194 -runtimeId=399 +runtimeId=7056 minecraft:birch_fence_gate;in_wall_bit=0;open_bit=0;direction=0 blockId=184 -runtimeId=400 +runtimeId=3782 minecraft:birch_fence_gate;in_wall_bit=0;open_bit=0;direction=1 blockId=184 -runtimeId=401 +runtimeId=3783 minecraft:birch_fence_gate;in_wall_bit=0;open_bit=0;direction=2 blockId=184 -runtimeId=402 +runtimeId=3784 minecraft:birch_fence_gate;in_wall_bit=0;open_bit=0;direction=3 blockId=184 -runtimeId=403 +runtimeId=3785 minecraft:birch_fence_gate;in_wall_bit=0;open_bit=1;direction=0 blockId=184 -runtimeId=404 +runtimeId=3786 minecraft:birch_fence_gate;in_wall_bit=0;open_bit=1;direction=1 blockId=184 -runtimeId=405 +runtimeId=3787 minecraft:birch_fence_gate;in_wall_bit=0;open_bit=1;direction=2 blockId=184 -runtimeId=406 +runtimeId=3788 minecraft:birch_fence_gate;in_wall_bit=0;open_bit=1;direction=3 blockId=184 -runtimeId=407 +runtimeId=3789 minecraft:birch_fence_gate;in_wall_bit=1;open_bit=0;direction=0 blockId=184 -runtimeId=408 +runtimeId=3790 minecraft:birch_fence_gate;in_wall_bit=1;open_bit=0;direction=1 blockId=184 -runtimeId=409 +runtimeId=3791 minecraft:birch_fence_gate;in_wall_bit=1;open_bit=0;direction=2 blockId=184 -runtimeId=410 +runtimeId=3792 minecraft:birch_fence_gate;in_wall_bit=1;open_bit=0;direction=3 blockId=184 -runtimeId=411 +runtimeId=3793 minecraft:birch_fence_gate;in_wall_bit=1;open_bit=1;direction=0 blockId=184 -runtimeId=412 +runtimeId=3794 minecraft:birch_fence_gate;in_wall_bit=1;open_bit=1;direction=1 blockId=184 -runtimeId=413 +runtimeId=3795 minecraft:birch_fence_gate;in_wall_bit=1;open_bit=1;direction=2 blockId=184 -runtimeId=414 +runtimeId=3796 minecraft:birch_fence_gate;in_wall_bit=1;open_bit=1;direction=3 blockId=184 -runtimeId=415 +runtimeId=3797 minecraft:birch_pressure_plate;redstone_signal=0 blockId=406 -runtimeId=416 +runtimeId=3560 minecraft:birch_pressure_plate;redstone_signal=1 blockId=406 -runtimeId=417 +runtimeId=3561 minecraft:birch_pressure_plate;redstone_signal=2 blockId=406 -runtimeId=418 +runtimeId=3562 minecraft:birch_pressure_plate;redstone_signal=3 blockId=406 -runtimeId=419 +runtimeId=3563 minecraft:birch_pressure_plate;redstone_signal=4 blockId=406 -runtimeId=420 +runtimeId=3564 minecraft:birch_pressure_plate;redstone_signal=5 blockId=406 -runtimeId=421 +runtimeId=3565 minecraft:birch_pressure_plate;redstone_signal=6 blockId=406 -runtimeId=422 +runtimeId=3566 minecraft:birch_pressure_plate;redstone_signal=7 blockId=406 -runtimeId=423 +runtimeId=3567 minecraft:birch_pressure_plate;redstone_signal=8 blockId=406 -runtimeId=424 +runtimeId=3568 minecraft:birch_pressure_plate;redstone_signal=9 blockId=406 -runtimeId=425 +runtimeId=3569 minecraft:birch_pressure_plate;redstone_signal=10 blockId=406 -runtimeId=426 +runtimeId=3570 minecraft:birch_pressure_plate;redstone_signal=11 blockId=406 -runtimeId=427 +runtimeId=3571 minecraft:birch_pressure_plate;redstone_signal=12 blockId=406 -runtimeId=428 +runtimeId=3572 minecraft:birch_pressure_plate;redstone_signal=13 blockId=406 -runtimeId=429 +runtimeId=3573 minecraft:birch_pressure_plate;redstone_signal=14 blockId=406 -runtimeId=430 +runtimeId=3574 minecraft:birch_pressure_plate;redstone_signal=15 blockId=406 -runtimeId=431 +runtimeId=3575 minecraft:birch_stairs;upside_down_bit=0;weirdo_direction=0 blockId=135 -runtimeId=432 +runtimeId=6957 minecraft:birch_stairs;upside_down_bit=0;weirdo_direction=1 blockId=135 -runtimeId=433 +runtimeId=6958 minecraft:birch_stairs;upside_down_bit=0;weirdo_direction=2 blockId=135 -runtimeId=434 +runtimeId=6959 minecraft:birch_stairs;upside_down_bit=0;weirdo_direction=3 blockId=135 -runtimeId=435 +runtimeId=6960 minecraft:birch_stairs;upside_down_bit=1;weirdo_direction=0 blockId=135 -runtimeId=436 +runtimeId=6961 minecraft:birch_stairs;upside_down_bit=1;weirdo_direction=1 blockId=135 -runtimeId=437 +runtimeId=6962 minecraft:birch_stairs;upside_down_bit=1;weirdo_direction=2 blockId=135 -runtimeId=438 +runtimeId=6963 minecraft:birch_stairs;upside_down_bit=1;weirdo_direction=3 blockId=135 -runtimeId=439 +runtimeId=6964 minecraft:birch_standing_sign;ground_sign_direction=0 blockId=441 -runtimeId=440 +runtimeId=8 minecraft:birch_standing_sign;ground_sign_direction=1 blockId=441 -runtimeId=441 +runtimeId=9 minecraft:birch_standing_sign;ground_sign_direction=2 blockId=441 -runtimeId=442 +runtimeId=10 minecraft:birch_standing_sign;ground_sign_direction=3 blockId=441 -runtimeId=443 +runtimeId=11 minecraft:birch_standing_sign;ground_sign_direction=4 blockId=441 -runtimeId=444 +runtimeId=12 minecraft:birch_standing_sign;ground_sign_direction=5 blockId=441 -runtimeId=445 +runtimeId=13 minecraft:birch_standing_sign;ground_sign_direction=6 blockId=441 -runtimeId=446 +runtimeId=14 minecraft:birch_standing_sign;ground_sign_direction=7 blockId=441 -runtimeId=447 +runtimeId=15 minecraft:birch_standing_sign;ground_sign_direction=8 blockId=441 -runtimeId=448 +runtimeId=16 minecraft:birch_standing_sign;ground_sign_direction=9 blockId=441 -runtimeId=449 +runtimeId=17 minecraft:birch_standing_sign;ground_sign_direction=10 blockId=441 -runtimeId=450 +runtimeId=18 minecraft:birch_standing_sign;ground_sign_direction=11 blockId=441 -runtimeId=451 +runtimeId=19 minecraft:birch_standing_sign;ground_sign_direction=12 blockId=441 -runtimeId=452 +runtimeId=20 minecraft:birch_standing_sign;ground_sign_direction=13 blockId=441 -runtimeId=453 +runtimeId=21 minecraft:birch_standing_sign;ground_sign_direction=14 blockId=441 -runtimeId=454 +runtimeId=22 minecraft:birch_standing_sign;ground_sign_direction=15 blockId=441 -runtimeId=455 +runtimeId=23 minecraft:birch_trapdoor;open_bit=0;upside_down_bit=0;direction=0 blockId=401 -runtimeId=456 +runtimeId=6524 minecraft:birch_trapdoor;open_bit=0;upside_down_bit=0;direction=1 blockId=401 -runtimeId=457 +runtimeId=6525 minecraft:birch_trapdoor;open_bit=0;upside_down_bit=0;direction=2 blockId=401 -runtimeId=458 +runtimeId=6526 minecraft:birch_trapdoor;open_bit=0;upside_down_bit=0;direction=3 blockId=401 -runtimeId=459 +runtimeId=6527 minecraft:birch_trapdoor;open_bit=0;upside_down_bit=1;direction=0 blockId=401 -runtimeId=460 +runtimeId=6528 minecraft:birch_trapdoor;open_bit=0;upside_down_bit=1;direction=1 blockId=401 -runtimeId=461 +runtimeId=6529 minecraft:birch_trapdoor;open_bit=0;upside_down_bit=1;direction=2 blockId=401 -runtimeId=462 +runtimeId=6530 minecraft:birch_trapdoor;open_bit=0;upside_down_bit=1;direction=3 blockId=401 -runtimeId=463 +runtimeId=6531 minecraft:birch_trapdoor;open_bit=1;upside_down_bit=0;direction=0 blockId=401 -runtimeId=464 +runtimeId=6532 minecraft:birch_trapdoor;open_bit=1;upside_down_bit=0;direction=1 blockId=401 -runtimeId=465 +runtimeId=6533 minecraft:birch_trapdoor;open_bit=1;upside_down_bit=0;direction=2 blockId=401 -runtimeId=466 +runtimeId=6534 minecraft:birch_trapdoor;open_bit=1;upside_down_bit=0;direction=3 blockId=401 -runtimeId=467 +runtimeId=6535 minecraft:birch_trapdoor;open_bit=1;upside_down_bit=1;direction=0 blockId=401 -runtimeId=468 +runtimeId=6536 minecraft:birch_trapdoor;open_bit=1;upside_down_bit=1;direction=1 blockId=401 -runtimeId=469 +runtimeId=6537 minecraft:birch_trapdoor;open_bit=1;upside_down_bit=1;direction=2 blockId=401 -runtimeId=470 +runtimeId=6538 minecraft:birch_trapdoor;open_bit=1;upside_down_bit=1;direction=3 blockId=401 -runtimeId=471 +runtimeId=6539 minecraft:birch_wall_sign;facing_direction=0 blockId=442 -runtimeId=472 +runtimeId=6806 minecraft:birch_wall_sign;facing_direction=1 blockId=442 -runtimeId=473 +runtimeId=6807 minecraft:birch_wall_sign;facing_direction=2 blockId=442 -runtimeId=474 +runtimeId=6808 minecraft:birch_wall_sign;facing_direction=3 blockId=442 -runtimeId=475 +runtimeId=6809 minecraft:birch_wall_sign;facing_direction=4 blockId=442 -runtimeId=476 +runtimeId=6810 minecraft:birch_wall_sign;facing_direction=5 blockId=442 -runtimeId=477 +runtimeId=6811 + +minecraft:black_candle;lit=0;candles=0 +blockId=683 +runtimeId=171 + +minecraft:black_candle;lit=0;candles=1 +blockId=683 +runtimeId=172 + +minecraft:black_candle;lit=0;candles=2 +blockId=683 +runtimeId=173 + +minecraft:black_candle;lit=0;candles=3 +blockId=683 +runtimeId=174 + +minecraft:black_candle;lit=1;candles=0 +blockId=683 +runtimeId=175 + +minecraft:black_candle;lit=1;candles=1 +blockId=683 +runtimeId=176 + +minecraft:black_candle;lit=1;candles=2 +blockId=683 +runtimeId=177 + +minecraft:black_candle;lit=1;candles=3 +blockId=683 +runtimeId=178 + +minecraft:black_candle_cake;lit=0 +blockId=700 +runtimeId=4515 + +minecraft:black_candle_cake;lit=1 +blockId=700 +runtimeId=4516 minecraft:black_glazed_terracotta;facing_direction=0 blockId=235 -runtimeId=478 +runtimeId=5758 minecraft:black_glazed_terracotta;facing_direction=1 blockId=235 -runtimeId=479 +runtimeId=5759 minecraft:black_glazed_terracotta;facing_direction=2 blockId=235 -runtimeId=480 +runtimeId=5760 minecraft:black_glazed_terracotta;facing_direction=3 blockId=235 -runtimeId=481 +runtimeId=5761 minecraft:black_glazed_terracotta;facing_direction=4 blockId=235 -runtimeId=482 +runtimeId=5762 minecraft:black_glazed_terracotta;facing_direction=5 blockId=235 -runtimeId=483 +runtimeId=5763 minecraft:blackstone blockId=528 -runtimeId=484 +runtimeId=7527 minecraft:blackstone_double_slab;top_slot_bit=0 blockId=538 -runtimeId=485 +runtimeId=114 minecraft:blackstone_double_slab;top_slot_bit=1 blockId=538 -runtimeId=486 +runtimeId=115 minecraft:blackstone_slab;top_slot_bit=0 blockId=537 -runtimeId=487 +runtimeId=918 minecraft:blackstone_slab;top_slot_bit=1 blockId=537 -runtimeId=488 +runtimeId=919 minecraft:blackstone_stairs;upside_down_bit=0;weirdo_direction=0 blockId=531 -runtimeId=489 +runtimeId=6973 minecraft:blackstone_stairs;upside_down_bit=0;weirdo_direction=1 blockId=531 -runtimeId=490 +runtimeId=6974 minecraft:blackstone_stairs;upside_down_bit=0;weirdo_direction=2 blockId=531 -runtimeId=491 +runtimeId=6975 minecraft:blackstone_stairs;upside_down_bit=0;weirdo_direction=3 blockId=531 -runtimeId=492 +runtimeId=6976 minecraft:blackstone_stairs;upside_down_bit=1;weirdo_direction=0 blockId=531 -runtimeId=493 +runtimeId=6977 minecraft:blackstone_stairs;upside_down_bit=1;weirdo_direction=1 blockId=531 -runtimeId=494 +runtimeId=6978 minecraft:blackstone_stairs;upside_down_bit=1;weirdo_direction=2 blockId=531 -runtimeId=495 +runtimeId=6979 minecraft:blackstone_stairs;upside_down_bit=1;weirdo_direction=3 blockId=531 -runtimeId=496 +runtimeId=6980 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=532 -runtimeId=497 +runtimeId=3919 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=532 -runtimeId=499 +runtimeId=3921 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=532 -runtimeId=501 +runtimeId=3923 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=532 -runtimeId=551 +runtimeId=3973 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=532 -runtimeId=553 +runtimeId=3975 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=532 -runtimeId=555 +runtimeId=3977 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=532 -runtimeId=605 +runtimeId=4027 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=532 -runtimeId=607 +runtimeId=4029 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=532 -runtimeId=609 +runtimeId=4031 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=532 -runtimeId=515 +runtimeId=3937 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=532 -runtimeId=517 +runtimeId=3939 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=532 -runtimeId=519 +runtimeId=3941 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=532 -runtimeId=569 +runtimeId=3991 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=532 -runtimeId=571 +runtimeId=3993 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=532 -runtimeId=573 +runtimeId=3995 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=532 -runtimeId=623 +runtimeId=4045 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=532 -runtimeId=625 +runtimeId=4047 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=532 -runtimeId=627 +runtimeId=4049 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=532 -runtimeId=533 +runtimeId=3955 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=532 -runtimeId=535 +runtimeId=3957 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=532 -runtimeId=537 +runtimeId=3959 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=532 -runtimeId=587 +runtimeId=4009 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=532 -runtimeId=589 +runtimeId=4011 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=532 -runtimeId=591 +runtimeId=4013 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=532 -runtimeId=641 +runtimeId=4063 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=532 -runtimeId=643 +runtimeId=4065 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=532 -runtimeId=645 +runtimeId=4067 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=532 -runtimeId=498 +runtimeId=3920 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=532 -runtimeId=500 +runtimeId=3922 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=532 -runtimeId=502 +runtimeId=3924 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=532 -runtimeId=552 +runtimeId=3974 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=532 -runtimeId=554 +runtimeId=3976 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=532 -runtimeId=556 +runtimeId=3978 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=532 -runtimeId=606 +runtimeId=4028 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=532 -runtimeId=608 +runtimeId=4030 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=532 -runtimeId=610 +runtimeId=4032 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=532 -runtimeId=516 +runtimeId=3938 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=532 -runtimeId=518 +runtimeId=3940 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=532 -runtimeId=520 +runtimeId=3942 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=532 -runtimeId=570 +runtimeId=3992 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=532 -runtimeId=572 +runtimeId=3994 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=532 -runtimeId=574 +runtimeId=3996 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=532 -runtimeId=624 +runtimeId=4046 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=532 -runtimeId=626 +runtimeId=4048 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=532 -runtimeId=628 +runtimeId=4050 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=532 -runtimeId=534 +runtimeId=3956 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=532 -runtimeId=536 +runtimeId=3958 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=532 -runtimeId=538 +runtimeId=3960 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=532 -runtimeId=588 +runtimeId=4010 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=532 -runtimeId=590 +runtimeId=4012 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=532 -runtimeId=592 +runtimeId=4014 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=532 -runtimeId=642 +runtimeId=4064 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=532 -runtimeId=644 +runtimeId=4066 minecraft:blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=532 -runtimeId=646 +runtimeId=4068 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=532 -runtimeId=503 +runtimeId=3925 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=532 -runtimeId=505 +runtimeId=3927 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=532 -runtimeId=507 +runtimeId=3929 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=532 -runtimeId=557 +runtimeId=3979 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=532 -runtimeId=559 +runtimeId=3981 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=532 -runtimeId=561 +runtimeId=3983 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=532 -runtimeId=611 +runtimeId=4033 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=532 -runtimeId=613 +runtimeId=4035 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=532 -runtimeId=615 +runtimeId=4037 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=532 -runtimeId=521 +runtimeId=3943 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=532 -runtimeId=523 +runtimeId=3945 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=532 -runtimeId=525 +runtimeId=3947 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=532 -runtimeId=575 +runtimeId=3997 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=532 -runtimeId=577 +runtimeId=3999 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=532 -runtimeId=579 +runtimeId=4001 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=532 -runtimeId=629 +runtimeId=4051 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=532 -runtimeId=631 +runtimeId=4053 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=532 -runtimeId=633 +runtimeId=4055 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=532 -runtimeId=539 +runtimeId=3961 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=532 -runtimeId=541 +runtimeId=3963 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=532 -runtimeId=543 +runtimeId=3965 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=532 -runtimeId=593 +runtimeId=4015 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=532 -runtimeId=595 +runtimeId=4017 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=532 -runtimeId=597 +runtimeId=4019 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=532 -runtimeId=647 +runtimeId=4069 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=532 -runtimeId=649 +runtimeId=4071 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=532 -runtimeId=651 +runtimeId=4073 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=532 -runtimeId=504 +runtimeId=3926 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=532 -runtimeId=506 +runtimeId=3928 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=532 -runtimeId=508 +runtimeId=3930 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=532 -runtimeId=558 +runtimeId=3980 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=532 -runtimeId=560 +runtimeId=3982 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=532 -runtimeId=562 +runtimeId=3984 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=532 -runtimeId=612 +runtimeId=4034 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=532 -runtimeId=614 +runtimeId=4036 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=532 -runtimeId=616 +runtimeId=4038 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=532 -runtimeId=522 +runtimeId=3944 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=532 -runtimeId=524 +runtimeId=3946 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=532 -runtimeId=526 +runtimeId=3948 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=532 -runtimeId=576 +runtimeId=3998 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=532 -runtimeId=578 +runtimeId=4000 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=532 -runtimeId=580 +runtimeId=4002 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=532 -runtimeId=630 +runtimeId=4052 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=532 -runtimeId=632 +runtimeId=4054 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=532 -runtimeId=634 +runtimeId=4056 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=532 -runtimeId=540 +runtimeId=3962 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=532 -runtimeId=542 +runtimeId=3964 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=532 -runtimeId=544 +runtimeId=3966 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=532 -runtimeId=594 +runtimeId=4016 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=532 -runtimeId=596 +runtimeId=4018 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=532 -runtimeId=598 +runtimeId=4020 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=532 -runtimeId=648 +runtimeId=4070 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=532 -runtimeId=650 +runtimeId=4072 minecraft:blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=532 -runtimeId=652 +runtimeId=4074 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=532 -runtimeId=509 +runtimeId=3931 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=532 -runtimeId=511 +runtimeId=3933 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=532 -runtimeId=513 +runtimeId=3935 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=532 -runtimeId=563 +runtimeId=3985 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=532 -runtimeId=565 +runtimeId=3987 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=532 -runtimeId=567 +runtimeId=3989 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=532 -runtimeId=617 +runtimeId=4039 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=532 -runtimeId=619 +runtimeId=4041 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=532 -runtimeId=621 +runtimeId=4043 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=532 -runtimeId=527 +runtimeId=3949 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=532 -runtimeId=529 +runtimeId=3951 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=532 -runtimeId=531 +runtimeId=3953 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=532 -runtimeId=581 +runtimeId=4003 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=532 -runtimeId=583 +runtimeId=4005 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=532 -runtimeId=585 +runtimeId=4007 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=532 -runtimeId=635 +runtimeId=4057 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=532 -runtimeId=637 +runtimeId=4059 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=532 -runtimeId=639 +runtimeId=4061 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=532 -runtimeId=545 +runtimeId=3967 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=532 -runtimeId=547 +runtimeId=3969 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=532 -runtimeId=549 +runtimeId=3971 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=532 -runtimeId=599 +runtimeId=4021 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=532 -runtimeId=601 +runtimeId=4023 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=532 -runtimeId=603 +runtimeId=4025 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=532 -runtimeId=653 +runtimeId=4075 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=532 -runtimeId=655 +runtimeId=4077 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=532 -runtimeId=657 +runtimeId=4079 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=532 -runtimeId=510 +runtimeId=3932 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=532 -runtimeId=512 +runtimeId=3934 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=532 -runtimeId=514 +runtimeId=3936 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=532 -runtimeId=564 +runtimeId=3986 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=532 -runtimeId=566 +runtimeId=3988 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=532 -runtimeId=568 +runtimeId=3990 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=532 -runtimeId=618 +runtimeId=4040 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=532 -runtimeId=620 +runtimeId=4042 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=532 -runtimeId=622 +runtimeId=4044 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=532 -runtimeId=528 +runtimeId=3950 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=532 -runtimeId=530 +runtimeId=3952 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=532 -runtimeId=532 +runtimeId=3954 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=532 -runtimeId=582 +runtimeId=4004 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=532 -runtimeId=584 +runtimeId=4006 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=532 -runtimeId=586 +runtimeId=4008 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=532 -runtimeId=636 +runtimeId=4058 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=532 -runtimeId=638 +runtimeId=4060 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=532 -runtimeId=640 +runtimeId=4062 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=532 -runtimeId=546 +runtimeId=3968 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=532 -runtimeId=548 +runtimeId=3970 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=532 -runtimeId=550 +runtimeId=3972 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=532 -runtimeId=600 +runtimeId=4022 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=532 -runtimeId=602 +runtimeId=4024 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=532 -runtimeId=604 +runtimeId=4026 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=532 -runtimeId=654 +runtimeId=4076 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=532 -runtimeId=656 +runtimeId=4078 minecraft:blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=532 -runtimeId=658 +runtimeId=4080 minecraft:blast_furnace;facing_direction=0 blockId=451 -runtimeId=659 +runtimeId=7509 minecraft:blast_furnace;facing_direction=1 blockId=451 -runtimeId=660 +runtimeId=7510 minecraft:blast_furnace;facing_direction=2 blockId=451 -runtimeId=661 +runtimeId=7511 minecraft:blast_furnace;facing_direction=3 blockId=451 -runtimeId=662 +runtimeId=7512 minecraft:blast_furnace;facing_direction=4 blockId=451 -runtimeId=663 +runtimeId=7513 minecraft:blast_furnace;facing_direction=5 blockId=451 -runtimeId=664 +runtimeId=7514 + +minecraft:blue_candle;lit=0;candles=0 +blockId=679 +runtimeId=0 + +minecraft:blue_candle;lit=0;candles=1 +blockId=679 +runtimeId=1 + +minecraft:blue_candle;lit=0;candles=2 +blockId=679 +runtimeId=2 + +minecraft:blue_candle;lit=0;candles=3 +blockId=679 +runtimeId=3 + +minecraft:blue_candle;lit=1;candles=0 +blockId=679 +runtimeId=4 + +minecraft:blue_candle;lit=1;candles=1 +blockId=679 +runtimeId=5 + +minecraft:blue_candle;lit=1;candles=2 +blockId=679 +runtimeId=6 + +minecraft:blue_candle;lit=1;candles=3 +blockId=679 +runtimeId=7 + +minecraft:blue_candle_cake;lit=0 +blockId=696 +runtimeId=5932 + +minecraft:blue_candle_cake;lit=1 +blockId=696 +runtimeId=5933 minecraft:blue_glazed_terracotta;facing_direction=0 blockId=231 -runtimeId=665 +runtimeId=5415 minecraft:blue_glazed_terracotta;facing_direction=1 blockId=231 -runtimeId=666 +runtimeId=5416 minecraft:blue_glazed_terracotta;facing_direction=2 blockId=231 -runtimeId=667 +runtimeId=5417 minecraft:blue_glazed_terracotta;facing_direction=3 blockId=231 -runtimeId=668 +runtimeId=5418 minecraft:blue_glazed_terracotta;facing_direction=4 blockId=231 -runtimeId=669 +runtimeId=5419 minecraft:blue_glazed_terracotta;facing_direction=5 blockId=231 -runtimeId=670 +runtimeId=5420 minecraft:blue_ice blockId=266 -runtimeId=671 +runtimeId=6981 minecraft:bone_block;deprecated=0;pillar_axis=x blockId=216 -runtimeId=676 +runtimeId=4202 minecraft:bone_block;deprecated=0;pillar_axis=y blockId=216 -runtimeId=672 +runtimeId=4198 minecraft:bone_block;deprecated=0;pillar_axis=z blockId=216 -runtimeId=680 +runtimeId=4206 minecraft:bone_block;deprecated=1;pillar_axis=x blockId=216 -runtimeId=677 +runtimeId=4203 minecraft:bone_block;deprecated=1;pillar_axis=y blockId=216 -runtimeId=673 +runtimeId=4199 minecraft:bone_block;deprecated=1;pillar_axis=z blockId=216 -runtimeId=681 +runtimeId=4207 minecraft:bone_block;deprecated=2;pillar_axis=x blockId=216 -runtimeId=678 +runtimeId=4204 minecraft:bone_block;deprecated=2;pillar_axis=y blockId=216 -runtimeId=674 +runtimeId=4200 minecraft:bone_block;deprecated=2;pillar_axis=z blockId=216 -runtimeId=682 +runtimeId=4208 minecraft:bone_block;deprecated=3;pillar_axis=x blockId=216 -runtimeId=679 +runtimeId=4205 minecraft:bone_block;deprecated=3;pillar_axis=y blockId=216 -runtimeId=675 +runtimeId=4201 minecraft:bone_block;deprecated=3;pillar_axis=z blockId=216 -runtimeId=683 +runtimeId=4209 minecraft:bookshelf blockId=47 -runtimeId=684 +runtimeId=6545 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=212 -runtimeId=685 +runtimeId=4855 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=212 -runtimeId=687 +runtimeId=4857 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=212 -runtimeId=689 +runtimeId=4859 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=212 -runtimeId=739 +runtimeId=4909 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=212 -runtimeId=741 +runtimeId=4911 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=212 -runtimeId=743 +runtimeId=4913 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=212 -runtimeId=793 +runtimeId=4963 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=212 -runtimeId=795 +runtimeId=4965 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=212 -runtimeId=797 +runtimeId=4967 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=212 -runtimeId=703 +runtimeId=4873 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=212 -runtimeId=705 +runtimeId=4875 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=212 -runtimeId=707 +runtimeId=4877 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=212 -runtimeId=757 +runtimeId=4927 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=212 -runtimeId=759 +runtimeId=4929 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=212 -runtimeId=761 +runtimeId=4931 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=212 -runtimeId=811 +runtimeId=4981 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=212 -runtimeId=813 +runtimeId=4983 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=212 -runtimeId=815 +runtimeId=4985 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=212 -runtimeId=721 +runtimeId=4891 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=212 -runtimeId=723 +runtimeId=4893 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=212 -runtimeId=725 +runtimeId=4895 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=212 -runtimeId=775 +runtimeId=4945 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=212 -runtimeId=777 +runtimeId=4947 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=212 -runtimeId=779 +runtimeId=4949 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=212 -runtimeId=829 +runtimeId=4999 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=212 -runtimeId=831 +runtimeId=5001 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=212 -runtimeId=833 +runtimeId=5003 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=212 -runtimeId=686 +runtimeId=4856 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=212 -runtimeId=688 +runtimeId=4858 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=212 -runtimeId=690 +runtimeId=4860 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=212 -runtimeId=740 +runtimeId=4910 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=212 -runtimeId=742 +runtimeId=4912 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=212 -runtimeId=744 +runtimeId=4914 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=212 -runtimeId=794 +runtimeId=4964 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=212 -runtimeId=796 +runtimeId=4966 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=212 -runtimeId=798 +runtimeId=4968 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=212 -runtimeId=704 +runtimeId=4874 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=212 -runtimeId=706 +runtimeId=4876 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=212 -runtimeId=708 +runtimeId=4878 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=212 -runtimeId=758 +runtimeId=4928 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=212 -runtimeId=760 +runtimeId=4930 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=212 -runtimeId=762 +runtimeId=4932 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=212 -runtimeId=812 +runtimeId=4982 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=212 -runtimeId=814 +runtimeId=4984 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=212 -runtimeId=816 +runtimeId=4986 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=212 -runtimeId=722 +runtimeId=4892 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=212 -runtimeId=724 +runtimeId=4894 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=212 -runtimeId=726 +runtimeId=4896 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=212 -runtimeId=776 +runtimeId=4946 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=212 -runtimeId=778 +runtimeId=4948 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=212 -runtimeId=780 +runtimeId=4950 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=212 -runtimeId=830 +runtimeId=5000 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=212 -runtimeId=832 +runtimeId=5002 minecraft:border_block;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=212 -runtimeId=834 +runtimeId=5004 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=212 -runtimeId=691 +runtimeId=4861 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=212 -runtimeId=693 +runtimeId=4863 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=212 -runtimeId=695 +runtimeId=4865 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=212 -runtimeId=745 +runtimeId=4915 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=212 -runtimeId=747 +runtimeId=4917 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=212 -runtimeId=749 +runtimeId=4919 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=212 -runtimeId=799 +runtimeId=4969 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=212 -runtimeId=801 +runtimeId=4971 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=212 -runtimeId=803 +runtimeId=4973 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=212 -runtimeId=709 +runtimeId=4879 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=212 -runtimeId=711 +runtimeId=4881 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=212 -runtimeId=713 +runtimeId=4883 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=212 -runtimeId=763 +runtimeId=4933 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=212 -runtimeId=765 +runtimeId=4935 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=212 -runtimeId=767 +runtimeId=4937 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=212 -runtimeId=817 +runtimeId=4987 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=212 -runtimeId=819 +runtimeId=4989 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=212 -runtimeId=821 +runtimeId=4991 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=212 -runtimeId=727 +runtimeId=4897 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=212 -runtimeId=729 +runtimeId=4899 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=212 -runtimeId=731 +runtimeId=4901 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=212 -runtimeId=781 +runtimeId=4951 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=212 -runtimeId=783 +runtimeId=4953 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=212 -runtimeId=785 +runtimeId=4955 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=212 -runtimeId=835 +runtimeId=5005 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=212 -runtimeId=837 +runtimeId=5007 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=212 -runtimeId=839 +runtimeId=5009 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=212 -runtimeId=692 +runtimeId=4862 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=212 -runtimeId=694 +runtimeId=4864 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=212 -runtimeId=696 +runtimeId=4866 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=212 -runtimeId=746 +runtimeId=4916 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=212 -runtimeId=748 +runtimeId=4918 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=212 -runtimeId=750 +runtimeId=4920 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=212 -runtimeId=800 +runtimeId=4970 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=212 -runtimeId=802 +runtimeId=4972 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=212 -runtimeId=804 +runtimeId=4974 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=212 -runtimeId=710 +runtimeId=4880 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=212 -runtimeId=712 +runtimeId=4882 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=212 -runtimeId=714 +runtimeId=4884 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=212 -runtimeId=764 +runtimeId=4934 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=212 -runtimeId=766 +runtimeId=4936 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=212 -runtimeId=768 +runtimeId=4938 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=212 -runtimeId=818 +runtimeId=4988 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=212 -runtimeId=820 +runtimeId=4990 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=212 -runtimeId=822 +runtimeId=4992 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=212 -runtimeId=728 +runtimeId=4898 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=212 -runtimeId=730 +runtimeId=4900 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=212 -runtimeId=732 +runtimeId=4902 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=212 -runtimeId=782 +runtimeId=4952 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=212 -runtimeId=784 +runtimeId=4954 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=212 -runtimeId=786 +runtimeId=4956 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=212 -runtimeId=836 +runtimeId=5006 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=212 -runtimeId=838 +runtimeId=5008 minecraft:border_block;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=212 -runtimeId=840 +runtimeId=5010 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=212 -runtimeId=697 +runtimeId=4867 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=212 -runtimeId=699 +runtimeId=4869 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=212 -runtimeId=701 +runtimeId=4871 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=212 -runtimeId=751 +runtimeId=4921 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=212 -runtimeId=753 +runtimeId=4923 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=212 -runtimeId=755 +runtimeId=4925 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=212 -runtimeId=805 +runtimeId=4975 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=212 -runtimeId=807 +runtimeId=4977 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=212 -runtimeId=809 +runtimeId=4979 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=212 -runtimeId=715 +runtimeId=4885 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=212 -runtimeId=717 +runtimeId=4887 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=212 -runtimeId=719 +runtimeId=4889 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=212 -runtimeId=769 +runtimeId=4939 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=212 -runtimeId=771 +runtimeId=4941 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=212 -runtimeId=773 +runtimeId=4943 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=212 -runtimeId=823 +runtimeId=4993 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=212 -runtimeId=825 +runtimeId=4995 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=212 -runtimeId=827 +runtimeId=4997 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=212 -runtimeId=733 +runtimeId=4903 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=212 -runtimeId=735 +runtimeId=4905 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=212 -runtimeId=737 +runtimeId=4907 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=212 -runtimeId=787 +runtimeId=4957 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=212 -runtimeId=789 +runtimeId=4959 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=212 -runtimeId=791 +runtimeId=4961 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=212 -runtimeId=841 +runtimeId=5011 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=212 -runtimeId=843 +runtimeId=5013 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=212 -runtimeId=845 +runtimeId=5015 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=212 -runtimeId=698 +runtimeId=4868 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=212 -runtimeId=700 +runtimeId=4870 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=212 -runtimeId=702 +runtimeId=4872 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=212 -runtimeId=752 +runtimeId=4922 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=212 -runtimeId=754 +runtimeId=4924 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=212 -runtimeId=756 +runtimeId=4926 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=212 -runtimeId=806 +runtimeId=4976 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=212 -runtimeId=808 +runtimeId=4978 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=212 -runtimeId=810 +runtimeId=4980 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=212 -runtimeId=716 +runtimeId=4886 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=212 -runtimeId=718 +runtimeId=4888 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=212 -runtimeId=720 +runtimeId=4890 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=212 -runtimeId=770 +runtimeId=4940 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=212 -runtimeId=772 +runtimeId=4942 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=212 -runtimeId=774 +runtimeId=4944 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=212 -runtimeId=824 +runtimeId=4994 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=212 -runtimeId=826 +runtimeId=4996 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=212 -runtimeId=828 +runtimeId=4998 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=212 -runtimeId=734 +runtimeId=4904 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=212 -runtimeId=736 +runtimeId=4906 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=212 -runtimeId=738 +runtimeId=4908 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=212 -runtimeId=788 +runtimeId=4958 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=212 -runtimeId=790 +runtimeId=4960 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=212 -runtimeId=792 +runtimeId=4962 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=212 -runtimeId=842 +runtimeId=5012 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=212 -runtimeId=844 +runtimeId=5014 minecraft:border_block;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=212 -runtimeId=846 +runtimeId=5016 minecraft:brewing_stand;brewing_stand_slot_c_bit=0;brewing_stand_slot_a_bit=0;brewing_stand_slot_b_bit=0 blockId=117 -runtimeId=847 +runtimeId=7489 minecraft:brewing_stand;brewing_stand_slot_c_bit=0;brewing_stand_slot_a_bit=0;brewing_stand_slot_b_bit=1 blockId=117 -runtimeId=849 +runtimeId=7491 minecraft:brewing_stand;brewing_stand_slot_c_bit=0;brewing_stand_slot_a_bit=1;brewing_stand_slot_b_bit=0 blockId=117 -runtimeId=848 +runtimeId=7490 minecraft:brewing_stand;brewing_stand_slot_c_bit=0;brewing_stand_slot_a_bit=1;brewing_stand_slot_b_bit=1 blockId=117 -runtimeId=850 +runtimeId=7492 minecraft:brewing_stand;brewing_stand_slot_c_bit=1;brewing_stand_slot_a_bit=0;brewing_stand_slot_b_bit=0 blockId=117 -runtimeId=851 +runtimeId=7493 minecraft:brewing_stand;brewing_stand_slot_c_bit=1;brewing_stand_slot_a_bit=0;brewing_stand_slot_b_bit=1 blockId=117 -runtimeId=853 +runtimeId=7495 minecraft:brewing_stand;brewing_stand_slot_c_bit=1;brewing_stand_slot_a_bit=1;brewing_stand_slot_b_bit=0 blockId=117 -runtimeId=852 +runtimeId=7494 minecraft:brewing_stand;brewing_stand_slot_c_bit=1;brewing_stand_slot_a_bit=1;brewing_stand_slot_b_bit=1 blockId=117 -runtimeId=854 +runtimeId=7496 minecraft:brick_block blockId=45 -runtimeId=855 +runtimeId=4721 minecraft:brick_stairs;upside_down_bit=0;weirdo_direction=0 blockId=108 -runtimeId=856 +runtimeId=6421 minecraft:brick_stairs;upside_down_bit=0;weirdo_direction=1 blockId=108 -runtimeId=857 +runtimeId=6422 minecraft:brick_stairs;upside_down_bit=0;weirdo_direction=2 blockId=108 -runtimeId=858 +runtimeId=6423 minecraft:brick_stairs;upside_down_bit=0;weirdo_direction=3 blockId=108 -runtimeId=859 +runtimeId=6424 minecraft:brick_stairs;upside_down_bit=1;weirdo_direction=0 blockId=108 -runtimeId=860 +runtimeId=6425 minecraft:brick_stairs;upside_down_bit=1;weirdo_direction=1 blockId=108 -runtimeId=861 +runtimeId=6426 minecraft:brick_stairs;upside_down_bit=1;weirdo_direction=2 blockId=108 -runtimeId=862 +runtimeId=6427 minecraft:brick_stairs;upside_down_bit=1;weirdo_direction=3 blockId=108 -runtimeId=863 +runtimeId=6428 + +minecraft:brown_candle;lit=0;candles=0 +blockId=680 +runtimeId=5799 + +minecraft:brown_candle;lit=0;candles=1 +blockId=680 +runtimeId=5800 + +minecraft:brown_candle;lit=0;candles=2 +blockId=680 +runtimeId=5801 + +minecraft:brown_candle;lit=0;candles=3 +blockId=680 +runtimeId=5802 + +minecraft:brown_candle;lit=1;candles=0 +blockId=680 +runtimeId=5803 + +minecraft:brown_candle;lit=1;candles=1 +blockId=680 +runtimeId=5804 + +minecraft:brown_candle;lit=1;candles=2 +blockId=680 +runtimeId=5805 + +minecraft:brown_candle;lit=1;candles=3 +blockId=680 +runtimeId=5806 + +minecraft:brown_candle_cake;lit=0 +blockId=697 +runtimeId=3662 + +minecraft:brown_candle_cake;lit=1 +blockId=697 +runtimeId=3663 minecraft:brown_glazed_terracotta;facing_direction=0 blockId=232 -runtimeId=864 +runtimeId=3552 minecraft:brown_glazed_terracotta;facing_direction=1 blockId=232 -runtimeId=865 +runtimeId=3553 minecraft:brown_glazed_terracotta;facing_direction=2 blockId=232 -runtimeId=866 +runtimeId=3554 minecraft:brown_glazed_terracotta;facing_direction=3 blockId=232 -runtimeId=867 +runtimeId=3555 minecraft:brown_glazed_terracotta;facing_direction=4 blockId=232 -runtimeId=868 +runtimeId=3556 minecraft:brown_glazed_terracotta;facing_direction=5 blockId=232 -runtimeId=869 +runtimeId=3557 minecraft:brown_mushroom blockId=39 -runtimeId=870 +runtimeId=3551 minecraft:brown_mushroom_block;huge_mushroom_bits=0 blockId=99 -runtimeId=871 +runtimeId=7290 minecraft:brown_mushroom_block;huge_mushroom_bits=1 blockId=99 -runtimeId=872 +runtimeId=7291 minecraft:brown_mushroom_block;huge_mushroom_bits=2 blockId=99 -runtimeId=873 +runtimeId=7292 minecraft:brown_mushroom_block;huge_mushroom_bits=3 blockId=99 -runtimeId=874 +runtimeId=7293 minecraft:brown_mushroom_block;huge_mushroom_bits=4 blockId=99 -runtimeId=875 +runtimeId=7294 minecraft:brown_mushroom_block;huge_mushroom_bits=5 blockId=99 -runtimeId=876 +runtimeId=7295 minecraft:brown_mushroom_block;huge_mushroom_bits=6 blockId=99 -runtimeId=877 +runtimeId=7296 minecraft:brown_mushroom_block;huge_mushroom_bits=7 blockId=99 -runtimeId=878 +runtimeId=7297 minecraft:brown_mushroom_block;huge_mushroom_bits=8 blockId=99 -runtimeId=879 +runtimeId=7298 minecraft:brown_mushroom_block;huge_mushroom_bits=9 blockId=99 -runtimeId=880 +runtimeId=7299 minecraft:brown_mushroom_block;huge_mushroom_bits=10 blockId=99 -runtimeId=881 +runtimeId=7300 minecraft:brown_mushroom_block;huge_mushroom_bits=11 blockId=99 -runtimeId=882 +runtimeId=7301 minecraft:brown_mushroom_block;huge_mushroom_bits=12 blockId=99 -runtimeId=883 +runtimeId=7302 minecraft:brown_mushroom_block;huge_mushroom_bits=13 blockId=99 -runtimeId=884 +runtimeId=7303 minecraft:brown_mushroom_block;huge_mushroom_bits=14 blockId=99 -runtimeId=885 +runtimeId=7304 minecraft:brown_mushroom_block;huge_mushroom_bits=15 blockId=99 -runtimeId=886 +runtimeId=7305 minecraft:bubble_column;drag_down=0 blockId=415 -runtimeId=887 +runtimeId=5728 minecraft:bubble_column;drag_down=1 blockId=415 -runtimeId=888 +runtimeId=5729 minecraft:budding_amethyst blockId=583 -runtimeId=889 +runtimeId=6956 minecraft:cactus;age=0 blockId=81 -runtimeId=890 +runtimeId=6940 minecraft:cactus;age=1 blockId=81 -runtimeId=891 +runtimeId=6941 minecraft:cactus;age=2 blockId=81 -runtimeId=892 +runtimeId=6942 minecraft:cactus;age=3 blockId=81 -runtimeId=893 +runtimeId=6943 minecraft:cactus;age=4 blockId=81 -runtimeId=894 +runtimeId=6944 minecraft:cactus;age=5 blockId=81 -runtimeId=895 +runtimeId=6945 minecraft:cactus;age=6 blockId=81 -runtimeId=896 +runtimeId=6946 minecraft:cactus;age=7 blockId=81 -runtimeId=897 +runtimeId=6947 minecraft:cactus;age=8 blockId=81 -runtimeId=898 +runtimeId=6948 minecraft:cactus;age=9 blockId=81 -runtimeId=899 +runtimeId=6949 minecraft:cactus;age=10 blockId=81 -runtimeId=900 +runtimeId=6950 minecraft:cactus;age=11 blockId=81 -runtimeId=901 +runtimeId=6951 minecraft:cactus;age=12 blockId=81 -runtimeId=902 +runtimeId=6952 minecraft:cactus;age=13 blockId=81 -runtimeId=903 +runtimeId=6953 minecraft:cactus;age=14 blockId=81 -runtimeId=904 +runtimeId=6954 minecraft:cactus;age=15 blockId=81 -runtimeId=905 +runtimeId=6955 minecraft:cake;bite_counter=0 blockId=92 -runtimeId=906 +runtimeId=7067 minecraft:cake;bite_counter=1 blockId=92 -runtimeId=907 +runtimeId=7068 minecraft:cake;bite_counter=2 blockId=92 -runtimeId=908 +runtimeId=7069 minecraft:cake;bite_counter=3 blockId=92 -runtimeId=909 +runtimeId=7070 minecraft:cake;bite_counter=4 blockId=92 -runtimeId=910 +runtimeId=7071 minecraft:cake;bite_counter=5 blockId=92 -runtimeId=911 +runtimeId=7072 minecraft:cake;bite_counter=6 blockId=92 -runtimeId=912 +runtimeId=7073 minecraft:calcite blockId=581 -runtimeId=913 +runtimeId=215 minecraft:camera blockId=242 -runtimeId=914 +runtimeId=7226 minecraft:campfire;extinguished=0;direction=0 blockId=464 -runtimeId=915 +runtimeId=5730 minecraft:campfire;extinguished=0;direction=1 blockId=464 -runtimeId=916 +runtimeId=5731 minecraft:campfire;extinguished=0;direction=2 blockId=464 -runtimeId=917 +runtimeId=5732 minecraft:campfire;extinguished=0;direction=3 blockId=464 -runtimeId=918 +runtimeId=5733 minecraft:campfire;extinguished=1;direction=0 blockId=464 -runtimeId=919 +runtimeId=5734 minecraft:campfire;extinguished=1;direction=1 blockId=464 -runtimeId=920 +runtimeId=5735 minecraft:campfire;extinguished=1;direction=2 blockId=464 -runtimeId=921 +runtimeId=5736 minecraft:campfire;extinguished=1;direction=3 blockId=464 -runtimeId=922 +runtimeId=5737 + +minecraft:candle;lit=0;candles=0 +blockId=667 +runtimeId=7345 + +minecraft:candle;lit=0;candles=1 +blockId=667 +runtimeId=7346 + +minecraft:candle;lit=0;candles=2 +blockId=667 +runtimeId=7347 + +minecraft:candle;lit=0;candles=3 +blockId=667 +runtimeId=7348 + +minecraft:candle;lit=1;candles=0 +blockId=667 +runtimeId=7349 + +minecraft:candle;lit=1;candles=1 +blockId=667 +runtimeId=7350 + +minecraft:candle;lit=1;candles=2 +blockId=667 +runtimeId=7351 + +minecraft:candle;lit=1;candles=3 +blockId=667 +runtimeId=7352 + +minecraft:candle_cake;lit=0 +blockId=684 +runtimeId=7524 + +minecraft:candle_cake;lit=1 +blockId=684 +runtimeId=7525 minecraft:carpet;color=black blockId=171 -runtimeId=938 +runtimeId=971 minecraft:carpet;color=blue blockId=171 -runtimeId=934 +runtimeId=967 minecraft:carpet;color=brown blockId=171 -runtimeId=935 +runtimeId=968 minecraft:carpet;color=cyan blockId=171 -runtimeId=932 +runtimeId=965 minecraft:carpet;color=gray blockId=171 -runtimeId=930 +runtimeId=963 minecraft:carpet;color=green blockId=171 -runtimeId=936 +runtimeId=969 minecraft:carpet;color=light_blue blockId=171 -runtimeId=926 +runtimeId=959 minecraft:carpet;color=lime blockId=171 -runtimeId=928 +runtimeId=961 minecraft:carpet;color=magenta blockId=171 -runtimeId=925 +runtimeId=958 minecraft:carpet;color=orange blockId=171 -runtimeId=924 +runtimeId=957 minecraft:carpet;color=pink blockId=171 -runtimeId=929 +runtimeId=962 minecraft:carpet;color=purple blockId=171 -runtimeId=933 +runtimeId=966 minecraft:carpet;color=red blockId=171 -runtimeId=937 +runtimeId=970 minecraft:carpet;color=silver blockId=171 -runtimeId=931 +runtimeId=964 minecraft:carpet;color=white blockId=171 -runtimeId=923 +runtimeId=956 minecraft:carpet;color=yellow blockId=171 -runtimeId=927 +runtimeId=960 minecraft:carrots;growth=0 blockId=141 -runtimeId=939 +runtimeId=5830 minecraft:carrots;growth=1 blockId=141 -runtimeId=940 +runtimeId=5831 minecraft:carrots;growth=2 blockId=141 -runtimeId=941 +runtimeId=5832 minecraft:carrots;growth=3 blockId=141 -runtimeId=942 +runtimeId=5833 minecraft:carrots;growth=4 blockId=141 -runtimeId=943 +runtimeId=5834 minecraft:carrots;growth=5 blockId=141 -runtimeId=944 +runtimeId=5835 minecraft:carrots;growth=6 blockId=141 -runtimeId=945 +runtimeId=5836 minecraft:carrots;growth=7 blockId=141 -runtimeId=946 +runtimeId=5837 minecraft:cartography_table blockId=455 -runtimeId=947 +runtimeId=8227 minecraft:carved_pumpkin;direction=0 blockId=410 -runtimeId=948 +runtimeId=7320 minecraft:carved_pumpkin;direction=1 blockId=410 -runtimeId=949 +runtimeId=7321 minecraft:carved_pumpkin;direction=2 blockId=410 -runtimeId=950 +runtimeId=7322 minecraft:carved_pumpkin;direction=3 blockId=410 -runtimeId=951 +runtimeId=7323 minecraft:cauldron;fill_level=0;cauldron_liquid=lava blockId=118 -runtimeId=959 +runtimeId=7404 minecraft:cauldron;fill_level=0;cauldron_liquid=powder_snow blockId=118 -runtimeId=966 +runtimeId=7411 minecraft:cauldron;fill_level=0;cauldron_liquid=water blockId=118 -runtimeId=952 +runtimeId=7397 minecraft:cauldron;fill_level=1;cauldron_liquid=lava blockId=118 -runtimeId=960 +runtimeId=7405 minecraft:cauldron;fill_level=1;cauldron_liquid=powder_snow blockId=118 -runtimeId=967 +runtimeId=7412 minecraft:cauldron;fill_level=1;cauldron_liquid=water blockId=118 -runtimeId=953 +runtimeId=7398 minecraft:cauldron;fill_level=2;cauldron_liquid=lava blockId=118 -runtimeId=961 +runtimeId=7406 minecraft:cauldron;fill_level=2;cauldron_liquid=powder_snow blockId=118 -runtimeId=968 +runtimeId=7413 minecraft:cauldron;fill_level=2;cauldron_liquid=water blockId=118 -runtimeId=954 +runtimeId=7399 minecraft:cauldron;fill_level=3;cauldron_liquid=lava blockId=118 -runtimeId=962 +runtimeId=7407 minecraft:cauldron;fill_level=3;cauldron_liquid=powder_snow blockId=118 -runtimeId=969 +runtimeId=7414 minecraft:cauldron;fill_level=3;cauldron_liquid=water blockId=118 -runtimeId=955 +runtimeId=7400 minecraft:cauldron;fill_level=4;cauldron_liquid=lava blockId=118 -runtimeId=963 +runtimeId=7408 minecraft:cauldron;fill_level=4;cauldron_liquid=powder_snow blockId=118 -runtimeId=970 +runtimeId=7415 minecraft:cauldron;fill_level=4;cauldron_liquid=water blockId=118 -runtimeId=956 +runtimeId=7401 minecraft:cauldron;fill_level=5;cauldron_liquid=lava blockId=118 -runtimeId=964 +runtimeId=7409 minecraft:cauldron;fill_level=5;cauldron_liquid=powder_snow blockId=118 -runtimeId=971 +runtimeId=7416 minecraft:cauldron;fill_level=5;cauldron_liquid=water blockId=118 -runtimeId=957 +runtimeId=7402 minecraft:cauldron;fill_level=6;cauldron_liquid=lava blockId=118 -runtimeId=965 +runtimeId=7410 minecraft:cauldron;fill_level=6;cauldron_liquid=powder_snow blockId=118 -runtimeId=972 +runtimeId=7417 minecraft:cauldron;fill_level=6;cauldron_liquid=water blockId=118 -runtimeId=958 +runtimeId=7403 minecraft:cave_vines;growing_plant_age=0 blockId=577 -runtimeId=973 +runtimeId=4731 minecraft:cave_vines;growing_plant_age=1 blockId=577 -runtimeId=974 +runtimeId=4732 minecraft:cave_vines;growing_plant_age=2 blockId=577 -runtimeId=975 +runtimeId=4733 minecraft:cave_vines;growing_plant_age=3 blockId=577 -runtimeId=976 +runtimeId=4734 minecraft:cave_vines;growing_plant_age=4 blockId=577 -runtimeId=977 +runtimeId=4735 minecraft:cave_vines;growing_plant_age=5 blockId=577 -runtimeId=978 +runtimeId=4736 minecraft:cave_vines;growing_plant_age=6 blockId=577 -runtimeId=979 +runtimeId=4737 minecraft:cave_vines;growing_plant_age=7 blockId=577 -runtimeId=980 +runtimeId=4738 minecraft:cave_vines;growing_plant_age=8 blockId=577 -runtimeId=981 +runtimeId=4739 minecraft:cave_vines;growing_plant_age=9 blockId=577 -runtimeId=982 +runtimeId=4740 minecraft:cave_vines;growing_plant_age=10 blockId=577 -runtimeId=983 +runtimeId=4741 minecraft:cave_vines;growing_plant_age=11 blockId=577 -runtimeId=984 +runtimeId=4742 minecraft:cave_vines;growing_plant_age=12 blockId=577 -runtimeId=985 +runtimeId=4743 minecraft:cave_vines;growing_plant_age=13 blockId=577 -runtimeId=986 +runtimeId=4744 minecraft:cave_vines;growing_plant_age=14 blockId=577 -runtimeId=987 +runtimeId=4745 minecraft:cave_vines;growing_plant_age=15 blockId=577 -runtimeId=988 +runtimeId=4746 minecraft:cave_vines;growing_plant_age=16 blockId=577 -runtimeId=989 +runtimeId=4747 minecraft:cave_vines;growing_plant_age=17 blockId=577 -runtimeId=990 +runtimeId=4748 minecraft:cave_vines;growing_plant_age=18 blockId=577 -runtimeId=991 +runtimeId=4749 minecraft:cave_vines;growing_plant_age=19 blockId=577 -runtimeId=992 +runtimeId=4750 minecraft:cave_vines;growing_plant_age=20 blockId=577 -runtimeId=993 +runtimeId=4751 minecraft:cave_vines;growing_plant_age=21 blockId=577 -runtimeId=994 +runtimeId=4752 minecraft:cave_vines;growing_plant_age=22 blockId=577 -runtimeId=995 +runtimeId=4753 minecraft:cave_vines;growing_plant_age=23 blockId=577 -runtimeId=996 +runtimeId=4754 minecraft:cave_vines;growing_plant_age=24 blockId=577 -runtimeId=997 +runtimeId=4755 minecraft:cave_vines;growing_plant_age=25 blockId=577 -runtimeId=998 +runtimeId=4756 minecraft:cave_vines_body_with_berries;growing_plant_age=0 blockId=630 -runtimeId=999 +runtimeId=5854 minecraft:cave_vines_body_with_berries;growing_plant_age=1 blockId=630 -runtimeId=1000 +runtimeId=5855 minecraft:cave_vines_body_with_berries;growing_plant_age=2 blockId=630 -runtimeId=1001 +runtimeId=5856 minecraft:cave_vines_body_with_berries;growing_plant_age=3 blockId=630 -runtimeId=1002 +runtimeId=5857 minecraft:cave_vines_body_with_berries;growing_plant_age=4 blockId=630 -runtimeId=1003 +runtimeId=5858 minecraft:cave_vines_body_with_berries;growing_plant_age=5 blockId=630 -runtimeId=1004 +runtimeId=5859 minecraft:cave_vines_body_with_berries;growing_plant_age=6 blockId=630 -runtimeId=1005 +runtimeId=5860 minecraft:cave_vines_body_with_berries;growing_plant_age=7 blockId=630 -runtimeId=1006 +runtimeId=5861 minecraft:cave_vines_body_with_berries;growing_plant_age=8 blockId=630 -runtimeId=1007 +runtimeId=5862 minecraft:cave_vines_body_with_berries;growing_plant_age=9 blockId=630 -runtimeId=1008 +runtimeId=5863 minecraft:cave_vines_body_with_berries;growing_plant_age=10 blockId=630 -runtimeId=1009 +runtimeId=5864 minecraft:cave_vines_body_with_berries;growing_plant_age=11 blockId=630 -runtimeId=1010 +runtimeId=5865 minecraft:cave_vines_body_with_berries;growing_plant_age=12 blockId=630 -runtimeId=1011 +runtimeId=5866 minecraft:cave_vines_body_with_berries;growing_plant_age=13 blockId=630 -runtimeId=1012 +runtimeId=5867 minecraft:cave_vines_body_with_berries;growing_plant_age=14 blockId=630 -runtimeId=1013 +runtimeId=5868 minecraft:cave_vines_body_with_berries;growing_plant_age=15 blockId=630 -runtimeId=1014 +runtimeId=5869 minecraft:cave_vines_body_with_berries;growing_plant_age=16 blockId=630 -runtimeId=1015 +runtimeId=5870 minecraft:cave_vines_body_with_berries;growing_plant_age=17 blockId=630 -runtimeId=1016 +runtimeId=5871 minecraft:cave_vines_body_with_berries;growing_plant_age=18 blockId=630 -runtimeId=1017 +runtimeId=5872 minecraft:cave_vines_body_with_berries;growing_plant_age=19 blockId=630 -runtimeId=1018 +runtimeId=5873 minecraft:cave_vines_body_with_berries;growing_plant_age=20 blockId=630 -runtimeId=1019 +runtimeId=5874 minecraft:cave_vines_body_with_berries;growing_plant_age=21 blockId=630 -runtimeId=1020 +runtimeId=5875 minecraft:cave_vines_body_with_berries;growing_plant_age=22 blockId=630 -runtimeId=1021 +runtimeId=5876 minecraft:cave_vines_body_with_berries;growing_plant_age=23 blockId=630 -runtimeId=1022 +runtimeId=5877 minecraft:cave_vines_body_with_berries;growing_plant_age=24 blockId=630 -runtimeId=1023 +runtimeId=5878 minecraft:cave_vines_body_with_berries;growing_plant_age=25 blockId=630 -runtimeId=1024 +runtimeId=5879 minecraft:cave_vines_head_with_berries;growing_plant_age=0 blockId=631 -runtimeId=1025 +runtimeId=7418 minecraft:cave_vines_head_with_berries;growing_plant_age=1 blockId=631 -runtimeId=1026 +runtimeId=7419 minecraft:cave_vines_head_with_berries;growing_plant_age=2 blockId=631 -runtimeId=1027 +runtimeId=7420 minecraft:cave_vines_head_with_berries;growing_plant_age=3 blockId=631 -runtimeId=1028 +runtimeId=7421 minecraft:cave_vines_head_with_berries;growing_plant_age=4 blockId=631 -runtimeId=1029 +runtimeId=7422 minecraft:cave_vines_head_with_berries;growing_plant_age=5 blockId=631 -runtimeId=1030 +runtimeId=7423 minecraft:cave_vines_head_with_berries;growing_plant_age=6 blockId=631 -runtimeId=1031 +runtimeId=7424 minecraft:cave_vines_head_with_berries;growing_plant_age=7 blockId=631 -runtimeId=1032 +runtimeId=7425 minecraft:cave_vines_head_with_berries;growing_plant_age=8 blockId=631 -runtimeId=1033 +runtimeId=7426 minecraft:cave_vines_head_with_berries;growing_plant_age=9 blockId=631 -runtimeId=1034 +runtimeId=7427 minecraft:cave_vines_head_with_berries;growing_plant_age=10 blockId=631 -runtimeId=1035 +runtimeId=7428 minecraft:cave_vines_head_with_berries;growing_plant_age=11 blockId=631 -runtimeId=1036 +runtimeId=7429 minecraft:cave_vines_head_with_berries;growing_plant_age=12 blockId=631 -runtimeId=1037 +runtimeId=7430 minecraft:cave_vines_head_with_berries;growing_plant_age=13 blockId=631 -runtimeId=1038 +runtimeId=7431 minecraft:cave_vines_head_with_berries;growing_plant_age=14 blockId=631 -runtimeId=1039 +runtimeId=7432 minecraft:cave_vines_head_with_berries;growing_plant_age=15 blockId=631 -runtimeId=1040 +runtimeId=7433 minecraft:cave_vines_head_with_berries;growing_plant_age=16 blockId=631 -runtimeId=1041 +runtimeId=7434 minecraft:cave_vines_head_with_berries;growing_plant_age=17 blockId=631 -runtimeId=1042 +runtimeId=7435 minecraft:cave_vines_head_with_berries;growing_plant_age=18 blockId=631 -runtimeId=1043 +runtimeId=7436 minecraft:cave_vines_head_with_berries;growing_plant_age=19 blockId=631 -runtimeId=1044 +runtimeId=7437 minecraft:cave_vines_head_with_berries;growing_plant_age=20 blockId=631 -runtimeId=1045 +runtimeId=7438 minecraft:cave_vines_head_with_berries;growing_plant_age=21 blockId=631 -runtimeId=1046 +runtimeId=7439 minecraft:cave_vines_head_with_berries;growing_plant_age=22 blockId=631 -runtimeId=1047 +runtimeId=7440 minecraft:cave_vines_head_with_berries;growing_plant_age=23 blockId=631 -runtimeId=1048 +runtimeId=7441 minecraft:cave_vines_head_with_berries;growing_plant_age=24 blockId=631 -runtimeId=1049 +runtimeId=7442 minecraft:cave_vines_head_with_berries;growing_plant_age=25 blockId=631 -runtimeId=1050 +runtimeId=7443 minecraft:chain;pillar_axis=x blockId=541 -runtimeId=1052 +runtimeId=7064 minecraft:chain;pillar_axis=y blockId=541 -runtimeId=1051 +runtimeId=7063 minecraft:chain;pillar_axis=z blockId=541 -runtimeId=1053 +runtimeId=7065 minecraft:chain_command_block;conditional_bit=0;facing_direction=0 blockId=189 -runtimeId=1054 +runtimeId=6459 minecraft:chain_command_block;conditional_bit=0;facing_direction=1 blockId=189 -runtimeId=1055 +runtimeId=6460 minecraft:chain_command_block;conditional_bit=0;facing_direction=2 blockId=189 -runtimeId=1056 +runtimeId=6461 minecraft:chain_command_block;conditional_bit=0;facing_direction=3 blockId=189 -runtimeId=1057 +runtimeId=6462 minecraft:chain_command_block;conditional_bit=0;facing_direction=4 blockId=189 -runtimeId=1058 +runtimeId=6463 minecraft:chain_command_block;conditional_bit=0;facing_direction=5 blockId=189 -runtimeId=1059 +runtimeId=6464 minecraft:chain_command_block;conditional_bit=1;facing_direction=0 blockId=189 -runtimeId=1060 +runtimeId=6465 minecraft:chain_command_block;conditional_bit=1;facing_direction=1 blockId=189 -runtimeId=1061 +runtimeId=6466 minecraft:chain_command_block;conditional_bit=1;facing_direction=2 blockId=189 -runtimeId=1062 +runtimeId=6467 minecraft:chain_command_block;conditional_bit=1;facing_direction=3 blockId=189 -runtimeId=1063 +runtimeId=6468 minecraft:chain_command_block;conditional_bit=1;facing_direction=4 blockId=189 -runtimeId=1064 +runtimeId=6469 minecraft:chain_command_block;conditional_bit=1;facing_direction=5 blockId=189 -runtimeId=1065 +runtimeId=6470 minecraft:chemical_heat blockId=192 -runtimeId=1066 +runtimeId=7380 minecraft:chemistry_table;chemistry_table_type=compound_creator;direction=0 blockId=238 -runtimeId=1067 +runtimeId=7236 minecraft:chemistry_table;chemistry_table_type=compound_creator;direction=1 blockId=238 -runtimeId=1068 +runtimeId=7237 minecraft:chemistry_table;chemistry_table_type=compound_creator;direction=2 blockId=238 -runtimeId=1069 +runtimeId=7238 minecraft:chemistry_table;chemistry_table_type=compound_creator;direction=3 blockId=238 -runtimeId=1070 +runtimeId=7239 minecraft:chemistry_table;chemistry_table_type=element_constructor;direction=0 blockId=238 -runtimeId=1075 +runtimeId=7244 minecraft:chemistry_table;chemistry_table_type=element_constructor;direction=1 blockId=238 -runtimeId=1076 +runtimeId=7245 minecraft:chemistry_table;chemistry_table_type=element_constructor;direction=2 blockId=238 -runtimeId=1077 +runtimeId=7246 minecraft:chemistry_table;chemistry_table_type=element_constructor;direction=3 blockId=238 -runtimeId=1078 +runtimeId=7247 minecraft:chemistry_table;chemistry_table_type=lab_table;direction=0 blockId=238 -runtimeId=1079 +runtimeId=7248 minecraft:chemistry_table;chemistry_table_type=lab_table;direction=1 blockId=238 -runtimeId=1080 +runtimeId=7249 minecraft:chemistry_table;chemistry_table_type=lab_table;direction=2 blockId=238 -runtimeId=1081 +runtimeId=7250 minecraft:chemistry_table;chemistry_table_type=lab_table;direction=3 blockId=238 -runtimeId=1082 +runtimeId=7251 minecraft:chemistry_table;chemistry_table_type=material_reducer;direction=0 blockId=238 -runtimeId=1071 +runtimeId=7240 minecraft:chemistry_table;chemistry_table_type=material_reducer;direction=1 blockId=238 -runtimeId=1072 +runtimeId=7241 minecraft:chemistry_table;chemistry_table_type=material_reducer;direction=2 blockId=238 -runtimeId=1073 +runtimeId=7242 minecraft:chemistry_table;chemistry_table_type=material_reducer;direction=3 blockId=238 -runtimeId=1074 +runtimeId=7243 minecraft:chest;facing_direction=0 blockId=54 -runtimeId=1083 +runtimeId=7057 minecraft:chest;facing_direction=1 blockId=54 -runtimeId=1084 +runtimeId=7058 minecraft:chest;facing_direction=2 blockId=54 -runtimeId=1085 +runtimeId=7059 minecraft:chest;facing_direction=3 blockId=54 -runtimeId=1086 +runtimeId=7060 minecraft:chest;facing_direction=4 blockId=54 -runtimeId=1087 +runtimeId=7061 minecraft:chest;facing_direction=5 blockId=54 -runtimeId=1088 +runtimeId=7062 minecraft:chiseled_deepslate blockId=650 -runtimeId=1089 +runtimeId=5190 minecraft:chiseled_nether_bricks blockId=557 -runtimeId=1090 +runtimeId=7191 minecraft:chiseled_polished_blackstone blockId=534 -runtimeId=1091 +runtimeId=5018 minecraft:chorus_flower;age=0 blockId=200 -runtimeId=1092 +runtimeId=4462 minecraft:chorus_flower;age=1 blockId=200 -runtimeId=1093 +runtimeId=4463 minecraft:chorus_flower;age=2 blockId=200 -runtimeId=1094 +runtimeId=4464 minecraft:chorus_flower;age=3 blockId=200 -runtimeId=1095 +runtimeId=4465 minecraft:chorus_flower;age=4 blockId=200 -runtimeId=1096 +runtimeId=4466 minecraft:chorus_flower;age=5 blockId=200 -runtimeId=1097 +runtimeId=4467 minecraft:chorus_plant blockId=240 -runtimeId=1098 +runtimeId=5455 minecraft:clay blockId=82 -runtimeId=1099 +runtimeId=7066 + +minecraft:client_request_placeholder_block +blockId=720 +runtimeId=4236 minecraft:coal_block blockId=173 -runtimeId=1100 +runtimeId=5348 minecraft:coal_ore blockId=16 -runtimeId=1101 +runtimeId=4235 minecraft:cobbled_deepslate blockId=634 -runtimeId=1102 +runtimeId=6544 minecraft:cobbled_deepslate_double_slab;top_slot_bit=0 blockId=651 -runtimeId=1103 +runtimeId=5775 minecraft:cobbled_deepslate_double_slab;top_slot_bit=1 blockId=651 -runtimeId=1104 +runtimeId=5776 minecraft:cobbled_deepslate_slab;top_slot_bit=0 blockId=635 -runtimeId=1105 +runtimeId=7252 minecraft:cobbled_deepslate_slab;top_slot_bit=1 blockId=635 -runtimeId=1106 +runtimeId=7253 minecraft:cobbled_deepslate_stairs;upside_down_bit=0;weirdo_direction=0 blockId=636 -runtimeId=1107 +runtimeId=147 minecraft:cobbled_deepslate_stairs;upside_down_bit=0;weirdo_direction=1 blockId=636 -runtimeId=1108 +runtimeId=148 minecraft:cobbled_deepslate_stairs;upside_down_bit=0;weirdo_direction=2 blockId=636 -runtimeId=1109 +runtimeId=149 minecraft:cobbled_deepslate_stairs;upside_down_bit=0;weirdo_direction=3 blockId=636 -runtimeId=1110 +runtimeId=150 minecraft:cobbled_deepslate_stairs;upside_down_bit=1;weirdo_direction=0 blockId=636 -runtimeId=1111 +runtimeId=151 minecraft:cobbled_deepslate_stairs;upside_down_bit=1;weirdo_direction=1 blockId=636 -runtimeId=1112 +runtimeId=152 minecraft:cobbled_deepslate_stairs;upside_down_bit=1;weirdo_direction=2 blockId=636 -runtimeId=1113 +runtimeId=153 minecraft:cobbled_deepslate_stairs;upside_down_bit=1;weirdo_direction=3 blockId=636 -runtimeId=1114 +runtimeId=154 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=637 -runtimeId=1115 +runtimeId=8024 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=637 -runtimeId=1117 +runtimeId=8026 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=637 -runtimeId=1119 +runtimeId=8028 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=637 -runtimeId=1169 +runtimeId=8078 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=637 -runtimeId=1171 +runtimeId=8080 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=637 -runtimeId=1173 +runtimeId=8082 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=637 -runtimeId=1223 +runtimeId=8132 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=637 -runtimeId=1225 +runtimeId=8134 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=637 -runtimeId=1227 +runtimeId=8136 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=637 -runtimeId=1133 +runtimeId=8042 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=637 -runtimeId=1135 +runtimeId=8044 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=637 -runtimeId=1137 +runtimeId=8046 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=637 -runtimeId=1187 +runtimeId=8096 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=637 -runtimeId=1189 +runtimeId=8098 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=637 -runtimeId=1191 +runtimeId=8100 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=637 -runtimeId=1241 +runtimeId=8150 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=637 -runtimeId=1243 +runtimeId=8152 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=637 -runtimeId=1245 +runtimeId=8154 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=637 -runtimeId=1151 +runtimeId=8060 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=637 -runtimeId=1153 +runtimeId=8062 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=637 -runtimeId=1155 +runtimeId=8064 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=637 -runtimeId=1205 +runtimeId=8114 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=637 -runtimeId=1207 +runtimeId=8116 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=637 -runtimeId=1209 +runtimeId=8118 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=637 -runtimeId=1259 +runtimeId=8168 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=637 -runtimeId=1261 +runtimeId=8170 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=637 -runtimeId=1263 +runtimeId=8172 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=637 -runtimeId=1116 +runtimeId=8025 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=637 -runtimeId=1118 +runtimeId=8027 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=637 -runtimeId=1120 +runtimeId=8029 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=637 -runtimeId=1170 +runtimeId=8079 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=637 -runtimeId=1172 +runtimeId=8081 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=637 -runtimeId=1174 +runtimeId=8083 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=637 -runtimeId=1224 +runtimeId=8133 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=637 -runtimeId=1226 +runtimeId=8135 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=637 -runtimeId=1228 +runtimeId=8137 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=637 -runtimeId=1134 +runtimeId=8043 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=637 -runtimeId=1136 +runtimeId=8045 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=637 -runtimeId=1138 +runtimeId=8047 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=637 -runtimeId=1188 +runtimeId=8097 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=637 -runtimeId=1190 +runtimeId=8099 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=637 -runtimeId=1192 +runtimeId=8101 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=637 -runtimeId=1242 +runtimeId=8151 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=637 -runtimeId=1244 +runtimeId=8153 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=637 -runtimeId=1246 +runtimeId=8155 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=637 -runtimeId=1152 +runtimeId=8061 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=637 -runtimeId=1154 +runtimeId=8063 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=637 -runtimeId=1156 +runtimeId=8065 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=637 -runtimeId=1206 +runtimeId=8115 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=637 -runtimeId=1208 +runtimeId=8117 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=637 -runtimeId=1210 +runtimeId=8119 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=637 -runtimeId=1260 +runtimeId=8169 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=637 -runtimeId=1262 +runtimeId=8171 minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=637 -runtimeId=1264 +runtimeId=8173 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=637 -runtimeId=1121 +runtimeId=8030 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=637 -runtimeId=1123 +runtimeId=8032 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=637 -runtimeId=1125 +runtimeId=8034 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=637 -runtimeId=1175 +runtimeId=8084 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=637 -runtimeId=1177 +runtimeId=8086 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=637 -runtimeId=1179 +runtimeId=8088 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=637 -runtimeId=1229 +runtimeId=8138 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=637 -runtimeId=1231 +runtimeId=8140 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=637 -runtimeId=1233 +runtimeId=8142 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=637 -runtimeId=1139 +runtimeId=8048 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=637 -runtimeId=1141 +runtimeId=8050 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=637 -runtimeId=1143 +runtimeId=8052 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=637 -runtimeId=1193 +runtimeId=8102 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=637 -runtimeId=1195 +runtimeId=8104 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=637 -runtimeId=1197 +runtimeId=8106 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=637 -runtimeId=1247 +runtimeId=8156 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=637 -runtimeId=1249 +runtimeId=8158 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=637 -runtimeId=1251 +runtimeId=8160 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=637 -runtimeId=1157 +runtimeId=8066 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=637 -runtimeId=1159 +runtimeId=8068 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=637 -runtimeId=1161 +runtimeId=8070 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=637 -runtimeId=1211 +runtimeId=8120 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=637 -runtimeId=1213 +runtimeId=8122 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=637 -runtimeId=1215 +runtimeId=8124 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=637 -runtimeId=1265 +runtimeId=8174 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=637 -runtimeId=1267 +runtimeId=8176 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=637 -runtimeId=1269 +runtimeId=8178 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=637 -runtimeId=1122 +runtimeId=8031 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=637 -runtimeId=1124 +runtimeId=8033 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=637 -runtimeId=1126 +runtimeId=8035 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=637 -runtimeId=1176 +runtimeId=8085 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=637 -runtimeId=1178 +runtimeId=8087 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=637 -runtimeId=1180 +runtimeId=8089 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=637 -runtimeId=1230 +runtimeId=8139 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=637 -runtimeId=1232 +runtimeId=8141 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=637 -runtimeId=1234 +runtimeId=8143 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=637 -runtimeId=1140 +runtimeId=8049 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=637 -runtimeId=1142 +runtimeId=8051 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=637 -runtimeId=1144 +runtimeId=8053 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=637 -runtimeId=1194 +runtimeId=8103 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=637 -runtimeId=1196 +runtimeId=8105 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=637 -runtimeId=1198 +runtimeId=8107 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=637 -runtimeId=1248 +runtimeId=8157 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=637 -runtimeId=1250 +runtimeId=8159 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=637 -runtimeId=1252 +runtimeId=8161 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=637 -runtimeId=1158 +runtimeId=8067 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=637 -runtimeId=1160 +runtimeId=8069 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=637 -runtimeId=1162 +runtimeId=8071 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=637 -runtimeId=1212 +runtimeId=8121 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=637 -runtimeId=1214 +runtimeId=8123 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=637 -runtimeId=1216 +runtimeId=8125 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=637 -runtimeId=1266 +runtimeId=8175 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=637 -runtimeId=1268 +runtimeId=8177 minecraft:cobbled_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=637 -runtimeId=1270 +runtimeId=8179 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=637 -runtimeId=1127 +runtimeId=8036 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=637 -runtimeId=1129 +runtimeId=8038 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=637 -runtimeId=1131 +runtimeId=8040 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=637 -runtimeId=1181 +runtimeId=8090 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=637 -runtimeId=1183 +runtimeId=8092 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=637 -runtimeId=1185 +runtimeId=8094 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=637 -runtimeId=1235 +runtimeId=8144 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=637 -runtimeId=1237 +runtimeId=8146 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=637 -runtimeId=1239 +runtimeId=8148 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=637 -runtimeId=1145 +runtimeId=8054 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=637 -runtimeId=1147 +runtimeId=8056 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=637 -runtimeId=1149 +runtimeId=8058 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=637 -runtimeId=1199 +runtimeId=8108 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=637 -runtimeId=1201 +runtimeId=8110 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=637 -runtimeId=1203 +runtimeId=8112 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=637 -runtimeId=1253 +runtimeId=8162 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=637 -runtimeId=1255 +runtimeId=8164 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=637 -runtimeId=1257 +runtimeId=8166 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=637 -runtimeId=1163 +runtimeId=8072 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=637 -runtimeId=1165 +runtimeId=8074 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=637 -runtimeId=1167 +runtimeId=8076 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=637 -runtimeId=1217 +runtimeId=8126 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=637 -runtimeId=1219 +runtimeId=8128 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=637 -runtimeId=1221 +runtimeId=8130 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=637 -runtimeId=1271 +runtimeId=8180 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=637 -runtimeId=1273 +runtimeId=8182 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=637 -runtimeId=1275 +runtimeId=8184 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=637 -runtimeId=1128 +runtimeId=8037 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=637 -runtimeId=1130 +runtimeId=8039 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=637 -runtimeId=1132 +runtimeId=8041 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=637 -runtimeId=1182 +runtimeId=8091 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=637 -runtimeId=1184 +runtimeId=8093 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=637 -runtimeId=1186 +runtimeId=8095 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=637 -runtimeId=1236 +runtimeId=8145 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=637 -runtimeId=1238 +runtimeId=8147 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=637 -runtimeId=1240 +runtimeId=8149 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=637 -runtimeId=1146 +runtimeId=8055 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=637 -runtimeId=1148 +runtimeId=8057 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=637 -runtimeId=1150 +runtimeId=8059 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=637 -runtimeId=1200 +runtimeId=8109 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=637 -runtimeId=1202 +runtimeId=8111 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=637 -runtimeId=1204 +runtimeId=8113 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=637 -runtimeId=1254 +runtimeId=8163 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=637 -runtimeId=1256 +runtimeId=8165 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=637 -runtimeId=1258 +runtimeId=8167 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=637 -runtimeId=1164 +runtimeId=8073 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=637 -runtimeId=1166 +runtimeId=8075 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=637 -runtimeId=1168 +runtimeId=8077 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=637 -runtimeId=1218 +runtimeId=8127 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=637 -runtimeId=1220 +runtimeId=8129 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=637 -runtimeId=1222 +runtimeId=8131 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=637 -runtimeId=1272 +runtimeId=8181 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=637 -runtimeId=1274 +runtimeId=8183 minecraft:cobbled_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=637 -runtimeId=1276 +runtimeId=8185 minecraft:cobblestone blockId=4 -runtimeId=1277 +runtimeId=3620 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=1282 +runtimeId=1191 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=1284 +runtimeId=1193 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=1278 +runtimeId=1187 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=1281 +runtimeId=1190 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=1288 +runtimeId=1197 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=1280 +runtimeId=1189 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1279 +runtimeId=1188 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1286 +runtimeId=1195 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=1287 +runtimeId=1196 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=1289 +runtimeId=1198 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=1291 +runtimeId=1200 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=1290 +runtimeId=1199 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=1283 +runtimeId=1192 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=1285 +runtimeId=1194 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=1310 +runtimeId=1219 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=1312 +runtimeId=1221 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=1306 +runtimeId=1215 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=1309 +runtimeId=1218 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=1316 +runtimeId=1225 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=1308 +runtimeId=1217 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1307 +runtimeId=1216 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1314 +runtimeId=1223 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=1315 +runtimeId=1224 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=1317 +runtimeId=1226 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=1319 +runtimeId=1228 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=1318 +runtimeId=1227 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=1311 +runtimeId=1220 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=1313 +runtimeId=1222 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=1338 +runtimeId=1247 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=1340 +runtimeId=1249 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=1334 +runtimeId=1243 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=1337 +runtimeId=1246 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=1344 +runtimeId=1253 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=1336 +runtimeId=1245 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1335 +runtimeId=1244 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1342 +runtimeId=1251 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=1343 +runtimeId=1252 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=1345 +runtimeId=1254 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=1347 +runtimeId=1256 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=1346 +runtimeId=1255 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=1339 +runtimeId=1248 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=1341 +runtimeId=1250 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2038 +runtimeId=1947 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2040 +runtimeId=1949 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2034 +runtimeId=1943 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2037 +runtimeId=1946 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2044 +runtimeId=1953 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2036 +runtimeId=1945 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2035 +runtimeId=1944 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2042 +runtimeId=1951 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2043 +runtimeId=1952 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2045 +runtimeId=1954 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2047 +runtimeId=1956 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2046 +runtimeId=1955 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2039 +runtimeId=1948 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2041 +runtimeId=1950 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2066 +runtimeId=1975 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2068 +runtimeId=1977 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2062 +runtimeId=1971 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2065 +runtimeId=1974 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2072 +runtimeId=1981 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2064 +runtimeId=1973 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2063 +runtimeId=1972 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2070 +runtimeId=1979 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2071 +runtimeId=1980 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2073 +runtimeId=1982 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2075 +runtimeId=1984 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2074 +runtimeId=1983 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2067 +runtimeId=1976 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2069 +runtimeId=1978 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2094 +runtimeId=2003 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2096 +runtimeId=2005 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2090 +runtimeId=1999 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2093 +runtimeId=2002 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2100 +runtimeId=2009 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2092 +runtimeId=2001 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2091 +runtimeId=2000 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2098 +runtimeId=2007 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2099 +runtimeId=2008 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2101 +runtimeId=2010 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2103 +runtimeId=2012 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2102 +runtimeId=2011 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2095 +runtimeId=2004 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2097 +runtimeId=2006 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2794 +runtimeId=2703 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2796 +runtimeId=2705 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2790 +runtimeId=2699 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2793 +runtimeId=2702 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2800 +runtimeId=2709 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2792 +runtimeId=2701 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2791 +runtimeId=2700 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2798 +runtimeId=2707 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2799 +runtimeId=2708 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2801 +runtimeId=2710 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2803 +runtimeId=2712 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2802 +runtimeId=2711 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2795 +runtimeId=2704 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2797 +runtimeId=2706 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2822 +runtimeId=2731 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2824 +runtimeId=2733 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2818 +runtimeId=2727 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2821 +runtimeId=2730 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2828 +runtimeId=2737 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2820 +runtimeId=2729 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2819 +runtimeId=2728 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2826 +runtimeId=2735 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2827 +runtimeId=2736 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2829 +runtimeId=2738 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2831 +runtimeId=2740 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2830 +runtimeId=2739 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2823 +runtimeId=2732 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2825 +runtimeId=2734 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2850 +runtimeId=2759 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2852 +runtimeId=2761 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2846 +runtimeId=2755 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2849 +runtimeId=2758 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2856 +runtimeId=2765 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2848 +runtimeId=2757 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2847 +runtimeId=2756 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2854 +runtimeId=2763 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2855 +runtimeId=2764 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2857 +runtimeId=2766 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2859 +runtimeId=2768 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2858 +runtimeId=2767 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2851 +runtimeId=2760 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2853 +runtimeId=2762 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=1534 +runtimeId=1443 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=1536 +runtimeId=1445 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=1530 +runtimeId=1439 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=1533 +runtimeId=1442 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=1540 +runtimeId=1449 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=1532 +runtimeId=1441 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1531 +runtimeId=1440 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1538 +runtimeId=1447 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=1539 +runtimeId=1448 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=1541 +runtimeId=1450 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=1543 +runtimeId=1452 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=1542 +runtimeId=1451 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=1535 +runtimeId=1444 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=1537 +runtimeId=1446 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=1562 +runtimeId=1471 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=1564 +runtimeId=1473 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=1558 +runtimeId=1467 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=1561 +runtimeId=1470 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=1568 +runtimeId=1477 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=1560 +runtimeId=1469 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1559 +runtimeId=1468 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1566 +runtimeId=1475 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=1567 +runtimeId=1476 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=1569 +runtimeId=1478 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=1571 +runtimeId=1480 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=1570 +runtimeId=1479 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=1563 +runtimeId=1472 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=1565 +runtimeId=1474 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=1590 +runtimeId=1499 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=1592 +runtimeId=1501 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=1586 +runtimeId=1495 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=1589 +runtimeId=1498 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=1596 +runtimeId=1505 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=1588 +runtimeId=1497 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1587 +runtimeId=1496 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1594 +runtimeId=1503 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=1595 +runtimeId=1504 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=1597 +runtimeId=1506 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=1599 +runtimeId=1508 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=1598 +runtimeId=1507 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=1591 +runtimeId=1500 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=1593 +runtimeId=1502 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2290 +runtimeId=2199 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2292 +runtimeId=2201 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2286 +runtimeId=2195 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2289 +runtimeId=2198 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2296 +runtimeId=2205 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2288 +runtimeId=2197 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2287 +runtimeId=2196 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2294 +runtimeId=2203 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2295 +runtimeId=2204 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2297 +runtimeId=2206 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2299 +runtimeId=2208 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2298 +runtimeId=2207 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2291 +runtimeId=2200 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2293 +runtimeId=2202 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2318 +runtimeId=2227 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2320 +runtimeId=2229 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2314 +runtimeId=2223 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2317 +runtimeId=2226 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2324 +runtimeId=2233 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2316 +runtimeId=2225 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2315 +runtimeId=2224 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2322 +runtimeId=2231 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2323 +runtimeId=2232 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2325 +runtimeId=2234 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2327 +runtimeId=2236 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2326 +runtimeId=2235 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2319 +runtimeId=2228 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2321 +runtimeId=2230 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2346 +runtimeId=2255 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2348 +runtimeId=2257 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2342 +runtimeId=2251 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2345 +runtimeId=2254 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2352 +runtimeId=2261 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2344 +runtimeId=2253 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2343 +runtimeId=2252 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2350 +runtimeId=2259 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2351 +runtimeId=2260 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2353 +runtimeId=2262 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2355 +runtimeId=2264 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2354 +runtimeId=2263 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2347 +runtimeId=2256 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2349 +runtimeId=2258 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=3046 +runtimeId=2955 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=3048 +runtimeId=2957 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=3042 +runtimeId=2951 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=3045 +runtimeId=2954 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=3052 +runtimeId=2961 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=3044 +runtimeId=2953 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3043 +runtimeId=2952 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3050 +runtimeId=2959 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=3051 +runtimeId=2960 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=3053 +runtimeId=2962 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=3055 +runtimeId=2964 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=3054 +runtimeId=2963 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=3047 +runtimeId=2956 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=3049 +runtimeId=2958 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=3074 +runtimeId=2983 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=3076 +runtimeId=2985 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=3070 +runtimeId=2979 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=3073 +runtimeId=2982 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=3080 +runtimeId=2989 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=3072 +runtimeId=2981 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3071 +runtimeId=2980 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3078 +runtimeId=2987 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=3079 +runtimeId=2988 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=3081 +runtimeId=2990 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=3083 +runtimeId=2992 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=3082 +runtimeId=2991 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=3075 +runtimeId=2984 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=3077 +runtimeId=2986 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=3102 +runtimeId=3011 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=3104 +runtimeId=3013 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=3098 +runtimeId=3007 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=3101 +runtimeId=3010 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=3108 +runtimeId=3017 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=3100 +runtimeId=3009 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3099 +runtimeId=3008 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3106 +runtimeId=3015 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=3107 +runtimeId=3016 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=3109 +runtimeId=3018 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=3111 +runtimeId=3020 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=3110 +runtimeId=3019 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=3103 +runtimeId=3012 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=3105 +runtimeId=3014 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=1786 +runtimeId=1695 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=1788 +runtimeId=1697 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=1782 +runtimeId=1691 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=1785 +runtimeId=1694 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=1792 +runtimeId=1701 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=1784 +runtimeId=1693 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1783 +runtimeId=1692 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1790 +runtimeId=1699 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=1791 +runtimeId=1700 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=1793 +runtimeId=1702 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=1795 +runtimeId=1704 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=1794 +runtimeId=1703 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=1787 +runtimeId=1696 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=1789 +runtimeId=1698 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=1814 +runtimeId=1723 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=1816 +runtimeId=1725 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=1810 +runtimeId=1719 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=1813 +runtimeId=1722 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=1820 +runtimeId=1729 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=1812 +runtimeId=1721 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1811 +runtimeId=1720 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1818 +runtimeId=1727 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=1819 +runtimeId=1728 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=1821 +runtimeId=1730 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=1823 +runtimeId=1732 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=1822 +runtimeId=1731 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=1815 +runtimeId=1724 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=1817 +runtimeId=1726 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=1842 +runtimeId=1751 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=1844 +runtimeId=1753 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=1838 +runtimeId=1747 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=1841 +runtimeId=1750 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=1848 +runtimeId=1757 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=1840 +runtimeId=1749 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1839 +runtimeId=1748 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1846 +runtimeId=1755 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=1847 +runtimeId=1756 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=1849 +runtimeId=1758 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=1851 +runtimeId=1760 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=1850 +runtimeId=1759 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=1843 +runtimeId=1752 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=1845 +runtimeId=1754 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2542 +runtimeId=2451 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2544 +runtimeId=2453 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2538 +runtimeId=2447 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2541 +runtimeId=2450 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2548 +runtimeId=2457 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2540 +runtimeId=2449 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2539 +runtimeId=2448 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2546 +runtimeId=2455 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2547 +runtimeId=2456 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2549 +runtimeId=2458 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2551 +runtimeId=2460 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2550 +runtimeId=2459 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2543 +runtimeId=2452 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2545 +runtimeId=2454 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2570 +runtimeId=2479 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2572 +runtimeId=2481 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2566 +runtimeId=2475 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2569 +runtimeId=2478 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2576 +runtimeId=2485 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2568 +runtimeId=2477 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2567 +runtimeId=2476 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2574 +runtimeId=2483 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2575 +runtimeId=2484 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2577 +runtimeId=2486 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2579 +runtimeId=2488 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2578 +runtimeId=2487 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2571 +runtimeId=2480 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2573 +runtimeId=2482 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2598 +runtimeId=2507 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2600 +runtimeId=2509 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2594 +runtimeId=2503 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2597 +runtimeId=2506 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2604 +runtimeId=2513 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2596 +runtimeId=2505 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2595 +runtimeId=2504 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2602 +runtimeId=2511 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2603 +runtimeId=2512 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2605 +runtimeId=2514 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2607 +runtimeId=2516 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2606 +runtimeId=2515 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2599 +runtimeId=2508 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2601 +runtimeId=2510 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=3298 +runtimeId=3207 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=3300 +runtimeId=3209 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=3294 +runtimeId=3203 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=3297 +runtimeId=3206 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=3304 +runtimeId=3213 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=3296 +runtimeId=3205 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3295 +runtimeId=3204 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3302 +runtimeId=3211 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=3303 +runtimeId=3212 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=3305 +runtimeId=3214 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=3307 +runtimeId=3216 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=3306 +runtimeId=3215 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=3299 +runtimeId=3208 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=3301 +runtimeId=3210 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=3326 +runtimeId=3235 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=3328 +runtimeId=3237 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=3322 +runtimeId=3231 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=3325 +runtimeId=3234 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=3332 +runtimeId=3241 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=3324 +runtimeId=3233 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3323 +runtimeId=3232 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3330 +runtimeId=3239 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=3331 +runtimeId=3240 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=3333 +runtimeId=3242 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=3335 +runtimeId=3244 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=3334 +runtimeId=3243 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=3327 +runtimeId=3236 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=3329 +runtimeId=3238 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=3354 +runtimeId=3263 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=3356 +runtimeId=3265 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=3350 +runtimeId=3259 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=3353 +runtimeId=3262 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=3360 +runtimeId=3269 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=3352 +runtimeId=3261 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3351 +runtimeId=3260 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3358 +runtimeId=3267 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=3359 +runtimeId=3268 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=3361 +runtimeId=3270 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=3363 +runtimeId=3272 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=3362 +runtimeId=3271 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=3355 +runtimeId=3264 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=3357 +runtimeId=3266 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=1296 +runtimeId=1205 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=1298 +runtimeId=1207 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=1292 +runtimeId=1201 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=1295 +runtimeId=1204 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=1302 +runtimeId=1211 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=1294 +runtimeId=1203 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1293 +runtimeId=1202 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1300 +runtimeId=1209 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=1301 +runtimeId=1210 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=1303 +runtimeId=1212 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=1305 +runtimeId=1214 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=1304 +runtimeId=1213 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=1297 +runtimeId=1206 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=1299 +runtimeId=1208 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=1324 +runtimeId=1233 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=1326 +runtimeId=1235 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=1320 +runtimeId=1229 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=1323 +runtimeId=1232 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=1330 +runtimeId=1239 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=1322 +runtimeId=1231 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1321 +runtimeId=1230 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1328 +runtimeId=1237 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=1329 +runtimeId=1238 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=1331 +runtimeId=1240 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=1333 +runtimeId=1242 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=1332 +runtimeId=1241 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=1325 +runtimeId=1234 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=1327 +runtimeId=1236 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=1352 +runtimeId=1261 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=1354 +runtimeId=1263 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=1348 +runtimeId=1257 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=1351 +runtimeId=1260 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=1358 +runtimeId=1267 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=1350 +runtimeId=1259 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1349 +runtimeId=1258 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1356 +runtimeId=1265 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=1357 +runtimeId=1266 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=1359 +runtimeId=1268 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=1361 +runtimeId=1270 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=1360 +runtimeId=1269 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=1353 +runtimeId=1262 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=1355 +runtimeId=1264 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2052 +runtimeId=1961 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2054 +runtimeId=1963 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2048 +runtimeId=1957 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2051 +runtimeId=1960 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2058 +runtimeId=1967 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2050 +runtimeId=1959 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2049 +runtimeId=1958 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2056 +runtimeId=1965 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2057 +runtimeId=1966 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2059 +runtimeId=1968 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2061 +runtimeId=1970 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2060 +runtimeId=1969 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2053 +runtimeId=1962 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2055 +runtimeId=1964 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2080 +runtimeId=1989 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2082 +runtimeId=1991 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2076 +runtimeId=1985 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2079 +runtimeId=1988 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2086 +runtimeId=1995 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2078 +runtimeId=1987 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2077 +runtimeId=1986 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2084 +runtimeId=1993 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2085 +runtimeId=1994 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2087 +runtimeId=1996 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2089 +runtimeId=1998 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2088 +runtimeId=1997 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2081 +runtimeId=1990 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2083 +runtimeId=1992 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2108 +runtimeId=2017 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2110 +runtimeId=2019 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2104 +runtimeId=2013 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2107 +runtimeId=2016 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2114 +runtimeId=2023 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2106 +runtimeId=2015 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2105 +runtimeId=2014 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2112 +runtimeId=2021 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2113 +runtimeId=2022 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2115 +runtimeId=2024 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2117 +runtimeId=2026 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2116 +runtimeId=2025 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2109 +runtimeId=2018 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2111 +runtimeId=2020 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2808 +runtimeId=2717 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2810 +runtimeId=2719 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2804 +runtimeId=2713 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2807 +runtimeId=2716 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2814 +runtimeId=2723 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2806 +runtimeId=2715 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2805 +runtimeId=2714 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2812 +runtimeId=2721 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2813 +runtimeId=2722 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2815 +runtimeId=2724 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2817 +runtimeId=2726 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2816 +runtimeId=2725 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2809 +runtimeId=2718 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2811 +runtimeId=2720 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2836 +runtimeId=2745 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2838 +runtimeId=2747 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2832 +runtimeId=2741 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2835 +runtimeId=2744 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2842 +runtimeId=2751 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2834 +runtimeId=2743 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2833 +runtimeId=2742 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2840 +runtimeId=2749 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2841 +runtimeId=2750 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2843 +runtimeId=2752 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2845 +runtimeId=2754 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2844 +runtimeId=2753 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2837 +runtimeId=2746 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2839 +runtimeId=2748 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2864 +runtimeId=2773 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2866 +runtimeId=2775 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2860 +runtimeId=2769 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2863 +runtimeId=2772 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2870 +runtimeId=2779 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2862 +runtimeId=2771 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2861 +runtimeId=2770 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2868 +runtimeId=2777 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2869 +runtimeId=2778 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2871 +runtimeId=2780 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2873 +runtimeId=2782 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2872 +runtimeId=2781 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2865 +runtimeId=2774 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2867 +runtimeId=2776 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=1548 +runtimeId=1457 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=1550 +runtimeId=1459 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=1544 +runtimeId=1453 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=1547 +runtimeId=1456 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=1554 +runtimeId=1463 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=1546 +runtimeId=1455 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1545 +runtimeId=1454 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1552 +runtimeId=1461 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=1553 +runtimeId=1462 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=1555 +runtimeId=1464 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=1557 +runtimeId=1466 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=1556 +runtimeId=1465 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=1549 +runtimeId=1458 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=1551 +runtimeId=1460 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=1576 +runtimeId=1485 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=1578 +runtimeId=1487 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=1572 +runtimeId=1481 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=1575 +runtimeId=1484 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=1582 +runtimeId=1491 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=1574 +runtimeId=1483 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1573 +runtimeId=1482 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1580 +runtimeId=1489 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=1581 +runtimeId=1490 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=1583 +runtimeId=1492 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=1585 +runtimeId=1494 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=1584 +runtimeId=1493 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=1577 +runtimeId=1486 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=1579 +runtimeId=1488 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=1604 +runtimeId=1513 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=1606 +runtimeId=1515 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=1600 +runtimeId=1509 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=1603 +runtimeId=1512 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=1610 +runtimeId=1519 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=1602 +runtimeId=1511 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1601 +runtimeId=1510 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1608 +runtimeId=1517 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=1609 +runtimeId=1518 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=1611 +runtimeId=1520 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=1613 +runtimeId=1522 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=1612 +runtimeId=1521 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=1605 +runtimeId=1514 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=1607 +runtimeId=1516 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2304 +runtimeId=2213 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2306 +runtimeId=2215 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2300 +runtimeId=2209 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2303 +runtimeId=2212 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2310 +runtimeId=2219 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2302 +runtimeId=2211 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2301 +runtimeId=2210 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2308 +runtimeId=2217 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2309 +runtimeId=2218 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2311 +runtimeId=2220 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2313 +runtimeId=2222 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2312 +runtimeId=2221 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2305 +runtimeId=2214 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2307 +runtimeId=2216 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2332 +runtimeId=2241 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2334 +runtimeId=2243 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2328 +runtimeId=2237 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2331 +runtimeId=2240 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2338 +runtimeId=2247 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2330 +runtimeId=2239 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2329 +runtimeId=2238 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2336 +runtimeId=2245 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2337 +runtimeId=2246 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2339 +runtimeId=2248 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2341 +runtimeId=2250 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2340 +runtimeId=2249 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2333 +runtimeId=2242 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2335 +runtimeId=2244 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2360 +runtimeId=2269 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2362 +runtimeId=2271 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2356 +runtimeId=2265 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2359 +runtimeId=2268 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2366 +runtimeId=2275 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2358 +runtimeId=2267 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2357 +runtimeId=2266 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2364 +runtimeId=2273 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2365 +runtimeId=2274 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2367 +runtimeId=2276 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2369 +runtimeId=2278 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2368 +runtimeId=2277 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2361 +runtimeId=2270 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2363 +runtimeId=2272 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=3060 +runtimeId=2969 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=3062 +runtimeId=2971 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=3056 +runtimeId=2965 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=3059 +runtimeId=2968 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=3066 +runtimeId=2975 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=3058 +runtimeId=2967 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3057 +runtimeId=2966 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3064 +runtimeId=2973 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=3065 +runtimeId=2974 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=3067 +runtimeId=2976 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=3069 +runtimeId=2978 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=3068 +runtimeId=2977 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=3061 +runtimeId=2970 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=3063 +runtimeId=2972 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=3088 +runtimeId=2997 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=3090 +runtimeId=2999 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=3084 +runtimeId=2993 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=3087 +runtimeId=2996 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=3094 +runtimeId=3003 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=3086 +runtimeId=2995 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3085 +runtimeId=2994 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3092 +runtimeId=3001 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=3093 +runtimeId=3002 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=3095 +runtimeId=3004 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=3097 +runtimeId=3006 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=3096 +runtimeId=3005 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=3089 +runtimeId=2998 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=3091 +runtimeId=3000 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=3116 +runtimeId=3025 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=3118 +runtimeId=3027 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=3112 +runtimeId=3021 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=3115 +runtimeId=3024 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=3122 +runtimeId=3031 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=3114 +runtimeId=3023 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3113 +runtimeId=3022 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3120 +runtimeId=3029 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=3121 +runtimeId=3030 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=3123 +runtimeId=3032 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=3125 +runtimeId=3034 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=3124 +runtimeId=3033 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=3117 +runtimeId=3026 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=3119 +runtimeId=3028 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=1800 +runtimeId=1709 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=1802 +runtimeId=1711 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=1796 +runtimeId=1705 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=1799 +runtimeId=1708 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=1806 +runtimeId=1715 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=1798 +runtimeId=1707 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1797 +runtimeId=1706 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1804 +runtimeId=1713 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=1805 +runtimeId=1714 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=1807 +runtimeId=1716 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=1809 +runtimeId=1718 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=1808 +runtimeId=1717 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=1801 +runtimeId=1710 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=1803 +runtimeId=1712 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=1828 +runtimeId=1737 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=1830 +runtimeId=1739 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=1824 +runtimeId=1733 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=1827 +runtimeId=1736 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=1834 +runtimeId=1743 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=1826 +runtimeId=1735 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1825 +runtimeId=1734 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1832 +runtimeId=1741 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=1833 +runtimeId=1742 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=1835 +runtimeId=1744 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=1837 +runtimeId=1746 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=1836 +runtimeId=1745 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=1829 +runtimeId=1738 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=1831 +runtimeId=1740 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=1856 +runtimeId=1765 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=1858 +runtimeId=1767 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=1852 +runtimeId=1761 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=1855 +runtimeId=1764 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=1862 +runtimeId=1771 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=1854 +runtimeId=1763 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1853 +runtimeId=1762 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1860 +runtimeId=1769 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=1861 +runtimeId=1770 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=1863 +runtimeId=1772 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=1865 +runtimeId=1774 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=1864 +runtimeId=1773 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=1857 +runtimeId=1766 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=1859 +runtimeId=1768 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2556 +runtimeId=2465 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2558 +runtimeId=2467 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2552 +runtimeId=2461 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2555 +runtimeId=2464 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2562 +runtimeId=2471 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2554 +runtimeId=2463 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2553 +runtimeId=2462 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2560 +runtimeId=2469 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2561 +runtimeId=2470 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2563 +runtimeId=2472 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2565 +runtimeId=2474 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2564 +runtimeId=2473 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2557 +runtimeId=2466 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2559 +runtimeId=2468 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2584 +runtimeId=2493 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2586 +runtimeId=2495 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2580 +runtimeId=2489 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2583 +runtimeId=2492 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2590 +runtimeId=2499 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2582 +runtimeId=2491 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2581 +runtimeId=2490 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2588 +runtimeId=2497 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2589 +runtimeId=2498 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2591 +runtimeId=2500 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2593 +runtimeId=2502 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2592 +runtimeId=2501 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2585 +runtimeId=2494 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2587 +runtimeId=2496 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2612 +runtimeId=2521 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2614 +runtimeId=2523 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2608 +runtimeId=2517 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2611 +runtimeId=2520 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2618 +runtimeId=2527 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2610 +runtimeId=2519 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2609 +runtimeId=2518 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2616 +runtimeId=2525 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2617 +runtimeId=2526 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2619 +runtimeId=2528 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2621 +runtimeId=2530 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2620 +runtimeId=2529 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2613 +runtimeId=2522 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2615 +runtimeId=2524 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=3312 +runtimeId=3221 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=3314 +runtimeId=3223 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=3308 +runtimeId=3217 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=3311 +runtimeId=3220 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=3318 +runtimeId=3227 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=3310 +runtimeId=3219 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3309 +runtimeId=3218 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3316 +runtimeId=3225 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=3317 +runtimeId=3226 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=3319 +runtimeId=3228 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=3321 +runtimeId=3230 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=3320 +runtimeId=3229 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=3313 +runtimeId=3222 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=3315 +runtimeId=3224 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=3340 +runtimeId=3249 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=3342 +runtimeId=3251 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=3336 +runtimeId=3245 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=3339 +runtimeId=3248 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=3346 +runtimeId=3255 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=3338 +runtimeId=3247 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3337 +runtimeId=3246 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3344 +runtimeId=3253 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=3345 +runtimeId=3254 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=3347 +runtimeId=3256 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=3349 +runtimeId=3258 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=3348 +runtimeId=3257 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=3341 +runtimeId=3250 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=3343 +runtimeId=3252 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=3368 +runtimeId=3277 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=3370 +runtimeId=3279 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=3364 +runtimeId=3273 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=3367 +runtimeId=3276 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=3374 +runtimeId=3283 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=3366 +runtimeId=3275 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3365 +runtimeId=3274 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3372 +runtimeId=3281 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=3373 +runtimeId=3282 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=3375 +runtimeId=3284 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=3377 +runtimeId=3286 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=3376 +runtimeId=3285 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=3369 +runtimeId=3278 minecraft:cobblestone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=3371 +runtimeId=3280 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=1366 +runtimeId=1275 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=1368 +runtimeId=1277 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=1362 +runtimeId=1271 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=1365 +runtimeId=1274 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=1372 +runtimeId=1281 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=1364 +runtimeId=1273 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1363 +runtimeId=1272 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1370 +runtimeId=1279 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=1371 +runtimeId=1280 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=1373 +runtimeId=1282 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=1375 +runtimeId=1284 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=1374 +runtimeId=1283 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=1367 +runtimeId=1276 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=1369 +runtimeId=1278 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=1394 +runtimeId=1303 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=1396 +runtimeId=1305 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=1390 +runtimeId=1299 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=1393 +runtimeId=1302 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=1400 +runtimeId=1309 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=1392 +runtimeId=1301 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1391 +runtimeId=1300 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1398 +runtimeId=1307 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=1399 +runtimeId=1308 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=1401 +runtimeId=1310 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=1403 +runtimeId=1312 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=1402 +runtimeId=1311 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=1395 +runtimeId=1304 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=1397 +runtimeId=1306 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=1422 +runtimeId=1331 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=1424 +runtimeId=1333 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=1418 +runtimeId=1327 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=1421 +runtimeId=1330 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=1428 +runtimeId=1337 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=1420 +runtimeId=1329 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1419 +runtimeId=1328 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1426 +runtimeId=1335 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=1427 +runtimeId=1336 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=1429 +runtimeId=1338 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=1431 +runtimeId=1340 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=1430 +runtimeId=1339 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=1423 +runtimeId=1332 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=1425 +runtimeId=1334 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2122 +runtimeId=2031 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2124 +runtimeId=2033 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2118 +runtimeId=2027 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2121 +runtimeId=2030 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2128 +runtimeId=2037 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2120 +runtimeId=2029 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2119 +runtimeId=2028 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2126 +runtimeId=2035 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2127 +runtimeId=2036 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2129 +runtimeId=2038 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2131 +runtimeId=2040 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2130 +runtimeId=2039 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2123 +runtimeId=2032 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2125 +runtimeId=2034 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2150 +runtimeId=2059 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2152 +runtimeId=2061 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2146 +runtimeId=2055 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2149 +runtimeId=2058 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2156 +runtimeId=2065 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2148 +runtimeId=2057 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2147 +runtimeId=2056 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2154 +runtimeId=2063 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2155 +runtimeId=2064 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2157 +runtimeId=2066 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2159 +runtimeId=2068 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2158 +runtimeId=2067 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2151 +runtimeId=2060 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2153 +runtimeId=2062 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2178 +runtimeId=2087 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2180 +runtimeId=2089 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2174 +runtimeId=2083 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2177 +runtimeId=2086 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2184 +runtimeId=2093 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2176 +runtimeId=2085 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2175 +runtimeId=2084 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2182 +runtimeId=2091 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2183 +runtimeId=2092 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2185 +runtimeId=2094 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2187 +runtimeId=2096 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2186 +runtimeId=2095 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2179 +runtimeId=2088 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2181 +runtimeId=2090 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2878 +runtimeId=2787 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2880 +runtimeId=2789 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2874 +runtimeId=2783 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2877 +runtimeId=2786 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2884 +runtimeId=2793 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2876 +runtimeId=2785 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2875 +runtimeId=2784 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2882 +runtimeId=2791 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2883 +runtimeId=2792 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2885 +runtimeId=2794 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2887 +runtimeId=2796 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2886 +runtimeId=2795 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2879 +runtimeId=2788 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2881 +runtimeId=2790 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2906 +runtimeId=2815 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2908 +runtimeId=2817 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2902 +runtimeId=2811 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2905 +runtimeId=2814 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2912 +runtimeId=2821 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2904 +runtimeId=2813 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2903 +runtimeId=2812 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2910 +runtimeId=2819 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2911 +runtimeId=2820 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2913 +runtimeId=2822 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2915 +runtimeId=2824 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2914 +runtimeId=2823 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2907 +runtimeId=2816 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2909 +runtimeId=2818 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2934 +runtimeId=2843 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2936 +runtimeId=2845 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2930 +runtimeId=2839 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2933 +runtimeId=2842 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2940 +runtimeId=2849 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2932 +runtimeId=2841 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2931 +runtimeId=2840 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2938 +runtimeId=2847 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2939 +runtimeId=2848 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2941 +runtimeId=2850 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2943 +runtimeId=2852 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2942 +runtimeId=2851 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2935 +runtimeId=2844 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2937 +runtimeId=2846 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=1618 +runtimeId=1527 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=1620 +runtimeId=1529 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=1614 +runtimeId=1523 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=1617 +runtimeId=1526 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=1624 +runtimeId=1533 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=1616 +runtimeId=1525 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1615 +runtimeId=1524 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1622 +runtimeId=1531 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=1623 +runtimeId=1532 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=1625 +runtimeId=1534 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=1627 +runtimeId=1536 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=1626 +runtimeId=1535 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=1619 +runtimeId=1528 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=1621 +runtimeId=1530 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=1646 +runtimeId=1555 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=1648 +runtimeId=1557 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=1642 +runtimeId=1551 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=1645 +runtimeId=1554 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=1652 +runtimeId=1561 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=1644 +runtimeId=1553 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1643 +runtimeId=1552 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1650 +runtimeId=1559 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=1651 +runtimeId=1560 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=1653 +runtimeId=1562 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=1655 +runtimeId=1564 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=1654 +runtimeId=1563 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=1647 +runtimeId=1556 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=1649 +runtimeId=1558 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=1674 +runtimeId=1583 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=1676 +runtimeId=1585 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=1670 +runtimeId=1579 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=1673 +runtimeId=1582 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=1680 +runtimeId=1589 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=1672 +runtimeId=1581 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1671 +runtimeId=1580 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1678 +runtimeId=1587 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=1679 +runtimeId=1588 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=1681 +runtimeId=1590 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=1683 +runtimeId=1592 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=1682 +runtimeId=1591 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=1675 +runtimeId=1584 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=1677 +runtimeId=1586 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2374 +runtimeId=2283 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2376 +runtimeId=2285 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2370 +runtimeId=2279 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2373 +runtimeId=2282 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2380 +runtimeId=2289 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2372 +runtimeId=2281 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2371 +runtimeId=2280 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2378 +runtimeId=2287 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2379 +runtimeId=2288 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2381 +runtimeId=2290 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2383 +runtimeId=2292 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2382 +runtimeId=2291 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2375 +runtimeId=2284 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2377 +runtimeId=2286 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2402 +runtimeId=2311 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2404 +runtimeId=2313 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2398 +runtimeId=2307 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2401 +runtimeId=2310 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2408 +runtimeId=2317 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2400 +runtimeId=2309 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2399 +runtimeId=2308 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2406 +runtimeId=2315 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2407 +runtimeId=2316 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2409 +runtimeId=2318 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2411 +runtimeId=2320 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2410 +runtimeId=2319 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2403 +runtimeId=2312 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2405 +runtimeId=2314 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2430 +runtimeId=2339 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2432 +runtimeId=2341 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2426 +runtimeId=2335 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2429 +runtimeId=2338 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2436 +runtimeId=2345 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2428 +runtimeId=2337 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2427 +runtimeId=2336 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2434 +runtimeId=2343 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2435 +runtimeId=2344 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2437 +runtimeId=2346 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2439 +runtimeId=2348 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2438 +runtimeId=2347 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2431 +runtimeId=2340 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2433 +runtimeId=2342 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=3130 +runtimeId=3039 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=3132 +runtimeId=3041 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=3126 +runtimeId=3035 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=3129 +runtimeId=3038 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=3136 +runtimeId=3045 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=3128 +runtimeId=3037 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3127 +runtimeId=3036 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3134 +runtimeId=3043 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=3135 +runtimeId=3044 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=3137 +runtimeId=3046 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=3139 +runtimeId=3048 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=3138 +runtimeId=3047 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=3131 +runtimeId=3040 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=3133 +runtimeId=3042 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=3158 +runtimeId=3067 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=3160 +runtimeId=3069 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=3154 +runtimeId=3063 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=3157 +runtimeId=3066 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=3164 +runtimeId=3073 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=3156 +runtimeId=3065 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3155 +runtimeId=3064 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3162 +runtimeId=3071 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=3163 +runtimeId=3072 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=3165 +runtimeId=3074 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=3167 +runtimeId=3076 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=3166 +runtimeId=3075 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=3159 +runtimeId=3068 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=3161 +runtimeId=3070 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=3186 +runtimeId=3095 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=3188 +runtimeId=3097 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=3182 +runtimeId=3091 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=3185 +runtimeId=3094 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=3192 +runtimeId=3101 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=3184 +runtimeId=3093 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3183 +runtimeId=3092 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3190 +runtimeId=3099 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=3191 +runtimeId=3100 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=3193 +runtimeId=3102 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=3195 +runtimeId=3104 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=3194 +runtimeId=3103 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=3187 +runtimeId=3096 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=3189 +runtimeId=3098 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=1870 +runtimeId=1779 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=1872 +runtimeId=1781 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=1866 +runtimeId=1775 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=1869 +runtimeId=1778 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=1876 +runtimeId=1785 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=1868 +runtimeId=1777 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1867 +runtimeId=1776 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1874 +runtimeId=1783 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=1875 +runtimeId=1784 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=1877 +runtimeId=1786 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=1879 +runtimeId=1788 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=1878 +runtimeId=1787 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=1871 +runtimeId=1780 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=1873 +runtimeId=1782 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=1898 +runtimeId=1807 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=1900 +runtimeId=1809 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=1894 +runtimeId=1803 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=1897 +runtimeId=1806 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=1904 +runtimeId=1813 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=1896 +runtimeId=1805 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1895 +runtimeId=1804 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1902 +runtimeId=1811 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=1903 +runtimeId=1812 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=1905 +runtimeId=1814 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=1907 +runtimeId=1816 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=1906 +runtimeId=1815 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=1899 +runtimeId=1808 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=1901 +runtimeId=1810 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=1926 +runtimeId=1835 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=1928 +runtimeId=1837 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=1922 +runtimeId=1831 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=1925 +runtimeId=1834 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=1932 +runtimeId=1841 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=1924 +runtimeId=1833 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1923 +runtimeId=1832 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1930 +runtimeId=1839 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=1931 +runtimeId=1840 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=1933 +runtimeId=1842 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=1935 +runtimeId=1844 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=1934 +runtimeId=1843 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=1927 +runtimeId=1836 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=1929 +runtimeId=1838 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2626 +runtimeId=2535 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2628 +runtimeId=2537 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2622 +runtimeId=2531 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2625 +runtimeId=2534 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2632 +runtimeId=2541 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2624 +runtimeId=2533 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2623 +runtimeId=2532 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2630 +runtimeId=2539 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2631 +runtimeId=2540 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2633 +runtimeId=2542 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2635 +runtimeId=2544 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2634 +runtimeId=2543 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2627 +runtimeId=2536 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2629 +runtimeId=2538 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2654 +runtimeId=2563 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2656 +runtimeId=2565 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2650 +runtimeId=2559 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2653 +runtimeId=2562 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2660 +runtimeId=2569 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2652 +runtimeId=2561 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2651 +runtimeId=2560 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2658 +runtimeId=2567 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2659 +runtimeId=2568 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2661 +runtimeId=2570 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2663 +runtimeId=2572 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2662 +runtimeId=2571 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2655 +runtimeId=2564 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2657 +runtimeId=2566 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2682 +runtimeId=2591 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2684 +runtimeId=2593 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2678 +runtimeId=2587 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2681 +runtimeId=2590 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2688 +runtimeId=2597 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2680 +runtimeId=2589 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2679 +runtimeId=2588 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2686 +runtimeId=2595 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2687 +runtimeId=2596 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2689 +runtimeId=2598 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2691 +runtimeId=2600 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2690 +runtimeId=2599 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2683 +runtimeId=2592 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2685 +runtimeId=2594 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=3382 +runtimeId=3291 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=3384 +runtimeId=3293 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=3378 +runtimeId=3287 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=3381 +runtimeId=3290 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=3388 +runtimeId=3297 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=3380 +runtimeId=3289 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3379 +runtimeId=3288 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3386 +runtimeId=3295 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=3387 +runtimeId=3296 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=3389 +runtimeId=3298 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=3391 +runtimeId=3300 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=3390 +runtimeId=3299 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=3383 +runtimeId=3292 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=3385 +runtimeId=3294 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=3410 +runtimeId=3319 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=3412 +runtimeId=3321 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=3406 +runtimeId=3315 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=3409 +runtimeId=3318 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=3416 +runtimeId=3325 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=3408 +runtimeId=3317 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3407 +runtimeId=3316 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3414 +runtimeId=3323 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=3415 +runtimeId=3324 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=3417 +runtimeId=3326 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=3419 +runtimeId=3328 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=3418 +runtimeId=3327 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=3411 +runtimeId=3320 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=3413 +runtimeId=3322 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=3438 +runtimeId=3347 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=3440 +runtimeId=3349 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=3434 +runtimeId=3343 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=3437 +runtimeId=3346 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=3444 +runtimeId=3353 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=3436 +runtimeId=3345 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3435 +runtimeId=3344 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3442 +runtimeId=3351 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=3443 +runtimeId=3352 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=3445 +runtimeId=3354 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=3447 +runtimeId=3356 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=3446 +runtimeId=3355 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=3439 +runtimeId=3348 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=3441 +runtimeId=3350 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=1380 +runtimeId=1289 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=1382 +runtimeId=1291 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=1376 +runtimeId=1285 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=1379 +runtimeId=1288 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=1386 +runtimeId=1295 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=1378 +runtimeId=1287 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1377 +runtimeId=1286 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1384 +runtimeId=1293 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=1385 +runtimeId=1294 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=1387 +runtimeId=1296 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=1389 +runtimeId=1298 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=1388 +runtimeId=1297 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=1381 +runtimeId=1290 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=1383 +runtimeId=1292 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=1408 +runtimeId=1317 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=1410 +runtimeId=1319 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=1404 +runtimeId=1313 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=1407 +runtimeId=1316 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=1414 +runtimeId=1323 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=1406 +runtimeId=1315 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1405 +runtimeId=1314 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1412 +runtimeId=1321 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=1413 +runtimeId=1322 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=1415 +runtimeId=1324 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=1417 +runtimeId=1326 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=1416 +runtimeId=1325 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=1409 +runtimeId=1318 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=1411 +runtimeId=1320 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=1436 +runtimeId=1345 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=1438 +runtimeId=1347 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=1432 +runtimeId=1341 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=1435 +runtimeId=1344 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=1442 +runtimeId=1351 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=1434 +runtimeId=1343 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1433 +runtimeId=1342 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1440 +runtimeId=1349 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=1441 +runtimeId=1350 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=1443 +runtimeId=1352 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=1445 +runtimeId=1354 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=1444 +runtimeId=1353 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=1437 +runtimeId=1346 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=1439 +runtimeId=1348 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2136 +runtimeId=2045 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2138 +runtimeId=2047 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2132 +runtimeId=2041 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2135 +runtimeId=2044 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2142 +runtimeId=2051 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2134 +runtimeId=2043 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2133 +runtimeId=2042 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2140 +runtimeId=2049 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2141 +runtimeId=2050 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2143 +runtimeId=2052 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2145 +runtimeId=2054 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2144 +runtimeId=2053 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2137 +runtimeId=2046 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2139 +runtimeId=2048 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2164 +runtimeId=2073 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2166 +runtimeId=2075 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2160 +runtimeId=2069 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2163 +runtimeId=2072 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2170 +runtimeId=2079 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2162 +runtimeId=2071 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2161 +runtimeId=2070 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2168 +runtimeId=2077 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2169 +runtimeId=2078 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2171 +runtimeId=2080 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2173 +runtimeId=2082 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2172 +runtimeId=2081 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2165 +runtimeId=2074 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2167 +runtimeId=2076 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2192 +runtimeId=2101 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2194 +runtimeId=2103 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2188 +runtimeId=2097 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2191 +runtimeId=2100 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2198 +runtimeId=2107 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2190 +runtimeId=2099 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2189 +runtimeId=2098 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2196 +runtimeId=2105 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2197 +runtimeId=2106 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2199 +runtimeId=2108 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2201 +runtimeId=2110 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2200 +runtimeId=2109 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2193 +runtimeId=2102 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2195 +runtimeId=2104 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2892 +runtimeId=2801 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2894 +runtimeId=2803 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2888 +runtimeId=2797 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2891 +runtimeId=2800 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2898 +runtimeId=2807 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2890 +runtimeId=2799 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2889 +runtimeId=2798 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2896 +runtimeId=2805 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2897 +runtimeId=2806 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2899 +runtimeId=2808 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2901 +runtimeId=2810 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2900 +runtimeId=2809 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2893 +runtimeId=2802 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2895 +runtimeId=2804 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2920 +runtimeId=2829 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2922 +runtimeId=2831 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2916 +runtimeId=2825 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2919 +runtimeId=2828 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2926 +runtimeId=2835 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2918 +runtimeId=2827 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2917 +runtimeId=2826 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2924 +runtimeId=2833 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2925 +runtimeId=2834 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2927 +runtimeId=2836 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2929 +runtimeId=2838 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2928 +runtimeId=2837 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2921 +runtimeId=2830 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2923 +runtimeId=2832 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2948 +runtimeId=2857 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2950 +runtimeId=2859 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2944 +runtimeId=2853 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2947 +runtimeId=2856 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2954 +runtimeId=2863 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2946 +runtimeId=2855 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2945 +runtimeId=2854 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2952 +runtimeId=2861 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2953 +runtimeId=2862 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2955 +runtimeId=2864 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2957 +runtimeId=2866 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2956 +runtimeId=2865 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2949 +runtimeId=2858 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2951 +runtimeId=2860 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=1632 +runtimeId=1541 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=1634 +runtimeId=1543 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=1628 +runtimeId=1537 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=1631 +runtimeId=1540 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=1638 +runtimeId=1547 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=1630 +runtimeId=1539 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1629 +runtimeId=1538 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1636 +runtimeId=1545 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=1637 +runtimeId=1546 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=1639 +runtimeId=1548 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=1641 +runtimeId=1550 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=1640 +runtimeId=1549 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=1633 +runtimeId=1542 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=1635 +runtimeId=1544 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=1660 +runtimeId=1569 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=1662 +runtimeId=1571 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=1656 +runtimeId=1565 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=1659 +runtimeId=1568 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=1666 +runtimeId=1575 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=1658 +runtimeId=1567 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1657 +runtimeId=1566 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1664 +runtimeId=1573 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=1665 +runtimeId=1574 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=1667 +runtimeId=1576 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=1669 +runtimeId=1578 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=1668 +runtimeId=1577 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=1661 +runtimeId=1570 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=1663 +runtimeId=1572 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=1688 +runtimeId=1597 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=1690 +runtimeId=1599 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=1684 +runtimeId=1593 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=1687 +runtimeId=1596 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=1694 +runtimeId=1603 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=1686 +runtimeId=1595 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1685 +runtimeId=1594 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1692 +runtimeId=1601 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=1693 +runtimeId=1602 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=1695 +runtimeId=1604 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=1697 +runtimeId=1606 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=1696 +runtimeId=1605 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=1689 +runtimeId=1598 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=1691 +runtimeId=1600 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2388 +runtimeId=2297 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2390 +runtimeId=2299 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2384 +runtimeId=2293 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2387 +runtimeId=2296 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2394 +runtimeId=2303 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2386 +runtimeId=2295 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2385 +runtimeId=2294 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2392 +runtimeId=2301 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2393 +runtimeId=2302 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2395 +runtimeId=2304 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2397 +runtimeId=2306 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2396 +runtimeId=2305 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2389 +runtimeId=2298 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2391 +runtimeId=2300 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2416 +runtimeId=2325 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2418 +runtimeId=2327 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2412 +runtimeId=2321 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2415 +runtimeId=2324 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2422 +runtimeId=2331 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2414 +runtimeId=2323 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2413 +runtimeId=2322 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2420 +runtimeId=2329 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2421 +runtimeId=2330 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2423 +runtimeId=2332 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2425 +runtimeId=2334 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2424 +runtimeId=2333 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2417 +runtimeId=2326 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2419 +runtimeId=2328 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2444 +runtimeId=2353 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2446 +runtimeId=2355 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2440 +runtimeId=2349 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2443 +runtimeId=2352 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2450 +runtimeId=2359 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2442 +runtimeId=2351 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2441 +runtimeId=2350 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2448 +runtimeId=2357 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2449 +runtimeId=2358 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2451 +runtimeId=2360 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2453 +runtimeId=2362 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2452 +runtimeId=2361 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2445 +runtimeId=2354 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2447 +runtimeId=2356 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=3144 +runtimeId=3053 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=3146 +runtimeId=3055 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=3140 +runtimeId=3049 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=3143 +runtimeId=3052 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=3150 +runtimeId=3059 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=3142 +runtimeId=3051 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3141 +runtimeId=3050 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3148 +runtimeId=3057 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=3149 +runtimeId=3058 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=3151 +runtimeId=3060 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=3153 +runtimeId=3062 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=3152 +runtimeId=3061 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=3145 +runtimeId=3054 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=3147 +runtimeId=3056 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=3172 +runtimeId=3081 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=3174 +runtimeId=3083 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=3168 +runtimeId=3077 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=3171 +runtimeId=3080 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=3178 +runtimeId=3087 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=3170 +runtimeId=3079 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3169 +runtimeId=3078 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3176 +runtimeId=3085 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=3177 +runtimeId=3086 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=3179 +runtimeId=3088 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=3181 +runtimeId=3090 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=3180 +runtimeId=3089 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=3173 +runtimeId=3082 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=3175 +runtimeId=3084 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=3200 +runtimeId=3109 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=3202 +runtimeId=3111 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=3196 +runtimeId=3105 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=3199 +runtimeId=3108 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=3206 +runtimeId=3115 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=3198 +runtimeId=3107 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3197 +runtimeId=3106 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3204 +runtimeId=3113 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=3205 +runtimeId=3114 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=3207 +runtimeId=3116 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=3209 +runtimeId=3118 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=3208 +runtimeId=3117 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=3201 +runtimeId=3110 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=3203 +runtimeId=3112 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=1884 +runtimeId=1793 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=1886 +runtimeId=1795 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=1880 +runtimeId=1789 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=1883 +runtimeId=1792 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=1890 +runtimeId=1799 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=1882 +runtimeId=1791 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1881 +runtimeId=1790 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1888 +runtimeId=1797 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=1889 +runtimeId=1798 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=1891 +runtimeId=1800 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=1893 +runtimeId=1802 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=1892 +runtimeId=1801 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=1885 +runtimeId=1794 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=1887 +runtimeId=1796 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=1912 +runtimeId=1821 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=1914 +runtimeId=1823 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=1908 +runtimeId=1817 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=1911 +runtimeId=1820 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=1918 +runtimeId=1827 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=1910 +runtimeId=1819 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1909 +runtimeId=1818 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1916 +runtimeId=1825 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=1917 +runtimeId=1826 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=1919 +runtimeId=1828 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=1921 +runtimeId=1830 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=1920 +runtimeId=1829 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=1913 +runtimeId=1822 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=1915 +runtimeId=1824 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=1940 +runtimeId=1849 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=1942 +runtimeId=1851 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=1936 +runtimeId=1845 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=1939 +runtimeId=1848 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=1946 +runtimeId=1855 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=1938 +runtimeId=1847 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1937 +runtimeId=1846 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1944 +runtimeId=1853 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=1945 +runtimeId=1854 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=1947 +runtimeId=1856 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=1949 +runtimeId=1858 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=1948 +runtimeId=1857 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=1941 +runtimeId=1850 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=1943 +runtimeId=1852 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2640 +runtimeId=2549 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2642 +runtimeId=2551 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2636 +runtimeId=2545 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2639 +runtimeId=2548 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2646 +runtimeId=2555 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2638 +runtimeId=2547 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2637 +runtimeId=2546 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2644 +runtimeId=2553 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2645 +runtimeId=2554 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2647 +runtimeId=2556 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2649 +runtimeId=2558 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2648 +runtimeId=2557 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2641 +runtimeId=2550 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2643 +runtimeId=2552 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2668 +runtimeId=2577 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2670 +runtimeId=2579 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2664 +runtimeId=2573 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2667 +runtimeId=2576 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2674 +runtimeId=2583 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2666 +runtimeId=2575 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2665 +runtimeId=2574 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2672 +runtimeId=2581 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2673 +runtimeId=2582 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2675 +runtimeId=2584 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2677 +runtimeId=2586 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2676 +runtimeId=2585 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2669 +runtimeId=2578 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2671 +runtimeId=2580 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2696 +runtimeId=2605 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2698 +runtimeId=2607 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2692 +runtimeId=2601 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2695 +runtimeId=2604 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2702 +runtimeId=2611 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2694 +runtimeId=2603 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2693 +runtimeId=2602 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2700 +runtimeId=2609 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2701 +runtimeId=2610 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2703 +runtimeId=2612 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2705 +runtimeId=2614 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2704 +runtimeId=2613 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2697 +runtimeId=2606 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2699 +runtimeId=2608 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=3396 +runtimeId=3305 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=3398 +runtimeId=3307 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=3392 +runtimeId=3301 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=3395 +runtimeId=3304 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=3402 +runtimeId=3311 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=3394 +runtimeId=3303 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3393 +runtimeId=3302 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3400 +runtimeId=3309 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=3401 +runtimeId=3310 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=3403 +runtimeId=3312 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=3405 +runtimeId=3314 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=3404 +runtimeId=3313 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=3397 +runtimeId=3306 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=3399 +runtimeId=3308 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=3424 +runtimeId=3333 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=3426 +runtimeId=3335 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=3420 +runtimeId=3329 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=3423 +runtimeId=3332 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=3430 +runtimeId=3339 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=3422 +runtimeId=3331 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3421 +runtimeId=3330 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3428 +runtimeId=3337 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=3429 +runtimeId=3338 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=3431 +runtimeId=3340 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=3433 +runtimeId=3342 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=3432 +runtimeId=3341 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=3425 +runtimeId=3334 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=3427 +runtimeId=3336 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=3452 +runtimeId=3361 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=3454 +runtimeId=3363 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=3448 +runtimeId=3357 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=3451 +runtimeId=3360 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=3458 +runtimeId=3367 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=3450 +runtimeId=3359 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3449 +runtimeId=3358 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3456 +runtimeId=3365 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=3457 +runtimeId=3366 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=3459 +runtimeId=3368 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=3461 +runtimeId=3370 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=3460 +runtimeId=3369 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=3453 +runtimeId=3362 minecraft:cobblestone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=3455 +runtimeId=3364 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=1450 +runtimeId=1359 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=1452 +runtimeId=1361 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=1446 +runtimeId=1355 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=1449 +runtimeId=1358 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=1456 +runtimeId=1365 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=1448 +runtimeId=1357 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1447 +runtimeId=1356 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1454 +runtimeId=1363 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=1455 +runtimeId=1364 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=1457 +runtimeId=1366 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=1459 +runtimeId=1368 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=1458 +runtimeId=1367 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=1451 +runtimeId=1360 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=1453 +runtimeId=1362 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=1478 +runtimeId=1387 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=1480 +runtimeId=1389 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=1474 +runtimeId=1383 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=1477 +runtimeId=1386 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=1484 +runtimeId=1393 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=1476 +runtimeId=1385 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1475 +runtimeId=1384 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1482 +runtimeId=1391 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=1483 +runtimeId=1392 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=1485 +runtimeId=1394 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=1487 +runtimeId=1396 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=1486 +runtimeId=1395 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=1479 +runtimeId=1388 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=1481 +runtimeId=1390 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=1506 +runtimeId=1415 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=1508 +runtimeId=1417 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=1502 +runtimeId=1411 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=1505 +runtimeId=1414 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=1512 +runtimeId=1421 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=1504 +runtimeId=1413 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1503 +runtimeId=1412 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1510 +runtimeId=1419 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=1511 +runtimeId=1420 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=1513 +runtimeId=1422 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=1515 +runtimeId=1424 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=1514 +runtimeId=1423 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=1507 +runtimeId=1416 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=1509 +runtimeId=1418 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2206 +runtimeId=2115 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2208 +runtimeId=2117 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2202 +runtimeId=2111 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2205 +runtimeId=2114 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2212 +runtimeId=2121 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2204 +runtimeId=2113 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2203 +runtimeId=2112 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2210 +runtimeId=2119 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2211 +runtimeId=2120 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2213 +runtimeId=2122 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2215 +runtimeId=2124 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2214 +runtimeId=2123 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2207 +runtimeId=2116 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2209 +runtimeId=2118 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2234 +runtimeId=2143 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2236 +runtimeId=2145 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2230 +runtimeId=2139 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2233 +runtimeId=2142 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2240 +runtimeId=2149 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2232 +runtimeId=2141 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2231 +runtimeId=2140 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2238 +runtimeId=2147 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2239 +runtimeId=2148 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2241 +runtimeId=2150 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2243 +runtimeId=2152 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2242 +runtimeId=2151 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2235 +runtimeId=2144 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2237 +runtimeId=2146 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2262 +runtimeId=2171 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2264 +runtimeId=2173 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2258 +runtimeId=2167 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2261 +runtimeId=2170 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2268 +runtimeId=2177 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2260 +runtimeId=2169 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2259 +runtimeId=2168 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2266 +runtimeId=2175 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2267 +runtimeId=2176 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2269 +runtimeId=2178 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2271 +runtimeId=2180 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2270 +runtimeId=2179 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2263 +runtimeId=2172 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2265 +runtimeId=2174 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2962 +runtimeId=2871 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2964 +runtimeId=2873 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2958 +runtimeId=2867 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2961 +runtimeId=2870 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2968 +runtimeId=2877 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2960 +runtimeId=2869 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2959 +runtimeId=2868 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2966 +runtimeId=2875 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2967 +runtimeId=2876 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2969 +runtimeId=2878 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2971 +runtimeId=2880 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2970 +runtimeId=2879 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2963 +runtimeId=2872 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2965 +runtimeId=2874 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2990 +runtimeId=2899 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2992 +runtimeId=2901 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2986 +runtimeId=2895 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2989 +runtimeId=2898 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2996 +runtimeId=2905 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2988 +runtimeId=2897 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2987 +runtimeId=2896 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2994 +runtimeId=2903 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2995 +runtimeId=2904 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2997 +runtimeId=2906 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2999 +runtimeId=2908 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2998 +runtimeId=2907 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2991 +runtimeId=2900 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2993 +runtimeId=2902 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=3018 +runtimeId=2927 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=3020 +runtimeId=2929 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=3014 +runtimeId=2923 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=3017 +runtimeId=2926 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=3024 +runtimeId=2933 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=3016 +runtimeId=2925 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3015 +runtimeId=2924 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3022 +runtimeId=2931 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=3023 +runtimeId=2932 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=3025 +runtimeId=2934 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=3027 +runtimeId=2936 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=3026 +runtimeId=2935 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=3019 +runtimeId=2928 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=3021 +runtimeId=2930 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=1702 +runtimeId=1611 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=1704 +runtimeId=1613 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=1698 +runtimeId=1607 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=1701 +runtimeId=1610 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=1708 +runtimeId=1617 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=1700 +runtimeId=1609 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1699 +runtimeId=1608 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1706 +runtimeId=1615 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=1707 +runtimeId=1616 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=1709 +runtimeId=1618 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=1711 +runtimeId=1620 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=1710 +runtimeId=1619 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=1703 +runtimeId=1612 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=1705 +runtimeId=1614 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=1730 +runtimeId=1639 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=1732 +runtimeId=1641 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=1726 +runtimeId=1635 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=1729 +runtimeId=1638 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=1736 +runtimeId=1645 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=1728 +runtimeId=1637 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1727 +runtimeId=1636 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1734 +runtimeId=1643 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=1735 +runtimeId=1644 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=1737 +runtimeId=1646 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=1739 +runtimeId=1648 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=1738 +runtimeId=1647 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=1731 +runtimeId=1640 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=1733 +runtimeId=1642 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=1758 +runtimeId=1667 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=1760 +runtimeId=1669 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=1754 +runtimeId=1663 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=1757 +runtimeId=1666 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=1764 +runtimeId=1673 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=1756 +runtimeId=1665 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1755 +runtimeId=1664 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1762 +runtimeId=1671 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=1763 +runtimeId=1672 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=1765 +runtimeId=1674 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=1767 +runtimeId=1676 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=1766 +runtimeId=1675 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=1759 +runtimeId=1668 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=1761 +runtimeId=1670 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2458 +runtimeId=2367 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2460 +runtimeId=2369 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2454 +runtimeId=2363 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2457 +runtimeId=2366 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2464 +runtimeId=2373 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2456 +runtimeId=2365 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2455 +runtimeId=2364 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2462 +runtimeId=2371 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2463 +runtimeId=2372 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2465 +runtimeId=2374 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2467 +runtimeId=2376 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2466 +runtimeId=2375 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2459 +runtimeId=2368 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2461 +runtimeId=2370 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2486 +runtimeId=2395 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2488 +runtimeId=2397 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2482 +runtimeId=2391 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2485 +runtimeId=2394 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2492 +runtimeId=2401 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2484 +runtimeId=2393 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2483 +runtimeId=2392 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2490 +runtimeId=2399 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2491 +runtimeId=2400 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2493 +runtimeId=2402 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2495 +runtimeId=2404 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2494 +runtimeId=2403 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2487 +runtimeId=2396 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2489 +runtimeId=2398 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2514 +runtimeId=2423 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2516 +runtimeId=2425 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2510 +runtimeId=2419 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2513 +runtimeId=2422 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2520 +runtimeId=2429 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2512 +runtimeId=2421 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2511 +runtimeId=2420 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2518 +runtimeId=2427 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2519 +runtimeId=2428 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2521 +runtimeId=2430 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2523 +runtimeId=2432 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2522 +runtimeId=2431 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2515 +runtimeId=2424 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2517 +runtimeId=2426 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=3214 +runtimeId=3123 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=3216 +runtimeId=3125 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=3210 +runtimeId=3119 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=3213 +runtimeId=3122 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=3220 +runtimeId=3129 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=3212 +runtimeId=3121 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3211 +runtimeId=3120 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3218 +runtimeId=3127 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=3219 +runtimeId=3128 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=3221 +runtimeId=3130 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=3223 +runtimeId=3132 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=3222 +runtimeId=3131 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=3215 +runtimeId=3124 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=3217 +runtimeId=3126 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=3242 +runtimeId=3151 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=3244 +runtimeId=3153 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=3238 +runtimeId=3147 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=3241 +runtimeId=3150 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=3248 +runtimeId=3157 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=3240 +runtimeId=3149 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3239 +runtimeId=3148 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3246 +runtimeId=3155 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=3247 +runtimeId=3156 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=3249 +runtimeId=3158 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=3251 +runtimeId=3160 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=3250 +runtimeId=3159 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=3243 +runtimeId=3152 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=3245 +runtimeId=3154 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=3270 +runtimeId=3179 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=3272 +runtimeId=3181 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=3266 +runtimeId=3175 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=3269 +runtimeId=3178 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=3276 +runtimeId=3185 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=3268 +runtimeId=3177 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3267 +runtimeId=3176 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3274 +runtimeId=3183 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=3275 +runtimeId=3184 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=3277 +runtimeId=3186 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=3279 +runtimeId=3188 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=3278 +runtimeId=3187 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=3271 +runtimeId=3180 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=3273 +runtimeId=3182 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=1954 +runtimeId=1863 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=1956 +runtimeId=1865 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=1950 +runtimeId=1859 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=1953 +runtimeId=1862 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=1960 +runtimeId=1869 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=1952 +runtimeId=1861 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1951 +runtimeId=1860 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1958 +runtimeId=1867 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=1959 +runtimeId=1868 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=1961 +runtimeId=1870 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=1963 +runtimeId=1872 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=1962 +runtimeId=1871 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=1955 +runtimeId=1864 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=1957 +runtimeId=1866 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=1982 +runtimeId=1891 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=1984 +runtimeId=1893 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=1978 +runtimeId=1887 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=1981 +runtimeId=1890 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=1988 +runtimeId=1897 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=1980 +runtimeId=1889 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1979 +runtimeId=1888 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1986 +runtimeId=1895 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=1987 +runtimeId=1896 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=1989 +runtimeId=1898 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=1991 +runtimeId=1900 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=1990 +runtimeId=1899 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=1983 +runtimeId=1892 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=1985 +runtimeId=1894 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2010 +runtimeId=1919 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2012 +runtimeId=1921 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2006 +runtimeId=1915 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2009 +runtimeId=1918 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2016 +runtimeId=1925 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2008 +runtimeId=1917 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2007 +runtimeId=1916 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2014 +runtimeId=1923 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2015 +runtimeId=1924 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2017 +runtimeId=1926 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2019 +runtimeId=1928 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2018 +runtimeId=1927 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2011 +runtimeId=1920 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2013 +runtimeId=1922 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2710 +runtimeId=2619 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2712 +runtimeId=2621 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2706 +runtimeId=2615 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2709 +runtimeId=2618 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2716 +runtimeId=2625 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2708 +runtimeId=2617 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2707 +runtimeId=2616 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2714 +runtimeId=2623 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2715 +runtimeId=2624 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2717 +runtimeId=2626 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2719 +runtimeId=2628 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2718 +runtimeId=2627 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2711 +runtimeId=2620 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2713 +runtimeId=2622 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2738 +runtimeId=2647 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2740 +runtimeId=2649 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2734 +runtimeId=2643 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2737 +runtimeId=2646 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2744 +runtimeId=2653 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2736 +runtimeId=2645 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2735 +runtimeId=2644 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2742 +runtimeId=2651 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2743 +runtimeId=2652 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2745 +runtimeId=2654 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2747 +runtimeId=2656 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2746 +runtimeId=2655 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2739 +runtimeId=2648 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2741 +runtimeId=2650 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2766 +runtimeId=2675 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2768 +runtimeId=2677 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2762 +runtimeId=2671 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2765 +runtimeId=2674 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2772 +runtimeId=2681 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2764 +runtimeId=2673 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2763 +runtimeId=2672 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2770 +runtimeId=2679 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2771 +runtimeId=2680 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2773 +runtimeId=2682 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2775 +runtimeId=2684 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2774 +runtimeId=2683 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2767 +runtimeId=2676 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2769 +runtimeId=2678 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=3466 +runtimeId=3375 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=3468 +runtimeId=3377 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=3462 +runtimeId=3371 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=3465 +runtimeId=3374 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=3472 +runtimeId=3381 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=3464 +runtimeId=3373 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3463 +runtimeId=3372 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3470 +runtimeId=3379 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=3471 +runtimeId=3380 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=3473 +runtimeId=3382 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=3475 +runtimeId=3384 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=3474 +runtimeId=3383 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=3467 +runtimeId=3376 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=3469 +runtimeId=3378 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=3494 +runtimeId=3403 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=3496 +runtimeId=3405 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=3490 +runtimeId=3399 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=3493 +runtimeId=3402 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=3500 +runtimeId=3409 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=3492 +runtimeId=3401 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3491 +runtimeId=3400 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3498 +runtimeId=3407 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=3499 +runtimeId=3408 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=3501 +runtimeId=3410 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=3503 +runtimeId=3412 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=3502 +runtimeId=3411 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=3495 +runtimeId=3404 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=3497 +runtimeId=3406 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=3522 +runtimeId=3431 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=3524 +runtimeId=3433 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=3518 +runtimeId=3427 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=3521 +runtimeId=3430 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=3528 +runtimeId=3437 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=3520 +runtimeId=3429 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3519 +runtimeId=3428 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3526 +runtimeId=3435 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=3527 +runtimeId=3436 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=3529 +runtimeId=3438 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=3531 +runtimeId=3440 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=3530 +runtimeId=3439 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=3523 +runtimeId=3432 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=3525 +runtimeId=3434 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=1464 +runtimeId=1373 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=1466 +runtimeId=1375 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=1460 +runtimeId=1369 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=1463 +runtimeId=1372 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=1470 +runtimeId=1379 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=1462 +runtimeId=1371 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1461 +runtimeId=1370 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1468 +runtimeId=1377 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=1469 +runtimeId=1378 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=1471 +runtimeId=1380 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=1473 +runtimeId=1382 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=1472 +runtimeId=1381 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=1465 +runtimeId=1374 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=1467 +runtimeId=1376 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=1492 +runtimeId=1401 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=1494 +runtimeId=1403 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=1488 +runtimeId=1397 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=1491 +runtimeId=1400 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=1498 +runtimeId=1407 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=1490 +runtimeId=1399 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1489 +runtimeId=1398 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1496 +runtimeId=1405 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=1497 +runtimeId=1406 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=1499 +runtimeId=1408 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=1501 +runtimeId=1410 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=1500 +runtimeId=1409 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=1493 +runtimeId=1402 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=1495 +runtimeId=1404 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=1520 +runtimeId=1429 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=1522 +runtimeId=1431 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=1516 +runtimeId=1425 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=1519 +runtimeId=1428 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=1526 +runtimeId=1435 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=1518 +runtimeId=1427 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1517 +runtimeId=1426 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1524 +runtimeId=1433 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=1525 +runtimeId=1434 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=1527 +runtimeId=1436 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=1529 +runtimeId=1438 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=1528 +runtimeId=1437 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=1521 +runtimeId=1430 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=1523 +runtimeId=1432 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2220 +runtimeId=2129 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2222 +runtimeId=2131 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2216 +runtimeId=2125 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2219 +runtimeId=2128 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2226 +runtimeId=2135 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2218 +runtimeId=2127 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2217 +runtimeId=2126 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2224 +runtimeId=2133 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2225 +runtimeId=2134 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2227 +runtimeId=2136 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2229 +runtimeId=2138 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2228 +runtimeId=2137 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2221 +runtimeId=2130 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2223 +runtimeId=2132 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2248 +runtimeId=2157 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2250 +runtimeId=2159 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2244 +runtimeId=2153 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2247 +runtimeId=2156 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2254 +runtimeId=2163 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2246 +runtimeId=2155 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2245 +runtimeId=2154 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2252 +runtimeId=2161 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2253 +runtimeId=2162 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2255 +runtimeId=2164 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2257 +runtimeId=2166 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2256 +runtimeId=2165 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2249 +runtimeId=2158 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2251 +runtimeId=2160 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2276 +runtimeId=2185 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2278 +runtimeId=2187 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2272 +runtimeId=2181 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2275 +runtimeId=2184 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2282 +runtimeId=2191 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2274 +runtimeId=2183 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2273 +runtimeId=2182 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2280 +runtimeId=2189 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2281 +runtimeId=2190 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2283 +runtimeId=2192 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2285 +runtimeId=2194 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2284 +runtimeId=2193 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2277 +runtimeId=2186 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2279 +runtimeId=2188 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2976 +runtimeId=2885 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2978 +runtimeId=2887 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2972 +runtimeId=2881 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2975 +runtimeId=2884 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2982 +runtimeId=2891 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2974 +runtimeId=2883 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2973 +runtimeId=2882 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2980 +runtimeId=2889 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2981 +runtimeId=2890 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2983 +runtimeId=2892 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2985 +runtimeId=2894 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2984 +runtimeId=2893 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2977 +runtimeId=2886 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2979 +runtimeId=2888 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=3004 +runtimeId=2913 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=3006 +runtimeId=2915 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=3000 +runtimeId=2909 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=3003 +runtimeId=2912 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=3010 +runtimeId=2919 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=3002 +runtimeId=2911 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3001 +runtimeId=2910 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3008 +runtimeId=2917 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=3009 +runtimeId=2918 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=3011 +runtimeId=2920 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=3013 +runtimeId=2922 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=3012 +runtimeId=2921 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=3005 +runtimeId=2914 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=3007 +runtimeId=2916 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=3032 +runtimeId=2941 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=3034 +runtimeId=2943 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=3028 +runtimeId=2937 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=3031 +runtimeId=2940 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=3038 +runtimeId=2947 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=3030 +runtimeId=2939 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3029 +runtimeId=2938 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3036 +runtimeId=2945 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=3037 +runtimeId=2946 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=3039 +runtimeId=2948 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=3041 +runtimeId=2950 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=3040 +runtimeId=2949 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=3033 +runtimeId=2942 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=3035 +runtimeId=2944 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=1716 +runtimeId=1625 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=1718 +runtimeId=1627 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=1712 +runtimeId=1621 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=1715 +runtimeId=1624 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=1722 +runtimeId=1631 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=1714 +runtimeId=1623 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1713 +runtimeId=1622 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1720 +runtimeId=1629 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=1721 +runtimeId=1630 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=1723 +runtimeId=1632 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=1725 +runtimeId=1634 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=1724 +runtimeId=1633 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=1717 +runtimeId=1626 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=1719 +runtimeId=1628 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=1744 +runtimeId=1653 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=1746 +runtimeId=1655 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=1740 +runtimeId=1649 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=1743 +runtimeId=1652 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=1750 +runtimeId=1659 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=1742 +runtimeId=1651 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1741 +runtimeId=1650 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1748 +runtimeId=1657 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=1749 +runtimeId=1658 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=1751 +runtimeId=1660 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=1753 +runtimeId=1662 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=1752 +runtimeId=1661 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=1745 +runtimeId=1654 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=1747 +runtimeId=1656 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=1772 +runtimeId=1681 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=1774 +runtimeId=1683 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=1768 +runtimeId=1677 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=1771 +runtimeId=1680 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=1778 +runtimeId=1687 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=1770 +runtimeId=1679 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1769 +runtimeId=1678 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1776 +runtimeId=1685 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=1777 +runtimeId=1686 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=1779 +runtimeId=1688 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=1781 +runtimeId=1690 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=1780 +runtimeId=1689 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=1773 +runtimeId=1682 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=1775 +runtimeId=1684 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2472 +runtimeId=2381 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2474 +runtimeId=2383 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2468 +runtimeId=2377 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2471 +runtimeId=2380 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2478 +runtimeId=2387 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2470 +runtimeId=2379 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2469 +runtimeId=2378 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2476 +runtimeId=2385 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2477 +runtimeId=2386 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2479 +runtimeId=2388 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2481 +runtimeId=2390 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2480 +runtimeId=2389 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2473 +runtimeId=2382 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2475 +runtimeId=2384 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2500 +runtimeId=2409 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2502 +runtimeId=2411 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2496 +runtimeId=2405 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2499 +runtimeId=2408 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2506 +runtimeId=2415 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2498 +runtimeId=2407 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2497 +runtimeId=2406 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2504 +runtimeId=2413 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2505 +runtimeId=2414 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2507 +runtimeId=2416 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2509 +runtimeId=2418 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2508 +runtimeId=2417 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2501 +runtimeId=2410 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2503 +runtimeId=2412 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2528 +runtimeId=2437 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2530 +runtimeId=2439 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2524 +runtimeId=2433 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2527 +runtimeId=2436 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2534 +runtimeId=2443 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2526 +runtimeId=2435 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2525 +runtimeId=2434 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2532 +runtimeId=2441 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2533 +runtimeId=2442 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2535 +runtimeId=2444 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2537 +runtimeId=2446 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2536 +runtimeId=2445 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2529 +runtimeId=2438 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2531 +runtimeId=2440 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=3228 +runtimeId=3137 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=3230 +runtimeId=3139 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=3224 +runtimeId=3133 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=3227 +runtimeId=3136 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=3234 +runtimeId=3143 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=3226 +runtimeId=3135 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3225 +runtimeId=3134 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3232 +runtimeId=3141 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=3233 +runtimeId=3142 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=3235 +runtimeId=3144 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=3237 +runtimeId=3146 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=3236 +runtimeId=3145 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=3229 +runtimeId=3138 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=3231 +runtimeId=3140 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=3256 +runtimeId=3165 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=3258 +runtimeId=3167 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=3252 +runtimeId=3161 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=3255 +runtimeId=3164 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=3262 +runtimeId=3171 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=3254 +runtimeId=3163 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3253 +runtimeId=3162 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3260 +runtimeId=3169 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=3261 +runtimeId=3170 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=3263 +runtimeId=3172 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=3265 +runtimeId=3174 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=3264 +runtimeId=3173 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=3257 +runtimeId=3166 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=3259 +runtimeId=3168 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=3284 +runtimeId=3193 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=3286 +runtimeId=3195 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=3280 +runtimeId=3189 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=3283 +runtimeId=3192 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=3290 +runtimeId=3199 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=3282 +runtimeId=3191 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3281 +runtimeId=3190 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3288 +runtimeId=3197 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=3289 +runtimeId=3198 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=3291 +runtimeId=3200 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=3293 +runtimeId=3202 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=3292 +runtimeId=3201 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=3285 +runtimeId=3194 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=3287 +runtimeId=3196 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=1968 +runtimeId=1877 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=1970 +runtimeId=1879 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=1964 +runtimeId=1873 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=1967 +runtimeId=1876 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=1974 +runtimeId=1883 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=1966 +runtimeId=1875 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1965 +runtimeId=1874 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=1972 +runtimeId=1881 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=1973 +runtimeId=1882 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=1975 +runtimeId=1884 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=1977 +runtimeId=1886 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=1976 +runtimeId=1885 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=1969 +runtimeId=1878 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=1971 +runtimeId=1880 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=1996 +runtimeId=1905 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=1998 +runtimeId=1907 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=1992 +runtimeId=1901 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=1995 +runtimeId=1904 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2002 +runtimeId=1911 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=1994 +runtimeId=1903 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=1993 +runtimeId=1902 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2000 +runtimeId=1909 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2001 +runtimeId=1910 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2003 +runtimeId=1912 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2005 +runtimeId=1914 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2004 +runtimeId=1913 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=1997 +runtimeId=1906 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=1999 +runtimeId=1908 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2024 +runtimeId=1933 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2026 +runtimeId=1935 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2020 +runtimeId=1929 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2023 +runtimeId=1932 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2030 +runtimeId=1939 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2022 +runtimeId=1931 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2021 +runtimeId=1930 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2028 +runtimeId=1937 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2029 +runtimeId=1938 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2031 +runtimeId=1940 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2033 +runtimeId=1942 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2032 +runtimeId=1941 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2025 +runtimeId=1934 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2027 +runtimeId=1936 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=2724 +runtimeId=2633 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=2726 +runtimeId=2635 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=2720 +runtimeId=2629 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=2723 +runtimeId=2632 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=2730 +runtimeId=2639 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=2722 +runtimeId=2631 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2721 +runtimeId=2630 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2728 +runtimeId=2637 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=2729 +runtimeId=2638 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=2731 +runtimeId=2640 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=2733 +runtimeId=2642 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=2732 +runtimeId=2641 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=2725 +runtimeId=2634 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=2727 +runtimeId=2636 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=2752 +runtimeId=2661 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=2754 +runtimeId=2663 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=2748 +runtimeId=2657 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=2751 +runtimeId=2660 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=2758 +runtimeId=2667 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=2750 +runtimeId=2659 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2749 +runtimeId=2658 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2756 +runtimeId=2665 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=2757 +runtimeId=2666 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=2759 +runtimeId=2668 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=2761 +runtimeId=2670 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=2760 +runtimeId=2669 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=2753 +runtimeId=2662 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=2755 +runtimeId=2664 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=2780 +runtimeId=2689 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=2782 +runtimeId=2691 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=2776 +runtimeId=2685 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=2779 +runtimeId=2688 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=2786 +runtimeId=2695 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=2778 +runtimeId=2687 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=2777 +runtimeId=2686 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=2784 +runtimeId=2693 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=2785 +runtimeId=2694 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=2787 +runtimeId=2696 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=2789 +runtimeId=2698 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=2788 +runtimeId=2697 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=2781 +runtimeId=2690 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=2783 +runtimeId=2692 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=andesite blockId=139 -runtimeId=3480 +runtimeId=3389 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=brick blockId=139 -runtimeId=3482 +runtimeId=3391 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=cobblestone blockId=139 -runtimeId=3476 +runtimeId=3385 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=diorite blockId=139 -runtimeId=3479 +runtimeId=3388 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=end_brick blockId=139 -runtimeId=3486 +runtimeId=3395 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=granite blockId=139 -runtimeId=3478 +runtimeId=3387 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3477 +runtimeId=3386 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3484 +runtimeId=3393 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=nether_brick blockId=139 -runtimeId=3485 +runtimeId=3394 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=prismarine blockId=139 -runtimeId=3487 +runtimeId=3396 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_nether_brick blockId=139 -runtimeId=3489 +runtimeId=3398 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=red_sandstone blockId=139 -runtimeId=3488 +runtimeId=3397 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=sandstone blockId=139 -runtimeId=3481 +runtimeId=3390 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none;wall_block_type=stone_brick blockId=139 -runtimeId=3483 +runtimeId=3392 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=andesite blockId=139 -runtimeId=3508 +runtimeId=3417 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=brick blockId=139 -runtimeId=3510 +runtimeId=3419 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=cobblestone blockId=139 -runtimeId=3504 +runtimeId=3413 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=diorite blockId=139 -runtimeId=3507 +runtimeId=3416 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=end_brick blockId=139 -runtimeId=3514 +runtimeId=3423 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=granite blockId=139 -runtimeId=3506 +runtimeId=3415 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3505 +runtimeId=3414 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3512 +runtimeId=3421 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=nether_brick blockId=139 -runtimeId=3513 +runtimeId=3422 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=prismarine blockId=139 -runtimeId=3515 +runtimeId=3424 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_nether_brick blockId=139 -runtimeId=3517 +runtimeId=3426 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=red_sandstone blockId=139 -runtimeId=3516 +runtimeId=3425 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=sandstone blockId=139 -runtimeId=3509 +runtimeId=3418 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short;wall_block_type=stone_brick blockId=139 -runtimeId=3511 +runtimeId=3420 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=andesite blockId=139 -runtimeId=3536 +runtimeId=3445 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=brick blockId=139 -runtimeId=3538 +runtimeId=3447 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=cobblestone blockId=139 -runtimeId=3532 +runtimeId=3441 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=diorite blockId=139 -runtimeId=3535 +runtimeId=3444 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=end_brick blockId=139 -runtimeId=3542 +runtimeId=3451 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=granite blockId=139 -runtimeId=3534 +runtimeId=3443 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_cobblestone blockId=139 -runtimeId=3533 +runtimeId=3442 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=mossy_stone_brick blockId=139 -runtimeId=3540 +runtimeId=3449 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=nether_brick blockId=139 -runtimeId=3541 +runtimeId=3450 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=prismarine blockId=139 -runtimeId=3543 +runtimeId=3452 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_nether_brick blockId=139 -runtimeId=3545 +runtimeId=3454 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=red_sandstone blockId=139 -runtimeId=3544 +runtimeId=3453 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=sandstone blockId=139 -runtimeId=3537 +runtimeId=3446 minecraft:cobblestone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall;wall_block_type=stone_brick blockId=139 -runtimeId=3539 +runtimeId=3448 minecraft:cocoa;age=0;direction=0 blockId=127 -runtimeId=3546 +runtimeId=6393 minecraft:cocoa;age=0;direction=1 blockId=127 -runtimeId=3547 +runtimeId=6394 minecraft:cocoa;age=0;direction=2 blockId=127 -runtimeId=3548 +runtimeId=6395 minecraft:cocoa;age=0;direction=3 blockId=127 -runtimeId=3549 +runtimeId=6396 minecraft:cocoa;age=1;direction=0 blockId=127 -runtimeId=3550 +runtimeId=6397 minecraft:cocoa;age=1;direction=1 blockId=127 -runtimeId=3551 +runtimeId=6398 minecraft:cocoa;age=1;direction=2 blockId=127 -runtimeId=3552 +runtimeId=6399 minecraft:cocoa;age=1;direction=3 blockId=127 -runtimeId=3553 +runtimeId=6400 minecraft:cocoa;age=2;direction=0 blockId=127 -runtimeId=3554 +runtimeId=6401 minecraft:cocoa;age=2;direction=1 blockId=127 -runtimeId=3555 +runtimeId=6402 minecraft:cocoa;age=2;direction=2 blockId=127 -runtimeId=3556 +runtimeId=6403 minecraft:cocoa;age=2;direction=3 blockId=127 -runtimeId=3557 +runtimeId=6404 minecraft:colored_torch_bp;color_bit=0;torch_facing_direction=east blockId=204 -runtimeId=3560 +runtimeId=7462 minecraft:colored_torch_bp;color_bit=0;torch_facing_direction=north blockId=204 -runtimeId=3561 +runtimeId=7463 minecraft:colored_torch_bp;color_bit=0;torch_facing_direction=south blockId=204 -runtimeId=3562 +runtimeId=7464 minecraft:colored_torch_bp;color_bit=0;torch_facing_direction=top blockId=204 -runtimeId=3563 +runtimeId=7465 minecraft:colored_torch_bp;color_bit=0;torch_facing_direction=unknown blockId=204 -runtimeId=3558 +runtimeId=7460 minecraft:colored_torch_bp;color_bit=0;torch_facing_direction=west blockId=204 -runtimeId=3559 +runtimeId=7461 minecraft:colored_torch_bp;color_bit=1;torch_facing_direction=east blockId=204 -runtimeId=3566 +runtimeId=7468 minecraft:colored_torch_bp;color_bit=1;torch_facing_direction=north blockId=204 -runtimeId=3567 +runtimeId=7469 minecraft:colored_torch_bp;color_bit=1;torch_facing_direction=south blockId=204 -runtimeId=3568 +runtimeId=7470 minecraft:colored_torch_bp;color_bit=1;torch_facing_direction=top blockId=204 -runtimeId=3569 +runtimeId=7471 minecraft:colored_torch_bp;color_bit=1;torch_facing_direction=unknown blockId=204 -runtimeId=3564 +runtimeId=7466 minecraft:colored_torch_bp;color_bit=1;torch_facing_direction=west blockId=204 -runtimeId=3565 +runtimeId=7467 minecraft:colored_torch_rg;color_bit=0;torch_facing_direction=east blockId=202 -runtimeId=3572 +runtimeId=7474 minecraft:colored_torch_rg;color_bit=0;torch_facing_direction=north blockId=202 -runtimeId=3573 +runtimeId=7475 minecraft:colored_torch_rg;color_bit=0;torch_facing_direction=south blockId=202 -runtimeId=3574 +runtimeId=7476 minecraft:colored_torch_rg;color_bit=0;torch_facing_direction=top blockId=202 -runtimeId=3575 +runtimeId=7477 minecraft:colored_torch_rg;color_bit=0;torch_facing_direction=unknown blockId=202 -runtimeId=3570 +runtimeId=7472 minecraft:colored_torch_rg;color_bit=0;torch_facing_direction=west blockId=202 -runtimeId=3571 +runtimeId=7473 minecraft:colored_torch_rg;color_bit=1;torch_facing_direction=east blockId=202 -runtimeId=3578 +runtimeId=7480 minecraft:colored_torch_rg;color_bit=1;torch_facing_direction=north blockId=202 -runtimeId=3579 +runtimeId=7481 minecraft:colored_torch_rg;color_bit=1;torch_facing_direction=south blockId=202 -runtimeId=3580 +runtimeId=7482 minecraft:colored_torch_rg;color_bit=1;torch_facing_direction=top blockId=202 -runtimeId=3581 +runtimeId=7483 minecraft:colored_torch_rg;color_bit=1;torch_facing_direction=unknown blockId=202 -runtimeId=3576 +runtimeId=7478 minecraft:colored_torch_rg;color_bit=1;torch_facing_direction=west blockId=202 -runtimeId=3577 +runtimeId=7479 minecraft:command_block;conditional_bit=0;facing_direction=0 blockId=137 -runtimeId=3582 +runtimeId=7720 minecraft:command_block;conditional_bit=0;facing_direction=1 blockId=137 -runtimeId=3583 +runtimeId=7721 minecraft:command_block;conditional_bit=0;facing_direction=2 blockId=137 -runtimeId=3584 +runtimeId=7722 minecraft:command_block;conditional_bit=0;facing_direction=3 blockId=137 -runtimeId=3585 +runtimeId=7723 minecraft:command_block;conditional_bit=0;facing_direction=4 blockId=137 -runtimeId=3586 +runtimeId=7724 minecraft:command_block;conditional_bit=0;facing_direction=5 blockId=137 -runtimeId=3587 +runtimeId=7725 minecraft:command_block;conditional_bit=1;facing_direction=0 blockId=137 -runtimeId=3588 +runtimeId=7726 minecraft:command_block;conditional_bit=1;facing_direction=1 blockId=137 -runtimeId=3589 +runtimeId=7727 minecraft:command_block;conditional_bit=1;facing_direction=2 blockId=137 -runtimeId=3590 +runtimeId=7728 minecraft:command_block;conditional_bit=1;facing_direction=3 blockId=137 -runtimeId=3591 +runtimeId=7729 minecraft:command_block;conditional_bit=1;facing_direction=4 blockId=137 -runtimeId=3592 +runtimeId=7730 minecraft:command_block;conditional_bit=1;facing_direction=5 blockId=137 -runtimeId=3593 +runtimeId=7731 minecraft:composter;composter_fill_level=0 blockId=468 -runtimeId=3594 +runtimeId=5365 minecraft:composter;composter_fill_level=1 blockId=468 -runtimeId=3595 +runtimeId=5366 minecraft:composter;composter_fill_level=2 blockId=468 -runtimeId=3596 +runtimeId=5367 minecraft:composter;composter_fill_level=3 blockId=468 -runtimeId=3597 +runtimeId=5368 minecraft:composter;composter_fill_level=4 blockId=468 -runtimeId=3598 +runtimeId=5369 minecraft:composter;composter_fill_level=5 blockId=468 -runtimeId=3599 +runtimeId=5370 minecraft:composter;composter_fill_level=6 blockId=468 -runtimeId=3600 +runtimeId=5371 minecraft:composter;composter_fill_level=7 blockId=468 -runtimeId=3601 +runtimeId=5372 minecraft:composter;composter_fill_level=8 blockId=468 -runtimeId=3602 +runtimeId=5373 minecraft:concrete;color=black blockId=236 -runtimeId=3618 +runtimeId=683 minecraft:concrete;color=blue blockId=236 -runtimeId=3614 +runtimeId=679 minecraft:concrete;color=brown blockId=236 -runtimeId=3615 +runtimeId=680 minecraft:concrete;color=cyan blockId=236 -runtimeId=3612 +runtimeId=677 minecraft:concrete;color=gray blockId=236 -runtimeId=3610 +runtimeId=675 minecraft:concrete;color=green blockId=236 -runtimeId=3616 +runtimeId=681 minecraft:concrete;color=light_blue blockId=236 -runtimeId=3606 +runtimeId=671 minecraft:concrete;color=lime blockId=236 -runtimeId=3608 +runtimeId=673 minecraft:concrete;color=magenta blockId=236 -runtimeId=3605 +runtimeId=670 minecraft:concrete;color=orange blockId=236 -runtimeId=3604 +runtimeId=669 minecraft:concrete;color=pink blockId=236 -runtimeId=3609 +runtimeId=674 minecraft:concrete;color=purple blockId=236 -runtimeId=3613 +runtimeId=678 minecraft:concrete;color=red blockId=236 -runtimeId=3617 +runtimeId=682 minecraft:concrete;color=silver blockId=236 -runtimeId=3611 +runtimeId=676 minecraft:concrete;color=white blockId=236 -runtimeId=3603 +runtimeId=668 minecraft:concrete;color=yellow blockId=236 -runtimeId=3607 +runtimeId=672 -minecraft:concretePowder;color=black +minecraft:concrete_powder;color=black blockId=237 -runtimeId=3634 +runtimeId=6244 -minecraft:concretePowder;color=blue +minecraft:concrete_powder;color=blue blockId=237 -runtimeId=3630 +runtimeId=6240 -minecraft:concretePowder;color=brown +minecraft:concrete_powder;color=brown blockId=237 -runtimeId=3631 +runtimeId=6241 -minecraft:concretePowder;color=cyan +minecraft:concrete_powder;color=cyan blockId=237 -runtimeId=3628 +runtimeId=6238 -minecraft:concretePowder;color=gray +minecraft:concrete_powder;color=gray blockId=237 -runtimeId=3626 +runtimeId=6236 -minecraft:concretePowder;color=green +minecraft:concrete_powder;color=green blockId=237 -runtimeId=3632 +runtimeId=6242 -minecraft:concretePowder;color=light_blue +minecraft:concrete_powder;color=light_blue blockId=237 -runtimeId=3622 +runtimeId=6232 -minecraft:concretePowder;color=lime +minecraft:concrete_powder;color=lime blockId=237 -runtimeId=3624 +runtimeId=6234 -minecraft:concretePowder;color=magenta +minecraft:concrete_powder;color=magenta blockId=237 -runtimeId=3621 +runtimeId=6231 -minecraft:concretePowder;color=orange +minecraft:concrete_powder;color=orange blockId=237 -runtimeId=3620 +runtimeId=6230 -minecraft:concretePowder;color=pink +minecraft:concrete_powder;color=pink blockId=237 -runtimeId=3625 +runtimeId=6235 -minecraft:concretePowder;color=purple +minecraft:concrete_powder;color=purple blockId=237 -runtimeId=3629 +runtimeId=6239 -minecraft:concretePowder;color=red +minecraft:concrete_powder;color=red blockId=237 -runtimeId=3633 +runtimeId=6243 -minecraft:concretePowder;color=silver +minecraft:concrete_powder;color=silver blockId=237 -runtimeId=3627 +runtimeId=6237 -minecraft:concretePowder;color=white +minecraft:concrete_powder;color=white blockId=237 -runtimeId=3619 +runtimeId=6229 -minecraft:concretePowder;color=yellow +minecraft:concrete_powder;color=yellow blockId=237 -runtimeId=3623 +runtimeId=6233 minecraft:conduit blockId=412 -runtimeId=3635 +runtimeId=4196 minecraft:copper_block blockId=595 -runtimeId=3636 +runtimeId=4607 minecraft:copper_ore blockId=566 -runtimeId=3637 +runtimeId=3559 minecraft:coral;coral_color=blue;dead_bit=0 blockId=386 -runtimeId=3638 +runtimeId=6380 minecraft:coral;coral_color=blue;dead_bit=1 blockId=386 -runtimeId=3643 +runtimeId=6385 minecraft:coral;coral_color=pink;dead_bit=0 blockId=386 -runtimeId=3639 +runtimeId=6381 minecraft:coral;coral_color=pink;dead_bit=1 blockId=386 -runtimeId=3644 +runtimeId=6386 minecraft:coral;coral_color=purple;dead_bit=0 blockId=386 -runtimeId=3640 +runtimeId=6382 minecraft:coral;coral_color=purple;dead_bit=1 blockId=386 -runtimeId=3645 +runtimeId=6387 minecraft:coral;coral_color=red;dead_bit=0 blockId=386 -runtimeId=3641 +runtimeId=6383 minecraft:coral;coral_color=red;dead_bit=1 blockId=386 -runtimeId=3646 +runtimeId=6388 minecraft:coral;coral_color=yellow;dead_bit=0 blockId=386 -runtimeId=3642 +runtimeId=6384 minecraft:coral;coral_color=yellow;dead_bit=1 blockId=386 -runtimeId=3647 +runtimeId=6389 minecraft:coral_block;coral_color=blue;dead_bit=0 blockId=387 -runtimeId=3648 +runtimeId=5193 minecraft:coral_block;coral_color=blue;dead_bit=1 blockId=387 -runtimeId=3653 +runtimeId=5198 minecraft:coral_block;coral_color=pink;dead_bit=0 blockId=387 -runtimeId=3649 +runtimeId=5194 minecraft:coral_block;coral_color=pink;dead_bit=1 blockId=387 -runtimeId=3654 +runtimeId=5199 minecraft:coral_block;coral_color=purple;dead_bit=0 blockId=387 -runtimeId=3650 +runtimeId=5195 minecraft:coral_block;coral_color=purple;dead_bit=1 blockId=387 -runtimeId=3655 +runtimeId=5200 minecraft:coral_block;coral_color=red;dead_bit=0 blockId=387 -runtimeId=3651 +runtimeId=5196 minecraft:coral_block;coral_color=red;dead_bit=1 blockId=387 -runtimeId=3656 +runtimeId=5201 minecraft:coral_block;coral_color=yellow;dead_bit=0 blockId=387 -runtimeId=3652 +runtimeId=5197 minecraft:coral_block;coral_color=yellow;dead_bit=1 blockId=387 -runtimeId=3657 +runtimeId=5202 minecraft:coral_fan;coral_fan_direction=0;coral_color=blue blockId=388 -runtimeId=3658 +runtimeId=4537 minecraft:coral_fan;coral_fan_direction=0;coral_color=pink blockId=388 -runtimeId=3659 +runtimeId=4538 minecraft:coral_fan;coral_fan_direction=0;coral_color=purple blockId=388 -runtimeId=3660 +runtimeId=4539 minecraft:coral_fan;coral_fan_direction=0;coral_color=red blockId=388 -runtimeId=3661 +runtimeId=4540 minecraft:coral_fan;coral_fan_direction=0;coral_color=yellow blockId=388 -runtimeId=3662 +runtimeId=4541 minecraft:coral_fan;coral_fan_direction=1;coral_color=blue blockId=388 -runtimeId=3663 +runtimeId=4542 minecraft:coral_fan;coral_fan_direction=1;coral_color=pink blockId=388 -runtimeId=3664 +runtimeId=4543 minecraft:coral_fan;coral_fan_direction=1;coral_color=purple blockId=388 -runtimeId=3665 +runtimeId=4544 minecraft:coral_fan;coral_fan_direction=1;coral_color=red blockId=388 -runtimeId=3666 +runtimeId=4545 minecraft:coral_fan;coral_fan_direction=1;coral_color=yellow blockId=388 -runtimeId=3667 +runtimeId=4546 minecraft:coral_fan_dead;coral_fan_direction=0;coral_color=blue blockId=389 -runtimeId=3668 +runtimeId=66 minecraft:coral_fan_dead;coral_fan_direction=0;coral_color=pink blockId=389 -runtimeId=3669 +runtimeId=67 minecraft:coral_fan_dead;coral_fan_direction=0;coral_color=purple blockId=389 -runtimeId=3670 +runtimeId=68 minecraft:coral_fan_dead;coral_fan_direction=0;coral_color=red blockId=389 -runtimeId=3671 +runtimeId=69 minecraft:coral_fan_dead;coral_fan_direction=0;coral_color=yellow blockId=389 -runtimeId=3672 +runtimeId=70 minecraft:coral_fan_dead;coral_fan_direction=1;coral_color=blue blockId=389 -runtimeId=3673 +runtimeId=71 minecraft:coral_fan_dead;coral_fan_direction=1;coral_color=pink blockId=389 -runtimeId=3674 +runtimeId=72 minecraft:coral_fan_dead;coral_fan_direction=1;coral_color=purple blockId=389 -runtimeId=3675 +runtimeId=73 minecraft:coral_fan_dead;coral_fan_direction=1;coral_color=red blockId=389 -runtimeId=3676 +runtimeId=74 minecraft:coral_fan_dead;coral_fan_direction=1;coral_color=yellow blockId=389 -runtimeId=3677 +runtimeId=75 minecraft:coral_fan_hang;coral_hang_type_bit=0;coral_direction=0;dead_bit=0 blockId=390 -runtimeId=3678 +runtimeId=4468 minecraft:coral_fan_hang;coral_hang_type_bit=0;coral_direction=0;dead_bit=1 blockId=390 -runtimeId=3680 +runtimeId=4470 minecraft:coral_fan_hang;coral_hang_type_bit=0;coral_direction=1;dead_bit=0 blockId=390 -runtimeId=3682 +runtimeId=4472 minecraft:coral_fan_hang;coral_hang_type_bit=0;coral_direction=1;dead_bit=1 blockId=390 -runtimeId=3684 +runtimeId=4474 minecraft:coral_fan_hang;coral_hang_type_bit=0;coral_direction=2;dead_bit=0 blockId=390 -runtimeId=3686 +runtimeId=4476 minecraft:coral_fan_hang;coral_hang_type_bit=0;coral_direction=2;dead_bit=1 blockId=390 -runtimeId=3688 +runtimeId=4478 minecraft:coral_fan_hang;coral_hang_type_bit=0;coral_direction=3;dead_bit=0 blockId=390 -runtimeId=3690 +runtimeId=4480 minecraft:coral_fan_hang;coral_hang_type_bit=0;coral_direction=3;dead_bit=1 blockId=390 -runtimeId=3692 +runtimeId=4482 minecraft:coral_fan_hang;coral_hang_type_bit=1;coral_direction=0;dead_bit=0 blockId=390 -runtimeId=3679 +runtimeId=4469 minecraft:coral_fan_hang;coral_hang_type_bit=1;coral_direction=0;dead_bit=1 blockId=390 -runtimeId=3681 +runtimeId=4471 minecraft:coral_fan_hang;coral_hang_type_bit=1;coral_direction=1;dead_bit=0 blockId=390 -runtimeId=3683 +runtimeId=4473 minecraft:coral_fan_hang;coral_hang_type_bit=1;coral_direction=1;dead_bit=1 blockId=390 -runtimeId=3685 +runtimeId=4475 minecraft:coral_fan_hang;coral_hang_type_bit=1;coral_direction=2;dead_bit=0 blockId=390 -runtimeId=3687 +runtimeId=4477 minecraft:coral_fan_hang;coral_hang_type_bit=1;coral_direction=2;dead_bit=1 blockId=390 -runtimeId=3689 +runtimeId=4479 minecraft:coral_fan_hang;coral_hang_type_bit=1;coral_direction=3;dead_bit=0 blockId=390 -runtimeId=3691 +runtimeId=4481 minecraft:coral_fan_hang;coral_hang_type_bit=1;coral_direction=3;dead_bit=1 blockId=390 -runtimeId=3693 +runtimeId=4483 minecraft:coral_fan_hang2;coral_hang_type_bit=0;coral_direction=0;dead_bit=0 blockId=391 -runtimeId=3694 +runtimeId=4089 minecraft:coral_fan_hang2;coral_hang_type_bit=0;coral_direction=0;dead_bit=1 blockId=391 -runtimeId=3696 +runtimeId=4091 minecraft:coral_fan_hang2;coral_hang_type_bit=0;coral_direction=1;dead_bit=0 blockId=391 -runtimeId=3698 +runtimeId=4093 minecraft:coral_fan_hang2;coral_hang_type_bit=0;coral_direction=1;dead_bit=1 blockId=391 -runtimeId=3700 +runtimeId=4095 minecraft:coral_fan_hang2;coral_hang_type_bit=0;coral_direction=2;dead_bit=0 blockId=391 -runtimeId=3702 +runtimeId=4097 minecraft:coral_fan_hang2;coral_hang_type_bit=0;coral_direction=2;dead_bit=1 blockId=391 -runtimeId=3704 +runtimeId=4099 minecraft:coral_fan_hang2;coral_hang_type_bit=0;coral_direction=3;dead_bit=0 blockId=391 -runtimeId=3706 +runtimeId=4101 minecraft:coral_fan_hang2;coral_hang_type_bit=0;coral_direction=3;dead_bit=1 blockId=391 -runtimeId=3708 +runtimeId=4103 minecraft:coral_fan_hang2;coral_hang_type_bit=1;coral_direction=0;dead_bit=0 blockId=391 -runtimeId=3695 +runtimeId=4090 minecraft:coral_fan_hang2;coral_hang_type_bit=1;coral_direction=0;dead_bit=1 blockId=391 -runtimeId=3697 +runtimeId=4092 minecraft:coral_fan_hang2;coral_hang_type_bit=1;coral_direction=1;dead_bit=0 blockId=391 -runtimeId=3699 +runtimeId=4094 minecraft:coral_fan_hang2;coral_hang_type_bit=1;coral_direction=1;dead_bit=1 blockId=391 -runtimeId=3701 +runtimeId=4096 minecraft:coral_fan_hang2;coral_hang_type_bit=1;coral_direction=2;dead_bit=0 blockId=391 -runtimeId=3703 +runtimeId=4098 minecraft:coral_fan_hang2;coral_hang_type_bit=1;coral_direction=2;dead_bit=1 blockId=391 -runtimeId=3705 +runtimeId=4100 minecraft:coral_fan_hang2;coral_hang_type_bit=1;coral_direction=3;dead_bit=0 blockId=391 -runtimeId=3707 +runtimeId=4102 minecraft:coral_fan_hang2;coral_hang_type_bit=1;coral_direction=3;dead_bit=1 blockId=391 -runtimeId=3709 +runtimeId=4104 minecraft:coral_fan_hang3;coral_hang_type_bit=0;coral_direction=0;dead_bit=0 blockId=392 -runtimeId=3710 +runtimeId=4105 minecraft:coral_fan_hang3;coral_hang_type_bit=0;coral_direction=0;dead_bit=1 blockId=392 -runtimeId=3712 +runtimeId=4107 minecraft:coral_fan_hang3;coral_hang_type_bit=0;coral_direction=1;dead_bit=0 blockId=392 -runtimeId=3714 +runtimeId=4109 minecraft:coral_fan_hang3;coral_hang_type_bit=0;coral_direction=1;dead_bit=1 blockId=392 -runtimeId=3716 +runtimeId=4111 minecraft:coral_fan_hang3;coral_hang_type_bit=0;coral_direction=2;dead_bit=0 blockId=392 -runtimeId=3718 +runtimeId=4113 minecraft:coral_fan_hang3;coral_hang_type_bit=0;coral_direction=2;dead_bit=1 blockId=392 -runtimeId=3720 +runtimeId=4115 minecraft:coral_fan_hang3;coral_hang_type_bit=0;coral_direction=3;dead_bit=0 blockId=392 -runtimeId=3722 +runtimeId=4117 minecraft:coral_fan_hang3;coral_hang_type_bit=0;coral_direction=3;dead_bit=1 blockId=392 -runtimeId=3724 +runtimeId=4119 minecraft:coral_fan_hang3;coral_hang_type_bit=1;coral_direction=0;dead_bit=0 blockId=392 -runtimeId=3711 +runtimeId=4106 minecraft:coral_fan_hang3;coral_hang_type_bit=1;coral_direction=0;dead_bit=1 blockId=392 -runtimeId=3713 +runtimeId=4108 minecraft:coral_fan_hang3;coral_hang_type_bit=1;coral_direction=1;dead_bit=0 blockId=392 -runtimeId=3715 +runtimeId=4110 minecraft:coral_fan_hang3;coral_hang_type_bit=1;coral_direction=1;dead_bit=1 blockId=392 -runtimeId=3717 +runtimeId=4112 minecraft:coral_fan_hang3;coral_hang_type_bit=1;coral_direction=2;dead_bit=0 blockId=392 -runtimeId=3719 +runtimeId=4114 minecraft:coral_fan_hang3;coral_hang_type_bit=1;coral_direction=2;dead_bit=1 blockId=392 -runtimeId=3721 +runtimeId=4116 minecraft:coral_fan_hang3;coral_hang_type_bit=1;coral_direction=3;dead_bit=0 blockId=392 -runtimeId=3723 +runtimeId=4118 minecraft:coral_fan_hang3;coral_hang_type_bit=1;coral_direction=3;dead_bit=1 blockId=392 -runtimeId=3725 +runtimeId=4120 minecraft:cracked_deepslate_bricks blockId=665 -runtimeId=3726 +runtimeId=5314 minecraft:cracked_deepslate_tiles blockId=664 -runtimeId=3727 +runtimeId=4149 minecraft:cracked_nether_bricks blockId=558 -runtimeId=3728 +runtimeId=4484 minecraft:cracked_polished_blackstone_bricks blockId=535 -runtimeId=3729 +runtimeId=7156 minecraft:crafting_table blockId=58 -runtimeId=3730 +runtimeId=5778 minecraft:crimson_button;button_pressed_bit=0;facing_direction=0 blockId=515 -runtimeId=3731 +runtimeId=4380 minecraft:crimson_button;button_pressed_bit=0;facing_direction=1 blockId=515 -runtimeId=3732 +runtimeId=4381 minecraft:crimson_button;button_pressed_bit=0;facing_direction=2 blockId=515 -runtimeId=3733 +runtimeId=4382 minecraft:crimson_button;button_pressed_bit=0;facing_direction=3 blockId=515 -runtimeId=3734 +runtimeId=4383 minecraft:crimson_button;button_pressed_bit=0;facing_direction=4 blockId=515 -runtimeId=3735 +runtimeId=4384 minecraft:crimson_button;button_pressed_bit=0;facing_direction=5 blockId=515 -runtimeId=3736 +runtimeId=4385 minecraft:crimson_button;button_pressed_bit=1;facing_direction=0 blockId=515 -runtimeId=3737 +runtimeId=4386 minecraft:crimson_button;button_pressed_bit=1;facing_direction=1 blockId=515 -runtimeId=3738 +runtimeId=4387 minecraft:crimson_button;button_pressed_bit=1;facing_direction=2 blockId=515 -runtimeId=3739 +runtimeId=4388 minecraft:crimson_button;button_pressed_bit=1;facing_direction=3 blockId=515 -runtimeId=3740 +runtimeId=4389 minecraft:crimson_button;button_pressed_bit=1;facing_direction=4 blockId=515 -runtimeId=3741 +runtimeId=4390 minecraft:crimson_button;button_pressed_bit=1;facing_direction=5 blockId=515 -runtimeId=3742 +runtimeId=4391 minecraft:crimson_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=0 blockId=499 -runtimeId=3743 +runtimeId=3842 minecraft:crimson_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=1 blockId=499 -runtimeId=3744 +runtimeId=3843 minecraft:crimson_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=2 blockId=499 -runtimeId=3745 +runtimeId=3844 minecraft:crimson_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=3 blockId=499 -runtimeId=3746 +runtimeId=3845 minecraft:crimson_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=0 blockId=499 -runtimeId=3759 +runtimeId=3858 minecraft:crimson_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=1 blockId=499 -runtimeId=3760 +runtimeId=3859 minecraft:crimson_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=2 blockId=499 -runtimeId=3761 +runtimeId=3860 minecraft:crimson_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=3 blockId=499 -runtimeId=3762 +runtimeId=3861 minecraft:crimson_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=0 blockId=499 -runtimeId=3751 +runtimeId=3850 minecraft:crimson_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=1 blockId=499 -runtimeId=3752 +runtimeId=3851 minecraft:crimson_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=2 blockId=499 -runtimeId=3753 +runtimeId=3852 minecraft:crimson_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=3 blockId=499 -runtimeId=3754 +runtimeId=3853 minecraft:crimson_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=0 blockId=499 -runtimeId=3767 +runtimeId=3866 minecraft:crimson_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=1 blockId=499 -runtimeId=3768 +runtimeId=3867 minecraft:crimson_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=2 blockId=499 -runtimeId=3769 +runtimeId=3868 minecraft:crimson_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=3 blockId=499 -runtimeId=3770 +runtimeId=3869 minecraft:crimson_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=0 blockId=499 -runtimeId=3747 +runtimeId=3846 minecraft:crimson_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=1 blockId=499 -runtimeId=3748 +runtimeId=3847 minecraft:crimson_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=2 blockId=499 -runtimeId=3749 +runtimeId=3848 minecraft:crimson_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=3 blockId=499 -runtimeId=3750 +runtimeId=3849 minecraft:crimson_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=0 blockId=499 -runtimeId=3763 +runtimeId=3862 minecraft:crimson_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=1 blockId=499 -runtimeId=3764 +runtimeId=3863 minecraft:crimson_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=2 blockId=499 -runtimeId=3765 +runtimeId=3864 minecraft:crimson_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=3 blockId=499 -runtimeId=3766 +runtimeId=3865 minecraft:crimson_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=0 blockId=499 -runtimeId=3755 +runtimeId=3854 minecraft:crimson_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=1 blockId=499 -runtimeId=3756 +runtimeId=3855 minecraft:crimson_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=2 blockId=499 -runtimeId=3757 +runtimeId=3856 minecraft:crimson_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=3 blockId=499 -runtimeId=3758 +runtimeId=3857 minecraft:crimson_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=0 blockId=499 -runtimeId=3771 +runtimeId=3870 minecraft:crimson_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=1 blockId=499 -runtimeId=3772 +runtimeId=3871 minecraft:crimson_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=2 blockId=499 -runtimeId=3773 +runtimeId=3872 minecraft:crimson_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=3 blockId=499 -runtimeId=3774 +runtimeId=3873 minecraft:crimson_double_slab;top_slot_bit=0 blockId=521 -runtimeId=3775 +runtimeId=687 minecraft:crimson_double_slab;top_slot_bit=1 blockId=521 -runtimeId=3776 +runtimeId=688 minecraft:crimson_fence blockId=511 -runtimeId=3777 +runtimeId=7938 minecraft:crimson_fence_gate;in_wall_bit=0;open_bit=0;direction=0 blockId=513 -runtimeId=3778 +runtimeId=4617 minecraft:crimson_fence_gate;in_wall_bit=0;open_bit=0;direction=1 blockId=513 -runtimeId=3779 +runtimeId=4618 minecraft:crimson_fence_gate;in_wall_bit=0;open_bit=0;direction=2 blockId=513 -runtimeId=3780 +runtimeId=4619 minecraft:crimson_fence_gate;in_wall_bit=0;open_bit=0;direction=3 blockId=513 -runtimeId=3781 +runtimeId=4620 minecraft:crimson_fence_gate;in_wall_bit=0;open_bit=1;direction=0 blockId=513 -runtimeId=3782 +runtimeId=4621 minecraft:crimson_fence_gate;in_wall_bit=0;open_bit=1;direction=1 blockId=513 -runtimeId=3783 +runtimeId=4622 minecraft:crimson_fence_gate;in_wall_bit=0;open_bit=1;direction=2 blockId=513 -runtimeId=3784 +runtimeId=4623 minecraft:crimson_fence_gate;in_wall_bit=0;open_bit=1;direction=3 blockId=513 -runtimeId=3785 +runtimeId=4624 minecraft:crimson_fence_gate;in_wall_bit=1;open_bit=0;direction=0 blockId=513 -runtimeId=3786 +runtimeId=4625 minecraft:crimson_fence_gate;in_wall_bit=1;open_bit=0;direction=1 blockId=513 -runtimeId=3787 +runtimeId=4626 minecraft:crimson_fence_gate;in_wall_bit=1;open_bit=0;direction=2 blockId=513 -runtimeId=3788 +runtimeId=4627 minecraft:crimson_fence_gate;in_wall_bit=1;open_bit=0;direction=3 blockId=513 -runtimeId=3789 +runtimeId=4628 minecraft:crimson_fence_gate;in_wall_bit=1;open_bit=1;direction=0 blockId=513 -runtimeId=3790 +runtimeId=4629 minecraft:crimson_fence_gate;in_wall_bit=1;open_bit=1;direction=1 blockId=513 -runtimeId=3791 +runtimeId=4630 minecraft:crimson_fence_gate;in_wall_bit=1;open_bit=1;direction=2 blockId=513 -runtimeId=3792 +runtimeId=4631 minecraft:crimson_fence_gate;in_wall_bit=1;open_bit=1;direction=3 blockId=513 -runtimeId=3793 +runtimeId=4632 minecraft:crimson_fungus blockId=483 -runtimeId=3794 +runtimeId=7695 minecraft:crimson_hyphae;pillar_axis=x blockId=554 -runtimeId=3796 +runtimeId=4243 minecraft:crimson_hyphae;pillar_axis=y blockId=554 -runtimeId=3795 +runtimeId=4242 minecraft:crimson_hyphae;pillar_axis=z blockId=554 -runtimeId=3797 +runtimeId=4244 minecraft:crimson_nylium blockId=487 -runtimeId=3798 +runtimeId=4172 minecraft:crimson_planks blockId=497 -runtimeId=3799 +runtimeId=4806 minecraft:crimson_pressure_plate;redstone_signal=0 blockId=517 -runtimeId=3800 +runtimeId=8210 minecraft:crimson_pressure_plate;redstone_signal=1 blockId=517 -runtimeId=3801 +runtimeId=8211 minecraft:crimson_pressure_plate;redstone_signal=2 blockId=517 -runtimeId=3802 +runtimeId=8212 minecraft:crimson_pressure_plate;redstone_signal=3 blockId=517 -runtimeId=3803 +runtimeId=8213 minecraft:crimson_pressure_plate;redstone_signal=4 blockId=517 -runtimeId=3804 +runtimeId=8214 minecraft:crimson_pressure_plate;redstone_signal=5 blockId=517 -runtimeId=3805 +runtimeId=8215 minecraft:crimson_pressure_plate;redstone_signal=6 blockId=517 -runtimeId=3806 +runtimeId=8216 minecraft:crimson_pressure_plate;redstone_signal=7 blockId=517 -runtimeId=3807 +runtimeId=8217 minecraft:crimson_pressure_plate;redstone_signal=8 blockId=517 -runtimeId=3808 +runtimeId=8218 minecraft:crimson_pressure_plate;redstone_signal=9 blockId=517 -runtimeId=3809 +runtimeId=8219 minecraft:crimson_pressure_plate;redstone_signal=10 blockId=517 -runtimeId=3810 +runtimeId=8220 minecraft:crimson_pressure_plate;redstone_signal=11 blockId=517 -runtimeId=3811 +runtimeId=8221 minecraft:crimson_pressure_plate;redstone_signal=12 blockId=517 -runtimeId=3812 +runtimeId=8222 minecraft:crimson_pressure_plate;redstone_signal=13 blockId=517 -runtimeId=3813 +runtimeId=8223 minecraft:crimson_pressure_plate;redstone_signal=14 blockId=517 -runtimeId=3814 +runtimeId=8224 minecraft:crimson_pressure_plate;redstone_signal=15 blockId=517 -runtimeId=3815 +runtimeId=8225 minecraft:crimson_roots blockId=478 -runtimeId=3816 +runtimeId=7515 minecraft:crimson_slab;top_slot_bit=0 blockId=519 -runtimeId=3817 +runtimeId=5824 minecraft:crimson_slab;top_slot_bit=1 blockId=519 -runtimeId=3818 +runtimeId=5825 minecraft:crimson_stairs;upside_down_bit=0;weirdo_direction=0 blockId=509 -runtimeId=3819 +runtimeId=6245 minecraft:crimson_stairs;upside_down_bit=0;weirdo_direction=1 blockId=509 -runtimeId=3820 +runtimeId=6246 minecraft:crimson_stairs;upside_down_bit=0;weirdo_direction=2 blockId=509 -runtimeId=3821 +runtimeId=6247 minecraft:crimson_stairs;upside_down_bit=0;weirdo_direction=3 blockId=509 -runtimeId=3822 +runtimeId=6248 minecraft:crimson_stairs;upside_down_bit=1;weirdo_direction=0 blockId=509 -runtimeId=3823 +runtimeId=6249 minecraft:crimson_stairs;upside_down_bit=1;weirdo_direction=1 blockId=509 -runtimeId=3824 +runtimeId=6250 minecraft:crimson_stairs;upside_down_bit=1;weirdo_direction=2 blockId=509 -runtimeId=3825 +runtimeId=6251 minecraft:crimson_stairs;upside_down_bit=1;weirdo_direction=3 blockId=509 -runtimeId=3826 +runtimeId=6252 minecraft:crimson_standing_sign;ground_sign_direction=0 blockId=505 -runtimeId=3827 +runtimeId=7255 minecraft:crimson_standing_sign;ground_sign_direction=1 blockId=505 -runtimeId=3828 +runtimeId=7256 minecraft:crimson_standing_sign;ground_sign_direction=2 blockId=505 -runtimeId=3829 +runtimeId=7257 minecraft:crimson_standing_sign;ground_sign_direction=3 blockId=505 -runtimeId=3830 +runtimeId=7258 minecraft:crimson_standing_sign;ground_sign_direction=4 blockId=505 -runtimeId=3831 +runtimeId=7259 minecraft:crimson_standing_sign;ground_sign_direction=5 blockId=505 -runtimeId=3832 +runtimeId=7260 minecraft:crimson_standing_sign;ground_sign_direction=6 blockId=505 -runtimeId=3833 +runtimeId=7261 minecraft:crimson_standing_sign;ground_sign_direction=7 blockId=505 -runtimeId=3834 +runtimeId=7262 minecraft:crimson_standing_sign;ground_sign_direction=8 blockId=505 -runtimeId=3835 +runtimeId=7263 minecraft:crimson_standing_sign;ground_sign_direction=9 blockId=505 -runtimeId=3836 +runtimeId=7264 minecraft:crimson_standing_sign;ground_sign_direction=10 blockId=505 -runtimeId=3837 +runtimeId=7265 minecraft:crimson_standing_sign;ground_sign_direction=11 blockId=505 -runtimeId=3838 +runtimeId=7266 minecraft:crimson_standing_sign;ground_sign_direction=12 blockId=505 -runtimeId=3839 +runtimeId=7267 minecraft:crimson_standing_sign;ground_sign_direction=13 blockId=505 -runtimeId=3840 +runtimeId=7268 minecraft:crimson_standing_sign;ground_sign_direction=14 blockId=505 -runtimeId=3841 +runtimeId=7269 minecraft:crimson_standing_sign;ground_sign_direction=15 blockId=505 -runtimeId=3842 +runtimeId=7270 minecraft:crimson_stem;pillar_axis=x blockId=480 -runtimeId=3844 +runtimeId=5822 minecraft:crimson_stem;pillar_axis=y blockId=480 -runtimeId=3843 +runtimeId=5821 minecraft:crimson_stem;pillar_axis=z blockId=480 -runtimeId=3845 +runtimeId=5823 minecraft:crimson_trapdoor;open_bit=0;upside_down_bit=0;direction=0 blockId=501 -runtimeId=3846 +runtimeId=4281 minecraft:crimson_trapdoor;open_bit=0;upside_down_bit=0;direction=1 blockId=501 -runtimeId=3847 +runtimeId=4282 minecraft:crimson_trapdoor;open_bit=0;upside_down_bit=0;direction=2 blockId=501 -runtimeId=3848 +runtimeId=4283 minecraft:crimson_trapdoor;open_bit=0;upside_down_bit=0;direction=3 blockId=501 -runtimeId=3849 +runtimeId=4284 minecraft:crimson_trapdoor;open_bit=0;upside_down_bit=1;direction=0 blockId=501 -runtimeId=3850 +runtimeId=4285 minecraft:crimson_trapdoor;open_bit=0;upside_down_bit=1;direction=1 blockId=501 -runtimeId=3851 +runtimeId=4286 minecraft:crimson_trapdoor;open_bit=0;upside_down_bit=1;direction=2 blockId=501 -runtimeId=3852 +runtimeId=4287 minecraft:crimson_trapdoor;open_bit=0;upside_down_bit=1;direction=3 blockId=501 -runtimeId=3853 +runtimeId=4288 minecraft:crimson_trapdoor;open_bit=1;upside_down_bit=0;direction=0 blockId=501 -runtimeId=3854 +runtimeId=4289 minecraft:crimson_trapdoor;open_bit=1;upside_down_bit=0;direction=1 blockId=501 -runtimeId=3855 +runtimeId=4290 minecraft:crimson_trapdoor;open_bit=1;upside_down_bit=0;direction=2 blockId=501 -runtimeId=3856 +runtimeId=4291 minecraft:crimson_trapdoor;open_bit=1;upside_down_bit=0;direction=3 blockId=501 -runtimeId=3857 +runtimeId=4292 minecraft:crimson_trapdoor;open_bit=1;upside_down_bit=1;direction=0 blockId=501 -runtimeId=3858 +runtimeId=4293 minecraft:crimson_trapdoor;open_bit=1;upside_down_bit=1;direction=1 blockId=501 -runtimeId=3859 +runtimeId=4294 minecraft:crimson_trapdoor;open_bit=1;upside_down_bit=1;direction=2 blockId=501 -runtimeId=3860 +runtimeId=4295 minecraft:crimson_trapdoor;open_bit=1;upside_down_bit=1;direction=3 blockId=501 -runtimeId=3861 +runtimeId=4296 minecraft:crimson_wall_sign;facing_direction=0 blockId=507 -runtimeId=3862 +runtimeId=138 minecraft:crimson_wall_sign;facing_direction=1 blockId=507 -runtimeId=3863 +runtimeId=139 minecraft:crimson_wall_sign;facing_direction=2 blockId=507 -runtimeId=3864 +runtimeId=140 minecraft:crimson_wall_sign;facing_direction=3 blockId=507 -runtimeId=3865 +runtimeId=141 minecraft:crimson_wall_sign;facing_direction=4 blockId=507 -runtimeId=3866 +runtimeId=142 minecraft:crimson_wall_sign;facing_direction=5 blockId=507 -runtimeId=3867 +runtimeId=143 minecraft:crying_obsidian blockId=544 -runtimeId=3868 +runtimeId=6596 minecraft:cut_copper blockId=602 -runtimeId=3869 +runtimeId=4645 minecraft:cut_copper_slab;top_slot_bit=0 blockId=616 -runtimeId=3870 +runtimeId=5191 minecraft:cut_copper_slab;top_slot_bit=1 blockId=616 -runtimeId=3871 +runtimeId=5192 minecraft:cut_copper_stairs;upside_down_bit=0;weirdo_direction=0 blockId=609 -runtimeId=3872 +runtimeId=4528 minecraft:cut_copper_stairs;upside_down_bit=0;weirdo_direction=1 blockId=609 -runtimeId=3873 +runtimeId=4529 minecraft:cut_copper_stairs;upside_down_bit=0;weirdo_direction=2 blockId=609 -runtimeId=3874 +runtimeId=4530 minecraft:cut_copper_stairs;upside_down_bit=0;weirdo_direction=3 blockId=609 -runtimeId=3875 +runtimeId=4531 minecraft:cut_copper_stairs;upside_down_bit=1;weirdo_direction=0 blockId=609 -runtimeId=3876 +runtimeId=4532 minecraft:cut_copper_stairs;upside_down_bit=1;weirdo_direction=1 blockId=609 -runtimeId=3877 +runtimeId=4533 minecraft:cut_copper_stairs;upside_down_bit=1;weirdo_direction=2 blockId=609 -runtimeId=3878 +runtimeId=4534 minecraft:cut_copper_stairs;upside_down_bit=1;weirdo_direction=3 blockId=609 -runtimeId=3879 +runtimeId=4535 + +minecraft:cyan_candle;lit=0;candles=0 +blockId=677 +runtimeId=7668 + +minecraft:cyan_candle;lit=0;candles=1 +blockId=677 +runtimeId=7669 + +minecraft:cyan_candle;lit=0;candles=2 +blockId=677 +runtimeId=7670 + +minecraft:cyan_candle;lit=0;candles=3 +blockId=677 +runtimeId=7671 + +minecraft:cyan_candle;lit=1;candles=0 +blockId=677 +runtimeId=7672 + +minecraft:cyan_candle;lit=1;candles=1 +blockId=677 +runtimeId=7673 + +minecraft:cyan_candle;lit=1;candles=2 +blockId=677 +runtimeId=7674 + +minecraft:cyan_candle;lit=1;candles=3 +blockId=677 +runtimeId=7675 + +minecraft:cyan_candle_cake;lit=0 +blockId=694 +runtimeId=718 + +minecraft:cyan_candle_cake;lit=1 +blockId=694 +runtimeId=719 minecraft:cyan_glazed_terracotta;facing_direction=0 blockId=229 -runtimeId=3880 +runtimeId=5308 minecraft:cyan_glazed_terracotta;facing_direction=1 blockId=229 -runtimeId=3881 +runtimeId=5309 minecraft:cyan_glazed_terracotta;facing_direction=2 blockId=229 -runtimeId=3882 +runtimeId=5310 minecraft:cyan_glazed_terracotta;facing_direction=3 blockId=229 -runtimeId=3883 +runtimeId=5311 minecraft:cyan_glazed_terracotta;facing_direction=4 blockId=229 -runtimeId=3884 +runtimeId=5312 minecraft:cyan_glazed_terracotta;facing_direction=5 blockId=229 -runtimeId=3885 +runtimeId=5313 minecraft:dark_oak_button;button_pressed_bit=0;facing_direction=0 blockId=397 -runtimeId=3886 +runtimeId=93 minecraft:dark_oak_button;button_pressed_bit=0;facing_direction=1 blockId=397 -runtimeId=3887 +runtimeId=94 minecraft:dark_oak_button;button_pressed_bit=0;facing_direction=2 blockId=397 -runtimeId=3888 +runtimeId=95 minecraft:dark_oak_button;button_pressed_bit=0;facing_direction=3 blockId=397 -runtimeId=3889 +runtimeId=96 minecraft:dark_oak_button;button_pressed_bit=0;facing_direction=4 blockId=397 -runtimeId=3890 +runtimeId=97 minecraft:dark_oak_button;button_pressed_bit=0;facing_direction=5 blockId=397 -runtimeId=3891 +runtimeId=98 minecraft:dark_oak_button;button_pressed_bit=1;facing_direction=0 blockId=397 -runtimeId=3892 +runtimeId=99 minecraft:dark_oak_button;button_pressed_bit=1;facing_direction=1 blockId=397 -runtimeId=3893 +runtimeId=100 minecraft:dark_oak_button;button_pressed_bit=1;facing_direction=2 blockId=397 -runtimeId=3894 +runtimeId=101 minecraft:dark_oak_button;button_pressed_bit=1;facing_direction=3 blockId=397 -runtimeId=3895 +runtimeId=102 minecraft:dark_oak_button;button_pressed_bit=1;facing_direction=4 blockId=397 -runtimeId=3896 +runtimeId=103 minecraft:dark_oak_button;button_pressed_bit=1;facing_direction=5 blockId=397 -runtimeId=3897 +runtimeId=104 minecraft:dark_oak_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=0 blockId=197 -runtimeId=3898 +runtimeId=5667 minecraft:dark_oak_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=1 blockId=197 -runtimeId=3899 +runtimeId=5668 minecraft:dark_oak_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=2 blockId=197 -runtimeId=3900 +runtimeId=5669 minecraft:dark_oak_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=3 blockId=197 -runtimeId=3901 +runtimeId=5670 minecraft:dark_oak_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=0 blockId=197 -runtimeId=3914 +runtimeId=5683 minecraft:dark_oak_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=1 blockId=197 -runtimeId=3915 +runtimeId=5684 minecraft:dark_oak_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=2 blockId=197 -runtimeId=3916 +runtimeId=5685 minecraft:dark_oak_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=3 blockId=197 -runtimeId=3917 +runtimeId=5686 minecraft:dark_oak_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=0 blockId=197 -runtimeId=3906 +runtimeId=5675 minecraft:dark_oak_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=1 blockId=197 -runtimeId=3907 +runtimeId=5676 minecraft:dark_oak_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=2 blockId=197 -runtimeId=3908 +runtimeId=5677 minecraft:dark_oak_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=3 blockId=197 -runtimeId=3909 +runtimeId=5678 minecraft:dark_oak_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=0 blockId=197 -runtimeId=3922 +runtimeId=5691 minecraft:dark_oak_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=1 blockId=197 -runtimeId=3923 +runtimeId=5692 minecraft:dark_oak_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=2 blockId=197 -runtimeId=3924 +runtimeId=5693 minecraft:dark_oak_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=3 blockId=197 -runtimeId=3925 +runtimeId=5694 minecraft:dark_oak_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=0 blockId=197 -runtimeId=3902 +runtimeId=5671 minecraft:dark_oak_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=1 blockId=197 -runtimeId=3903 +runtimeId=5672 minecraft:dark_oak_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=2 blockId=197 -runtimeId=3904 +runtimeId=5673 minecraft:dark_oak_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=3 blockId=197 -runtimeId=3905 +runtimeId=5674 minecraft:dark_oak_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=0 blockId=197 -runtimeId=3918 +runtimeId=5687 minecraft:dark_oak_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=1 blockId=197 -runtimeId=3919 +runtimeId=5688 minecraft:dark_oak_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=2 blockId=197 -runtimeId=3920 +runtimeId=5689 minecraft:dark_oak_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=3 blockId=197 -runtimeId=3921 +runtimeId=5690 minecraft:dark_oak_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=0 blockId=197 -runtimeId=3910 +runtimeId=5679 minecraft:dark_oak_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=1 blockId=197 -runtimeId=3911 +runtimeId=5680 minecraft:dark_oak_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=2 blockId=197 -runtimeId=3912 +runtimeId=5681 minecraft:dark_oak_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=3 blockId=197 -runtimeId=3913 +runtimeId=5682 minecraft:dark_oak_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=0 blockId=197 -runtimeId=3926 +runtimeId=5695 minecraft:dark_oak_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=1 blockId=197 -runtimeId=3927 +runtimeId=5696 minecraft:dark_oak_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=2 blockId=197 -runtimeId=3928 +runtimeId=5697 minecraft:dark_oak_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=3 blockId=197 -runtimeId=3929 +runtimeId=5698 minecraft:dark_oak_fence_gate;in_wall_bit=0;open_bit=0;direction=0 blockId=186 -runtimeId=3930 +runtimeId=4156 minecraft:dark_oak_fence_gate;in_wall_bit=0;open_bit=0;direction=1 blockId=186 -runtimeId=3931 +runtimeId=4157 minecraft:dark_oak_fence_gate;in_wall_bit=0;open_bit=0;direction=2 blockId=186 -runtimeId=3932 +runtimeId=4158 minecraft:dark_oak_fence_gate;in_wall_bit=0;open_bit=0;direction=3 blockId=186 -runtimeId=3933 +runtimeId=4159 minecraft:dark_oak_fence_gate;in_wall_bit=0;open_bit=1;direction=0 blockId=186 -runtimeId=3934 +runtimeId=4160 minecraft:dark_oak_fence_gate;in_wall_bit=0;open_bit=1;direction=1 blockId=186 -runtimeId=3935 +runtimeId=4161 minecraft:dark_oak_fence_gate;in_wall_bit=0;open_bit=1;direction=2 blockId=186 -runtimeId=3936 +runtimeId=4162 minecraft:dark_oak_fence_gate;in_wall_bit=0;open_bit=1;direction=3 blockId=186 -runtimeId=3937 +runtimeId=4163 minecraft:dark_oak_fence_gate;in_wall_bit=1;open_bit=0;direction=0 blockId=186 -runtimeId=3938 +runtimeId=4164 minecraft:dark_oak_fence_gate;in_wall_bit=1;open_bit=0;direction=1 blockId=186 -runtimeId=3939 +runtimeId=4165 minecraft:dark_oak_fence_gate;in_wall_bit=1;open_bit=0;direction=2 blockId=186 -runtimeId=3940 +runtimeId=4166 minecraft:dark_oak_fence_gate;in_wall_bit=1;open_bit=0;direction=3 blockId=186 -runtimeId=3941 +runtimeId=4167 minecraft:dark_oak_fence_gate;in_wall_bit=1;open_bit=1;direction=0 blockId=186 -runtimeId=3942 +runtimeId=4168 minecraft:dark_oak_fence_gate;in_wall_bit=1;open_bit=1;direction=1 blockId=186 -runtimeId=3943 +runtimeId=4169 minecraft:dark_oak_fence_gate;in_wall_bit=1;open_bit=1;direction=2 blockId=186 -runtimeId=3944 +runtimeId=4170 minecraft:dark_oak_fence_gate;in_wall_bit=1;open_bit=1;direction=3 blockId=186 -runtimeId=3945 +runtimeId=4171 minecraft:dark_oak_pressure_plate;redstone_signal=0 blockId=407 -runtimeId=3946 +runtimeId=5880 minecraft:dark_oak_pressure_plate;redstone_signal=1 blockId=407 -runtimeId=3947 +runtimeId=5881 minecraft:dark_oak_pressure_plate;redstone_signal=2 blockId=407 -runtimeId=3948 +runtimeId=5882 minecraft:dark_oak_pressure_plate;redstone_signal=3 blockId=407 -runtimeId=3949 +runtimeId=5883 minecraft:dark_oak_pressure_plate;redstone_signal=4 blockId=407 -runtimeId=3950 +runtimeId=5884 minecraft:dark_oak_pressure_plate;redstone_signal=5 blockId=407 -runtimeId=3951 +runtimeId=5885 minecraft:dark_oak_pressure_plate;redstone_signal=6 blockId=407 -runtimeId=3952 +runtimeId=5886 minecraft:dark_oak_pressure_plate;redstone_signal=7 blockId=407 -runtimeId=3953 +runtimeId=5887 minecraft:dark_oak_pressure_plate;redstone_signal=8 blockId=407 -runtimeId=3954 +runtimeId=5888 minecraft:dark_oak_pressure_plate;redstone_signal=9 blockId=407 -runtimeId=3955 +runtimeId=5889 minecraft:dark_oak_pressure_plate;redstone_signal=10 blockId=407 -runtimeId=3956 +runtimeId=5890 minecraft:dark_oak_pressure_plate;redstone_signal=11 blockId=407 -runtimeId=3957 +runtimeId=5891 minecraft:dark_oak_pressure_plate;redstone_signal=12 blockId=407 -runtimeId=3958 +runtimeId=5892 minecraft:dark_oak_pressure_plate;redstone_signal=13 blockId=407 -runtimeId=3959 +runtimeId=5893 minecraft:dark_oak_pressure_plate;redstone_signal=14 blockId=407 -runtimeId=3960 +runtimeId=5894 minecraft:dark_oak_pressure_plate;redstone_signal=15 blockId=407 -runtimeId=3961 +runtimeId=5895 minecraft:dark_oak_stairs;upside_down_bit=0;weirdo_direction=0 blockId=164 -runtimeId=3962 +runtimeId=5019 minecraft:dark_oak_stairs;upside_down_bit=0;weirdo_direction=1 blockId=164 -runtimeId=3963 +runtimeId=5020 minecraft:dark_oak_stairs;upside_down_bit=0;weirdo_direction=2 blockId=164 -runtimeId=3964 +runtimeId=5021 minecraft:dark_oak_stairs;upside_down_bit=0;weirdo_direction=3 blockId=164 -runtimeId=3965 +runtimeId=5022 minecraft:dark_oak_stairs;upside_down_bit=1;weirdo_direction=0 blockId=164 -runtimeId=3966 +runtimeId=5023 minecraft:dark_oak_stairs;upside_down_bit=1;weirdo_direction=1 blockId=164 -runtimeId=3967 +runtimeId=5024 minecraft:dark_oak_stairs;upside_down_bit=1;weirdo_direction=2 blockId=164 -runtimeId=3968 +runtimeId=5025 minecraft:dark_oak_stairs;upside_down_bit=1;weirdo_direction=3 blockId=164 -runtimeId=3969 +runtimeId=5026 minecraft:dark_oak_trapdoor;open_bit=0;upside_down_bit=0;direction=0 blockId=402 -runtimeId=3970 +runtimeId=7444 minecraft:dark_oak_trapdoor;open_bit=0;upside_down_bit=0;direction=1 blockId=402 -runtimeId=3971 +runtimeId=7445 minecraft:dark_oak_trapdoor;open_bit=0;upside_down_bit=0;direction=2 blockId=402 -runtimeId=3972 +runtimeId=7446 minecraft:dark_oak_trapdoor;open_bit=0;upside_down_bit=0;direction=3 blockId=402 -runtimeId=3973 +runtimeId=7447 minecraft:dark_oak_trapdoor;open_bit=0;upside_down_bit=1;direction=0 blockId=402 -runtimeId=3974 +runtimeId=7448 minecraft:dark_oak_trapdoor;open_bit=0;upside_down_bit=1;direction=1 blockId=402 -runtimeId=3975 +runtimeId=7449 minecraft:dark_oak_trapdoor;open_bit=0;upside_down_bit=1;direction=2 blockId=402 -runtimeId=3976 +runtimeId=7450 minecraft:dark_oak_trapdoor;open_bit=0;upside_down_bit=1;direction=3 blockId=402 -runtimeId=3977 +runtimeId=7451 minecraft:dark_oak_trapdoor;open_bit=1;upside_down_bit=0;direction=0 blockId=402 -runtimeId=3978 +runtimeId=7452 minecraft:dark_oak_trapdoor;open_bit=1;upside_down_bit=0;direction=1 blockId=402 -runtimeId=3979 +runtimeId=7453 minecraft:dark_oak_trapdoor;open_bit=1;upside_down_bit=0;direction=2 blockId=402 -runtimeId=3980 +runtimeId=7454 minecraft:dark_oak_trapdoor;open_bit=1;upside_down_bit=0;direction=3 blockId=402 -runtimeId=3981 +runtimeId=7455 minecraft:dark_oak_trapdoor;open_bit=1;upside_down_bit=1;direction=0 blockId=402 -runtimeId=3982 +runtimeId=7456 minecraft:dark_oak_trapdoor;open_bit=1;upside_down_bit=1;direction=1 blockId=402 -runtimeId=3983 +runtimeId=7457 minecraft:dark_oak_trapdoor;open_bit=1;upside_down_bit=1;direction=2 blockId=402 -runtimeId=3984 +runtimeId=7458 minecraft:dark_oak_trapdoor;open_bit=1;upside_down_bit=1;direction=3 blockId=402 -runtimeId=3985 +runtimeId=7459 minecraft:dark_prismarine_stairs;upside_down_bit=0;weirdo_direction=0 blockId=258 -runtimeId=3986 +runtimeId=7372 minecraft:dark_prismarine_stairs;upside_down_bit=0;weirdo_direction=1 blockId=258 -runtimeId=3987 +runtimeId=7373 minecraft:dark_prismarine_stairs;upside_down_bit=0;weirdo_direction=2 blockId=258 -runtimeId=3988 +runtimeId=7374 minecraft:dark_prismarine_stairs;upside_down_bit=0;weirdo_direction=3 blockId=258 -runtimeId=3989 +runtimeId=7375 minecraft:dark_prismarine_stairs;upside_down_bit=1;weirdo_direction=0 blockId=258 -runtimeId=3990 +runtimeId=7376 minecraft:dark_prismarine_stairs;upside_down_bit=1;weirdo_direction=1 blockId=258 -runtimeId=3991 +runtimeId=7377 minecraft:dark_prismarine_stairs;upside_down_bit=1;weirdo_direction=2 blockId=258 -runtimeId=3992 +runtimeId=7378 minecraft:dark_prismarine_stairs;upside_down_bit=1;weirdo_direction=3 blockId=258 -runtimeId=3993 +runtimeId=7379 minecraft:darkoak_standing_sign;ground_sign_direction=0 blockId=447 -runtimeId=3994 +runtimeId=7271 minecraft:darkoak_standing_sign;ground_sign_direction=1 blockId=447 -runtimeId=3995 +runtimeId=7272 minecraft:darkoak_standing_sign;ground_sign_direction=2 blockId=447 -runtimeId=3996 +runtimeId=7273 minecraft:darkoak_standing_sign;ground_sign_direction=3 blockId=447 -runtimeId=3997 +runtimeId=7274 minecraft:darkoak_standing_sign;ground_sign_direction=4 blockId=447 -runtimeId=3998 +runtimeId=7275 minecraft:darkoak_standing_sign;ground_sign_direction=5 blockId=447 -runtimeId=3999 +runtimeId=7276 minecraft:darkoak_standing_sign;ground_sign_direction=6 blockId=447 -runtimeId=4000 +runtimeId=7277 minecraft:darkoak_standing_sign;ground_sign_direction=7 blockId=447 -runtimeId=4001 +runtimeId=7278 minecraft:darkoak_standing_sign;ground_sign_direction=8 blockId=447 -runtimeId=4002 +runtimeId=7279 minecraft:darkoak_standing_sign;ground_sign_direction=9 blockId=447 -runtimeId=4003 +runtimeId=7280 minecraft:darkoak_standing_sign;ground_sign_direction=10 blockId=447 -runtimeId=4004 +runtimeId=7281 minecraft:darkoak_standing_sign;ground_sign_direction=11 blockId=447 -runtimeId=4005 +runtimeId=7282 minecraft:darkoak_standing_sign;ground_sign_direction=12 blockId=447 -runtimeId=4006 +runtimeId=7283 minecraft:darkoak_standing_sign;ground_sign_direction=13 blockId=447 -runtimeId=4007 +runtimeId=7284 minecraft:darkoak_standing_sign;ground_sign_direction=14 blockId=447 -runtimeId=4008 +runtimeId=7285 minecraft:darkoak_standing_sign;ground_sign_direction=15 blockId=447 -runtimeId=4009 +runtimeId=7286 minecraft:darkoak_wall_sign;facing_direction=0 blockId=448 -runtimeId=4010 +runtimeId=5294 minecraft:darkoak_wall_sign;facing_direction=1 blockId=448 -runtimeId=4011 +runtimeId=5295 minecraft:darkoak_wall_sign;facing_direction=2 blockId=448 -runtimeId=4012 +runtimeId=5296 minecraft:darkoak_wall_sign;facing_direction=3 blockId=448 -runtimeId=4013 +runtimeId=5297 minecraft:darkoak_wall_sign;facing_direction=4 blockId=448 -runtimeId=4014 +runtimeId=5298 minecraft:darkoak_wall_sign;facing_direction=5 blockId=448 -runtimeId=4015 +runtimeId=5299 minecraft:daylight_detector;redstone_signal=0 blockId=151 -runtimeId=4016 +runtimeId=4180 minecraft:daylight_detector;redstone_signal=1 blockId=151 -runtimeId=4017 +runtimeId=4181 minecraft:daylight_detector;redstone_signal=2 blockId=151 -runtimeId=4018 +runtimeId=4182 minecraft:daylight_detector;redstone_signal=3 blockId=151 -runtimeId=4019 +runtimeId=4183 minecraft:daylight_detector;redstone_signal=4 blockId=151 -runtimeId=4020 +runtimeId=4184 minecraft:daylight_detector;redstone_signal=5 blockId=151 -runtimeId=4021 +runtimeId=4185 minecraft:daylight_detector;redstone_signal=6 blockId=151 -runtimeId=4022 +runtimeId=4186 minecraft:daylight_detector;redstone_signal=7 blockId=151 -runtimeId=4023 +runtimeId=4187 minecraft:daylight_detector;redstone_signal=8 blockId=151 -runtimeId=4024 +runtimeId=4188 minecraft:daylight_detector;redstone_signal=9 blockId=151 -runtimeId=4025 +runtimeId=4189 minecraft:daylight_detector;redstone_signal=10 blockId=151 -runtimeId=4026 +runtimeId=4190 minecraft:daylight_detector;redstone_signal=11 blockId=151 -runtimeId=4027 +runtimeId=4191 minecraft:daylight_detector;redstone_signal=12 blockId=151 -runtimeId=4028 +runtimeId=4192 minecraft:daylight_detector;redstone_signal=13 blockId=151 -runtimeId=4029 +runtimeId=4193 minecraft:daylight_detector;redstone_signal=14 blockId=151 -runtimeId=4030 +runtimeId=4194 minecraft:daylight_detector;redstone_signal=15 blockId=151 -runtimeId=4031 +runtimeId=4195 minecraft:daylight_detector_inverted;redstone_signal=0 blockId=178 -runtimeId=4032 +runtimeId=4434 minecraft:daylight_detector_inverted;redstone_signal=1 blockId=178 -runtimeId=4033 +runtimeId=4435 minecraft:daylight_detector_inverted;redstone_signal=2 blockId=178 -runtimeId=4034 +runtimeId=4436 minecraft:daylight_detector_inverted;redstone_signal=3 blockId=178 -runtimeId=4035 +runtimeId=4437 minecraft:daylight_detector_inverted;redstone_signal=4 blockId=178 -runtimeId=4036 +runtimeId=4438 minecraft:daylight_detector_inverted;redstone_signal=5 blockId=178 -runtimeId=4037 +runtimeId=4439 minecraft:daylight_detector_inverted;redstone_signal=6 blockId=178 -runtimeId=4038 +runtimeId=4440 minecraft:daylight_detector_inverted;redstone_signal=7 blockId=178 -runtimeId=4039 +runtimeId=4441 minecraft:daylight_detector_inverted;redstone_signal=8 blockId=178 -runtimeId=4040 +runtimeId=4442 minecraft:daylight_detector_inverted;redstone_signal=9 blockId=178 -runtimeId=4041 +runtimeId=4443 minecraft:daylight_detector_inverted;redstone_signal=10 blockId=178 -runtimeId=4042 +runtimeId=4444 minecraft:daylight_detector_inverted;redstone_signal=11 blockId=178 -runtimeId=4043 +runtimeId=4445 minecraft:daylight_detector_inverted;redstone_signal=12 blockId=178 -runtimeId=4044 +runtimeId=4446 minecraft:daylight_detector_inverted;redstone_signal=13 blockId=178 -runtimeId=4045 +runtimeId=4447 minecraft:daylight_detector_inverted;redstone_signal=14 blockId=178 -runtimeId=4046 +runtimeId=4448 minecraft:daylight_detector_inverted;redstone_signal=15 blockId=178 -runtimeId=4047 +runtimeId=4449 minecraft:deadbush blockId=32 -runtimeId=4048 +runtimeId=4633 minecraft:deepslate;pillar_axis=x blockId=633 -runtimeId=4050 +runtimeId=268 minecraft:deepslate;pillar_axis=y blockId=633 -runtimeId=4049 +runtimeId=267 minecraft:deepslate;pillar_axis=z blockId=633 -runtimeId=4051 +runtimeId=269 minecraft:deepslate_brick_double_slab;top_slot_bit=0 blockId=654 -runtimeId=4052 +runtimeId=3461 minecraft:deepslate_brick_double_slab;top_slot_bit=1 blockId=654 -runtimeId=4053 +runtimeId=3462 minecraft:deepslate_brick_slab;top_slot_bit=0 blockId=647 -runtimeId=4054 +runtimeId=3721 minecraft:deepslate_brick_slab;top_slot_bit=1 blockId=647 -runtimeId=4055 +runtimeId=3722 minecraft:deepslate_brick_stairs;upside_down_bit=0;weirdo_direction=0 blockId=648 -runtimeId=4056 +runtimeId=7364 minecraft:deepslate_brick_stairs;upside_down_bit=0;weirdo_direction=1 blockId=648 -runtimeId=4057 +runtimeId=7365 minecraft:deepslate_brick_stairs;upside_down_bit=0;weirdo_direction=2 blockId=648 -runtimeId=4058 +runtimeId=7366 minecraft:deepslate_brick_stairs;upside_down_bit=0;weirdo_direction=3 blockId=648 -runtimeId=4059 +runtimeId=7367 minecraft:deepslate_brick_stairs;upside_down_bit=1;weirdo_direction=0 blockId=648 -runtimeId=4060 +runtimeId=7368 minecraft:deepslate_brick_stairs;upside_down_bit=1;weirdo_direction=1 blockId=648 -runtimeId=4061 +runtimeId=7369 minecraft:deepslate_brick_stairs;upside_down_bit=1;weirdo_direction=2 blockId=648 -runtimeId=4062 +runtimeId=7370 minecraft:deepslate_brick_stairs;upside_down_bit=1;weirdo_direction=3 blockId=648 -runtimeId=4063 +runtimeId=7371 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=649 -runtimeId=4064 +runtimeId=437 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=649 -runtimeId=4066 +runtimeId=439 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=649 -runtimeId=4068 +runtimeId=441 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=649 -runtimeId=4118 +runtimeId=491 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=649 -runtimeId=4120 +runtimeId=493 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=649 -runtimeId=4122 +runtimeId=495 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=649 -runtimeId=4172 +runtimeId=545 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=649 -runtimeId=4174 +runtimeId=547 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=649 -runtimeId=4176 +runtimeId=549 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=649 -runtimeId=4082 +runtimeId=455 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=649 -runtimeId=4084 +runtimeId=457 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=649 -runtimeId=4086 +runtimeId=459 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=649 -runtimeId=4136 +runtimeId=509 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=649 -runtimeId=4138 +runtimeId=511 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=649 -runtimeId=4140 +runtimeId=513 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=649 -runtimeId=4190 +runtimeId=563 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=649 -runtimeId=4192 +runtimeId=565 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=649 -runtimeId=4194 +runtimeId=567 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=649 -runtimeId=4100 +runtimeId=473 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=649 -runtimeId=4102 +runtimeId=475 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=649 -runtimeId=4104 +runtimeId=477 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=649 -runtimeId=4154 +runtimeId=527 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=649 -runtimeId=4156 +runtimeId=529 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=649 -runtimeId=4158 +runtimeId=531 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=649 -runtimeId=4208 +runtimeId=581 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=649 -runtimeId=4210 +runtimeId=583 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=649 -runtimeId=4212 +runtimeId=585 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=649 -runtimeId=4065 +runtimeId=438 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=649 -runtimeId=4067 +runtimeId=440 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=649 -runtimeId=4069 +runtimeId=442 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=649 -runtimeId=4119 +runtimeId=492 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=649 -runtimeId=4121 +runtimeId=494 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=649 -runtimeId=4123 +runtimeId=496 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=649 -runtimeId=4173 +runtimeId=546 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=649 -runtimeId=4175 +runtimeId=548 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=649 -runtimeId=4177 +runtimeId=550 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=649 -runtimeId=4083 +runtimeId=456 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=649 -runtimeId=4085 +runtimeId=458 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=649 -runtimeId=4087 +runtimeId=460 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=649 -runtimeId=4137 +runtimeId=510 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=649 -runtimeId=4139 +runtimeId=512 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=649 -runtimeId=4141 +runtimeId=514 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=649 -runtimeId=4191 +runtimeId=564 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=649 -runtimeId=4193 +runtimeId=566 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=649 -runtimeId=4195 +runtimeId=568 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=649 -runtimeId=4101 +runtimeId=474 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=649 -runtimeId=4103 +runtimeId=476 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=649 -runtimeId=4105 +runtimeId=478 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=649 -runtimeId=4155 +runtimeId=528 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=649 -runtimeId=4157 +runtimeId=530 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=649 -runtimeId=4159 +runtimeId=532 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=649 -runtimeId=4209 +runtimeId=582 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=649 -runtimeId=4211 +runtimeId=584 minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=649 -runtimeId=4213 +runtimeId=586 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=649 -runtimeId=4070 +runtimeId=443 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=649 -runtimeId=4072 +runtimeId=445 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=649 -runtimeId=4074 +runtimeId=447 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=649 -runtimeId=4124 +runtimeId=497 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=649 -runtimeId=4126 +runtimeId=499 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=649 -runtimeId=4128 +runtimeId=501 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=649 -runtimeId=4178 +runtimeId=551 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=649 -runtimeId=4180 +runtimeId=553 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=649 -runtimeId=4182 +runtimeId=555 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=649 -runtimeId=4088 +runtimeId=461 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=649 -runtimeId=4090 +runtimeId=463 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=649 -runtimeId=4092 +runtimeId=465 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=649 -runtimeId=4142 +runtimeId=515 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=649 -runtimeId=4144 +runtimeId=517 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=649 -runtimeId=4146 +runtimeId=519 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=649 -runtimeId=4196 +runtimeId=569 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=649 -runtimeId=4198 +runtimeId=571 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=649 -runtimeId=4200 +runtimeId=573 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=649 -runtimeId=4106 +runtimeId=479 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=649 -runtimeId=4108 +runtimeId=481 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=649 -runtimeId=4110 +runtimeId=483 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=649 -runtimeId=4160 +runtimeId=533 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=649 -runtimeId=4162 +runtimeId=535 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=649 -runtimeId=4164 +runtimeId=537 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=649 -runtimeId=4214 +runtimeId=587 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=649 -runtimeId=4216 +runtimeId=589 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=649 -runtimeId=4218 +runtimeId=591 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=649 -runtimeId=4071 +runtimeId=444 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=649 -runtimeId=4073 +runtimeId=446 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=649 -runtimeId=4075 +runtimeId=448 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=649 -runtimeId=4125 +runtimeId=498 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=649 -runtimeId=4127 +runtimeId=500 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=649 -runtimeId=4129 +runtimeId=502 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=649 -runtimeId=4179 +runtimeId=552 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=649 -runtimeId=4181 +runtimeId=554 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=649 -runtimeId=4183 +runtimeId=556 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=649 -runtimeId=4089 +runtimeId=462 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=649 -runtimeId=4091 +runtimeId=464 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=649 -runtimeId=4093 +runtimeId=466 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=649 -runtimeId=4143 +runtimeId=516 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=649 -runtimeId=4145 +runtimeId=518 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=649 -runtimeId=4147 +runtimeId=520 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=649 -runtimeId=4197 +runtimeId=570 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=649 -runtimeId=4199 +runtimeId=572 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=649 -runtimeId=4201 +runtimeId=574 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=649 -runtimeId=4107 +runtimeId=480 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=649 -runtimeId=4109 +runtimeId=482 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=649 -runtimeId=4111 +runtimeId=484 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=649 -runtimeId=4161 +runtimeId=534 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=649 -runtimeId=4163 +runtimeId=536 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=649 -runtimeId=4165 +runtimeId=538 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=649 -runtimeId=4215 +runtimeId=588 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=649 -runtimeId=4217 +runtimeId=590 minecraft:deepslate_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=649 -runtimeId=4219 +runtimeId=592 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=649 -runtimeId=4076 +runtimeId=449 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=649 -runtimeId=4078 +runtimeId=451 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=649 -runtimeId=4080 +runtimeId=453 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=649 -runtimeId=4130 +runtimeId=503 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=649 -runtimeId=4132 +runtimeId=505 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=649 -runtimeId=4134 +runtimeId=507 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=649 -runtimeId=4184 +runtimeId=557 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=649 -runtimeId=4186 +runtimeId=559 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=649 -runtimeId=4188 +runtimeId=561 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=649 -runtimeId=4094 +runtimeId=467 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=649 -runtimeId=4096 +runtimeId=469 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=649 -runtimeId=4098 +runtimeId=471 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=649 -runtimeId=4148 +runtimeId=521 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=649 -runtimeId=4150 +runtimeId=523 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=649 -runtimeId=4152 +runtimeId=525 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=649 -runtimeId=4202 +runtimeId=575 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=649 -runtimeId=4204 +runtimeId=577 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=649 -runtimeId=4206 +runtimeId=579 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=649 -runtimeId=4112 +runtimeId=485 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=649 -runtimeId=4114 +runtimeId=487 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=649 -runtimeId=4116 +runtimeId=489 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=649 -runtimeId=4166 +runtimeId=539 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=649 -runtimeId=4168 +runtimeId=541 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=649 -runtimeId=4170 +runtimeId=543 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=649 -runtimeId=4220 +runtimeId=593 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=649 -runtimeId=4222 +runtimeId=595 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=649 -runtimeId=4224 +runtimeId=597 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=649 -runtimeId=4077 +runtimeId=450 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=649 -runtimeId=4079 +runtimeId=452 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=649 -runtimeId=4081 +runtimeId=454 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=649 -runtimeId=4131 +runtimeId=504 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=649 -runtimeId=4133 +runtimeId=506 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=649 -runtimeId=4135 +runtimeId=508 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=649 -runtimeId=4185 +runtimeId=558 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=649 -runtimeId=4187 +runtimeId=560 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=649 -runtimeId=4189 +runtimeId=562 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=649 -runtimeId=4095 +runtimeId=468 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=649 -runtimeId=4097 +runtimeId=470 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=649 -runtimeId=4099 +runtimeId=472 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=649 -runtimeId=4149 +runtimeId=522 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=649 -runtimeId=4151 +runtimeId=524 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=649 -runtimeId=4153 +runtimeId=526 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=649 -runtimeId=4203 +runtimeId=576 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=649 -runtimeId=4205 +runtimeId=578 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=649 -runtimeId=4207 +runtimeId=580 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=649 -runtimeId=4113 +runtimeId=486 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=649 -runtimeId=4115 +runtimeId=488 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=649 -runtimeId=4117 +runtimeId=490 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=649 -runtimeId=4167 +runtimeId=540 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=649 -runtimeId=4169 +runtimeId=542 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=649 -runtimeId=4171 +runtimeId=544 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=649 -runtimeId=4221 +runtimeId=594 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=649 -runtimeId=4223 +runtimeId=596 minecraft:deepslate_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=649 -runtimeId=4225 +runtimeId=598 minecraft:deepslate_bricks blockId=646 -runtimeId=4226 +runtimeId=5414 minecraft:deepslate_coal_ore blockId=661 -runtimeId=4227 +runtimeId=7138 minecraft:deepslate_copper_ore blockId=663 -runtimeId=4228 +runtimeId=105 minecraft:deepslate_diamond_ore blockId=660 -runtimeId=4229 +runtimeId=7980 minecraft:deepslate_emerald_ore blockId=662 -runtimeId=4230 +runtimeId=6315 minecraft:deepslate_gold_ore blockId=657 -runtimeId=4231 +runtimeId=6030 minecraft:deepslate_iron_ore blockId=656 -runtimeId=4232 +runtimeId=7215 minecraft:deepslate_lapis_ore blockId=655 -runtimeId=4233 +runtimeId=7204 minecraft:deepslate_redstone_ore blockId=658 -runtimeId=4234 +runtimeId=6507 minecraft:deepslate_tile_double_slab;top_slot_bit=0 blockId=653 -runtimeId=4235 +runtimeId=369 minecraft:deepslate_tile_double_slab;top_slot_bit=1 blockId=653 -runtimeId=4236 +runtimeId=370 minecraft:deepslate_tile_slab;top_slot_bit=0 blockId=643 -runtimeId=4237 +runtimeId=4239 minecraft:deepslate_tile_slab;top_slot_bit=1 blockId=643 -runtimeId=4238 +runtimeId=4240 minecraft:deepslate_tile_stairs;upside_down_bit=0;weirdo_direction=0 blockId=644 -runtimeId=4239 +runtimeId=4609 minecraft:deepslate_tile_stairs;upside_down_bit=0;weirdo_direction=1 blockId=644 -runtimeId=4240 +runtimeId=4610 minecraft:deepslate_tile_stairs;upside_down_bit=0;weirdo_direction=2 blockId=644 -runtimeId=4241 +runtimeId=4611 minecraft:deepslate_tile_stairs;upside_down_bit=0;weirdo_direction=3 blockId=644 -runtimeId=4242 +runtimeId=4612 minecraft:deepslate_tile_stairs;upside_down_bit=1;weirdo_direction=0 blockId=644 -runtimeId=4243 +runtimeId=4613 minecraft:deepslate_tile_stairs;upside_down_bit=1;weirdo_direction=1 blockId=644 -runtimeId=4244 +runtimeId=4614 minecraft:deepslate_tile_stairs;upside_down_bit=1;weirdo_direction=2 blockId=644 -runtimeId=4245 +runtimeId=4615 minecraft:deepslate_tile_stairs;upside_down_bit=1;weirdo_direction=3 blockId=644 -runtimeId=4246 +runtimeId=4616 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=645 -runtimeId=4247 +runtimeId=5027 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=645 -runtimeId=4249 +runtimeId=5029 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=645 -runtimeId=4251 +runtimeId=5031 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=645 -runtimeId=4301 +runtimeId=5081 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=645 -runtimeId=4303 +runtimeId=5083 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=645 -runtimeId=4305 +runtimeId=5085 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=645 -runtimeId=4355 +runtimeId=5135 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=645 -runtimeId=4357 +runtimeId=5137 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=645 -runtimeId=4359 +runtimeId=5139 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=645 -runtimeId=4265 +runtimeId=5045 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=645 -runtimeId=4267 +runtimeId=5047 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=645 -runtimeId=4269 +runtimeId=5049 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=645 -runtimeId=4319 +runtimeId=5099 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=645 -runtimeId=4321 +runtimeId=5101 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=645 -runtimeId=4323 +runtimeId=5103 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=645 -runtimeId=4373 +runtimeId=5153 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=645 -runtimeId=4375 +runtimeId=5155 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=645 -runtimeId=4377 +runtimeId=5157 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=645 -runtimeId=4283 +runtimeId=5063 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=645 -runtimeId=4285 +runtimeId=5065 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=645 -runtimeId=4287 +runtimeId=5067 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=645 -runtimeId=4337 +runtimeId=5117 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=645 -runtimeId=4339 +runtimeId=5119 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=645 -runtimeId=4341 +runtimeId=5121 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=645 -runtimeId=4391 +runtimeId=5171 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=645 -runtimeId=4393 +runtimeId=5173 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=645 -runtimeId=4395 +runtimeId=5175 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=645 -runtimeId=4248 +runtimeId=5028 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=645 -runtimeId=4250 +runtimeId=5030 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=645 -runtimeId=4252 +runtimeId=5032 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=645 -runtimeId=4302 +runtimeId=5082 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=645 -runtimeId=4304 +runtimeId=5084 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=645 -runtimeId=4306 +runtimeId=5086 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=645 -runtimeId=4356 +runtimeId=5136 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=645 -runtimeId=4358 +runtimeId=5138 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=645 -runtimeId=4360 +runtimeId=5140 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=645 -runtimeId=4266 +runtimeId=5046 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=645 -runtimeId=4268 +runtimeId=5048 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=645 -runtimeId=4270 +runtimeId=5050 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=645 -runtimeId=4320 +runtimeId=5100 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=645 -runtimeId=4322 +runtimeId=5102 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=645 -runtimeId=4324 +runtimeId=5104 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=645 -runtimeId=4374 +runtimeId=5154 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=645 -runtimeId=4376 +runtimeId=5156 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=645 -runtimeId=4378 +runtimeId=5158 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=645 -runtimeId=4284 +runtimeId=5064 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=645 -runtimeId=4286 +runtimeId=5066 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=645 -runtimeId=4288 +runtimeId=5068 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=645 -runtimeId=4338 +runtimeId=5118 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=645 -runtimeId=4340 +runtimeId=5120 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=645 -runtimeId=4342 +runtimeId=5122 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=645 -runtimeId=4392 +runtimeId=5172 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=645 -runtimeId=4394 +runtimeId=5174 minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=645 -runtimeId=4396 +runtimeId=5176 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=645 -runtimeId=4253 +runtimeId=5033 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=645 -runtimeId=4255 +runtimeId=5035 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=645 -runtimeId=4257 +runtimeId=5037 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=645 -runtimeId=4307 +runtimeId=5087 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=645 -runtimeId=4309 +runtimeId=5089 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=645 -runtimeId=4311 +runtimeId=5091 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=645 -runtimeId=4361 +runtimeId=5141 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=645 -runtimeId=4363 +runtimeId=5143 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=645 -runtimeId=4365 +runtimeId=5145 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=645 -runtimeId=4271 +runtimeId=5051 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=645 -runtimeId=4273 +runtimeId=5053 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=645 -runtimeId=4275 +runtimeId=5055 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=645 -runtimeId=4325 +runtimeId=5105 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=645 -runtimeId=4327 +runtimeId=5107 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=645 -runtimeId=4329 +runtimeId=5109 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=645 -runtimeId=4379 +runtimeId=5159 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=645 -runtimeId=4381 +runtimeId=5161 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=645 -runtimeId=4383 +runtimeId=5163 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=645 -runtimeId=4289 +runtimeId=5069 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=645 -runtimeId=4291 +runtimeId=5071 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=645 -runtimeId=4293 +runtimeId=5073 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=645 -runtimeId=4343 +runtimeId=5123 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=645 -runtimeId=4345 +runtimeId=5125 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=645 -runtimeId=4347 +runtimeId=5127 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=645 -runtimeId=4397 +runtimeId=5177 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=645 -runtimeId=4399 +runtimeId=5179 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=645 -runtimeId=4401 +runtimeId=5181 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=645 -runtimeId=4254 +runtimeId=5034 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=645 -runtimeId=4256 +runtimeId=5036 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=645 -runtimeId=4258 +runtimeId=5038 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=645 -runtimeId=4308 +runtimeId=5088 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=645 -runtimeId=4310 +runtimeId=5090 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=645 -runtimeId=4312 +runtimeId=5092 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=645 -runtimeId=4362 +runtimeId=5142 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=645 -runtimeId=4364 +runtimeId=5144 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=645 -runtimeId=4366 +runtimeId=5146 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=645 -runtimeId=4272 +runtimeId=5052 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=645 -runtimeId=4274 +runtimeId=5054 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=645 -runtimeId=4276 +runtimeId=5056 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=645 -runtimeId=4326 +runtimeId=5106 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=645 -runtimeId=4328 +runtimeId=5108 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=645 -runtimeId=4330 +runtimeId=5110 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=645 -runtimeId=4380 +runtimeId=5160 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=645 -runtimeId=4382 +runtimeId=5162 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=645 -runtimeId=4384 +runtimeId=5164 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=645 -runtimeId=4290 +runtimeId=5070 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=645 -runtimeId=4292 +runtimeId=5072 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=645 -runtimeId=4294 +runtimeId=5074 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=645 -runtimeId=4344 +runtimeId=5124 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=645 -runtimeId=4346 +runtimeId=5126 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=645 -runtimeId=4348 +runtimeId=5128 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=645 -runtimeId=4398 +runtimeId=5178 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=645 -runtimeId=4400 +runtimeId=5180 minecraft:deepslate_tile_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=645 -runtimeId=4402 +runtimeId=5182 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=645 -runtimeId=4259 +runtimeId=5039 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=645 -runtimeId=4261 +runtimeId=5041 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=645 -runtimeId=4263 +runtimeId=5043 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=645 -runtimeId=4313 +runtimeId=5093 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=645 -runtimeId=4315 +runtimeId=5095 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=645 -runtimeId=4317 +runtimeId=5097 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=645 -runtimeId=4367 +runtimeId=5147 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=645 -runtimeId=4369 +runtimeId=5149 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=645 -runtimeId=4371 +runtimeId=5151 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=645 -runtimeId=4277 +runtimeId=5057 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=645 -runtimeId=4279 +runtimeId=5059 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=645 -runtimeId=4281 +runtimeId=5061 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=645 -runtimeId=4331 +runtimeId=5111 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=645 -runtimeId=4333 +runtimeId=5113 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=645 -runtimeId=4335 +runtimeId=5115 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=645 -runtimeId=4385 +runtimeId=5165 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=645 -runtimeId=4387 +runtimeId=5167 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=645 -runtimeId=4389 +runtimeId=5169 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=645 -runtimeId=4295 +runtimeId=5075 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=645 -runtimeId=4297 +runtimeId=5077 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=645 -runtimeId=4299 +runtimeId=5079 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=645 -runtimeId=4349 +runtimeId=5129 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=645 -runtimeId=4351 +runtimeId=5131 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=645 -runtimeId=4353 +runtimeId=5133 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=645 -runtimeId=4403 +runtimeId=5183 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=645 -runtimeId=4405 +runtimeId=5185 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=645 -runtimeId=4407 +runtimeId=5187 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=645 -runtimeId=4260 +runtimeId=5040 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=645 -runtimeId=4262 +runtimeId=5042 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=645 -runtimeId=4264 +runtimeId=5044 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=645 -runtimeId=4314 +runtimeId=5094 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=645 -runtimeId=4316 +runtimeId=5096 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=645 -runtimeId=4318 +runtimeId=5098 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=645 -runtimeId=4368 +runtimeId=5148 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=645 -runtimeId=4370 +runtimeId=5150 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=645 -runtimeId=4372 +runtimeId=5152 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=645 -runtimeId=4278 +runtimeId=5058 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=645 -runtimeId=4280 +runtimeId=5060 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=645 -runtimeId=4282 +runtimeId=5062 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=645 -runtimeId=4332 +runtimeId=5112 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=645 -runtimeId=4334 +runtimeId=5114 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=645 -runtimeId=4336 +runtimeId=5116 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=645 -runtimeId=4386 +runtimeId=5166 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=645 -runtimeId=4388 +runtimeId=5168 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=645 -runtimeId=4390 +runtimeId=5170 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=645 -runtimeId=4296 +runtimeId=5076 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=645 -runtimeId=4298 +runtimeId=5078 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=645 -runtimeId=4300 +runtimeId=5080 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=645 -runtimeId=4350 +runtimeId=5130 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=645 -runtimeId=4352 +runtimeId=5132 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=645 -runtimeId=4354 +runtimeId=5134 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=645 -runtimeId=4404 +runtimeId=5184 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=645 -runtimeId=4406 +runtimeId=5186 minecraft:deepslate_tile_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=645 -runtimeId=4408 +runtimeId=5188 minecraft:deepslate_tiles blockId=642 -runtimeId=4409 +runtimeId=4513 minecraft:deny blockId=211 -runtimeId=4410 +runtimeId=5703 minecraft:detector_rail;rail_direction=0;rail_data_bit=0 blockId=28 -runtimeId=4411 +runtimeId=4121 minecraft:detector_rail;rail_direction=0;rail_data_bit=1 blockId=28 -runtimeId=4417 +runtimeId=4127 minecraft:detector_rail;rail_direction=1;rail_data_bit=0 blockId=28 -runtimeId=4412 +runtimeId=4122 minecraft:detector_rail;rail_direction=1;rail_data_bit=1 blockId=28 -runtimeId=4418 +runtimeId=4128 minecraft:detector_rail;rail_direction=2;rail_data_bit=0 blockId=28 -runtimeId=4413 +runtimeId=4123 minecraft:detector_rail;rail_direction=2;rail_data_bit=1 blockId=28 -runtimeId=4419 +runtimeId=4129 minecraft:detector_rail;rail_direction=3;rail_data_bit=0 blockId=28 -runtimeId=4414 +runtimeId=4124 minecraft:detector_rail;rail_direction=3;rail_data_bit=1 blockId=28 -runtimeId=4420 +runtimeId=4130 minecraft:detector_rail;rail_direction=4;rail_data_bit=0 blockId=28 -runtimeId=4415 +runtimeId=4125 minecraft:detector_rail;rail_direction=4;rail_data_bit=1 blockId=28 -runtimeId=4421 +runtimeId=4131 minecraft:detector_rail;rail_direction=5;rail_data_bit=0 blockId=28 -runtimeId=4416 +runtimeId=4126 minecraft:detector_rail;rail_direction=5;rail_data_bit=1 blockId=28 -runtimeId=4422 +runtimeId=4132 minecraft:diamond_block blockId=57 -runtimeId=4423 +runtimeId=286 minecraft:diamond_ore blockId=56 -runtimeId=4424 +runtimeId=4309 minecraft:diorite_stairs;upside_down_bit=0;weirdo_direction=0 blockId=425 -runtimeId=4425 +runtimeId=4339 minecraft:diorite_stairs;upside_down_bit=0;weirdo_direction=1 blockId=425 -runtimeId=4426 +runtimeId=4340 minecraft:diorite_stairs;upside_down_bit=0;weirdo_direction=2 blockId=425 -runtimeId=4427 +runtimeId=4341 minecraft:diorite_stairs;upside_down_bit=0;weirdo_direction=3 blockId=425 -runtimeId=4428 +runtimeId=4342 minecraft:diorite_stairs;upside_down_bit=1;weirdo_direction=0 blockId=425 -runtimeId=4429 +runtimeId=4343 minecraft:diorite_stairs;upside_down_bit=1;weirdo_direction=1 blockId=425 -runtimeId=4430 +runtimeId=4344 minecraft:diorite_stairs;upside_down_bit=1;weirdo_direction=2 blockId=425 -runtimeId=4431 +runtimeId=4345 minecraft:diorite_stairs;upside_down_bit=1;weirdo_direction=3 blockId=425 -runtimeId=4432 +runtimeId=4346 minecraft:dirt;dirt_type=coarse blockId=3 -runtimeId=4434 +runtimeId=5702 minecraft:dirt;dirt_type=normal blockId=3 -runtimeId=4433 +runtimeId=5701 minecraft:dirt_with_roots blockId=573 -runtimeId=4435 +runtimeId=5347 minecraft:dispenser;facing_direction=0;triggered_bit=0 blockId=23 -runtimeId=4436 +runtimeId=7952 minecraft:dispenser;facing_direction=0;triggered_bit=1 blockId=23 -runtimeId=4442 +runtimeId=7958 minecraft:dispenser;facing_direction=1;triggered_bit=0 blockId=23 -runtimeId=4437 +runtimeId=7953 minecraft:dispenser;facing_direction=1;triggered_bit=1 blockId=23 -runtimeId=4443 +runtimeId=7959 minecraft:dispenser;facing_direction=2;triggered_bit=0 blockId=23 -runtimeId=4438 +runtimeId=7954 minecraft:dispenser;facing_direction=2;triggered_bit=1 blockId=23 -runtimeId=4444 +runtimeId=7960 minecraft:dispenser;facing_direction=3;triggered_bit=0 blockId=23 -runtimeId=4439 +runtimeId=7955 minecraft:dispenser;facing_direction=3;triggered_bit=1 blockId=23 -runtimeId=4445 +runtimeId=7961 minecraft:dispenser;facing_direction=4;triggered_bit=0 blockId=23 -runtimeId=4440 +runtimeId=7956 minecraft:dispenser;facing_direction=4;triggered_bit=1 blockId=23 -runtimeId=4446 +runtimeId=7962 minecraft:dispenser;facing_direction=5;triggered_bit=0 blockId=23 -runtimeId=4441 +runtimeId=7957 minecraft:dispenser;facing_direction=5;triggered_bit=1 blockId=23 -runtimeId=4447 +runtimeId=7963 minecraft:double_cut_copper_slab;top_slot_bit=0 blockId=623 -runtimeId=4448 +runtimeId=3656 minecraft:double_cut_copper_slab;top_slot_bit=1 blockId=623 -runtimeId=4449 +runtimeId=3657 minecraft:double_plant;upper_block_bit=0;double_plant_type=fern blockId=175 -runtimeId=4453 +runtimeId=5405 minecraft:double_plant;upper_block_bit=0;double_plant_type=grass blockId=175 -runtimeId=4452 +runtimeId=5404 minecraft:double_plant;upper_block_bit=0;double_plant_type=paeonia blockId=175 -runtimeId=4455 +runtimeId=5407 minecraft:double_plant;upper_block_bit=0;double_plant_type=rose blockId=175 -runtimeId=4454 +runtimeId=5406 minecraft:double_plant;upper_block_bit=0;double_plant_type=sunflower blockId=175 -runtimeId=4450 +runtimeId=5402 minecraft:double_plant;upper_block_bit=0;double_plant_type=syringa blockId=175 -runtimeId=4451 +runtimeId=5403 minecraft:double_plant;upper_block_bit=1;double_plant_type=fern blockId=175 -runtimeId=4459 +runtimeId=5411 minecraft:double_plant;upper_block_bit=1;double_plant_type=grass blockId=175 -runtimeId=4458 +runtimeId=5410 minecraft:double_plant;upper_block_bit=1;double_plant_type=paeonia blockId=175 -runtimeId=4461 +runtimeId=5413 minecraft:double_plant;upper_block_bit=1;double_plant_type=rose blockId=175 -runtimeId=4460 +runtimeId=5412 minecraft:double_plant;upper_block_bit=1;double_plant_type=sunflower blockId=175 -runtimeId=4456 +runtimeId=5408 minecraft:double_plant;upper_block_bit=1;double_plant_type=syringa blockId=175 -runtimeId=4457 +runtimeId=5409 + +minecraft:double_stone_slab;stone_slab_type=brick;top_slot_bit=0 +blockId=43 +runtimeId=5744 + +minecraft:double_stone_slab;stone_slab_type=brick;top_slot_bit=1 +blockId=43 +runtimeId=5752 + +minecraft:double_stone_slab;stone_slab_type=cobblestone;top_slot_bit=0 +blockId=43 +runtimeId=5743 + +minecraft:double_stone_slab;stone_slab_type=cobblestone;top_slot_bit=1 +blockId=43 +runtimeId=5751 + +minecraft:double_stone_slab;stone_slab_type=nether_brick;top_slot_bit=0 +blockId=43 +runtimeId=5747 + +minecraft:double_stone_slab;stone_slab_type=nether_brick;top_slot_bit=1 +blockId=43 +runtimeId=5755 + +minecraft:double_stone_slab;stone_slab_type=quartz;top_slot_bit=0 +blockId=43 +runtimeId=5746 + +minecraft:double_stone_slab;stone_slab_type=quartz;top_slot_bit=1 +blockId=43 +runtimeId=5754 + +minecraft:double_stone_slab;stone_slab_type=sandstone;top_slot_bit=0 +blockId=43 +runtimeId=5741 + +minecraft:double_stone_slab;stone_slab_type=sandstone;top_slot_bit=1 +blockId=43 +runtimeId=5749 + +minecraft:double_stone_slab;stone_slab_type=smooth_stone;top_slot_bit=0 +blockId=43 +runtimeId=5740 + +minecraft:double_stone_slab;stone_slab_type=smooth_stone;top_slot_bit=1 +blockId=43 +runtimeId=5748 + +minecraft:double_stone_slab;stone_slab_type=stone_brick;top_slot_bit=0 +blockId=43 +runtimeId=5745 + +minecraft:double_stone_slab;stone_slab_type=stone_brick;top_slot_bit=1 +blockId=43 +runtimeId=5753 + +minecraft:double_stone_slab;stone_slab_type=wood;top_slot_bit=0 +blockId=43 +runtimeId=5742 + +minecraft:double_stone_slab;stone_slab_type=wood;top_slot_bit=1 +blockId=43 +runtimeId=5750 minecraft:double_stone_slab2;stone_slab_type_2=mossy_cobblestone;top_slot_bit=0 blockId=181 -runtimeId=4483 +runtimeId=6160 minecraft:double_stone_slab2;stone_slab_type_2=mossy_cobblestone;top_slot_bit=1 blockId=181 -runtimeId=4491 +runtimeId=6168 minecraft:double_stone_slab2;stone_slab_type_2=prismarine_brick;top_slot_bit=0 blockId=181 -runtimeId=4482 +runtimeId=6159 minecraft:double_stone_slab2;stone_slab_type_2=prismarine_brick;top_slot_bit=1 blockId=181 -runtimeId=4490 +runtimeId=6167 minecraft:double_stone_slab2;stone_slab_type_2=prismarine_dark;top_slot_bit=0 blockId=181 -runtimeId=4481 +runtimeId=6158 minecraft:double_stone_slab2;stone_slab_type_2=prismarine_dark;top_slot_bit=1 blockId=181 -runtimeId=4489 +runtimeId=6166 minecraft:double_stone_slab2;stone_slab_type_2=prismarine_rough;top_slot_bit=0 blockId=181 -runtimeId=4480 +runtimeId=6157 minecraft:double_stone_slab2;stone_slab_type_2=prismarine_rough;top_slot_bit=1 blockId=181 -runtimeId=4488 +runtimeId=6165 minecraft:double_stone_slab2;stone_slab_type_2=purpur;top_slot_bit=0 blockId=181 -runtimeId=4479 +runtimeId=6156 minecraft:double_stone_slab2;stone_slab_type_2=purpur;top_slot_bit=1 blockId=181 -runtimeId=4487 +runtimeId=6164 minecraft:double_stone_slab2;stone_slab_type_2=red_nether_brick;top_slot_bit=0 blockId=181 -runtimeId=4485 +runtimeId=6162 minecraft:double_stone_slab2;stone_slab_type_2=red_nether_brick;top_slot_bit=1 blockId=181 -runtimeId=4493 +runtimeId=6170 minecraft:double_stone_slab2;stone_slab_type_2=red_sandstone;top_slot_bit=0 blockId=181 -runtimeId=4478 +runtimeId=6155 minecraft:double_stone_slab2;stone_slab_type_2=red_sandstone;top_slot_bit=1 blockId=181 -runtimeId=4486 +runtimeId=6163 minecraft:double_stone_slab2;stone_slab_type_2=smooth_sandstone;top_slot_bit=0 blockId=181 -runtimeId=4484 +runtimeId=6161 minecraft:double_stone_slab2;stone_slab_type_2=smooth_sandstone;top_slot_bit=1 blockId=181 -runtimeId=4492 +runtimeId=6169 minecraft:double_stone_slab3;stone_slab_type_3=andesite;top_slot_bit=0 blockId=422 -runtimeId=4497 +runtimeId=6174 minecraft:double_stone_slab3;stone_slab_type_3=andesite;top_slot_bit=1 blockId=422 -runtimeId=4505 +runtimeId=6182 minecraft:double_stone_slab3;stone_slab_type_3=diorite;top_slot_bit=0 blockId=422 -runtimeId=4498 +runtimeId=6175 minecraft:double_stone_slab3;stone_slab_type_3=diorite;top_slot_bit=1 blockId=422 -runtimeId=4506 +runtimeId=6183 minecraft:double_stone_slab3;stone_slab_type_3=end_stone_brick;top_slot_bit=0 blockId=422 -runtimeId=4494 +runtimeId=6171 minecraft:double_stone_slab3;stone_slab_type_3=end_stone_brick;top_slot_bit=1 blockId=422 -runtimeId=4502 +runtimeId=6179 minecraft:double_stone_slab3;stone_slab_type_3=granite;top_slot_bit=0 blockId=422 -runtimeId=4500 +runtimeId=6177 minecraft:double_stone_slab3;stone_slab_type_3=granite;top_slot_bit=1 blockId=422 -runtimeId=4508 +runtimeId=6185 minecraft:double_stone_slab3;stone_slab_type_3=polished_andesite;top_slot_bit=0 blockId=422 -runtimeId=4496 +runtimeId=6173 minecraft:double_stone_slab3;stone_slab_type_3=polished_andesite;top_slot_bit=1 blockId=422 -runtimeId=4504 +runtimeId=6181 minecraft:double_stone_slab3;stone_slab_type_3=polished_diorite;top_slot_bit=0 blockId=422 -runtimeId=4499 +runtimeId=6176 minecraft:double_stone_slab3;stone_slab_type_3=polished_diorite;top_slot_bit=1 blockId=422 -runtimeId=4507 +runtimeId=6184 minecraft:double_stone_slab3;stone_slab_type_3=polished_granite;top_slot_bit=0 blockId=422 -runtimeId=4501 +runtimeId=6178 minecraft:double_stone_slab3;stone_slab_type_3=polished_granite;top_slot_bit=1 blockId=422 -runtimeId=4509 +runtimeId=6186 minecraft:double_stone_slab3;stone_slab_type_3=smooth_red_sandstone;top_slot_bit=0 blockId=422 -runtimeId=4495 +runtimeId=6172 minecraft:double_stone_slab3;stone_slab_type_3=smooth_red_sandstone;top_slot_bit=1 blockId=422 -runtimeId=4503 +runtimeId=6180 minecraft:double_stone_slab4;top_slot_bit=0;stone_slab_type_4=cut_red_sandstone blockId=423 -runtimeId=4514 +runtimeId=6191 minecraft:double_stone_slab4;top_slot_bit=0;stone_slab_type_4=cut_sandstone blockId=423 -runtimeId=4513 +runtimeId=6190 minecraft:double_stone_slab4;top_slot_bit=0;stone_slab_type_4=mossy_stone_brick blockId=423 -runtimeId=4510 +runtimeId=6187 minecraft:double_stone_slab4;top_slot_bit=0;stone_slab_type_4=smooth_quartz blockId=423 -runtimeId=4511 +runtimeId=6188 minecraft:double_stone_slab4;top_slot_bit=0;stone_slab_type_4=stone blockId=423 -runtimeId=4512 +runtimeId=6189 minecraft:double_stone_slab4;top_slot_bit=1;stone_slab_type_4=cut_red_sandstone blockId=423 -runtimeId=4519 +runtimeId=6196 minecraft:double_stone_slab4;top_slot_bit=1;stone_slab_type_4=cut_sandstone blockId=423 -runtimeId=4518 +runtimeId=6195 minecraft:double_stone_slab4;top_slot_bit=1;stone_slab_type_4=mossy_stone_brick blockId=423 -runtimeId=4515 +runtimeId=6192 minecraft:double_stone_slab4;top_slot_bit=1;stone_slab_type_4=smooth_quartz blockId=423 -runtimeId=4516 +runtimeId=6193 minecraft:double_stone_slab4;top_slot_bit=1;stone_slab_type_4=stone blockId=423 -runtimeId=4517 - -minecraft:double_stone_slab;stone_slab_type=brick;top_slot_bit=0 -blockId=43 -runtimeId=4466 +runtimeId=6194 -minecraft:double_stone_slab;stone_slab_type=brick;top_slot_bit=1 -blockId=43 -runtimeId=4474 - -minecraft:double_stone_slab;stone_slab_type=cobblestone;top_slot_bit=0 -blockId=43 -runtimeId=4465 - -minecraft:double_stone_slab;stone_slab_type=cobblestone;top_slot_bit=1 -blockId=43 -runtimeId=4473 - -minecraft:double_stone_slab;stone_slab_type=nether_brick;top_slot_bit=0 -blockId=43 -runtimeId=4469 - -minecraft:double_stone_slab;stone_slab_type=nether_brick;top_slot_bit=1 -blockId=43 -runtimeId=4477 - -minecraft:double_stone_slab;stone_slab_type=quartz;top_slot_bit=0 -blockId=43 -runtimeId=4468 - -minecraft:double_stone_slab;stone_slab_type=quartz;top_slot_bit=1 -blockId=43 -runtimeId=4476 - -minecraft:double_stone_slab;stone_slab_type=sandstone;top_slot_bit=0 -blockId=43 -runtimeId=4463 - -minecraft:double_stone_slab;stone_slab_type=sandstone;top_slot_bit=1 -blockId=43 -runtimeId=4471 - -minecraft:double_stone_slab;stone_slab_type=smooth_stone;top_slot_bit=0 -blockId=43 -runtimeId=4462 - -minecraft:double_stone_slab;stone_slab_type=smooth_stone;top_slot_bit=1 -blockId=43 -runtimeId=4470 - -minecraft:double_stone_slab;stone_slab_type=stone_brick;top_slot_bit=0 -blockId=43 -runtimeId=4467 - -minecraft:double_stone_slab;stone_slab_type=stone_brick;top_slot_bit=1 -blockId=43 -runtimeId=4475 - -minecraft:double_stone_slab;stone_slab_type=wood;top_slot_bit=0 -blockId=43 -runtimeId=4464 - -minecraft:double_stone_slab;stone_slab_type=wood;top_slot_bit=1 -blockId=43 -runtimeId=4472 - -minecraft:double_wooden_slab;top_slot_bit=0;wood_type=acacia -blockId=157 -runtimeId=4524 +minecraft:double_wooden_slab;top_slot_bit=0;wood_type=acacia +blockId=157 +runtimeId=5791 minecraft:double_wooden_slab;top_slot_bit=0;wood_type=birch blockId=157 -runtimeId=4522 +runtimeId=5789 minecraft:double_wooden_slab;top_slot_bit=0;wood_type=dark_oak blockId=157 -runtimeId=4525 +runtimeId=5792 minecraft:double_wooden_slab;top_slot_bit=0;wood_type=jungle blockId=157 -runtimeId=4523 +runtimeId=5790 minecraft:double_wooden_slab;top_slot_bit=0;wood_type=oak blockId=157 -runtimeId=4520 +runtimeId=5787 minecraft:double_wooden_slab;top_slot_bit=0;wood_type=spruce blockId=157 -runtimeId=4521 +runtimeId=5788 minecraft:double_wooden_slab;top_slot_bit=1;wood_type=acacia blockId=157 -runtimeId=4530 +runtimeId=5797 minecraft:double_wooden_slab;top_slot_bit=1;wood_type=birch blockId=157 -runtimeId=4528 +runtimeId=5795 minecraft:double_wooden_slab;top_slot_bit=1;wood_type=dark_oak blockId=157 -runtimeId=4531 +runtimeId=5798 minecraft:double_wooden_slab;top_slot_bit=1;wood_type=jungle blockId=157 -runtimeId=4529 +runtimeId=5796 minecraft:double_wooden_slab;top_slot_bit=1;wood_type=oak blockId=157 -runtimeId=4526 +runtimeId=5793 minecraft:double_wooden_slab;top_slot_bit=1;wood_type=spruce blockId=157 -runtimeId=4527 +runtimeId=5794 minecraft:dragon_egg blockId=122 -runtimeId=4532 +runtimeId=7213 minecraft:dried_kelp_block blockId=394 -runtimeId=4533 +runtimeId=7921 minecraft:dripstone_block blockId=572 -runtimeId=4534 +runtimeId=901 minecraft:dropper;facing_direction=0;triggered_bit=0 blockId=125 -runtimeId=4535 +runtimeId=7324 minecraft:dropper;facing_direction=0;triggered_bit=1 blockId=125 -runtimeId=4541 +runtimeId=7330 minecraft:dropper;facing_direction=1;triggered_bit=0 blockId=125 -runtimeId=4536 +runtimeId=7325 minecraft:dropper;facing_direction=1;triggered_bit=1 blockId=125 -runtimeId=4542 +runtimeId=7331 minecraft:dropper;facing_direction=2;triggered_bit=0 blockId=125 -runtimeId=4537 +runtimeId=7326 minecraft:dropper;facing_direction=2;triggered_bit=1 blockId=125 -runtimeId=4543 +runtimeId=7332 minecraft:dropper;facing_direction=3;triggered_bit=0 blockId=125 -runtimeId=4538 +runtimeId=7327 minecraft:dropper;facing_direction=3;triggered_bit=1 blockId=125 -runtimeId=4544 +runtimeId=7333 minecraft:dropper;facing_direction=4;triggered_bit=0 blockId=125 -runtimeId=4539 +runtimeId=7328 minecraft:dropper;facing_direction=4;triggered_bit=1 blockId=125 -runtimeId=4545 +runtimeId=7334 minecraft:dropper;facing_direction=5;triggered_bit=0 blockId=125 -runtimeId=4540 +runtimeId=7329 minecraft:dropper;facing_direction=5;triggered_bit=1 blockId=125 -runtimeId=4546 +runtimeId=7335 minecraft:element_0 blockId=36 -runtimeId=4547 +runtimeId=7217 minecraft:element_1 blockId=267 -runtimeId=4548 +runtimeId=7216 minecraft:element_2 blockId=268 -runtimeId=4578 +runtimeId=7219 minecraft:element_3 blockId=269 -runtimeId=4589 +runtimeId=7218 minecraft:element_4 blockId=270 -runtimeId=4600 +runtimeId=7221 minecraft:element_5 blockId=271 -runtimeId=4611 +runtimeId=7220 minecraft:element_6 blockId=272 -runtimeId=4622 +runtimeId=7223 minecraft:element_7 blockId=273 -runtimeId=4633 +runtimeId=7222 minecraft:element_8 blockId=274 -runtimeId=4644 +runtimeId=7225 minecraft:element_9 blockId=275 -runtimeId=4655 +runtimeId=7224 minecraft:element_10 blockId=276 -runtimeId=4549 +runtimeId=7545 minecraft:element_11 blockId=277 -runtimeId=4560 +runtimeId=7546 minecraft:element_12 blockId=278 -runtimeId=4570 +runtimeId=7547 minecraft:element_13 blockId=279 -runtimeId=4571 +runtimeId=7548 minecraft:element_14 blockId=280 -runtimeId=4572 +runtimeId=7549 minecraft:element_15 blockId=281 -runtimeId=4573 +runtimeId=7550 minecraft:element_16 blockId=282 -runtimeId=4574 +runtimeId=7551 minecraft:element_17 blockId=283 -runtimeId=4575 +runtimeId=7552 minecraft:element_18 blockId=284 -runtimeId=4576 +runtimeId=7553 minecraft:element_19 blockId=285 -runtimeId=4577 +runtimeId=7554 minecraft:element_20 blockId=286 -runtimeId=4579 +runtimeId=7568 minecraft:element_21 blockId=287 -runtimeId=4580 +runtimeId=7567 minecraft:element_22 blockId=288 -runtimeId=4581 +runtimeId=7570 minecraft:element_23 blockId=289 -runtimeId=4582 +runtimeId=7569 minecraft:element_24 blockId=290 -runtimeId=4583 +runtimeId=7572 minecraft:element_25 blockId=291 -runtimeId=4584 +runtimeId=7571 minecraft:element_26 blockId=292 -runtimeId=4585 +runtimeId=7574 minecraft:element_27 blockId=293 -runtimeId=4586 +runtimeId=7573 minecraft:element_28 blockId=294 -runtimeId=4587 +runtimeId=7566 minecraft:element_29 blockId=295 -runtimeId=4588 +runtimeId=7565 minecraft:element_30 blockId=296 -runtimeId=4590 +runtimeId=7561 minecraft:element_31 blockId=297 -runtimeId=4591 +runtimeId=7562 minecraft:element_32 blockId=298 -runtimeId=4592 +runtimeId=7559 minecraft:element_33 blockId=299 -runtimeId=4593 +runtimeId=7560 minecraft:element_34 blockId=300 -runtimeId=4594 +runtimeId=7557 minecraft:element_35 blockId=301 -runtimeId=4595 +runtimeId=7558 minecraft:element_36 blockId=302 -runtimeId=4596 +runtimeId=7555 minecraft:element_37 blockId=303 -runtimeId=4597 +runtimeId=7556 minecraft:element_38 blockId=304 -runtimeId=4598 +runtimeId=7563 minecraft:element_39 blockId=305 -runtimeId=4599 +runtimeId=7564 minecraft:element_40 blockId=306 -runtimeId=4601 +runtimeId=7594 minecraft:element_41 blockId=307 -runtimeId=4602 +runtimeId=7593 minecraft:element_42 blockId=308 -runtimeId=4603 +runtimeId=7592 minecraft:element_43 blockId=309 -runtimeId=4604 +runtimeId=7591 minecraft:element_44 blockId=310 -runtimeId=4605 +runtimeId=7590 minecraft:element_45 blockId=311 -runtimeId=4606 +runtimeId=7589 minecraft:element_46 blockId=312 -runtimeId=4607 +runtimeId=7588 minecraft:element_47 blockId=313 -runtimeId=4608 +runtimeId=7587 minecraft:element_48 blockId=314 -runtimeId=4609 +runtimeId=7586 minecraft:element_49 blockId=315 -runtimeId=4610 +runtimeId=7585 minecraft:element_50 blockId=316 -runtimeId=4612 +runtimeId=7581 minecraft:element_51 blockId=317 -runtimeId=4613 +runtimeId=7582 minecraft:element_52 blockId=318 -runtimeId=4614 +runtimeId=7583 minecraft:element_53 blockId=319 -runtimeId=4615 +runtimeId=7584 minecraft:element_54 blockId=320 -runtimeId=4616 +runtimeId=7577 minecraft:element_55 blockId=321 -runtimeId=4617 +runtimeId=7578 minecraft:element_56 blockId=322 -runtimeId=4618 +runtimeId=7579 minecraft:element_57 blockId=323 -runtimeId=4619 +runtimeId=7580 minecraft:element_58 blockId=324 -runtimeId=4620 +runtimeId=7575 minecraft:element_59 blockId=325 -runtimeId=4621 +runtimeId=7576 minecraft:element_60 blockId=326 -runtimeId=4623 +runtimeId=7610 minecraft:element_61 blockId=327 -runtimeId=4624 +runtimeId=7609 minecraft:element_62 blockId=328 -runtimeId=4625 +runtimeId=7612 minecraft:element_63 blockId=329 -runtimeId=4626 +runtimeId=7611 minecraft:element_64 blockId=330 -runtimeId=4627 +runtimeId=7606 minecraft:element_65 blockId=331 -runtimeId=4628 +runtimeId=7605 minecraft:element_66 blockId=332 -runtimeId=4629 +runtimeId=7608 minecraft:element_67 blockId=333 -runtimeId=4630 +runtimeId=7607 minecraft:element_68 blockId=334 -runtimeId=4631 +runtimeId=7614 minecraft:element_69 blockId=335 -runtimeId=4632 +runtimeId=7613 minecraft:element_70 blockId=336 -runtimeId=4634 +runtimeId=7597 minecraft:element_71 blockId=337 -runtimeId=4635 +runtimeId=7598 minecraft:element_72 blockId=338 -runtimeId=4636 +runtimeId=7595 minecraft:element_73 blockId=339 -runtimeId=4637 +runtimeId=7596 minecraft:element_74 blockId=340 -runtimeId=4638 +runtimeId=7601 minecraft:element_75 blockId=341 -runtimeId=4639 +runtimeId=7602 minecraft:element_76 blockId=342 -runtimeId=4640 +runtimeId=7599 minecraft:element_77 blockId=343 -runtimeId=4641 +runtimeId=7600 minecraft:element_78 blockId=344 -runtimeId=4642 +runtimeId=7603 minecraft:element_79 blockId=345 -runtimeId=4643 +runtimeId=7604 minecraft:element_80 blockId=346 -runtimeId=4645 +runtimeId=7630 minecraft:element_81 blockId=347 -runtimeId=4646 +runtimeId=7629 minecraft:element_82 blockId=348 -runtimeId=4647 +runtimeId=7628 minecraft:element_83 blockId=349 -runtimeId=4648 +runtimeId=7627 minecraft:element_84 blockId=350 -runtimeId=4649 +runtimeId=7634 minecraft:element_85 blockId=351 -runtimeId=4650 +runtimeId=7633 minecraft:element_86 blockId=352 -runtimeId=4651 +runtimeId=7632 minecraft:element_87 blockId=353 -runtimeId=4652 +runtimeId=7631 minecraft:element_88 blockId=354 -runtimeId=4653 +runtimeId=7626 minecraft:element_89 blockId=355 -runtimeId=4654 +runtimeId=7625 minecraft:element_90 blockId=356 -runtimeId=4656 +runtimeId=7617 minecraft:element_91 blockId=357 -runtimeId=4657 +runtimeId=7618 minecraft:element_92 blockId=358 -runtimeId=4658 +runtimeId=7619 minecraft:element_93 blockId=359 -runtimeId=4659 +runtimeId=7620 minecraft:element_94 blockId=360 -runtimeId=4660 +runtimeId=7621 minecraft:element_95 blockId=361 -runtimeId=4661 +runtimeId=7622 minecraft:element_96 blockId=362 -runtimeId=4662 +runtimeId=7623 minecraft:element_97 blockId=363 -runtimeId=4663 +runtimeId=7624 minecraft:element_98 blockId=364 -runtimeId=4664 +runtimeId=7615 minecraft:element_99 blockId=365 -runtimeId=4665 +runtimeId=7616 minecraft:element_100 blockId=366 -runtimeId=4550 +runtimeId=5504 minecraft:element_101 blockId=367 -runtimeId=4551 +runtimeId=5505 minecraft:element_102 blockId=368 -runtimeId=4552 +runtimeId=5506 minecraft:element_103 blockId=369 -runtimeId=4553 +runtimeId=5507 minecraft:element_104 blockId=370 -runtimeId=4554 +runtimeId=5508 minecraft:element_105 blockId=371 -runtimeId=4555 +runtimeId=5509 minecraft:element_106 blockId=372 -runtimeId=4556 +runtimeId=5510 minecraft:element_107 blockId=373 -runtimeId=4557 +runtimeId=5511 minecraft:element_108 blockId=374 -runtimeId=4558 +runtimeId=5512 minecraft:element_109 blockId=375 -runtimeId=4559 +runtimeId=5513 minecraft:element_110 blockId=376 -runtimeId=4561 +runtimeId=5517 minecraft:element_111 blockId=377 -runtimeId=4562 +runtimeId=5516 minecraft:element_112 blockId=378 -runtimeId=4563 +runtimeId=5515 minecraft:element_113 blockId=379 -runtimeId=4564 +runtimeId=5514 minecraft:element_114 blockId=380 -runtimeId=4565 +runtimeId=5521 minecraft:element_115 blockId=381 -runtimeId=4566 +runtimeId=5520 minecraft:element_116 blockId=382 -runtimeId=4567 +runtimeId=5519 minecraft:element_117 blockId=383 -runtimeId=4568 +runtimeId=5518 minecraft:element_118 blockId=384 -runtimeId=4569 +runtimeId=5522 minecraft:emerald_block blockId=133 -runtimeId=4666 +runtimeId=1164 minecraft:emerald_ore blockId=129 -runtimeId=4667 +runtimeId=7289 minecraft:enchanting_table blockId=116 -runtimeId=4668 +runtimeId=6597 minecraft:end_brick_stairs;upside_down_bit=0;weirdo_direction=0 blockId=433 -runtimeId=4669 +runtimeId=6347 minecraft:end_brick_stairs;upside_down_bit=0;weirdo_direction=1 blockId=433 -runtimeId=4670 +runtimeId=6348 minecraft:end_brick_stairs;upside_down_bit=0;weirdo_direction=2 blockId=433 -runtimeId=4671 +runtimeId=6349 minecraft:end_brick_stairs;upside_down_bit=0;weirdo_direction=3 blockId=433 -runtimeId=4672 +runtimeId=6350 minecraft:end_brick_stairs;upside_down_bit=1;weirdo_direction=0 blockId=433 -runtimeId=4673 +runtimeId=6351 minecraft:end_brick_stairs;upside_down_bit=1;weirdo_direction=1 blockId=433 -runtimeId=4674 +runtimeId=6352 minecraft:end_brick_stairs;upside_down_bit=1;weirdo_direction=2 blockId=433 -runtimeId=4675 +runtimeId=6353 minecraft:end_brick_stairs;upside_down_bit=1;weirdo_direction=3 blockId=433 -runtimeId=4676 +runtimeId=6354 minecraft:end_bricks blockId=206 -runtimeId=4677 +runtimeId=295 minecraft:end_gateway blockId=209 -runtimeId=4678 +runtimeId=144 minecraft:end_portal blockId=119 -runtimeId=4679 +runtimeId=7526 minecraft:end_portal_frame;end_portal_eye_bit=0;direction=0 blockId=120 -runtimeId=4680 +runtimeId=6001 minecraft:end_portal_frame;end_portal_eye_bit=0;direction=1 blockId=120 -runtimeId=4681 +runtimeId=6002 minecraft:end_portal_frame;end_portal_eye_bit=0;direction=2 blockId=120 -runtimeId=4682 +runtimeId=6003 minecraft:end_portal_frame;end_portal_eye_bit=0;direction=3 blockId=120 -runtimeId=4683 +runtimeId=6004 minecraft:end_portal_frame;end_portal_eye_bit=1;direction=0 blockId=120 -runtimeId=4684 +runtimeId=6005 minecraft:end_portal_frame;end_portal_eye_bit=1;direction=1 blockId=120 -runtimeId=4685 +runtimeId=6006 minecraft:end_portal_frame;end_portal_eye_bit=1;direction=2 blockId=120 -runtimeId=4686 +runtimeId=6007 minecraft:end_portal_frame;end_portal_eye_bit=1;direction=3 blockId=120 -runtimeId=4687 +runtimeId=6008 minecraft:end_rod;facing_direction=0 blockId=208 -runtimeId=4688 +runtimeId=5815 minecraft:end_rod;facing_direction=1 blockId=208 -runtimeId=4689 +runtimeId=5816 minecraft:end_rod;facing_direction=2 blockId=208 -runtimeId=4690 +runtimeId=5817 minecraft:end_rod;facing_direction=3 blockId=208 -runtimeId=4691 +runtimeId=5818 minecraft:end_rod;facing_direction=4 blockId=208 -runtimeId=4692 +runtimeId=5819 minecraft:end_rod;facing_direction=5 blockId=208 -runtimeId=4693 +runtimeId=5820 minecraft:end_stone blockId=121 -runtimeId=4694 +runtimeId=3841 minecraft:ender_chest;facing_direction=0 blockId=130 -runtimeId=4695 +runtimeId=4317 minecraft:ender_chest;facing_direction=1 blockId=130 -runtimeId=4696 +runtimeId=4318 minecraft:ender_chest;facing_direction=2 blockId=130 -runtimeId=4697 +runtimeId=4319 minecraft:ender_chest;facing_direction=3 blockId=130 -runtimeId=4698 +runtimeId=4320 minecraft:ender_chest;facing_direction=4 blockId=130 -runtimeId=4699 +runtimeId=4321 minecraft:ender_chest;facing_direction=5 blockId=130 -runtimeId=4700 +runtimeId=4322 minecraft:exposed_copper blockId=596 -runtimeId=4701 +runtimeId=601 minecraft:exposed_cut_copper blockId=603 -runtimeId=4702 +runtimeId=6090 minecraft:exposed_cut_copper_slab;top_slot_bit=0 blockId=617 -runtimeId=4703 +runtimeId=6491 minecraft:exposed_cut_copper_slab;top_slot_bit=1 blockId=617 -runtimeId=4704 +runtimeId=6492 minecraft:exposed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0 blockId=610 -runtimeId=4705 +runtimeId=4519 minecraft:exposed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=1 blockId=610 -runtimeId=4706 +runtimeId=4520 minecraft:exposed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=2 blockId=610 -runtimeId=4707 +runtimeId=4521 minecraft:exposed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=3 blockId=610 -runtimeId=4708 +runtimeId=4522 minecraft:exposed_cut_copper_stairs;upside_down_bit=1;weirdo_direction=0 blockId=610 -runtimeId=4709 +runtimeId=4523 minecraft:exposed_cut_copper_stairs;upside_down_bit=1;weirdo_direction=1 blockId=610 -runtimeId=4710 +runtimeId=4524 minecraft:exposed_cut_copper_stairs;upside_down_bit=1;weirdo_direction=2 blockId=610 -runtimeId=4711 +runtimeId=4525 minecraft:exposed_cut_copper_stairs;upside_down_bit=1;weirdo_direction=3 blockId=610 -runtimeId=4712 +runtimeId=4526 minecraft:exposed_double_cut_copper_slab;top_slot_bit=0 blockId=624 -runtimeId=4713 +runtimeId=639 minecraft:exposed_double_cut_copper_slab;top_slot_bit=1 blockId=624 -runtimeId=4714 +runtimeId=640 minecraft:farmland;moisturized_amount=0 blockId=60 -runtimeId=4715 +runtimeId=3901 minecraft:farmland;moisturized_amount=1 blockId=60 -runtimeId=4716 +runtimeId=3902 minecraft:farmland;moisturized_amount=2 blockId=60 -runtimeId=4717 +runtimeId=3903 minecraft:farmland;moisturized_amount=3 blockId=60 -runtimeId=4718 +runtimeId=3904 minecraft:farmland;moisturized_amount=4 blockId=60 -runtimeId=4719 +runtimeId=3905 minecraft:farmland;moisturized_amount=5 blockId=60 -runtimeId=4720 +runtimeId=3906 minecraft:farmland;moisturized_amount=6 blockId=60 -runtimeId=4721 +runtimeId=3907 minecraft:farmland;moisturized_amount=7 blockId=60 -runtimeId=4722 +runtimeId=3908 minecraft:fence;wood_type=acacia blockId=85 -runtimeId=4727 +runtimeId=7310 minecraft:fence;wood_type=birch blockId=85 -runtimeId=4725 +runtimeId=7308 minecraft:fence;wood_type=dark_oak blockId=85 -runtimeId=4728 +runtimeId=7311 minecraft:fence;wood_type=jungle blockId=85 -runtimeId=4726 +runtimeId=7309 minecraft:fence;wood_type=oak blockId=85 -runtimeId=4723 +runtimeId=7306 minecraft:fence;wood_type=spruce blockId=85 -runtimeId=4724 +runtimeId=7307 minecraft:fence_gate;in_wall_bit=0;open_bit=0;direction=0 blockId=107 -runtimeId=4729 +runtimeId=76 minecraft:fence_gate;in_wall_bit=0;open_bit=0;direction=1 blockId=107 -runtimeId=4730 +runtimeId=77 minecraft:fence_gate;in_wall_bit=0;open_bit=0;direction=2 blockId=107 -runtimeId=4731 +runtimeId=78 minecraft:fence_gate;in_wall_bit=0;open_bit=0;direction=3 blockId=107 -runtimeId=4732 +runtimeId=79 minecraft:fence_gate;in_wall_bit=0;open_bit=1;direction=0 blockId=107 -runtimeId=4733 +runtimeId=80 minecraft:fence_gate;in_wall_bit=0;open_bit=1;direction=1 blockId=107 -runtimeId=4734 +runtimeId=81 minecraft:fence_gate;in_wall_bit=0;open_bit=1;direction=2 blockId=107 -runtimeId=4735 +runtimeId=82 minecraft:fence_gate;in_wall_bit=0;open_bit=1;direction=3 blockId=107 -runtimeId=4736 +runtimeId=83 minecraft:fence_gate;in_wall_bit=1;open_bit=0;direction=0 blockId=107 -runtimeId=4737 +runtimeId=84 minecraft:fence_gate;in_wall_bit=1;open_bit=0;direction=1 blockId=107 -runtimeId=4738 +runtimeId=85 minecraft:fence_gate;in_wall_bit=1;open_bit=0;direction=2 blockId=107 -runtimeId=4739 +runtimeId=86 minecraft:fence_gate;in_wall_bit=1;open_bit=0;direction=3 blockId=107 -runtimeId=4740 +runtimeId=87 minecraft:fence_gate;in_wall_bit=1;open_bit=1;direction=0 blockId=107 -runtimeId=4741 +runtimeId=88 minecraft:fence_gate;in_wall_bit=1;open_bit=1;direction=1 blockId=107 -runtimeId=4742 +runtimeId=89 minecraft:fence_gate;in_wall_bit=1;open_bit=1;direction=2 blockId=107 -runtimeId=4743 +runtimeId=90 minecraft:fence_gate;in_wall_bit=1;open_bit=1;direction=3 blockId=107 -runtimeId=4744 +runtimeId=91 minecraft:fire;age=0 blockId=51 -runtimeId=4745 +runtimeId=5979 minecraft:fire;age=1 blockId=51 -runtimeId=4746 +runtimeId=5980 minecraft:fire;age=2 blockId=51 -runtimeId=4747 +runtimeId=5981 minecraft:fire;age=3 blockId=51 -runtimeId=4748 +runtimeId=5982 minecraft:fire;age=4 blockId=51 -runtimeId=4749 +runtimeId=5983 minecraft:fire;age=5 blockId=51 -runtimeId=4750 +runtimeId=5984 minecraft:fire;age=6 blockId=51 -runtimeId=4751 +runtimeId=5985 minecraft:fire;age=7 blockId=51 -runtimeId=4752 +runtimeId=5986 minecraft:fire;age=8 blockId=51 -runtimeId=4753 +runtimeId=5987 minecraft:fire;age=9 blockId=51 -runtimeId=4754 +runtimeId=5988 minecraft:fire;age=10 blockId=51 -runtimeId=4755 +runtimeId=5989 minecraft:fire;age=11 blockId=51 -runtimeId=4756 +runtimeId=5990 minecraft:fire;age=12 blockId=51 -runtimeId=4757 +runtimeId=5991 minecraft:fire;age=13 blockId=51 -runtimeId=4758 +runtimeId=5992 minecraft:fire;age=14 blockId=51 -runtimeId=4759 +runtimeId=5993 minecraft:fire;age=15 blockId=51 -runtimeId=4760 +runtimeId=5994 minecraft:fletching_table blockId=456 -runtimeId=4761 +runtimeId=5757 minecraft:flower_pot;update_bit=0 blockId=140 -runtimeId=4762 +runtimeId=306 minecraft:flower_pot;update_bit=1 blockId=140 -runtimeId=4763 +runtimeId=307 minecraft:flowering_azalea blockId=593 -runtimeId=4764 +runtimeId=5427 minecraft:flowing_lava;liquid_depth=0 blockId=10 -runtimeId=4765 +runtimeId=7157 minecraft:flowing_lava;liquid_depth=1 blockId=10 -runtimeId=4766 +runtimeId=7158 minecraft:flowing_lava;liquid_depth=2 blockId=10 -runtimeId=4767 +runtimeId=7159 minecraft:flowing_lava;liquid_depth=3 blockId=10 -runtimeId=4768 +runtimeId=7160 minecraft:flowing_lava;liquid_depth=4 blockId=10 -runtimeId=4769 +runtimeId=7161 minecraft:flowing_lava;liquid_depth=5 blockId=10 -runtimeId=4770 +runtimeId=7162 minecraft:flowing_lava;liquid_depth=6 blockId=10 -runtimeId=4771 +runtimeId=7163 minecraft:flowing_lava;liquid_depth=7 blockId=10 -runtimeId=4772 +runtimeId=7164 minecraft:flowing_lava;liquid_depth=8 blockId=10 -runtimeId=4773 +runtimeId=7165 minecraft:flowing_lava;liquid_depth=9 blockId=10 -runtimeId=4774 +runtimeId=7166 minecraft:flowing_lava;liquid_depth=10 blockId=10 -runtimeId=4775 +runtimeId=7167 minecraft:flowing_lava;liquid_depth=11 blockId=10 -runtimeId=4776 +runtimeId=7168 minecraft:flowing_lava;liquid_depth=12 blockId=10 -runtimeId=4777 +runtimeId=7169 minecraft:flowing_lava;liquid_depth=13 blockId=10 -runtimeId=4778 +runtimeId=7170 minecraft:flowing_lava;liquid_depth=14 blockId=10 -runtimeId=4779 +runtimeId=7171 minecraft:flowing_lava;liquid_depth=15 blockId=10 -runtimeId=4780 +runtimeId=7172 minecraft:flowing_water;liquid_depth=0 blockId=8 -runtimeId=4781 +runtimeId=4705 minecraft:flowing_water;liquid_depth=1 blockId=8 -runtimeId=4782 +runtimeId=4706 minecraft:flowing_water;liquid_depth=2 blockId=8 -runtimeId=4783 +runtimeId=4707 minecraft:flowing_water;liquid_depth=3 blockId=8 -runtimeId=4784 +runtimeId=4708 minecraft:flowing_water;liquid_depth=4 blockId=8 -runtimeId=4785 +runtimeId=4709 minecraft:flowing_water;liquid_depth=5 blockId=8 -runtimeId=4786 +runtimeId=4710 minecraft:flowing_water;liquid_depth=6 blockId=8 -runtimeId=4787 +runtimeId=4711 minecraft:flowing_water;liquid_depth=7 blockId=8 -runtimeId=4788 +runtimeId=4712 minecraft:flowing_water;liquid_depth=8 blockId=8 -runtimeId=4789 +runtimeId=4713 minecraft:flowing_water;liquid_depth=9 blockId=8 -runtimeId=4790 +runtimeId=4714 minecraft:flowing_water;liquid_depth=10 blockId=8 -runtimeId=4791 +runtimeId=4715 minecraft:flowing_water;liquid_depth=11 blockId=8 -runtimeId=4792 +runtimeId=4716 minecraft:flowing_water;liquid_depth=12 blockId=8 -runtimeId=4793 +runtimeId=4717 minecraft:flowing_water;liquid_depth=13 blockId=8 -runtimeId=4794 +runtimeId=4718 minecraft:flowing_water;liquid_depth=14 blockId=8 -runtimeId=4795 +runtimeId=4719 minecraft:flowing_water;liquid_depth=15 blockId=8 -runtimeId=4796 +runtimeId=4720 -minecraft:frame;facing_direction=0;item_frame_map_bit=0 +minecraft:frame;facing_direction=0;item_frame_photo_bit=0;item_frame_map_bit=0 blockId=199 -runtimeId=4797 +runtimeId=4210 -minecraft:frame;facing_direction=0;item_frame_map_bit=1 +minecraft:frame;facing_direction=0;item_frame_photo_bit=0;item_frame_map_bit=1 blockId=199 -runtimeId=4803 +runtimeId=4216 -minecraft:frame;facing_direction=1;item_frame_map_bit=0 +minecraft:frame;facing_direction=0;item_frame_photo_bit=1;item_frame_map_bit=0 blockId=199 -runtimeId=4798 +runtimeId=4222 -minecraft:frame;facing_direction=1;item_frame_map_bit=1 +minecraft:frame;facing_direction=0;item_frame_photo_bit=1;item_frame_map_bit=1 blockId=199 -runtimeId=4804 +runtimeId=4228 -minecraft:frame;facing_direction=2;item_frame_map_bit=0 +minecraft:frame;facing_direction=1;item_frame_photo_bit=0;item_frame_map_bit=0 blockId=199 -runtimeId=4799 +runtimeId=4211 -minecraft:frame;facing_direction=2;item_frame_map_bit=1 +minecraft:frame;facing_direction=1;item_frame_photo_bit=0;item_frame_map_bit=1 blockId=199 -runtimeId=4805 +runtimeId=4217 -minecraft:frame;facing_direction=3;item_frame_map_bit=0 +minecraft:frame;facing_direction=1;item_frame_photo_bit=1;item_frame_map_bit=0 blockId=199 -runtimeId=4800 +runtimeId=4223 -minecraft:frame;facing_direction=3;item_frame_map_bit=1 +minecraft:frame;facing_direction=1;item_frame_photo_bit=1;item_frame_map_bit=1 blockId=199 -runtimeId=4806 +runtimeId=4229 -minecraft:frame;facing_direction=4;item_frame_map_bit=0 +minecraft:frame;facing_direction=2;item_frame_photo_bit=0;item_frame_map_bit=0 blockId=199 -runtimeId=4801 +runtimeId=4212 -minecraft:frame;facing_direction=4;item_frame_map_bit=1 +minecraft:frame;facing_direction=2;item_frame_photo_bit=0;item_frame_map_bit=1 blockId=199 -runtimeId=4807 +runtimeId=4218 -minecraft:frame;facing_direction=5;item_frame_map_bit=0 +minecraft:frame;facing_direction=2;item_frame_photo_bit=1;item_frame_map_bit=0 blockId=199 -runtimeId=4802 +runtimeId=4224 -minecraft:frame;facing_direction=5;item_frame_map_bit=1 +minecraft:frame;facing_direction=2;item_frame_photo_bit=1;item_frame_map_bit=1 blockId=199 -runtimeId=4808 +runtimeId=4230 + +minecraft:frame;facing_direction=3;item_frame_photo_bit=0;item_frame_map_bit=0 +blockId=199 +runtimeId=4213 + +minecraft:frame;facing_direction=3;item_frame_photo_bit=0;item_frame_map_bit=1 +blockId=199 +runtimeId=4219 + +minecraft:frame;facing_direction=3;item_frame_photo_bit=1;item_frame_map_bit=0 +blockId=199 +runtimeId=4225 + +minecraft:frame;facing_direction=3;item_frame_photo_bit=1;item_frame_map_bit=1 +blockId=199 +runtimeId=4231 + +minecraft:frame;facing_direction=4;item_frame_photo_bit=0;item_frame_map_bit=0 +blockId=199 +runtimeId=4214 + +minecraft:frame;facing_direction=4;item_frame_photo_bit=0;item_frame_map_bit=1 +blockId=199 +runtimeId=4220 + +minecraft:frame;facing_direction=4;item_frame_photo_bit=1;item_frame_map_bit=0 +blockId=199 +runtimeId=4226 + +minecraft:frame;facing_direction=4;item_frame_photo_bit=1;item_frame_map_bit=1 +blockId=199 +runtimeId=4232 + +minecraft:frame;facing_direction=5;item_frame_photo_bit=0;item_frame_map_bit=0 +blockId=199 +runtimeId=4215 + +minecraft:frame;facing_direction=5;item_frame_photo_bit=0;item_frame_map_bit=1 +blockId=199 +runtimeId=4221 + +minecraft:frame;facing_direction=5;item_frame_photo_bit=1;item_frame_map_bit=0 +blockId=199 +runtimeId=4227 + +minecraft:frame;facing_direction=5;item_frame_photo_bit=1;item_frame_map_bit=1 +blockId=199 +runtimeId=4233 + +minecraft:frog_spawn +blockId=723 +runtimeId=4347 minecraft:frosted_ice;age=0 blockId=207 -runtimeId=4809 +runtimeId=4679 minecraft:frosted_ice;age=1 blockId=207 -runtimeId=4810 +runtimeId=4680 minecraft:frosted_ice;age=2 blockId=207 -runtimeId=4811 +runtimeId=4681 minecraft:frosted_ice;age=3 blockId=207 -runtimeId=4812 +runtimeId=4682 minecraft:furnace;facing_direction=0 blockId=61 -runtimeId=4813 +runtimeId=7744 minecraft:furnace;facing_direction=1 blockId=61 -runtimeId=4814 +runtimeId=7745 minecraft:furnace;facing_direction=2 blockId=61 -runtimeId=4815 +runtimeId=7746 minecraft:furnace;facing_direction=3 blockId=61 -runtimeId=4816 +runtimeId=7747 minecraft:furnace;facing_direction=4 blockId=61 -runtimeId=4817 +runtimeId=7748 minecraft:furnace;facing_direction=5 blockId=61 -runtimeId=4818 +runtimeId=7749 minecraft:gilded_blackstone blockId=536 -runtimeId=4819 +runtimeId=4518 minecraft:glass blockId=20 -runtimeId=4820 +runtimeId=6088 minecraft:glass_pane blockId=102 -runtimeId=4821 +runtimeId=5189 -minecraft:glow_frame;facing_direction=0;item_frame_map_bit=0 +minecraft:glow_frame;facing_direction=0;item_frame_photo_bit=0;item_frame_map_bit=0 blockId=594 -runtimeId=4822 +runtimeId=179 -minecraft:glow_frame;facing_direction=0;item_frame_map_bit=1 +minecraft:glow_frame;facing_direction=0;item_frame_photo_bit=0;item_frame_map_bit=1 blockId=594 -runtimeId=4828 +runtimeId=185 -minecraft:glow_frame;facing_direction=1;item_frame_map_bit=0 +minecraft:glow_frame;facing_direction=0;item_frame_photo_bit=1;item_frame_map_bit=0 blockId=594 -runtimeId=4823 +runtimeId=191 -minecraft:glow_frame;facing_direction=1;item_frame_map_bit=1 +minecraft:glow_frame;facing_direction=0;item_frame_photo_bit=1;item_frame_map_bit=1 blockId=594 -runtimeId=4829 +runtimeId=197 -minecraft:glow_frame;facing_direction=2;item_frame_map_bit=0 +minecraft:glow_frame;facing_direction=1;item_frame_photo_bit=0;item_frame_map_bit=0 blockId=594 -runtimeId=4824 +runtimeId=180 -minecraft:glow_frame;facing_direction=2;item_frame_map_bit=1 +minecraft:glow_frame;facing_direction=1;item_frame_photo_bit=0;item_frame_map_bit=1 blockId=594 -runtimeId=4830 +runtimeId=186 -minecraft:glow_frame;facing_direction=3;item_frame_map_bit=0 +minecraft:glow_frame;facing_direction=1;item_frame_photo_bit=1;item_frame_map_bit=0 blockId=594 -runtimeId=4825 +runtimeId=192 -minecraft:glow_frame;facing_direction=3;item_frame_map_bit=1 +minecraft:glow_frame;facing_direction=1;item_frame_photo_bit=1;item_frame_map_bit=1 blockId=594 -runtimeId=4831 +runtimeId=198 -minecraft:glow_frame;facing_direction=4;item_frame_map_bit=0 +minecraft:glow_frame;facing_direction=2;item_frame_photo_bit=0;item_frame_map_bit=0 blockId=594 -runtimeId=4826 +runtimeId=181 -minecraft:glow_frame;facing_direction=4;item_frame_map_bit=1 +minecraft:glow_frame;facing_direction=2;item_frame_photo_bit=0;item_frame_map_bit=1 blockId=594 -runtimeId=4832 +runtimeId=187 -minecraft:glow_frame;facing_direction=5;item_frame_map_bit=0 +minecraft:glow_frame;facing_direction=2;item_frame_photo_bit=1;item_frame_map_bit=0 blockId=594 -runtimeId=4827 +runtimeId=193 -minecraft:glow_frame;facing_direction=5;item_frame_map_bit=1 +minecraft:glow_frame;facing_direction=2;item_frame_photo_bit=1;item_frame_map_bit=1 blockId=594 -runtimeId=4833 +runtimeId=199 + +minecraft:glow_frame;facing_direction=3;item_frame_photo_bit=0;item_frame_map_bit=0 +blockId=594 +runtimeId=182 + +minecraft:glow_frame;facing_direction=3;item_frame_photo_bit=0;item_frame_map_bit=1 +blockId=594 +runtimeId=188 + +minecraft:glow_frame;facing_direction=3;item_frame_photo_bit=1;item_frame_map_bit=0 +blockId=594 +runtimeId=194 + +minecraft:glow_frame;facing_direction=3;item_frame_photo_bit=1;item_frame_map_bit=1 +blockId=594 +runtimeId=200 + +minecraft:glow_frame;facing_direction=4;item_frame_photo_bit=0;item_frame_map_bit=0 +blockId=594 +runtimeId=183 + +minecraft:glow_frame;facing_direction=4;item_frame_photo_bit=0;item_frame_map_bit=1 +blockId=594 +runtimeId=189 + +minecraft:glow_frame;facing_direction=4;item_frame_photo_bit=1;item_frame_map_bit=0 +blockId=594 +runtimeId=195 + +minecraft:glow_frame;facing_direction=4;item_frame_photo_bit=1;item_frame_map_bit=1 +blockId=594 +runtimeId=201 + +minecraft:glow_frame;facing_direction=5;item_frame_photo_bit=0;item_frame_map_bit=0 +blockId=594 +runtimeId=184 + +minecraft:glow_frame;facing_direction=5;item_frame_photo_bit=0;item_frame_map_bit=1 +blockId=594 +runtimeId=190 + +minecraft:glow_frame;facing_direction=5;item_frame_photo_bit=1;item_frame_map_bit=0 +blockId=594 +runtimeId=196 + +minecraft:glow_frame;facing_direction=5;item_frame_photo_bit=1;item_frame_map_bit=1 +blockId=594 +runtimeId=202 minecraft:glow_lichen;multi_face_direction_bits=0 blockId=666 -runtimeId=4834 +runtimeId=5571 minecraft:glow_lichen;multi_face_direction_bits=1 blockId=666 -runtimeId=4835 +runtimeId=5572 minecraft:glow_lichen;multi_face_direction_bits=2 blockId=666 -runtimeId=4836 +runtimeId=5573 minecraft:glow_lichen;multi_face_direction_bits=3 blockId=666 -runtimeId=4837 +runtimeId=5574 minecraft:glow_lichen;multi_face_direction_bits=4 blockId=666 -runtimeId=4838 +runtimeId=5575 minecraft:glow_lichen;multi_face_direction_bits=5 blockId=666 -runtimeId=4839 +runtimeId=5576 minecraft:glow_lichen;multi_face_direction_bits=6 blockId=666 -runtimeId=4840 +runtimeId=5577 minecraft:glow_lichen;multi_face_direction_bits=7 blockId=666 -runtimeId=4841 +runtimeId=5578 minecraft:glow_lichen;multi_face_direction_bits=8 blockId=666 -runtimeId=4842 +runtimeId=5579 minecraft:glow_lichen;multi_face_direction_bits=9 blockId=666 -runtimeId=4843 +runtimeId=5580 minecraft:glow_lichen;multi_face_direction_bits=10 blockId=666 -runtimeId=4844 +runtimeId=5581 minecraft:glow_lichen;multi_face_direction_bits=11 blockId=666 -runtimeId=4845 +runtimeId=5582 minecraft:glow_lichen;multi_face_direction_bits=12 blockId=666 -runtimeId=4846 +runtimeId=5583 minecraft:glow_lichen;multi_face_direction_bits=13 blockId=666 -runtimeId=4847 +runtimeId=5584 minecraft:glow_lichen;multi_face_direction_bits=14 blockId=666 -runtimeId=4848 +runtimeId=5585 minecraft:glow_lichen;multi_face_direction_bits=15 blockId=666 -runtimeId=4849 +runtimeId=5586 minecraft:glow_lichen;multi_face_direction_bits=16 blockId=666 -runtimeId=4850 +runtimeId=5587 minecraft:glow_lichen;multi_face_direction_bits=17 blockId=666 -runtimeId=4851 +runtimeId=5588 minecraft:glow_lichen;multi_face_direction_bits=18 blockId=666 -runtimeId=4852 +runtimeId=5589 minecraft:glow_lichen;multi_face_direction_bits=19 blockId=666 -runtimeId=4853 +runtimeId=5590 minecraft:glow_lichen;multi_face_direction_bits=20 blockId=666 -runtimeId=4854 +runtimeId=5591 minecraft:glow_lichen;multi_face_direction_bits=21 blockId=666 -runtimeId=4855 +runtimeId=5592 minecraft:glow_lichen;multi_face_direction_bits=22 blockId=666 -runtimeId=4856 +runtimeId=5593 minecraft:glow_lichen;multi_face_direction_bits=23 blockId=666 -runtimeId=4857 +runtimeId=5594 minecraft:glow_lichen;multi_face_direction_bits=24 blockId=666 -runtimeId=4858 +runtimeId=5595 minecraft:glow_lichen;multi_face_direction_bits=25 blockId=666 -runtimeId=4859 +runtimeId=5596 minecraft:glow_lichen;multi_face_direction_bits=26 blockId=666 -runtimeId=4860 +runtimeId=5597 minecraft:glow_lichen;multi_face_direction_bits=27 blockId=666 -runtimeId=4861 +runtimeId=5598 minecraft:glow_lichen;multi_face_direction_bits=28 blockId=666 -runtimeId=4862 +runtimeId=5599 minecraft:glow_lichen;multi_face_direction_bits=29 blockId=666 -runtimeId=4863 +runtimeId=5600 minecraft:glow_lichen;multi_face_direction_bits=30 blockId=666 -runtimeId=4864 +runtimeId=5601 minecraft:glow_lichen;multi_face_direction_bits=31 blockId=666 -runtimeId=4865 +runtimeId=5602 minecraft:glow_lichen;multi_face_direction_bits=32 blockId=666 -runtimeId=4866 +runtimeId=5603 minecraft:glow_lichen;multi_face_direction_bits=33 blockId=666 -runtimeId=4867 +runtimeId=5604 minecraft:glow_lichen;multi_face_direction_bits=34 blockId=666 -runtimeId=4868 +runtimeId=5605 minecraft:glow_lichen;multi_face_direction_bits=35 blockId=666 -runtimeId=4869 +runtimeId=5606 minecraft:glow_lichen;multi_face_direction_bits=36 blockId=666 -runtimeId=4870 +runtimeId=5607 minecraft:glow_lichen;multi_face_direction_bits=37 blockId=666 -runtimeId=4871 +runtimeId=5608 minecraft:glow_lichen;multi_face_direction_bits=38 blockId=666 -runtimeId=4872 +runtimeId=5609 minecraft:glow_lichen;multi_face_direction_bits=39 blockId=666 -runtimeId=4873 +runtimeId=5610 minecraft:glow_lichen;multi_face_direction_bits=40 blockId=666 -runtimeId=4874 +runtimeId=5611 minecraft:glow_lichen;multi_face_direction_bits=41 blockId=666 -runtimeId=4875 +runtimeId=5612 minecraft:glow_lichen;multi_face_direction_bits=42 blockId=666 -runtimeId=4876 +runtimeId=5613 minecraft:glow_lichen;multi_face_direction_bits=43 blockId=666 -runtimeId=4877 +runtimeId=5614 minecraft:glow_lichen;multi_face_direction_bits=44 blockId=666 -runtimeId=4878 +runtimeId=5615 minecraft:glow_lichen;multi_face_direction_bits=45 blockId=666 -runtimeId=4879 +runtimeId=5616 minecraft:glow_lichen;multi_face_direction_bits=46 blockId=666 -runtimeId=4880 +runtimeId=5617 minecraft:glow_lichen;multi_face_direction_bits=47 blockId=666 -runtimeId=4881 +runtimeId=5618 minecraft:glow_lichen;multi_face_direction_bits=48 blockId=666 -runtimeId=4882 +runtimeId=5619 minecraft:glow_lichen;multi_face_direction_bits=49 blockId=666 -runtimeId=4883 +runtimeId=5620 minecraft:glow_lichen;multi_face_direction_bits=50 blockId=666 -runtimeId=4884 +runtimeId=5621 minecraft:glow_lichen;multi_face_direction_bits=51 blockId=666 -runtimeId=4885 +runtimeId=5622 minecraft:glow_lichen;multi_face_direction_bits=52 blockId=666 -runtimeId=4886 +runtimeId=5623 minecraft:glow_lichen;multi_face_direction_bits=53 blockId=666 -runtimeId=4887 +runtimeId=5624 minecraft:glow_lichen;multi_face_direction_bits=54 blockId=666 -runtimeId=4888 +runtimeId=5625 minecraft:glow_lichen;multi_face_direction_bits=55 blockId=666 -runtimeId=4889 +runtimeId=5626 minecraft:glow_lichen;multi_face_direction_bits=56 blockId=666 -runtimeId=4890 +runtimeId=5627 minecraft:glow_lichen;multi_face_direction_bits=57 blockId=666 -runtimeId=4891 +runtimeId=5628 minecraft:glow_lichen;multi_face_direction_bits=58 blockId=666 -runtimeId=4892 +runtimeId=5629 minecraft:glow_lichen;multi_face_direction_bits=59 blockId=666 -runtimeId=4893 +runtimeId=5630 minecraft:glow_lichen;multi_face_direction_bits=60 blockId=666 -runtimeId=4894 +runtimeId=5631 minecraft:glow_lichen;multi_face_direction_bits=61 blockId=666 -runtimeId=4895 +runtimeId=5632 minecraft:glow_lichen;multi_face_direction_bits=62 blockId=666 -runtimeId=4896 +runtimeId=5633 minecraft:glow_lichen;multi_face_direction_bits=63 blockId=666 -runtimeId=4897 +runtimeId=5634 minecraft:glowingobsidian blockId=246 -runtimeId=4898 +runtimeId=3550 minecraft:glowstone blockId=89 -runtimeId=4899 +runtimeId=3874 minecraft:gold_block blockId=41 -runtimeId=4900 +runtimeId=305 minecraft:gold_ore blockId=14 -runtimeId=4901 +runtimeId=920 minecraft:golden_rail;rail_direction=0;rail_data_bit=0 blockId=27 -runtimeId=4902 +runtimeId=5282 minecraft:golden_rail;rail_direction=0;rail_data_bit=1 blockId=27 -runtimeId=4908 +runtimeId=5288 minecraft:golden_rail;rail_direction=1;rail_data_bit=0 blockId=27 -runtimeId=4903 +runtimeId=5283 minecraft:golden_rail;rail_direction=1;rail_data_bit=1 blockId=27 -runtimeId=4909 +runtimeId=5289 minecraft:golden_rail;rail_direction=2;rail_data_bit=0 blockId=27 -runtimeId=4904 +runtimeId=5284 minecraft:golden_rail;rail_direction=2;rail_data_bit=1 blockId=27 -runtimeId=4910 +runtimeId=5290 minecraft:golden_rail;rail_direction=3;rail_data_bit=0 blockId=27 -runtimeId=4905 +runtimeId=5285 minecraft:golden_rail;rail_direction=3;rail_data_bit=1 blockId=27 -runtimeId=4911 +runtimeId=5291 minecraft:golden_rail;rail_direction=4;rail_data_bit=0 blockId=27 -runtimeId=4906 +runtimeId=5286 minecraft:golden_rail;rail_direction=4;rail_data_bit=1 blockId=27 -runtimeId=4912 +runtimeId=5292 minecraft:golden_rail;rail_direction=5;rail_data_bit=0 blockId=27 -runtimeId=4907 +runtimeId=5287 minecraft:golden_rail;rail_direction=5;rail_data_bit=1 blockId=27 -runtimeId=4913 +runtimeId=5293 minecraft:granite_stairs;upside_down_bit=0;weirdo_direction=0 blockId=424 -runtimeId=4914 +runtimeId=3542 minecraft:granite_stairs;upside_down_bit=0;weirdo_direction=1 blockId=424 -runtimeId=4915 +runtimeId=3543 minecraft:granite_stairs;upside_down_bit=0;weirdo_direction=2 blockId=424 -runtimeId=4916 +runtimeId=3544 minecraft:granite_stairs;upside_down_bit=0;weirdo_direction=3 blockId=424 -runtimeId=4917 +runtimeId=3545 minecraft:granite_stairs;upside_down_bit=1;weirdo_direction=0 blockId=424 -runtimeId=4918 +runtimeId=3546 minecraft:granite_stairs;upside_down_bit=1;weirdo_direction=1 blockId=424 -runtimeId=4919 +runtimeId=3547 minecraft:granite_stairs;upside_down_bit=1;weirdo_direction=2 blockId=424 -runtimeId=4920 +runtimeId=3548 minecraft:granite_stairs;upside_down_bit=1;weirdo_direction=3 blockId=424 -runtimeId=4921 +runtimeId=3549 minecraft:grass blockId=2 -runtimeId=4922 +runtimeId=6891 minecraft:grass_path blockId=198 -runtimeId=4923 +runtimeId=8023 minecraft:gravel blockId=13 -runtimeId=4924 +runtimeId=8226 + +minecraft:gray_candle;lit=0;candles=0 +blockId=675 +runtimeId=947 + +minecraft:gray_candle;lit=0;candles=1 +blockId=675 +runtimeId=948 + +minecraft:gray_candle;lit=0;candles=2 +blockId=675 +runtimeId=949 + +minecraft:gray_candle;lit=0;candles=3 +blockId=675 +runtimeId=950 + +minecraft:gray_candle;lit=1;candles=0 +blockId=675 +runtimeId=951 + +minecraft:gray_candle;lit=1;candles=1 +blockId=675 +runtimeId=952 + +minecraft:gray_candle;lit=1;candles=2 +blockId=675 +runtimeId=953 + +minecraft:gray_candle;lit=1;candles=3 +blockId=675 +runtimeId=954 + +minecraft:gray_candle_cake;lit=0 +blockId=692 +runtimeId=136 + +minecraft:gray_candle_cake;lit=1 +blockId=692 +runtimeId=137 minecraft:gray_glazed_terracotta;facing_direction=0 blockId=227 -runtimeId=4925 +runtimeId=8195 minecraft:gray_glazed_terracotta;facing_direction=1 blockId=227 -runtimeId=4926 +runtimeId=8196 minecraft:gray_glazed_terracotta;facing_direction=2 blockId=227 -runtimeId=4927 +runtimeId=8197 minecraft:gray_glazed_terracotta;facing_direction=3 blockId=227 -runtimeId=4928 +runtimeId=8198 minecraft:gray_glazed_terracotta;facing_direction=4 blockId=227 -runtimeId=4929 +runtimeId=8199 minecraft:gray_glazed_terracotta;facing_direction=5 blockId=227 -runtimeId=4930 +runtimeId=8200 + +minecraft:green_candle;lit=0;candles=0 +blockId=681 +runtimeId=694 + +minecraft:green_candle;lit=0;candles=1 +blockId=681 +runtimeId=695 + +minecraft:green_candle;lit=0;candles=2 +blockId=681 +runtimeId=696 + +minecraft:green_candle;lit=0;candles=3 +blockId=681 +runtimeId=697 + +minecraft:green_candle;lit=1;candles=0 +blockId=681 +runtimeId=698 + +minecraft:green_candle;lit=1;candles=1 +blockId=681 +runtimeId=699 + +minecraft:green_candle;lit=1;candles=2 +blockId=681 +runtimeId=700 + +minecraft:green_candle;lit=1;candles=3 +blockId=681 +runtimeId=701 + +minecraft:green_candle_cake;lit=0 +blockId=698 +runtimeId=3600 + +minecraft:green_candle_cake;lit=1 +blockId=698 +runtimeId=3601 minecraft:green_glazed_terracotta;facing_direction=0 blockId=233 -runtimeId=4931 +runtimeId=6501 minecraft:green_glazed_terracotta;facing_direction=1 blockId=233 -runtimeId=4932 +runtimeId=6502 minecraft:green_glazed_terracotta;facing_direction=2 blockId=233 -runtimeId=4933 +runtimeId=6503 minecraft:green_glazed_terracotta;facing_direction=3 blockId=233 -runtimeId=4934 +runtimeId=6504 minecraft:green_glazed_terracotta;facing_direction=4 blockId=233 -runtimeId=4935 +runtimeId=6505 minecraft:green_glazed_terracotta;facing_direction=5 blockId=233 -runtimeId=4936 +runtimeId=6506 minecraft:grindstone;attachment=hanging;direction=0 blockId=450 -runtimeId=4941 +runtimeId=7985 minecraft:grindstone;attachment=hanging;direction=1 blockId=450 -runtimeId=4942 +runtimeId=7986 minecraft:grindstone;attachment=hanging;direction=2 blockId=450 -runtimeId=4943 +runtimeId=7987 minecraft:grindstone;attachment=hanging;direction=3 blockId=450 -runtimeId=4944 +runtimeId=7988 minecraft:grindstone;attachment=multiple;direction=0 blockId=450 -runtimeId=4949 +runtimeId=7993 minecraft:grindstone;attachment=multiple;direction=1 blockId=450 -runtimeId=4950 +runtimeId=7994 minecraft:grindstone;attachment=multiple;direction=2 blockId=450 -runtimeId=4951 +runtimeId=7995 minecraft:grindstone;attachment=multiple;direction=3 blockId=450 -runtimeId=4952 +runtimeId=7996 minecraft:grindstone;attachment=side;direction=0 blockId=450 -runtimeId=4945 +runtimeId=7989 minecraft:grindstone;attachment=side;direction=1 blockId=450 -runtimeId=4946 +runtimeId=7990 minecraft:grindstone;attachment=side;direction=2 blockId=450 -runtimeId=4947 +runtimeId=7991 minecraft:grindstone;attachment=side;direction=3 blockId=450 -runtimeId=4948 +runtimeId=7992 minecraft:grindstone;attachment=standing;direction=0 blockId=450 -runtimeId=4937 +runtimeId=7981 minecraft:grindstone;attachment=standing;direction=1 blockId=450 -runtimeId=4938 +runtimeId=7982 minecraft:grindstone;attachment=standing;direction=2 blockId=450 -runtimeId=4939 +runtimeId=7983 minecraft:grindstone;attachment=standing;direction=3 blockId=450 -runtimeId=4940 +runtimeId=7984 minecraft:hanging_roots blockId=574 -runtimeId=4953 +runtimeId=205 minecraft:hard_glass blockId=253 -runtimeId=4954 +runtimeId=4722 minecraft:hard_glass_pane blockId=190 -runtimeId=4955 +runtimeId=684 minecraft:hard_stained_glass;color=black blockId=254 -runtimeId=4971 +runtimeId=6146 minecraft:hard_stained_glass;color=blue blockId=254 -runtimeId=4967 +runtimeId=6142 minecraft:hard_stained_glass;color=brown blockId=254 -runtimeId=4968 +runtimeId=6143 minecraft:hard_stained_glass;color=cyan blockId=254 -runtimeId=4965 +runtimeId=6140 minecraft:hard_stained_glass;color=gray blockId=254 -runtimeId=4963 +runtimeId=6138 minecraft:hard_stained_glass;color=green blockId=254 -runtimeId=4969 +runtimeId=6144 minecraft:hard_stained_glass;color=light_blue blockId=254 -runtimeId=4959 +runtimeId=6134 minecraft:hard_stained_glass;color=lime blockId=254 -runtimeId=4961 +runtimeId=6136 minecraft:hard_stained_glass;color=magenta blockId=254 -runtimeId=4958 +runtimeId=6133 minecraft:hard_stained_glass;color=orange blockId=254 -runtimeId=4957 +runtimeId=6132 minecraft:hard_stained_glass;color=pink blockId=254 -runtimeId=4962 +runtimeId=6137 minecraft:hard_stained_glass;color=purple blockId=254 -runtimeId=4966 +runtimeId=6141 minecraft:hard_stained_glass;color=red blockId=254 -runtimeId=4970 +runtimeId=6145 minecraft:hard_stained_glass;color=silver blockId=254 -runtimeId=4964 +runtimeId=6139 minecraft:hard_stained_glass;color=white blockId=254 -runtimeId=4956 +runtimeId=6131 minecraft:hard_stained_glass;color=yellow blockId=254 -runtimeId=4960 +runtimeId=6135 minecraft:hard_stained_glass_pane;color=black blockId=191 -runtimeId=4987 +runtimeId=7979 minecraft:hard_stained_glass_pane;color=blue blockId=191 -runtimeId=4983 +runtimeId=7975 minecraft:hard_stained_glass_pane;color=brown blockId=191 -runtimeId=4984 +runtimeId=7976 minecraft:hard_stained_glass_pane;color=cyan blockId=191 -runtimeId=4981 +runtimeId=7973 minecraft:hard_stained_glass_pane;color=gray blockId=191 -runtimeId=4979 +runtimeId=7971 minecraft:hard_stained_glass_pane;color=green blockId=191 -runtimeId=4985 +runtimeId=7977 minecraft:hard_stained_glass_pane;color=light_blue blockId=191 -runtimeId=4975 +runtimeId=7967 minecraft:hard_stained_glass_pane;color=lime blockId=191 -runtimeId=4977 +runtimeId=7969 minecraft:hard_stained_glass_pane;color=magenta blockId=191 -runtimeId=4974 +runtimeId=7966 minecraft:hard_stained_glass_pane;color=orange blockId=191 -runtimeId=4973 +runtimeId=7965 minecraft:hard_stained_glass_pane;color=pink blockId=191 -runtimeId=4978 +runtimeId=7970 minecraft:hard_stained_glass_pane;color=purple blockId=191 -runtimeId=4982 +runtimeId=7974 minecraft:hard_stained_glass_pane;color=red blockId=191 -runtimeId=4986 +runtimeId=7978 minecraft:hard_stained_glass_pane;color=silver blockId=191 -runtimeId=4980 +runtimeId=7972 minecraft:hard_stained_glass_pane;color=white blockId=191 -runtimeId=4972 +runtimeId=7964 minecraft:hard_stained_glass_pane;color=yellow blockId=191 -runtimeId=4976 +runtimeId=7968 minecraft:hardened_clay blockId=172 -runtimeId=4988 +runtimeId=649 minecraft:hay_block;deprecated=0;pillar_axis=x blockId=170 -runtimeId=4993 +runtimeId=707 minecraft:hay_block;deprecated=0;pillar_axis=y blockId=170 -runtimeId=4989 +runtimeId=703 minecraft:hay_block;deprecated=0;pillar_axis=z blockId=170 -runtimeId=4997 +runtimeId=711 minecraft:hay_block;deprecated=1;pillar_axis=x blockId=170 -runtimeId=4994 +runtimeId=708 minecraft:hay_block;deprecated=1;pillar_axis=y blockId=170 -runtimeId=4990 +runtimeId=704 minecraft:hay_block;deprecated=1;pillar_axis=z blockId=170 -runtimeId=4998 +runtimeId=712 minecraft:hay_block;deprecated=2;pillar_axis=x blockId=170 -runtimeId=4995 +runtimeId=709 minecraft:hay_block;deprecated=2;pillar_axis=y blockId=170 -runtimeId=4991 +runtimeId=705 minecraft:hay_block;deprecated=2;pillar_axis=z blockId=170 -runtimeId=4999 +runtimeId=713 minecraft:hay_block;deprecated=3;pillar_axis=x blockId=170 -runtimeId=4996 +runtimeId=710 minecraft:hay_block;deprecated=3;pillar_axis=y blockId=170 -runtimeId=4992 +runtimeId=706 minecraft:hay_block;deprecated=3;pillar_axis=z blockId=170 -runtimeId=5000 +runtimeId=714 minecraft:heavy_weighted_pressure_plate;redstone_signal=0 blockId=148 -runtimeId=5001 +runtimeId=1165 minecraft:heavy_weighted_pressure_plate;redstone_signal=1 blockId=148 -runtimeId=5002 +runtimeId=1166 minecraft:heavy_weighted_pressure_plate;redstone_signal=2 blockId=148 -runtimeId=5003 +runtimeId=1167 minecraft:heavy_weighted_pressure_plate;redstone_signal=3 blockId=148 -runtimeId=5004 +runtimeId=1168 minecraft:heavy_weighted_pressure_plate;redstone_signal=4 blockId=148 -runtimeId=5005 +runtimeId=1169 minecraft:heavy_weighted_pressure_plate;redstone_signal=5 blockId=148 -runtimeId=5006 +runtimeId=1170 minecraft:heavy_weighted_pressure_plate;redstone_signal=6 blockId=148 -runtimeId=5007 +runtimeId=1171 minecraft:heavy_weighted_pressure_plate;redstone_signal=7 blockId=148 -runtimeId=5008 +runtimeId=1172 minecraft:heavy_weighted_pressure_plate;redstone_signal=8 blockId=148 -runtimeId=5009 +runtimeId=1173 minecraft:heavy_weighted_pressure_plate;redstone_signal=9 blockId=148 -runtimeId=5010 +runtimeId=1174 minecraft:heavy_weighted_pressure_plate;redstone_signal=10 blockId=148 -runtimeId=5011 +runtimeId=1175 minecraft:heavy_weighted_pressure_plate;redstone_signal=11 blockId=148 -runtimeId=5012 +runtimeId=1176 minecraft:heavy_weighted_pressure_plate;redstone_signal=12 blockId=148 -runtimeId=5013 +runtimeId=1177 minecraft:heavy_weighted_pressure_plate;redstone_signal=13 blockId=148 -runtimeId=5014 +runtimeId=1178 minecraft:heavy_weighted_pressure_plate;redstone_signal=14 blockId=148 -runtimeId=5015 +runtimeId=1179 minecraft:heavy_weighted_pressure_plate;redstone_signal=15 blockId=148 -runtimeId=5016 +runtimeId=1180 minecraft:honey_block blockId=475 -runtimeId=5017 +runtimeId=900 minecraft:honeycomb_block blockId=476 -runtimeId=5018 +runtimeId=4424 minecraft:hopper;facing_direction=0;toggle_bit=0 blockId=154 -runtimeId=5019 +runtimeId=6812 minecraft:hopper;facing_direction=0;toggle_bit=1 blockId=154 -runtimeId=5025 +runtimeId=6818 minecraft:hopper;facing_direction=1;toggle_bit=0 blockId=154 -runtimeId=5020 +runtimeId=6813 minecraft:hopper;facing_direction=1;toggle_bit=1 blockId=154 -runtimeId=5026 +runtimeId=6819 minecraft:hopper;facing_direction=2;toggle_bit=0 blockId=154 -runtimeId=5021 +runtimeId=6814 minecraft:hopper;facing_direction=2;toggle_bit=1 blockId=154 -runtimeId=5027 +runtimeId=6820 minecraft:hopper;facing_direction=3;toggle_bit=0 blockId=154 -runtimeId=5022 +runtimeId=6815 minecraft:hopper;facing_direction=3;toggle_bit=1 blockId=154 -runtimeId=5028 +runtimeId=6821 minecraft:hopper;facing_direction=4;toggle_bit=0 blockId=154 -runtimeId=5023 +runtimeId=6816 minecraft:hopper;facing_direction=4;toggle_bit=1 blockId=154 -runtimeId=5029 +runtimeId=6822 minecraft:hopper;facing_direction=5;toggle_bit=0 blockId=154 -runtimeId=5024 +runtimeId=6817 minecraft:hopper;facing_direction=5;toggle_bit=1 blockId=154 -runtimeId=5030 +runtimeId=6823 minecraft:ice blockId=79 -runtimeId=5031 +runtimeId=6563 minecraft:infested_deepslate;pillar_axis=x blockId=709 -runtimeId=5033 +runtimeId=4598 minecraft:infested_deepslate;pillar_axis=y blockId=709 -runtimeId=5032 +runtimeId=4597 minecraft:infested_deepslate;pillar_axis=z blockId=709 -runtimeId=5034 +runtimeId=4599 minecraft:info_update blockId=248 -runtimeId=5035 +runtimeId=243 minecraft:info_update2 blockId=249 -runtimeId=5036 +runtimeId=7750 -minecraft:invisibleBedrock +minecraft:invisible_bedrock blockId=95 -runtimeId=5037 +runtimeId=955 minecraft:iron_bars blockId=101 -runtimeId=5038 +runtimeId=4757 minecraft:iron_block blockId=42 -runtimeId=5039 +runtimeId=8203 minecraft:iron_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=0 blockId=71 -runtimeId=5040 +runtimeId=4392 minecraft:iron_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=1 blockId=71 -runtimeId=5041 +runtimeId=4393 minecraft:iron_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=2 blockId=71 -runtimeId=5042 +runtimeId=4394 minecraft:iron_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=3 blockId=71 -runtimeId=5043 +runtimeId=4395 minecraft:iron_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=0 blockId=71 -runtimeId=5056 +runtimeId=4408 minecraft:iron_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=1 blockId=71 -runtimeId=5057 +runtimeId=4409 minecraft:iron_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=2 blockId=71 -runtimeId=5058 +runtimeId=4410 minecraft:iron_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=3 blockId=71 -runtimeId=5059 +runtimeId=4411 minecraft:iron_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=0 blockId=71 -runtimeId=5048 +runtimeId=4400 minecraft:iron_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=1 blockId=71 -runtimeId=5049 +runtimeId=4401 minecraft:iron_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=2 blockId=71 -runtimeId=5050 +runtimeId=4402 minecraft:iron_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=3 blockId=71 -runtimeId=5051 +runtimeId=4403 minecraft:iron_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=0 blockId=71 -runtimeId=5064 +runtimeId=4416 minecraft:iron_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=1 blockId=71 -runtimeId=5065 +runtimeId=4417 minecraft:iron_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=2 blockId=71 -runtimeId=5066 +runtimeId=4418 minecraft:iron_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=3 blockId=71 -runtimeId=5067 +runtimeId=4419 minecraft:iron_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=0 blockId=71 -runtimeId=5044 +runtimeId=4396 minecraft:iron_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=1 blockId=71 -runtimeId=5045 +runtimeId=4397 minecraft:iron_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=2 blockId=71 -runtimeId=5046 +runtimeId=4398 minecraft:iron_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=3 blockId=71 -runtimeId=5047 +runtimeId=4399 minecraft:iron_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=0 blockId=71 -runtimeId=5060 +runtimeId=4412 minecraft:iron_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=1 blockId=71 -runtimeId=5061 +runtimeId=4413 minecraft:iron_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=2 blockId=71 -runtimeId=5062 +runtimeId=4414 minecraft:iron_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=3 blockId=71 -runtimeId=5063 +runtimeId=4415 minecraft:iron_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=0 blockId=71 -runtimeId=5052 +runtimeId=4404 minecraft:iron_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=1 blockId=71 -runtimeId=5053 +runtimeId=4405 minecraft:iron_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=2 blockId=71 -runtimeId=5054 +runtimeId=4406 minecraft:iron_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=3 blockId=71 -runtimeId=5055 +runtimeId=4407 minecraft:iron_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=0 blockId=71 -runtimeId=5068 +runtimeId=4420 minecraft:iron_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=1 blockId=71 -runtimeId=5069 +runtimeId=4421 minecraft:iron_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=2 blockId=71 -runtimeId=5070 +runtimeId=4422 minecraft:iron_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=3 blockId=71 -runtimeId=5071 +runtimeId=4423 minecraft:iron_ore blockId=15 -runtimeId=5072 +runtimeId=4646 minecraft:iron_trapdoor;open_bit=0;upside_down_bit=0;direction=0 blockId=167 -runtimeId=5073 +runtimeId=335 minecraft:iron_trapdoor;open_bit=0;upside_down_bit=0;direction=1 blockId=167 -runtimeId=5074 +runtimeId=336 minecraft:iron_trapdoor;open_bit=0;upside_down_bit=0;direction=2 blockId=167 -runtimeId=5075 +runtimeId=337 minecraft:iron_trapdoor;open_bit=0;upside_down_bit=0;direction=3 blockId=167 -runtimeId=5076 +runtimeId=338 minecraft:iron_trapdoor;open_bit=0;upside_down_bit=1;direction=0 blockId=167 -runtimeId=5077 +runtimeId=339 minecraft:iron_trapdoor;open_bit=0;upside_down_bit=1;direction=1 blockId=167 -runtimeId=5078 +runtimeId=340 minecraft:iron_trapdoor;open_bit=0;upside_down_bit=1;direction=2 blockId=167 -runtimeId=5079 +runtimeId=341 minecraft:iron_trapdoor;open_bit=0;upside_down_bit=1;direction=3 blockId=167 -runtimeId=5080 +runtimeId=342 minecraft:iron_trapdoor;open_bit=1;upside_down_bit=0;direction=0 blockId=167 -runtimeId=5081 +runtimeId=343 minecraft:iron_trapdoor;open_bit=1;upside_down_bit=0;direction=1 blockId=167 -runtimeId=5082 +runtimeId=344 minecraft:iron_trapdoor;open_bit=1;upside_down_bit=0;direction=2 blockId=167 -runtimeId=5083 +runtimeId=345 minecraft:iron_trapdoor;open_bit=1;upside_down_bit=0;direction=3 blockId=167 -runtimeId=5084 +runtimeId=346 minecraft:iron_trapdoor;open_bit=1;upside_down_bit=1;direction=0 blockId=167 -runtimeId=5085 +runtimeId=347 minecraft:iron_trapdoor;open_bit=1;upside_down_bit=1;direction=1 blockId=167 -runtimeId=5086 +runtimeId=348 minecraft:iron_trapdoor;open_bit=1;upside_down_bit=1;direction=2 blockId=167 -runtimeId=5087 +runtimeId=349 minecraft:iron_trapdoor;open_bit=1;upside_down_bit=1;direction=3 blockId=167 -runtimeId=5088 +runtimeId=350 minecraft:jigsaw;facing_direction=0;rotation=0 blockId=466 -runtimeId=5089 +runtimeId=4831 minecraft:jigsaw;facing_direction=0;rotation=1 blockId=466 -runtimeId=5095 +runtimeId=4837 minecraft:jigsaw;facing_direction=0;rotation=2 blockId=466 -runtimeId=5101 +runtimeId=4843 minecraft:jigsaw;facing_direction=0;rotation=3 blockId=466 -runtimeId=5107 +runtimeId=4849 minecraft:jigsaw;facing_direction=1;rotation=0 blockId=466 -runtimeId=5090 +runtimeId=4832 minecraft:jigsaw;facing_direction=1;rotation=1 blockId=466 -runtimeId=5096 +runtimeId=4838 minecraft:jigsaw;facing_direction=1;rotation=2 blockId=466 -runtimeId=5102 +runtimeId=4844 minecraft:jigsaw;facing_direction=1;rotation=3 blockId=466 -runtimeId=5108 +runtimeId=4850 minecraft:jigsaw;facing_direction=2;rotation=0 blockId=466 -runtimeId=5091 +runtimeId=4833 minecraft:jigsaw;facing_direction=2;rotation=1 blockId=466 -runtimeId=5097 +runtimeId=4839 minecraft:jigsaw;facing_direction=2;rotation=2 blockId=466 -runtimeId=5103 +runtimeId=4845 minecraft:jigsaw;facing_direction=2;rotation=3 blockId=466 -runtimeId=5109 +runtimeId=4851 minecraft:jigsaw;facing_direction=3;rotation=0 blockId=466 -runtimeId=5092 +runtimeId=4834 minecraft:jigsaw;facing_direction=3;rotation=1 blockId=466 -runtimeId=5098 +runtimeId=4840 minecraft:jigsaw;facing_direction=3;rotation=2 blockId=466 -runtimeId=5104 +runtimeId=4846 minecraft:jigsaw;facing_direction=3;rotation=3 blockId=466 -runtimeId=5110 +runtimeId=4852 minecraft:jigsaw;facing_direction=4;rotation=0 blockId=466 -runtimeId=5093 +runtimeId=4835 minecraft:jigsaw;facing_direction=4;rotation=1 blockId=466 -runtimeId=5099 +runtimeId=4841 minecraft:jigsaw;facing_direction=4;rotation=2 blockId=466 -runtimeId=5105 +runtimeId=4847 minecraft:jigsaw;facing_direction=4;rotation=3 blockId=466 -runtimeId=5111 +runtimeId=4853 minecraft:jigsaw;facing_direction=5;rotation=0 blockId=466 -runtimeId=5094 +runtimeId=4836 minecraft:jigsaw;facing_direction=5;rotation=1 blockId=466 -runtimeId=5100 +runtimeId=4842 minecraft:jigsaw;facing_direction=5;rotation=2 blockId=466 -runtimeId=5106 +runtimeId=4848 minecraft:jigsaw;facing_direction=5;rotation=3 blockId=466 -runtimeId=5112 +runtimeId=4854 minecraft:jukebox blockId=84 -runtimeId=5113 +runtimeId=4830 minecraft:jungle_button;button_pressed_bit=0;facing_direction=0 blockId=398 -runtimeId=5114 +runtimeId=116 minecraft:jungle_button;button_pressed_bit=0;facing_direction=1 blockId=398 -runtimeId=5115 +runtimeId=117 minecraft:jungle_button;button_pressed_bit=0;facing_direction=2 blockId=398 -runtimeId=5116 +runtimeId=118 minecraft:jungle_button;button_pressed_bit=0;facing_direction=3 blockId=398 -runtimeId=5117 +runtimeId=119 minecraft:jungle_button;button_pressed_bit=0;facing_direction=4 blockId=398 -runtimeId=5118 +runtimeId=120 minecraft:jungle_button;button_pressed_bit=0;facing_direction=5 blockId=398 -runtimeId=5119 +runtimeId=121 minecraft:jungle_button;button_pressed_bit=1;facing_direction=0 blockId=398 -runtimeId=5120 +runtimeId=122 minecraft:jungle_button;button_pressed_bit=1;facing_direction=1 blockId=398 -runtimeId=5121 +runtimeId=123 minecraft:jungle_button;button_pressed_bit=1;facing_direction=2 blockId=398 -runtimeId=5122 +runtimeId=124 minecraft:jungle_button;button_pressed_bit=1;facing_direction=3 blockId=398 -runtimeId=5123 +runtimeId=125 minecraft:jungle_button;button_pressed_bit=1;facing_direction=4 blockId=398 -runtimeId=5124 +runtimeId=126 minecraft:jungle_button;button_pressed_bit=1;facing_direction=5 blockId=398 -runtimeId=5125 +runtimeId=127 minecraft:jungle_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=0 blockId=195 -runtimeId=5126 +runtimeId=6056 minecraft:jungle_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=1 blockId=195 -runtimeId=5127 +runtimeId=6057 minecraft:jungle_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=2 blockId=195 -runtimeId=5128 +runtimeId=6058 minecraft:jungle_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=3 blockId=195 -runtimeId=5129 +runtimeId=6059 minecraft:jungle_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=0 blockId=195 -runtimeId=5142 +runtimeId=6072 minecraft:jungle_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=1 blockId=195 -runtimeId=5143 +runtimeId=6073 minecraft:jungle_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=2 blockId=195 -runtimeId=5144 +runtimeId=6074 minecraft:jungle_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=3 blockId=195 -runtimeId=5145 +runtimeId=6075 minecraft:jungle_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=0 blockId=195 -runtimeId=5134 +runtimeId=6064 minecraft:jungle_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=1 blockId=195 -runtimeId=5135 +runtimeId=6065 minecraft:jungle_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=2 blockId=195 -runtimeId=5136 +runtimeId=6066 minecraft:jungle_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=3 blockId=195 -runtimeId=5137 +runtimeId=6067 minecraft:jungle_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=0 blockId=195 -runtimeId=5150 +runtimeId=6080 minecraft:jungle_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=1 blockId=195 -runtimeId=5151 +runtimeId=6081 minecraft:jungle_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=2 blockId=195 -runtimeId=5152 +runtimeId=6082 minecraft:jungle_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=3 blockId=195 -runtimeId=5153 +runtimeId=6083 minecraft:jungle_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=0 blockId=195 -runtimeId=5130 +runtimeId=6060 minecraft:jungle_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=1 blockId=195 -runtimeId=5131 +runtimeId=6061 minecraft:jungle_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=2 blockId=195 -runtimeId=5132 +runtimeId=6062 minecraft:jungle_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=3 blockId=195 -runtimeId=5133 +runtimeId=6063 minecraft:jungle_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=0 blockId=195 -runtimeId=5146 +runtimeId=6076 minecraft:jungle_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=1 blockId=195 -runtimeId=5147 +runtimeId=6077 minecraft:jungle_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=2 blockId=195 -runtimeId=5148 +runtimeId=6078 minecraft:jungle_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=3 blockId=195 -runtimeId=5149 +runtimeId=6079 minecraft:jungle_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=0 blockId=195 -runtimeId=5138 +runtimeId=6068 minecraft:jungle_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=1 blockId=195 -runtimeId=5139 +runtimeId=6069 minecraft:jungle_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=2 blockId=195 -runtimeId=5140 +runtimeId=6070 minecraft:jungle_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=3 blockId=195 -runtimeId=5141 +runtimeId=6071 minecraft:jungle_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=0 blockId=195 -runtimeId=5154 +runtimeId=6084 minecraft:jungle_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=1 blockId=195 -runtimeId=5155 +runtimeId=6085 minecraft:jungle_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=2 blockId=195 -runtimeId=5156 +runtimeId=6086 minecraft:jungle_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=3 blockId=195 -runtimeId=5157 +runtimeId=6087 minecraft:jungle_fence_gate;in_wall_bit=0;open_bit=0;direction=0 blockId=185 -runtimeId=5158 +runtimeId=5315 minecraft:jungle_fence_gate;in_wall_bit=0;open_bit=0;direction=1 blockId=185 -runtimeId=5159 +runtimeId=5316 minecraft:jungle_fence_gate;in_wall_bit=0;open_bit=0;direction=2 blockId=185 -runtimeId=5160 +runtimeId=5317 minecraft:jungle_fence_gate;in_wall_bit=0;open_bit=0;direction=3 blockId=185 -runtimeId=5161 +runtimeId=5318 minecraft:jungle_fence_gate;in_wall_bit=0;open_bit=1;direction=0 blockId=185 -runtimeId=5162 +runtimeId=5319 minecraft:jungle_fence_gate;in_wall_bit=0;open_bit=1;direction=1 blockId=185 -runtimeId=5163 +runtimeId=5320 minecraft:jungle_fence_gate;in_wall_bit=0;open_bit=1;direction=2 blockId=185 -runtimeId=5164 +runtimeId=5321 minecraft:jungle_fence_gate;in_wall_bit=0;open_bit=1;direction=3 blockId=185 -runtimeId=5165 +runtimeId=5322 minecraft:jungle_fence_gate;in_wall_bit=1;open_bit=0;direction=0 blockId=185 -runtimeId=5166 +runtimeId=5323 minecraft:jungle_fence_gate;in_wall_bit=1;open_bit=0;direction=1 blockId=185 -runtimeId=5167 +runtimeId=5324 minecraft:jungle_fence_gate;in_wall_bit=1;open_bit=0;direction=2 blockId=185 -runtimeId=5168 +runtimeId=5325 minecraft:jungle_fence_gate;in_wall_bit=1;open_bit=0;direction=3 blockId=185 -runtimeId=5169 +runtimeId=5326 minecraft:jungle_fence_gate;in_wall_bit=1;open_bit=1;direction=0 blockId=185 -runtimeId=5170 +runtimeId=5327 minecraft:jungle_fence_gate;in_wall_bit=1;open_bit=1;direction=1 blockId=185 -runtimeId=5171 +runtimeId=5328 minecraft:jungle_fence_gate;in_wall_bit=1;open_bit=1;direction=2 blockId=185 -runtimeId=5172 +runtimeId=5329 minecraft:jungle_fence_gate;in_wall_bit=1;open_bit=1;direction=3 blockId=185 -runtimeId=5173 +runtimeId=5330 minecraft:jungle_pressure_plate;redstone_signal=0 blockId=408 -runtimeId=5174 +runtimeId=3640 minecraft:jungle_pressure_plate;redstone_signal=1 blockId=408 -runtimeId=5175 +runtimeId=3641 minecraft:jungle_pressure_plate;redstone_signal=2 blockId=408 -runtimeId=5176 +runtimeId=3642 minecraft:jungle_pressure_plate;redstone_signal=3 blockId=408 -runtimeId=5177 +runtimeId=3643 minecraft:jungle_pressure_plate;redstone_signal=4 blockId=408 -runtimeId=5178 +runtimeId=3644 minecraft:jungle_pressure_plate;redstone_signal=5 blockId=408 -runtimeId=5179 +runtimeId=3645 minecraft:jungle_pressure_plate;redstone_signal=6 blockId=408 -runtimeId=5180 +runtimeId=3646 minecraft:jungle_pressure_plate;redstone_signal=7 blockId=408 -runtimeId=5181 +runtimeId=3647 minecraft:jungle_pressure_plate;redstone_signal=8 blockId=408 -runtimeId=5182 +runtimeId=3648 minecraft:jungle_pressure_plate;redstone_signal=9 blockId=408 -runtimeId=5183 +runtimeId=3649 minecraft:jungle_pressure_plate;redstone_signal=10 blockId=408 -runtimeId=5184 +runtimeId=3650 minecraft:jungle_pressure_plate;redstone_signal=11 blockId=408 -runtimeId=5185 +runtimeId=3651 minecraft:jungle_pressure_plate;redstone_signal=12 blockId=408 -runtimeId=5186 +runtimeId=3652 minecraft:jungle_pressure_plate;redstone_signal=13 blockId=408 -runtimeId=5187 +runtimeId=3653 minecraft:jungle_pressure_plate;redstone_signal=14 blockId=408 -runtimeId=5188 +runtimeId=3654 minecraft:jungle_pressure_plate;redstone_signal=15 blockId=408 -runtimeId=5189 +runtimeId=3655 minecraft:jungle_stairs;upside_down_bit=0;weirdo_direction=0 blockId=136 -runtimeId=5190 +runtimeId=6883 minecraft:jungle_stairs;upside_down_bit=0;weirdo_direction=1 blockId=136 -runtimeId=5191 +runtimeId=6884 minecraft:jungle_stairs;upside_down_bit=0;weirdo_direction=2 blockId=136 -runtimeId=5192 +runtimeId=6885 minecraft:jungle_stairs;upside_down_bit=0;weirdo_direction=3 blockId=136 -runtimeId=5193 +runtimeId=6886 minecraft:jungle_stairs;upside_down_bit=1;weirdo_direction=0 blockId=136 -runtimeId=5194 +runtimeId=6887 minecraft:jungle_stairs;upside_down_bit=1;weirdo_direction=1 blockId=136 -runtimeId=5195 +runtimeId=6888 minecraft:jungle_stairs;upside_down_bit=1;weirdo_direction=2 blockId=136 -runtimeId=5196 +runtimeId=6889 minecraft:jungle_stairs;upside_down_bit=1;weirdo_direction=3 blockId=136 -runtimeId=5197 +runtimeId=6890 minecraft:jungle_standing_sign;ground_sign_direction=0 blockId=443 -runtimeId=5198 +runtimeId=5961 minecraft:jungle_standing_sign;ground_sign_direction=1 blockId=443 -runtimeId=5199 +runtimeId=5962 minecraft:jungle_standing_sign;ground_sign_direction=2 blockId=443 -runtimeId=5200 +runtimeId=5963 minecraft:jungle_standing_sign;ground_sign_direction=3 blockId=443 -runtimeId=5201 +runtimeId=5964 minecraft:jungle_standing_sign;ground_sign_direction=4 blockId=443 -runtimeId=5202 +runtimeId=5965 minecraft:jungle_standing_sign;ground_sign_direction=5 blockId=443 -runtimeId=5203 +runtimeId=5966 minecraft:jungle_standing_sign;ground_sign_direction=6 blockId=443 -runtimeId=5204 +runtimeId=5967 minecraft:jungle_standing_sign;ground_sign_direction=7 blockId=443 -runtimeId=5205 +runtimeId=5968 minecraft:jungle_standing_sign;ground_sign_direction=8 blockId=443 -runtimeId=5206 +runtimeId=5969 minecraft:jungle_standing_sign;ground_sign_direction=9 blockId=443 -runtimeId=5207 +runtimeId=5970 minecraft:jungle_standing_sign;ground_sign_direction=10 blockId=443 -runtimeId=5208 +runtimeId=5971 minecraft:jungle_standing_sign;ground_sign_direction=11 blockId=443 -runtimeId=5209 +runtimeId=5972 minecraft:jungle_standing_sign;ground_sign_direction=12 blockId=443 -runtimeId=5210 +runtimeId=5973 minecraft:jungle_standing_sign;ground_sign_direction=13 blockId=443 -runtimeId=5211 +runtimeId=5974 minecraft:jungle_standing_sign;ground_sign_direction=14 blockId=443 -runtimeId=5212 +runtimeId=5975 minecraft:jungle_standing_sign;ground_sign_direction=15 blockId=443 -runtimeId=5213 +runtimeId=5976 minecraft:jungle_trapdoor;open_bit=0;upside_down_bit=0;direction=0 blockId=403 -runtimeId=5214 +runtimeId=5331 minecraft:jungle_trapdoor;open_bit=0;upside_down_bit=0;direction=1 blockId=403 -runtimeId=5215 +runtimeId=5332 minecraft:jungle_trapdoor;open_bit=0;upside_down_bit=0;direction=2 blockId=403 -runtimeId=5216 +runtimeId=5333 minecraft:jungle_trapdoor;open_bit=0;upside_down_bit=0;direction=3 blockId=403 -runtimeId=5217 +runtimeId=5334 minecraft:jungle_trapdoor;open_bit=0;upside_down_bit=1;direction=0 blockId=403 -runtimeId=5218 +runtimeId=5335 minecraft:jungle_trapdoor;open_bit=0;upside_down_bit=1;direction=1 blockId=403 -runtimeId=5219 +runtimeId=5336 minecraft:jungle_trapdoor;open_bit=0;upside_down_bit=1;direction=2 blockId=403 -runtimeId=5220 +runtimeId=5337 minecraft:jungle_trapdoor;open_bit=0;upside_down_bit=1;direction=3 blockId=403 -runtimeId=5221 +runtimeId=5338 minecraft:jungle_trapdoor;open_bit=1;upside_down_bit=0;direction=0 blockId=403 -runtimeId=5222 +runtimeId=5339 minecraft:jungle_trapdoor;open_bit=1;upside_down_bit=0;direction=1 blockId=403 -runtimeId=5223 +runtimeId=5340 minecraft:jungle_trapdoor;open_bit=1;upside_down_bit=0;direction=2 blockId=403 -runtimeId=5224 +runtimeId=5341 minecraft:jungle_trapdoor;open_bit=1;upside_down_bit=0;direction=3 blockId=403 -runtimeId=5225 +runtimeId=5342 minecraft:jungle_trapdoor;open_bit=1;upside_down_bit=1;direction=0 blockId=403 -runtimeId=5226 +runtimeId=5343 minecraft:jungle_trapdoor;open_bit=1;upside_down_bit=1;direction=1 blockId=403 -runtimeId=5227 +runtimeId=5344 minecraft:jungle_trapdoor;open_bit=1;upside_down_bit=1;direction=2 blockId=403 -runtimeId=5228 +runtimeId=5345 minecraft:jungle_trapdoor;open_bit=1;upside_down_bit=1;direction=3 blockId=403 -runtimeId=5229 +runtimeId=5346 minecraft:jungle_wall_sign;facing_direction=0 blockId=444 -runtimeId=5230 +runtimeId=4331 minecraft:jungle_wall_sign;facing_direction=1 blockId=444 -runtimeId=5231 +runtimeId=4332 minecraft:jungle_wall_sign;facing_direction=2 blockId=444 -runtimeId=5232 +runtimeId=4333 minecraft:jungle_wall_sign;facing_direction=3 blockId=444 -runtimeId=5233 +runtimeId=4334 minecraft:jungle_wall_sign;facing_direction=4 blockId=444 -runtimeId=5234 +runtimeId=4335 minecraft:jungle_wall_sign;facing_direction=5 blockId=444 -runtimeId=5235 +runtimeId=4336 minecraft:kelp;kelp_age=0 blockId=393 -runtimeId=5236 +runtimeId=5376 minecraft:kelp;kelp_age=1 blockId=393 -runtimeId=5237 +runtimeId=5377 minecraft:kelp;kelp_age=2 blockId=393 -runtimeId=5238 +runtimeId=5378 minecraft:kelp;kelp_age=3 blockId=393 -runtimeId=5239 +runtimeId=5379 minecraft:kelp;kelp_age=4 blockId=393 -runtimeId=5240 +runtimeId=5380 minecraft:kelp;kelp_age=5 blockId=393 -runtimeId=5241 +runtimeId=5381 minecraft:kelp;kelp_age=6 blockId=393 -runtimeId=5242 +runtimeId=5382 minecraft:kelp;kelp_age=7 blockId=393 -runtimeId=5243 +runtimeId=5383 minecraft:kelp;kelp_age=8 blockId=393 -runtimeId=5244 +runtimeId=5384 minecraft:kelp;kelp_age=9 blockId=393 -runtimeId=5245 +runtimeId=5385 minecraft:kelp;kelp_age=10 blockId=393 -runtimeId=5246 +runtimeId=5386 minecraft:kelp;kelp_age=11 blockId=393 -runtimeId=5247 +runtimeId=5387 minecraft:kelp;kelp_age=12 blockId=393 -runtimeId=5248 +runtimeId=5388 minecraft:kelp;kelp_age=13 blockId=393 -runtimeId=5249 +runtimeId=5389 minecraft:kelp;kelp_age=14 blockId=393 -runtimeId=5250 +runtimeId=5390 minecraft:kelp;kelp_age=15 blockId=393 -runtimeId=5251 +runtimeId=5391 minecraft:kelp;kelp_age=16 blockId=393 -runtimeId=5252 +runtimeId=5392 minecraft:kelp;kelp_age=17 blockId=393 -runtimeId=5253 +runtimeId=5393 minecraft:kelp;kelp_age=18 blockId=393 -runtimeId=5254 +runtimeId=5394 minecraft:kelp;kelp_age=19 blockId=393 -runtimeId=5255 +runtimeId=5395 minecraft:kelp;kelp_age=20 blockId=393 -runtimeId=5256 +runtimeId=5396 minecraft:kelp;kelp_age=21 blockId=393 -runtimeId=5257 +runtimeId=5397 minecraft:kelp;kelp_age=22 blockId=393 -runtimeId=5258 +runtimeId=5398 minecraft:kelp;kelp_age=23 blockId=393 -runtimeId=5259 +runtimeId=5399 minecraft:kelp;kelp_age=24 blockId=393 -runtimeId=5260 +runtimeId=5400 minecraft:kelp;kelp_age=25 blockId=393 -runtimeId=5261 +runtimeId=5401 minecraft:ladder;facing_direction=0 blockId=65 -runtimeId=5262 +runtimeId=8204 minecraft:ladder;facing_direction=1 blockId=65 -runtimeId=5263 +runtimeId=8205 minecraft:ladder;facing_direction=2 blockId=65 -runtimeId=5264 +runtimeId=8206 minecraft:ladder;facing_direction=3 blockId=65 -runtimeId=5265 +runtimeId=8207 minecraft:ladder;facing_direction=4 blockId=65 -runtimeId=5266 +runtimeId=8208 minecraft:ladder;facing_direction=5 blockId=65 -runtimeId=5267 +runtimeId=8209 minecraft:lantern;hanging=0 blockId=463 -runtimeId=5268 +runtimeId=7016 minecraft:lantern;hanging=1 blockId=463 -runtimeId=5269 +runtimeId=7017 minecraft:lapis_block blockId=22 -runtimeId=5270 +runtimeId=4234 minecraft:lapis_ore blockId=21 -runtimeId=5271 +runtimeId=7641 minecraft:large_amethyst_bud;facing_direction=0 blockId=585 -runtimeId=5272 +runtimeId=4683 minecraft:large_amethyst_bud;facing_direction=1 blockId=585 -runtimeId=5273 +runtimeId=4684 minecraft:large_amethyst_bud;facing_direction=2 blockId=585 -runtimeId=5274 +runtimeId=4685 minecraft:large_amethyst_bud;facing_direction=3 blockId=585 -runtimeId=5275 +runtimeId=4686 minecraft:large_amethyst_bud;facing_direction=4 blockId=585 -runtimeId=5276 +runtimeId=4687 minecraft:large_amethyst_bud;facing_direction=5 blockId=585 -runtimeId=5277 +runtimeId=4688 minecraft:lava;liquid_depth=0 blockId=11 -runtimeId=5278 +runtimeId=3815 minecraft:lava;liquid_depth=1 blockId=11 -runtimeId=5279 +runtimeId=3816 minecraft:lava;liquid_depth=2 blockId=11 -runtimeId=5280 +runtimeId=3817 minecraft:lava;liquid_depth=3 blockId=11 -runtimeId=5281 +runtimeId=3818 minecraft:lava;liquid_depth=4 blockId=11 -runtimeId=5282 +runtimeId=3819 minecraft:lava;liquid_depth=5 blockId=11 -runtimeId=5283 +runtimeId=3820 minecraft:lava;liquid_depth=6 blockId=11 -runtimeId=5284 +runtimeId=3821 minecraft:lava;liquid_depth=7 blockId=11 -runtimeId=5285 +runtimeId=3822 minecraft:lava;liquid_depth=8 blockId=11 -runtimeId=5286 +runtimeId=3823 minecraft:lava;liquid_depth=9 blockId=11 -runtimeId=5287 +runtimeId=3824 minecraft:lava;liquid_depth=10 blockId=11 -runtimeId=5288 +runtimeId=3825 minecraft:lava;liquid_depth=11 blockId=11 -runtimeId=5289 +runtimeId=3826 minecraft:lava;liquid_depth=12 blockId=11 -runtimeId=5290 +runtimeId=3827 minecraft:lava;liquid_depth=13 blockId=11 -runtimeId=5291 +runtimeId=3828 minecraft:lava;liquid_depth=14 blockId=11 -runtimeId=5292 +runtimeId=3829 minecraft:lava;liquid_depth=15 blockId=11 -runtimeId=5293 +runtimeId=3830 minecraft:lava_cauldron;fill_level=0;cauldron_liquid=lava blockId=465 -runtimeId=5301 +runtimeId=623 minecraft:lava_cauldron;fill_level=0;cauldron_liquid=powder_snow blockId=465 -runtimeId=5308 +runtimeId=630 minecraft:lava_cauldron;fill_level=0;cauldron_liquid=water blockId=465 -runtimeId=5294 +runtimeId=616 minecraft:lava_cauldron;fill_level=1;cauldron_liquid=lava blockId=465 -runtimeId=5302 +runtimeId=624 minecraft:lava_cauldron;fill_level=1;cauldron_liquid=powder_snow blockId=465 -runtimeId=5309 +runtimeId=631 minecraft:lava_cauldron;fill_level=1;cauldron_liquid=water blockId=465 -runtimeId=5295 +runtimeId=617 minecraft:lava_cauldron;fill_level=2;cauldron_liquid=lava blockId=465 -runtimeId=5303 +runtimeId=625 minecraft:lava_cauldron;fill_level=2;cauldron_liquid=powder_snow blockId=465 -runtimeId=5310 +runtimeId=632 minecraft:lava_cauldron;fill_level=2;cauldron_liquid=water blockId=465 -runtimeId=5296 +runtimeId=618 minecraft:lava_cauldron;fill_level=3;cauldron_liquid=lava blockId=465 -runtimeId=5304 +runtimeId=626 minecraft:lava_cauldron;fill_level=3;cauldron_liquid=powder_snow blockId=465 -runtimeId=5311 +runtimeId=633 minecraft:lava_cauldron;fill_level=3;cauldron_liquid=water blockId=465 -runtimeId=5297 +runtimeId=619 minecraft:lava_cauldron;fill_level=4;cauldron_liquid=lava blockId=465 -runtimeId=5305 +runtimeId=627 minecraft:lava_cauldron;fill_level=4;cauldron_liquid=powder_snow blockId=465 -runtimeId=5312 +runtimeId=634 minecraft:lava_cauldron;fill_level=4;cauldron_liquid=water blockId=465 -runtimeId=5298 +runtimeId=620 minecraft:lava_cauldron;fill_level=5;cauldron_liquid=lava blockId=465 -runtimeId=5306 +runtimeId=628 minecraft:lava_cauldron;fill_level=5;cauldron_liquid=powder_snow blockId=465 -runtimeId=5313 +runtimeId=635 minecraft:lava_cauldron;fill_level=5;cauldron_liquid=water blockId=465 -runtimeId=5299 +runtimeId=621 minecraft:lava_cauldron;fill_level=6;cauldron_liquid=lava blockId=465 -runtimeId=5307 +runtimeId=629 minecraft:lava_cauldron;fill_level=6;cauldron_liquid=powder_snow blockId=465 -runtimeId=5314 +runtimeId=636 minecraft:lava_cauldron;fill_level=6;cauldron_liquid=water blockId=465 -runtimeId=5300 - -minecraft:leaves2;persistent_bit=0;update_bit=0;new_leaf_type=acacia -blockId=161 -runtimeId=5331 - -minecraft:leaves2;persistent_bit=0;update_bit=0;new_leaf_type=dark_oak -blockId=161 -runtimeId=5332 - -minecraft:leaves2;persistent_bit=0;update_bit=1;new_leaf_type=acacia -blockId=161 -runtimeId=5333 - -minecraft:leaves2;persistent_bit=0;update_bit=1;new_leaf_type=dark_oak -blockId=161 -runtimeId=5334 - -minecraft:leaves2;persistent_bit=1;update_bit=0;new_leaf_type=acacia -blockId=161 -runtimeId=5335 - -minecraft:leaves2;persistent_bit=1;update_bit=0;new_leaf_type=dark_oak -blockId=161 -runtimeId=5336 - -minecraft:leaves2;persistent_bit=1;update_bit=1;new_leaf_type=acacia -blockId=161 -runtimeId=5337 - -minecraft:leaves2;persistent_bit=1;update_bit=1;new_leaf_type=dark_oak -blockId=161 -runtimeId=5338 +runtimeId=622 minecraft:leaves;persistent_bit=0;update_bit=0;old_leaf_type=birch blockId=18 -runtimeId=5317 +runtimeId=6016 minecraft:leaves;persistent_bit=0;update_bit=0;old_leaf_type=jungle blockId=18 -runtimeId=5318 +runtimeId=6017 minecraft:leaves;persistent_bit=0;update_bit=0;old_leaf_type=oak blockId=18 -runtimeId=5315 +runtimeId=6014 minecraft:leaves;persistent_bit=0;update_bit=0;old_leaf_type=spruce blockId=18 -runtimeId=5316 +runtimeId=6015 minecraft:leaves;persistent_bit=0;update_bit=1;old_leaf_type=birch blockId=18 -runtimeId=5321 +runtimeId=6020 minecraft:leaves;persistent_bit=0;update_bit=1;old_leaf_type=jungle blockId=18 -runtimeId=5322 +runtimeId=6021 minecraft:leaves;persistent_bit=0;update_bit=1;old_leaf_type=oak blockId=18 -runtimeId=5319 +runtimeId=6018 minecraft:leaves;persistent_bit=0;update_bit=1;old_leaf_type=spruce blockId=18 -runtimeId=5320 +runtimeId=6019 minecraft:leaves;persistent_bit=1;update_bit=0;old_leaf_type=birch blockId=18 -runtimeId=5325 +runtimeId=6024 minecraft:leaves;persistent_bit=1;update_bit=0;old_leaf_type=jungle blockId=18 -runtimeId=5326 +runtimeId=6025 minecraft:leaves;persistent_bit=1;update_bit=0;old_leaf_type=oak blockId=18 -runtimeId=5323 +runtimeId=6022 minecraft:leaves;persistent_bit=1;update_bit=0;old_leaf_type=spruce blockId=18 -runtimeId=5324 +runtimeId=6023 minecraft:leaves;persistent_bit=1;update_bit=1;old_leaf_type=birch blockId=18 -runtimeId=5329 +runtimeId=6028 minecraft:leaves;persistent_bit=1;update_bit=1;old_leaf_type=jungle blockId=18 -runtimeId=5330 +runtimeId=6029 minecraft:leaves;persistent_bit=1;update_bit=1;old_leaf_type=oak blockId=18 -runtimeId=5327 +runtimeId=6026 minecraft:leaves;persistent_bit=1;update_bit=1;old_leaf_type=spruce blockId=18 -runtimeId=5328 +runtimeId=6027 -minecraft:lectern;powered_bit=0;direction=0 -blockId=449 -runtimeId=5339 +minecraft:leaves2;persistent_bit=0;update_bit=0;new_leaf_type=acacia +blockId=161 +runtimeId=4301 -minecraft:lectern;powered_bit=0;direction=1 -blockId=449 -runtimeId=5340 +minecraft:leaves2;persistent_bit=0;update_bit=0;new_leaf_type=dark_oak +blockId=161 +runtimeId=4302 -minecraft:lectern;powered_bit=0;direction=2 -blockId=449 -runtimeId=5341 +minecraft:leaves2;persistent_bit=0;update_bit=1;new_leaf_type=acacia +blockId=161 +runtimeId=4303 -minecraft:lectern;powered_bit=0;direction=3 -blockId=449 -runtimeId=5342 +minecraft:leaves2;persistent_bit=0;update_bit=1;new_leaf_type=dark_oak +blockId=161 +runtimeId=4304 + +minecraft:leaves2;persistent_bit=1;update_bit=0;new_leaf_type=acacia +blockId=161 +runtimeId=4305 + +minecraft:leaves2;persistent_bit=1;update_bit=0;new_leaf_type=dark_oak +blockId=161 +runtimeId=4306 + +minecraft:leaves2;persistent_bit=1;update_bit=1;new_leaf_type=acacia +blockId=161 +runtimeId=4307 + +minecraft:leaves2;persistent_bit=1;update_bit=1;new_leaf_type=dark_oak +blockId=161 +runtimeId=4308 + +minecraft:lectern;powered_bit=0;direction=0 +blockId=449 +runtimeId=6856 + +minecraft:lectern;powered_bit=0;direction=1 +blockId=449 +runtimeId=6857 + +minecraft:lectern;powered_bit=0;direction=2 +blockId=449 +runtimeId=6858 + +minecraft:lectern;powered_bit=0;direction=3 +blockId=449 +runtimeId=6859 minecraft:lectern;powered_bit=1;direction=0 blockId=449 -runtimeId=5343 +runtimeId=6860 minecraft:lectern;powered_bit=1;direction=1 blockId=449 -runtimeId=5344 +runtimeId=6861 minecraft:lectern;powered_bit=1;direction=2 blockId=449 -runtimeId=5345 +runtimeId=6862 minecraft:lectern;powered_bit=1;direction=3 blockId=449 -runtimeId=5346 +runtimeId=6863 minecraft:lever;open_bit=0;lever_direction=down_east_west blockId=69 -runtimeId=5347 +runtimeId=6405 minecraft:lever;open_bit=0;lever_direction=down_north_south blockId=69 -runtimeId=5354 +runtimeId=6412 minecraft:lever;open_bit=0;lever_direction=east blockId=69 -runtimeId=5348 +runtimeId=6406 minecraft:lever;open_bit=0;lever_direction=north blockId=69 -runtimeId=5351 +runtimeId=6409 minecraft:lever;open_bit=0;lever_direction=south blockId=69 -runtimeId=5350 +runtimeId=6408 minecraft:lever;open_bit=0;lever_direction=up_east_west blockId=69 -runtimeId=5353 +runtimeId=6411 minecraft:lever;open_bit=0;lever_direction=up_north_south blockId=69 -runtimeId=5352 +runtimeId=6410 minecraft:lever;open_bit=0;lever_direction=west blockId=69 -runtimeId=5349 +runtimeId=6407 minecraft:lever;open_bit=1;lever_direction=down_east_west blockId=69 -runtimeId=5355 +runtimeId=6413 minecraft:lever;open_bit=1;lever_direction=down_north_south blockId=69 -runtimeId=5362 +runtimeId=6420 minecraft:lever;open_bit=1;lever_direction=east blockId=69 -runtimeId=5356 +runtimeId=6414 minecraft:lever;open_bit=1;lever_direction=north blockId=69 -runtimeId=5359 +runtimeId=6417 minecraft:lever;open_bit=1;lever_direction=south blockId=69 -runtimeId=5358 +runtimeId=6416 minecraft:lever;open_bit=1;lever_direction=up_east_west blockId=69 -runtimeId=5361 +runtimeId=6419 minecraft:lever;open_bit=1;lever_direction=up_north_south blockId=69 -runtimeId=5360 +runtimeId=6418 minecraft:lever;open_bit=1;lever_direction=west blockId=69 -runtimeId=5357 +runtimeId=6415 minecraft:light_block;block_light_level=0 blockId=470 -runtimeId=5363 +runtimeId=7922 minecraft:light_block;block_light_level=1 blockId=470 -runtimeId=5364 +runtimeId=7923 minecraft:light_block;block_light_level=2 blockId=470 -runtimeId=5365 +runtimeId=7924 minecraft:light_block;block_light_level=3 blockId=470 -runtimeId=5366 +runtimeId=7925 minecraft:light_block;block_light_level=4 blockId=470 -runtimeId=5367 +runtimeId=7926 minecraft:light_block;block_light_level=5 blockId=470 -runtimeId=5368 +runtimeId=7927 minecraft:light_block;block_light_level=6 blockId=470 -runtimeId=5369 +runtimeId=7928 minecraft:light_block;block_light_level=7 blockId=470 -runtimeId=5370 +runtimeId=7929 minecraft:light_block;block_light_level=8 blockId=470 -runtimeId=5371 +runtimeId=7930 minecraft:light_block;block_light_level=9 blockId=470 -runtimeId=5372 +runtimeId=7931 minecraft:light_block;block_light_level=10 blockId=470 -runtimeId=5373 +runtimeId=7932 minecraft:light_block;block_light_level=11 blockId=470 -runtimeId=5374 +runtimeId=7933 minecraft:light_block;block_light_level=12 blockId=470 -runtimeId=5375 +runtimeId=7934 minecraft:light_block;block_light_level=13 blockId=470 -runtimeId=5376 +runtimeId=7935 minecraft:light_block;block_light_level=14 blockId=470 -runtimeId=5377 +runtimeId=7936 minecraft:light_block;block_light_level=15 blockId=470 -runtimeId=5378 +runtimeId=7937 + +minecraft:light_blue_candle;lit=0;candles=0 +blockId=671 +runtimeId=4501 + +minecraft:light_blue_candle;lit=0;candles=1 +blockId=671 +runtimeId=4502 + +minecraft:light_blue_candle;lit=0;candles=2 +blockId=671 +runtimeId=4503 + +minecraft:light_blue_candle;lit=0;candles=3 +blockId=671 +runtimeId=4504 + +minecraft:light_blue_candle;lit=1;candles=0 +blockId=671 +runtimeId=4505 + +minecraft:light_blue_candle;lit=1;candles=1 +blockId=671 +runtimeId=4506 + +minecraft:light_blue_candle;lit=1;candles=2 +blockId=671 +runtimeId=4507 + +minecraft:light_blue_candle;lit=1;candles=3 +blockId=671 +runtimeId=4508 + +minecraft:light_blue_candle_cake;lit=0 +blockId=688 +runtimeId=298 + +minecraft:light_blue_candle_cake;lit=1 +blockId=688 +runtimeId=299 minecraft:light_blue_glazed_terracotta;facing_direction=0 blockId=223 -runtimeId=5379 +runtimeId=5421 minecraft:light_blue_glazed_terracotta;facing_direction=1 blockId=223 -runtimeId=5380 +runtimeId=5422 minecraft:light_blue_glazed_terracotta;facing_direction=2 blockId=223 -runtimeId=5381 +runtimeId=5423 minecraft:light_blue_glazed_terracotta;facing_direction=3 blockId=223 -runtimeId=5382 +runtimeId=5424 minecraft:light_blue_glazed_terracotta;facing_direction=4 blockId=223 -runtimeId=5383 +runtimeId=5425 minecraft:light_blue_glazed_terracotta;facing_direction=5 blockId=223 -runtimeId=5384 +runtimeId=5426 + +minecraft:light_gray_candle;lit=0;candles=0 +blockId=676 +runtimeId=6147 + +minecraft:light_gray_candle;lit=0;candles=1 +blockId=676 +runtimeId=6148 + +minecraft:light_gray_candle;lit=0;candles=2 +blockId=676 +runtimeId=6149 + +minecraft:light_gray_candle;lit=0;candles=3 +blockId=676 +runtimeId=6150 + +minecraft:light_gray_candle;lit=1;candles=0 +blockId=676 +runtimeId=6151 + +minecraft:light_gray_candle;lit=1;candles=1 +blockId=676 +runtimeId=6152 + +minecraft:light_gray_candle;lit=1;candles=2 +blockId=676 +runtimeId=6153 + +minecraft:light_gray_candle;lit=1;candles=3 +blockId=676 +runtimeId=6154 + +minecraft:light_gray_candle_cake;lit=0 +blockId=693 +runtimeId=5248 + +minecraft:light_gray_candle_cake;lit=1 +blockId=693 +runtimeId=5249 minecraft:light_weighted_pressure_plate;redstone_signal=0 blockId=147 -runtimeId=5385 +runtimeId=3670 minecraft:light_weighted_pressure_plate;redstone_signal=1 blockId=147 -runtimeId=5386 +runtimeId=3671 minecraft:light_weighted_pressure_plate;redstone_signal=2 blockId=147 -runtimeId=5387 +runtimeId=3672 minecraft:light_weighted_pressure_plate;redstone_signal=3 blockId=147 -runtimeId=5388 +runtimeId=3673 minecraft:light_weighted_pressure_plate;redstone_signal=4 blockId=147 -runtimeId=5389 +runtimeId=3674 minecraft:light_weighted_pressure_plate;redstone_signal=5 blockId=147 -runtimeId=5390 +runtimeId=3675 minecraft:light_weighted_pressure_plate;redstone_signal=6 blockId=147 -runtimeId=5391 +runtimeId=3676 minecraft:light_weighted_pressure_plate;redstone_signal=7 blockId=147 -runtimeId=5392 +runtimeId=3677 minecraft:light_weighted_pressure_plate;redstone_signal=8 blockId=147 -runtimeId=5393 +runtimeId=3678 minecraft:light_weighted_pressure_plate;redstone_signal=9 blockId=147 -runtimeId=5394 +runtimeId=3679 minecraft:light_weighted_pressure_plate;redstone_signal=10 blockId=147 -runtimeId=5395 +runtimeId=3680 minecraft:light_weighted_pressure_plate;redstone_signal=11 blockId=147 -runtimeId=5396 +runtimeId=3681 minecraft:light_weighted_pressure_plate;redstone_signal=12 blockId=147 -runtimeId=5397 +runtimeId=3682 minecraft:light_weighted_pressure_plate;redstone_signal=13 blockId=147 -runtimeId=5398 +runtimeId=3683 minecraft:light_weighted_pressure_plate;redstone_signal=14 blockId=147 -runtimeId=5399 +runtimeId=3684 minecraft:light_weighted_pressure_plate;redstone_signal=15 blockId=147 -runtimeId=5400 +runtimeId=3685 minecraft:lightning_rod;facing_direction=0 blockId=567 -runtimeId=5401 +runtimeId=1181 minecraft:lightning_rod;facing_direction=1 blockId=567 -runtimeId=5402 +runtimeId=1182 minecraft:lightning_rod;facing_direction=2 blockId=567 -runtimeId=5403 +runtimeId=1183 minecraft:lightning_rod;facing_direction=3 blockId=567 -runtimeId=5404 +runtimeId=1184 minecraft:lightning_rod;facing_direction=4 blockId=567 -runtimeId=5405 +runtimeId=1185 minecraft:lightning_rod;facing_direction=5 blockId=567 -runtimeId=5406 +runtimeId=1186 + +minecraft:lime_candle;lit=0;candles=0 +blockId=673 +runtimeId=6333 + +minecraft:lime_candle;lit=0;candles=1 +blockId=673 +runtimeId=6334 + +minecraft:lime_candle;lit=0;candles=2 +blockId=673 +runtimeId=6335 + +minecraft:lime_candle;lit=0;candles=3 +blockId=673 +runtimeId=6336 + +minecraft:lime_candle;lit=1;candles=0 +blockId=673 +runtimeId=6337 + +minecraft:lime_candle;lit=1;candles=1 +blockId=673 +runtimeId=6338 + +minecraft:lime_candle;lit=1;candles=2 +blockId=673 +runtimeId=6339 + +minecraft:lime_candle;lit=1;candles=3 +blockId=673 +runtimeId=6340 + +minecraft:lime_candle_cake;lit=0 +blockId=690 +runtimeId=8021 + +minecraft:lime_candle_cake;lit=1 +blockId=690 +runtimeId=8022 minecraft:lime_glazed_terracotta;facing_direction=0 blockId=225 -runtimeId=5407 +runtimeId=221 minecraft:lime_glazed_terracotta;facing_direction=1 blockId=225 -runtimeId=5408 +runtimeId=222 minecraft:lime_glazed_terracotta;facing_direction=2 blockId=225 -runtimeId=5409 +runtimeId=223 minecraft:lime_glazed_terracotta;facing_direction=3 blockId=225 -runtimeId=5410 +runtimeId=224 minecraft:lime_glazed_terracotta;facing_direction=4 blockId=225 -runtimeId=5411 +runtimeId=225 minecraft:lime_glazed_terracotta;facing_direction=5 blockId=225 -runtimeId=5412 +runtimeId=226 minecraft:lit_blast_furnace;facing_direction=0 blockId=469 -runtimeId=5413 +runtimeId=7018 minecraft:lit_blast_furnace;facing_direction=1 blockId=469 -runtimeId=5414 +runtimeId=7019 minecraft:lit_blast_furnace;facing_direction=2 blockId=469 -runtimeId=5415 +runtimeId=7020 minecraft:lit_blast_furnace;facing_direction=3 blockId=469 -runtimeId=5416 +runtimeId=7021 minecraft:lit_blast_furnace;facing_direction=4 blockId=469 -runtimeId=5417 +runtimeId=7022 minecraft:lit_blast_furnace;facing_direction=5 blockId=469 -runtimeId=5418 +runtimeId=7023 minecraft:lit_deepslate_redstone_ore blockId=659 -runtimeId=5419 +runtimeId=7544 minecraft:lit_furnace;facing_direction=0 blockId=62 -runtimeId=5420 +runtimeId=7185 minecraft:lit_furnace;facing_direction=1 blockId=62 -runtimeId=5421 +runtimeId=7186 minecraft:lit_furnace;facing_direction=2 blockId=62 -runtimeId=5422 +runtimeId=7187 minecraft:lit_furnace;facing_direction=3 blockId=62 -runtimeId=5423 +runtimeId=7188 minecraft:lit_furnace;facing_direction=4 blockId=62 -runtimeId=5424 +runtimeId=7189 minecraft:lit_furnace;facing_direction=5 blockId=62 -runtimeId=5425 +runtimeId=7190 minecraft:lit_pumpkin;direction=0 blockId=91 -runtimeId=5426 +runtimeId=6559 minecraft:lit_pumpkin;direction=1 blockId=91 -runtimeId=5427 +runtimeId=6560 minecraft:lit_pumpkin;direction=2 blockId=91 -runtimeId=5428 +runtimeId=6561 minecraft:lit_pumpkin;direction=3 blockId=91 -runtimeId=5429 +runtimeId=6562 minecraft:lit_redstone_lamp blockId=124 -runtimeId=5430 +runtimeId=4300 minecraft:lit_redstone_ore blockId=74 -runtimeId=5431 +runtimeId=4608 minecraft:lit_smoker;facing_direction=0 blockId=454 -runtimeId=5432 +runtimeId=7635 minecraft:lit_smoker;facing_direction=1 blockId=454 -runtimeId=5433 +runtimeId=7636 minecraft:lit_smoker;facing_direction=2 blockId=454 -runtimeId=5434 +runtimeId=7637 minecraft:lit_smoker;facing_direction=3 blockId=454 -runtimeId=5435 +runtimeId=7638 minecraft:lit_smoker;facing_direction=4 blockId=454 -runtimeId=5436 +runtimeId=7639 minecraft:lit_smoker;facing_direction=5 blockId=454 -runtimeId=5437 +runtimeId=7640 minecraft:lodestone blockId=477 -runtimeId=5438 - -minecraft:log2;new_log_type=acacia;pillar_axis=x -blockId=162 -runtimeId=5453 - -minecraft:log2;new_log_type=acacia;pillar_axis=y -blockId=162 -runtimeId=5451 - -minecraft:log2;new_log_type=acacia;pillar_axis=z -blockId=162 -runtimeId=5455 - -minecraft:log2;new_log_type=dark_oak;pillar_axis=x -blockId=162 -runtimeId=5454 - -minecraft:log2;new_log_type=dark_oak;pillar_axis=y -blockId=162 -runtimeId=5452 - -minecraft:log2;new_log_type=dark_oak;pillar_axis=z -blockId=162 -runtimeId=5456 +runtimeId=8201 minecraft:log;old_log_type=birch;pillar_axis=x blockId=17 -runtimeId=5445 +runtimeId=6552 minecraft:log;old_log_type=birch;pillar_axis=y blockId=17 -runtimeId=5441 +runtimeId=6548 minecraft:log;old_log_type=birch;pillar_axis=z blockId=17 -runtimeId=5449 +runtimeId=6556 minecraft:log;old_log_type=jungle;pillar_axis=x blockId=17 -runtimeId=5446 +runtimeId=6553 minecraft:log;old_log_type=jungle;pillar_axis=y blockId=17 -runtimeId=5442 +runtimeId=6549 minecraft:log;old_log_type=jungle;pillar_axis=z blockId=17 -runtimeId=5450 +runtimeId=6557 minecraft:log;old_log_type=oak;pillar_axis=x blockId=17 -runtimeId=5443 +runtimeId=6550 minecraft:log;old_log_type=oak;pillar_axis=y blockId=17 -runtimeId=5439 +runtimeId=6546 minecraft:log;old_log_type=oak;pillar_axis=z blockId=17 -runtimeId=5447 +runtimeId=6554 minecraft:log;old_log_type=spruce;pillar_axis=x blockId=17 -runtimeId=5444 +runtimeId=6551 minecraft:log;old_log_type=spruce;pillar_axis=y blockId=17 -runtimeId=5440 +runtimeId=6547 minecraft:log;old_log_type=spruce;pillar_axis=z blockId=17 -runtimeId=5448 +runtimeId=6555 + +minecraft:log2;new_log_type=acacia;pillar_axis=x +blockId=162 +runtimeId=3837 + +minecraft:log2;new_log_type=acacia;pillar_axis=y +blockId=162 +runtimeId=3835 + +minecraft:log2;new_log_type=acacia;pillar_axis=z +blockId=162 +runtimeId=3839 + +minecraft:log2;new_log_type=dark_oak;pillar_axis=x +blockId=162 +runtimeId=3838 + +minecraft:log2;new_log_type=dark_oak;pillar_axis=y +blockId=162 +runtimeId=3836 + +minecraft:log2;new_log_type=dark_oak;pillar_axis=z +blockId=162 +runtimeId=3840 minecraft:loom;direction=0 blockId=459 -runtimeId=5457 +runtimeId=3831 minecraft:loom;direction=1 blockId=459 -runtimeId=5458 +runtimeId=3832 minecraft:loom;direction=2 blockId=459 -runtimeId=5459 +runtimeId=3833 minecraft:loom;direction=3 blockId=459 -runtimeId=5460 +runtimeId=3834 + +minecraft:magenta_candle;lit=0;candles=0 +blockId=670 +runtimeId=428 + +minecraft:magenta_candle;lit=0;candles=1 +blockId=670 +runtimeId=429 + +minecraft:magenta_candle;lit=0;candles=2 +blockId=670 +runtimeId=430 + +minecraft:magenta_candle;lit=0;candles=3 +blockId=670 +runtimeId=431 + +minecraft:magenta_candle;lit=1;candles=0 +blockId=670 +runtimeId=432 + +minecraft:magenta_candle;lit=1;candles=1 +blockId=670 +runtimeId=433 + +minecraft:magenta_candle;lit=1;candles=2 +blockId=670 +runtimeId=434 + +minecraft:magenta_candle;lit=1;candles=3 +blockId=670 +runtimeId=435 + +minecraft:magenta_candle_cake;lit=0 +blockId=687 +runtimeId=6012 + +minecraft:magenta_candle_cake;lit=1 +blockId=687 +runtimeId=6013 minecraft:magenta_glazed_terracotta;facing_direction=0 blockId=222 -runtimeId=5461 +runtimeId=972 minecraft:magenta_glazed_terracotta;facing_direction=1 blockId=222 -runtimeId=5462 +runtimeId=973 minecraft:magenta_glazed_terracotta;facing_direction=2 blockId=222 -runtimeId=5463 +runtimeId=974 minecraft:magenta_glazed_terracotta;facing_direction=3 blockId=222 -runtimeId=5464 +runtimeId=975 minecraft:magenta_glazed_terracotta;facing_direction=4 blockId=222 -runtimeId=5465 +runtimeId=976 minecraft:magenta_glazed_terracotta;facing_direction=5 blockId=222 -runtimeId=5466 +runtimeId=977 minecraft:magma blockId=213 -runtimeId=5467 +runtimeId=7951 -minecraft:medium_amethyst_bud;facing_direction=0 -blockId=586 -runtimeId=5468 +minecraft:mangrove_leaves;persistent_bit=0;update_bit=0 +blockId=727 +runtimeId=6540 -minecraft:medium_amethyst_bud;facing_direction=1 -blockId=586 -runtimeId=5469 +minecraft:mangrove_leaves;persistent_bit=0;update_bit=1 +blockId=727 +runtimeId=6541 -minecraft:medium_amethyst_bud;facing_direction=2 -blockId=586 -runtimeId=5470 +minecraft:mangrove_leaves;persistent_bit=1;update_bit=0 +blockId=727 +runtimeId=6542 -minecraft:medium_amethyst_bud;facing_direction=3 -blockId=586 -runtimeId=5471 +minecraft:mangrove_leaves;persistent_bit=1;update_bit=1 +blockId=727 +runtimeId=6543 -minecraft:medium_amethyst_bud;facing_direction=4 -blockId=586 -runtimeId=5472 +minecraft:mangrove_propagule;facing_direction=0;growth=0 +blockId=729 +runtimeId=6892 -minecraft:medium_amethyst_bud;facing_direction=5 -blockId=586 -runtimeId=5473 +minecraft:mangrove_propagule;facing_direction=0;growth=1 +blockId=729 +runtimeId=6893 -minecraft:melon_block -blockId=103 -runtimeId=5474 +minecraft:mangrove_propagule;facing_direction=0;growth=2 +blockId=729 +runtimeId=6894 -minecraft:melon_stem;facing_direction=0;growth=0 -blockId=105 -runtimeId=5475 +minecraft:mangrove_propagule;facing_direction=0;growth=3 +blockId=729 +runtimeId=6895 -minecraft:melon_stem;facing_direction=0;growth=1 -blockId=105 -runtimeId=5476 +minecraft:mangrove_propagule;facing_direction=0;growth=4 +blockId=729 +runtimeId=6896 -minecraft:melon_stem;facing_direction=0;growth=2 -blockId=105 -runtimeId=5477 +minecraft:mangrove_propagule;facing_direction=0;growth=5 +blockId=729 +runtimeId=6897 -minecraft:melon_stem;facing_direction=0;growth=3 -blockId=105 -runtimeId=5478 +minecraft:mangrove_propagule;facing_direction=0;growth=6 +blockId=729 +runtimeId=6898 -minecraft:melon_stem;facing_direction=0;growth=4 -blockId=105 -runtimeId=5479 +minecraft:mangrove_propagule;facing_direction=0;growth=7 +blockId=729 +runtimeId=6899 -minecraft:melon_stem;facing_direction=0;growth=5 -blockId=105 -runtimeId=5480 +minecraft:mangrove_propagule;facing_direction=1;growth=0 +blockId=729 +runtimeId=6900 -minecraft:melon_stem;facing_direction=0;growth=6 -blockId=105 -runtimeId=5481 +minecraft:mangrove_propagule;facing_direction=1;growth=1 +blockId=729 +runtimeId=6901 -minecraft:melon_stem;facing_direction=0;growth=7 -blockId=105 -runtimeId=5482 +minecraft:mangrove_propagule;facing_direction=1;growth=2 +blockId=729 +runtimeId=6902 -minecraft:melon_stem;facing_direction=1;growth=0 -blockId=105 -runtimeId=5483 +minecraft:mangrove_propagule;facing_direction=1;growth=3 +blockId=729 +runtimeId=6903 -minecraft:melon_stem;facing_direction=1;growth=1 -blockId=105 -runtimeId=5484 +minecraft:mangrove_propagule;facing_direction=1;growth=4 +blockId=729 +runtimeId=6904 -minecraft:melon_stem;facing_direction=1;growth=2 -blockId=105 -runtimeId=5485 +minecraft:mangrove_propagule;facing_direction=1;growth=5 +blockId=729 +runtimeId=6905 -minecraft:melon_stem;facing_direction=1;growth=3 -blockId=105 -runtimeId=5486 +minecraft:mangrove_propagule;facing_direction=1;growth=6 +blockId=729 +runtimeId=6906 -minecraft:melon_stem;facing_direction=1;growth=4 -blockId=105 -runtimeId=5487 +minecraft:mangrove_propagule;facing_direction=1;growth=7 +blockId=729 +runtimeId=6907 -minecraft:melon_stem;facing_direction=1;growth=5 -blockId=105 -runtimeId=5488 +minecraft:mangrove_propagule;facing_direction=2;growth=0 +blockId=729 +runtimeId=6908 -minecraft:melon_stem;facing_direction=1;growth=6 -blockId=105 -runtimeId=5489 +minecraft:mangrove_propagule;facing_direction=2;growth=1 +blockId=729 +runtimeId=6909 -minecraft:melon_stem;facing_direction=1;growth=7 -blockId=105 -runtimeId=5490 +minecraft:mangrove_propagule;facing_direction=2;growth=2 +blockId=729 +runtimeId=6910 -minecraft:melon_stem;facing_direction=2;growth=0 -blockId=105 -runtimeId=5491 +minecraft:mangrove_propagule;facing_direction=2;growth=3 +blockId=729 +runtimeId=6911 -minecraft:melon_stem;facing_direction=2;growth=1 -blockId=105 -runtimeId=5492 +minecraft:mangrove_propagule;facing_direction=2;growth=4 +blockId=729 +runtimeId=6912 -minecraft:melon_stem;facing_direction=2;growth=2 -blockId=105 -runtimeId=5493 +minecraft:mangrove_propagule;facing_direction=2;growth=5 +blockId=729 +runtimeId=6913 -minecraft:melon_stem;facing_direction=2;growth=3 -blockId=105 -runtimeId=5494 +minecraft:mangrove_propagule;facing_direction=2;growth=6 +blockId=729 +runtimeId=6914 -minecraft:melon_stem;facing_direction=2;growth=4 -blockId=105 -runtimeId=5495 +minecraft:mangrove_propagule;facing_direction=2;growth=7 +blockId=729 +runtimeId=6915 -minecraft:melon_stem;facing_direction=2;growth=5 -blockId=105 -runtimeId=5496 +minecraft:mangrove_propagule;facing_direction=3;growth=0 +blockId=729 +runtimeId=6916 -minecraft:melon_stem;facing_direction=2;growth=6 -blockId=105 -runtimeId=5497 +minecraft:mangrove_propagule;facing_direction=3;growth=1 +blockId=729 +runtimeId=6917 -minecraft:melon_stem;facing_direction=2;growth=7 -blockId=105 -runtimeId=5498 +minecraft:mangrove_propagule;facing_direction=3;growth=2 +blockId=729 +runtimeId=6918 -minecraft:melon_stem;facing_direction=3;growth=0 -blockId=105 -runtimeId=5499 +minecraft:mangrove_propagule;facing_direction=3;growth=3 +blockId=729 +runtimeId=6919 -minecraft:melon_stem;facing_direction=3;growth=1 -blockId=105 -runtimeId=5500 +minecraft:mangrove_propagule;facing_direction=3;growth=4 +blockId=729 +runtimeId=6920 -minecraft:melon_stem;facing_direction=3;growth=2 +minecraft:mangrove_propagule;facing_direction=3;growth=5 +blockId=729 +runtimeId=6921 + +minecraft:mangrove_propagule;facing_direction=3;growth=6 +blockId=729 +runtimeId=6922 + +minecraft:mangrove_propagule;facing_direction=3;growth=7 +blockId=729 +runtimeId=6923 + +minecraft:mangrove_propagule;facing_direction=4;growth=0 +blockId=729 +runtimeId=6924 + +minecraft:mangrove_propagule;facing_direction=4;growth=1 +blockId=729 +runtimeId=6925 + +minecraft:mangrove_propagule;facing_direction=4;growth=2 +blockId=729 +runtimeId=6926 + +minecraft:mangrove_propagule;facing_direction=4;growth=3 +blockId=729 +runtimeId=6927 + +minecraft:mangrove_propagule;facing_direction=4;growth=4 +blockId=729 +runtimeId=6928 + +minecraft:mangrove_propagule;facing_direction=4;growth=5 +blockId=729 +runtimeId=6929 + +minecraft:mangrove_propagule;facing_direction=4;growth=6 +blockId=729 +runtimeId=6930 + +minecraft:mangrove_propagule;facing_direction=4;growth=7 +blockId=729 +runtimeId=6931 + +minecraft:mangrove_propagule;facing_direction=5;growth=0 +blockId=729 +runtimeId=6932 + +minecraft:mangrove_propagule;facing_direction=5;growth=1 +blockId=729 +runtimeId=6933 + +minecraft:mangrove_propagule;facing_direction=5;growth=2 +blockId=729 +runtimeId=6934 + +minecraft:mangrove_propagule;facing_direction=5;growth=3 +blockId=729 +runtimeId=6935 + +minecraft:mangrove_propagule;facing_direction=5;growth=4 +blockId=729 +runtimeId=6936 + +minecraft:mangrove_propagule;facing_direction=5;growth=5 +blockId=729 +runtimeId=6937 + +minecraft:mangrove_propagule;facing_direction=5;growth=6 +blockId=729 +runtimeId=6938 + +minecraft:mangrove_propagule;facing_direction=5;growth=7 +blockId=729 +runtimeId=6939 + +minecraft:mangrove_propagule_hanging;facing_direction=0;growth=0 +blockId=731 +runtimeId=4547 + +minecraft:mangrove_propagule_hanging;facing_direction=0;growth=1 +blockId=731 +runtimeId=4548 + +minecraft:mangrove_propagule_hanging;facing_direction=0;growth=2 +blockId=731 +runtimeId=4549 + +minecraft:mangrove_propagule_hanging;facing_direction=0;growth=3 +blockId=731 +runtimeId=4550 + +minecraft:mangrove_propagule_hanging;facing_direction=0;growth=4 +blockId=731 +runtimeId=4551 + +minecraft:mangrove_propagule_hanging;facing_direction=0;growth=5 +blockId=731 +runtimeId=4552 + +minecraft:mangrove_propagule_hanging;facing_direction=0;growth=6 +blockId=731 +runtimeId=4553 + +minecraft:mangrove_propagule_hanging;facing_direction=0;growth=7 +blockId=731 +runtimeId=4554 + +minecraft:mangrove_propagule_hanging;facing_direction=1;growth=0 +blockId=731 +runtimeId=4555 + +minecraft:mangrove_propagule_hanging;facing_direction=1;growth=1 +blockId=731 +runtimeId=4556 + +minecraft:mangrove_propagule_hanging;facing_direction=1;growth=2 +blockId=731 +runtimeId=4557 + +minecraft:mangrove_propagule_hanging;facing_direction=1;growth=3 +blockId=731 +runtimeId=4558 + +minecraft:mangrove_propagule_hanging;facing_direction=1;growth=4 +blockId=731 +runtimeId=4559 + +minecraft:mangrove_propagule_hanging;facing_direction=1;growth=5 +blockId=731 +runtimeId=4560 + +minecraft:mangrove_propagule_hanging;facing_direction=1;growth=6 +blockId=731 +runtimeId=4561 + +minecraft:mangrove_propagule_hanging;facing_direction=1;growth=7 +blockId=731 +runtimeId=4562 + +minecraft:mangrove_propagule_hanging;facing_direction=2;growth=0 +blockId=731 +runtimeId=4563 + +minecraft:mangrove_propagule_hanging;facing_direction=2;growth=1 +blockId=731 +runtimeId=4564 + +minecraft:mangrove_propagule_hanging;facing_direction=2;growth=2 +blockId=731 +runtimeId=4565 + +minecraft:mangrove_propagule_hanging;facing_direction=2;growth=3 +blockId=731 +runtimeId=4566 + +minecraft:mangrove_propagule_hanging;facing_direction=2;growth=4 +blockId=731 +runtimeId=4567 + +minecraft:mangrove_propagule_hanging;facing_direction=2;growth=5 +blockId=731 +runtimeId=4568 + +minecraft:mangrove_propagule_hanging;facing_direction=2;growth=6 +blockId=731 +runtimeId=4569 + +minecraft:mangrove_propagule_hanging;facing_direction=2;growth=7 +blockId=731 +runtimeId=4570 + +minecraft:mangrove_propagule_hanging;facing_direction=3;growth=0 +blockId=731 +runtimeId=4571 + +minecraft:mangrove_propagule_hanging;facing_direction=3;growth=1 +blockId=731 +runtimeId=4572 + +minecraft:mangrove_propagule_hanging;facing_direction=3;growth=2 +blockId=731 +runtimeId=4573 + +minecraft:mangrove_propagule_hanging;facing_direction=3;growth=3 +blockId=731 +runtimeId=4574 + +minecraft:mangrove_propagule_hanging;facing_direction=3;growth=4 +blockId=731 +runtimeId=4575 + +minecraft:mangrove_propagule_hanging;facing_direction=3;growth=5 +blockId=731 +runtimeId=4576 + +minecraft:mangrove_propagule_hanging;facing_direction=3;growth=6 +blockId=731 +runtimeId=4577 + +minecraft:mangrove_propagule_hanging;facing_direction=3;growth=7 +blockId=731 +runtimeId=4578 + +minecraft:mangrove_propagule_hanging;facing_direction=4;growth=0 +blockId=731 +runtimeId=4579 + +minecraft:mangrove_propagule_hanging;facing_direction=4;growth=1 +blockId=731 +runtimeId=4580 + +minecraft:mangrove_propagule_hanging;facing_direction=4;growth=2 +blockId=731 +runtimeId=4581 + +minecraft:mangrove_propagule_hanging;facing_direction=4;growth=3 +blockId=731 +runtimeId=4582 + +minecraft:mangrove_propagule_hanging;facing_direction=4;growth=4 +blockId=731 +runtimeId=4583 + +minecraft:mangrove_propagule_hanging;facing_direction=4;growth=5 +blockId=731 +runtimeId=4584 + +minecraft:mangrove_propagule_hanging;facing_direction=4;growth=6 +blockId=731 +runtimeId=4585 + +minecraft:mangrove_propagule_hanging;facing_direction=4;growth=7 +blockId=731 +runtimeId=4586 + +minecraft:mangrove_propagule_hanging;facing_direction=5;growth=0 +blockId=731 +runtimeId=4587 + +minecraft:mangrove_propagule_hanging;facing_direction=5;growth=1 +blockId=731 +runtimeId=4588 + +minecraft:mangrove_propagule_hanging;facing_direction=5;growth=2 +blockId=731 +runtimeId=4589 + +minecraft:mangrove_propagule_hanging;facing_direction=5;growth=3 +blockId=731 +runtimeId=4590 + +minecraft:mangrove_propagule_hanging;facing_direction=5;growth=4 +blockId=731 +runtimeId=4591 + +minecraft:mangrove_propagule_hanging;facing_direction=5;growth=5 +blockId=731 +runtimeId=4592 + +minecraft:mangrove_propagule_hanging;facing_direction=5;growth=6 +blockId=731 +runtimeId=4593 + +minecraft:mangrove_propagule_hanging;facing_direction=5;growth=7 +blockId=731 +runtimeId=4594 + +minecraft:medium_amethyst_bud;facing_direction=0 +blockId=586 +runtimeId=4323 + +minecraft:medium_amethyst_bud;facing_direction=1 +blockId=586 +runtimeId=4324 + +minecraft:medium_amethyst_bud;facing_direction=2 +blockId=586 +runtimeId=4325 + +minecraft:medium_amethyst_bud;facing_direction=3 +blockId=586 +runtimeId=4326 + +minecraft:medium_amethyst_bud;facing_direction=4 +blockId=586 +runtimeId=4327 + +minecraft:medium_amethyst_bud;facing_direction=5 +blockId=586 +runtimeId=4328 + +minecraft:melon_block +blockId=103 +runtimeId=402 + +minecraft:melon_stem;facing_direction=0;growth=0 blockId=105 -runtimeId=5501 +runtimeId=4758 -minecraft:melon_stem;facing_direction=3;growth=3 +minecraft:melon_stem;facing_direction=0;growth=1 blockId=105 -runtimeId=5502 +runtimeId=4759 -minecraft:melon_stem;facing_direction=3;growth=4 +minecraft:melon_stem;facing_direction=0;growth=2 blockId=105 -runtimeId=5503 +runtimeId=4760 -minecraft:melon_stem;facing_direction=3;growth=5 +minecraft:melon_stem;facing_direction=0;growth=3 blockId=105 -runtimeId=5504 +runtimeId=4761 -minecraft:melon_stem;facing_direction=3;growth=6 +minecraft:melon_stem;facing_direction=0;growth=4 blockId=105 -runtimeId=5505 +runtimeId=4762 -minecraft:melon_stem;facing_direction=3;growth=7 +minecraft:melon_stem;facing_direction=0;growth=5 blockId=105 -runtimeId=5506 +runtimeId=4763 -minecraft:melon_stem;facing_direction=4;growth=0 +minecraft:melon_stem;facing_direction=0;growth=6 blockId=105 -runtimeId=5507 +runtimeId=4764 -minecraft:melon_stem;facing_direction=4;growth=1 +minecraft:melon_stem;facing_direction=0;growth=7 blockId=105 -runtimeId=5508 +runtimeId=4765 + +minecraft:melon_stem;facing_direction=1;growth=0 +blockId=105 +runtimeId=4766 + +minecraft:melon_stem;facing_direction=1;growth=1 +blockId=105 +runtimeId=4767 + +minecraft:melon_stem;facing_direction=1;growth=2 +blockId=105 +runtimeId=4768 + +minecraft:melon_stem;facing_direction=1;growth=3 +blockId=105 +runtimeId=4769 + +minecraft:melon_stem;facing_direction=1;growth=4 +blockId=105 +runtimeId=4770 + +minecraft:melon_stem;facing_direction=1;growth=5 +blockId=105 +runtimeId=4771 + +minecraft:melon_stem;facing_direction=1;growth=6 +blockId=105 +runtimeId=4772 + +minecraft:melon_stem;facing_direction=1;growth=7 +blockId=105 +runtimeId=4773 + +minecraft:melon_stem;facing_direction=2;growth=0 +blockId=105 +runtimeId=4774 + +minecraft:melon_stem;facing_direction=2;growth=1 +blockId=105 +runtimeId=4775 + +minecraft:melon_stem;facing_direction=2;growth=2 +blockId=105 +runtimeId=4776 + +minecraft:melon_stem;facing_direction=2;growth=3 +blockId=105 +runtimeId=4777 + +minecraft:melon_stem;facing_direction=2;growth=4 +blockId=105 +runtimeId=4778 + +minecraft:melon_stem;facing_direction=2;growth=5 +blockId=105 +runtimeId=4779 + +minecraft:melon_stem;facing_direction=2;growth=6 +blockId=105 +runtimeId=4780 + +minecraft:melon_stem;facing_direction=2;growth=7 +blockId=105 +runtimeId=4781 + +minecraft:melon_stem;facing_direction=3;growth=0 +blockId=105 +runtimeId=4782 + +minecraft:melon_stem;facing_direction=3;growth=1 +blockId=105 +runtimeId=4783 + +minecraft:melon_stem;facing_direction=3;growth=2 +blockId=105 +runtimeId=4784 + +minecraft:melon_stem;facing_direction=3;growth=3 +blockId=105 +runtimeId=4785 + +minecraft:melon_stem;facing_direction=3;growth=4 +blockId=105 +runtimeId=4786 + +minecraft:melon_stem;facing_direction=3;growth=5 +blockId=105 +runtimeId=4787 + +minecraft:melon_stem;facing_direction=3;growth=6 +blockId=105 +runtimeId=4788 + +minecraft:melon_stem;facing_direction=3;growth=7 +blockId=105 +runtimeId=4789 + +minecraft:melon_stem;facing_direction=4;growth=0 +blockId=105 +runtimeId=4790 + +minecraft:melon_stem;facing_direction=4;growth=1 +blockId=105 +runtimeId=4791 + +minecraft:melon_stem;facing_direction=4;growth=2 +blockId=105 +runtimeId=4792 + +minecraft:melon_stem;facing_direction=4;growth=3 +blockId=105 +runtimeId=4793 + +minecraft:melon_stem;facing_direction=4;growth=4 +blockId=105 +runtimeId=4794 + +minecraft:melon_stem;facing_direction=4;growth=5 +blockId=105 +runtimeId=4795 + +minecraft:melon_stem;facing_direction=4;growth=6 +blockId=105 +runtimeId=4796 + +minecraft:melon_stem;facing_direction=4;growth=7 +blockId=105 +runtimeId=4797 + +minecraft:melon_stem;facing_direction=5;growth=0 +blockId=105 +runtimeId=4798 + +minecraft:melon_stem;facing_direction=5;growth=1 +blockId=105 +runtimeId=4799 + +minecraft:melon_stem;facing_direction=5;growth=2 +blockId=105 +runtimeId=4800 + +minecraft:melon_stem;facing_direction=5;growth=3 +blockId=105 +runtimeId=4801 + +minecraft:melon_stem;facing_direction=5;growth=4 +blockId=105 +runtimeId=4802 + +minecraft:melon_stem;facing_direction=5;growth=5 +blockId=105 +runtimeId=4803 + +minecraft:melon_stem;facing_direction=5;growth=6 +blockId=105 +runtimeId=4804 + +minecraft:melon_stem;facing_direction=5;growth=7 +blockId=105 +runtimeId=4805 + +minecraft:mob_spawner +blockId=52 +runtimeId=411 + +minecraft:monster_egg;monster_egg_stone_type=chiseled_stone_brick +blockId=97 +runtimeId=4138 + +minecraft:monster_egg;monster_egg_stone_type=cobblestone +blockId=97 +runtimeId=4134 + +minecraft:monster_egg;monster_egg_stone_type=cracked_stone_brick +blockId=97 +runtimeId=4137 + +minecraft:monster_egg;monster_egg_stone_type=mossy_stone_brick +blockId=97 +runtimeId=4136 + +minecraft:monster_egg;monster_egg_stone_type=stone +blockId=97 +runtimeId=4133 + +minecraft:monster_egg;monster_egg_stone_type=stone_brick +blockId=97 +runtimeId=4135 + +minecraft:moss_block +blockId=575 +runtimeId=6429 + +minecraft:moss_carpet +blockId=590 +runtimeId=300 + +minecraft:mossy_cobblestone +blockId=48 +runtimeId=266 + +minecraft:mossy_cobblestone_stairs;upside_down_bit=0;weirdo_direction=0 +blockId=434 +runtimeId=4081 + +minecraft:mossy_cobblestone_stairs;upside_down_bit=0;weirdo_direction=1 +blockId=434 +runtimeId=4082 + +minecraft:mossy_cobblestone_stairs;upside_down_bit=0;weirdo_direction=2 +blockId=434 +runtimeId=4083 + +minecraft:mossy_cobblestone_stairs;upside_down_bit=0;weirdo_direction=3 +blockId=434 +runtimeId=4084 + +minecraft:mossy_cobblestone_stairs;upside_down_bit=1;weirdo_direction=0 +blockId=434 +runtimeId=4085 + +minecraft:mossy_cobblestone_stairs;upside_down_bit=1;weirdo_direction=1 +blockId=434 +runtimeId=4086 + +minecraft:mossy_cobblestone_stairs;upside_down_bit=1;weirdo_direction=2 +blockId=434 +runtimeId=4087 + +minecraft:mossy_cobblestone_stairs;upside_down_bit=1;weirdo_direction=3 +blockId=434 +runtimeId=4088 + +minecraft:mossy_stone_brick_stairs;upside_down_bit=0;weirdo_direction=0 +blockId=430 +runtimeId=5807 + +minecraft:mossy_stone_brick_stairs;upside_down_bit=0;weirdo_direction=1 +blockId=430 +runtimeId=5808 + +minecraft:mossy_stone_brick_stairs;upside_down_bit=0;weirdo_direction=2 +blockId=430 +runtimeId=5809 + +minecraft:mossy_stone_brick_stairs;upside_down_bit=0;weirdo_direction=3 +blockId=430 +runtimeId=5810 + +minecraft:mossy_stone_brick_stairs;upside_down_bit=1;weirdo_direction=0 +blockId=430 +runtimeId=5811 + +minecraft:mossy_stone_brick_stairs;upside_down_bit=1;weirdo_direction=1 +blockId=430 +runtimeId=5812 + +minecraft:mossy_stone_brick_stairs;upside_down_bit=1;weirdo_direction=2 +blockId=430 +runtimeId=5813 + +minecraft:mossy_stone_brick_stairs;upside_down_bit=1;weirdo_direction=3 +blockId=430 +runtimeId=5814 + +minecraft:moving_block +blockId=250 +runtimeId=5532 + +minecraft:mud +blockId=728 +runtimeId=6558 + +minecraft:mud_brick_double_slab;top_slot_bit=0 +blockId=734 +runtimeId=203 + +minecraft:mud_brick_double_slab;top_slot_bit=1 +blockId=734 +runtimeId=204 + +minecraft:mud_brick_slab;top_slot_bit=0 +blockId=733 +runtimeId=3899 + +minecraft:mud_brick_slab;top_slot_bit=1 +blockId=733 +runtimeId=3900 + +minecraft:mud_brick_stairs;upside_down_bit=0;weirdo_direction=0 +blockId=735 +runtimeId=5472 + +minecraft:mud_brick_stairs;upside_down_bit=0;weirdo_direction=1 +blockId=735 +runtimeId=5473 + +minecraft:mud_brick_stairs;upside_down_bit=0;weirdo_direction=2 +blockId=735 +runtimeId=5474 + +minecraft:mud_brick_stairs;upside_down_bit=0;weirdo_direction=3 +blockId=735 +runtimeId=5475 + +minecraft:mud_brick_stairs;upside_down_bit=1;weirdo_direction=0 +blockId=735 +runtimeId=5476 + +minecraft:mud_brick_stairs;upside_down_bit=1;weirdo_direction=1 +blockId=735 +runtimeId=5477 + +minecraft:mud_brick_stairs;upside_down_bit=1;weirdo_direction=2 +blockId=735 +runtimeId=5478 + +minecraft:mud_brick_stairs;upside_down_bit=1;weirdo_direction=3 +blockId=735 +runtimeId=5479 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none +blockId=736 +runtimeId=738 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short +blockId=736 +runtimeId=740 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall +blockId=736 +runtimeId=742 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none +blockId=736 +runtimeId=792 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short +blockId=736 +runtimeId=794 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall +blockId=736 +runtimeId=796 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none +blockId=736 +runtimeId=846 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short +blockId=736 +runtimeId=848 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall +blockId=736 +runtimeId=850 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none +blockId=736 +runtimeId=756 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short +blockId=736 +runtimeId=758 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall +blockId=736 +runtimeId=760 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none +blockId=736 +runtimeId=810 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short +blockId=736 +runtimeId=812 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall +blockId=736 +runtimeId=814 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none +blockId=736 +runtimeId=864 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short +blockId=736 +runtimeId=866 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall +blockId=736 +runtimeId=868 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none +blockId=736 +runtimeId=774 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short +blockId=736 +runtimeId=776 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall +blockId=736 +runtimeId=778 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none +blockId=736 +runtimeId=828 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short +blockId=736 +runtimeId=830 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall +blockId=736 +runtimeId=832 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none +blockId=736 +runtimeId=882 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short +blockId=736 +runtimeId=884 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall +blockId=736 +runtimeId=886 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none +blockId=736 +runtimeId=739 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short +blockId=736 +runtimeId=741 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall +blockId=736 +runtimeId=743 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none +blockId=736 +runtimeId=793 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short +blockId=736 +runtimeId=795 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall +blockId=736 +runtimeId=797 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none +blockId=736 +runtimeId=847 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short +blockId=736 +runtimeId=849 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall +blockId=736 +runtimeId=851 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none +blockId=736 +runtimeId=757 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short +blockId=736 +runtimeId=759 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall +blockId=736 +runtimeId=761 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none +blockId=736 +runtimeId=811 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short +blockId=736 +runtimeId=813 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall +blockId=736 +runtimeId=815 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none +blockId=736 +runtimeId=865 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short +blockId=736 +runtimeId=867 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall +blockId=736 +runtimeId=869 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none +blockId=736 +runtimeId=775 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short +blockId=736 +runtimeId=777 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall +blockId=736 +runtimeId=779 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none +blockId=736 +runtimeId=829 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short +blockId=736 +runtimeId=831 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall +blockId=736 +runtimeId=833 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none +blockId=736 +runtimeId=883 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short +blockId=736 +runtimeId=885 + +minecraft:mud_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall +blockId=736 +runtimeId=887 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none +blockId=736 +runtimeId=744 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short +blockId=736 +runtimeId=746 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall +blockId=736 +runtimeId=748 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none +blockId=736 +runtimeId=798 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short +blockId=736 +runtimeId=800 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall +blockId=736 +runtimeId=802 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none +blockId=736 +runtimeId=852 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short +blockId=736 +runtimeId=854 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall +blockId=736 +runtimeId=856 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none +blockId=736 +runtimeId=762 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short +blockId=736 +runtimeId=764 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall +blockId=736 +runtimeId=766 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none +blockId=736 +runtimeId=816 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short +blockId=736 +runtimeId=818 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall +blockId=736 +runtimeId=820 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none +blockId=736 +runtimeId=870 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short +blockId=736 +runtimeId=872 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall +blockId=736 +runtimeId=874 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none +blockId=736 +runtimeId=780 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short +blockId=736 +runtimeId=782 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall +blockId=736 +runtimeId=784 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none +blockId=736 +runtimeId=834 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short +blockId=736 +runtimeId=836 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall +blockId=736 +runtimeId=838 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none +blockId=736 +runtimeId=888 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short +blockId=736 +runtimeId=890 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall +blockId=736 +runtimeId=892 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none +blockId=736 +runtimeId=745 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short +blockId=736 +runtimeId=747 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall +blockId=736 +runtimeId=749 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none +blockId=736 +runtimeId=799 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short +blockId=736 +runtimeId=801 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall +blockId=736 +runtimeId=803 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none +blockId=736 +runtimeId=853 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short +blockId=736 +runtimeId=855 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall +blockId=736 +runtimeId=857 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none +blockId=736 +runtimeId=763 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short +blockId=736 +runtimeId=765 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall +blockId=736 +runtimeId=767 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none +blockId=736 +runtimeId=817 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short +blockId=736 +runtimeId=819 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall +blockId=736 +runtimeId=821 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none +blockId=736 +runtimeId=871 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short +blockId=736 +runtimeId=873 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall +blockId=736 +runtimeId=875 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none +blockId=736 +runtimeId=781 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short +blockId=736 +runtimeId=783 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall +blockId=736 +runtimeId=785 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none +blockId=736 +runtimeId=835 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short +blockId=736 +runtimeId=837 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall +blockId=736 +runtimeId=839 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none +blockId=736 +runtimeId=889 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short +blockId=736 +runtimeId=891 + +minecraft:mud_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall +blockId=736 +runtimeId=893 + +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none +blockId=736 +runtimeId=750 + +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short +blockId=736 +runtimeId=752 + +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall +blockId=736 +runtimeId=754 + +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none +blockId=736 +runtimeId=804 + +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short +blockId=736 +runtimeId=806 + +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall +blockId=736 +runtimeId=808 + +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none +blockId=736 +runtimeId=858 + +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short +blockId=736 +runtimeId=860 + +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall +blockId=736 +runtimeId=862 + +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none +blockId=736 +runtimeId=768 + +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short +blockId=736 +runtimeId=770 + +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall +blockId=736 +runtimeId=772 + +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none +blockId=736 +runtimeId=822 -minecraft:melon_stem;facing_direction=4;growth=2 -blockId=105 -runtimeId=5509 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short +blockId=736 +runtimeId=824 -minecraft:melon_stem;facing_direction=4;growth=3 -blockId=105 -runtimeId=5510 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall +blockId=736 +runtimeId=826 -minecraft:melon_stem;facing_direction=4;growth=4 -blockId=105 -runtimeId=5511 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none +blockId=736 +runtimeId=876 -minecraft:melon_stem;facing_direction=4;growth=5 -blockId=105 -runtimeId=5512 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short +blockId=736 +runtimeId=878 -minecraft:melon_stem;facing_direction=4;growth=6 -blockId=105 -runtimeId=5513 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall +blockId=736 +runtimeId=880 -minecraft:melon_stem;facing_direction=4;growth=7 -blockId=105 -runtimeId=5514 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none +blockId=736 +runtimeId=786 -minecraft:melon_stem;facing_direction=5;growth=0 -blockId=105 -runtimeId=5515 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short +blockId=736 +runtimeId=788 -minecraft:melon_stem;facing_direction=5;growth=1 -blockId=105 -runtimeId=5516 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall +blockId=736 +runtimeId=790 -minecraft:melon_stem;facing_direction=5;growth=2 -blockId=105 -runtimeId=5517 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none +blockId=736 +runtimeId=840 -minecraft:melon_stem;facing_direction=5;growth=3 -blockId=105 -runtimeId=5518 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short +blockId=736 +runtimeId=842 -minecraft:melon_stem;facing_direction=5;growth=4 -blockId=105 -runtimeId=5519 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall +blockId=736 +runtimeId=844 -minecraft:melon_stem;facing_direction=5;growth=5 -blockId=105 -runtimeId=5520 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none +blockId=736 +runtimeId=894 -minecraft:melon_stem;facing_direction=5;growth=6 -blockId=105 -runtimeId=5521 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short +blockId=736 +runtimeId=896 -minecraft:melon_stem;facing_direction=5;growth=7 -blockId=105 -runtimeId=5522 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall +blockId=736 +runtimeId=898 -minecraft:mob_spawner -blockId=52 -runtimeId=5523 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none +blockId=736 +runtimeId=751 -minecraft:monster_egg;monster_egg_stone_type=chiseled_stone_brick -blockId=97 -runtimeId=5529 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short +blockId=736 +runtimeId=753 -minecraft:monster_egg;monster_egg_stone_type=cobblestone -blockId=97 -runtimeId=5525 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall +blockId=736 +runtimeId=755 -minecraft:monster_egg;monster_egg_stone_type=cracked_stone_brick -blockId=97 -runtimeId=5528 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none +blockId=736 +runtimeId=805 -minecraft:monster_egg;monster_egg_stone_type=mossy_stone_brick -blockId=97 -runtimeId=5527 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short +blockId=736 +runtimeId=807 -minecraft:monster_egg;monster_egg_stone_type=stone -blockId=97 -runtimeId=5524 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall +blockId=736 +runtimeId=809 -minecraft:monster_egg;monster_egg_stone_type=stone_brick -blockId=97 -runtimeId=5526 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none +blockId=736 +runtimeId=859 -minecraft:moss_block -blockId=575 -runtimeId=5530 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short +blockId=736 +runtimeId=861 -minecraft:moss_carpet -blockId=590 -runtimeId=5531 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall +blockId=736 +runtimeId=863 -minecraft:mossy_cobblestone -blockId=48 -runtimeId=5532 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none +blockId=736 +runtimeId=769 -minecraft:mossy_cobblestone_stairs;upside_down_bit=0;weirdo_direction=0 -blockId=434 -runtimeId=5533 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short +blockId=736 +runtimeId=771 -minecraft:mossy_cobblestone_stairs;upside_down_bit=0;weirdo_direction=1 -blockId=434 -runtimeId=5534 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall +blockId=736 +runtimeId=773 -minecraft:mossy_cobblestone_stairs;upside_down_bit=0;weirdo_direction=2 -blockId=434 -runtimeId=5535 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none +blockId=736 +runtimeId=823 -minecraft:mossy_cobblestone_stairs;upside_down_bit=0;weirdo_direction=3 -blockId=434 -runtimeId=5536 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short +blockId=736 +runtimeId=825 -minecraft:mossy_cobblestone_stairs;upside_down_bit=1;weirdo_direction=0 -blockId=434 -runtimeId=5537 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall +blockId=736 +runtimeId=827 -minecraft:mossy_cobblestone_stairs;upside_down_bit=1;weirdo_direction=1 -blockId=434 -runtimeId=5538 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none +blockId=736 +runtimeId=877 -minecraft:mossy_cobblestone_stairs;upside_down_bit=1;weirdo_direction=2 -blockId=434 -runtimeId=5539 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short +blockId=736 +runtimeId=879 -minecraft:mossy_cobblestone_stairs;upside_down_bit=1;weirdo_direction=3 -blockId=434 -runtimeId=5540 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall +blockId=736 +runtimeId=881 -minecraft:mossy_stone_brick_stairs;upside_down_bit=0;weirdo_direction=0 -blockId=430 -runtimeId=5541 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none +blockId=736 +runtimeId=787 -minecraft:mossy_stone_brick_stairs;upside_down_bit=0;weirdo_direction=1 -blockId=430 -runtimeId=5542 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short +blockId=736 +runtimeId=789 -minecraft:mossy_stone_brick_stairs;upside_down_bit=0;weirdo_direction=2 -blockId=430 -runtimeId=5543 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall +blockId=736 +runtimeId=791 -minecraft:mossy_stone_brick_stairs;upside_down_bit=0;weirdo_direction=3 -blockId=430 -runtimeId=5544 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none +blockId=736 +runtimeId=841 -minecraft:mossy_stone_brick_stairs;upside_down_bit=1;weirdo_direction=0 -blockId=430 -runtimeId=5545 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short +blockId=736 +runtimeId=843 -minecraft:mossy_stone_brick_stairs;upside_down_bit=1;weirdo_direction=1 -blockId=430 -runtimeId=5546 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall +blockId=736 +runtimeId=845 -minecraft:mossy_stone_brick_stairs;upside_down_bit=1;weirdo_direction=2 -blockId=430 -runtimeId=5547 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none +blockId=736 +runtimeId=895 -minecraft:mossy_stone_brick_stairs;upside_down_bit=1;weirdo_direction=3 -blockId=430 -runtimeId=5548 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short +blockId=736 +runtimeId=897 -minecraft:movingBlock -blockId=250 -runtimeId=5549 +minecraft:mud_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall +blockId=736 +runtimeId=899 + +minecraft:mud_bricks +blockId=730 +runtimeId=6805 minecraft:mycelium blockId=110 -runtimeId=5550 +runtimeId=3688 minecraft:nether_brick blockId=112 -runtimeId=5551 +runtimeId=7214 minecraft:nether_brick_fence blockId=113 -runtimeId=5552 +runtimeId=4238 minecraft:nether_brick_stairs;upside_down_bit=0;weirdo_direction=0 blockId=114 -runtimeId=5553 +runtimeId=106 minecraft:nether_brick_stairs;upside_down_bit=0;weirdo_direction=1 blockId=114 -runtimeId=5554 +runtimeId=107 minecraft:nether_brick_stairs;upside_down_bit=0;weirdo_direction=2 blockId=114 -runtimeId=5555 +runtimeId=108 minecraft:nether_brick_stairs;upside_down_bit=0;weirdo_direction=3 blockId=114 -runtimeId=5556 +runtimeId=109 minecraft:nether_brick_stairs;upside_down_bit=1;weirdo_direction=0 blockId=114 -runtimeId=5557 +runtimeId=110 minecraft:nether_brick_stairs;upside_down_bit=1;weirdo_direction=1 blockId=114 -runtimeId=5558 +runtimeId=111 minecraft:nether_brick_stairs;upside_down_bit=1;weirdo_direction=2 blockId=114 -runtimeId=5559 +runtimeId=112 minecraft:nether_brick_stairs;upside_down_bit=1;weirdo_direction=3 blockId=114 -runtimeId=5560 +runtimeId=113 minecraft:nether_gold_ore blockId=543 -runtimeId=5561 +runtimeId=27 minecraft:nether_sprouts blockId=493 -runtimeId=5562 +runtimeId=6371 minecraft:nether_wart;age=0 blockId=115 -runtimeId=5563 +runtimeId=7689 minecraft:nether_wart;age=1 blockId=115 -runtimeId=5564 +runtimeId=7690 minecraft:nether_wart;age=2 blockId=115 -runtimeId=5565 +runtimeId=7691 minecraft:nether_wart;age=3 blockId=115 -runtimeId=5566 +runtimeId=7692 minecraft:nether_wart_block blockId=214 -runtimeId=5567 +runtimeId=4241 minecraft:netherite_block blockId=525 -runtimeId=5568 +runtimeId=3780 minecraft:netherrack blockId=87 -runtimeId=5569 +runtimeId=6991 minecraft:netherreactor blockId=247 -runtimeId=5570 +runtimeId=7363 minecraft:normal_stone_stairs;upside_down_bit=0;weirdo_direction=0 blockId=435 -runtimeId=5571 +runtimeId=641 minecraft:normal_stone_stairs;upside_down_bit=0;weirdo_direction=1 blockId=435 -runtimeId=5572 +runtimeId=642 minecraft:normal_stone_stairs;upside_down_bit=0;weirdo_direction=2 blockId=435 -runtimeId=5573 +runtimeId=643 minecraft:normal_stone_stairs;upside_down_bit=0;weirdo_direction=3 blockId=435 -runtimeId=5574 +runtimeId=644 minecraft:normal_stone_stairs;upside_down_bit=1;weirdo_direction=0 blockId=435 -runtimeId=5575 +runtimeId=645 minecraft:normal_stone_stairs;upside_down_bit=1;weirdo_direction=1 blockId=435 -runtimeId=5576 +runtimeId=646 minecraft:normal_stone_stairs;upside_down_bit=1;weirdo_direction=2 blockId=435 -runtimeId=5577 +runtimeId=647 minecraft:normal_stone_stairs;upside_down_bit=1;weirdo_direction=3 blockId=435 -runtimeId=5578 +runtimeId=648 minecraft:noteblock blockId=25 -runtimeId=5579 +runtimeId=359 minecraft:oak_stairs;upside_down_bit=0;weirdo_direction=0 blockId=53 -runtimeId=5580 +runtimeId=287 minecraft:oak_stairs;upside_down_bit=0;weirdo_direction=1 blockId=53 -runtimeId=5581 +runtimeId=288 minecraft:oak_stairs;upside_down_bit=0;weirdo_direction=2 blockId=53 -runtimeId=5582 +runtimeId=289 minecraft:oak_stairs;upside_down_bit=0;weirdo_direction=3 blockId=53 -runtimeId=5583 +runtimeId=290 minecraft:oak_stairs;upside_down_bit=1;weirdo_direction=0 blockId=53 -runtimeId=5584 +runtimeId=291 minecraft:oak_stairs;upside_down_bit=1;weirdo_direction=1 blockId=53 -runtimeId=5585 +runtimeId=292 minecraft:oak_stairs;upside_down_bit=1;weirdo_direction=2 blockId=53 -runtimeId=5586 +runtimeId=293 minecraft:oak_stairs;upside_down_bit=1;weirdo_direction=3 blockId=53 -runtimeId=5587 +runtimeId=294 minecraft:observer;facing_direction=0;powered_bit=0 blockId=251 -runtimeId=5588 +runtimeId=3518 minecraft:observer;facing_direction=0;powered_bit=1 blockId=251 -runtimeId=5594 +runtimeId=3524 minecraft:observer;facing_direction=1;powered_bit=0 blockId=251 -runtimeId=5589 +runtimeId=3519 minecraft:observer;facing_direction=1;powered_bit=1 blockId=251 -runtimeId=5595 +runtimeId=3525 minecraft:observer;facing_direction=2;powered_bit=0 blockId=251 -runtimeId=5590 +runtimeId=3520 minecraft:observer;facing_direction=2;powered_bit=1 blockId=251 -runtimeId=5596 +runtimeId=3526 minecraft:observer;facing_direction=3;powered_bit=0 blockId=251 -runtimeId=5591 +runtimeId=3521 minecraft:observer;facing_direction=3;powered_bit=1 blockId=251 -runtimeId=5597 +runtimeId=3527 minecraft:observer;facing_direction=4;powered_bit=0 blockId=251 -runtimeId=5592 +runtimeId=3522 minecraft:observer;facing_direction=4;powered_bit=1 blockId=251 -runtimeId=5598 +runtimeId=3528 minecraft:observer;facing_direction=5;powered_bit=0 blockId=251 -runtimeId=5593 +runtimeId=3523 minecraft:observer;facing_direction=5;powered_bit=1 blockId=251 -runtimeId=5599 +runtimeId=3529 minecraft:obsidian blockId=49 -runtimeId=5600 +runtimeId=436 + +minecraft:ochre_froglight;pillar_axis=x +blockId=726 +runtimeId=3516 + +minecraft:ochre_froglight;pillar_axis=y +blockId=726 +runtimeId=3515 + +minecraft:ochre_froglight;pillar_axis=z +blockId=726 +runtimeId=3517 + +minecraft:orange_candle;lit=0;candles=0 +blockId=669 +runtimeId=372 + +minecraft:orange_candle;lit=0;candles=1 +blockId=669 +runtimeId=373 + +minecraft:orange_candle;lit=0;candles=2 +blockId=669 +runtimeId=374 + +minecraft:orange_candle;lit=0;candles=3 +blockId=669 +runtimeId=375 + +minecraft:orange_candle;lit=1;candles=0 +blockId=669 +runtimeId=376 + +minecraft:orange_candle;lit=1;candles=1 +blockId=669 +runtimeId=377 + +minecraft:orange_candle;lit=1;candles=2 +blockId=669 +runtimeId=378 + +minecraft:orange_candle;lit=1;candles=3 +blockId=669 +runtimeId=379 + +minecraft:orange_candle_cake;lit=0 +blockId=686 +runtimeId=8186 + +minecraft:orange_candle_cake;lit=1 +blockId=686 +runtimeId=8187 minecraft:orange_glazed_terracotta;facing_direction=0 blockId=221 -runtimeId=5601 +runtimeId=1156 minecraft:orange_glazed_terracotta;facing_direction=1 blockId=221 -runtimeId=5602 +runtimeId=1157 minecraft:orange_glazed_terracotta;facing_direction=2 blockId=221 -runtimeId=5603 +runtimeId=1158 minecraft:orange_glazed_terracotta;facing_direction=3 blockId=221 -runtimeId=5604 +runtimeId=1159 minecraft:orange_glazed_terracotta;facing_direction=4 blockId=221 -runtimeId=5605 +runtimeId=1160 minecraft:orange_glazed_terracotta;facing_direction=5 blockId=221 -runtimeId=5606 +runtimeId=1161 minecraft:oxidized_copper blockId=598 -runtimeId=5607 +runtimeId=3558 minecraft:oxidized_cut_copper blockId=605 -runtimeId=5608 +runtimeId=5428 minecraft:oxidized_cut_copper_slab;top_slot_bit=0 blockId=619 -runtimeId=5609 +runtimeId=5232 minecraft:oxidized_cut_copper_slab;top_slot_bit=1 blockId=619 -runtimeId=5610 +runtimeId=5233 minecraft:oxidized_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0 blockId=612 -runtimeId=5611 +runtimeId=361 minecraft:oxidized_cut_copper_stairs;upside_down_bit=0;weirdo_direction=1 blockId=612 -runtimeId=5612 +runtimeId=362 minecraft:oxidized_cut_copper_stairs;upside_down_bit=0;weirdo_direction=2 blockId=612 -runtimeId=5613 +runtimeId=363 minecraft:oxidized_cut_copper_stairs;upside_down_bit=0;weirdo_direction=3 blockId=612 -runtimeId=5614 +runtimeId=364 minecraft:oxidized_cut_copper_stairs;upside_down_bit=1;weirdo_direction=0 blockId=612 -runtimeId=5615 +runtimeId=365 minecraft:oxidized_cut_copper_stairs;upside_down_bit=1;weirdo_direction=1 blockId=612 -runtimeId=5616 +runtimeId=366 minecraft:oxidized_cut_copper_stairs;upside_down_bit=1;weirdo_direction=2 blockId=612 -runtimeId=5617 +runtimeId=367 minecraft:oxidized_cut_copper_stairs;upside_down_bit=1;weirdo_direction=3 blockId=612 -runtimeId=5618 +runtimeId=368 minecraft:oxidized_double_cut_copper_slab;top_slot_bit=0 blockId=626 -runtimeId=5619 +runtimeId=599 minecraft:oxidized_double_cut_copper_slab;top_slot_bit=1 blockId=626 -runtimeId=5620 +runtimeId=600 minecraft:packed_ice blockId=174 -runtimeId=5621 +runtimeId=296 + +minecraft:packed_mud +blockId=732 +runtimeId=297 + +minecraft:pearlescent_froglight;pillar_axis=x +blockId=724 +runtimeId=6369 + +minecraft:pearlescent_froglight;pillar_axis=y +blockId=724 +runtimeId=6368 + +minecraft:pearlescent_froglight;pillar_axis=z +blockId=724 +runtimeId=6370 + +minecraft:pink_candle;lit=0;candles=0 +blockId=674 +runtimeId=7312 + +minecraft:pink_candle;lit=0;candles=1 +blockId=674 +runtimeId=7313 + +minecraft:pink_candle;lit=0;candles=2 +blockId=674 +runtimeId=7314 + +minecraft:pink_candle;lit=0;candles=3 +blockId=674 +runtimeId=7315 + +minecraft:pink_candle;lit=1;candles=0 +blockId=674 +runtimeId=7316 + +minecraft:pink_candle;lit=1;candles=1 +blockId=674 +runtimeId=7317 + +minecraft:pink_candle;lit=1;candles=2 +blockId=674 +runtimeId=7318 + +minecraft:pink_candle;lit=1;candles=3 +blockId=674 +runtimeId=7319 + +minecraft:pink_candle_cake;lit=0 +blockId=691 +runtimeId=4147 + +minecraft:pink_candle_cake;lit=1 +blockId=691 +runtimeId=4148 minecraft:pink_glazed_terracotta;facing_direction=0 blockId=226 -runtimeId=5622 +runtimeId=6430 minecraft:pink_glazed_terracotta;facing_direction=1 blockId=226 -runtimeId=5623 +runtimeId=6431 minecraft:pink_glazed_terracotta;facing_direction=2 blockId=226 -runtimeId=5624 +runtimeId=6432 minecraft:pink_glazed_terracotta;facing_direction=3 blockId=226 -runtimeId=5625 +runtimeId=6433 minecraft:pink_glazed_terracotta;facing_direction=4 blockId=226 -runtimeId=5626 +runtimeId=6434 minecraft:pink_glazed_terracotta;facing_direction=5 blockId=226 -runtimeId=5627 +runtimeId=6435 minecraft:piston;facing_direction=0 blockId=33 -runtimeId=5628 +runtimeId=929 minecraft:piston;facing_direction=1 blockId=33 -runtimeId=5629 +runtimeId=930 minecraft:piston;facing_direction=2 blockId=33 -runtimeId=5630 +runtimeId=931 minecraft:piston;facing_direction=3 blockId=33 -runtimeId=5631 +runtimeId=932 minecraft:piston;facing_direction=4 blockId=33 -runtimeId=5632 +runtimeId=933 minecraft:piston;facing_direction=5 blockId=33 -runtimeId=5633 +runtimeId=934 -minecraft:pistonArmCollision;facing_direction=0 +minecraft:piston_arm_collision;facing_direction=0 blockId=34 -runtimeId=5634 +runtimeId=60 -minecraft:pistonArmCollision;facing_direction=1 +minecraft:piston_arm_collision;facing_direction=1 blockId=34 -runtimeId=5635 +runtimeId=61 -minecraft:pistonArmCollision;facing_direction=2 +minecraft:piston_arm_collision;facing_direction=2 blockId=34 -runtimeId=5636 +runtimeId=62 -minecraft:pistonArmCollision;facing_direction=3 +minecraft:piston_arm_collision;facing_direction=3 blockId=34 -runtimeId=5637 +runtimeId=63 -minecraft:pistonArmCollision;facing_direction=4 +minecraft:piston_arm_collision;facing_direction=4 blockId=34 -runtimeId=5638 +runtimeId=64 -minecraft:pistonArmCollision;facing_direction=5 +minecraft:piston_arm_collision;facing_direction=5 blockId=34 -runtimeId=5639 +runtimeId=65 minecraft:planks;wood_type=acacia blockId=5 -runtimeId=5644 +runtimeId=5999 minecraft:planks;wood_type=birch blockId=5 -runtimeId=5642 +runtimeId=5997 minecraft:planks;wood_type=dark_oak blockId=5 -runtimeId=5645 +runtimeId=6000 minecraft:planks;wood_type=jungle blockId=5 -runtimeId=5643 +runtimeId=5998 minecraft:planks;wood_type=oak blockId=5 -runtimeId=5640 +runtimeId=5995 minecraft:planks;wood_type=spruce blockId=5 -runtimeId=5641 +runtimeId=5996 minecraft:podzol blockId=243 -runtimeId=5646 +runtimeId=4606 minecraft:pointed_dripstone;dripstone_thickness=base;hanging=0 blockId=563 -runtimeId=5650 +runtimeId=7356 minecraft:pointed_dripstone;dripstone_thickness=base;hanging=1 blockId=563 -runtimeId=5655 +runtimeId=7361 minecraft:pointed_dripstone;dripstone_thickness=frustum;hanging=0 blockId=563 -runtimeId=5648 +runtimeId=7354 minecraft:pointed_dripstone;dripstone_thickness=frustum;hanging=1 blockId=563 -runtimeId=5653 +runtimeId=7359 minecraft:pointed_dripstone;dripstone_thickness=merge;hanging=0 blockId=563 -runtimeId=5651 +runtimeId=7357 minecraft:pointed_dripstone;dripstone_thickness=merge;hanging=1 blockId=563 -runtimeId=5656 +runtimeId=7362 minecraft:pointed_dripstone;dripstone_thickness=middle;hanging=0 blockId=563 -runtimeId=5649 +runtimeId=7355 minecraft:pointed_dripstone;dripstone_thickness=middle;hanging=1 blockId=563 -runtimeId=5654 +runtimeId=7360 minecraft:pointed_dripstone;dripstone_thickness=tip;hanging=0 blockId=563 -runtimeId=5647 +runtimeId=7353 minecraft:pointed_dripstone;dripstone_thickness=tip;hanging=1 blockId=563 -runtimeId=5652 +runtimeId=7358 minecraft:polished_andesite_stairs;upside_down_bit=0;weirdo_direction=0 blockId=429 -runtimeId=5657 +runtimeId=6982 minecraft:polished_andesite_stairs;upside_down_bit=0;weirdo_direction=1 blockId=429 -runtimeId=5658 +runtimeId=6983 minecraft:polished_andesite_stairs;upside_down_bit=0;weirdo_direction=2 blockId=429 -runtimeId=5659 +runtimeId=6984 minecraft:polished_andesite_stairs;upside_down_bit=0;weirdo_direction=3 blockId=429 -runtimeId=5660 +runtimeId=6985 minecraft:polished_andesite_stairs;upside_down_bit=1;weirdo_direction=0 blockId=429 -runtimeId=5661 +runtimeId=6986 minecraft:polished_andesite_stairs;upside_down_bit=1;weirdo_direction=1 blockId=429 -runtimeId=5662 +runtimeId=6987 minecraft:polished_andesite_stairs;upside_down_bit=1;weirdo_direction=2 blockId=429 -runtimeId=5663 +runtimeId=6988 minecraft:polished_andesite_stairs;upside_down_bit=1;weirdo_direction=3 blockId=429 -runtimeId=5664 +runtimeId=6989 minecraft:polished_basalt;pillar_axis=x blockId=490 -runtimeId=5666 +runtimeId=25 minecraft:polished_basalt;pillar_axis=y blockId=490 -runtimeId=5665 +runtimeId=24 minecraft:polished_basalt;pillar_axis=z blockId=490 -runtimeId=5667 +runtimeId=26 minecraft:polished_blackstone blockId=546 -runtimeId=5668 +runtimeId=3687 minecraft:polished_blackstone_brick_double_slab;top_slot_bit=0 blockId=540 -runtimeId=5669 +runtimeId=685 minecraft:polished_blackstone_brick_double_slab;top_slot_bit=1 blockId=540 -runtimeId=5670 +runtimeId=686 minecraft:polished_blackstone_brick_slab;top_slot_bit=0 blockId=539 -runtimeId=5671 +runtimeId=4175 minecraft:polished_blackstone_brick_slab;top_slot_bit=1 blockId=539 -runtimeId=5672 +runtimeId=4176 minecraft:polished_blackstone_brick_stairs;upside_down_bit=0;weirdo_direction=0 blockId=530 -runtimeId=5673 +runtimeId=4425 minecraft:polished_blackstone_brick_stairs;upside_down_bit=0;weirdo_direction=1 blockId=530 -runtimeId=5674 +runtimeId=4426 minecraft:polished_blackstone_brick_stairs;upside_down_bit=0;weirdo_direction=2 blockId=530 -runtimeId=5675 +runtimeId=4427 minecraft:polished_blackstone_brick_stairs;upside_down_bit=0;weirdo_direction=3 blockId=530 -runtimeId=5676 +runtimeId=4428 minecraft:polished_blackstone_brick_stairs;upside_down_bit=1;weirdo_direction=0 blockId=530 -runtimeId=5677 +runtimeId=4429 minecraft:polished_blackstone_brick_stairs;upside_down_bit=1;weirdo_direction=1 blockId=530 -runtimeId=5678 +runtimeId=4430 minecraft:polished_blackstone_brick_stairs;upside_down_bit=1;weirdo_direction=2 blockId=530 -runtimeId=5679 +runtimeId=4431 minecraft:polished_blackstone_brick_stairs;upside_down_bit=1;weirdo_direction=3 blockId=530 -runtimeId=5680 +runtimeId=4432 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=533 -runtimeId=5681 +runtimeId=978 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=533 -runtimeId=5683 +runtimeId=980 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=533 -runtimeId=5685 +runtimeId=982 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=533 -runtimeId=5735 +runtimeId=1032 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=533 -runtimeId=5737 +runtimeId=1034 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=533 -runtimeId=5739 +runtimeId=1036 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=533 -runtimeId=5789 +runtimeId=1086 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=533 -runtimeId=5791 +runtimeId=1088 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=533 -runtimeId=5793 +runtimeId=1090 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=533 -runtimeId=5699 +runtimeId=996 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=533 -runtimeId=5701 +runtimeId=998 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=533 -runtimeId=5703 +runtimeId=1000 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=533 -runtimeId=5753 +runtimeId=1050 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=533 -runtimeId=5755 +runtimeId=1052 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=533 -runtimeId=5757 +runtimeId=1054 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=533 -runtimeId=5807 +runtimeId=1104 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=533 -runtimeId=5809 +runtimeId=1106 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=533 -runtimeId=5811 +runtimeId=1108 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=533 -runtimeId=5717 +runtimeId=1014 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=533 -runtimeId=5719 +runtimeId=1016 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=533 -runtimeId=5721 +runtimeId=1018 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=533 -runtimeId=5771 +runtimeId=1068 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=533 -runtimeId=5773 +runtimeId=1070 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=533 -runtimeId=5775 +runtimeId=1072 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=533 -runtimeId=5825 +runtimeId=1122 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=533 -runtimeId=5827 +runtimeId=1124 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=533 -runtimeId=5829 +runtimeId=1126 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=533 -runtimeId=5682 +runtimeId=979 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=533 -runtimeId=5684 +runtimeId=981 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=533 -runtimeId=5686 +runtimeId=983 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=533 -runtimeId=5736 +runtimeId=1033 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=533 -runtimeId=5738 +runtimeId=1035 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=533 -runtimeId=5740 +runtimeId=1037 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=533 -runtimeId=5790 +runtimeId=1087 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=533 -runtimeId=5792 +runtimeId=1089 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=533 -runtimeId=5794 +runtimeId=1091 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=533 -runtimeId=5700 +runtimeId=997 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=533 -runtimeId=5702 +runtimeId=999 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=533 -runtimeId=5704 +runtimeId=1001 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=533 -runtimeId=5754 +runtimeId=1051 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=533 -runtimeId=5756 +runtimeId=1053 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=533 -runtimeId=5758 +runtimeId=1055 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=533 -runtimeId=5808 +runtimeId=1105 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=533 -runtimeId=5810 +runtimeId=1107 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=533 -runtimeId=5812 +runtimeId=1109 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=533 -runtimeId=5718 +runtimeId=1015 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=533 -runtimeId=5720 +runtimeId=1017 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=533 -runtimeId=5722 +runtimeId=1019 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=533 -runtimeId=5772 +runtimeId=1069 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=533 -runtimeId=5774 +runtimeId=1071 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=533 -runtimeId=5776 +runtimeId=1073 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=533 -runtimeId=5826 +runtimeId=1123 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=533 -runtimeId=5828 +runtimeId=1125 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=533 -runtimeId=5830 +runtimeId=1127 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=533 -runtimeId=5687 +runtimeId=984 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=533 -runtimeId=5689 +runtimeId=986 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=533 -runtimeId=5691 +runtimeId=988 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=533 -runtimeId=5741 +runtimeId=1038 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=533 -runtimeId=5743 +runtimeId=1040 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=533 -runtimeId=5745 +runtimeId=1042 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=533 -runtimeId=5795 +runtimeId=1092 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=533 -runtimeId=5797 +runtimeId=1094 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=533 -runtimeId=5799 +runtimeId=1096 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=533 -runtimeId=5705 +runtimeId=1002 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=533 -runtimeId=5707 +runtimeId=1004 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=533 -runtimeId=5709 +runtimeId=1006 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=533 -runtimeId=5759 +runtimeId=1056 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=533 -runtimeId=5761 +runtimeId=1058 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=533 -runtimeId=5763 +runtimeId=1060 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=533 -runtimeId=5813 +runtimeId=1110 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=533 -runtimeId=5815 +runtimeId=1112 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=533 -runtimeId=5817 +runtimeId=1114 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=533 -runtimeId=5723 +runtimeId=1020 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=533 -runtimeId=5725 +runtimeId=1022 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=533 -runtimeId=5727 +runtimeId=1024 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=533 -runtimeId=5777 +runtimeId=1074 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=533 -runtimeId=5779 +runtimeId=1076 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=533 -runtimeId=5781 +runtimeId=1078 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=533 -runtimeId=5831 +runtimeId=1128 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=533 -runtimeId=5833 +runtimeId=1130 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=533 -runtimeId=5835 +runtimeId=1132 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=533 -runtimeId=5688 +runtimeId=985 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=533 -runtimeId=5690 +runtimeId=987 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=533 -runtimeId=5692 +runtimeId=989 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=533 -runtimeId=5742 +runtimeId=1039 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=533 -runtimeId=5744 +runtimeId=1041 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=533 -runtimeId=5746 +runtimeId=1043 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=533 -runtimeId=5796 +runtimeId=1093 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=533 -runtimeId=5798 +runtimeId=1095 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=533 -runtimeId=5800 +runtimeId=1097 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=533 -runtimeId=5706 +runtimeId=1003 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=533 -runtimeId=5708 +runtimeId=1005 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=533 -runtimeId=5710 +runtimeId=1007 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=533 -runtimeId=5760 +runtimeId=1057 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=533 -runtimeId=5762 +runtimeId=1059 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=533 -runtimeId=5764 +runtimeId=1061 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=533 -runtimeId=5814 +runtimeId=1111 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=533 -runtimeId=5816 +runtimeId=1113 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=533 -runtimeId=5818 +runtimeId=1115 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=533 -runtimeId=5724 +runtimeId=1021 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=533 -runtimeId=5726 +runtimeId=1023 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=533 -runtimeId=5728 +runtimeId=1025 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=533 -runtimeId=5778 +runtimeId=1075 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=533 -runtimeId=5780 +runtimeId=1077 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=533 -runtimeId=5782 +runtimeId=1079 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=533 -runtimeId=5832 +runtimeId=1129 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=533 -runtimeId=5834 +runtimeId=1131 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=533 -runtimeId=5836 +runtimeId=1133 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=533 -runtimeId=5693 +runtimeId=990 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=533 -runtimeId=5695 +runtimeId=992 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=533 -runtimeId=5697 +runtimeId=994 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=533 -runtimeId=5747 +runtimeId=1044 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=533 -runtimeId=5749 +runtimeId=1046 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=533 -runtimeId=5751 +runtimeId=1048 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=533 -runtimeId=5801 +runtimeId=1098 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=533 -runtimeId=5803 +runtimeId=1100 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=533 -runtimeId=5805 +runtimeId=1102 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=533 -runtimeId=5711 +runtimeId=1008 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=533 -runtimeId=5713 +runtimeId=1010 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=533 -runtimeId=5715 +runtimeId=1012 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=533 -runtimeId=5765 +runtimeId=1062 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=533 -runtimeId=5767 +runtimeId=1064 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=533 -runtimeId=5769 +runtimeId=1066 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=533 -runtimeId=5819 +runtimeId=1116 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=533 -runtimeId=5821 +runtimeId=1118 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=533 -runtimeId=5823 +runtimeId=1120 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=533 -runtimeId=5729 +runtimeId=1026 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=533 -runtimeId=5731 +runtimeId=1028 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=533 -runtimeId=5733 +runtimeId=1030 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=533 -runtimeId=5783 +runtimeId=1080 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=533 -runtimeId=5785 +runtimeId=1082 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=533 -runtimeId=5787 +runtimeId=1084 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=533 -runtimeId=5837 +runtimeId=1134 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=533 -runtimeId=5839 +runtimeId=1136 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=533 -runtimeId=5841 +runtimeId=1138 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=533 -runtimeId=5694 +runtimeId=991 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=533 -runtimeId=5696 +runtimeId=993 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=533 -runtimeId=5698 +runtimeId=995 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=533 -runtimeId=5748 +runtimeId=1045 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=533 -runtimeId=5750 +runtimeId=1047 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=533 -runtimeId=5752 +runtimeId=1049 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=533 -runtimeId=5802 +runtimeId=1099 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=533 -runtimeId=5804 +runtimeId=1101 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=533 -runtimeId=5806 +runtimeId=1103 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=533 -runtimeId=5712 +runtimeId=1009 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=533 -runtimeId=5714 +runtimeId=1011 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=533 -runtimeId=5716 +runtimeId=1013 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=533 -runtimeId=5766 +runtimeId=1063 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=533 -runtimeId=5768 +runtimeId=1065 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=533 -runtimeId=5770 +runtimeId=1067 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=533 -runtimeId=5820 +runtimeId=1117 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=533 -runtimeId=5822 +runtimeId=1119 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=533 -runtimeId=5824 +runtimeId=1121 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=533 -runtimeId=5730 +runtimeId=1027 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=533 -runtimeId=5732 +runtimeId=1029 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=533 -runtimeId=5734 +runtimeId=1031 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=533 -runtimeId=5784 +runtimeId=1081 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=533 -runtimeId=5786 +runtimeId=1083 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=533 -runtimeId=5788 +runtimeId=1085 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=533 -runtimeId=5838 +runtimeId=1135 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=533 -runtimeId=5840 +runtimeId=1137 minecraft:polished_blackstone_brick_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=533 -runtimeId=5842 +runtimeId=1139 minecraft:polished_blackstone_bricks blockId=529 -runtimeId=5843 +runtimeId=4636 minecraft:polished_blackstone_button;button_pressed_bit=0;facing_direction=0 blockId=551 -runtimeId=5844 +runtimeId=7732 minecraft:polished_blackstone_button;button_pressed_bit=0;facing_direction=1 blockId=551 -runtimeId=5845 +runtimeId=7733 minecraft:polished_blackstone_button;button_pressed_bit=0;facing_direction=2 blockId=551 -runtimeId=5846 +runtimeId=7734 minecraft:polished_blackstone_button;button_pressed_bit=0;facing_direction=3 blockId=551 -runtimeId=5847 +runtimeId=7735 minecraft:polished_blackstone_button;button_pressed_bit=0;facing_direction=4 blockId=551 -runtimeId=5848 +runtimeId=7736 minecraft:polished_blackstone_button;button_pressed_bit=0;facing_direction=5 blockId=551 -runtimeId=5849 +runtimeId=7737 minecraft:polished_blackstone_button;button_pressed_bit=1;facing_direction=0 blockId=551 -runtimeId=5850 +runtimeId=7738 minecraft:polished_blackstone_button;button_pressed_bit=1;facing_direction=1 blockId=551 -runtimeId=5851 +runtimeId=7739 minecraft:polished_blackstone_button;button_pressed_bit=1;facing_direction=2 blockId=551 -runtimeId=5852 +runtimeId=7740 minecraft:polished_blackstone_button;button_pressed_bit=1;facing_direction=3 blockId=551 -runtimeId=5853 +runtimeId=7741 minecraft:polished_blackstone_button;button_pressed_bit=1;facing_direction=4 blockId=551 -runtimeId=5854 +runtimeId=7742 minecraft:polished_blackstone_button;button_pressed_bit=1;facing_direction=5 blockId=551 -runtimeId=5855 +runtimeId=7743 minecraft:polished_blackstone_double_slab;top_slot_bit=0 blockId=549 -runtimeId=5856 +runtimeId=653 minecraft:polished_blackstone_double_slab;top_slot_bit=1 blockId=549 -runtimeId=5857 +runtimeId=654 minecraft:polished_blackstone_pressure_plate;redstone_signal=0 blockId=550 -runtimeId=5858 +runtimeId=6197 minecraft:polished_blackstone_pressure_plate;redstone_signal=1 blockId=550 -runtimeId=5859 +runtimeId=6198 minecraft:polished_blackstone_pressure_plate;redstone_signal=2 blockId=550 -runtimeId=5860 +runtimeId=6199 minecraft:polished_blackstone_pressure_plate;redstone_signal=3 blockId=550 -runtimeId=5861 +runtimeId=6200 minecraft:polished_blackstone_pressure_plate;redstone_signal=4 blockId=550 -runtimeId=5862 +runtimeId=6201 minecraft:polished_blackstone_pressure_plate;redstone_signal=5 blockId=550 -runtimeId=5863 +runtimeId=6202 minecraft:polished_blackstone_pressure_plate;redstone_signal=6 blockId=550 -runtimeId=5864 +runtimeId=6203 minecraft:polished_blackstone_pressure_plate;redstone_signal=7 blockId=550 -runtimeId=5865 +runtimeId=6204 minecraft:polished_blackstone_pressure_plate;redstone_signal=8 blockId=550 -runtimeId=5866 +runtimeId=6205 minecraft:polished_blackstone_pressure_plate;redstone_signal=9 blockId=550 -runtimeId=5867 +runtimeId=6206 minecraft:polished_blackstone_pressure_plate;redstone_signal=10 blockId=550 -runtimeId=5868 +runtimeId=6207 minecraft:polished_blackstone_pressure_plate;redstone_signal=11 blockId=550 -runtimeId=5869 +runtimeId=6208 minecraft:polished_blackstone_pressure_plate;redstone_signal=12 blockId=550 -runtimeId=5870 +runtimeId=6209 minecraft:polished_blackstone_pressure_plate;redstone_signal=13 blockId=550 -runtimeId=5871 +runtimeId=6210 minecraft:polished_blackstone_pressure_plate;redstone_signal=14 blockId=550 -runtimeId=5872 +runtimeId=6211 minecraft:polished_blackstone_pressure_plate;redstone_signal=15 blockId=550 -runtimeId=5873 +runtimeId=6212 minecraft:polished_blackstone_slab;top_slot_bit=0 blockId=548 -runtimeId=5874 +runtimeId=5942 minecraft:polished_blackstone_slab;top_slot_bit=1 blockId=548 -runtimeId=5875 +runtimeId=5943 minecraft:polished_blackstone_stairs;upside_down_bit=0;weirdo_direction=0 blockId=547 -runtimeId=5876 +runtimeId=4245 minecraft:polished_blackstone_stairs;upside_down_bit=0;weirdo_direction=1 blockId=547 -runtimeId=5877 +runtimeId=4246 minecraft:polished_blackstone_stairs;upside_down_bit=0;weirdo_direction=2 blockId=547 -runtimeId=5878 +runtimeId=4247 minecraft:polished_blackstone_stairs;upside_down_bit=0;weirdo_direction=3 blockId=547 -runtimeId=5879 +runtimeId=4248 minecraft:polished_blackstone_stairs;upside_down_bit=1;weirdo_direction=0 blockId=547 -runtimeId=5880 +runtimeId=4249 minecraft:polished_blackstone_stairs;upside_down_bit=1;weirdo_direction=1 blockId=547 -runtimeId=5881 +runtimeId=4250 minecraft:polished_blackstone_stairs;upside_down_bit=1;weirdo_direction=2 blockId=547 -runtimeId=5882 +runtimeId=4251 minecraft:polished_blackstone_stairs;upside_down_bit=1;weirdo_direction=3 blockId=547 -runtimeId=5883 +runtimeId=4252 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=552 -runtimeId=5884 +runtimeId=6640 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=552 -runtimeId=5886 +runtimeId=6642 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=552 -runtimeId=5888 +runtimeId=6644 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=552 -runtimeId=5938 +runtimeId=6694 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=552 -runtimeId=5940 +runtimeId=6696 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=552 -runtimeId=5942 +runtimeId=6698 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=552 -runtimeId=5992 +runtimeId=6748 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=552 -runtimeId=5994 +runtimeId=6750 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=552 -runtimeId=5996 +runtimeId=6752 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=552 -runtimeId=5902 +runtimeId=6658 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=552 -runtimeId=5904 +runtimeId=6660 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=552 -runtimeId=5906 +runtimeId=6662 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=552 -runtimeId=5956 +runtimeId=6712 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=552 -runtimeId=5958 +runtimeId=6714 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=552 -runtimeId=5960 +runtimeId=6716 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=552 -runtimeId=6010 +runtimeId=6766 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=552 -runtimeId=6012 +runtimeId=6768 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=552 -runtimeId=6014 +runtimeId=6770 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=552 -runtimeId=5920 +runtimeId=6676 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=552 -runtimeId=5922 +runtimeId=6678 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=552 -runtimeId=5924 +runtimeId=6680 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=552 -runtimeId=5974 +runtimeId=6730 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=552 -runtimeId=5976 +runtimeId=6732 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=552 -runtimeId=5978 +runtimeId=6734 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=552 -runtimeId=6028 +runtimeId=6784 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=552 -runtimeId=6030 +runtimeId=6786 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=552 -runtimeId=6032 +runtimeId=6788 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=552 -runtimeId=5885 +runtimeId=6641 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=552 -runtimeId=5887 +runtimeId=6643 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=552 -runtimeId=5889 +runtimeId=6645 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=552 -runtimeId=5939 +runtimeId=6695 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=552 -runtimeId=5941 +runtimeId=6697 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=552 -runtimeId=5943 +runtimeId=6699 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=552 -runtimeId=5993 +runtimeId=6749 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=552 -runtimeId=5995 +runtimeId=6751 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=552 -runtimeId=5997 +runtimeId=6753 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=552 -runtimeId=5903 +runtimeId=6659 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=552 -runtimeId=5905 +runtimeId=6661 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=552 -runtimeId=5907 +runtimeId=6663 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=552 -runtimeId=5957 +runtimeId=6713 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=552 -runtimeId=5959 +runtimeId=6715 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=552 -runtimeId=5961 +runtimeId=6717 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=552 -runtimeId=6011 +runtimeId=6767 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=552 -runtimeId=6013 +runtimeId=6769 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=552 -runtimeId=6015 +runtimeId=6771 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=552 -runtimeId=5921 +runtimeId=6677 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=552 -runtimeId=5923 +runtimeId=6679 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=552 -runtimeId=5925 +runtimeId=6681 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=552 -runtimeId=5975 +runtimeId=6731 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=552 -runtimeId=5977 +runtimeId=6733 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=552 -runtimeId=5979 +runtimeId=6735 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=552 -runtimeId=6029 +runtimeId=6785 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=552 -runtimeId=6031 +runtimeId=6787 minecraft:polished_blackstone_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=552 -runtimeId=6033 +runtimeId=6789 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=552 -runtimeId=5890 +runtimeId=6646 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=552 -runtimeId=5892 +runtimeId=6648 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=552 -runtimeId=5894 +runtimeId=6650 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=552 -runtimeId=5944 +runtimeId=6700 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=552 -runtimeId=5946 +runtimeId=6702 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=552 -runtimeId=5948 +runtimeId=6704 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=552 -runtimeId=5998 +runtimeId=6754 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=552 -runtimeId=6000 +runtimeId=6756 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=552 -runtimeId=6002 +runtimeId=6758 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=552 -runtimeId=5908 +runtimeId=6664 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=552 -runtimeId=5910 +runtimeId=6666 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=552 -runtimeId=5912 +runtimeId=6668 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=552 -runtimeId=5962 +runtimeId=6718 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=552 -runtimeId=5964 +runtimeId=6720 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=552 -runtimeId=5966 +runtimeId=6722 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=552 -runtimeId=6016 +runtimeId=6772 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=552 -runtimeId=6018 +runtimeId=6774 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=552 -runtimeId=6020 +runtimeId=6776 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=552 -runtimeId=5926 +runtimeId=6682 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=552 -runtimeId=5928 +runtimeId=6684 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=552 -runtimeId=5930 +runtimeId=6686 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=552 -runtimeId=5980 +runtimeId=6736 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=552 -runtimeId=5982 +runtimeId=6738 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=552 -runtimeId=5984 +runtimeId=6740 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=552 -runtimeId=6034 +runtimeId=6790 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=552 -runtimeId=6036 +runtimeId=6792 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=552 -runtimeId=6038 +runtimeId=6794 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=552 -runtimeId=5891 +runtimeId=6647 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=552 -runtimeId=5893 +runtimeId=6649 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=552 -runtimeId=5895 +runtimeId=6651 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=552 -runtimeId=5945 +runtimeId=6701 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=552 -runtimeId=5947 +runtimeId=6703 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=552 -runtimeId=5949 +runtimeId=6705 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=552 -runtimeId=5999 +runtimeId=6755 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=552 -runtimeId=6001 +runtimeId=6757 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=552 -runtimeId=6003 +runtimeId=6759 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=552 -runtimeId=5909 +runtimeId=6665 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=552 -runtimeId=5911 +runtimeId=6667 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=552 -runtimeId=5913 +runtimeId=6669 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=552 -runtimeId=5963 +runtimeId=6719 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=552 -runtimeId=5965 +runtimeId=6721 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=552 -runtimeId=5967 +runtimeId=6723 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=552 -runtimeId=6017 +runtimeId=6773 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=552 -runtimeId=6019 +runtimeId=6775 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=552 -runtimeId=6021 +runtimeId=6777 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=552 -runtimeId=5927 +runtimeId=6683 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=552 -runtimeId=5929 +runtimeId=6685 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=552 -runtimeId=5931 +runtimeId=6687 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=552 -runtimeId=5981 +runtimeId=6737 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=552 -runtimeId=5983 +runtimeId=6739 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=552 -runtimeId=5985 +runtimeId=6741 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=552 -runtimeId=6035 +runtimeId=6791 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=552 -runtimeId=6037 +runtimeId=6793 minecraft:polished_blackstone_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=552 -runtimeId=6039 +runtimeId=6795 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=552 -runtimeId=5896 +runtimeId=6652 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=552 -runtimeId=5898 +runtimeId=6654 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=552 -runtimeId=5900 +runtimeId=6656 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=552 -runtimeId=5950 +runtimeId=6706 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=552 -runtimeId=5952 +runtimeId=6708 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=552 -runtimeId=5954 +runtimeId=6710 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=552 -runtimeId=6004 +runtimeId=6760 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=552 -runtimeId=6006 +runtimeId=6762 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=552 -runtimeId=6008 +runtimeId=6764 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=552 -runtimeId=5914 +runtimeId=6670 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=552 -runtimeId=5916 +runtimeId=6672 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=552 -runtimeId=5918 +runtimeId=6674 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=552 -runtimeId=5968 +runtimeId=6724 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=552 -runtimeId=5970 +runtimeId=6726 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=552 -runtimeId=5972 +runtimeId=6728 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=552 -runtimeId=6022 +runtimeId=6778 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=552 -runtimeId=6024 +runtimeId=6780 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=552 -runtimeId=6026 +runtimeId=6782 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=552 -runtimeId=5932 +runtimeId=6688 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=552 -runtimeId=5934 +runtimeId=6690 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=552 -runtimeId=5936 +runtimeId=6692 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=552 -runtimeId=5986 +runtimeId=6742 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=552 -runtimeId=5988 +runtimeId=6744 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=552 -runtimeId=5990 +runtimeId=6746 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=552 -runtimeId=6040 +runtimeId=6796 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=552 -runtimeId=6042 +runtimeId=6798 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=552 -runtimeId=6044 +runtimeId=6800 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=552 -runtimeId=5897 +runtimeId=6653 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=552 -runtimeId=5899 +runtimeId=6655 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=552 -runtimeId=5901 +runtimeId=6657 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=552 -runtimeId=5951 +runtimeId=6707 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=552 -runtimeId=5953 +runtimeId=6709 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=552 -runtimeId=5955 +runtimeId=6711 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=552 -runtimeId=6005 +runtimeId=6761 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=552 -runtimeId=6007 +runtimeId=6763 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=552 -runtimeId=6009 +runtimeId=6765 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=552 -runtimeId=5915 +runtimeId=6671 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=552 -runtimeId=5917 +runtimeId=6673 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=552 -runtimeId=5919 +runtimeId=6675 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=552 -runtimeId=5969 +runtimeId=6725 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=552 -runtimeId=5971 +runtimeId=6727 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=552 -runtimeId=5973 +runtimeId=6729 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=552 -runtimeId=6023 +runtimeId=6779 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=552 -runtimeId=6025 +runtimeId=6781 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=552 -runtimeId=6027 +runtimeId=6783 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=552 -runtimeId=5933 +runtimeId=6689 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=552 -runtimeId=5935 +runtimeId=6691 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=552 -runtimeId=5937 +runtimeId=6693 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=552 -runtimeId=5987 +runtimeId=6743 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=552 -runtimeId=5989 +runtimeId=6745 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=552 -runtimeId=5991 +runtimeId=6747 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=552 -runtimeId=6041 +runtimeId=6797 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=552 -runtimeId=6043 +runtimeId=6799 minecraft:polished_blackstone_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=552 -runtimeId=6045 +runtimeId=6801 minecraft:polished_deepslate blockId=638 -runtimeId=6046 +runtimeId=7696 minecraft:polished_deepslate_double_slab;top_slot_bit=0 blockId=652 -runtimeId=6047 +runtimeId=602 minecraft:polished_deepslate_double_slab;top_slot_bit=1 blockId=652 -runtimeId=6048 +runtimeId=603 minecraft:polished_deepslate_slab;top_slot_bit=0 blockId=639 -runtimeId=6049 +runtimeId=302 minecraft:polished_deepslate_slab;top_slot_bit=1 blockId=639 -runtimeId=6050 +runtimeId=303 minecraft:polished_deepslate_stairs;upside_down_bit=0;weirdo_direction=0 blockId=640 -runtimeId=6051 +runtimeId=308 minecraft:polished_deepslate_stairs;upside_down_bit=0;weirdo_direction=1 blockId=640 -runtimeId=6052 +runtimeId=309 minecraft:polished_deepslate_stairs;upside_down_bit=0;weirdo_direction=2 blockId=640 -runtimeId=6053 +runtimeId=310 minecraft:polished_deepslate_stairs;upside_down_bit=0;weirdo_direction=3 blockId=640 -runtimeId=6054 +runtimeId=311 minecraft:polished_deepslate_stairs;upside_down_bit=1;weirdo_direction=0 blockId=640 -runtimeId=6055 +runtimeId=312 minecraft:polished_deepslate_stairs;upside_down_bit=1;weirdo_direction=1 blockId=640 -runtimeId=6056 +runtimeId=313 minecraft:polished_deepslate_stairs;upside_down_bit=1;weirdo_direction=2 blockId=640 -runtimeId=6057 +runtimeId=314 minecraft:polished_deepslate_stairs;upside_down_bit=1;weirdo_direction=3 blockId=640 -runtimeId=6058 +runtimeId=315 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=641 -runtimeId=6059 +runtimeId=7759 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=641 -runtimeId=6061 +runtimeId=7761 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=641 -runtimeId=6063 +runtimeId=7763 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=641 -runtimeId=6113 +runtimeId=7813 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=641 -runtimeId=6115 +runtimeId=7815 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=641 -runtimeId=6117 +runtimeId=7817 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=641 -runtimeId=6167 +runtimeId=7867 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=641 -runtimeId=6169 +runtimeId=7869 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=641 -runtimeId=6171 +runtimeId=7871 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=641 -runtimeId=6077 +runtimeId=7777 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=641 -runtimeId=6079 +runtimeId=7779 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=641 -runtimeId=6081 +runtimeId=7781 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=641 -runtimeId=6131 +runtimeId=7831 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=641 -runtimeId=6133 +runtimeId=7833 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=641 -runtimeId=6135 +runtimeId=7835 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=641 -runtimeId=6185 +runtimeId=7885 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=641 -runtimeId=6187 +runtimeId=7887 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=641 -runtimeId=6189 +runtimeId=7889 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=641 -runtimeId=6095 +runtimeId=7795 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=641 -runtimeId=6097 +runtimeId=7797 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=641 -runtimeId=6099 +runtimeId=7799 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=641 -runtimeId=6149 +runtimeId=7849 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=641 -runtimeId=6151 +runtimeId=7851 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=641 -runtimeId=6153 +runtimeId=7853 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=641 -runtimeId=6203 +runtimeId=7903 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=641 -runtimeId=6205 +runtimeId=7905 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=641 -runtimeId=6207 +runtimeId=7907 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=641 -runtimeId=6060 +runtimeId=7760 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=641 -runtimeId=6062 +runtimeId=7762 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=641 -runtimeId=6064 +runtimeId=7764 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=641 -runtimeId=6114 +runtimeId=7814 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=641 -runtimeId=6116 +runtimeId=7816 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=641 -runtimeId=6118 +runtimeId=7818 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=641 -runtimeId=6168 +runtimeId=7868 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=641 -runtimeId=6170 +runtimeId=7870 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=641 -runtimeId=6172 +runtimeId=7872 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=641 -runtimeId=6078 +runtimeId=7778 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=641 -runtimeId=6080 +runtimeId=7780 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=641 -runtimeId=6082 +runtimeId=7782 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=641 -runtimeId=6132 +runtimeId=7832 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=641 -runtimeId=6134 +runtimeId=7834 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=641 -runtimeId=6136 +runtimeId=7836 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=641 -runtimeId=6186 +runtimeId=7886 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=641 -runtimeId=6188 +runtimeId=7888 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=641 -runtimeId=6190 +runtimeId=7890 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=641 -runtimeId=6096 +runtimeId=7796 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=641 -runtimeId=6098 +runtimeId=7798 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=641 -runtimeId=6100 +runtimeId=7800 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=641 -runtimeId=6150 +runtimeId=7850 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=641 -runtimeId=6152 +runtimeId=7852 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=641 -runtimeId=6154 +runtimeId=7854 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=641 -runtimeId=6204 +runtimeId=7904 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=641 -runtimeId=6206 +runtimeId=7906 minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=641 -runtimeId=6208 +runtimeId=7908 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=641 -runtimeId=6065 +runtimeId=7765 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=641 -runtimeId=6067 +runtimeId=7767 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=641 -runtimeId=6069 +runtimeId=7769 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=641 -runtimeId=6119 +runtimeId=7819 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=641 -runtimeId=6121 +runtimeId=7821 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=641 -runtimeId=6123 +runtimeId=7823 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=641 -runtimeId=6173 +runtimeId=7873 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=641 -runtimeId=6175 +runtimeId=7875 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=641 -runtimeId=6177 +runtimeId=7877 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=641 -runtimeId=6083 +runtimeId=7783 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=641 -runtimeId=6085 +runtimeId=7785 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=641 -runtimeId=6087 +runtimeId=7787 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=641 -runtimeId=6137 +runtimeId=7837 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=641 -runtimeId=6139 +runtimeId=7839 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=641 -runtimeId=6141 +runtimeId=7841 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=641 -runtimeId=6191 +runtimeId=7891 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=641 -runtimeId=6193 +runtimeId=7893 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=641 -runtimeId=6195 +runtimeId=7895 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=641 -runtimeId=6101 +runtimeId=7801 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=641 -runtimeId=6103 +runtimeId=7803 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=641 -runtimeId=6105 +runtimeId=7805 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=641 -runtimeId=6155 +runtimeId=7855 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=641 -runtimeId=6157 +runtimeId=7857 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=641 -runtimeId=6159 +runtimeId=7859 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=641 -runtimeId=6209 +runtimeId=7909 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=641 -runtimeId=6211 +runtimeId=7911 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=641 -runtimeId=6213 +runtimeId=7913 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=641 -runtimeId=6066 +runtimeId=7766 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=641 -runtimeId=6068 +runtimeId=7768 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=641 -runtimeId=6070 +runtimeId=7770 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=641 -runtimeId=6120 +runtimeId=7820 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=641 -runtimeId=6122 +runtimeId=7822 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=641 -runtimeId=6124 +runtimeId=7824 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=641 -runtimeId=6174 +runtimeId=7874 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=641 -runtimeId=6176 +runtimeId=7876 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=641 -runtimeId=6178 +runtimeId=7878 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=641 -runtimeId=6084 +runtimeId=7784 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=641 -runtimeId=6086 +runtimeId=7786 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=641 -runtimeId=6088 +runtimeId=7788 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=641 -runtimeId=6138 +runtimeId=7838 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=641 -runtimeId=6140 +runtimeId=7840 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=641 -runtimeId=6142 +runtimeId=7842 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=641 -runtimeId=6192 +runtimeId=7892 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=641 -runtimeId=6194 +runtimeId=7894 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=641 -runtimeId=6196 +runtimeId=7896 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=641 -runtimeId=6102 +runtimeId=7802 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=641 -runtimeId=6104 +runtimeId=7804 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=641 -runtimeId=6106 +runtimeId=7806 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=641 -runtimeId=6156 +runtimeId=7856 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=641 -runtimeId=6158 +runtimeId=7858 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=641 -runtimeId=6160 +runtimeId=7860 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=641 -runtimeId=6210 +runtimeId=7910 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=641 -runtimeId=6212 +runtimeId=7912 minecraft:polished_deepslate_wall;wall_connection_type_east=short;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=641 -runtimeId=6214 +runtimeId=7914 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=641 -runtimeId=6071 +runtimeId=7771 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=641 -runtimeId=6073 +runtimeId=7773 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=641 -runtimeId=6075 +runtimeId=7775 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=641 -runtimeId=6125 +runtimeId=7825 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=641 -runtimeId=6127 +runtimeId=7827 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=641 -runtimeId=6129 +runtimeId=7829 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=641 -runtimeId=6179 +runtimeId=7879 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=641 -runtimeId=6181 +runtimeId=7881 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=641 -runtimeId=6183 +runtimeId=7883 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=641 -runtimeId=6089 +runtimeId=7789 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=641 -runtimeId=6091 +runtimeId=7791 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=641 -runtimeId=6093 +runtimeId=7793 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=641 -runtimeId=6143 +runtimeId=7843 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=641 -runtimeId=6145 +runtimeId=7845 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=641 -runtimeId=6147 +runtimeId=7847 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=641 -runtimeId=6197 +runtimeId=7897 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=641 -runtimeId=6199 +runtimeId=7899 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=641 -runtimeId=6201 +runtimeId=7901 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=641 -runtimeId=6107 +runtimeId=7807 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=641 -runtimeId=6109 +runtimeId=7809 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=641 -runtimeId=6111 +runtimeId=7811 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=641 -runtimeId=6161 +runtimeId=7861 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=641 -runtimeId=6163 +runtimeId=7863 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=641 -runtimeId=6165 +runtimeId=7865 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=641 -runtimeId=6215 +runtimeId=7915 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=641 -runtimeId=6217 +runtimeId=7917 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=0;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=641 -runtimeId=6219 +runtimeId=7919 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=none blockId=641 -runtimeId=6072 +runtimeId=7772 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=short blockId=641 -runtimeId=6074 +runtimeId=7774 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=none;wall_connection_type_north=tall blockId=641 -runtimeId=6076 +runtimeId=7776 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=none blockId=641 -runtimeId=6126 +runtimeId=7826 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=short blockId=641 -runtimeId=6128 +runtimeId=7828 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=short;wall_connection_type_north=tall blockId=641 -runtimeId=6130 +runtimeId=7830 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=none blockId=641 -runtimeId=6180 +runtimeId=7880 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=short blockId=641 -runtimeId=6182 +runtimeId=7882 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=none;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=641 -runtimeId=6184 +runtimeId=7884 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=none blockId=641 -runtimeId=6090 +runtimeId=7790 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=short blockId=641 -runtimeId=6092 +runtimeId=7792 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=none;wall_connection_type_north=tall blockId=641 -runtimeId=6094 +runtimeId=7794 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=none blockId=641 -runtimeId=6144 +runtimeId=7844 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=short blockId=641 -runtimeId=6146 +runtimeId=7846 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=short;wall_connection_type_north=tall blockId=641 -runtimeId=6148 +runtimeId=7848 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=none blockId=641 -runtimeId=6198 +runtimeId=7898 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=short blockId=641 -runtimeId=6200 +runtimeId=7900 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=short;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=641 -runtimeId=6202 +runtimeId=7902 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=none blockId=641 -runtimeId=6108 +runtimeId=7808 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=short blockId=641 -runtimeId=6110 +runtimeId=7810 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=none;wall_connection_type_north=tall blockId=641 -runtimeId=6112 +runtimeId=7812 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=none blockId=641 -runtimeId=6162 +runtimeId=7862 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=short blockId=641 -runtimeId=6164 +runtimeId=7864 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=short;wall_connection_type_north=tall blockId=641 -runtimeId=6166 +runtimeId=7866 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=none blockId=641 -runtimeId=6216 +runtimeId=7916 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=short blockId=641 -runtimeId=6218 +runtimeId=7918 minecraft:polished_deepslate_wall;wall_connection_type_east=tall;wall_post_bit=1;wall_connection_type_south=tall;wall_connection_type_west=tall;wall_connection_type_north=tall blockId=641 -runtimeId=6220 +runtimeId=7920 minecraft:polished_diorite_stairs;upside_down_bit=0;weirdo_direction=0 blockId=428 -runtimeId=6221 +runtimeId=6588 minecraft:polished_diorite_stairs;upside_down_bit=0;weirdo_direction=1 blockId=428 -runtimeId=6222 +runtimeId=6589 minecraft:polished_diorite_stairs;upside_down_bit=0;weirdo_direction=2 blockId=428 -runtimeId=6223 +runtimeId=6590 minecraft:polished_diorite_stairs;upside_down_bit=0;weirdo_direction=3 blockId=428 -runtimeId=6224 +runtimeId=6591 minecraft:polished_diorite_stairs;upside_down_bit=1;weirdo_direction=0 blockId=428 -runtimeId=6225 +runtimeId=6592 minecraft:polished_diorite_stairs;upside_down_bit=1;weirdo_direction=1 blockId=428 -runtimeId=6226 +runtimeId=6593 minecraft:polished_diorite_stairs;upside_down_bit=1;weirdo_direction=2 blockId=428 -runtimeId=6227 +runtimeId=6594 minecraft:polished_diorite_stairs;upside_down_bit=1;weirdo_direction=3 blockId=428 -runtimeId=6228 +runtimeId=6595 minecraft:polished_granite_stairs;upside_down_bit=0;weirdo_direction=0 blockId=427 -runtimeId=6229 +runtimeId=4139 minecraft:polished_granite_stairs;upside_down_bit=0;weirdo_direction=1 blockId=427 -runtimeId=6230 +runtimeId=4140 minecraft:polished_granite_stairs;upside_down_bit=0;weirdo_direction=2 blockId=427 -runtimeId=6231 +runtimeId=4141 minecraft:polished_granite_stairs;upside_down_bit=0;weirdo_direction=3 blockId=427 -runtimeId=6232 +runtimeId=4142 minecraft:polished_granite_stairs;upside_down_bit=1;weirdo_direction=0 blockId=427 -runtimeId=6233 +runtimeId=4143 minecraft:polished_granite_stairs;upside_down_bit=1;weirdo_direction=1 blockId=427 -runtimeId=6234 +runtimeId=4144 minecraft:polished_granite_stairs;upside_down_bit=1;weirdo_direction=2 blockId=427 -runtimeId=6235 +runtimeId=4145 minecraft:polished_granite_stairs;upside_down_bit=1;weirdo_direction=3 blockId=427 -runtimeId=6236 +runtimeId=4146 minecraft:portal;portal_axis=unknown blockId=90 -runtimeId=6237 +runtimeId=7705 minecraft:portal;portal_axis=x blockId=90 -runtimeId=6238 +runtimeId=7706 minecraft:portal;portal_axis=z blockId=90 -runtimeId=6239 +runtimeId=7707 minecraft:potatoes;growth=0 blockId=142 -runtimeId=6240 +runtimeId=351 minecraft:potatoes;growth=1 blockId=142 -runtimeId=6241 +runtimeId=352 minecraft:potatoes;growth=2 blockId=142 -runtimeId=6242 +runtimeId=353 minecraft:potatoes;growth=3 blockId=142 -runtimeId=6243 +runtimeId=354 minecraft:potatoes;growth=4 blockId=142 -runtimeId=6244 +runtimeId=355 minecraft:potatoes;growth=5 blockId=142 -runtimeId=6245 +runtimeId=356 minecraft:potatoes;growth=6 blockId=142 -runtimeId=6246 +runtimeId=357 minecraft:potatoes;growth=7 blockId=142 -runtimeId=6247 +runtimeId=358 minecraft:powder_snow blockId=561 -runtimeId=6248 +runtimeId=92 minecraft:powered_comparator;output_subtract_bit=0;output_lit_bit=0;direction=0 blockId=150 -runtimeId=6249 +runtimeId=380 minecraft:powered_comparator;output_subtract_bit=0;output_lit_bit=0;direction=1 blockId=150 -runtimeId=6250 +runtimeId=381 minecraft:powered_comparator;output_subtract_bit=0;output_lit_bit=0;direction=2 blockId=150 -runtimeId=6251 +runtimeId=382 minecraft:powered_comparator;output_subtract_bit=0;output_lit_bit=0;direction=3 blockId=150 -runtimeId=6252 +runtimeId=383 minecraft:powered_comparator;output_subtract_bit=0;output_lit_bit=1;direction=0 blockId=150 -runtimeId=6257 +runtimeId=388 minecraft:powered_comparator;output_subtract_bit=0;output_lit_bit=1;direction=1 blockId=150 -runtimeId=6258 +runtimeId=389 minecraft:powered_comparator;output_subtract_bit=0;output_lit_bit=1;direction=2 blockId=150 -runtimeId=6259 +runtimeId=390 minecraft:powered_comparator;output_subtract_bit=0;output_lit_bit=1;direction=3 blockId=150 -runtimeId=6260 +runtimeId=391 minecraft:powered_comparator;output_subtract_bit=1;output_lit_bit=0;direction=0 blockId=150 -runtimeId=6253 +runtimeId=384 minecraft:powered_comparator;output_subtract_bit=1;output_lit_bit=0;direction=1 blockId=150 -runtimeId=6254 +runtimeId=385 minecraft:powered_comparator;output_subtract_bit=1;output_lit_bit=0;direction=2 blockId=150 -runtimeId=6255 +runtimeId=386 minecraft:powered_comparator;output_subtract_bit=1;output_lit_bit=0;direction=3 blockId=150 -runtimeId=6256 +runtimeId=387 minecraft:powered_comparator;output_subtract_bit=1;output_lit_bit=1;direction=0 blockId=150 -runtimeId=6261 +runtimeId=392 minecraft:powered_comparator;output_subtract_bit=1;output_lit_bit=1;direction=1 blockId=150 -runtimeId=6262 +runtimeId=393 minecraft:powered_comparator;output_subtract_bit=1;output_lit_bit=1;direction=2 blockId=150 -runtimeId=6263 +runtimeId=394 minecraft:powered_comparator;output_subtract_bit=1;output_lit_bit=1;direction=3 blockId=150 -runtimeId=6264 +runtimeId=395 minecraft:powered_repeater;repeater_delay=0;direction=0 blockId=94 -runtimeId=6265 +runtimeId=4485 minecraft:powered_repeater;repeater_delay=0;direction=1 blockId=94 -runtimeId=6266 +runtimeId=4486 minecraft:powered_repeater;repeater_delay=0;direction=2 blockId=94 -runtimeId=6267 +runtimeId=4487 minecraft:powered_repeater;repeater_delay=0;direction=3 blockId=94 -runtimeId=6268 +runtimeId=4488 minecraft:powered_repeater;repeater_delay=1;direction=0 blockId=94 -runtimeId=6269 +runtimeId=4489 minecraft:powered_repeater;repeater_delay=1;direction=1 blockId=94 -runtimeId=6270 +runtimeId=4490 minecraft:powered_repeater;repeater_delay=1;direction=2 blockId=94 -runtimeId=6271 +runtimeId=4491 minecraft:powered_repeater;repeater_delay=1;direction=3 blockId=94 -runtimeId=6272 +runtimeId=4492 minecraft:powered_repeater;repeater_delay=2;direction=0 blockId=94 -runtimeId=6273 +runtimeId=4493 minecraft:powered_repeater;repeater_delay=2;direction=1 blockId=94 -runtimeId=6274 +runtimeId=4494 minecraft:powered_repeater;repeater_delay=2;direction=2 blockId=94 -runtimeId=6275 +runtimeId=4495 minecraft:powered_repeater;repeater_delay=2;direction=3 blockId=94 -runtimeId=6276 +runtimeId=4496 minecraft:powered_repeater;repeater_delay=3;direction=0 blockId=94 -runtimeId=6277 +runtimeId=4497 minecraft:powered_repeater;repeater_delay=3;direction=1 blockId=94 -runtimeId=6278 +runtimeId=4498 minecraft:powered_repeater;repeater_delay=3;direction=2 blockId=94 -runtimeId=6279 +runtimeId=4499 minecraft:powered_repeater;repeater_delay=3;direction=3 blockId=94 -runtimeId=6280 +runtimeId=4500 minecraft:prismarine;prismarine_block_type=bricks blockId=168 -runtimeId=6283 +runtimeId=6011 minecraft:prismarine;prismarine_block_type=dark blockId=168 -runtimeId=6282 +runtimeId=6010 minecraft:prismarine;prismarine_block_type=default blockId=168 -runtimeId=6281 +runtimeId=6009 minecraft:prismarine_bricks_stairs;upside_down_bit=0;weirdo_direction=0 blockId=259 -runtimeId=6284 +runtimeId=206 minecraft:prismarine_bricks_stairs;upside_down_bit=0;weirdo_direction=1 blockId=259 -runtimeId=6285 +runtimeId=207 minecraft:prismarine_bricks_stairs;upside_down_bit=0;weirdo_direction=2 blockId=259 -runtimeId=6286 +runtimeId=208 minecraft:prismarine_bricks_stairs;upside_down_bit=0;weirdo_direction=3 blockId=259 -runtimeId=6287 +runtimeId=209 minecraft:prismarine_bricks_stairs;upside_down_bit=1;weirdo_direction=0 blockId=259 -runtimeId=6288 +runtimeId=210 minecraft:prismarine_bricks_stairs;upside_down_bit=1;weirdo_direction=1 blockId=259 -runtimeId=6289 +runtimeId=211 minecraft:prismarine_bricks_stairs;upside_down_bit=1;weirdo_direction=2 blockId=259 -runtimeId=6290 +runtimeId=212 minecraft:prismarine_bricks_stairs;upside_down_bit=1;weirdo_direction=3 blockId=259 -runtimeId=6291 +runtimeId=213 minecraft:prismarine_stairs;upside_down_bit=0;weirdo_direction=0 blockId=257 -runtimeId=6292 +runtimeId=7205 minecraft:prismarine_stairs;upside_down_bit=0;weirdo_direction=1 blockId=257 -runtimeId=6293 +runtimeId=7206 minecraft:prismarine_stairs;upside_down_bit=0;weirdo_direction=2 blockId=257 -runtimeId=6294 +runtimeId=7207 minecraft:prismarine_stairs;upside_down_bit=0;weirdo_direction=3 blockId=257 -runtimeId=6295 +runtimeId=7208 minecraft:prismarine_stairs;upside_down_bit=1;weirdo_direction=0 blockId=257 -runtimeId=6296 +runtimeId=7209 minecraft:prismarine_stairs;upside_down_bit=1;weirdo_direction=1 blockId=257 -runtimeId=6297 +runtimeId=7210 minecraft:prismarine_stairs;upside_down_bit=1;weirdo_direction=2 blockId=257 -runtimeId=6298 +runtimeId=7211 minecraft:prismarine_stairs;upside_down_bit=1;weirdo_direction=3 blockId=257 -runtimeId=6299 +runtimeId=7212 minecraft:pumpkin;direction=0 blockId=86 -runtimeId=6300 +runtimeId=4509 minecraft:pumpkin;direction=1 blockId=86 -runtimeId=6301 +runtimeId=4510 minecraft:pumpkin;direction=2 blockId=86 -runtimeId=6302 +runtimeId=4511 minecraft:pumpkin;direction=3 blockId=86 -runtimeId=6303 +runtimeId=4512 minecraft:pumpkin_stem;facing_direction=0;growth=0 blockId=104 -runtimeId=6304 +runtimeId=6256 minecraft:pumpkin_stem;facing_direction=0;growth=1 blockId=104 -runtimeId=6305 +runtimeId=6257 minecraft:pumpkin_stem;facing_direction=0;growth=2 blockId=104 -runtimeId=6306 +runtimeId=6258 minecraft:pumpkin_stem;facing_direction=0;growth=3 blockId=104 -runtimeId=6307 +runtimeId=6259 minecraft:pumpkin_stem;facing_direction=0;growth=4 blockId=104 -runtimeId=6308 +runtimeId=6260 minecraft:pumpkin_stem;facing_direction=0;growth=5 blockId=104 -runtimeId=6309 +runtimeId=6261 minecraft:pumpkin_stem;facing_direction=0;growth=6 blockId=104 -runtimeId=6310 +runtimeId=6262 minecraft:pumpkin_stem;facing_direction=0;growth=7 blockId=104 -runtimeId=6311 +runtimeId=6263 minecraft:pumpkin_stem;facing_direction=1;growth=0 blockId=104 -runtimeId=6312 +runtimeId=6264 minecraft:pumpkin_stem;facing_direction=1;growth=1 blockId=104 -runtimeId=6313 +runtimeId=6265 minecraft:pumpkin_stem;facing_direction=1;growth=2 blockId=104 -runtimeId=6314 +runtimeId=6266 minecraft:pumpkin_stem;facing_direction=1;growth=3 blockId=104 -runtimeId=6315 +runtimeId=6267 minecraft:pumpkin_stem;facing_direction=1;growth=4 blockId=104 -runtimeId=6316 +runtimeId=6268 minecraft:pumpkin_stem;facing_direction=1;growth=5 blockId=104 -runtimeId=6317 +runtimeId=6269 minecraft:pumpkin_stem;facing_direction=1;growth=6 blockId=104 -runtimeId=6318 +runtimeId=6270 minecraft:pumpkin_stem;facing_direction=1;growth=7 blockId=104 -runtimeId=6319 +runtimeId=6271 minecraft:pumpkin_stem;facing_direction=2;growth=0 blockId=104 -runtimeId=6320 +runtimeId=6272 minecraft:pumpkin_stem;facing_direction=2;growth=1 blockId=104 -runtimeId=6321 +runtimeId=6273 minecraft:pumpkin_stem;facing_direction=2;growth=2 blockId=104 -runtimeId=6322 +runtimeId=6274 minecraft:pumpkin_stem;facing_direction=2;growth=3 blockId=104 -runtimeId=6323 +runtimeId=6275 minecraft:pumpkin_stem;facing_direction=2;growth=4 blockId=104 -runtimeId=6324 +runtimeId=6276 minecraft:pumpkin_stem;facing_direction=2;growth=5 blockId=104 -runtimeId=6325 +runtimeId=6277 minecraft:pumpkin_stem;facing_direction=2;growth=6 blockId=104 -runtimeId=6326 +runtimeId=6278 minecraft:pumpkin_stem;facing_direction=2;growth=7 blockId=104 -runtimeId=6327 +runtimeId=6279 minecraft:pumpkin_stem;facing_direction=3;growth=0 blockId=104 -runtimeId=6328 +runtimeId=6280 minecraft:pumpkin_stem;facing_direction=3;growth=1 blockId=104 -runtimeId=6329 +runtimeId=6281 minecraft:pumpkin_stem;facing_direction=3;growth=2 blockId=104 -runtimeId=6330 +runtimeId=6282 minecraft:pumpkin_stem;facing_direction=3;growth=3 blockId=104 -runtimeId=6331 +runtimeId=6283 minecraft:pumpkin_stem;facing_direction=3;growth=4 blockId=104 -runtimeId=6332 +runtimeId=6284 minecraft:pumpkin_stem;facing_direction=3;growth=5 blockId=104 -runtimeId=6333 +runtimeId=6285 minecraft:pumpkin_stem;facing_direction=3;growth=6 blockId=104 -runtimeId=6334 +runtimeId=6286 minecraft:pumpkin_stem;facing_direction=3;growth=7 blockId=104 -runtimeId=6335 +runtimeId=6287 minecraft:pumpkin_stem;facing_direction=4;growth=0 blockId=104 -runtimeId=6336 +runtimeId=6288 minecraft:pumpkin_stem;facing_direction=4;growth=1 blockId=104 -runtimeId=6337 +runtimeId=6289 minecraft:pumpkin_stem;facing_direction=4;growth=2 blockId=104 -runtimeId=6338 +runtimeId=6290 minecraft:pumpkin_stem;facing_direction=4;growth=3 blockId=104 -runtimeId=6339 +runtimeId=6291 minecraft:pumpkin_stem;facing_direction=4;growth=4 blockId=104 -runtimeId=6340 +runtimeId=6292 minecraft:pumpkin_stem;facing_direction=4;growth=5 blockId=104 -runtimeId=6341 +runtimeId=6293 minecraft:pumpkin_stem;facing_direction=4;growth=6 blockId=104 -runtimeId=6342 +runtimeId=6294 minecraft:pumpkin_stem;facing_direction=4;growth=7 blockId=104 -runtimeId=6343 +runtimeId=6295 minecraft:pumpkin_stem;facing_direction=5;growth=0 blockId=104 -runtimeId=6344 +runtimeId=6296 minecraft:pumpkin_stem;facing_direction=5;growth=1 blockId=104 -runtimeId=6345 +runtimeId=6297 minecraft:pumpkin_stem;facing_direction=5;growth=2 blockId=104 -runtimeId=6346 +runtimeId=6298 minecraft:pumpkin_stem;facing_direction=5;growth=3 blockId=104 -runtimeId=6347 +runtimeId=6299 minecraft:pumpkin_stem;facing_direction=5;growth=4 blockId=104 -runtimeId=6348 +runtimeId=6300 minecraft:pumpkin_stem;facing_direction=5;growth=5 blockId=104 -runtimeId=6349 +runtimeId=6301 minecraft:pumpkin_stem;facing_direction=5;growth=6 blockId=104 -runtimeId=6350 +runtimeId=6302 minecraft:pumpkin_stem;facing_direction=5;growth=7 blockId=104 -runtimeId=6351 +runtimeId=6303 + +minecraft:purple_candle;lit=0;candles=0 +blockId=678 +runtimeId=6992 + +minecraft:purple_candle;lit=0;candles=1 +blockId=678 +runtimeId=6993 + +minecraft:purple_candle;lit=0;candles=2 +blockId=678 +runtimeId=6994 + +minecraft:purple_candle;lit=0;candles=3 +blockId=678 +runtimeId=6995 + +minecraft:purple_candle;lit=1;candles=0 +blockId=678 +runtimeId=6996 + +minecraft:purple_candle;lit=1;candles=1 +blockId=678 +runtimeId=6997 + +minecraft:purple_candle;lit=1;candles=2 +blockId=678 +runtimeId=6998 + +minecraft:purple_candle;lit=1;candles=3 +blockId=678 +runtimeId=6999 + +minecraft:purple_candle_cake;lit=0 +blockId=695 +runtimeId=6585 + +minecraft:purple_candle_cake;lit=1 +blockId=695 +runtimeId=6586 minecraft:purple_glazed_terracotta;facing_direction=0 blockId=219 -runtimeId=6352 +runtimeId=6965 minecraft:purple_glazed_terracotta;facing_direction=1 blockId=219 -runtimeId=6353 +runtimeId=6966 minecraft:purple_glazed_terracotta;facing_direction=2 blockId=219 -runtimeId=6354 +runtimeId=6967 minecraft:purple_glazed_terracotta;facing_direction=3 blockId=219 -runtimeId=6355 +runtimeId=6968 minecraft:purple_glazed_terracotta;facing_direction=4 blockId=219 -runtimeId=6356 +runtimeId=6969 minecraft:purple_glazed_terracotta;facing_direction=5 blockId=219 -runtimeId=6357 +runtimeId=6970 minecraft:purpur_block;chisel_type=chiseled;pillar_axis=x blockId=201 -runtimeId=6363 +runtimeId=7661 minecraft:purpur_block;chisel_type=chiseled;pillar_axis=y blockId=201 -runtimeId=6359 +runtimeId=7657 minecraft:purpur_block;chisel_type=chiseled;pillar_axis=z blockId=201 -runtimeId=6367 +runtimeId=7665 minecraft:purpur_block;chisel_type=default;pillar_axis=x blockId=201 -runtimeId=6362 +runtimeId=7660 minecraft:purpur_block;chisel_type=default;pillar_axis=y blockId=201 -runtimeId=6358 +runtimeId=7656 minecraft:purpur_block;chisel_type=default;pillar_axis=z blockId=201 -runtimeId=6366 +runtimeId=7664 minecraft:purpur_block;chisel_type=lines;pillar_axis=x blockId=201 -runtimeId=6364 +runtimeId=7662 minecraft:purpur_block;chisel_type=lines;pillar_axis=y blockId=201 -runtimeId=6360 +runtimeId=7658 minecraft:purpur_block;chisel_type=lines;pillar_axis=z blockId=201 -runtimeId=6368 +runtimeId=7666 minecraft:purpur_block;chisel_type=smooth;pillar_axis=x blockId=201 -runtimeId=6365 +runtimeId=7663 minecraft:purpur_block;chisel_type=smooth;pillar_axis=y blockId=201 -runtimeId=6361 +runtimeId=7659 minecraft:purpur_block;chisel_type=smooth;pillar_axis=z blockId=201 -runtimeId=6369 +runtimeId=7667 minecraft:purpur_stairs;upside_down_bit=0;weirdo_direction=0 blockId=203 -runtimeId=6370 +runtimeId=7697 minecraft:purpur_stairs;upside_down_bit=0;weirdo_direction=1 blockId=203 -runtimeId=6371 +runtimeId=7698 minecraft:purpur_stairs;upside_down_bit=0;weirdo_direction=2 blockId=203 -runtimeId=6372 +runtimeId=7699 minecraft:purpur_stairs;upside_down_bit=0;weirdo_direction=3 blockId=203 -runtimeId=6373 +runtimeId=7700 minecraft:purpur_stairs;upside_down_bit=1;weirdo_direction=0 blockId=203 -runtimeId=6374 +runtimeId=7701 minecraft:purpur_stairs;upside_down_bit=1;weirdo_direction=1 blockId=203 -runtimeId=6375 +runtimeId=7702 minecraft:purpur_stairs;upside_down_bit=1;weirdo_direction=2 blockId=203 -runtimeId=6376 +runtimeId=7703 minecraft:purpur_stairs;upside_down_bit=1;weirdo_direction=3 blockId=203 -runtimeId=6377 +runtimeId=7704 minecraft:quartz_block;chisel_type=chiseled;pillar_axis=x blockId=155 -runtimeId=6383 +runtimeId=3706 minecraft:quartz_block;chisel_type=chiseled;pillar_axis=y blockId=155 -runtimeId=6379 +runtimeId=3702 minecraft:quartz_block;chisel_type=chiseled;pillar_axis=z blockId=155 -runtimeId=6387 +runtimeId=3710 minecraft:quartz_block;chisel_type=default;pillar_axis=x blockId=155 -runtimeId=6382 +runtimeId=3705 minecraft:quartz_block;chisel_type=default;pillar_axis=y blockId=155 -runtimeId=6378 +runtimeId=3701 minecraft:quartz_block;chisel_type=default;pillar_axis=z blockId=155 -runtimeId=6386 +runtimeId=3709 minecraft:quartz_block;chisel_type=lines;pillar_axis=x blockId=155 -runtimeId=6384 +runtimeId=3707 minecraft:quartz_block;chisel_type=lines;pillar_axis=y blockId=155 -runtimeId=6380 +runtimeId=3703 minecraft:quartz_block;chisel_type=lines;pillar_axis=z blockId=155 -runtimeId=6388 +runtimeId=3711 minecraft:quartz_block;chisel_type=smooth;pillar_axis=x blockId=155 -runtimeId=6385 +runtimeId=3708 minecraft:quartz_block;chisel_type=smooth;pillar_axis=y blockId=155 -runtimeId=6381 +runtimeId=3704 minecraft:quartz_block;chisel_type=smooth;pillar_axis=z blockId=155 -runtimeId=6389 +runtimeId=3712 minecraft:quartz_bricks blockId=559 -runtimeId=6390 +runtimeId=6316 minecraft:quartz_ore blockId=153 -runtimeId=6391 +runtimeId=4433 minecraft:quartz_stairs;upside_down_bit=0;weirdo_direction=0 blockId=156 -runtimeId=6392 +runtimeId=4723 minecraft:quartz_stairs;upside_down_bit=0;weirdo_direction=1 blockId=156 -runtimeId=6393 +runtimeId=4724 minecraft:quartz_stairs;upside_down_bit=0;weirdo_direction=2 blockId=156 -runtimeId=6394 +runtimeId=4725 minecraft:quartz_stairs;upside_down_bit=0;weirdo_direction=3 blockId=156 -runtimeId=6395 +runtimeId=4726 minecraft:quartz_stairs;upside_down_bit=1;weirdo_direction=0 blockId=156 -runtimeId=6396 +runtimeId=4727 minecraft:quartz_stairs;upside_down_bit=1;weirdo_direction=1 blockId=156 -runtimeId=6397 +runtimeId=4728 minecraft:quartz_stairs;upside_down_bit=1;weirdo_direction=2 blockId=156 -runtimeId=6398 +runtimeId=4729 minecraft:quartz_stairs;upside_down_bit=1;weirdo_direction=3 blockId=156 -runtimeId=6399 +runtimeId=4730 minecraft:rail;rail_direction=0 blockId=66 -runtimeId=6400 +runtimeId=3909 minecraft:rail;rail_direction=1 blockId=66 -runtimeId=6401 +runtimeId=3910 minecraft:rail;rail_direction=2 blockId=66 -runtimeId=6402 +runtimeId=3911 minecraft:rail;rail_direction=3 blockId=66 -runtimeId=6403 +runtimeId=3912 minecraft:rail;rail_direction=4 blockId=66 -runtimeId=6404 +runtimeId=3913 minecraft:rail;rail_direction=5 blockId=66 -runtimeId=6405 +runtimeId=3914 minecraft:rail;rail_direction=6 blockId=66 -runtimeId=6406 +runtimeId=3915 minecraft:rail;rail_direction=7 blockId=66 -runtimeId=6407 +runtimeId=3916 + +minecraft:rail;rail_direction=8 +blockId=66 +runtimeId=3917 + +minecraft:rail;rail_direction=9 +blockId=66 +runtimeId=3918 + +minecraft:raw_copper_block +blockId=707 +runtimeId=5219 + +minecraft:raw_gold_block +blockId=708 +runtimeId=371 + +minecraft:raw_iron_block +blockId=706 +runtimeId=8202 + +minecraft:red_candle;lit=0;candles=0 +blockId=682 +runtimeId=4637 + +minecraft:red_candle;lit=0;candles=1 +blockId=682 +runtimeId=4638 + +minecraft:red_candle;lit=0;candles=2 +blockId=682 +runtimeId=4639 + +minecraft:red_candle;lit=0;candles=3 +blockId=682 +runtimeId=4640 + +minecraft:red_candle;lit=1;candles=0 +blockId=682 +runtimeId=4641 -minecraft:rail;rail_direction=8 -blockId=66 -runtimeId=6408 +minecraft:red_candle;lit=1;candles=1 +blockId=682 +runtimeId=4642 -minecraft:rail;rail_direction=9 -blockId=66 -runtimeId=6409 +minecraft:red_candle;lit=1;candles=2 +blockId=682 +runtimeId=4643 -minecraft:raw_copper_block -blockId=707 -runtimeId=6410 +minecraft:red_candle;lit=1;candles=3 +blockId=682 +runtimeId=4644 -minecraft:raw_gold_block -blockId=708 -runtimeId=6411 +minecraft:red_candle_cake;lit=0 +blockId=699 +runtimeId=7650 -minecraft:raw_iron_block -blockId=706 -runtimeId=6412 +minecraft:red_candle_cake;lit=1 +blockId=699 +runtimeId=7651 minecraft:red_flower;flower_type=allium blockId=38 -runtimeId=6415 +runtimeId=3623 minecraft:red_flower;flower_type=cornflower blockId=38 -runtimeId=6422 +runtimeId=3630 minecraft:red_flower;flower_type=houstonia blockId=38 -runtimeId=6416 +runtimeId=3624 minecraft:red_flower;flower_type=lily_of_the_valley blockId=38 -runtimeId=6423 +runtimeId=3631 minecraft:red_flower;flower_type=orchid blockId=38 -runtimeId=6414 +runtimeId=3622 minecraft:red_flower;flower_type=oxeye blockId=38 -runtimeId=6421 +runtimeId=3629 minecraft:red_flower;flower_type=poppy blockId=38 -runtimeId=6413 +runtimeId=3621 minecraft:red_flower;flower_type=tulip_orange blockId=38 -runtimeId=6418 +runtimeId=3626 minecraft:red_flower;flower_type=tulip_pink blockId=38 -runtimeId=6420 +runtimeId=3628 minecraft:red_flower;flower_type=tulip_red blockId=38 -runtimeId=6417 +runtimeId=3625 minecraft:red_flower;flower_type=tulip_white blockId=38 -runtimeId=6419 +runtimeId=3627 minecraft:red_glazed_terracotta;facing_direction=0 blockId=234 -runtimeId=6424 +runtimeId=4150 minecraft:red_glazed_terracotta;facing_direction=1 blockId=234 -runtimeId=6425 +runtimeId=4151 minecraft:red_glazed_terracotta;facing_direction=2 blockId=234 -runtimeId=6426 +runtimeId=4152 minecraft:red_glazed_terracotta;facing_direction=3 blockId=234 -runtimeId=6427 +runtimeId=4153 minecraft:red_glazed_terracotta;facing_direction=4 blockId=234 -runtimeId=6428 +runtimeId=4154 minecraft:red_glazed_terracotta;facing_direction=5 blockId=234 -runtimeId=6429 +runtimeId=4155 minecraft:red_mushroom blockId=40 -runtimeId=6430 +runtimeId=4517 minecraft:red_mushroom_block;huge_mushroom_bits=0 blockId=100 -runtimeId=6431 +runtimeId=3602 minecraft:red_mushroom_block;huge_mushroom_bits=1 blockId=100 -runtimeId=6432 +runtimeId=3603 minecraft:red_mushroom_block;huge_mushroom_bits=2 blockId=100 -runtimeId=6433 +runtimeId=3604 minecraft:red_mushroom_block;huge_mushroom_bits=3 blockId=100 -runtimeId=6434 +runtimeId=3605 minecraft:red_mushroom_block;huge_mushroom_bits=4 blockId=100 -runtimeId=6435 +runtimeId=3606 minecraft:red_mushroom_block;huge_mushroom_bits=5 blockId=100 -runtimeId=6436 +runtimeId=3607 minecraft:red_mushroom_block;huge_mushroom_bits=6 blockId=100 -runtimeId=6437 +runtimeId=3608 minecraft:red_mushroom_block;huge_mushroom_bits=7 blockId=100 -runtimeId=6438 +runtimeId=3609 minecraft:red_mushroom_block;huge_mushroom_bits=8 blockId=100 -runtimeId=6439 +runtimeId=3610 minecraft:red_mushroom_block;huge_mushroom_bits=9 blockId=100 -runtimeId=6440 +runtimeId=3611 minecraft:red_mushroom_block;huge_mushroom_bits=10 blockId=100 -runtimeId=6441 +runtimeId=3612 minecraft:red_mushroom_block;huge_mushroom_bits=11 blockId=100 -runtimeId=6442 +runtimeId=3613 minecraft:red_mushroom_block;huge_mushroom_bits=12 blockId=100 -runtimeId=6443 +runtimeId=3614 minecraft:red_mushroom_block;huge_mushroom_bits=13 blockId=100 -runtimeId=6444 +runtimeId=3615 minecraft:red_mushroom_block;huge_mushroom_bits=14 blockId=100 -runtimeId=6445 +runtimeId=3616 minecraft:red_mushroom_block;huge_mushroom_bits=15 blockId=100 -runtimeId=6446 +runtimeId=3617 minecraft:red_nether_brick blockId=215 -runtimeId=6447 +runtimeId=146 minecraft:red_nether_brick_stairs;upside_down_bit=0;weirdo_direction=0 blockId=439 -runtimeId=6448 +runtimeId=6493 minecraft:red_nether_brick_stairs;upside_down_bit=0;weirdo_direction=1 blockId=439 -runtimeId=6449 +runtimeId=6494 minecraft:red_nether_brick_stairs;upside_down_bit=0;weirdo_direction=2 blockId=439 -runtimeId=6450 +runtimeId=6495 minecraft:red_nether_brick_stairs;upside_down_bit=0;weirdo_direction=3 blockId=439 -runtimeId=6451 +runtimeId=6496 minecraft:red_nether_brick_stairs;upside_down_bit=1;weirdo_direction=0 blockId=439 -runtimeId=6452 +runtimeId=6497 minecraft:red_nether_brick_stairs;upside_down_bit=1;weirdo_direction=1 blockId=439 -runtimeId=6453 +runtimeId=6498 minecraft:red_nether_brick_stairs;upside_down_bit=1;weirdo_direction=2 blockId=439 -runtimeId=6454 +runtimeId=6499 minecraft:red_nether_brick_stairs;upside_down_bit=1;weirdo_direction=3 blockId=439 -runtimeId=6455 +runtimeId=6500 minecraft:red_sandstone;sand_stone_type=cut blockId=179 -runtimeId=6458 +runtimeId=6473 minecraft:red_sandstone;sand_stone_type=default blockId=179 -runtimeId=6456 +runtimeId=6471 minecraft:red_sandstone;sand_stone_type=heiroglyphs blockId=179 -runtimeId=6457 +runtimeId=6472 minecraft:red_sandstone;sand_stone_type=smooth blockId=179 -runtimeId=6459 +runtimeId=6474 minecraft:red_sandstone_stairs;upside_down_bit=0;weirdo_direction=0 blockId=180 -runtimeId=6460 +runtimeId=5300 minecraft:red_sandstone_stairs;upside_down_bit=0;weirdo_direction=1 blockId=180 -runtimeId=6461 +runtimeId=5301 minecraft:red_sandstone_stairs;upside_down_bit=0;weirdo_direction=2 blockId=180 -runtimeId=6462 +runtimeId=5302 minecraft:red_sandstone_stairs;upside_down_bit=0;weirdo_direction=3 blockId=180 -runtimeId=6463 +runtimeId=5303 minecraft:red_sandstone_stairs;upside_down_bit=1;weirdo_direction=0 blockId=180 -runtimeId=6464 +runtimeId=5304 minecraft:red_sandstone_stairs;upside_down_bit=1;weirdo_direction=1 blockId=180 -runtimeId=6465 +runtimeId=5305 minecraft:red_sandstone_stairs;upside_down_bit=1;weirdo_direction=2 blockId=180 -runtimeId=6466 +runtimeId=5306 minecraft:red_sandstone_stairs;upside_down_bit=1;weirdo_direction=3 blockId=180 -runtimeId=6467 +runtimeId=5307 minecraft:redstone_block blockId=152 -runtimeId=6468 +runtimeId=3781 minecraft:redstone_lamp blockId=123 -runtimeId=6469 +runtimeId=265 minecraft:redstone_ore blockId=73 -runtimeId=6470 +runtimeId=4237 minecraft:redstone_torch;torch_facing_direction=east blockId=76 -runtimeId=6473 +runtimeId=3532 minecraft:redstone_torch;torch_facing_direction=north blockId=76 -runtimeId=6474 +runtimeId=3533 minecraft:redstone_torch;torch_facing_direction=south blockId=76 -runtimeId=6475 +runtimeId=3534 minecraft:redstone_torch;torch_facing_direction=top blockId=76 -runtimeId=6476 +runtimeId=3535 minecraft:redstone_torch;torch_facing_direction=unknown blockId=76 -runtimeId=6471 +runtimeId=3530 minecraft:redstone_torch;torch_facing_direction=west blockId=76 -runtimeId=6472 +runtimeId=3531 minecraft:redstone_wire;redstone_signal=0 blockId=55 -runtimeId=6477 +runtimeId=3798 minecraft:redstone_wire;redstone_signal=1 blockId=55 -runtimeId=6478 +runtimeId=3799 minecraft:redstone_wire;redstone_signal=2 blockId=55 -runtimeId=6479 +runtimeId=3800 minecraft:redstone_wire;redstone_signal=3 blockId=55 -runtimeId=6480 +runtimeId=3801 minecraft:redstone_wire;redstone_signal=4 blockId=55 -runtimeId=6481 +runtimeId=3802 minecraft:redstone_wire;redstone_signal=5 blockId=55 -runtimeId=6482 +runtimeId=3803 minecraft:redstone_wire;redstone_signal=6 blockId=55 -runtimeId=6483 +runtimeId=3804 minecraft:redstone_wire;redstone_signal=7 blockId=55 -runtimeId=6484 +runtimeId=3805 minecraft:redstone_wire;redstone_signal=8 blockId=55 -runtimeId=6485 +runtimeId=3806 minecraft:redstone_wire;redstone_signal=9 blockId=55 -runtimeId=6486 +runtimeId=3807 minecraft:redstone_wire;redstone_signal=10 blockId=55 -runtimeId=6487 +runtimeId=3808 minecraft:redstone_wire;redstone_signal=11 blockId=55 -runtimeId=6488 +runtimeId=3809 minecraft:redstone_wire;redstone_signal=12 blockId=55 -runtimeId=6489 +runtimeId=3810 minecraft:redstone_wire;redstone_signal=13 blockId=55 -runtimeId=6490 +runtimeId=3811 minecraft:redstone_wire;redstone_signal=14 blockId=55 -runtimeId=6491 +runtimeId=3812 minecraft:redstone_wire;redstone_signal=15 blockId=55 -runtimeId=6492 +runtimeId=3813 minecraft:reeds;age=0 blockId=83 -runtimeId=6493 +runtimeId=5944 minecraft:reeds;age=1 blockId=83 -runtimeId=6494 +runtimeId=5945 minecraft:reeds;age=2 blockId=83 -runtimeId=6495 +runtimeId=5946 minecraft:reeds;age=3 blockId=83 -runtimeId=6496 +runtimeId=5947 minecraft:reeds;age=4 blockId=83 -runtimeId=6497 +runtimeId=5948 minecraft:reeds;age=5 blockId=83 -runtimeId=6498 +runtimeId=5949 minecraft:reeds;age=6 blockId=83 -runtimeId=6499 +runtimeId=5950 minecraft:reeds;age=7 blockId=83 -runtimeId=6500 +runtimeId=5951 minecraft:reeds;age=8 blockId=83 -runtimeId=6501 +runtimeId=5952 minecraft:reeds;age=9 blockId=83 -runtimeId=6502 +runtimeId=5953 minecraft:reeds;age=10 blockId=83 -runtimeId=6503 +runtimeId=5954 minecraft:reeds;age=11 blockId=83 -runtimeId=6504 +runtimeId=5955 minecraft:reeds;age=12 blockId=83 -runtimeId=6505 +runtimeId=5956 minecraft:reeds;age=13 blockId=83 -runtimeId=6506 +runtimeId=5957 minecraft:reeds;age=14 blockId=83 -runtimeId=6507 +runtimeId=5958 minecraft:reeds;age=15 blockId=83 -runtimeId=6508 +runtimeId=5959 + +minecraft:reinforced_deepslate +blockId=721 +runtimeId=5756 minecraft:repeating_command_block;conditional_bit=0;facing_direction=0 blockId=188 -runtimeId=6509 +runtimeId=7677 minecraft:repeating_command_block;conditional_bit=0;facing_direction=1 blockId=188 -runtimeId=6510 +runtimeId=7678 minecraft:repeating_command_block;conditional_bit=0;facing_direction=2 blockId=188 -runtimeId=6511 +runtimeId=7679 minecraft:repeating_command_block;conditional_bit=0;facing_direction=3 blockId=188 -runtimeId=6512 +runtimeId=7680 minecraft:repeating_command_block;conditional_bit=0;facing_direction=4 blockId=188 -runtimeId=6513 +runtimeId=7681 minecraft:repeating_command_block;conditional_bit=0;facing_direction=5 blockId=188 -runtimeId=6514 +runtimeId=7682 minecraft:repeating_command_block;conditional_bit=1;facing_direction=0 blockId=188 -runtimeId=6515 +runtimeId=7683 minecraft:repeating_command_block;conditional_bit=1;facing_direction=1 blockId=188 -runtimeId=6516 +runtimeId=7684 minecraft:repeating_command_block;conditional_bit=1;facing_direction=2 blockId=188 -runtimeId=6517 +runtimeId=7685 minecraft:repeating_command_block;conditional_bit=1;facing_direction=3 blockId=188 -runtimeId=6518 +runtimeId=7686 minecraft:repeating_command_block;conditional_bit=1;facing_direction=4 blockId=188 -runtimeId=6519 +runtimeId=7687 minecraft:repeating_command_block;conditional_bit=1;facing_direction=5 blockId=188 -runtimeId=6520 +runtimeId=7688 minecraft:reserved6 blockId=255 -runtimeId=6521 +runtimeId=4527 minecraft:respawn_anchor;respawn_anchor_charge=0 blockId=527 -runtimeId=6522 +runtimeId=689 minecraft:respawn_anchor;respawn_anchor_charge=1 blockId=527 -runtimeId=6523 +runtimeId=690 minecraft:respawn_anchor;respawn_anchor_charge=2 blockId=527 -runtimeId=6524 +runtimeId=691 minecraft:respawn_anchor;respawn_anchor_charge=3 blockId=527 -runtimeId=6525 +runtimeId=692 minecraft:respawn_anchor;respawn_anchor_charge=4 blockId=527 -runtimeId=6526 +runtimeId=693 minecraft:sand;sand_type=normal blockId=12 -runtimeId=6527 +runtimeId=4178 minecraft:sand;sand_type=red blockId=12 -runtimeId=6528 +runtimeId=4179 minecraft:sandstone;sand_stone_type=cut blockId=24 -runtimeId=6531 +runtimeId=3660 minecraft:sandstone;sand_stone_type=default blockId=24 -runtimeId=6529 +runtimeId=3658 minecraft:sandstone;sand_stone_type=heiroglyphs blockId=24 -runtimeId=6530 +runtimeId=3659 minecraft:sandstone;sand_stone_type=smooth blockId=24 -runtimeId=6532 +runtimeId=3661 minecraft:sandstone_stairs;upside_down_bit=0;weirdo_direction=0 blockId=128 -runtimeId=6533 +runtimeId=3592 minecraft:sandstone_stairs;upside_down_bit=0;weirdo_direction=1 blockId=128 -runtimeId=6534 +runtimeId=3593 minecraft:sandstone_stairs;upside_down_bit=0;weirdo_direction=2 blockId=128 -runtimeId=6535 +runtimeId=3594 minecraft:sandstone_stairs;upside_down_bit=0;weirdo_direction=3 blockId=128 -runtimeId=6536 +runtimeId=3595 minecraft:sandstone_stairs;upside_down_bit=1;weirdo_direction=0 blockId=128 -runtimeId=6537 +runtimeId=3596 minecraft:sandstone_stairs;upside_down_bit=1;weirdo_direction=1 blockId=128 -runtimeId=6538 +runtimeId=3597 minecraft:sandstone_stairs;upside_down_bit=1;weirdo_direction=2 blockId=128 -runtimeId=6539 +runtimeId=3598 minecraft:sandstone_stairs;upside_down_bit=1;weirdo_direction=3 blockId=128 -runtimeId=6540 +runtimeId=3599 minecraft:sapling;sapling_type=acacia;age_bit=0 blockId=6 -runtimeId=6545 +runtimeId=724 minecraft:sapling;sapling_type=acacia;age_bit=1 blockId=6 -runtimeId=6551 +runtimeId=730 minecraft:sapling;sapling_type=birch;age_bit=0 blockId=6 -runtimeId=6543 +runtimeId=722 minecraft:sapling;sapling_type=birch;age_bit=1 blockId=6 -runtimeId=6549 +runtimeId=728 minecraft:sapling;sapling_type=dark_oak;age_bit=0 blockId=6 -runtimeId=6546 +runtimeId=725 minecraft:sapling;sapling_type=dark_oak;age_bit=1 blockId=6 -runtimeId=6552 +runtimeId=731 minecraft:sapling;sapling_type=jungle;age_bit=0 blockId=6 -runtimeId=6544 +runtimeId=723 minecraft:sapling;sapling_type=jungle;age_bit=1 blockId=6 -runtimeId=6550 +runtimeId=729 minecraft:sapling;sapling_type=oak;age_bit=0 blockId=6 -runtimeId=6541 +runtimeId=720 minecraft:sapling;sapling_type=oak;age_bit=1 blockId=6 -runtimeId=6547 +runtimeId=726 minecraft:sapling;sapling_type=spruce;age_bit=0 blockId=6 -runtimeId=6542 +runtimeId=721 minecraft:sapling;sapling_type=spruce;age_bit=1 blockId=6 -runtimeId=6548 +runtimeId=727 minecraft:scaffolding;stability=0;stability_check=0 blockId=420 -runtimeId=6553 +runtimeId=3576 minecraft:scaffolding;stability=0;stability_check=1 blockId=420 -runtimeId=6561 +runtimeId=3584 minecraft:scaffolding;stability=1;stability_check=0 blockId=420 -runtimeId=6554 +runtimeId=3577 minecraft:scaffolding;stability=1;stability_check=1 blockId=420 -runtimeId=6562 +runtimeId=3585 minecraft:scaffolding;stability=2;stability_check=0 blockId=420 -runtimeId=6555 +runtimeId=3578 minecraft:scaffolding;stability=2;stability_check=1 blockId=420 -runtimeId=6563 +runtimeId=3586 minecraft:scaffolding;stability=3;stability_check=0 blockId=420 -runtimeId=6556 +runtimeId=3579 minecraft:scaffolding;stability=3;stability_check=1 blockId=420 -runtimeId=6564 +runtimeId=3587 minecraft:scaffolding;stability=4;stability_check=0 blockId=420 -runtimeId=6557 +runtimeId=3580 minecraft:scaffolding;stability=4;stability_check=1 blockId=420 -runtimeId=6565 +runtimeId=3588 minecraft:scaffolding;stability=5;stability_check=0 blockId=420 -runtimeId=6558 +runtimeId=3581 minecraft:scaffolding;stability=5;stability_check=1 blockId=420 -runtimeId=6566 +runtimeId=3589 minecraft:scaffolding;stability=6;stability_check=0 blockId=420 -runtimeId=6559 +runtimeId=3582 minecraft:scaffolding;stability=6;stability_check=1 blockId=420 -runtimeId=6567 +runtimeId=3590 minecraft:scaffolding;stability=7;stability_check=0 blockId=420 -runtimeId=6560 +runtimeId=3583 minecraft:scaffolding;stability=7;stability_check=1 blockId=420 -runtimeId=6568 +runtimeId=3591 + +minecraft:sculk +blockId=713 +runtimeId=6990 + +minecraft:sculk_catalyst;bloom=0 +blockId=715 +runtimeId=3618 + +minecraft:sculk_catalyst;bloom=1 +blockId=715 +runtimeId=3619 minecraft:sculk_sensor;powered_bit=0 blockId=562 -runtimeId=6569 +runtimeId=4337 minecraft:sculk_sensor;powered_bit=1 blockId=562 -runtimeId=6570 +runtimeId=4338 + +minecraft:sculk_shrieker;active=0 +blockId=716 +runtimeId=219 + +minecraft:sculk_shrieker;active=1 +blockId=716 +runtimeId=220 + +minecraft:sculk_vein;multi_face_direction_bits=0 +blockId=714 +runtimeId=7074 + +minecraft:sculk_vein;multi_face_direction_bits=1 +blockId=714 +runtimeId=7075 + +minecraft:sculk_vein;multi_face_direction_bits=2 +blockId=714 +runtimeId=7076 + +minecraft:sculk_vein;multi_face_direction_bits=3 +blockId=714 +runtimeId=7077 + +minecraft:sculk_vein;multi_face_direction_bits=4 +blockId=714 +runtimeId=7078 + +minecraft:sculk_vein;multi_face_direction_bits=5 +blockId=714 +runtimeId=7079 + +minecraft:sculk_vein;multi_face_direction_bits=6 +blockId=714 +runtimeId=7080 + +minecraft:sculk_vein;multi_face_direction_bits=7 +blockId=714 +runtimeId=7081 + +minecraft:sculk_vein;multi_face_direction_bits=8 +blockId=714 +runtimeId=7082 + +minecraft:sculk_vein;multi_face_direction_bits=9 +blockId=714 +runtimeId=7083 + +minecraft:sculk_vein;multi_face_direction_bits=10 +blockId=714 +runtimeId=7084 + +minecraft:sculk_vein;multi_face_direction_bits=11 +blockId=714 +runtimeId=7085 + +minecraft:sculk_vein;multi_face_direction_bits=12 +blockId=714 +runtimeId=7086 + +minecraft:sculk_vein;multi_face_direction_bits=13 +blockId=714 +runtimeId=7087 + +minecraft:sculk_vein;multi_face_direction_bits=14 +blockId=714 +runtimeId=7088 + +minecraft:sculk_vein;multi_face_direction_bits=15 +blockId=714 +runtimeId=7089 + +minecraft:sculk_vein;multi_face_direction_bits=16 +blockId=714 +runtimeId=7090 + +minecraft:sculk_vein;multi_face_direction_bits=17 +blockId=714 +runtimeId=7091 + +minecraft:sculk_vein;multi_face_direction_bits=18 +blockId=714 +runtimeId=7092 + +minecraft:sculk_vein;multi_face_direction_bits=19 +blockId=714 +runtimeId=7093 + +minecraft:sculk_vein;multi_face_direction_bits=20 +blockId=714 +runtimeId=7094 + +minecraft:sculk_vein;multi_face_direction_bits=21 +blockId=714 +runtimeId=7095 + +minecraft:sculk_vein;multi_face_direction_bits=22 +blockId=714 +runtimeId=7096 + +minecraft:sculk_vein;multi_face_direction_bits=23 +blockId=714 +runtimeId=7097 + +minecraft:sculk_vein;multi_face_direction_bits=24 +blockId=714 +runtimeId=7098 + +minecraft:sculk_vein;multi_face_direction_bits=25 +blockId=714 +runtimeId=7099 + +minecraft:sculk_vein;multi_face_direction_bits=26 +blockId=714 +runtimeId=7100 + +minecraft:sculk_vein;multi_face_direction_bits=27 +blockId=714 +runtimeId=7101 + +minecraft:sculk_vein;multi_face_direction_bits=28 +blockId=714 +runtimeId=7102 + +minecraft:sculk_vein;multi_face_direction_bits=29 +blockId=714 +runtimeId=7103 + +minecraft:sculk_vein;multi_face_direction_bits=30 +blockId=714 +runtimeId=7104 + +minecraft:sculk_vein;multi_face_direction_bits=31 +blockId=714 +runtimeId=7105 + +minecraft:sculk_vein;multi_face_direction_bits=32 +blockId=714 +runtimeId=7106 + +minecraft:sculk_vein;multi_face_direction_bits=33 +blockId=714 +runtimeId=7107 + +minecraft:sculk_vein;multi_face_direction_bits=34 +blockId=714 +runtimeId=7108 + +minecraft:sculk_vein;multi_face_direction_bits=35 +blockId=714 +runtimeId=7109 + +minecraft:sculk_vein;multi_face_direction_bits=36 +blockId=714 +runtimeId=7110 + +minecraft:sculk_vein;multi_face_direction_bits=37 +blockId=714 +runtimeId=7111 + +minecraft:sculk_vein;multi_face_direction_bits=38 +blockId=714 +runtimeId=7112 + +minecraft:sculk_vein;multi_face_direction_bits=39 +blockId=714 +runtimeId=7113 + +minecraft:sculk_vein;multi_face_direction_bits=40 +blockId=714 +runtimeId=7114 + +minecraft:sculk_vein;multi_face_direction_bits=41 +blockId=714 +runtimeId=7115 + +minecraft:sculk_vein;multi_face_direction_bits=42 +blockId=714 +runtimeId=7116 + +minecraft:sculk_vein;multi_face_direction_bits=43 +blockId=714 +runtimeId=7117 + +minecraft:sculk_vein;multi_face_direction_bits=44 +blockId=714 +runtimeId=7118 + +minecraft:sculk_vein;multi_face_direction_bits=45 +blockId=714 +runtimeId=7119 + +minecraft:sculk_vein;multi_face_direction_bits=46 +blockId=714 +runtimeId=7120 + +minecraft:sculk_vein;multi_face_direction_bits=47 +blockId=714 +runtimeId=7121 + +minecraft:sculk_vein;multi_face_direction_bits=48 +blockId=714 +runtimeId=7122 + +minecraft:sculk_vein;multi_face_direction_bits=49 +blockId=714 +runtimeId=7123 + +minecraft:sculk_vein;multi_face_direction_bits=50 +blockId=714 +runtimeId=7124 + +minecraft:sculk_vein;multi_face_direction_bits=51 +blockId=714 +runtimeId=7125 + +minecraft:sculk_vein;multi_face_direction_bits=52 +blockId=714 +runtimeId=7126 + +minecraft:sculk_vein;multi_face_direction_bits=53 +blockId=714 +runtimeId=7127 + +minecraft:sculk_vein;multi_face_direction_bits=54 +blockId=714 +runtimeId=7128 + +minecraft:sculk_vein;multi_face_direction_bits=55 +blockId=714 +runtimeId=7129 + +minecraft:sculk_vein;multi_face_direction_bits=56 +blockId=714 +runtimeId=7130 + +minecraft:sculk_vein;multi_face_direction_bits=57 +blockId=714 +runtimeId=7131 + +minecraft:sculk_vein;multi_face_direction_bits=58 +blockId=714 +runtimeId=7132 + +minecraft:sculk_vein;multi_face_direction_bits=59 +blockId=714 +runtimeId=7133 + +minecraft:sculk_vein;multi_face_direction_bits=60 +blockId=714 +runtimeId=7134 + +minecraft:sculk_vein;multi_face_direction_bits=61 +blockId=714 +runtimeId=7135 + +minecraft:sculk_vein;multi_face_direction_bits=62 +blockId=714 +runtimeId=7136 + +minecraft:sculk_vein;multi_face_direction_bits=63 +blockId=714 +runtimeId=7137 -minecraft:seaLantern +minecraft:sea_lantern blockId=169 -runtimeId=6582 +runtimeId=7488 minecraft:sea_pickle;cluster_count=0;dead_bit=0 blockId=411 -runtimeId=6571 +runtimeId=5779 minecraft:sea_pickle;cluster_count=0;dead_bit=1 blockId=411 -runtimeId=6575 +runtimeId=5783 minecraft:sea_pickle;cluster_count=1;dead_bit=0 blockId=411 -runtimeId=6572 +runtimeId=5780 minecraft:sea_pickle;cluster_count=1;dead_bit=1 blockId=411 -runtimeId=6576 +runtimeId=5784 minecraft:sea_pickle;cluster_count=2;dead_bit=0 blockId=411 -runtimeId=6573 +runtimeId=5781 minecraft:sea_pickle;cluster_count=2;dead_bit=1 blockId=411 -runtimeId=6577 +runtimeId=5785 minecraft:sea_pickle;cluster_count=3;dead_bit=0 blockId=411 -runtimeId=6574 +runtimeId=5782 minecraft:sea_pickle;cluster_count=3;dead_bit=1 blockId=411 -runtimeId=6578 +runtimeId=5786 minecraft:seagrass;sea_grass_type=default blockId=385 -runtimeId=6579 +runtimeId=244 minecraft:seagrass;sea_grass_type=double_bot blockId=385 -runtimeId=6581 +runtimeId=246 minecraft:seagrass;sea_grass_type=double_top blockId=385 -runtimeId=6580 +runtimeId=245 minecraft:shroomlight blockId=485 -runtimeId=6583 +runtimeId=5017 minecraft:shulker_box;color=black blockId=218 -runtimeId=6599 +runtimeId=5281 minecraft:shulker_box;color=blue blockId=218 -runtimeId=6595 +runtimeId=5277 minecraft:shulker_box;color=brown blockId=218 -runtimeId=6596 +runtimeId=5278 minecraft:shulker_box;color=cyan blockId=218 -runtimeId=6593 +runtimeId=5275 minecraft:shulker_box;color=gray blockId=218 -runtimeId=6591 +runtimeId=5273 minecraft:shulker_box;color=green blockId=218 -runtimeId=6597 +runtimeId=5279 minecraft:shulker_box;color=light_blue blockId=218 -runtimeId=6587 +runtimeId=5269 minecraft:shulker_box;color=lime blockId=218 -runtimeId=6589 +runtimeId=5271 minecraft:shulker_box;color=magenta blockId=218 -runtimeId=6586 +runtimeId=5268 minecraft:shulker_box;color=orange blockId=218 -runtimeId=6585 +runtimeId=5267 minecraft:shulker_box;color=pink blockId=218 -runtimeId=6590 +runtimeId=5272 minecraft:shulker_box;color=purple blockId=218 -runtimeId=6594 +runtimeId=5276 minecraft:shulker_box;color=red blockId=218 -runtimeId=6598 +runtimeId=5280 minecraft:shulker_box;color=silver blockId=218 -runtimeId=6592 +runtimeId=5274 minecraft:shulker_box;color=white blockId=218 -runtimeId=6584 +runtimeId=5266 minecraft:shulker_box;color=yellow blockId=218 -runtimeId=6588 +runtimeId=5270 minecraft:silver_glazed_terracotta;facing_direction=0 blockId=228 -runtimeId=6600 +runtimeId=3536 minecraft:silver_glazed_terracotta;facing_direction=1 blockId=228 -runtimeId=6601 +runtimeId=3537 minecraft:silver_glazed_terracotta;facing_direction=2 blockId=228 -runtimeId=6602 +runtimeId=3538 minecraft:silver_glazed_terracotta;facing_direction=3 blockId=228 -runtimeId=6603 +runtimeId=3539 minecraft:silver_glazed_terracotta;facing_direction=4 blockId=228 -runtimeId=6604 +runtimeId=3540 minecraft:silver_glazed_terracotta;facing_direction=5 blockId=228 -runtimeId=6605 - -minecraft:skull;facing_direction=0;no_drop_bit=0 -blockId=144 -runtimeId=6606 - -minecraft:skull;facing_direction=0;no_drop_bit=1 -blockId=144 -runtimeId=6612 - -minecraft:skull;facing_direction=1;no_drop_bit=0 -blockId=144 -runtimeId=6607 - -minecraft:skull;facing_direction=1;no_drop_bit=1 -blockId=144 -runtimeId=6613 - -minecraft:skull;facing_direction=2;no_drop_bit=0 -blockId=144 -runtimeId=6608 - -minecraft:skull;facing_direction=2;no_drop_bit=1 -blockId=144 -runtimeId=6614 +runtimeId=3541 -minecraft:skull;facing_direction=3;no_drop_bit=0 +minecraft:skull;facing_direction=0 blockId=144 -runtimeId=6609 +runtimeId=5242 -minecraft:skull;facing_direction=3;no_drop_bit=1 +minecraft:skull;facing_direction=1 blockId=144 -runtimeId=6615 +runtimeId=5243 -minecraft:skull;facing_direction=4;no_drop_bit=0 +minecraft:skull;facing_direction=2 blockId=144 -runtimeId=6610 +runtimeId=5244 -minecraft:skull;facing_direction=4;no_drop_bit=1 +minecraft:skull;facing_direction=3 blockId=144 -runtimeId=6616 +runtimeId=5245 -minecraft:skull;facing_direction=5;no_drop_bit=0 +minecraft:skull;facing_direction=4 blockId=144 -runtimeId=6611 +runtimeId=5246 -minecraft:skull;facing_direction=5;no_drop_bit=1 +minecraft:skull;facing_direction=5 blockId=144 -runtimeId=6617 +runtimeId=5247 minecraft:slime blockId=165 -runtimeId=6618 +runtimeId=4197 minecraft:small_amethyst_bud;facing_direction=0 blockId=587 -runtimeId=6619 +runtimeId=317 minecraft:small_amethyst_bud;facing_direction=1 blockId=587 -runtimeId=6620 +runtimeId=318 minecraft:small_amethyst_bud;facing_direction=2 blockId=587 -runtimeId=6621 +runtimeId=319 minecraft:small_amethyst_bud;facing_direction=3 blockId=587 -runtimeId=6622 +runtimeId=320 minecraft:small_amethyst_bud;facing_direction=4 blockId=587 -runtimeId=6623 +runtimeId=321 minecraft:small_amethyst_bud;facing_direction=5 blockId=587 -runtimeId=6624 +runtimeId=322 minecraft:small_dripleaf_block;upper_block_bit=0;direction=0 blockId=591 -runtimeId=6625 +runtimeId=4261 minecraft:small_dripleaf_block;upper_block_bit=0;direction=1 blockId=591 -runtimeId=6627 +runtimeId=4263 minecraft:small_dripleaf_block;upper_block_bit=0;direction=2 blockId=591 -runtimeId=6629 +runtimeId=4265 minecraft:small_dripleaf_block;upper_block_bit=0;direction=3 blockId=591 -runtimeId=6631 +runtimeId=4267 minecraft:small_dripleaf_block;upper_block_bit=1;direction=0 blockId=591 -runtimeId=6626 +runtimeId=4262 minecraft:small_dripleaf_block;upper_block_bit=1;direction=1 blockId=591 -runtimeId=6628 +runtimeId=4264 minecraft:small_dripleaf_block;upper_block_bit=1;direction=2 blockId=591 -runtimeId=6630 +runtimeId=4266 minecraft:small_dripleaf_block;upper_block_bit=1;direction=3 blockId=591 -runtimeId=6632 +runtimeId=4268 minecraft:smithing_table blockId=457 -runtimeId=6633 +runtimeId=3731 minecraft:smoker;facing_direction=0 blockId=453 -runtimeId=6634 +runtimeId=655 minecraft:smoker;facing_direction=1 blockId=453 -runtimeId=6635 +runtimeId=656 minecraft:smoker;facing_direction=2 blockId=453 -runtimeId=6636 +runtimeId=657 minecraft:smoker;facing_direction=3 blockId=453 -runtimeId=6637 +runtimeId=658 minecraft:smoker;facing_direction=4 blockId=453 -runtimeId=6638 +runtimeId=659 minecraft:smoker;facing_direction=5 blockId=453 -runtimeId=6639 +runtimeId=660 minecraft:smooth_basalt blockId=632 -runtimeId=6640 +runtimeId=1162 minecraft:smooth_quartz_stairs;upside_down_bit=0;weirdo_direction=0 blockId=440 -runtimeId=6641 +runtimeId=7642 minecraft:smooth_quartz_stairs;upside_down_bit=0;weirdo_direction=1 blockId=440 -runtimeId=6642 +runtimeId=7643 minecraft:smooth_quartz_stairs;upside_down_bit=0;weirdo_direction=2 blockId=440 -runtimeId=6643 +runtimeId=7644 minecraft:smooth_quartz_stairs;upside_down_bit=0;weirdo_direction=3 blockId=440 -runtimeId=6644 +runtimeId=7645 minecraft:smooth_quartz_stairs;upside_down_bit=1;weirdo_direction=0 blockId=440 -runtimeId=6645 +runtimeId=7646 minecraft:smooth_quartz_stairs;upside_down_bit=1;weirdo_direction=1 blockId=440 -runtimeId=6646 +runtimeId=7647 minecraft:smooth_quartz_stairs;upside_down_bit=1;weirdo_direction=2 blockId=440 -runtimeId=6647 +runtimeId=7648 minecraft:smooth_quartz_stairs;upside_down_bit=1;weirdo_direction=3 blockId=440 -runtimeId=6648 +runtimeId=7649 minecraft:smooth_red_sandstone_stairs;upside_down_bit=0;weirdo_direction=0 blockId=431 -runtimeId=6649 +runtimeId=5496 minecraft:smooth_red_sandstone_stairs;upside_down_bit=0;weirdo_direction=1 blockId=431 -runtimeId=6650 +runtimeId=5497 minecraft:smooth_red_sandstone_stairs;upside_down_bit=0;weirdo_direction=2 blockId=431 -runtimeId=6651 +runtimeId=5498 minecraft:smooth_red_sandstone_stairs;upside_down_bit=0;weirdo_direction=3 blockId=431 -runtimeId=6652 +runtimeId=5499 minecraft:smooth_red_sandstone_stairs;upside_down_bit=1;weirdo_direction=0 blockId=431 -runtimeId=6653 +runtimeId=5500 minecraft:smooth_red_sandstone_stairs;upside_down_bit=1;weirdo_direction=1 blockId=431 -runtimeId=6654 +runtimeId=5501 minecraft:smooth_red_sandstone_stairs;upside_down_bit=1;weirdo_direction=2 blockId=431 -runtimeId=6655 +runtimeId=5502 minecraft:smooth_red_sandstone_stairs;upside_down_bit=1;weirdo_direction=3 blockId=431 -runtimeId=6656 +runtimeId=5503 minecraft:smooth_sandstone_stairs;upside_down_bit=0;weirdo_direction=0 blockId=432 -runtimeId=6657 +runtimeId=3632 minecraft:smooth_sandstone_stairs;upside_down_bit=0;weirdo_direction=1 blockId=432 -runtimeId=6658 +runtimeId=3633 minecraft:smooth_sandstone_stairs;upside_down_bit=0;weirdo_direction=2 blockId=432 -runtimeId=6659 +runtimeId=3634 minecraft:smooth_sandstone_stairs;upside_down_bit=0;weirdo_direction=3 blockId=432 -runtimeId=6660 +runtimeId=3635 minecraft:smooth_sandstone_stairs;upside_down_bit=1;weirdo_direction=0 blockId=432 -runtimeId=6661 +runtimeId=3636 minecraft:smooth_sandstone_stairs;upside_down_bit=1;weirdo_direction=1 blockId=432 -runtimeId=6662 +runtimeId=3637 minecraft:smooth_sandstone_stairs;upside_down_bit=1;weirdo_direction=2 blockId=432 -runtimeId=6663 +runtimeId=3638 minecraft:smooth_sandstone_stairs;upside_down_bit=1;weirdo_direction=3 blockId=432 -runtimeId=6664 +runtimeId=3639 minecraft:smooth_stone blockId=438 -runtimeId=6665 +runtimeId=4514 minecraft:snow blockId=80 -runtimeId=6666 +runtimeId=4177 minecraft:snow_layer;covered_bit=0;height=0 blockId=78 -runtimeId=6667 +runtimeId=155 minecraft:snow_layer;covered_bit=0;height=1 blockId=78 -runtimeId=6668 +runtimeId=156 minecraft:snow_layer;covered_bit=0;height=2 blockId=78 -runtimeId=6669 +runtimeId=157 minecraft:snow_layer;covered_bit=0;height=3 blockId=78 -runtimeId=6670 +runtimeId=158 minecraft:snow_layer;covered_bit=0;height=4 blockId=78 -runtimeId=6671 +runtimeId=159 minecraft:snow_layer;covered_bit=0;height=5 blockId=78 -runtimeId=6672 +runtimeId=160 minecraft:snow_layer;covered_bit=0;height=6 blockId=78 -runtimeId=6673 +runtimeId=161 minecraft:snow_layer;covered_bit=0;height=7 blockId=78 -runtimeId=6674 +runtimeId=162 minecraft:snow_layer;covered_bit=1;height=0 blockId=78 -runtimeId=6675 +runtimeId=163 minecraft:snow_layer;covered_bit=1;height=1 blockId=78 -runtimeId=6676 +runtimeId=164 minecraft:snow_layer;covered_bit=1;height=2 blockId=78 -runtimeId=6677 +runtimeId=165 minecraft:snow_layer;covered_bit=1;height=3 blockId=78 -runtimeId=6678 +runtimeId=166 minecraft:snow_layer;covered_bit=1;height=4 blockId=78 -runtimeId=6679 +runtimeId=167 minecraft:snow_layer;covered_bit=1;height=5 blockId=78 -runtimeId=6680 +runtimeId=168 minecraft:snow_layer;covered_bit=1;height=6 blockId=78 -runtimeId=6681 +runtimeId=169 minecraft:snow_layer;covered_bit=1;height=7 blockId=78 -runtimeId=6682 +runtimeId=170 minecraft:soul_campfire;extinguished=0;direction=0 blockId=545 -runtimeId=6683 +runtimeId=7997 minecraft:soul_campfire;extinguished=0;direction=1 blockId=545 -runtimeId=6684 +runtimeId=7998 minecraft:soul_campfire;extinguished=0;direction=2 blockId=545 -runtimeId=6685 +runtimeId=7999 minecraft:soul_campfire;extinguished=0;direction=3 blockId=545 -runtimeId=6686 +runtimeId=8000 minecraft:soul_campfire;extinguished=1;direction=0 blockId=545 -runtimeId=6687 +runtimeId=8001 minecraft:soul_campfire;extinguished=1;direction=1 blockId=545 -runtimeId=6688 +runtimeId=8002 minecraft:soul_campfire;extinguished=1;direction=2 blockId=545 -runtimeId=6689 +runtimeId=8003 minecraft:soul_campfire;extinguished=1;direction=3 blockId=545 -runtimeId=6690 +runtimeId=8004 minecraft:soul_fire;age=0 blockId=492 -runtimeId=6691 +runtimeId=412 minecraft:soul_fire;age=1 blockId=492 -runtimeId=6692 +runtimeId=413 minecraft:soul_fire;age=2 blockId=492 -runtimeId=6693 +runtimeId=414 minecraft:soul_fire;age=3 blockId=492 -runtimeId=6694 +runtimeId=415 minecraft:soul_fire;age=4 blockId=492 -runtimeId=6695 +runtimeId=416 minecraft:soul_fire;age=5 blockId=492 -runtimeId=6696 +runtimeId=417 minecraft:soul_fire;age=6 blockId=492 -runtimeId=6697 +runtimeId=418 minecraft:soul_fire;age=7 blockId=492 -runtimeId=6698 +runtimeId=419 minecraft:soul_fire;age=8 blockId=492 -runtimeId=6699 +runtimeId=420 minecraft:soul_fire;age=9 blockId=492 -runtimeId=6700 +runtimeId=421 minecraft:soul_fire;age=10 blockId=492 -runtimeId=6701 +runtimeId=422 minecraft:soul_fire;age=11 blockId=492 -runtimeId=6702 +runtimeId=423 minecraft:soul_fire;age=12 blockId=492 -runtimeId=6703 +runtimeId=424 minecraft:soul_fire;age=13 blockId=492 -runtimeId=6704 +runtimeId=425 minecraft:soul_fire;age=14 blockId=492 -runtimeId=6705 +runtimeId=426 minecraft:soul_fire;age=15 blockId=492 -runtimeId=6706 +runtimeId=427 minecraft:soul_lantern;hanging=0 blockId=524 -runtimeId=6707 +runtimeId=5699 minecraft:soul_lantern;hanging=1 blockId=524 -runtimeId=6708 +runtimeId=5700 minecraft:soul_sand blockId=88 -runtimeId=6709 +runtimeId=5739 minecraft:soul_soil blockId=491 -runtimeId=6710 +runtimeId=5738 minecraft:soul_torch;torch_facing_direction=east blockId=523 -runtimeId=6713 +runtimeId=4602 minecraft:soul_torch;torch_facing_direction=north blockId=523 -runtimeId=6714 +runtimeId=4603 minecraft:soul_torch;torch_facing_direction=south blockId=523 -runtimeId=6715 +runtimeId=4604 minecraft:soul_torch;torch_facing_direction=top blockId=523 -runtimeId=6716 +runtimeId=4605 minecraft:soul_torch;torch_facing_direction=unknown blockId=523 -runtimeId=6711 +runtimeId=4600 minecraft:soul_torch;torch_facing_direction=west blockId=523 -runtimeId=6712 +runtimeId=4601 minecraft:sponge;sponge_type=dry blockId=19 -runtimeId=6717 +runtimeId=637 minecraft:sponge;sponge_type=wet blockId=19 -runtimeId=6718 +runtimeId=638 minecraft:spore_blossom blockId=576 -runtimeId=6719 +runtimeId=7254 minecraft:spruce_button;button_pressed_bit=0;facing_direction=0 blockId=399 -runtimeId=6720 +runtimeId=4269 minecraft:spruce_button;button_pressed_bit=0;facing_direction=1 blockId=399 -runtimeId=6721 +runtimeId=4270 minecraft:spruce_button;button_pressed_bit=0;facing_direction=2 blockId=399 -runtimeId=6722 +runtimeId=4271 minecraft:spruce_button;button_pressed_bit=0;facing_direction=3 blockId=399 -runtimeId=6723 +runtimeId=4272 minecraft:spruce_button;button_pressed_bit=0;facing_direction=4 blockId=399 -runtimeId=6724 +runtimeId=4273 minecraft:spruce_button;button_pressed_bit=0;facing_direction=5 blockId=399 -runtimeId=6725 +runtimeId=4274 minecraft:spruce_button;button_pressed_bit=1;facing_direction=0 blockId=399 -runtimeId=6726 +runtimeId=4275 minecraft:spruce_button;button_pressed_bit=1;facing_direction=1 blockId=399 -runtimeId=6727 +runtimeId=4276 minecraft:spruce_button;button_pressed_bit=1;facing_direction=2 blockId=399 -runtimeId=6728 +runtimeId=4277 minecraft:spruce_button;button_pressed_bit=1;facing_direction=3 blockId=399 -runtimeId=6729 +runtimeId=4278 minecraft:spruce_button;button_pressed_bit=1;facing_direction=4 blockId=399 -runtimeId=6730 +runtimeId=4279 minecraft:spruce_button;button_pressed_bit=1;facing_direction=5 blockId=399 -runtimeId=6731 +runtimeId=4280 minecraft:spruce_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=0 blockId=193 -runtimeId=6732 +runtimeId=4647 minecraft:spruce_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=1 blockId=193 -runtimeId=6733 +runtimeId=4648 minecraft:spruce_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=2 blockId=193 -runtimeId=6734 +runtimeId=4649 minecraft:spruce_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=3 blockId=193 -runtimeId=6735 +runtimeId=4650 minecraft:spruce_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=0 blockId=193 -runtimeId=6748 +runtimeId=4663 minecraft:spruce_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=1 blockId=193 -runtimeId=6749 +runtimeId=4664 minecraft:spruce_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=2 blockId=193 -runtimeId=6750 +runtimeId=4665 minecraft:spruce_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=3 blockId=193 -runtimeId=6751 +runtimeId=4666 minecraft:spruce_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=0 blockId=193 -runtimeId=6740 +runtimeId=4655 minecraft:spruce_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=1 blockId=193 -runtimeId=6741 +runtimeId=4656 minecraft:spruce_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=2 blockId=193 -runtimeId=6742 +runtimeId=4657 minecraft:spruce_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=3 blockId=193 -runtimeId=6743 +runtimeId=4658 minecraft:spruce_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=0 blockId=193 -runtimeId=6756 +runtimeId=4671 minecraft:spruce_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=1 blockId=193 -runtimeId=6757 +runtimeId=4672 minecraft:spruce_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=2 blockId=193 -runtimeId=6758 +runtimeId=4673 minecraft:spruce_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=3 blockId=193 -runtimeId=6759 +runtimeId=4674 minecraft:spruce_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=0 blockId=193 -runtimeId=6736 +runtimeId=4651 minecraft:spruce_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=1 blockId=193 -runtimeId=6737 +runtimeId=4652 minecraft:spruce_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=2 blockId=193 -runtimeId=6738 +runtimeId=4653 minecraft:spruce_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=3 blockId=193 -runtimeId=6739 +runtimeId=4654 minecraft:spruce_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=0 blockId=193 -runtimeId=6752 +runtimeId=4667 minecraft:spruce_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=1 blockId=193 -runtimeId=6753 +runtimeId=4668 minecraft:spruce_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=2 blockId=193 -runtimeId=6754 +runtimeId=4669 minecraft:spruce_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=3 blockId=193 -runtimeId=6755 +runtimeId=4670 minecraft:spruce_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=0 blockId=193 -runtimeId=6744 +runtimeId=4659 minecraft:spruce_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=1 blockId=193 -runtimeId=6745 +runtimeId=4660 minecraft:spruce_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=2 blockId=193 -runtimeId=6746 +runtimeId=4661 minecraft:spruce_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=3 blockId=193 -runtimeId=6747 +runtimeId=4662 minecraft:spruce_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=0 blockId=193 -runtimeId=6760 +runtimeId=4675 minecraft:spruce_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=1 blockId=193 -runtimeId=6761 +runtimeId=4676 minecraft:spruce_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=2 blockId=193 -runtimeId=6762 +runtimeId=4677 minecraft:spruce_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=3 blockId=193 -runtimeId=6763 +runtimeId=4678 minecraft:spruce_fence_gate;in_wall_bit=0;open_bit=0;direction=0 blockId=183 -runtimeId=6764 +runtimeId=6475 minecraft:spruce_fence_gate;in_wall_bit=0;open_bit=0;direction=1 blockId=183 -runtimeId=6765 +runtimeId=6476 minecraft:spruce_fence_gate;in_wall_bit=0;open_bit=0;direction=2 blockId=183 -runtimeId=6766 +runtimeId=6477 minecraft:spruce_fence_gate;in_wall_bit=0;open_bit=0;direction=3 blockId=183 -runtimeId=6767 +runtimeId=6478 minecraft:spruce_fence_gate;in_wall_bit=0;open_bit=1;direction=0 blockId=183 -runtimeId=6768 +runtimeId=6479 minecraft:spruce_fence_gate;in_wall_bit=0;open_bit=1;direction=1 blockId=183 -runtimeId=6769 +runtimeId=6480 minecraft:spruce_fence_gate;in_wall_bit=0;open_bit=1;direction=2 blockId=183 -runtimeId=6770 +runtimeId=6481 minecraft:spruce_fence_gate;in_wall_bit=0;open_bit=1;direction=3 blockId=183 -runtimeId=6771 +runtimeId=6482 minecraft:spruce_fence_gate;in_wall_bit=1;open_bit=0;direction=0 blockId=183 -runtimeId=6772 +runtimeId=6483 minecraft:spruce_fence_gate;in_wall_bit=1;open_bit=0;direction=1 blockId=183 -runtimeId=6773 +runtimeId=6484 minecraft:spruce_fence_gate;in_wall_bit=1;open_bit=0;direction=2 blockId=183 -runtimeId=6774 +runtimeId=6485 minecraft:spruce_fence_gate;in_wall_bit=1;open_bit=0;direction=3 blockId=183 -runtimeId=6775 +runtimeId=6486 minecraft:spruce_fence_gate;in_wall_bit=1;open_bit=1;direction=0 blockId=183 -runtimeId=6776 +runtimeId=6487 minecraft:spruce_fence_gate;in_wall_bit=1;open_bit=1;direction=1 blockId=183 -runtimeId=6777 +runtimeId=6488 minecraft:spruce_fence_gate;in_wall_bit=1;open_bit=1;direction=2 blockId=183 -runtimeId=6778 +runtimeId=6489 minecraft:spruce_fence_gate;in_wall_bit=1;open_bit=1;direction=3 blockId=183 -runtimeId=6779 +runtimeId=6490 minecraft:spruce_pressure_plate;redstone_signal=0 blockId=409 -runtimeId=6780 +runtimeId=3764 minecraft:spruce_pressure_plate;redstone_signal=1 blockId=409 -runtimeId=6781 +runtimeId=3765 minecraft:spruce_pressure_plate;redstone_signal=2 blockId=409 -runtimeId=6782 +runtimeId=3766 minecraft:spruce_pressure_plate;redstone_signal=3 blockId=409 -runtimeId=6783 +runtimeId=3767 minecraft:spruce_pressure_plate;redstone_signal=4 blockId=409 -runtimeId=6784 +runtimeId=3768 minecraft:spruce_pressure_plate;redstone_signal=5 blockId=409 -runtimeId=6785 +runtimeId=3769 minecraft:spruce_pressure_plate;redstone_signal=6 blockId=409 -runtimeId=6786 +runtimeId=3770 minecraft:spruce_pressure_plate;redstone_signal=7 blockId=409 -runtimeId=6787 +runtimeId=3771 minecraft:spruce_pressure_plate;redstone_signal=8 blockId=409 -runtimeId=6788 +runtimeId=3772 minecraft:spruce_pressure_plate;redstone_signal=9 blockId=409 -runtimeId=6789 +runtimeId=3773 minecraft:spruce_pressure_plate;redstone_signal=10 blockId=409 -runtimeId=6790 +runtimeId=3774 minecraft:spruce_pressure_plate;redstone_signal=11 blockId=409 -runtimeId=6791 +runtimeId=3775 minecraft:spruce_pressure_plate;redstone_signal=12 blockId=409 -runtimeId=6792 +runtimeId=3776 minecraft:spruce_pressure_plate;redstone_signal=13 blockId=409 -runtimeId=6793 +runtimeId=3777 minecraft:spruce_pressure_plate;redstone_signal=14 blockId=409 -runtimeId=6794 +runtimeId=3778 minecraft:spruce_pressure_plate;redstone_signal=15 blockId=409 -runtimeId=6795 +runtimeId=3779 minecraft:spruce_stairs;upside_down_bit=0;weirdo_direction=0 blockId=134 -runtimeId=6796 +runtimeId=128 minecraft:spruce_stairs;upside_down_bit=0;weirdo_direction=1 blockId=134 -runtimeId=6797 +runtimeId=129 minecraft:spruce_stairs;upside_down_bit=0;weirdo_direction=2 blockId=134 -runtimeId=6798 +runtimeId=130 minecraft:spruce_stairs;upside_down_bit=0;weirdo_direction=3 blockId=134 -runtimeId=6799 +runtimeId=131 minecraft:spruce_stairs;upside_down_bit=1;weirdo_direction=0 blockId=134 -runtimeId=6800 +runtimeId=132 minecraft:spruce_stairs;upside_down_bit=1;weirdo_direction=1 blockId=134 -runtimeId=6801 +runtimeId=133 minecraft:spruce_stairs;upside_down_bit=1;weirdo_direction=2 blockId=134 -runtimeId=6802 +runtimeId=134 minecraft:spruce_stairs;upside_down_bit=1;weirdo_direction=3 blockId=134 -runtimeId=6803 +runtimeId=135 minecraft:spruce_standing_sign;ground_sign_direction=0 blockId=436 -runtimeId=6804 +runtimeId=7000 minecraft:spruce_standing_sign;ground_sign_direction=1 blockId=436 -runtimeId=6805 +runtimeId=7001 minecraft:spruce_standing_sign;ground_sign_direction=2 blockId=436 -runtimeId=6806 +runtimeId=7002 minecraft:spruce_standing_sign;ground_sign_direction=3 blockId=436 -runtimeId=6807 +runtimeId=7003 minecraft:spruce_standing_sign;ground_sign_direction=4 blockId=436 -runtimeId=6808 +runtimeId=7004 minecraft:spruce_standing_sign;ground_sign_direction=5 blockId=436 -runtimeId=6809 +runtimeId=7005 minecraft:spruce_standing_sign;ground_sign_direction=6 blockId=436 -runtimeId=6810 +runtimeId=7006 minecraft:spruce_standing_sign;ground_sign_direction=7 blockId=436 -runtimeId=6811 +runtimeId=7007 minecraft:spruce_standing_sign;ground_sign_direction=8 blockId=436 -runtimeId=6812 +runtimeId=7008 minecraft:spruce_standing_sign;ground_sign_direction=9 blockId=436 -runtimeId=6813 +runtimeId=7009 minecraft:spruce_standing_sign;ground_sign_direction=10 blockId=436 -runtimeId=6814 +runtimeId=7010 minecraft:spruce_standing_sign;ground_sign_direction=11 blockId=436 -runtimeId=6815 +runtimeId=7011 minecraft:spruce_standing_sign;ground_sign_direction=12 blockId=436 -runtimeId=6816 +runtimeId=7012 minecraft:spruce_standing_sign;ground_sign_direction=13 blockId=436 -runtimeId=6817 +runtimeId=7013 minecraft:spruce_standing_sign;ground_sign_direction=14 blockId=436 -runtimeId=6818 +runtimeId=7014 minecraft:spruce_standing_sign;ground_sign_direction=15 blockId=436 -runtimeId=6819 +runtimeId=7015 minecraft:spruce_trapdoor;open_bit=0;upside_down_bit=0;direction=0 blockId=404 -runtimeId=6820 +runtimeId=6443 minecraft:spruce_trapdoor;open_bit=0;upside_down_bit=0;direction=1 blockId=404 -runtimeId=6821 +runtimeId=6444 minecraft:spruce_trapdoor;open_bit=0;upside_down_bit=0;direction=2 blockId=404 -runtimeId=6822 +runtimeId=6445 minecraft:spruce_trapdoor;open_bit=0;upside_down_bit=0;direction=3 blockId=404 -runtimeId=6823 +runtimeId=6446 minecraft:spruce_trapdoor;open_bit=0;upside_down_bit=1;direction=0 blockId=404 -runtimeId=6824 +runtimeId=6447 minecraft:spruce_trapdoor;open_bit=0;upside_down_bit=1;direction=1 blockId=404 -runtimeId=6825 +runtimeId=6448 minecraft:spruce_trapdoor;open_bit=0;upside_down_bit=1;direction=2 blockId=404 -runtimeId=6826 +runtimeId=6449 minecraft:spruce_trapdoor;open_bit=0;upside_down_bit=1;direction=3 blockId=404 -runtimeId=6827 +runtimeId=6450 minecraft:spruce_trapdoor;open_bit=1;upside_down_bit=0;direction=0 blockId=404 -runtimeId=6828 +runtimeId=6451 minecraft:spruce_trapdoor;open_bit=1;upside_down_bit=0;direction=1 blockId=404 -runtimeId=6829 +runtimeId=6452 minecraft:spruce_trapdoor;open_bit=1;upside_down_bit=0;direction=2 blockId=404 -runtimeId=6830 +runtimeId=6453 minecraft:spruce_trapdoor;open_bit=1;upside_down_bit=0;direction=3 blockId=404 -runtimeId=6831 +runtimeId=6454 minecraft:spruce_trapdoor;open_bit=1;upside_down_bit=1;direction=0 blockId=404 -runtimeId=6832 +runtimeId=6455 minecraft:spruce_trapdoor;open_bit=1;upside_down_bit=1;direction=1 blockId=404 -runtimeId=6833 +runtimeId=6456 minecraft:spruce_trapdoor;open_bit=1;upside_down_bit=1;direction=2 blockId=404 -runtimeId=6834 +runtimeId=6457 minecraft:spruce_trapdoor;open_bit=1;upside_down_bit=1;direction=3 blockId=404 -runtimeId=6835 +runtimeId=6458 minecraft:spruce_wall_sign;facing_direction=0 blockId=437 -runtimeId=6836 +runtimeId=7336 minecraft:spruce_wall_sign;facing_direction=1 blockId=437 -runtimeId=6837 +runtimeId=7337 minecraft:spruce_wall_sign;facing_direction=2 blockId=437 -runtimeId=6838 +runtimeId=7338 minecraft:spruce_wall_sign;facing_direction=3 blockId=437 -runtimeId=6839 +runtimeId=7339 minecraft:spruce_wall_sign;facing_direction=4 blockId=437 -runtimeId=6840 +runtimeId=7340 minecraft:spruce_wall_sign;facing_direction=5 blockId=437 -runtimeId=6841 +runtimeId=7341 minecraft:stained_glass;color=black blockId=241 -runtimeId=6857 +runtimeId=1155 minecraft:stained_glass;color=blue blockId=241 -runtimeId=6853 +runtimeId=1151 minecraft:stained_glass;color=brown blockId=241 -runtimeId=6854 +runtimeId=1152 minecraft:stained_glass;color=cyan blockId=241 -runtimeId=6851 +runtimeId=1149 minecraft:stained_glass;color=gray blockId=241 -runtimeId=6849 +runtimeId=1147 minecraft:stained_glass;color=green blockId=241 -runtimeId=6855 +runtimeId=1153 minecraft:stained_glass;color=light_blue blockId=241 -runtimeId=6845 +runtimeId=1143 minecraft:stained_glass;color=lime blockId=241 -runtimeId=6847 +runtimeId=1145 minecraft:stained_glass;color=magenta blockId=241 -runtimeId=6844 +runtimeId=1142 minecraft:stained_glass;color=orange blockId=241 -runtimeId=6843 +runtimeId=1141 minecraft:stained_glass;color=pink blockId=241 -runtimeId=6848 +runtimeId=1146 minecraft:stained_glass;color=purple blockId=241 -runtimeId=6852 +runtimeId=1150 minecraft:stained_glass;color=red blockId=241 -runtimeId=6856 +runtimeId=1154 minecraft:stained_glass;color=silver blockId=241 -runtimeId=6850 +runtimeId=1148 minecraft:stained_glass;color=white blockId=241 -runtimeId=6842 +runtimeId=1140 minecraft:stained_glass;color=yellow blockId=241 -runtimeId=6846 +runtimeId=1144 minecraft:stained_glass_pane;color=black blockId=160 -runtimeId=6873 +runtimeId=4823 minecraft:stained_glass_pane;color=blue blockId=160 -runtimeId=6869 +runtimeId=4819 minecraft:stained_glass_pane;color=brown blockId=160 -runtimeId=6870 +runtimeId=4820 minecraft:stained_glass_pane;color=cyan blockId=160 -runtimeId=6867 +runtimeId=4817 minecraft:stained_glass_pane;color=gray blockId=160 -runtimeId=6865 +runtimeId=4815 minecraft:stained_glass_pane;color=green blockId=160 -runtimeId=6871 +runtimeId=4821 minecraft:stained_glass_pane;color=light_blue blockId=160 -runtimeId=6861 +runtimeId=4811 minecraft:stained_glass_pane;color=lime blockId=160 -runtimeId=6863 +runtimeId=4813 minecraft:stained_glass_pane;color=magenta blockId=160 -runtimeId=6860 +runtimeId=4810 minecraft:stained_glass_pane;color=orange blockId=160 -runtimeId=6859 +runtimeId=4809 minecraft:stained_glass_pane;color=pink blockId=160 -runtimeId=6864 +runtimeId=4814 minecraft:stained_glass_pane;color=purple blockId=160 -runtimeId=6868 +runtimeId=4818 minecraft:stained_glass_pane;color=red blockId=160 -runtimeId=6872 +runtimeId=4822 minecraft:stained_glass_pane;color=silver blockId=160 -runtimeId=6866 +runtimeId=4816 minecraft:stained_glass_pane;color=white blockId=160 -runtimeId=6858 +runtimeId=4808 minecraft:stained_glass_pane;color=yellow blockId=160 -runtimeId=6862 +runtimeId=4812 minecraft:stained_hardened_clay;color=black blockId=159 -runtimeId=6889 +runtimeId=6114 minecraft:stained_hardened_clay;color=blue blockId=159 -runtimeId=6885 +runtimeId=6110 minecraft:stained_hardened_clay;color=brown blockId=159 -runtimeId=6886 +runtimeId=6111 minecraft:stained_hardened_clay;color=cyan blockId=159 -runtimeId=6883 +runtimeId=6108 minecraft:stained_hardened_clay;color=gray blockId=159 -runtimeId=6881 +runtimeId=6106 minecraft:stained_hardened_clay;color=green blockId=159 -runtimeId=6887 +runtimeId=6112 minecraft:stained_hardened_clay;color=light_blue blockId=159 -runtimeId=6877 +runtimeId=6102 minecraft:stained_hardened_clay;color=lime blockId=159 -runtimeId=6879 +runtimeId=6104 minecraft:stained_hardened_clay;color=magenta blockId=159 -runtimeId=6876 +runtimeId=6101 minecraft:stained_hardened_clay;color=orange blockId=159 -runtimeId=6875 +runtimeId=6100 minecraft:stained_hardened_clay;color=pink blockId=159 -runtimeId=6880 +runtimeId=6105 minecraft:stained_hardened_clay;color=purple blockId=159 -runtimeId=6884 +runtimeId=6109 minecraft:stained_hardened_clay;color=red blockId=159 -runtimeId=6888 +runtimeId=6113 minecraft:stained_hardened_clay;color=silver blockId=159 -runtimeId=6882 +runtimeId=6107 minecraft:stained_hardened_clay;color=white blockId=159 -runtimeId=6874 +runtimeId=6099 minecraft:stained_hardened_clay;color=yellow blockId=159 -runtimeId=6878 +runtimeId=6103 minecraft:standing_banner;ground_sign_direction=0 blockId=176 -runtimeId=6890 +runtimeId=6867 minecraft:standing_banner;ground_sign_direction=1 blockId=176 -runtimeId=6891 +runtimeId=6868 minecraft:standing_banner;ground_sign_direction=2 blockId=176 -runtimeId=6892 +runtimeId=6869 minecraft:standing_banner;ground_sign_direction=3 blockId=176 -runtimeId=6893 +runtimeId=6870 minecraft:standing_banner;ground_sign_direction=4 blockId=176 -runtimeId=6894 +runtimeId=6871 minecraft:standing_banner;ground_sign_direction=5 blockId=176 -runtimeId=6895 +runtimeId=6872 minecraft:standing_banner;ground_sign_direction=6 blockId=176 -runtimeId=6896 +runtimeId=6873 minecraft:standing_banner;ground_sign_direction=7 blockId=176 -runtimeId=6897 +runtimeId=6874 minecraft:standing_banner;ground_sign_direction=8 blockId=176 -runtimeId=6898 +runtimeId=6875 minecraft:standing_banner;ground_sign_direction=9 blockId=176 -runtimeId=6899 +runtimeId=6876 minecraft:standing_banner;ground_sign_direction=10 blockId=176 -runtimeId=6900 +runtimeId=6877 minecraft:standing_banner;ground_sign_direction=11 blockId=176 -runtimeId=6901 +runtimeId=6878 minecraft:standing_banner;ground_sign_direction=12 blockId=176 -runtimeId=6902 +runtimeId=6879 minecraft:standing_banner;ground_sign_direction=13 blockId=176 -runtimeId=6903 +runtimeId=6880 minecraft:standing_banner;ground_sign_direction=14 blockId=176 -runtimeId=6904 +runtimeId=6881 minecraft:standing_banner;ground_sign_direction=15 blockId=176 -runtimeId=6905 +runtimeId=6882 minecraft:standing_sign;ground_sign_direction=0 blockId=63 -runtimeId=6906 +runtimeId=5555 minecraft:standing_sign;ground_sign_direction=1 blockId=63 -runtimeId=6907 +runtimeId=5556 minecraft:standing_sign;ground_sign_direction=2 blockId=63 -runtimeId=6908 +runtimeId=5557 minecraft:standing_sign;ground_sign_direction=3 blockId=63 -runtimeId=6909 +runtimeId=5558 minecraft:standing_sign;ground_sign_direction=4 blockId=63 -runtimeId=6910 +runtimeId=5559 minecraft:standing_sign;ground_sign_direction=5 blockId=63 -runtimeId=6911 +runtimeId=5560 minecraft:standing_sign;ground_sign_direction=6 blockId=63 -runtimeId=6912 +runtimeId=5561 minecraft:standing_sign;ground_sign_direction=7 blockId=63 -runtimeId=6913 +runtimeId=5562 minecraft:standing_sign;ground_sign_direction=8 blockId=63 -runtimeId=6914 +runtimeId=5563 minecraft:standing_sign;ground_sign_direction=9 blockId=63 -runtimeId=6915 +runtimeId=5564 minecraft:standing_sign;ground_sign_direction=10 blockId=63 -runtimeId=6916 +runtimeId=5565 minecraft:standing_sign;ground_sign_direction=11 blockId=63 -runtimeId=6917 +runtimeId=5566 minecraft:standing_sign;ground_sign_direction=12 blockId=63 -runtimeId=6918 +runtimeId=5567 minecraft:standing_sign;ground_sign_direction=13 blockId=63 -runtimeId=6919 +runtimeId=5568 minecraft:standing_sign;ground_sign_direction=14 blockId=63 -runtimeId=6920 +runtimeId=5569 minecraft:standing_sign;ground_sign_direction=15 blockId=63 -runtimeId=6921 - -minecraft:stickyPistonArmCollision;facing_direction=0 -blockId=472 -runtimeId=6928 - -minecraft:stickyPistonArmCollision;facing_direction=1 -blockId=472 -runtimeId=6929 - -minecraft:stickyPistonArmCollision;facing_direction=2 -blockId=472 -runtimeId=6930 - -minecraft:stickyPistonArmCollision;facing_direction=3 -blockId=472 -runtimeId=6931 - -minecraft:stickyPistonArmCollision;facing_direction=4 -blockId=472 -runtimeId=6932 - -minecraft:stickyPistonArmCollision;facing_direction=5 -blockId=472 -runtimeId=6933 +runtimeId=5570 minecraft:sticky_piston;facing_direction=0 blockId=29 -runtimeId=6922 +runtimeId=4311 minecraft:sticky_piston;facing_direction=1 blockId=29 -runtimeId=6923 +runtimeId=4312 minecraft:sticky_piston;facing_direction=2 blockId=29 -runtimeId=6924 +runtimeId=4313 minecraft:sticky_piston;facing_direction=3 blockId=29 -runtimeId=6925 +runtimeId=4314 minecraft:sticky_piston;facing_direction=4 blockId=29 -runtimeId=6926 +runtimeId=4315 minecraft:sticky_piston;facing_direction=5 blockId=29 -runtimeId=6927 +runtimeId=4316 + +minecraft:sticky_piston_arm_collision;facing_direction=0 +blockId=472 +runtimeId=6308 + +minecraft:sticky_piston_arm_collision;facing_direction=1 +blockId=472 +runtimeId=6309 + +minecraft:sticky_piston_arm_collision;facing_direction=2 +blockId=472 +runtimeId=6310 + +minecraft:sticky_piston_arm_collision;facing_direction=3 +blockId=472 +runtimeId=6311 + +minecraft:sticky_piston_arm_collision;facing_direction=4 +blockId=472 +runtimeId=6312 + +minecraft:sticky_piston_arm_collision;facing_direction=5 +blockId=472 +runtimeId=6313 minecraft:stone;stone_type=andesite blockId=1 -runtimeId=6939 +runtimeId=666 minecraft:stone;stone_type=andesite_smooth blockId=1 -runtimeId=6940 +runtimeId=667 minecraft:stone;stone_type=diorite blockId=1 -runtimeId=6937 +runtimeId=664 minecraft:stone;stone_type=diorite_smooth blockId=1 -runtimeId=6938 +runtimeId=665 minecraft:stone;stone_type=granite blockId=1 -runtimeId=6935 +runtimeId=662 minecraft:stone;stone_type=granite_smooth blockId=1 -runtimeId=6936 +runtimeId=663 minecraft:stone;stone_type=stone blockId=1 -runtimeId=6934 +runtimeId=661 minecraft:stone_brick_stairs;upside_down_bit=0;weirdo_direction=0 blockId=109 -runtimeId=6941 +runtimeId=939 minecraft:stone_brick_stairs;upside_down_bit=0;weirdo_direction=1 blockId=109 -runtimeId=6942 +runtimeId=940 minecraft:stone_brick_stairs;upside_down_bit=0;weirdo_direction=2 blockId=109 -runtimeId=6943 +runtimeId=941 minecraft:stone_brick_stairs;upside_down_bit=0;weirdo_direction=3 blockId=109 -runtimeId=6944 +runtimeId=942 minecraft:stone_brick_stairs;upside_down_bit=1;weirdo_direction=0 blockId=109 -runtimeId=6945 +runtimeId=943 minecraft:stone_brick_stairs;upside_down_bit=1;weirdo_direction=1 blockId=109 -runtimeId=6946 +runtimeId=944 minecraft:stone_brick_stairs;upside_down_bit=1;weirdo_direction=2 blockId=109 -runtimeId=6947 +runtimeId=945 minecraft:stone_brick_stairs;upside_down_bit=1;weirdo_direction=3 blockId=109 -runtimeId=6948 +runtimeId=946 minecraft:stone_button;button_pressed_bit=0;facing_direction=0 blockId=77 -runtimeId=6949 +runtimeId=604 minecraft:stone_button;button_pressed_bit=0;facing_direction=1 blockId=77 -runtimeId=6950 +runtimeId=605 minecraft:stone_button;button_pressed_bit=0;facing_direction=2 blockId=77 -runtimeId=6951 +runtimeId=606 minecraft:stone_button;button_pressed_bit=0;facing_direction=3 blockId=77 -runtimeId=6952 +runtimeId=607 minecraft:stone_button;button_pressed_bit=0;facing_direction=4 blockId=77 -runtimeId=6953 +runtimeId=608 minecraft:stone_button;button_pressed_bit=0;facing_direction=5 blockId=77 -runtimeId=6954 +runtimeId=609 minecraft:stone_button;button_pressed_bit=1;facing_direction=0 blockId=77 -runtimeId=6955 +runtimeId=610 minecraft:stone_button;button_pressed_bit=1;facing_direction=1 blockId=77 -runtimeId=6956 +runtimeId=611 minecraft:stone_button;button_pressed_bit=1;facing_direction=2 blockId=77 -runtimeId=6957 +runtimeId=612 minecraft:stone_button;button_pressed_bit=1;facing_direction=3 blockId=77 -runtimeId=6958 +runtimeId=613 minecraft:stone_button;button_pressed_bit=1;facing_direction=4 blockId=77 -runtimeId=6959 +runtimeId=614 minecraft:stone_button;button_pressed_bit=1;facing_direction=5 blockId=77 -runtimeId=6960 +runtimeId=615 minecraft:stone_pressure_plate;redstone_signal=0 blockId=70 -runtimeId=6961 +runtimeId=3875 minecraft:stone_pressure_plate;redstone_signal=1 blockId=70 -runtimeId=6962 +runtimeId=3876 minecraft:stone_pressure_plate;redstone_signal=2 blockId=70 -runtimeId=6963 +runtimeId=3877 minecraft:stone_pressure_plate;redstone_signal=3 blockId=70 -runtimeId=6964 +runtimeId=3878 minecraft:stone_pressure_plate;redstone_signal=4 blockId=70 -runtimeId=6965 +runtimeId=3879 minecraft:stone_pressure_plate;redstone_signal=5 blockId=70 -runtimeId=6966 +runtimeId=3880 minecraft:stone_pressure_plate;redstone_signal=6 blockId=70 -runtimeId=6967 +runtimeId=3881 minecraft:stone_pressure_plate;redstone_signal=7 blockId=70 -runtimeId=6968 +runtimeId=3882 minecraft:stone_pressure_plate;redstone_signal=8 blockId=70 -runtimeId=6969 +runtimeId=3883 minecraft:stone_pressure_plate;redstone_signal=9 blockId=70 -runtimeId=6970 +runtimeId=3884 minecraft:stone_pressure_plate;redstone_signal=10 blockId=70 -runtimeId=6971 +runtimeId=3885 minecraft:stone_pressure_plate;redstone_signal=11 blockId=70 -runtimeId=6972 +runtimeId=3886 minecraft:stone_pressure_plate;redstone_signal=12 blockId=70 -runtimeId=6973 +runtimeId=3887 minecraft:stone_pressure_plate;redstone_signal=13 blockId=70 -runtimeId=6974 +runtimeId=3888 minecraft:stone_pressure_plate;redstone_signal=14 blockId=70 -runtimeId=6975 +runtimeId=3889 minecraft:stone_pressure_plate;redstone_signal=15 blockId=70 -runtimeId=6976 +runtimeId=3890 + +minecraft:stone_slab;stone_slab_type=brick;top_slot_bit=0 +blockId=44 +runtimeId=253 + +minecraft:stone_slab;stone_slab_type=brick;top_slot_bit=1 +blockId=44 +runtimeId=261 + +minecraft:stone_slab;stone_slab_type=cobblestone;top_slot_bit=0 +blockId=44 +runtimeId=252 + +minecraft:stone_slab;stone_slab_type=cobblestone;top_slot_bit=1 +blockId=44 +runtimeId=260 + +minecraft:stone_slab;stone_slab_type=nether_brick;top_slot_bit=0 +blockId=44 +runtimeId=256 + +minecraft:stone_slab;stone_slab_type=nether_brick;top_slot_bit=1 +blockId=44 +runtimeId=264 + +minecraft:stone_slab;stone_slab_type=quartz;top_slot_bit=0 +blockId=44 +runtimeId=255 + +minecraft:stone_slab;stone_slab_type=quartz;top_slot_bit=1 +blockId=44 +runtimeId=263 + +minecraft:stone_slab;stone_slab_type=sandstone;top_slot_bit=0 +blockId=44 +runtimeId=250 + +minecraft:stone_slab;stone_slab_type=sandstone;top_slot_bit=1 +blockId=44 +runtimeId=258 + +minecraft:stone_slab;stone_slab_type=smooth_stone;top_slot_bit=0 +blockId=44 +runtimeId=249 + +minecraft:stone_slab;stone_slab_type=smooth_stone;top_slot_bit=1 +blockId=44 +runtimeId=257 + +minecraft:stone_slab;stone_slab_type=stone_brick;top_slot_bit=0 +blockId=44 +runtimeId=254 + +minecraft:stone_slab;stone_slab_type=stone_brick;top_slot_bit=1 +blockId=44 +runtimeId=262 + +minecraft:stone_slab;stone_slab_type=wood;top_slot_bit=0 +blockId=44 +runtimeId=251 + +minecraft:stone_slab;stone_slab_type=wood;top_slot_bit=1 +blockId=44 +runtimeId=259 minecraft:stone_slab2;stone_slab_type_2=mossy_cobblestone;top_slot_bit=0 blockId=182 -runtimeId=6998 +runtimeId=6603 minecraft:stone_slab2;stone_slab_type_2=mossy_cobblestone;top_slot_bit=1 blockId=182 -runtimeId=7006 +runtimeId=6611 minecraft:stone_slab2;stone_slab_type_2=prismarine_brick;top_slot_bit=0 blockId=182 -runtimeId=6997 +runtimeId=6602 minecraft:stone_slab2;stone_slab_type_2=prismarine_brick;top_slot_bit=1 blockId=182 -runtimeId=7005 +runtimeId=6610 minecraft:stone_slab2;stone_slab_type_2=prismarine_dark;top_slot_bit=0 blockId=182 -runtimeId=6996 +runtimeId=6601 minecraft:stone_slab2;stone_slab_type_2=prismarine_dark;top_slot_bit=1 blockId=182 -runtimeId=7004 +runtimeId=6609 minecraft:stone_slab2;stone_slab_type_2=prismarine_rough;top_slot_bit=0 blockId=182 -runtimeId=6995 +runtimeId=6600 minecraft:stone_slab2;stone_slab_type_2=prismarine_rough;top_slot_bit=1 blockId=182 -runtimeId=7003 +runtimeId=6608 minecraft:stone_slab2;stone_slab_type_2=purpur;top_slot_bit=0 blockId=182 -runtimeId=6994 +runtimeId=6599 minecraft:stone_slab2;stone_slab_type_2=purpur;top_slot_bit=1 blockId=182 -runtimeId=7002 +runtimeId=6607 minecraft:stone_slab2;stone_slab_type_2=red_nether_brick;top_slot_bit=0 blockId=182 -runtimeId=7000 +runtimeId=6605 minecraft:stone_slab2;stone_slab_type_2=red_nether_brick;top_slot_bit=1 blockId=182 -runtimeId=7008 +runtimeId=6613 minecraft:stone_slab2;stone_slab_type_2=red_sandstone;top_slot_bit=0 blockId=182 -runtimeId=6993 +runtimeId=6598 minecraft:stone_slab2;stone_slab_type_2=red_sandstone;top_slot_bit=1 blockId=182 -runtimeId=7001 +runtimeId=6606 minecraft:stone_slab2;stone_slab_type_2=smooth_sandstone;top_slot_bit=0 blockId=182 -runtimeId=6999 +runtimeId=6604 minecraft:stone_slab2;stone_slab_type_2=smooth_sandstone;top_slot_bit=1 blockId=182 -runtimeId=7007 +runtimeId=6612 minecraft:stone_slab3;stone_slab_type_3=andesite;top_slot_bit=0 blockId=417 -runtimeId=7012 +runtimeId=6617 minecraft:stone_slab3;stone_slab_type_3=andesite;top_slot_bit=1 blockId=417 -runtimeId=7020 +runtimeId=6625 minecraft:stone_slab3;stone_slab_type_3=diorite;top_slot_bit=0 blockId=417 -runtimeId=7013 +runtimeId=6618 minecraft:stone_slab3;stone_slab_type_3=diorite;top_slot_bit=1 blockId=417 -runtimeId=7021 +runtimeId=6626 minecraft:stone_slab3;stone_slab_type_3=end_stone_brick;top_slot_bit=0 blockId=417 -runtimeId=7009 +runtimeId=6614 minecraft:stone_slab3;stone_slab_type_3=end_stone_brick;top_slot_bit=1 blockId=417 -runtimeId=7017 +runtimeId=6622 minecraft:stone_slab3;stone_slab_type_3=granite;top_slot_bit=0 blockId=417 -runtimeId=7015 +runtimeId=6620 minecraft:stone_slab3;stone_slab_type_3=granite;top_slot_bit=1 blockId=417 -runtimeId=7023 +runtimeId=6628 minecraft:stone_slab3;stone_slab_type_3=polished_andesite;top_slot_bit=0 blockId=417 -runtimeId=7011 +runtimeId=6616 minecraft:stone_slab3;stone_slab_type_3=polished_andesite;top_slot_bit=1 blockId=417 -runtimeId=7019 +runtimeId=6624 minecraft:stone_slab3;stone_slab_type_3=polished_diorite;top_slot_bit=0 blockId=417 -runtimeId=7014 +runtimeId=6619 minecraft:stone_slab3;stone_slab_type_3=polished_diorite;top_slot_bit=1 blockId=417 -runtimeId=7022 +runtimeId=6627 minecraft:stone_slab3;stone_slab_type_3=polished_granite;top_slot_bit=0 blockId=417 -runtimeId=7016 +runtimeId=6621 minecraft:stone_slab3;stone_slab_type_3=polished_granite;top_slot_bit=1 blockId=417 -runtimeId=7024 +runtimeId=6629 minecraft:stone_slab3;stone_slab_type_3=smooth_red_sandstone;top_slot_bit=0 blockId=417 -runtimeId=7010 +runtimeId=6615 minecraft:stone_slab3;stone_slab_type_3=smooth_red_sandstone;top_slot_bit=1 blockId=417 -runtimeId=7018 +runtimeId=6623 minecraft:stone_slab4;top_slot_bit=0;stone_slab_type_4=cut_red_sandstone blockId=421 -runtimeId=7029 +runtimeId=6634 minecraft:stone_slab4;top_slot_bit=0;stone_slab_type_4=cut_sandstone blockId=421 -runtimeId=7028 +runtimeId=6633 minecraft:stone_slab4;top_slot_bit=0;stone_slab_type_4=mossy_stone_brick blockId=421 -runtimeId=7025 +runtimeId=6630 minecraft:stone_slab4;top_slot_bit=0;stone_slab_type_4=smooth_quartz blockId=421 -runtimeId=7026 +runtimeId=6631 minecraft:stone_slab4;top_slot_bit=0;stone_slab_type_4=stone blockId=421 -runtimeId=7027 +runtimeId=6632 minecraft:stone_slab4;top_slot_bit=1;stone_slab_type_4=cut_red_sandstone blockId=421 -runtimeId=7034 +runtimeId=6639 minecraft:stone_slab4;top_slot_bit=1;stone_slab_type_4=cut_sandstone blockId=421 -runtimeId=7033 +runtimeId=6638 minecraft:stone_slab4;top_slot_bit=1;stone_slab_type_4=mossy_stone_brick blockId=421 -runtimeId=7030 +runtimeId=6635 minecraft:stone_slab4;top_slot_bit=1;stone_slab_type_4=smooth_quartz blockId=421 -runtimeId=7031 +runtimeId=6636 minecraft:stone_slab4;top_slot_bit=1;stone_slab_type_4=stone blockId=421 -runtimeId=7032 - -minecraft:stone_slab;stone_slab_type=brick;top_slot_bit=0 -blockId=44 -runtimeId=6981 - -minecraft:stone_slab;stone_slab_type=brick;top_slot_bit=1 -blockId=44 -runtimeId=6989 - -minecraft:stone_slab;stone_slab_type=cobblestone;top_slot_bit=0 -blockId=44 -runtimeId=6980 - -minecraft:stone_slab;stone_slab_type=cobblestone;top_slot_bit=1 -blockId=44 -runtimeId=6988 - -minecraft:stone_slab;stone_slab_type=nether_brick;top_slot_bit=0 -blockId=44 -runtimeId=6984 - -minecraft:stone_slab;stone_slab_type=nether_brick;top_slot_bit=1 -blockId=44 -runtimeId=6992 - -minecraft:stone_slab;stone_slab_type=quartz;top_slot_bit=0 -blockId=44 -runtimeId=6983 - -minecraft:stone_slab;stone_slab_type=quartz;top_slot_bit=1 -blockId=44 -runtimeId=6991 - -minecraft:stone_slab;stone_slab_type=sandstone;top_slot_bit=0 -blockId=44 -runtimeId=6978 - -minecraft:stone_slab;stone_slab_type=sandstone;top_slot_bit=1 -blockId=44 -runtimeId=6986 - -minecraft:stone_slab;stone_slab_type=smooth_stone;top_slot_bit=0 -blockId=44 -runtimeId=6977 - -minecraft:stone_slab;stone_slab_type=smooth_stone;top_slot_bit=1 -blockId=44 -runtimeId=6985 - -minecraft:stone_slab;stone_slab_type=stone_brick;top_slot_bit=0 -blockId=44 -runtimeId=6982 - -minecraft:stone_slab;stone_slab_type=stone_brick;top_slot_bit=1 -blockId=44 -runtimeId=6990 - -minecraft:stone_slab;stone_slab_type=wood;top_slot_bit=0 -blockId=44 -runtimeId=6979 - -minecraft:stone_slab;stone_slab_type=wood;top_slot_bit=1 -blockId=44 -runtimeId=6987 +runtimeId=6637 minecraft:stone_stairs;upside_down_bit=0;weirdo_direction=0 blockId=67 -runtimeId=7035 +runtimeId=3713 minecraft:stone_stairs;upside_down_bit=0;weirdo_direction=1 blockId=67 -runtimeId=7036 +runtimeId=3714 minecraft:stone_stairs;upside_down_bit=0;weirdo_direction=2 blockId=67 -runtimeId=7037 +runtimeId=3715 minecraft:stone_stairs;upside_down_bit=0;weirdo_direction=3 blockId=67 -runtimeId=7038 +runtimeId=3716 minecraft:stone_stairs;upside_down_bit=1;weirdo_direction=0 blockId=67 -runtimeId=7039 +runtimeId=3717 minecraft:stone_stairs;upside_down_bit=1;weirdo_direction=1 blockId=67 -runtimeId=7040 +runtimeId=3718 minecraft:stone_stairs;upside_down_bit=1;weirdo_direction=2 blockId=67 -runtimeId=7041 +runtimeId=3719 minecraft:stone_stairs;upside_down_bit=1;weirdo_direction=3 blockId=67 -runtimeId=7042 +runtimeId=3720 minecraft:stonebrick;stone_brick_type=chiseled blockId=98 -runtimeId=7046 +runtimeId=6441 minecraft:stonebrick;stone_brick_type=cracked blockId=98 -runtimeId=7045 +runtimeId=6440 minecraft:stonebrick;stone_brick_type=default blockId=98 -runtimeId=7043 +runtimeId=6438 minecraft:stonebrick;stone_brick_type=mossy blockId=98 -runtimeId=7044 +runtimeId=6439 minecraft:stonebrick;stone_brick_type=smooth blockId=98 -runtimeId=7047 +runtimeId=6442 minecraft:stonecutter blockId=245 -runtimeId=7048 +runtimeId=927 minecraft:stonecutter_block;facing_direction=0 blockId=452 -runtimeId=7049 +runtimeId=7516 minecraft:stonecutter_block;facing_direction=1 blockId=452 -runtimeId=7050 +runtimeId=7517 minecraft:stonecutter_block;facing_direction=2 blockId=452 -runtimeId=7051 +runtimeId=7518 minecraft:stonecutter_block;facing_direction=3 blockId=452 -runtimeId=7052 +runtimeId=7519 minecraft:stonecutter_block;facing_direction=4 blockId=452 -runtimeId=7053 +runtimeId=7520 minecraft:stonecutter_block;facing_direction=5 blockId=452 -runtimeId=7054 +runtimeId=7521 minecraft:stripped_acacia_log;pillar_axis=x blockId=263 -runtimeId=7056 +runtimeId=5773 minecraft:stripped_acacia_log;pillar_axis=y blockId=263 -runtimeId=7055 +runtimeId=5772 minecraft:stripped_acacia_log;pillar_axis=z blockId=263 -runtimeId=7057 +runtimeId=5774 minecraft:stripped_birch_log;pillar_axis=x blockId=261 -runtimeId=7059 +runtimeId=5897 minecraft:stripped_birch_log;pillar_axis=y blockId=261 -runtimeId=7058 +runtimeId=5896 minecraft:stripped_birch_log;pillar_axis=z blockId=261 -runtimeId=7060 +runtimeId=5898 minecraft:stripped_crimson_hyphae;pillar_axis=x blockId=555 -runtimeId=7062 +runtimeId=6391 minecraft:stripped_crimson_hyphae;pillar_axis=y blockId=555 -runtimeId=7061 +runtimeId=6390 minecraft:stripped_crimson_hyphae;pillar_axis=z blockId=555 -runtimeId=7063 +runtimeId=6392 minecraft:stripped_crimson_stem;pillar_axis=x blockId=495 -runtimeId=7065 +runtimeId=6865 minecraft:stripped_crimson_stem;pillar_axis=y blockId=495 -runtimeId=7064 +runtimeId=6864 minecraft:stripped_crimson_stem;pillar_axis=z blockId=495 -runtimeId=7066 +runtimeId=6866 minecraft:stripped_dark_oak_log;pillar_axis=x blockId=264 -runtimeId=7068 +runtimeId=217 minecraft:stripped_dark_oak_log;pillar_axis=y blockId=264 -runtimeId=7067 +runtimeId=216 minecraft:stripped_dark_oak_log;pillar_axis=z blockId=264 -runtimeId=7069 +runtimeId=218 minecraft:stripped_jungle_log;pillar_axis=x blockId=262 -runtimeId=7071 +runtimeId=651 minecraft:stripped_jungle_log;pillar_axis=y blockId=262 -runtimeId=7070 +runtimeId=650 minecraft:stripped_jungle_log;pillar_axis=z blockId=262 -runtimeId=7072 +runtimeId=652 minecraft:stripped_oak_log;pillar_axis=x blockId=265 -runtimeId=7074 +runtimeId=7486 minecraft:stripped_oak_log;pillar_axis=y blockId=265 -runtimeId=7073 +runtimeId=7485 minecraft:stripped_oak_log;pillar_axis=z blockId=265 -runtimeId=7075 +runtimeId=7487 minecraft:stripped_spruce_log;pillar_axis=x blockId=260 -runtimeId=7077 +runtimeId=6254 minecraft:stripped_spruce_log;pillar_axis=y blockId=260 -runtimeId=7076 +runtimeId=6253 minecraft:stripped_spruce_log;pillar_axis=z blockId=260 -runtimeId=7078 +runtimeId=6255 minecraft:stripped_warped_hyphae;pillar_axis=x blockId=556 -runtimeId=7080 +runtimeId=5530 minecraft:stripped_warped_hyphae;pillar_axis=y blockId=556 -runtimeId=7079 +runtimeId=5529 minecraft:stripped_warped_hyphae;pillar_axis=z blockId=556 -runtimeId=7081 +runtimeId=5531 minecraft:stripped_warped_stem;pillar_axis=x blockId=496 -runtimeId=7083 +runtimeId=7343 minecraft:stripped_warped_stem;pillar_axis=y blockId=496 -runtimeId=7082 +runtimeId=7342 minecraft:stripped_warped_stem;pillar_axis=z blockId=496 -runtimeId=7084 +runtimeId=7344 minecraft:structure_block;structure_block_type=corner blockId=252 -runtimeId=7088 +runtimeId=6344 minecraft:structure_block;structure_block_type=data blockId=252 -runtimeId=7085 +runtimeId=6341 minecraft:structure_block;structure_block_type=export blockId=252 -runtimeId=7090 +runtimeId=6346 minecraft:structure_block;structure_block_type=invalid blockId=252 -runtimeId=7089 +runtimeId=6345 minecraft:structure_block;structure_block_type=load blockId=252 -runtimeId=7087 +runtimeId=6343 minecraft:structure_block;structure_block_type=save blockId=252 -runtimeId=7086 +runtimeId=6342 minecraft:structure_void;structure_void_type=air blockId=217 -runtimeId=7092 +runtimeId=4174 minecraft:structure_void;structure_void_type=void blockId=217 -runtimeId=7091 +runtimeId=4173 minecraft:sweet_berry_bush;growth=0 blockId=462 -runtimeId=7093 +runtimeId=5934 minecraft:sweet_berry_bush;growth=1 blockId=462 -runtimeId=7094 +runtimeId=5935 minecraft:sweet_berry_bush;growth=2 blockId=462 -runtimeId=7095 +runtimeId=5936 minecraft:sweet_berry_bush;growth=3 blockId=462 -runtimeId=7096 +runtimeId=5937 minecraft:sweet_berry_bush;growth=4 blockId=462 -runtimeId=7097 +runtimeId=5938 minecraft:sweet_berry_bush;growth=5 blockId=462 -runtimeId=7098 +runtimeId=5939 minecraft:sweet_berry_bush;growth=6 blockId=462 -runtimeId=7099 +runtimeId=5940 minecraft:sweet_berry_bush;growth=7 blockId=462 -runtimeId=7100 +runtimeId=5941 minecraft:tallgrass;tall_grass_type=default blockId=31 -runtimeId=7101 +runtimeId=935 minecraft:tallgrass;tall_grass_type=fern blockId=31 -runtimeId=7103 +runtimeId=937 minecraft:tallgrass;tall_grass_type=snow blockId=31 -runtimeId=7104 +runtimeId=938 minecraft:tallgrass;tall_grass_type=tall blockId=31 -runtimeId=7102 +runtimeId=936 minecraft:target blockId=494 -runtimeId=7105 +runtimeId=6355 minecraft:tinted_glass blockId=589 -runtimeId=7106 +runtimeId=5899 minecraft:tnt;explode_bit=0;allow_underwater_bit=0 blockId=46 -runtimeId=7107 +runtimeId=6581 minecraft:tnt;explode_bit=0;allow_underwater_bit=1 blockId=46 -runtimeId=7109 +runtimeId=6583 minecraft:tnt;explode_bit=1;allow_underwater_bit=0 blockId=46 -runtimeId=7108 +runtimeId=6582 minecraft:tnt;explode_bit=1;allow_underwater_bit=1 blockId=46 -runtimeId=7110 +runtimeId=6584 minecraft:torch;torch_facing_direction=east blockId=50 -runtimeId=7113 +runtimeId=734 minecraft:torch;torch_facing_direction=north blockId=50 -runtimeId=7114 +runtimeId=735 minecraft:torch;torch_facing_direction=south blockId=50 -runtimeId=7115 +runtimeId=736 minecraft:torch;torch_facing_direction=top blockId=50 -runtimeId=7116 +runtimeId=737 minecraft:torch;torch_facing_direction=unknown blockId=50 -runtimeId=7111 +runtimeId=732 minecraft:torch;torch_facing_direction=west blockId=50 -runtimeId=7112 +runtimeId=733 minecraft:trapdoor;open_bit=0;upside_down_bit=0;direction=0 blockId=96 -runtimeId=7117 +runtimeId=227 minecraft:trapdoor;open_bit=0;upside_down_bit=0;direction=1 blockId=96 -runtimeId=7118 +runtimeId=228 minecraft:trapdoor;open_bit=0;upside_down_bit=0;direction=2 blockId=96 -runtimeId=7119 +runtimeId=229 minecraft:trapdoor;open_bit=0;upside_down_bit=0;direction=3 blockId=96 -runtimeId=7120 +runtimeId=230 minecraft:trapdoor;open_bit=0;upside_down_bit=1;direction=0 blockId=96 -runtimeId=7121 +runtimeId=231 minecraft:trapdoor;open_bit=0;upside_down_bit=1;direction=1 blockId=96 -runtimeId=7122 +runtimeId=232 minecraft:trapdoor;open_bit=0;upside_down_bit=1;direction=2 blockId=96 -runtimeId=7123 +runtimeId=233 minecraft:trapdoor;open_bit=0;upside_down_bit=1;direction=3 blockId=96 -runtimeId=7124 +runtimeId=234 minecraft:trapdoor;open_bit=1;upside_down_bit=0;direction=0 blockId=96 -runtimeId=7125 +runtimeId=235 minecraft:trapdoor;open_bit=1;upside_down_bit=0;direction=1 blockId=96 -runtimeId=7126 +runtimeId=236 minecraft:trapdoor;open_bit=1;upside_down_bit=0;direction=2 blockId=96 -runtimeId=7127 +runtimeId=237 minecraft:trapdoor;open_bit=1;upside_down_bit=0;direction=3 blockId=96 -runtimeId=7128 +runtimeId=238 minecraft:trapdoor;open_bit=1;upside_down_bit=1;direction=0 blockId=96 -runtimeId=7129 +runtimeId=239 minecraft:trapdoor;open_bit=1;upside_down_bit=1;direction=1 blockId=96 -runtimeId=7130 +runtimeId=240 minecraft:trapdoor;open_bit=1;upside_down_bit=1;direction=2 blockId=96 -runtimeId=7131 +runtimeId=241 minecraft:trapdoor;open_bit=1;upside_down_bit=1;direction=3 blockId=96 -runtimeId=7132 +runtimeId=242 minecraft:trapped_chest;facing_direction=0 blockId=146 -runtimeId=7133 +runtimeId=5533 minecraft:trapped_chest;facing_direction=1 blockId=146 -runtimeId=7134 +runtimeId=5534 minecraft:trapped_chest;facing_direction=2 blockId=146 -runtimeId=7135 +runtimeId=5535 minecraft:trapped_chest;facing_direction=3 blockId=146 -runtimeId=7136 +runtimeId=5536 minecraft:trapped_chest;facing_direction=4 blockId=146 -runtimeId=7137 +runtimeId=5537 minecraft:trapped_chest;facing_direction=5 blockId=146 -runtimeId=7138 +runtimeId=5538 -minecraft:tripWire;powered_bit=0;suspended_bit=0;disarmed_bit=0;attached_bit=0 +minecraft:trip_wire;powered_bit=0;suspended_bit=0;disarmed_bit=0;attached_bit=0 blockId=132 -runtimeId=7139 +runtimeId=7381 -minecraft:tripWire;powered_bit=0;suspended_bit=0;disarmed_bit=0;attached_bit=1 +minecraft:trip_wire;powered_bit=0;suspended_bit=0;disarmed_bit=0;attached_bit=1 blockId=132 -runtimeId=7143 +runtimeId=7385 -minecraft:tripWire;powered_bit=0;suspended_bit=0;disarmed_bit=1;attached_bit=0 +minecraft:trip_wire;powered_bit=0;suspended_bit=0;disarmed_bit=1;attached_bit=0 blockId=132 -runtimeId=7147 +runtimeId=7389 -minecraft:tripWire;powered_bit=0;suspended_bit=0;disarmed_bit=1;attached_bit=1 +minecraft:trip_wire;powered_bit=0;suspended_bit=0;disarmed_bit=1;attached_bit=1 blockId=132 -runtimeId=7151 +runtimeId=7393 -minecraft:tripWire;powered_bit=0;suspended_bit=1;disarmed_bit=0;attached_bit=0 +minecraft:trip_wire;powered_bit=0;suspended_bit=1;disarmed_bit=0;attached_bit=0 blockId=132 -runtimeId=7141 +runtimeId=7383 -minecraft:tripWire;powered_bit=0;suspended_bit=1;disarmed_bit=0;attached_bit=1 +minecraft:trip_wire;powered_bit=0;suspended_bit=1;disarmed_bit=0;attached_bit=1 blockId=132 -runtimeId=7145 +runtimeId=7387 -minecraft:tripWire;powered_bit=0;suspended_bit=1;disarmed_bit=1;attached_bit=0 +minecraft:trip_wire;powered_bit=0;suspended_bit=1;disarmed_bit=1;attached_bit=0 blockId=132 -runtimeId=7149 +runtimeId=7391 -minecraft:tripWire;powered_bit=0;suspended_bit=1;disarmed_bit=1;attached_bit=1 +minecraft:trip_wire;powered_bit=0;suspended_bit=1;disarmed_bit=1;attached_bit=1 blockId=132 -runtimeId=7153 +runtimeId=7395 -minecraft:tripWire;powered_bit=1;suspended_bit=0;disarmed_bit=0;attached_bit=0 +minecraft:trip_wire;powered_bit=1;suspended_bit=0;disarmed_bit=0;attached_bit=0 blockId=132 -runtimeId=7140 +runtimeId=7382 -minecraft:tripWire;powered_bit=1;suspended_bit=0;disarmed_bit=0;attached_bit=1 +minecraft:trip_wire;powered_bit=1;suspended_bit=0;disarmed_bit=0;attached_bit=1 blockId=132 -runtimeId=7144 +runtimeId=7386 -minecraft:tripWire;powered_bit=1;suspended_bit=0;disarmed_bit=1;attached_bit=0 +minecraft:trip_wire;powered_bit=1;suspended_bit=0;disarmed_bit=1;attached_bit=0 blockId=132 -runtimeId=7148 +runtimeId=7390 -minecraft:tripWire;powered_bit=1;suspended_bit=0;disarmed_bit=1;attached_bit=1 +minecraft:trip_wire;powered_bit=1;suspended_bit=0;disarmed_bit=1;attached_bit=1 blockId=132 -runtimeId=7152 +runtimeId=7394 -minecraft:tripWire;powered_bit=1;suspended_bit=1;disarmed_bit=0;attached_bit=0 +minecraft:trip_wire;powered_bit=1;suspended_bit=1;disarmed_bit=0;attached_bit=0 blockId=132 -runtimeId=7142 +runtimeId=7384 -minecraft:tripWire;powered_bit=1;suspended_bit=1;disarmed_bit=0;attached_bit=1 +minecraft:trip_wire;powered_bit=1;suspended_bit=1;disarmed_bit=0;attached_bit=1 blockId=132 -runtimeId=7146 +runtimeId=7388 -minecraft:tripWire;powered_bit=1;suspended_bit=1;disarmed_bit=1;attached_bit=0 +minecraft:trip_wire;powered_bit=1;suspended_bit=1;disarmed_bit=1;attached_bit=0 blockId=132 -runtimeId=7150 +runtimeId=7392 -minecraft:tripWire;powered_bit=1;suspended_bit=1;disarmed_bit=1;attached_bit=1 +minecraft:trip_wire;powered_bit=1;suspended_bit=1;disarmed_bit=1;attached_bit=1 blockId=132 -runtimeId=7154 +runtimeId=7396 minecraft:tripwire_hook;powered_bit=0;attached_bit=0;direction=0 blockId=131 -runtimeId=7155 +runtimeId=5838 minecraft:tripwire_hook;powered_bit=0;attached_bit=0;direction=1 blockId=131 -runtimeId=7156 +runtimeId=5839 minecraft:tripwire_hook;powered_bit=0;attached_bit=0;direction=2 blockId=131 -runtimeId=7157 +runtimeId=5840 minecraft:tripwire_hook;powered_bit=0;attached_bit=0;direction=3 blockId=131 -runtimeId=7158 +runtimeId=5841 minecraft:tripwire_hook;powered_bit=0;attached_bit=1;direction=0 blockId=131 -runtimeId=7159 +runtimeId=5842 minecraft:tripwire_hook;powered_bit=0;attached_bit=1;direction=1 blockId=131 -runtimeId=7160 +runtimeId=5843 minecraft:tripwire_hook;powered_bit=0;attached_bit=1;direction=2 blockId=131 -runtimeId=7161 +runtimeId=5844 minecraft:tripwire_hook;powered_bit=0;attached_bit=1;direction=3 blockId=131 -runtimeId=7162 +runtimeId=5845 minecraft:tripwire_hook;powered_bit=1;attached_bit=0;direction=0 blockId=131 -runtimeId=7163 +runtimeId=5846 minecraft:tripwire_hook;powered_bit=1;attached_bit=0;direction=1 blockId=131 -runtimeId=7164 +runtimeId=5847 minecraft:tripwire_hook;powered_bit=1;attached_bit=0;direction=2 blockId=131 -runtimeId=7165 +runtimeId=5848 minecraft:tripwire_hook;powered_bit=1;attached_bit=0;direction=3 blockId=131 -runtimeId=7166 +runtimeId=5849 minecraft:tripwire_hook;powered_bit=1;attached_bit=1;direction=0 blockId=131 -runtimeId=7167 +runtimeId=5850 minecraft:tripwire_hook;powered_bit=1;attached_bit=1;direction=1 blockId=131 -runtimeId=7168 +runtimeId=5851 minecraft:tripwire_hook;powered_bit=1;attached_bit=1;direction=2 blockId=131 -runtimeId=7169 +runtimeId=5852 minecraft:tripwire_hook;powered_bit=1;attached_bit=1;direction=3 blockId=131 -runtimeId=7170 +runtimeId=5853 minecraft:tuff blockId=588 -runtimeId=7171 +runtimeId=360 minecraft:turtle_egg;cracked_state=cracked;turtle_egg_count=four_egg blockId=414 -runtimeId=7179 +runtimeId=7946 minecraft:turtle_egg;cracked_state=cracked;turtle_egg_count=one_egg blockId=414 -runtimeId=7176 +runtimeId=7943 minecraft:turtle_egg;cracked_state=cracked;turtle_egg_count=three_egg blockId=414 -runtimeId=7178 +runtimeId=7945 minecraft:turtle_egg;cracked_state=cracked;turtle_egg_count=two_egg blockId=414 -runtimeId=7177 +runtimeId=7944 minecraft:turtle_egg;cracked_state=max_cracked;turtle_egg_count=four_egg blockId=414 -runtimeId=7183 +runtimeId=7950 minecraft:turtle_egg;cracked_state=max_cracked;turtle_egg_count=one_egg blockId=414 -runtimeId=7180 +runtimeId=7947 minecraft:turtle_egg;cracked_state=max_cracked;turtle_egg_count=three_egg blockId=414 -runtimeId=7182 +runtimeId=7949 minecraft:turtle_egg;cracked_state=max_cracked;turtle_egg_count=two_egg blockId=414 -runtimeId=7181 +runtimeId=7948 minecraft:turtle_egg;cracked_state=no_cracks;turtle_egg_count=four_egg blockId=414 -runtimeId=7175 +runtimeId=7942 minecraft:turtle_egg;cracked_state=no_cracks;turtle_egg_count=one_egg blockId=414 -runtimeId=7172 +runtimeId=7939 minecraft:turtle_egg;cracked_state=no_cracks;turtle_egg_count=three_egg blockId=414 -runtimeId=7174 +runtimeId=7941 minecraft:turtle_egg;cracked_state=no_cracks;turtle_egg_count=two_egg blockId=414 -runtimeId=7173 +runtimeId=7940 minecraft:twisting_vines;twisting_vines_age=0 blockId=542 -runtimeId=7184 +runtimeId=5641 minecraft:twisting_vines;twisting_vines_age=1 blockId=542 -runtimeId=7185 +runtimeId=5642 minecraft:twisting_vines;twisting_vines_age=2 blockId=542 -runtimeId=7186 +runtimeId=5643 minecraft:twisting_vines;twisting_vines_age=3 blockId=542 -runtimeId=7187 +runtimeId=5644 minecraft:twisting_vines;twisting_vines_age=4 blockId=542 -runtimeId=7188 +runtimeId=5645 minecraft:twisting_vines;twisting_vines_age=5 blockId=542 -runtimeId=7189 +runtimeId=5646 minecraft:twisting_vines;twisting_vines_age=6 blockId=542 -runtimeId=7190 +runtimeId=5647 minecraft:twisting_vines;twisting_vines_age=7 blockId=542 -runtimeId=7191 +runtimeId=5648 minecraft:twisting_vines;twisting_vines_age=8 blockId=542 -runtimeId=7192 +runtimeId=5649 minecraft:twisting_vines;twisting_vines_age=9 blockId=542 -runtimeId=7193 +runtimeId=5650 minecraft:twisting_vines;twisting_vines_age=10 blockId=542 -runtimeId=7194 +runtimeId=5651 minecraft:twisting_vines;twisting_vines_age=11 blockId=542 -runtimeId=7195 +runtimeId=5652 minecraft:twisting_vines;twisting_vines_age=12 blockId=542 -runtimeId=7196 +runtimeId=5653 minecraft:twisting_vines;twisting_vines_age=13 blockId=542 -runtimeId=7197 +runtimeId=5654 minecraft:twisting_vines;twisting_vines_age=14 blockId=542 -runtimeId=7198 +runtimeId=5655 minecraft:twisting_vines;twisting_vines_age=15 blockId=542 -runtimeId=7199 +runtimeId=5656 minecraft:twisting_vines;twisting_vines_age=16 blockId=542 -runtimeId=7200 +runtimeId=5657 minecraft:twisting_vines;twisting_vines_age=17 blockId=542 -runtimeId=7201 +runtimeId=5658 minecraft:twisting_vines;twisting_vines_age=18 blockId=542 -runtimeId=7202 +runtimeId=5659 minecraft:twisting_vines;twisting_vines_age=19 blockId=542 -runtimeId=7203 +runtimeId=5660 minecraft:twisting_vines;twisting_vines_age=20 blockId=542 -runtimeId=7204 +runtimeId=5661 minecraft:twisting_vines;twisting_vines_age=21 blockId=542 -runtimeId=7205 +runtimeId=5662 minecraft:twisting_vines;twisting_vines_age=22 blockId=542 -runtimeId=7206 +runtimeId=5663 minecraft:twisting_vines;twisting_vines_age=23 blockId=542 -runtimeId=7207 +runtimeId=5664 minecraft:twisting_vines;twisting_vines_age=24 blockId=542 -runtimeId=7208 +runtimeId=5665 minecraft:twisting_vines;twisting_vines_age=25 blockId=542 -runtimeId=7209 +runtimeId=5666 minecraft:underwater_torch;torch_facing_direction=east blockId=239 -runtimeId=7212 +runtimeId=3457 minecraft:underwater_torch;torch_facing_direction=north blockId=239 -runtimeId=7213 +runtimeId=3458 minecraft:underwater_torch;torch_facing_direction=south blockId=239 -runtimeId=7214 +runtimeId=3459 minecraft:underwater_torch;torch_facing_direction=top blockId=239 -runtimeId=7215 +runtimeId=3460 minecraft:underwater_torch;torch_facing_direction=unknown blockId=239 -runtimeId=7210 +runtimeId=3455 minecraft:underwater_torch;torch_facing_direction=west blockId=239 -runtimeId=7211 +runtimeId=3456 minecraft:undyed_shulker_box blockId=205 -runtimeId=7216 +runtimeId=3686 minecraft:unknown blockId=560 -runtimeId=7217 +runtimeId=4536 minecraft:unlit_redstone_torch;torch_facing_direction=east blockId=75 -runtimeId=7220 +runtimeId=8191 minecraft:unlit_redstone_torch;torch_facing_direction=north blockId=75 -runtimeId=7221 +runtimeId=8192 minecraft:unlit_redstone_torch;torch_facing_direction=south blockId=75 -runtimeId=7222 +runtimeId=8193 minecraft:unlit_redstone_torch;torch_facing_direction=top blockId=75 -runtimeId=7223 +runtimeId=8194 minecraft:unlit_redstone_torch;torch_facing_direction=unknown blockId=75 -runtimeId=7218 +runtimeId=8189 minecraft:unlit_redstone_torch;torch_facing_direction=west blockId=75 -runtimeId=7219 +runtimeId=8190 minecraft:unpowered_comparator;output_subtract_bit=0;output_lit_bit=0;direction=0 blockId=149 -runtimeId=7224 +runtimeId=6317 minecraft:unpowered_comparator;output_subtract_bit=0;output_lit_bit=0;direction=1 blockId=149 -runtimeId=7225 +runtimeId=6318 minecraft:unpowered_comparator;output_subtract_bit=0;output_lit_bit=0;direction=2 blockId=149 -runtimeId=7226 +runtimeId=6319 minecraft:unpowered_comparator;output_subtract_bit=0;output_lit_bit=0;direction=3 blockId=149 -runtimeId=7227 +runtimeId=6320 minecraft:unpowered_comparator;output_subtract_bit=0;output_lit_bit=1;direction=0 blockId=149 -runtimeId=7232 +runtimeId=6325 minecraft:unpowered_comparator;output_subtract_bit=0;output_lit_bit=1;direction=1 blockId=149 -runtimeId=7233 +runtimeId=6326 minecraft:unpowered_comparator;output_subtract_bit=0;output_lit_bit=1;direction=2 blockId=149 -runtimeId=7234 +runtimeId=6327 minecraft:unpowered_comparator;output_subtract_bit=0;output_lit_bit=1;direction=3 blockId=149 -runtimeId=7235 +runtimeId=6328 minecraft:unpowered_comparator;output_subtract_bit=1;output_lit_bit=0;direction=0 blockId=149 -runtimeId=7228 +runtimeId=6321 minecraft:unpowered_comparator;output_subtract_bit=1;output_lit_bit=0;direction=1 blockId=149 -runtimeId=7229 +runtimeId=6322 minecraft:unpowered_comparator;output_subtract_bit=1;output_lit_bit=0;direction=2 blockId=149 -runtimeId=7230 +runtimeId=6323 minecraft:unpowered_comparator;output_subtract_bit=1;output_lit_bit=0;direction=3 blockId=149 -runtimeId=7231 +runtimeId=6324 minecraft:unpowered_comparator;output_subtract_bit=1;output_lit_bit=1;direction=0 blockId=149 -runtimeId=7236 +runtimeId=6329 minecraft:unpowered_comparator;output_subtract_bit=1;output_lit_bit=1;direction=1 blockId=149 -runtimeId=7237 +runtimeId=6330 minecraft:unpowered_comparator;output_subtract_bit=1;output_lit_bit=1;direction=2 blockId=149 -runtimeId=7238 +runtimeId=6331 minecraft:unpowered_comparator;output_subtract_bit=1;output_lit_bit=1;direction=3 blockId=149 -runtimeId=7239 +runtimeId=6332 minecraft:unpowered_repeater;repeater_delay=0;direction=0 blockId=93 -runtimeId=7240 +runtimeId=5480 minecraft:unpowered_repeater;repeater_delay=0;direction=1 blockId=93 -runtimeId=7241 +runtimeId=5481 minecraft:unpowered_repeater;repeater_delay=0;direction=2 blockId=93 -runtimeId=7242 +runtimeId=5482 minecraft:unpowered_repeater;repeater_delay=0;direction=3 blockId=93 -runtimeId=7243 +runtimeId=5483 minecraft:unpowered_repeater;repeater_delay=1;direction=0 blockId=93 -runtimeId=7244 +runtimeId=5484 minecraft:unpowered_repeater;repeater_delay=1;direction=1 blockId=93 -runtimeId=7245 +runtimeId=5485 minecraft:unpowered_repeater;repeater_delay=1;direction=2 blockId=93 -runtimeId=7246 +runtimeId=5486 minecraft:unpowered_repeater;repeater_delay=1;direction=3 blockId=93 -runtimeId=7247 +runtimeId=5487 minecraft:unpowered_repeater;repeater_delay=2;direction=0 blockId=93 -runtimeId=7248 +runtimeId=5488 minecraft:unpowered_repeater;repeater_delay=2;direction=1 blockId=93 -runtimeId=7249 +runtimeId=5489 minecraft:unpowered_repeater;repeater_delay=2;direction=2 blockId=93 -runtimeId=7250 +runtimeId=5490 minecraft:unpowered_repeater;repeater_delay=2;direction=3 blockId=93 -runtimeId=7251 +runtimeId=5491 minecraft:unpowered_repeater;repeater_delay=3;direction=0 blockId=93 -runtimeId=7252 +runtimeId=5492 minecraft:unpowered_repeater;repeater_delay=3;direction=1 blockId=93 -runtimeId=7253 +runtimeId=5493 minecraft:unpowered_repeater;repeater_delay=3;direction=2 blockId=93 -runtimeId=7254 +runtimeId=5494 minecraft:unpowered_repeater;repeater_delay=3;direction=3 blockId=93 -runtimeId=7255 +runtimeId=5495 + +minecraft:verdant_froglight;pillar_axis=x +blockId=725 +runtimeId=6373 + +minecraft:verdant_froglight;pillar_axis=y +blockId=725 +runtimeId=6372 + +minecraft:verdant_froglight;pillar_axis=z +blockId=725 +runtimeId=6374 minecraft:vine;vine_direction_bits=0 blockId=106 -runtimeId=7256 +runtimeId=902 minecraft:vine;vine_direction_bits=1 blockId=106 -runtimeId=7257 +runtimeId=903 minecraft:vine;vine_direction_bits=2 blockId=106 -runtimeId=7258 +runtimeId=904 minecraft:vine;vine_direction_bits=3 blockId=106 -runtimeId=7259 +runtimeId=905 minecraft:vine;vine_direction_bits=4 blockId=106 -runtimeId=7260 +runtimeId=906 minecraft:vine;vine_direction_bits=5 blockId=106 -runtimeId=7261 +runtimeId=907 minecraft:vine;vine_direction_bits=6 blockId=106 -runtimeId=7262 +runtimeId=908 minecraft:vine;vine_direction_bits=7 blockId=106 -runtimeId=7263 +runtimeId=909 minecraft:vine;vine_direction_bits=8 blockId=106 -runtimeId=7264 +runtimeId=910 minecraft:vine;vine_direction_bits=9 blockId=106 -runtimeId=7265 +runtimeId=911 minecraft:vine;vine_direction_bits=10 blockId=106 -runtimeId=7266 +runtimeId=912 minecraft:vine;vine_direction_bits=11 blockId=106 -runtimeId=7267 +runtimeId=913 minecraft:vine;vine_direction_bits=12 blockId=106 -runtimeId=7268 +runtimeId=914 minecraft:vine;vine_direction_bits=13 blockId=106 -runtimeId=7269 +runtimeId=915 minecraft:vine;vine_direction_bits=14 blockId=106 -runtimeId=7270 +runtimeId=916 minecraft:vine;vine_direction_bits=15 blockId=106 -runtimeId=7271 +runtimeId=917 minecraft:wall_banner;facing_direction=0 blockId=177 -runtimeId=7272 +runtimeId=5635 minecraft:wall_banner;facing_direction=1 blockId=177 -runtimeId=7273 +runtimeId=5636 minecraft:wall_banner;facing_direction=2 blockId=177 -runtimeId=7274 +runtimeId=5637 minecraft:wall_banner;facing_direction=3 blockId=177 -runtimeId=7275 +runtimeId=5638 minecraft:wall_banner;facing_direction=4 blockId=177 -runtimeId=7276 +runtimeId=5639 minecraft:wall_banner;facing_direction=5 blockId=177 -runtimeId=7277 +runtimeId=5640 minecraft:wall_sign;facing_direction=0 blockId=68 -runtimeId=7278 +runtimeId=4824 minecraft:wall_sign;facing_direction=1 blockId=68 -runtimeId=7279 +runtimeId=4825 minecraft:wall_sign;facing_direction=2 blockId=68 -runtimeId=7280 +runtimeId=4826 minecraft:wall_sign;facing_direction=3 blockId=68 -runtimeId=7281 +runtimeId=4827 minecraft:wall_sign;facing_direction=4 blockId=68 -runtimeId=7282 +runtimeId=4828 minecraft:wall_sign;facing_direction=5 blockId=68 -runtimeId=7283 +runtimeId=4829 minecraft:warped_button;button_pressed_bit=0;facing_direction=0 blockId=516 -runtimeId=7284 +runtimeId=7192 minecraft:warped_button;button_pressed_bit=0;facing_direction=1 blockId=516 -runtimeId=7285 +runtimeId=7193 minecraft:warped_button;button_pressed_bit=0;facing_direction=2 blockId=516 -runtimeId=7286 +runtimeId=7194 minecraft:warped_button;button_pressed_bit=0;facing_direction=3 blockId=516 -runtimeId=7287 +runtimeId=7195 minecraft:warped_button;button_pressed_bit=0;facing_direction=4 blockId=516 -runtimeId=7288 +runtimeId=7196 minecraft:warped_button;button_pressed_bit=0;facing_direction=5 blockId=516 -runtimeId=7289 +runtimeId=7197 minecraft:warped_button;button_pressed_bit=1;facing_direction=0 blockId=516 -runtimeId=7290 +runtimeId=7198 minecraft:warped_button;button_pressed_bit=1;facing_direction=1 blockId=516 -runtimeId=7291 +runtimeId=7199 minecraft:warped_button;button_pressed_bit=1;facing_direction=2 blockId=516 -runtimeId=7292 +runtimeId=7200 minecraft:warped_button;button_pressed_bit=1;facing_direction=3 blockId=516 -runtimeId=7293 +runtimeId=7201 minecraft:warped_button;button_pressed_bit=1;facing_direction=4 blockId=516 -runtimeId=7294 +runtimeId=7202 minecraft:warped_button;button_pressed_bit=1;facing_direction=5 blockId=516 -runtimeId=7295 +runtimeId=7203 minecraft:warped_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=0 blockId=500 -runtimeId=7296 +runtimeId=28 minecraft:warped_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=1 blockId=500 -runtimeId=7297 +runtimeId=29 minecraft:warped_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=2 blockId=500 -runtimeId=7298 +runtimeId=30 minecraft:warped_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=3 blockId=500 -runtimeId=7299 +runtimeId=31 minecraft:warped_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=0 blockId=500 -runtimeId=7312 +runtimeId=44 minecraft:warped_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=1 blockId=500 -runtimeId=7313 +runtimeId=45 minecraft:warped_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=2 blockId=500 -runtimeId=7314 +runtimeId=46 minecraft:warped_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=3 blockId=500 -runtimeId=7315 +runtimeId=47 minecraft:warped_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=0 blockId=500 -runtimeId=7304 +runtimeId=36 minecraft:warped_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=1 blockId=500 -runtimeId=7305 +runtimeId=37 minecraft:warped_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=2 blockId=500 -runtimeId=7306 +runtimeId=38 minecraft:warped_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=3 blockId=500 -runtimeId=7307 +runtimeId=39 minecraft:warped_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=0 blockId=500 -runtimeId=7320 +runtimeId=52 minecraft:warped_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=1 blockId=500 -runtimeId=7321 +runtimeId=53 minecraft:warped_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=2 blockId=500 -runtimeId=7322 +runtimeId=54 minecraft:warped_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=3 blockId=500 -runtimeId=7323 +runtimeId=55 minecraft:warped_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=0 blockId=500 -runtimeId=7300 +runtimeId=32 minecraft:warped_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=1 blockId=500 -runtimeId=7301 +runtimeId=33 minecraft:warped_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=2 blockId=500 -runtimeId=7302 +runtimeId=34 minecraft:warped_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=3 blockId=500 -runtimeId=7303 +runtimeId=35 minecraft:warped_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=0 blockId=500 -runtimeId=7316 +runtimeId=48 minecraft:warped_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=1 blockId=500 -runtimeId=7317 +runtimeId=49 minecraft:warped_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=2 blockId=500 -runtimeId=7318 +runtimeId=50 minecraft:warped_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=3 blockId=500 -runtimeId=7319 +runtimeId=51 minecraft:warped_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=0 blockId=500 -runtimeId=7308 +runtimeId=40 minecraft:warped_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=1 blockId=500 -runtimeId=7309 +runtimeId=41 minecraft:warped_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=2 blockId=500 -runtimeId=7310 +runtimeId=42 minecraft:warped_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=3 blockId=500 -runtimeId=7311 +runtimeId=43 minecraft:warped_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=0 blockId=500 -runtimeId=7324 +runtimeId=56 minecraft:warped_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=1 blockId=500 -runtimeId=7325 +runtimeId=57 minecraft:warped_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=2 blockId=500 -runtimeId=7326 +runtimeId=58 minecraft:warped_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=3 blockId=500 -runtimeId=7327 +runtimeId=59 minecraft:warped_double_slab;top_slot_bit=0 blockId=522 -runtimeId=7328 +runtimeId=4329 minecraft:warped_double_slab;top_slot_bit=1 blockId=522 -runtimeId=7329 +runtimeId=4330 minecraft:warped_fence blockId=512 -runtimeId=7330 +runtimeId=5777 minecraft:warped_fence_gate;in_wall_bit=0;open_bit=0;direction=0 blockId=514 -runtimeId=7331 +runtimeId=5349 minecraft:warped_fence_gate;in_wall_bit=0;open_bit=0;direction=1 blockId=514 -runtimeId=7332 +runtimeId=5350 minecraft:warped_fence_gate;in_wall_bit=0;open_bit=0;direction=2 blockId=514 -runtimeId=7333 +runtimeId=5351 minecraft:warped_fence_gate;in_wall_bit=0;open_bit=0;direction=3 blockId=514 -runtimeId=7334 +runtimeId=5352 minecraft:warped_fence_gate;in_wall_bit=0;open_bit=1;direction=0 blockId=514 -runtimeId=7335 +runtimeId=5353 minecraft:warped_fence_gate;in_wall_bit=0;open_bit=1;direction=1 blockId=514 -runtimeId=7336 +runtimeId=5354 minecraft:warped_fence_gate;in_wall_bit=0;open_bit=1;direction=2 blockId=514 -runtimeId=7337 +runtimeId=5355 minecraft:warped_fence_gate;in_wall_bit=0;open_bit=1;direction=3 blockId=514 -runtimeId=7338 +runtimeId=5356 minecraft:warped_fence_gate;in_wall_bit=1;open_bit=0;direction=0 blockId=514 -runtimeId=7339 +runtimeId=5357 minecraft:warped_fence_gate;in_wall_bit=1;open_bit=0;direction=1 blockId=514 -runtimeId=7340 +runtimeId=5358 minecraft:warped_fence_gate;in_wall_bit=1;open_bit=0;direction=2 blockId=514 -runtimeId=7341 +runtimeId=5359 minecraft:warped_fence_gate;in_wall_bit=1;open_bit=0;direction=3 blockId=514 -runtimeId=7342 +runtimeId=5360 minecraft:warped_fence_gate;in_wall_bit=1;open_bit=1;direction=0 blockId=514 -runtimeId=7343 +runtimeId=5361 minecraft:warped_fence_gate;in_wall_bit=1;open_bit=1;direction=1 blockId=514 -runtimeId=7344 +runtimeId=5362 minecraft:warped_fence_gate;in_wall_bit=1;open_bit=1;direction=2 blockId=514 -runtimeId=7345 +runtimeId=5363 minecraft:warped_fence_gate;in_wall_bit=1;open_bit=1;direction=3 blockId=514 -runtimeId=7346 +runtimeId=5364 minecraft:warped_fungus blockId=484 -runtimeId=7347 +runtimeId=301 minecraft:warped_hyphae;pillar_axis=x blockId=553 -runtimeId=7349 +runtimeId=5827 minecraft:warped_hyphae;pillar_axis=y blockId=553 -runtimeId=7348 +runtimeId=5826 minecraft:warped_hyphae;pillar_axis=z blockId=553 -runtimeId=7350 +runtimeId=5828 minecraft:warped_nylium blockId=488 -runtimeId=7351 +runtimeId=6314 minecraft:warped_planks blockId=498 -runtimeId=7352 +runtimeId=928 minecraft:warped_pressure_plate;redstone_signal=0 blockId=518 -runtimeId=7353 +runtimeId=270 minecraft:warped_pressure_plate;redstone_signal=1 blockId=518 -runtimeId=7354 +runtimeId=271 minecraft:warped_pressure_plate;redstone_signal=2 blockId=518 -runtimeId=7355 +runtimeId=272 minecraft:warped_pressure_plate;redstone_signal=3 blockId=518 -runtimeId=7356 +runtimeId=273 minecraft:warped_pressure_plate;redstone_signal=4 blockId=518 -runtimeId=7357 +runtimeId=274 minecraft:warped_pressure_plate;redstone_signal=5 blockId=518 -runtimeId=7358 +runtimeId=275 minecraft:warped_pressure_plate;redstone_signal=6 blockId=518 -runtimeId=7359 +runtimeId=276 minecraft:warped_pressure_plate;redstone_signal=7 blockId=518 -runtimeId=7360 +runtimeId=277 minecraft:warped_pressure_plate;redstone_signal=8 blockId=518 -runtimeId=7361 +runtimeId=278 minecraft:warped_pressure_plate;redstone_signal=9 blockId=518 -runtimeId=7362 +runtimeId=279 minecraft:warped_pressure_plate;redstone_signal=10 blockId=518 -runtimeId=7363 +runtimeId=280 minecraft:warped_pressure_plate;redstone_signal=11 blockId=518 -runtimeId=7364 +runtimeId=281 minecraft:warped_pressure_plate;redstone_signal=12 blockId=518 -runtimeId=7365 +runtimeId=282 minecraft:warped_pressure_plate;redstone_signal=13 blockId=518 -runtimeId=7366 +runtimeId=283 minecraft:warped_pressure_plate;redstone_signal=14 blockId=518 -runtimeId=7367 +runtimeId=284 minecraft:warped_pressure_plate;redstone_signal=15 blockId=518 -runtimeId=7368 +runtimeId=285 minecraft:warped_roots blockId=479 -runtimeId=7369 +runtimeId=4310 minecraft:warped_slab;top_slot_bit=0 blockId=520 -runtimeId=7370 +runtimeId=6375 minecraft:warped_slab;top_slot_bit=1 blockId=520 -runtimeId=7371 +runtimeId=6376 minecraft:warped_stairs;upside_down_bit=0;weirdo_direction=0 blockId=510 -runtimeId=7372 +runtimeId=3723 minecraft:warped_stairs;upside_down_bit=0;weirdo_direction=1 blockId=510 -runtimeId=7373 +runtimeId=3724 minecraft:warped_stairs;upside_down_bit=0;weirdo_direction=2 blockId=510 -runtimeId=7374 +runtimeId=3725 minecraft:warped_stairs;upside_down_bit=0;weirdo_direction=3 blockId=510 -runtimeId=7375 +runtimeId=3726 minecraft:warped_stairs;upside_down_bit=1;weirdo_direction=0 blockId=510 -runtimeId=7376 +runtimeId=3727 minecraft:warped_stairs;upside_down_bit=1;weirdo_direction=1 blockId=510 -runtimeId=7377 +runtimeId=3728 minecraft:warped_stairs;upside_down_bit=1;weirdo_direction=2 blockId=510 -runtimeId=7378 +runtimeId=3729 minecraft:warped_stairs;upside_down_bit=1;weirdo_direction=3 blockId=510 -runtimeId=7379 +runtimeId=3730 minecraft:warped_standing_sign;ground_sign_direction=0 blockId=506 -runtimeId=7380 +runtimeId=7140 minecraft:warped_standing_sign;ground_sign_direction=1 blockId=506 -runtimeId=7381 +runtimeId=7141 minecraft:warped_standing_sign;ground_sign_direction=2 blockId=506 -runtimeId=7382 +runtimeId=7142 minecraft:warped_standing_sign;ground_sign_direction=3 blockId=506 -runtimeId=7383 +runtimeId=7143 minecraft:warped_standing_sign;ground_sign_direction=4 blockId=506 -runtimeId=7384 +runtimeId=7144 minecraft:warped_standing_sign;ground_sign_direction=5 blockId=506 -runtimeId=7385 +runtimeId=7145 minecraft:warped_standing_sign;ground_sign_direction=6 blockId=506 -runtimeId=7386 +runtimeId=7146 minecraft:warped_standing_sign;ground_sign_direction=7 blockId=506 -runtimeId=7387 +runtimeId=7147 minecraft:warped_standing_sign;ground_sign_direction=8 blockId=506 -runtimeId=7388 +runtimeId=7148 minecraft:warped_standing_sign;ground_sign_direction=9 blockId=506 -runtimeId=7389 +runtimeId=7149 minecraft:warped_standing_sign;ground_sign_direction=10 blockId=506 -runtimeId=7390 +runtimeId=7150 minecraft:warped_standing_sign;ground_sign_direction=11 blockId=506 -runtimeId=7391 +runtimeId=7151 minecraft:warped_standing_sign;ground_sign_direction=12 blockId=506 -runtimeId=7392 +runtimeId=7152 minecraft:warped_standing_sign;ground_sign_direction=13 blockId=506 -runtimeId=7393 +runtimeId=7153 minecraft:warped_standing_sign;ground_sign_direction=14 blockId=506 -runtimeId=7394 +runtimeId=7154 minecraft:warped_standing_sign;ground_sign_direction=15 blockId=506 -runtimeId=7395 +runtimeId=7155 minecraft:warped_stem;pillar_axis=x blockId=481 -runtimeId=7397 +runtimeId=6378 minecraft:warped_stem;pillar_axis=y blockId=481 -runtimeId=7396 +runtimeId=6377 minecraft:warped_stem;pillar_axis=z blockId=481 -runtimeId=7398 +runtimeId=6379 minecraft:warped_trapdoor;open_bit=0;upside_down_bit=0;direction=0 blockId=502 -runtimeId=7399 +runtimeId=4689 minecraft:warped_trapdoor;open_bit=0;upside_down_bit=0;direction=1 blockId=502 -runtimeId=7400 +runtimeId=4690 minecraft:warped_trapdoor;open_bit=0;upside_down_bit=0;direction=2 blockId=502 -runtimeId=7401 +runtimeId=4691 minecraft:warped_trapdoor;open_bit=0;upside_down_bit=0;direction=3 blockId=502 -runtimeId=7402 +runtimeId=4692 minecraft:warped_trapdoor;open_bit=0;upside_down_bit=1;direction=0 blockId=502 -runtimeId=7403 +runtimeId=4693 minecraft:warped_trapdoor;open_bit=0;upside_down_bit=1;direction=1 blockId=502 -runtimeId=7404 +runtimeId=4694 minecraft:warped_trapdoor;open_bit=0;upside_down_bit=1;direction=2 blockId=502 -runtimeId=7405 +runtimeId=4695 minecraft:warped_trapdoor;open_bit=0;upside_down_bit=1;direction=3 blockId=502 -runtimeId=7406 +runtimeId=4696 minecraft:warped_trapdoor;open_bit=1;upside_down_bit=0;direction=0 blockId=502 -runtimeId=7407 +runtimeId=4697 minecraft:warped_trapdoor;open_bit=1;upside_down_bit=0;direction=1 blockId=502 -runtimeId=7408 +runtimeId=4698 minecraft:warped_trapdoor;open_bit=1;upside_down_bit=0;direction=2 blockId=502 -runtimeId=7409 +runtimeId=4699 minecraft:warped_trapdoor;open_bit=1;upside_down_bit=0;direction=3 blockId=502 -runtimeId=7410 +runtimeId=4700 minecraft:warped_trapdoor;open_bit=1;upside_down_bit=1;direction=0 blockId=502 -runtimeId=7411 +runtimeId=4701 minecraft:warped_trapdoor;open_bit=1;upside_down_bit=1;direction=1 blockId=502 -runtimeId=7412 +runtimeId=4702 minecraft:warped_trapdoor;open_bit=1;upside_down_bit=1;direction=2 blockId=502 -runtimeId=7413 +runtimeId=4703 minecraft:warped_trapdoor;open_bit=1;upside_down_bit=1;direction=3 blockId=502 -runtimeId=7414 +runtimeId=4704 minecraft:warped_wall_sign;facing_direction=0 blockId=508 -runtimeId=7415 +runtimeId=396 minecraft:warped_wall_sign;facing_direction=1 blockId=508 -runtimeId=7416 +runtimeId=397 minecraft:warped_wall_sign;facing_direction=2 blockId=508 -runtimeId=7417 +runtimeId=398 minecraft:warped_wall_sign;facing_direction=3 blockId=508 -runtimeId=7418 +runtimeId=399 minecraft:warped_wall_sign;facing_direction=4 blockId=508 -runtimeId=7419 +runtimeId=400 minecraft:warped_wall_sign;facing_direction=5 blockId=508 -runtimeId=7420 +runtimeId=401 minecraft:warped_wart_block blockId=482 -runtimeId=7421 +runtimeId=5829 minecraft:water;liquid_depth=0 blockId=9 -runtimeId=7422 +runtimeId=5456 minecraft:water;liquid_depth=1 blockId=9 -runtimeId=7423 +runtimeId=5457 minecraft:water;liquid_depth=2 blockId=9 -runtimeId=7424 +runtimeId=5458 minecraft:water;liquid_depth=3 blockId=9 -runtimeId=7425 +runtimeId=5459 minecraft:water;liquid_depth=4 blockId=9 -runtimeId=7426 +runtimeId=5460 minecraft:water;liquid_depth=5 blockId=9 -runtimeId=7427 +runtimeId=5461 minecraft:water;liquid_depth=6 blockId=9 -runtimeId=7428 +runtimeId=5462 minecraft:water;liquid_depth=7 blockId=9 -runtimeId=7429 +runtimeId=5463 minecraft:water;liquid_depth=8 blockId=9 -runtimeId=7430 +runtimeId=5464 minecraft:water;liquid_depth=9 blockId=9 -runtimeId=7431 +runtimeId=5465 minecraft:water;liquid_depth=10 blockId=9 -runtimeId=7432 +runtimeId=5466 minecraft:water;liquid_depth=11 blockId=9 -runtimeId=7433 +runtimeId=5467 minecraft:water;liquid_depth=12 blockId=9 -runtimeId=7434 +runtimeId=5468 minecraft:water;liquid_depth=13 blockId=9 -runtimeId=7435 +runtimeId=5469 minecraft:water;liquid_depth=14 blockId=9 -runtimeId=7436 +runtimeId=5470 minecraft:water;liquid_depth=15 blockId=9 -runtimeId=7437 +runtimeId=5471 minecraft:waterlily blockId=111 -runtimeId=7438 +runtimeId=1163 minecraft:waxed_copper blockId=599 -runtimeId=7439 +runtimeId=7676 minecraft:waxed_cut_copper blockId=606 -runtimeId=7440 +runtimeId=7235 minecraft:waxed_cut_copper_slab;top_slot_bit=0 blockId=620 -runtimeId=7441 +runtimeId=7757 minecraft:waxed_cut_copper_slab;top_slot_bit=1 blockId=620 -runtimeId=7442 +runtimeId=7758 minecraft:waxed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0 blockId=613 -runtimeId=7443 +runtimeId=403 minecraft:waxed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=1 blockId=613 -runtimeId=7444 +runtimeId=404 minecraft:waxed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=2 blockId=613 -runtimeId=7445 +runtimeId=405 minecraft:waxed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=3 blockId=613 -runtimeId=7446 +runtimeId=406 minecraft:waxed_cut_copper_stairs;upside_down_bit=1;weirdo_direction=0 blockId=613 -runtimeId=7447 +runtimeId=407 minecraft:waxed_cut_copper_stairs;upside_down_bit=1;weirdo_direction=1 blockId=613 -runtimeId=7448 +runtimeId=408 minecraft:waxed_cut_copper_stairs;upside_down_bit=1;weirdo_direction=2 blockId=613 -runtimeId=7449 +runtimeId=409 minecraft:waxed_cut_copper_stairs;upside_down_bit=1;weirdo_direction=3 blockId=613 -runtimeId=7450 +runtimeId=410 minecraft:waxed_double_cut_copper_slab;top_slot_bit=0 blockId=627 -runtimeId=7451 +runtimeId=5374 minecraft:waxed_double_cut_copper_slab;top_slot_bit=1 blockId=627 -runtimeId=7452 +runtimeId=5375 minecraft:waxed_exposed_copper blockId=600 -runtimeId=7453 +runtimeId=702 minecraft:waxed_exposed_cut_copper blockId=607 -runtimeId=7454 +runtimeId=3814 minecraft:waxed_exposed_cut_copper_slab;top_slot_bit=0 blockId=621 -runtimeId=7455 +runtimeId=247 minecraft:waxed_exposed_cut_copper_slab;top_slot_bit=1 blockId=621 -runtimeId=7456 +runtimeId=248 minecraft:waxed_exposed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0 blockId=614 -runtimeId=7457 +runtimeId=3891 minecraft:waxed_exposed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=1 blockId=614 -runtimeId=7458 +runtimeId=3892 minecraft:waxed_exposed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=2 blockId=614 -runtimeId=7459 +runtimeId=3893 minecraft:waxed_exposed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=3 blockId=614 -runtimeId=7460 +runtimeId=3894 minecraft:waxed_exposed_cut_copper_stairs;upside_down_bit=1;weirdo_direction=0 blockId=614 -runtimeId=7461 +runtimeId=3895 minecraft:waxed_exposed_cut_copper_stairs;upside_down_bit=1;weirdo_direction=1 blockId=614 -runtimeId=7462 +runtimeId=3896 minecraft:waxed_exposed_cut_copper_stairs;upside_down_bit=1;weirdo_direction=2 blockId=614 -runtimeId=7463 +runtimeId=3897 minecraft:waxed_exposed_cut_copper_stairs;upside_down_bit=1;weirdo_direction=3 blockId=614 -runtimeId=7464 +runtimeId=3898 minecraft:waxed_exposed_double_cut_copper_slab;top_slot_bit=0 blockId=628 -runtimeId=7465 +runtimeId=6802 minecraft:waxed_exposed_double_cut_copper_slab;top_slot_bit=1 blockId=628 -runtimeId=7466 +runtimeId=6803 minecraft:waxed_oxidized_copper blockId=701 -runtimeId=7467 +runtimeId=7484 minecraft:waxed_oxidized_cut_copper blockId=702 -runtimeId=7468 +runtimeId=214 minecraft:waxed_oxidized_cut_copper_slab;top_slot_bit=0 blockId=704 -runtimeId=7469 +runtimeId=716 minecraft:waxed_oxidized_cut_copper_slab;top_slot_bit=1 blockId=704 -runtimeId=7470 +runtimeId=717 minecraft:waxed_oxidized_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0 blockId=703 -runtimeId=7471 +runtimeId=5764 minecraft:waxed_oxidized_cut_copper_stairs;upside_down_bit=0;weirdo_direction=1 blockId=703 -runtimeId=7472 +runtimeId=5765 minecraft:waxed_oxidized_cut_copper_stairs;upside_down_bit=0;weirdo_direction=2 blockId=703 -runtimeId=7473 +runtimeId=5766 minecraft:waxed_oxidized_cut_copper_stairs;upside_down_bit=0;weirdo_direction=3 blockId=703 -runtimeId=7474 +runtimeId=5767 minecraft:waxed_oxidized_cut_copper_stairs;upside_down_bit=1;weirdo_direction=0 blockId=703 -runtimeId=7475 +runtimeId=5768 minecraft:waxed_oxidized_cut_copper_stairs;upside_down_bit=1;weirdo_direction=1 blockId=703 -runtimeId=7476 +runtimeId=5769 minecraft:waxed_oxidized_cut_copper_stairs;upside_down_bit=1;weirdo_direction=2 blockId=703 -runtimeId=7477 +runtimeId=5770 minecraft:waxed_oxidized_cut_copper_stairs;upside_down_bit=1;weirdo_direction=3 blockId=703 -runtimeId=7478 +runtimeId=5771 minecraft:waxed_oxidized_double_cut_copper_slab;top_slot_bit=0 blockId=705 -runtimeId=7479 +runtimeId=7693 minecraft:waxed_oxidized_double_cut_copper_slab;top_slot_bit=1 blockId=705 -runtimeId=7480 +runtimeId=7694 minecraft:waxed_weathered_copper blockId=601 -runtimeId=7481 +runtimeId=715 minecraft:waxed_weathered_cut_copper blockId=608 -runtimeId=7482 +runtimeId=4807 minecraft:waxed_weathered_cut_copper_slab;top_slot_bit=0 blockId=622 -runtimeId=7483 +runtimeId=6436 minecraft:waxed_weathered_cut_copper_slab;top_slot_bit=1 blockId=622 -runtimeId=7484 +runtimeId=6437 minecraft:waxed_weathered_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0 blockId=615 -runtimeId=7485 +runtimeId=6091 minecraft:waxed_weathered_cut_copper_stairs;upside_down_bit=0;weirdo_direction=1 blockId=615 -runtimeId=7486 +runtimeId=6092 minecraft:waxed_weathered_cut_copper_stairs;upside_down_bit=0;weirdo_direction=2 blockId=615 -runtimeId=7487 +runtimeId=6093 minecraft:waxed_weathered_cut_copper_stairs;upside_down_bit=0;weirdo_direction=3 blockId=615 -runtimeId=7488 +runtimeId=6094 minecraft:waxed_weathered_cut_copper_stairs;upside_down_bit=1;weirdo_direction=0 blockId=615 -runtimeId=7489 +runtimeId=6095 minecraft:waxed_weathered_cut_copper_stairs;upside_down_bit=1;weirdo_direction=1 blockId=615 -runtimeId=7490 +runtimeId=6096 minecraft:waxed_weathered_cut_copper_stairs;upside_down_bit=1;weirdo_direction=2 blockId=615 -runtimeId=7491 +runtimeId=6097 minecraft:waxed_weathered_cut_copper_stairs;upside_down_bit=1;weirdo_direction=3 blockId=615 -runtimeId=7492 +runtimeId=6098 minecraft:waxed_weathered_double_cut_copper_slab;top_slot_bit=0 blockId=629 -runtimeId=7493 +runtimeId=4634 minecraft:waxed_weathered_double_cut_copper_slab;top_slot_bit=1 blockId=629 -runtimeId=7494 +runtimeId=4635 minecraft:weathered_copper blockId=597 -runtimeId=7495 +runtimeId=8188 minecraft:weathered_cut_copper blockId=604 -runtimeId=7496 +runtimeId=7139 minecraft:weathered_cut_copper_slab;top_slot_bit=0 blockId=618 -runtimeId=7497 +runtimeId=5977 minecraft:weathered_cut_copper_slab;top_slot_bit=1 blockId=618 -runtimeId=7498 +runtimeId=5978 minecraft:weathered_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0 blockId=611 -runtimeId=7499 +runtimeId=4253 minecraft:weathered_cut_copper_stairs;upside_down_bit=0;weirdo_direction=1 blockId=611 -runtimeId=7500 +runtimeId=4254 minecraft:weathered_cut_copper_stairs;upside_down_bit=0;weirdo_direction=2 blockId=611 -runtimeId=7501 +runtimeId=4255 minecraft:weathered_cut_copper_stairs;upside_down_bit=0;weirdo_direction=3 blockId=611 -runtimeId=7502 +runtimeId=4256 minecraft:weathered_cut_copper_stairs;upside_down_bit=1;weirdo_direction=0 blockId=611 -runtimeId=7503 +runtimeId=4257 minecraft:weathered_cut_copper_stairs;upside_down_bit=1;weirdo_direction=1 blockId=611 -runtimeId=7504 +runtimeId=4258 minecraft:weathered_cut_copper_stairs;upside_down_bit=1;weirdo_direction=2 blockId=611 -runtimeId=7505 +runtimeId=4259 minecraft:weathered_cut_copper_stairs;upside_down_bit=1;weirdo_direction=3 blockId=611 -runtimeId=7506 +runtimeId=4260 minecraft:weathered_double_cut_copper_slab;top_slot_bit=0 blockId=625 -runtimeId=7507 +runtimeId=7287 minecraft:weathered_double_cut_copper_slab;top_slot_bit=1 blockId=625 -runtimeId=7508 +runtimeId=7288 minecraft:web blockId=30 -runtimeId=7509 +runtimeId=6587 minecraft:weeping_vines;weeping_vines_age=0 blockId=486 -runtimeId=7510 +runtimeId=5429 minecraft:weeping_vines;weeping_vines_age=1 blockId=486 -runtimeId=7511 +runtimeId=5430 minecraft:weeping_vines;weeping_vines_age=2 blockId=486 -runtimeId=7512 +runtimeId=5431 minecraft:weeping_vines;weeping_vines_age=3 blockId=486 -runtimeId=7513 +runtimeId=5432 minecraft:weeping_vines;weeping_vines_age=4 blockId=486 -runtimeId=7514 +runtimeId=5433 minecraft:weeping_vines;weeping_vines_age=5 blockId=486 -runtimeId=7515 +runtimeId=5434 minecraft:weeping_vines;weeping_vines_age=6 blockId=486 -runtimeId=7516 +runtimeId=5435 minecraft:weeping_vines;weeping_vines_age=7 blockId=486 -runtimeId=7517 +runtimeId=5436 minecraft:weeping_vines;weeping_vines_age=8 blockId=486 -runtimeId=7518 +runtimeId=5437 minecraft:weeping_vines;weeping_vines_age=9 blockId=486 -runtimeId=7519 +runtimeId=5438 minecraft:weeping_vines;weeping_vines_age=10 blockId=486 -runtimeId=7520 +runtimeId=5439 minecraft:weeping_vines;weeping_vines_age=11 blockId=486 -runtimeId=7521 +runtimeId=5440 minecraft:weeping_vines;weeping_vines_age=12 blockId=486 -runtimeId=7522 +runtimeId=5441 minecraft:weeping_vines;weeping_vines_age=13 blockId=486 -runtimeId=7523 +runtimeId=5442 minecraft:weeping_vines;weeping_vines_age=14 blockId=486 -runtimeId=7524 +runtimeId=5443 minecraft:weeping_vines;weeping_vines_age=15 blockId=486 -runtimeId=7525 +runtimeId=5444 minecraft:weeping_vines;weeping_vines_age=16 blockId=486 -runtimeId=7526 +runtimeId=5445 minecraft:weeping_vines;weeping_vines_age=17 blockId=486 -runtimeId=7527 +runtimeId=5446 minecraft:weeping_vines;weeping_vines_age=18 blockId=486 -runtimeId=7528 +runtimeId=5447 minecraft:weeping_vines;weeping_vines_age=19 blockId=486 -runtimeId=7529 +runtimeId=5448 minecraft:weeping_vines;weeping_vines_age=20 blockId=486 -runtimeId=7530 +runtimeId=5449 minecraft:weeping_vines;weeping_vines_age=21 blockId=486 -runtimeId=7531 +runtimeId=5450 minecraft:weeping_vines;weeping_vines_age=22 blockId=486 -runtimeId=7532 +runtimeId=5451 minecraft:weeping_vines;weeping_vines_age=23 blockId=486 -runtimeId=7533 +runtimeId=5452 minecraft:weeping_vines;weeping_vines_age=24 blockId=486 -runtimeId=7534 +runtimeId=5453 minecraft:weeping_vines;weeping_vines_age=25 blockId=486 -runtimeId=7535 +runtimeId=5454 minecraft:wheat;growth=0 blockId=59 -runtimeId=7536 +runtimeId=7227 minecraft:wheat;growth=1 blockId=59 -runtimeId=7537 +runtimeId=7228 minecraft:wheat;growth=2 blockId=59 -runtimeId=7538 +runtimeId=7229 minecraft:wheat;growth=3 blockId=59 -runtimeId=7539 +runtimeId=7230 minecraft:wheat;growth=4 blockId=59 -runtimeId=7540 +runtimeId=7231 minecraft:wheat;growth=5 blockId=59 -runtimeId=7541 +runtimeId=7232 minecraft:wheat;growth=6 blockId=59 -runtimeId=7542 +runtimeId=7233 minecraft:wheat;growth=7 blockId=59 -runtimeId=7543 +runtimeId=7234 + +minecraft:white_candle;lit=0;candles=0 +blockId=668 +runtimeId=5250 + +minecraft:white_candle;lit=0;candles=1 +blockId=668 +runtimeId=5251 + +minecraft:white_candle;lit=0;candles=2 +blockId=668 +runtimeId=5252 + +minecraft:white_candle;lit=0;candles=3 +blockId=668 +runtimeId=5253 + +minecraft:white_candle;lit=1;candles=0 +blockId=668 +runtimeId=5254 + +minecraft:white_candle;lit=1;candles=1 +blockId=668 +runtimeId=5255 + +minecraft:white_candle;lit=1;candles=2 +blockId=668 +runtimeId=5256 + +minecraft:white_candle;lit=1;candles=3 +blockId=668 +runtimeId=5257 + +minecraft:white_candle_cake;lit=0 +blockId=685 +runtimeId=7522 + +minecraft:white_candle_cake;lit=1 +blockId=685 +runtimeId=7523 minecraft:white_glazed_terracotta;facing_direction=0 blockId=220 -runtimeId=7544 +runtimeId=5523 minecraft:white_glazed_terracotta;facing_direction=1 blockId=220 -runtimeId=7545 +runtimeId=5524 minecraft:white_glazed_terracotta;facing_direction=2 blockId=220 -runtimeId=7546 +runtimeId=5525 minecraft:white_glazed_terracotta;facing_direction=3 blockId=220 -runtimeId=7547 +runtimeId=5526 minecraft:white_glazed_terracotta;facing_direction=4 blockId=220 -runtimeId=7548 +runtimeId=5527 minecraft:white_glazed_terracotta;facing_direction=5 blockId=220 -runtimeId=7549 +runtimeId=5528 minecraft:wither_rose blockId=471 -runtimeId=7550 +runtimeId=6089 minecraft:wood;wood_type=acacia;stripped_bit=0;pillar_axis=x blockId=467 -runtimeId=7567 +runtimeId=3495 minecraft:wood;wood_type=acacia;stripped_bit=0;pillar_axis=y blockId=467 -runtimeId=7555 +runtimeId=3483 minecraft:wood;wood_type=acacia;stripped_bit=0;pillar_axis=z blockId=467 -runtimeId=7579 +runtimeId=3507 minecraft:wood;wood_type=acacia;stripped_bit=1;pillar_axis=x blockId=467 -runtimeId=7573 +runtimeId=3501 minecraft:wood;wood_type=acacia;stripped_bit=1;pillar_axis=y blockId=467 -runtimeId=7561 +runtimeId=3489 minecraft:wood;wood_type=acacia;stripped_bit=1;pillar_axis=z blockId=467 -runtimeId=7585 +runtimeId=3513 minecraft:wood;wood_type=birch;stripped_bit=0;pillar_axis=x blockId=467 -runtimeId=7565 +runtimeId=3493 minecraft:wood;wood_type=birch;stripped_bit=0;pillar_axis=y blockId=467 -runtimeId=7553 +runtimeId=3481 minecraft:wood;wood_type=birch;stripped_bit=0;pillar_axis=z blockId=467 -runtimeId=7577 +runtimeId=3505 minecraft:wood;wood_type=birch;stripped_bit=1;pillar_axis=x blockId=467 -runtimeId=7571 +runtimeId=3499 minecraft:wood;wood_type=birch;stripped_bit=1;pillar_axis=y blockId=467 -runtimeId=7559 +runtimeId=3487 minecraft:wood;wood_type=birch;stripped_bit=1;pillar_axis=z blockId=467 -runtimeId=7583 +runtimeId=3511 minecraft:wood;wood_type=dark_oak;stripped_bit=0;pillar_axis=x blockId=467 -runtimeId=7568 +runtimeId=3496 minecraft:wood;wood_type=dark_oak;stripped_bit=0;pillar_axis=y blockId=467 -runtimeId=7556 +runtimeId=3484 minecraft:wood;wood_type=dark_oak;stripped_bit=0;pillar_axis=z blockId=467 -runtimeId=7580 +runtimeId=3508 minecraft:wood;wood_type=dark_oak;stripped_bit=1;pillar_axis=x blockId=467 -runtimeId=7574 +runtimeId=3502 minecraft:wood;wood_type=dark_oak;stripped_bit=1;pillar_axis=y blockId=467 -runtimeId=7562 +runtimeId=3490 minecraft:wood;wood_type=dark_oak;stripped_bit=1;pillar_axis=z blockId=467 -runtimeId=7586 +runtimeId=3514 minecraft:wood;wood_type=jungle;stripped_bit=0;pillar_axis=x blockId=467 -runtimeId=7566 +runtimeId=3494 minecraft:wood;wood_type=jungle;stripped_bit=0;pillar_axis=y blockId=467 -runtimeId=7554 +runtimeId=3482 minecraft:wood;wood_type=jungle;stripped_bit=0;pillar_axis=z blockId=467 -runtimeId=7578 +runtimeId=3506 minecraft:wood;wood_type=jungle;stripped_bit=1;pillar_axis=x blockId=467 -runtimeId=7572 +runtimeId=3500 minecraft:wood;wood_type=jungle;stripped_bit=1;pillar_axis=y blockId=467 -runtimeId=7560 +runtimeId=3488 minecraft:wood;wood_type=jungle;stripped_bit=1;pillar_axis=z blockId=467 -runtimeId=7584 +runtimeId=3512 minecraft:wood;wood_type=oak;stripped_bit=0;pillar_axis=x blockId=467 -runtimeId=7563 +runtimeId=3491 minecraft:wood;wood_type=oak;stripped_bit=0;pillar_axis=y blockId=467 -runtimeId=7551 +runtimeId=3479 minecraft:wood;wood_type=oak;stripped_bit=0;pillar_axis=z blockId=467 -runtimeId=7575 +runtimeId=3503 minecraft:wood;wood_type=oak;stripped_bit=1;pillar_axis=x blockId=467 -runtimeId=7569 +runtimeId=3497 minecraft:wood;wood_type=oak;stripped_bit=1;pillar_axis=y blockId=467 -runtimeId=7557 +runtimeId=3485 minecraft:wood;wood_type=oak;stripped_bit=1;pillar_axis=z blockId=467 -runtimeId=7581 +runtimeId=3509 minecraft:wood;wood_type=spruce;stripped_bit=0;pillar_axis=x blockId=467 -runtimeId=7564 +runtimeId=3492 minecraft:wood;wood_type=spruce;stripped_bit=0;pillar_axis=y blockId=467 -runtimeId=7552 +runtimeId=3480 minecraft:wood;wood_type=spruce;stripped_bit=0;pillar_axis=z blockId=467 -runtimeId=7576 +runtimeId=3504 minecraft:wood;wood_type=spruce;stripped_bit=1;pillar_axis=x blockId=467 -runtimeId=7570 +runtimeId=3498 minecraft:wood;wood_type=spruce;stripped_bit=1;pillar_axis=y blockId=467 -runtimeId=7558 +runtimeId=3486 minecraft:wood;wood_type=spruce;stripped_bit=1;pillar_axis=z blockId=467 -runtimeId=7582 +runtimeId=3510 minecraft:wooden_button;button_pressed_bit=0;facing_direction=0 blockId=143 -runtimeId=7587 +runtimeId=6356 minecraft:wooden_button;button_pressed_bit=0;facing_direction=1 blockId=143 -runtimeId=7588 +runtimeId=6357 minecraft:wooden_button;button_pressed_bit=0;facing_direction=2 blockId=143 -runtimeId=7589 +runtimeId=6358 minecraft:wooden_button;button_pressed_bit=0;facing_direction=3 blockId=143 -runtimeId=7590 +runtimeId=6359 minecraft:wooden_button;button_pressed_bit=0;facing_direction=4 blockId=143 -runtimeId=7591 +runtimeId=6360 minecraft:wooden_button;button_pressed_bit=0;facing_direction=5 blockId=143 -runtimeId=7592 +runtimeId=6361 minecraft:wooden_button;button_pressed_bit=1;facing_direction=0 blockId=143 -runtimeId=7593 +runtimeId=6362 minecraft:wooden_button;button_pressed_bit=1;facing_direction=1 blockId=143 -runtimeId=7594 +runtimeId=6363 minecraft:wooden_button;button_pressed_bit=1;facing_direction=2 blockId=143 -runtimeId=7595 +runtimeId=6364 minecraft:wooden_button;button_pressed_bit=1;facing_direction=3 blockId=143 -runtimeId=7596 +runtimeId=6365 minecraft:wooden_button;button_pressed_bit=1;facing_direction=4 blockId=143 -runtimeId=7597 +runtimeId=6366 minecraft:wooden_button;button_pressed_bit=1;facing_direction=5 blockId=143 -runtimeId=7598 +runtimeId=6367 minecraft:wooden_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=0 blockId=64 -runtimeId=7599 +runtimeId=3732 minecraft:wooden_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=1 blockId=64 -runtimeId=7600 +runtimeId=3733 minecraft:wooden_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=2 blockId=64 -runtimeId=7601 +runtimeId=3734 minecraft:wooden_door;open_bit=0;upper_block_bit=0;door_hinge_bit=0;direction=3 blockId=64 -runtimeId=7602 +runtimeId=3735 minecraft:wooden_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=0 blockId=64 -runtimeId=7615 +runtimeId=3748 minecraft:wooden_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=1 blockId=64 -runtimeId=7616 +runtimeId=3749 minecraft:wooden_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=2 blockId=64 -runtimeId=7617 +runtimeId=3750 minecraft:wooden_door;open_bit=0;upper_block_bit=0;door_hinge_bit=1;direction=3 blockId=64 -runtimeId=7618 +runtimeId=3751 minecraft:wooden_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=0 blockId=64 -runtimeId=7607 +runtimeId=3740 minecraft:wooden_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=1 blockId=64 -runtimeId=7608 +runtimeId=3741 minecraft:wooden_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=2 blockId=64 -runtimeId=7609 +runtimeId=3742 minecraft:wooden_door;open_bit=0;upper_block_bit=1;door_hinge_bit=0;direction=3 blockId=64 -runtimeId=7610 +runtimeId=3743 minecraft:wooden_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=0 blockId=64 -runtimeId=7623 +runtimeId=3756 minecraft:wooden_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=1 blockId=64 -runtimeId=7624 +runtimeId=3757 minecraft:wooden_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=2 blockId=64 -runtimeId=7625 +runtimeId=3758 minecraft:wooden_door;open_bit=0;upper_block_bit=1;door_hinge_bit=1;direction=3 blockId=64 -runtimeId=7626 +runtimeId=3759 minecraft:wooden_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=0 blockId=64 -runtimeId=7603 +runtimeId=3736 minecraft:wooden_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=1 blockId=64 -runtimeId=7604 +runtimeId=3737 minecraft:wooden_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=2 blockId=64 -runtimeId=7605 +runtimeId=3738 minecraft:wooden_door;open_bit=1;upper_block_bit=0;door_hinge_bit=0;direction=3 blockId=64 -runtimeId=7606 +runtimeId=3739 minecraft:wooden_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=0 blockId=64 -runtimeId=7619 +runtimeId=3752 minecraft:wooden_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=1 blockId=64 -runtimeId=7620 +runtimeId=3753 minecraft:wooden_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=2 blockId=64 -runtimeId=7621 +runtimeId=3754 minecraft:wooden_door;open_bit=1;upper_block_bit=0;door_hinge_bit=1;direction=3 blockId=64 -runtimeId=7622 +runtimeId=3755 minecraft:wooden_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=0 blockId=64 -runtimeId=7611 +runtimeId=3744 minecraft:wooden_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=1 blockId=64 -runtimeId=7612 +runtimeId=3745 minecraft:wooden_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=2 blockId=64 -runtimeId=7613 +runtimeId=3746 minecraft:wooden_door;open_bit=1;upper_block_bit=1;door_hinge_bit=0;direction=3 blockId=64 -runtimeId=7614 +runtimeId=3747 minecraft:wooden_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=0 blockId=64 -runtimeId=7627 +runtimeId=3760 minecraft:wooden_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=1 blockId=64 -runtimeId=7628 +runtimeId=3761 minecraft:wooden_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=2 blockId=64 -runtimeId=7629 +runtimeId=3762 minecraft:wooden_door;open_bit=1;upper_block_bit=1;door_hinge_bit=1;direction=3 blockId=64 -runtimeId=7630 +runtimeId=3763 minecraft:wooden_pressure_plate;redstone_signal=0 blockId=72 -runtimeId=7631 +runtimeId=8005 minecraft:wooden_pressure_plate;redstone_signal=1 blockId=72 -runtimeId=7632 +runtimeId=8006 minecraft:wooden_pressure_plate;redstone_signal=2 blockId=72 -runtimeId=7633 +runtimeId=8007 minecraft:wooden_pressure_plate;redstone_signal=3 blockId=72 -runtimeId=7634 +runtimeId=8008 minecraft:wooden_pressure_plate;redstone_signal=4 blockId=72 -runtimeId=7635 +runtimeId=8009 minecraft:wooden_pressure_plate;redstone_signal=5 blockId=72 -runtimeId=7636 +runtimeId=8010 minecraft:wooden_pressure_plate;redstone_signal=6 blockId=72 -runtimeId=7637 +runtimeId=8011 minecraft:wooden_pressure_plate;redstone_signal=7 blockId=72 -runtimeId=7638 +runtimeId=8012 minecraft:wooden_pressure_plate;redstone_signal=8 blockId=72 -runtimeId=7639 +runtimeId=8013 minecraft:wooden_pressure_plate;redstone_signal=9 blockId=72 -runtimeId=7640 +runtimeId=8014 minecraft:wooden_pressure_plate;redstone_signal=10 blockId=72 -runtimeId=7641 +runtimeId=8015 minecraft:wooden_pressure_plate;redstone_signal=11 blockId=72 -runtimeId=7642 +runtimeId=8016 minecraft:wooden_pressure_plate;redstone_signal=12 blockId=72 -runtimeId=7643 +runtimeId=8017 minecraft:wooden_pressure_plate;redstone_signal=13 blockId=72 -runtimeId=7644 +runtimeId=8018 minecraft:wooden_pressure_plate;redstone_signal=14 blockId=72 -runtimeId=7645 +runtimeId=8019 minecraft:wooden_pressure_plate;redstone_signal=15 blockId=72 -runtimeId=7646 +runtimeId=8020 minecraft:wooden_slab;top_slot_bit=0;wood_type=acacia blockId=158 -runtimeId=7651 +runtimeId=5224 minecraft:wooden_slab;top_slot_bit=0;wood_type=birch blockId=158 -runtimeId=7649 +runtimeId=5222 minecraft:wooden_slab;top_slot_bit=0;wood_type=dark_oak blockId=158 -runtimeId=7652 +runtimeId=5225 minecraft:wooden_slab;top_slot_bit=0;wood_type=jungle blockId=158 -runtimeId=7650 +runtimeId=5223 minecraft:wooden_slab;top_slot_bit=0;wood_type=oak blockId=158 -runtimeId=7647 +runtimeId=5220 minecraft:wooden_slab;top_slot_bit=0;wood_type=spruce blockId=158 -runtimeId=7648 +runtimeId=5221 minecraft:wooden_slab;top_slot_bit=1;wood_type=acacia blockId=158 -runtimeId=7657 +runtimeId=5230 minecraft:wooden_slab;top_slot_bit=1;wood_type=birch blockId=158 -runtimeId=7655 +runtimeId=5228 minecraft:wooden_slab;top_slot_bit=1;wood_type=dark_oak blockId=158 -runtimeId=7658 +runtimeId=5231 minecraft:wooden_slab;top_slot_bit=1;wood_type=jungle blockId=158 -runtimeId=7656 +runtimeId=5229 minecraft:wooden_slab;top_slot_bit=1;wood_type=oak blockId=158 -runtimeId=7653 +runtimeId=5226 minecraft:wooden_slab;top_slot_bit=1;wood_type=spruce blockId=158 -runtimeId=7654 +runtimeId=5227 minecraft:wool;color=black blockId=35 -runtimeId=7674 +runtimeId=3478 minecraft:wool;color=blue blockId=35 -runtimeId=7670 +runtimeId=3474 minecraft:wool;color=brown blockId=35 -runtimeId=7671 +runtimeId=3475 minecraft:wool;color=cyan blockId=35 -runtimeId=7668 +runtimeId=3472 minecraft:wool;color=gray blockId=35 -runtimeId=7666 +runtimeId=3470 minecraft:wool;color=green blockId=35 -runtimeId=7672 +runtimeId=3476 minecraft:wool;color=light_blue blockId=35 -runtimeId=7662 +runtimeId=3466 minecraft:wool;color=lime blockId=35 -runtimeId=7664 +runtimeId=3468 minecraft:wool;color=magenta blockId=35 -runtimeId=7661 +runtimeId=3465 minecraft:wool;color=orange blockId=35 -runtimeId=7660 +runtimeId=3464 minecraft:wool;color=pink blockId=35 -runtimeId=7665 +runtimeId=3469 minecraft:wool;color=purple blockId=35 -runtimeId=7669 +runtimeId=3473 minecraft:wool;color=red blockId=35 -runtimeId=7673 +runtimeId=3477 minecraft:wool;color=silver blockId=35 -runtimeId=7667 +runtimeId=3471 minecraft:wool;color=white blockId=35 -runtimeId=7659 +runtimeId=3463 minecraft:wool;color=yellow blockId=35 -runtimeId=7663 +runtimeId=3467 + +minecraft:yellow_candle;lit=0;candles=0 +blockId=672 +runtimeId=6115 + +minecraft:yellow_candle;lit=0;candles=1 +blockId=672 +runtimeId=6116 + +minecraft:yellow_candle;lit=0;candles=2 +blockId=672 +runtimeId=6117 + +minecraft:yellow_candle;lit=0;candles=3 +blockId=672 +runtimeId=6118 + +minecraft:yellow_candle;lit=1;candles=0 +blockId=672 +runtimeId=6119 + +minecraft:yellow_candle;lit=1;candles=1 +blockId=672 +runtimeId=6120 + +minecraft:yellow_candle;lit=1;candles=2 +blockId=672 +runtimeId=6121 + +minecraft:yellow_candle;lit=1;candles=3 +blockId=672 +runtimeId=6122 + +minecraft:yellow_candle_cake;lit=0 +blockId=689 +runtimeId=4595 + +minecraft:yellow_candle_cake;lit=1 +blockId=689 +runtimeId=4596 minecraft:yellow_flower blockId=37 -runtimeId=7675 +runtimeId=316 minecraft:yellow_glazed_terracotta;facing_direction=0 blockId=224 -runtimeId=7676 +runtimeId=921 minecraft:yellow_glazed_terracotta;facing_direction=1 blockId=224 -runtimeId=7677 +runtimeId=922 minecraft:yellow_glazed_terracotta;facing_direction=2 blockId=224 -runtimeId=7678 +runtimeId=923 minecraft:yellow_glazed_terracotta;facing_direction=3 blockId=224 -runtimeId=7679 +runtimeId=924 minecraft:yellow_glazed_terracotta;facing_direction=4 blockId=224 -runtimeId=7680 +runtimeId=925 minecraft:yellow_glazed_terracotta;facing_direction=5 blockId=224 -runtimeId=7681 +runtimeId=926 diff --git a/simple-blocks-nukkit.txt b/dumps/simple-blocks-nukkit.txt similarity index 91% rename from simple-blocks-nukkit.txt rename to dumps/simple-blocks-nukkit.txt index 87ba585ee79..457852e7900 100644 --- a/simple-blocks-nukkit.txt +++ b/dumps/simple-blocks-nukkit.txt @@ -40,6 +40,8 @@ minecraft:birch_stairs minecraft:birch_standing_sign minecraft:birch_trapdoor minecraft:birch_wall_sign +minecraft:black_candle +minecraft:black_candle_cake minecraft:black_glazed_terracotta minecraft:blackstone minecraft:blackstone_double_slab @@ -47,6 +49,8 @@ minecraft:blackstone_slab minecraft:blackstone_stairs minecraft:blackstone_wall minecraft:blast_furnace +minecraft:blue_candle +minecraft:blue_candle_cake minecraft:blue_glazed_terracotta minecraft:blue_ice minecraft:bone_block @@ -55,6 +59,8 @@ minecraft:border_block minecraft:brewing_stand minecraft:brick_block minecraft:brick_stairs +minecraft:brown_candle +minecraft:brown_candle_cake minecraft:brown_glazed_terracotta minecraft:brown_mushroom minecraft:brown_mushroom_block @@ -65,6 +71,8 @@ minecraft:cake minecraft:calcite minecraft:camera minecraft:campfire +minecraft:candle +minecraft:candle_cake minecraft:carpet minecraft:carrots minecraft:cartography_table @@ -84,6 +92,7 @@ minecraft:chiseled_polished_blackstone minecraft:chorus_flower minecraft:chorus_plant minecraft:clay +minecraft:client_request_placeholder_block minecraft:coal_block minecraft:coal_ore minecraft:cobbled_deepslate @@ -99,7 +108,7 @@ minecraft:colored_torch_rg minecraft:command_block minecraft:composter minecraft:concrete -minecraft:concretePowder +minecraft:concrete_powder minecraft:conduit minecraft:copper_block minecraft:copper_ore @@ -136,6 +145,8 @@ minecraft:crying_obsidian minecraft:cut_copper minecraft:cut_copper_slab minecraft:cut_copper_stairs +minecraft:cyan_candle +minecraft:cyan_candle_cake minecraft:cyan_glazed_terracotta minecraft:dark_oak_button minecraft:dark_oak_door @@ -332,6 +343,7 @@ minecraft:flowering_azalea minecraft:flowing_lava minecraft:flowing_water minecraft:frame +minecraft:frog_spawn minecraft:frosted_ice minecraft:furnace minecraft:gilded_blackstone @@ -348,7 +360,11 @@ minecraft:granite_stairs minecraft:grass minecraft:grass_path minecraft:gravel +minecraft:gray_candle +minecraft:gray_candle_cake minecraft:gray_glazed_terracotta +minecraft:green_candle +minecraft:green_candle_cake minecraft:green_glazed_terracotta minecraft:grindstone minecraft:hanging_roots @@ -366,7 +382,7 @@ minecraft:ice minecraft:infested_deepslate minecraft:info_update minecraft:info_update2 -minecraft:invisibleBedrock +minecraft:invisible_bedrock minecraft:iron_bars minecraft:iron_block minecraft:iron_door @@ -395,9 +411,15 @@ minecraft:leaves2 minecraft:lectern minecraft:lever minecraft:light_block +minecraft:light_blue_candle +minecraft:light_blue_candle_cake minecraft:light_blue_glazed_terracotta +minecraft:light_gray_candle +minecraft:light_gray_candle_cake minecraft:light_weighted_pressure_plate minecraft:lightning_rod +minecraft:lime_candle +minecraft:lime_candle_cake minecraft:lime_glazed_terracotta minecraft:lit_blast_furnace minecraft:lit_deepslate_redstone_ore @@ -410,8 +432,13 @@ minecraft:lodestone minecraft:log minecraft:log2 minecraft:loom +minecraft:magenta_candle +minecraft:magenta_candle_cake minecraft:magenta_glazed_terracotta minecraft:magma +minecraft:mangrove_leaves +minecraft:mangrove_propagule +minecraft:mangrove_propagule_hanging minecraft:medium_amethyst_bud minecraft:melon_block minecraft:melon_stem @@ -422,7 +449,13 @@ minecraft:moss_carpet minecraft:mossy_cobblestone minecraft:mossy_cobblestone_stairs minecraft:mossy_stone_brick_stairs -minecraft:movingBlock +minecraft:moving_block +minecraft:mud +minecraft:mud_brick_double_slab +minecraft:mud_brick_slab +minecraft:mud_brick_stairs +minecraft:mud_brick_wall +minecraft:mud_bricks minecraft:mycelium minecraft:nether_brick minecraft:nether_brick_fence @@ -439,6 +472,9 @@ minecraft:noteblock minecraft:oak_stairs minecraft:observer minecraft:obsidian +minecraft:ochre_froglight +minecraft:orange_candle +minecraft:orange_candle_cake minecraft:orange_glazed_terracotta minecraft:oxidized_copper minecraft:oxidized_cut_copper @@ -446,9 +482,13 @@ minecraft:oxidized_cut_copper_slab minecraft:oxidized_cut_copper_stairs minecraft:oxidized_double_cut_copper_slab minecraft:packed_ice +minecraft:packed_mud +minecraft:pearlescent_froglight +minecraft:pink_candle +minecraft:pink_candle_cake minecraft:pink_glazed_terracotta minecraft:piston -minecraft:pistonArmCollision +minecraft:piston_arm_collision minecraft:planks minecraft:podzol minecraft:pointed_dripstone @@ -483,6 +523,8 @@ minecraft:prismarine_bricks_stairs minecraft:prismarine_stairs minecraft:pumpkin minecraft:pumpkin_stem +minecraft:purple_candle +minecraft:purple_candle_cake minecraft:purple_glazed_terracotta minecraft:purpur_block minecraft:purpur_stairs @@ -494,6 +536,8 @@ minecraft:rail minecraft:raw_copper_block minecraft:raw_gold_block minecraft:raw_iron_block +minecraft:red_candle +minecraft:red_candle_cake minecraft:red_flower minecraft:red_glazed_terracotta minecraft:red_mushroom @@ -508,6 +552,7 @@ minecraft:redstone_ore minecraft:redstone_torch minecraft:redstone_wire minecraft:reeds +minecraft:reinforced_deepslate minecraft:repeating_command_block minecraft:reserved6 minecraft:respawn_anchor @@ -516,8 +561,12 @@ minecraft:sandstone minecraft:sandstone_stairs minecraft:sapling minecraft:scaffolding +minecraft:sculk +minecraft:sculk_catalyst minecraft:sculk_sensor -minecraft:seaLantern +minecraft:sculk_shrieker +minecraft:sculk_vein +minecraft:sea_lantern minecraft:sea_pickle minecraft:seagrass minecraft:shroomlight @@ -557,8 +606,8 @@ minecraft:stained_glass_pane minecraft:stained_hardened_clay minecraft:standing_banner minecraft:standing_sign -minecraft:stickyPistonArmCollision minecraft:sticky_piston +minecraft:sticky_piston_arm_collision minecraft:stone minecraft:stone_brick_stairs minecraft:stone_button @@ -591,7 +640,7 @@ minecraft:tnt minecraft:torch minecraft:trapdoor minecraft:trapped_chest -minecraft:tripWire +minecraft:trip_wire minecraft:tripwire_hook minecraft:tuff minecraft:turtle_egg @@ -602,6 +651,7 @@ minecraft:unknown minecraft:unlit_redstone_torch minecraft:unpowered_comparator minecraft:unpowered_repeater +minecraft:verdant_froglight minecraft:vine minecraft:wall_banner minecraft:wall_sign @@ -653,6 +703,8 @@ minecraft:weathered_double_cut_copper_slab minecraft:web minecraft:weeping_vines minecraft:wheat +minecraft:white_candle +minecraft:white_candle_cake minecraft:white_glazed_terracotta minecraft:wither_rose minecraft:wood @@ -661,5 +713,7 @@ minecraft:wooden_door minecraft:wooden_pressure_plate minecraft:wooden_slab minecraft:wool +minecraft:yellow_candle +minecraft:yellow_candle_cake minecraft:yellow_flower minecraft:yellow_glazed_terracotta diff --git a/lombok.config b/lombok.config new file mode 100644 index 00000000000..7a21e88040d --- /dev/null +++ b/lombok.config @@ -0,0 +1 @@ +lombok.addLombokGeneratedAnnotation = true diff --git a/pom.xml b/pom.xml index c0e7ec600e3..e1b5816ddef 100644 --- a/pom.xml +++ b/pom.xml @@ -12,9 +12,9 @@ Version Convention: upstream.major.minor.patch-PN Based on https://semver.org/ but with upstream on front Upstream is the NukkitX major version - PN is a indicator that software is running PowerNukkit, it must be present both in releases and snapshot versions + PN is an indicator that software is running PowerNukkit, it must be present both in releases and snapshot versions --> - 1.5.0.0-PN-CUSTOM + 1.6.0.1-PN-CUSTOM 2020 @@ -24,19 +24,19 @@ GitHub - https://github.com/PowerNukkit/PowerNukkit-Natives/issues + https://github.com/PowerNukkit/PowerNukkit/issues scm:git:https://github.com/PowerNukkit/PowerNukkit.git - scm:git:ssh://github.com:PowerNukkit/PowerNukkit.git + scm:git:ssh://git@github.com:PowerNukkit/PowerNukkit.git https://github.com/PowerNukkit/PowerNukkit GNU General Public License, Version 3 - http://www.gnu.org/licenses/gpl-3.0.html + https://www.gnu.org/licenses/gpl-3.0.txt repo @@ -71,12 +71,17 @@ 1.8 1.8 - 5.4.2 - 1.1.0 - 2.13.3 + 5.7.2 + 3.11.2 + 2.17.1 UTF-8 + UTF-8 3.9.0 true + true + PowerNukkit_PowerNukkit + powernukkit + https://sonarcloud.io @@ -91,35 +96,29 @@ https://oss.sonatype.org/content/repositories/snapshots - - org.powernukkit.bedrock.network raknet - 1.6.25-PN.2 + 1.6.28-PN.3 compile org.powernukkit powernukkit-tests-junit5 - 0.1.0 - test - - - org.junit.jupiter - junit-jupiter-params - ${junit.jupiter.version} + 0.1.1 test + + + org.junit.jupiter + junit-jupiter-engine + + + org.mockito + mockito-junit-jupiter + + org.powernukkit.fastutil @@ -127,10 +126,15 @@ 8.1.1 compile + + org.powernukkit + version-library + 1.0.0 + com.google.guava guava - 29.0-jre + 30.1.1-jre compile @@ -148,7 +152,7 @@ org.yaml snakeyaml - 1.26 + 1.28 compile @@ -183,6 +187,14 @@ com.google.code.gson gson + + org.apache.logging.log4j + log4j-api + + + org.apache.logging.log4j + log4j-core + @@ -197,10 +209,22 @@ ${junit.jupiter.version} test + + org.junit.jupiter + junit-jupiter-params + ${junit.jupiter.version} + test + org.mockito mockito-junit-jupiter - 3.3.3 + ${mockito.version} + test + + + org.mockito + mockito-inline + ${mockito.version} test @@ -212,7 +236,7 @@ com.nimbusds nimbus-jose-jwt - 7.9 + 9.13 compile @@ -286,8 +310,37 @@ jsr305 3.0.2 + + fr.inria.gforge.spoon + spoon-core + + 9.1.0 + test + + + commons-io + commons-io + + + + + commons-io + commons-io + 2.11.0 + test + + + com.github.spotbugs + spotbugs-annotations + 4.5.2 + true + + + https://builds.powernukkit.org/buildConfiguration/PowerNukkit_Snapshots + + @@ -322,26 +375,51 @@ maven-compiler-plugin - 3.1 + 3.8.1 ${maven.compiler.source} ${maven.compiler.target} + + false + + + -Xpkginfo:always + maven-surefire-plugin - 2.19 + 2.22.2 + + ${skipTests} + false + + + + org.apache.maven.plugins + maven-site-plugin + 3.9.1 - org.junit.platform - junit-platform-surefire-provider - ${junit.platform.version} + org.apache.maven.doxia + doxia-module-markdown + 1.9.1 + + + org.apache.maven.doxia + doxia-module-xhtml + 1.9.1 - ${skipTests} + true + + org.apache.maven.plugins + maven-project-info-reports-plugin + 3.1.2 + org.apache.maven.plugins maven-enforcer-plugin @@ -376,6 +454,25 @@ + + org.projectlombok + lombok-maven-plugin + 1.18.20.0 + + + generate-sources + + delombok + + + + + false + ${project.basedir}/src/main/java + ${project.build.directory}/delombok + UTF-8 + + org.apache.maven.plugins maven-javadoc-plugin @@ -384,6 +481,7 @@ 8 none true + ${project.build.directory}/delombok @@ -459,7 +557,7 @@ git dd.MM.yyyy '@' HH:mm:ss z ${user.timezone} - true + false true ${project.build.outputDirectory}/git.properties @@ -502,7 +600,94 @@ + + ${skipGpg} + + + + com.github.spotbugs + spotbugs-maven-plugin + 4.2.3 + + + spotbugs + prepare-package + + spotbugs + + + + + + org.jacoco + jacoco-maven-plugin + 0.8.7 + + + + prepare-agent + + + + report + prepare-package + + report + + + + + + org.apache.maven.plugins + maven-resources-plugin + + UTF-8 + + + + + copy-readme + pre-site + + copy-resources + + + ${project.build.directory}/generated-site/markdown + + + ${basedir} + + README.md + CHANGELOG.md + + + + + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + 3.2.0 + + 8 + none + true + + + + html + + javadoc + + + + + + diff --git a/pterodactyl-image-java11.Dockerfile b/pterodactyl-image-java11.Dockerfile deleted file mode 100644 index bb75d1e4c04..00000000000 --- a/pterodactyl-image-java11.Dockerfile +++ /dev/null @@ -1,44 +0,0 @@ -# -# Get the pterodacty egg from https://github.com/PowerNukkit/PowerNukkit-Pterodactyl-Egg! -# -# Prepare the source -FROM alpine/git:v2.26.2 AS prepare - -# Copy the source -WORKDIR /src -COPY pom.xml /src - -COPY src/main/java /src/src/main/java -COPY src/main/resources /src/src/main/resources - -COPY src/test/java/cn /src/src/test/java/cn -COPY src/test/resources /src/src/test/resources - -COPY .git /src/.git - -# Update the language submodule -RUN if [ -z "$(ls -A /src/src/main/resources/lang)" ]; then git submodule update --init; fi - -# Prepare to build the source -FROM maven:3.8.1-jdk-11-slim as build - -# Copy the source -WORKDIR /src -COPY --from=prepare /src /src - -# Build the source -RUN mvn -Dmaven.javadoc.skip=true -Denforcer.skip=true --no-transfer-progress clean package - -# Final image -FROM quay.io/pterodactyl/core:java-11 as pterodactyl - -LABEL author="José Roberto de Araújo Júnior" maintainer="joserobjr@powernukkit.org" - -USER root -ENV USER=root HOME=/root - -RUN mkdir -p /opt/PowerNukkit -COPY --from=build /src/target/powernukkit-*-shaded.jar /opt/PowerNukkit/PowerNukkit.jar - -USER container -ENV USER=container HOME=/home/container diff --git a/pterodactyl-image-java8.Dockerfile b/pterodactyl-image-java8.Dockerfile deleted file mode 100644 index 8c153361219..00000000000 --- a/pterodactyl-image-java8.Dockerfile +++ /dev/null @@ -1,44 +0,0 @@ -# -# Get the pterodacty egg from https://github.com/PowerNukkit/PowerNukkit-Pterodactyl-Egg! -# -# Prepare the source -FROM alpine/git:v2.26.2 AS prepare - -# Copy the source -WORKDIR /src -COPY pom.xml /src - -COPY src/main/java /src/src/main/java -COPY src/main/resources /src/src/main/resources - -COPY src/test/java/cn /src/src/test/java/cn -COPY src/test/resources /src/src/test/resources - -COPY .git /src/.git - -# Update the language submodule -RUN if [ -z "$(ls -A /src/src/main/resources/lang)" ]; then git submodule update --init; fi - -# Prepare to build the source -FROM maven:3.6-jdk-8-alpine as build - -# Copy the source -WORKDIR /src -COPY --from=prepare /src /src - -# Build the source -RUN mvn -Dmaven.javadoc.skip=true --no-transfer-progress clean package - -# Final image -FROM quay.io/pterodactyl/core:java as pterodactyl - -LABEL author="José Roberto de Araújo Júnior" maintainer="joserobjr@powernukkit.org" - -USER root -ENV USER=root HOME=/root - -RUN mkdir -p /opt/PowerNukkit -COPY --from=build /src/target/powernukkit-*-shaded.jar /opt/PowerNukkit/PowerNukkit.jar - -USER container -ENV USER=container HOME=/home/container diff --git a/release-script/jdiff-javadoc.bat b/release-script/jdiff-javadoc.bat new file mode 100644 index 00000000000..8be289ad25e --- /dev/null +++ b/release-script/jdiff-javadoc.bat @@ -0,0 +1,64 @@ +#!/bin/sh +@REM 2> /dev/null; # START_OF_SHELL_SCRIPT +@REM 2> /dev/null; # +@REM 2> /dev/null; if true; then # +@REM 2> /dev/null; echo "ola" # +@REM 2> /dev/null; exit 1; # +@REM 2> /dev/null; fi # +@REM 2> /dev/null; # +@REM 2> /dev/null; # +@REM 2> /dev/null; cat > /dev/null << END_OF_BATCH +@REM END_OF_SHELL_SCRIPT + +@REM START_OF_BATCH +@ECHO OFF + +SETLOCAL + +if defined JAVA_HOME ( + GOTO execution +) + +::- Get the Java Version +set KEY="HKLM\SOFTWARE\JavaSoft\Java Development Kit" +set VALUE=CurrentVersion +reg query %KEY% /v %VALUE% >nul 2>nul || ( + echo JDK not installed + exit /b 1 +) +set JDK_VERSION= +for /f "tokens=2,*" %%a in ('reg query %KEY% /v %VALUE% ^| findstr %VALUE%') do ( + set JDK_VERSION=%%b +) + +REM echo JDK VERSION: %JDK_VERSION% + +::- Get the JavaHome +set KEY="HKLM\SOFTWARE\JavaSoft\Java Development Kit\%JDK_VERSION%" +set VALUE=JavaHome +reg query %KEY% /v %VALUE% >nul 2>nul || ( + echo JavaHome not installed + exit /b 1 +) + +set JAVA_HOME= +for /f "tokens=2,*" %%a in ('reg query %KEY% /v %VALUE% ^| findstr %VALUE%') do ( + set JAVA_HOME=%%b +) + +:execution +set EXTRA_ARGS=-locale en_US -encoding UTF-8 -quiet -source 8 +echo. +echo. +echo. +echo Java Home: %JAVA_HOME% +echo All args: %* +echo Extra args: %EXTRA_ARGS% +echo. +echo. +echo. +"%JAVA_HOME%/bin/javadoc.exe" %EXTRA_ARGS% %* +ENDLOCAL & EXIT /B %ERRORLEVEL% + +EXIT /B 123 +END_OF_BATCH diff --git a/nukkit.yml.default b/release-script/nukkit.default.yml similarity index 100% rename from nukkit.yml.default rename to release-script/nukkit.default.yml diff --git a/release-script/release.py b/release-script/release.py index 75c6104aae9..b913c9741e6 100644 --- a/release-script/release.py +++ b/release-script/release.py @@ -62,7 +62,7 @@ git_is_dirty = cmd('git', 'status', '--porcelain') if not ignore_dirty_state: - check(not git_is_dirty, "The workspace is dirty!\n" + git_is_dirty) + check(not git_is_dirty, "The workspace is dirty!\n" + str(git_is_dirty)) set_build_number(project_version) @@ -120,14 +120,25 @@ finish_progress() docker_tags = [] +pterodactyl_tags = {8: [], 11: []} try: if run_docker_build or run_docker_build_pterodactyl: - def build_docker(tag, source): - global docker_tags - log('-> Executing a docker build for tag', tag) - stt = subprocess.call(('docker', 'build', '-t', tag, source)) + def prepare_docker(): + log('-> Preparing docker for multi-arch build') + stt = subprocess.call(('docker', 'buildx', 'create', + '--use', '--name', 'build', '--node', 'build', '--driver-opt', 'network=host')) + check(stt == 0, "Could prepare docker for multi-arch build! Status code: " + str(stt)) + + def build_docker(tag_list, source): + log('-> Executing a docker build for tags', tag_list) + cmd_parts = ['docker', 'buildx', 'build', '--platform', 'linux/arm64,linux/amd64', '--pull'] + if run_docker_push: + cmd_parts += ['--push'] + for tag in tag_list: + cmd_parts += ['-t', tag] + cmd_parts += [source] + stt = subprocess.call(cmd_parts) check(stt == 0, "Could not execute a docker build! Status code: " + str(stt)) - docker_tags += [tag] docker_version = project_version.replace('-PN', '') docker_tag = docker_tag_prefix + ':' + docker_version @@ -135,25 +146,12 @@ def build_docker(tag, source): is_snapshot = docker_version_parts[-1].lower() == "snapshot" if is_snapshot: docker_version_parts.pop() - elif run_docker_build: - start_progress("Executing Docker build") - build_docker(docker_tag, '.') - finish_progress() - - def pterodactyl_tag_name(base, java): - return base + '-pterodactyl-java-' + java - def build_pterodactyl(java): - base = docker_tag + def pterodactyl_tag_name(java): + base = docker_tag_prefix + ':stable' if is_snapshot: - base = "bleeding" - build_docker(pterodactyl_tag_name(base, java), './pterodactyl-image-java'+java+'.Dockerfile') - - if run_docker_build_pterodactyl: - start_progress("Building pterodactyl images") - build_pterodactyl(8) - build_pterodactyl(11) - finish_progress() + base = docker_tag_prefix + ':bleeding' + return base + '-pterodactyl-java-' + str(java) if not is_snapshot: start_progress("Tagging Docker image") @@ -167,27 +165,39 @@ def build_pterodactyl(java): break if docker_sub_version is not None: - def add_tag(from_tag, to_tag): - global docker_tags + def add_tag(to_list, to_tag): log("-> Adding docker tag", to_tag) - cmd('docker', 'tag', from_tag, to_tag) - docker_tags += [to_tag] + to_list += [to_tag] subversion_tag = docker_tag_prefix + ':' + docker_sub_version - add_tag(docker_tag, subversion_tag) + add_tag(docker_tags, subversion_tag) if run_docker_build_pterodactyl: - add_tag(pterodactyl_tag_name(docker_tag, 8), pterodactyl_tag_name(subversion_tag, 8)) - add_tag(pterodactyl_tag_name(docker_tag, 11), pterodactyl_tag_name(subversion_tag, 11)) + add_tag(pterodactyl_tags[8], pterodactyl_tag_name(8)) + add_tag(pterodactyl_tags[11], pterodactyl_tag_name(11)) + finish_progress() + + if run_docker_build: + start_progress("Executing Docker build") + build_docker(docker_tags, '.') + finish_progress() + + def build_pterodactyl(java): + build_docker(pterodactyl_tags[java], './docker_pterodactyl-image-java'+str(java)+'.Dockerfile') + + if run_docker_build_pterodactyl: + start_progress("Building pterodactyl images") + build_pterodactyl(8) + build_pterodactyl(11) finish_progress() if run_maven_deploy: start_progress("Executing Maven Deploy") log('-> Executing a maven deploy with', mvn, 'clean deploy') - args = [mvn, ntp, 'clean', 'deploy'] + args = [mvn, ntp, 'clean', 'deploy', '-DskipGpg=false'] if run_test_build or not run_tests: - args += ['-DDskipTests=true'] + args += ['-DskipTests=true'] else: - args += ['-DDskipTests=false'] + args += ['-DskipTests=false'] status_code = subprocess.call(args) check(status_code == 0, "Could not execute the maven deploy! Maven returned status code " + str(status_code)) finish_progress() @@ -197,12 +207,12 @@ def add_tag(from_tag, to_tag): cmd('git', 'reset', '--soft', 'HEAD~1') raise e -if run_docker_push: - start_progress("Pushing Docker image and tags") - for docker_tag_to_push in docker_tags: - log('-> Pushing docker tag', docker_tag_to_push) - cmd('docker', 'push', docker_tag_to_push) - finish_progress() +# if run_docker_push: +# start_progress("Pushing Docker image and tags") +# for docker_tag_to_push in docker_tags: +# log('-> Pushing docker tag', docker_tag_to_push) +# cmd('docker', 'push', docker_tag_to_push) +# finish_progress() if update_pom_version: start_progress("Updating pom.xml") diff --git a/release-script/setup-secrets.sh b/release-script/setup-secrets.sh deleted file mode 100644 index 699e77d76c1..00000000000 --- a/release-script/setup-secrets.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/usr/bin/env sh -# -# https://PowerNukkit.org - The Nukkit you know but Powerful! -# Copyright (C) 2021 José Roberto de Araújo Júnior -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . -# - -auth activate-service-account --key-file=/setup/secrets.json && rm /setup/secrets.json -gcloud secrets versions access --secret=gpg-priv-github-bot latest > /secrets/gpg-github-bot.priv diff --git a/release.Dockerfile b/release.Dockerfile deleted file mode 100644 index 02a61ce6955..00000000000 --- a/release.Dockerfile +++ /dev/null @@ -1,43 +0,0 @@ -#FROM ubuntu:20.04 AS build -#RUN apt-get update -yq && DEBIAN_FRONTEND=noninteractive apt-get install -yq git gpg python3 maven openjdk-8-jdk -#RUN echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] http://packages.cloud.google.com/apt cloud-sdk main" | tee -a /etc/apt/sources.list.d/google-cloud-sdk.list \ -# && curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key --keyring /usr/share/keyrings/cloud.google.gpg add - \ -# && apt-get update -yq && DEBIAN_FRONTEND=noninteractive apt-get install -yq google-cloud-sdk - -FROM google/cloud-sdk:alpine -RUN apk add --no-cache maven git python3 gnupg openjdk8 - -RUN mkdir -p /secrets && mkdir -p ~/.ssh && echo "github.com ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ==" >> ~/.ssh/known_hosts -ARG JSON_PATH -ARG GCLOUD_PROJECT -ARG GCLOUD_GPG_PRIV -ARG GCLOUD_GPG_PRIV_VERSION -ARG GCLOUD_SSH_PRIV -ARG GCLOUD_SSH_PRIV_VERSION -ARG GCLOUD_SSH_PUB -ARG GCLOUD_SSH_PUB_VERSION -COPY ${JSON_PATH} /secrets -RUN gcloud auth activate-service-account --key-file=/secrets/secrets.json \ - && rm /secrets/secrets.json \ - && gcloud config set project ${GCLOUD_PROJECT} \ - && gcloud secrets versions access --secret=${GCLOUD_GPG_PRIV} ${GCLOUD_GPG_PRIV_VERSION} | gpg --import \ - && gcloud secrets versions access --secret=${GCLOUD_SSH_PRIV} ${GCLOUD_SSH_PRIV_VERSION} > ~/.ssh/id_rsa && chmod 0600 ~/.ssh/id_rsa \ - && gcloud secrets versions access --secret=${GCLOUD_SSH_PUB} ${GCLOUD_SSH_PUB_VERSION} > ~/.ssh/id_rsa.pub \ - && eval $(ssh-agent -s) && ssh-add ~/.ssh/id_rsa - - -WORKDIR /src -COPY . /src - -RUN if [ ! -z "$(ls -A /src/src/main/resources/lang)" ]; then git submodule deinit -f src/main/resources/lang; fi && \ - git submodule update --init - -RUN git update-index --skip-worktree release-script/release_config_local.py && \ - echo "use_mvn_wrapper = False" >> release-script/release_config_local.py && \ - echo "run_docker_build = False" >> release-script/release_config_local.py && \ - echo "run_docker_push = False" >> release-script/release_config_local.py && \ - PYTHONUNBUFFERED=1 python3 release-script/release.py - - -# Clear intermediary container -FROM google/cloud-sdk:alpine diff --git a/src/main/java/cn/nukkit/Nukkit.java b/src/main/java/cn/nukkit/Nukkit.java index 5778930b928..e1acba4bde7 100644 --- a/src/main/java/cn/nukkit/Nukkit.java +++ b/src/main/java/cn/nukkit/Nukkit.java @@ -1,5 +1,6 @@ package cn.nukkit; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.math.NukkitMath; import cn.nukkit.network.protocol.ProtocolInfo; import cn.nukkit.utils.ServerKiller; @@ -53,8 +54,8 @@ public class Nukkit { public final static Properties GIT_INFO = getGitInfo(); public final static String VERSION = getVersion(); - public final static String GIT_COMMIT = getGitCommit(); - public final static String API_VERSION = dynamic("1.0.12"); + @PowerNukkitOnly public final static String GIT_COMMIT = getGitCommit(); + public final static String API_VERSION = dynamic("1.0.13"); public final static String CODENAME = dynamic("PowerNukkit"); @Deprecated public final static String MINECRAFT_VERSION = ProtocolInfo.MINECRAFT_VERSION; @@ -79,7 +80,7 @@ public static void main(String[] args) { if (disableSentry.get()) { return null; } - + try { Server sv = Server.getInstance(); event.setExtra("players", sv.getOnlinePlayers().size()); @@ -98,7 +99,7 @@ public static void main(String[] args) { double usedMB = NukkitMath.round((double) (runtime.totalMemory() - runtime.freeMemory()) / 1024 / 1024, 2); double maxMB = NukkitMath.round(((double) runtime.maxMemory()) / 1024 / 1024, 2); double usage = usedMB / maxMB * 100; - + event.setExtra("memTotal", totalMB); event.setExtra("memUsed", usedMB); event.setExtra("memMax", maxMB); @@ -106,12 +107,12 @@ public static void main(String[] args) { } catch (Exception e) { log.debug("Failed to add memory information", e); } - + try { event.setModules( Server.getInstance().getPluginManager().getPlugins().entrySet().stream() .map(entry -> new SimpleEntry<>( - entry.getKey(), + entry.getKey(), entry.getValue().getDescription().getVersion() )).collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)) ); @@ -121,7 +122,7 @@ public static void main(String[] args) { return event; }); }); - + disableSentry.set(Boolean.parseBoolean(System.getProperty("disableSentry", "false"))); Path propertiesPath = Paths.get(DATA_PATH, "server.properties"); if (!disableSentry.get() && Files.isRegularFile(propertiesPath)) { @@ -137,7 +138,7 @@ public static void main(String[] args) { log.error("Failed to load server.properties to check disable-auto-bug-report.", e); } } - + // Force IPv4 since Nukkit is not compatible with IPv6 System.setProperty("java.net.preferIPv4Stack" , "true"); System.setProperty("log4j.skipJansi", "false"); @@ -244,7 +245,7 @@ private static Properties getGitInfo() { } return properties; } - + private static String getVersion() { InputStream resourceAsStream = Nukkit.class.getClassLoader().getResourceAsStream("VERSION.txt"); if (resourceAsStream == null) { diff --git a/src/main/java/cn/nukkit/OfflinePlayer.java b/src/main/java/cn/nukkit/OfflinePlayer.java index 66c8c9d39cb..d462396e624 100644 --- a/src/main/java/cn/nukkit/OfflinePlayer.java +++ b/src/main/java/cn/nukkit/OfflinePlayer.java @@ -88,6 +88,7 @@ public UUID getUniqueId() { return null; } + @Override public Server getServer() { return server; } @@ -158,18 +159,22 @@ public boolean hasPlayedBefore() { return this.namedTag != null; } + @Override public void setMetadata(String metadataKey, MetadataValue newMetadataValue) { this.server.getPlayerMetadata().setMetadata(this, metadataKey, newMetadataValue); } + @Override public List getMetadata(String metadataKey) { return this.server.getPlayerMetadata().getMetadata(this, metadataKey); } + @Override public boolean hasMetadata(String metadataKey) { return this.server.getPlayerMetadata().hasMetadata(this, metadataKey); } + @Override public void removeMetadata(String metadataKey, Plugin owningPlugin) { this.server.getPlayerMetadata().removeMetadata(this, metadataKey, owningPlugin); } diff --git a/src/main/java/cn/nukkit/Player.java b/src/main/java/cn/nukkit/Player.java index cb6a8735038..c3a7054cad5 100644 --- a/src/main/java/cn/nukkit/Player.java +++ b/src/main/java/cn/nukkit/Player.java @@ -43,6 +43,7 @@ import cn.nukkit.inventory.transaction.data.UseItemOnEntityData; import cn.nukkit.item.*; import cn.nukkit.item.enchantment.Enchantment; +import cn.nukkit.item.enchantment.sideeffect.SideEffect; import cn.nukkit.lang.TextContainer; import cn.nukkit.lang.TranslationContainer; import cn.nukkit.level.*; @@ -83,7 +84,9 @@ import it.unimi.dsi.fastutil.longs.Long2ObjectOpenHashMap; import it.unimi.dsi.fastutil.longs.LongIterator; import it.unimi.dsi.fastutil.objects.ObjectIterator; +import lombok.SneakyThrows; import lombok.extern.log4j.Log4j2; +import org.powernukkit.version.Version; import javax.annotation.Nonnull; import javax.annotation.Nullable; @@ -147,12 +150,17 @@ public class Player extends EntityHuman implements CommandSender, InventoryHolde public static final @PowerNukkitOnly int GRINDSTONE_WINDOW_ID = dynamic(5); public static final @Since("1.4.0.0-PN") @PowerNukkitOnly int SMITHING_WINDOW_ID = dynamic(6); + @Since("1.6.0.0-PN") + protected static final int RESOURCE_PACK_CHUNK_SIZE = 8 * 1024; // 8KB + protected final SourceInterface interfaz; public boolean playedBefore; public boolean spawned = false; public boolean loggedIn = false; @Since("1.4.0.0-PN") public boolean locallyInitialized = false; + private boolean verified = false; + private int unverifiedPackets; public int gamemode; public long lastBreak; private BlockVector3 lastBreakPosition = new BlockVector3(); @@ -233,8 +241,6 @@ public class Player extends EntityHuman implements CommandSender, InventoryHolde protected int inAirTicks = 0; protected int startAirTicks = 5; - @PowerNukkitOnly - @Since("1.4.0.0-PN") private int noShieldTicks; protected AdventureSettings adventureSettings; @@ -295,7 +301,9 @@ public class Player extends EntityHuman implements CommandSender, InventoryHolde private float soulSpeedMultiplier = 1; private boolean wasInSoulSandCompatible; - + + private boolean isIgnoringMobEquipmentPacket; + @PowerNukkitOnly @Since("1.4.0.0-PN") public float getSoulSpeedMultiplier() { @@ -633,7 +641,7 @@ public void sendCommandData() { Map data = new HashMap<>(); int count = 0; for (Command command : this.server.getCommandMap().getCommands().values()) { - if (!command.testPermissionSilent(this)) { + if (!command.testPermissionSilent(this) || !command.isRegistered()) { continue; } ++count; @@ -660,11 +668,11 @@ private static InetSocketAddress uncheckedNewInetSocketAddress(String ip, int po } } + @PowerNukkitOnly public Player(SourceInterface interfaz, Long clientID, String ip, int port) { this(interfaz, clientID, uncheckedNewInetSocketAddress(ip, port)); } - @PowerNukkitOnly public Player(SourceInterface interfaz, Long clientID, InetSocketAddress socketAddress) { super(null, new CompoundTag()); this.interfaz = interfaz; @@ -698,6 +706,7 @@ protected void initEntity() { this.addDefaultWindows(); } + @Override public boolean isPlayer() { return true; } @@ -777,7 +786,7 @@ public String getButtonText() { public void setButtonText(String text) { this.buttonText = text; - this.setDataProperty(new StringEntityData(Entity.DATA_INTERACT_TEXT, this.buttonText)); + this.setDataProperty(new StringEntityData(Entity.DATA_INTERACTIVE_TAG, this.buttonText)); } public void unloadChunk(int x, int z) { @@ -1432,20 +1441,6 @@ public Item[] getDrops() { return Item.EMPTY_ARRAY; } - @Override - public boolean setDataProperty(EntityData data) { - return setDataProperty(data, true); - } - - @Override - public boolean setDataProperty(EntityData data, boolean send) { - if (super.setDataProperty(data, send)) { - if (send) this.sendData(this, new EntityMetadata().put(this.getDataProperty(data.getId()))); - return true; - } - return false; - } - @Override protected void checkGroundState(double movX, double movY, double movZ, double dx, double dy, double dz) { if (!this.onGround || movX != 0 || movY != 0 || movZ != 0) { @@ -1624,7 +1619,15 @@ protected void processMovement(int tickDiff) { this.y = newPos.y; this.z = newPos.z; double radius = this.getWidth() / 2; - this.boundingBox.setBounds(this.x - radius, this.y, this.z - radius, this.x + radius, this.y + this.getHeight(), this.z + radius); + this.boundingBox.setBounds( + this.x - radius, + this.y, + this.z - radius, + + this.x + radius, + this.y + this.getCurrentHeight(), + this.z + radius + ); } } @@ -1817,6 +1820,10 @@ public void sendAttributes() { this.dataPacket(pk); } + private void logTriedToSetButHadInHand(Item tried, Item had) { + log.debug("Tried to set item {} but {} had item {} in their hand slot", tried.getId(), this.username, had.getId()); + } + @Override public boolean onUpdate(int currentTick) { if (!this.loggedIn) { @@ -2257,9 +2264,9 @@ protected void completeLoginSequence() { startGamePacket.generator = 1; //0 old, 1 infinite, 2 flat startGamePacket.dimension = (byte) getLevel().getDimension(); //startGamePacket.isInventoryServerAuthoritative = true; - + this.dataPacketImmediately(startGamePacket); - + this.dataPacket(new ItemComponentPacket()); this.dataPacket(new BiomeDefinitionListPacket()); @@ -2299,11 +2306,24 @@ protected void completeLoginSequence() { this.server.onPlayerCompleteLoginSequence(this); } + @SneakyThrows + private List unpackBatchedPackets(BatchPacket packet) { + return this.server.getNetwork().unpackBatchedPackets(packet); + } + public void handleDataPacket(DataPacket packet) { if (!connected) { return; } + if (!verified && packet.pid() != ProtocolInfo.LOGIN_PACKET && packet.pid() != ProtocolInfo.BATCH_PACKET) { + log.warn("Ignoring {} from {} due to player not verified yet", packet.getClass().getSimpleName(), getAddress()); + if (unverifiedPackets++ > 100) { + this.close("", "Too many failed login attempts"); + } + return; + } + try (Timing ignored = Timings.getReceiveDataPacketTiming(packet)) { DataPacketReceiveEvent ev = new DataPacketReceiveEvent(this, packet); this.server.getPluginManager().callEvent(ev); @@ -2312,7 +2332,8 @@ public void handleDataPacket(DataPacket packet) { } if (packet.pid() == ProtocolInfo.BATCH_PACKET) { - this.server.getNetwork().processBatch((BatchPacket) packet, this); + List dataPackets = unpackBatchedPackets((BatchPacket) packet); + dataPackets.forEach(this::handleDataPacket); return; } @@ -2346,7 +2367,7 @@ public void handleDataPacket(DataPacket packet) { disconnectPacket.encode(); BatchPacket batch = new BatchPacket(); batch.payload = disconnectPacket.getBuffer(); - this.dataPacket(batch); + this.dataPacketImmediately(batch); // Still want to run close() to allow the player to be removed properly } this.close("", message, false); @@ -2383,7 +2404,7 @@ public void handleDataPacket(DataPacket packet) { for (int i = 0; i < len && valid; i++) { char c = loginPacket.username.charAt(i); if ((c >= 'a' && c <= 'z') || - (c >= 'A' && c <= 'Z') || + (c >= 'A' && c <= 'Z') || (c >= '0' && c <= '9') || c == '_' || c == ' ' ) { @@ -2420,6 +2441,8 @@ public void handleDataPacket(DataPacket packet) { } Player playerInstance = this; + this.verified = true; + this.preLoginEventTask = new AsyncTask() { private PlayerAsyncPreLoginEvent event; @@ -2466,18 +2489,19 @@ public void onCompletion(Server server) { ResourcePackDataInfoPacket dataInfoPacket = new ResourcePackDataInfoPacket(); dataInfoPacket.packId = resourcePack.getPackId(); - dataInfoPacket.maxChunkSize = 1048576; //megabyte - dataInfoPacket.chunkCount = resourcePack.getPackSize() / dataInfoPacket.maxChunkSize; + dataInfoPacket.setPackVersion(new Version(resourcePack.getPackVersion())); + dataInfoPacket.maxChunkSize = server.getResourcePackManager().getMaxChunkSize(); // 102400 is default + dataInfoPacket.chunkCount = (int) Math.ceil(resourcePack.getPackSize() / (double) dataInfoPacket.maxChunkSize); dataInfoPacket.compressedPackSize = resourcePack.getPackSize(); dataInfoPacket.sha256 = resourcePack.getSha256(); - this.dataPacket(dataInfoPacket); + this.dataResourcePacket(dataInfoPacket); } break; case ResourcePackClientResponsePacket.STATUS_HAVE_ALL_PACKS: ResourcePackStackPacket stackPacket = new ResourcePackStackPacket(); stackPacket.mustAccept = this.server.getForceResources(); stackPacket.resourcePackStack = this.server.getResourcePackManager().getResourceStack(); - this.dataPacket(stackPacket); + this.dataResourcePacket(stackPacket); break; case ResourcePackClientResponsePacket.STATUS_COMPLETED: this.shouldLogin = true; @@ -2488,21 +2512,24 @@ public void onCompletion(Server server) { break; } break; - case ProtocolInfo.RESOURCE_PACK_CHUNK_REQUEST_PACKET: + case ProtocolInfo.RESOURCE_PACK_CHUNK_REQUEST_PACKET: { ResourcePackChunkRequestPacket requestPacket = (ResourcePackChunkRequestPacket) packet; - ResourcePack resourcePack = this.server.getResourcePackManager().getPackById(requestPacket.packId); + ResourcePack resourcePack = this.server.getResourcePackManager().getPackById(requestPacket.getPackId()); // TODO: Pack version check if (resourcePack == null) { this.close("", "disconnectionScreen.resourcePack"); break; } + int maxChunkSize = server.getResourcePackManager().getMaxChunkSize(); ResourcePackChunkDataPacket dataPacket = new ResourcePackChunkDataPacket(); - dataPacket.packId = resourcePack.getPackId(); + dataPacket.setPackId(resourcePack.getPackId()); + dataPacket.setPackVersion(new Version(resourcePack.getPackVersion())); dataPacket.chunkIndex = requestPacket.chunkIndex; - dataPacket.data = resourcePack.getPackChunk(1048576 * requestPacket.chunkIndex, 1048576); - dataPacket.progress = 1048576 * requestPacket.chunkIndex; - this.dataPacket(dataPacket); + dataPacket.data = resourcePack.getPackChunk(maxChunkSize * requestPacket.chunkIndex, maxChunkSize); + dataPacket.progress = maxChunkSize * (long) requestPacket.chunkIndex; + this.dataResourcePacket(dataPacket); break; + } case ProtocolInfo.SET_LOCAL_PLAYER_AS_INITIALIZED_PACKET: if (this.locallyInitialized) { break; @@ -2542,11 +2569,19 @@ public void onCompletion(Server server) { return false; } }).map(Field::getName).findFirst(); - log.warn("Violation warning from {}{}", this.getName(), packetName.map(name-> " for packet "+name).orElse("")+": " + packet.toString()); + log.warn("Violation warning from {}{}", this.getName(), packetName.map(name-> " for packet "+name).orElse("")+": " + packet); break; case ProtocolInfo.EMOTE_PACKET: + if (!this.spawned) { + return; + } + EmotePacket emotePacket = (EmotePacket) packet; + if (emotePacket.runtimeId != this.id) { + log.warn("{} sent EmotePacket with invalid entity id: {} != {}", this.username, emotePacket.runtimeId, this.id); + return; + } for (Player viewer : this.getViewers().values()) { - viewer.dataPacket(packet); + viewer.dataPacket(emotePacket); } return; case ProtocolInfo.PLAYER_INPUT_PACKET: @@ -2558,44 +2593,20 @@ public void onCompletion(Server server) { ((EntityMinecartAbstract) riding).setCurrentSpeed(ipk.motionY); } break; - case ProtocolInfo.MOVE_ENTITY_ABSOLUTE_PACKET: { - if (!this.isAlive() || !this.spawned || this.getRiding() == null) { - break; - } - MoveEntityAbsolutePacket movePacket = (MoveEntityAbsolutePacket) packet; - Entity movedEntity = getLevel().getEntity(movePacket.eid); - if (!(movedEntity instanceof EntityBoat)) { - break; - } - - temporalVector.setComponents(movePacket.x, movePacket.y - ((EntityBoat) movedEntity).getBaseOffset(), movePacket.z); - if (!movedEntity.equals(getRiding()) || !movedEntity.isControlling(this) - || temporalVector.distanceSquared(movedEntity) > 10*10) { - movedEntity.addMovement(movedEntity.x, movedEntity.y, movedEntity.z, movedEntity.yaw, movedEntity.pitch, movedEntity.yaw); - break; - } - - Location from = movedEntity.getLocation(); - movedEntity.setPositionAndRotation(temporalVector, movePacket.headYaw, 0); - Location to = movedEntity.getLocation(); - if (!from.equals(to)) { - this.getServer().getPluginManager().callEvent(new VehicleMoveEvent(this, from, to)); - } - break; - } case ProtocolInfo.MOVE_PLAYER_PACKET: if (this.teleportPosition != null) { break; } MovePlayerPacket movePlayerPacket = (MovePlayerPacket) packet; - Vector3 newPos = new Vector3(movePlayerPacket.x, movePlayerPacket.y - this.getEyeHeight(), movePlayerPacket.z); + Vector3 newPos = new Vector3(movePlayerPacket.x, movePlayerPacket.y - this.getBaseOffset(), movePlayerPacket.z); - if (newPos.distanceSquared(this) < 0.01 && movePlayerPacket.yaw % 360 == this.yaw && movePlayerPacket.pitch % 360 == this.pitch) { + double dis = newPos.distanceSquared(this); + if (dis == 0 && movePlayerPacket.yaw % 360 == this.yaw && movePlayerPacket.pitch % 360 == this.pitch) { break; } - if (newPos.distanceSquared(this) > 100) { + if (dis > 100) { this.sendPosition(this, movePlayerPacket.yaw, movePlayerPacket.pitch, MovePlayerPacket.MODE_RESET); break; } @@ -2622,8 +2633,43 @@ public void onCompletion(Server server) { this.positionChanged = true; this.forceMovement = null; } + break; + /* PowerNukkit disabled to use our own boat implementation + case ProtocolInfo.MOVE_ENTITY_ABSOLUTE_PACKET: + MoveEntityAbsolutePacket moveEntityAbsolutePacket = (MoveEntityAbsolutePacket) packet; + if (this.riding == null || this.riding.getId() != moveEntityAbsolutePacket.eid || !this.riding.isControlling(this)) { + break; + } + if (this.riding instanceof EntityBoat) { + ((EntityBoat) this.riding).onInput(moveEntityAbsolutePacket.x, moveEntityAbsolutePacket.y, moveEntityAbsolutePacket.z, moveEntityAbsolutePacket.headYaw); + } + break; + */ + case ProtocolInfo.MOVE_ENTITY_ABSOLUTE_PACKET: { + if (!this.isAlive() || !this.spawned || this.getRiding() == null) { + break; + } + MoveEntityAbsolutePacket movePacket = (MoveEntityAbsolutePacket) packet; + Entity movedEntity = getLevel().getEntity(movePacket.eid); + if (!(movedEntity instanceof EntityBoat)) { + break; + } + + temporalVector.setComponents(movePacket.x, movePacket.y - ((EntityBoat) movedEntity).getBaseOffset(), movePacket.z); + if (!movedEntity.equals(getRiding()) || !movedEntity.isControlling(this) + || temporalVector.distanceSquared(movedEntity) > 10*10) { + movedEntity.addMovement(movedEntity.x, movedEntity.y, movedEntity.z, movedEntity.yaw, movedEntity.pitch, movedEntity.yaw); + break; + } + Location from = movedEntity.getLocation(); + movedEntity.setPositionAndRotation(temporalVector, movePacket.headYaw, 0); + Location to = movedEntity.getLocation(); + if (!from.equals(to)) { + this.getServer().getPluginManager().callEvent(new VehicleMoveEvent(this, from, to)); + } break; + } case ProtocolInfo.ADVENTURE_SETTINGS_PACKET: //TODO: player abilities, check for other changes AdventureSettingsPacket adventureSettingsPacket = (AdventureSettingsPacket) packet; @@ -2654,13 +2700,18 @@ public void onCompletion(Server server) { } Item item = inv.getItem(mobEquipmentPacket.hotbarSlot); - - if (!item.equals(mobEquipmentPacket.item)) { - log.debug("Tried to equip {} but have {} in target slot", mobEquipmentPacket.item, item); - inv.sendContents(this); - return; + + if (!this.isIgnoringMobEquipmentPacket()) { + if (!item.equals(mobEquipmentPacket.item)) { + log.debug("Tried to equip {} but have {} in target slot", mobEquipmentPacket.item, item); + inv.sendContents(this); + return; + } + } else { + log.debug("MobEquipmentPacket ignored"); + this.setIgnoringMobEquipmentPacket(false); } - + if (inv instanceof PlayerInventory) { ((PlayerInventory) inv).equipItem(mobEquipmentPacket.hotbarSlot); } @@ -2980,12 +3031,12 @@ public void onCompletion(Server server) { } else if (targetEntity.getId() != this.getId()) { break; } - + if (!this.inventoryOpen) { this.inventory.open(this); this.inventoryOpen = true; } - + break; } break; @@ -3661,7 +3712,11 @@ public void onCompletion(Server server) { //TODO: Implement adventure mode checks if ((i = this.level.useItemOn(blockVector.asVector3(), i, face, useItemData.clickPos.x, useItemData.clickPos.y, useItemData.clickPos.z, this)) != null) { if (!i.equals(oldItem) || i.getCount() != oldItem.getCount()) { - inventory.setItemInHand(i); + if (oldItem.getId() == i.getId() || i.getId() == 0) { + inventory.setItemInHand(i); + } else { + logTriedToSetButHadInHand(i, oldItem); + } inventory.sendHeldItem(this.getViewers().values()); } break packetswitch; @@ -3696,7 +3751,11 @@ public void onCompletion(Server server) { if (this.isSurvival() || this.isAdventure()) { this.getFoodData().updateFoodExpLevel(0.025); if (!i.equals(oldItem) || i.getCount() != oldItem.getCount()) { - inventory.setItemInHand(i); + if (oldItem.getId() == i.getId() || i.getId() == 0) { + inventory.setItemInHand(i); + } else { + logTriedToSetButHadInHand(i, oldItem); + } inventory.sendHeldItem(this.getViewers().values()); } } @@ -3739,7 +3798,11 @@ public void onCompletion(Server server) { if (item.onClickAir(this, directionVector)) { if (!this.isCreative()) { - this.inventory.setItemInHand(item); + if (item.getId() == 0 || this.inventory.getItemInHand().getId() == item.getId()) { + this.inventory.setItemInHand(item); + } else { + logTriedToSetButHadInHand(item, this.inventory.getItemInHand()); + } } if (!this.isUsingItem()) { @@ -3801,7 +3864,11 @@ public void onCompletion(Server server) { } } - this.inventory.setItemInHand(item); + if (item.getId() == 0 || this.inventory.getItemInHand().getId() == item.getId()) { + this.inventory.setItemInHand(item); + } else { + logTriedToSetButHadInHand(item, this.inventory.getItemInHand()); + } } break; case InventoryTransactionPacket.USE_ITEM_ON_ENTITY_ACTION_ATTACK: @@ -3811,15 +3878,6 @@ public void onCompletion(Server server) { break; } - float itemDamage = item.getAttackDamage(); - - for (Enchantment enchantment : item.getEnchantments()) { - itemDamage += enchantment.getDamageBonus(target); - } - - Map damage = new EnumMap<>(DamageModifier.class); - damage.put(DamageModifier.BASE, itemDamage); - if (!this.canInteract(target, isCreative() ? 8 : 5)) { break; } else if (target instanceof Player) { @@ -3830,7 +3888,23 @@ public void onCompletion(Server server) { } } - EntityDamageByEntityEvent entityDamageByEntityEvent = new EntityDamageByEntityEvent(this, target, DamageCause.ENTITY_ATTACK, damage); + Enchantment[] enchantments = item.getEnchantments(); + + float itemDamage = item.getAttackDamage(); + for (Enchantment enchantment : enchantments) { + itemDamage += enchantment.getDamageBonus(target); + } + + Map damage = new EnumMap<>(DamageModifier.class); + damage.put(DamageModifier.BASE, itemDamage); + + float knockBack = 0.3f; + Enchantment knockBackEnchantment = item.getEnchantment(Enchantment.ID_KNOCKBACK); + if (knockBackEnchantment != null) { + knockBack += knockBackEnchantment.getLevel() * 0.1f; + } + + EntityDamageByEntityEvent entityDamageByEntityEvent = new EntityDamageByEntityEvent(this, target, DamageCause.ENTITY_ATTACK, damage, knockBack, enchantments); if (this.isSpectator()) entityDamageByEntityEvent.setCancelled(); if ((target instanceof Player) && !this.level.getGameRules().getBoolean(GameRule.PVP)) { entityDamageByEntityEvent.setCancelled(); @@ -3854,16 +3928,24 @@ public void onCompletion(Server server) { } } + for (SideEffect sideEffect : entityDamageByEntityEvent.getSideEffects()) { + sideEffect.doPostAttack(this, entityDamageByEntityEvent, target); + } + for (Enchantment enchantment : item.getEnchantments()) { enchantment.doPostAttack(this, target); } - if (item.isTool() && this.isSurvival()) { + if (item.isTool() && (this.isSurvival() || this.isAdventure())) { if (item.useOn(target) && item.getDamage() >= item.getMaxDurability()) { level.addSound(this, Sound.RANDOM_BREAK); - this.inventory.setItemInHand(new ItemBlock(Block.get(BlockID.AIR))); + this.inventory.setItemInHand(Item.get(0)); } else { - this.inventory.setItemInHand(item); + if (item.getId() == 0 || this.inventory.getItemInHand().getId() == item.getId()) { + this.inventory.setItemInHand(item); + } else { + logTriedToSetButHadInHand(item, this.inventory.getItemInHand()); + } } } return; @@ -3954,17 +4036,19 @@ public void onCompletion(Server server) { return; } - if (bookEditPacket.text == null || bookEditPacket.text.length() > 256) { - return; - } - Item newBook = oldBook.clone(); boolean success; switch (bookEditPacket.action) { case REPLACE_PAGE: + if (bookEditPacket.text == null || bookEditPacket.text.length() > 256) { + return; + } success = ((ItemBookAndQuill) newBook).setPageText(bookEditPacket.pageNumber, bookEditPacket.text); break; case ADD_PAGE: + if (bookEditPacket.text == null || bookEditPacket.text.length() > 256) { + return; + } success = ((ItemBookAndQuill) newBook).insertPage(bookEditPacket.pageNumber, bookEditPacket.text); break; case DELETE_PAGE: @@ -3985,6 +4069,10 @@ public void onCompletion(Server server) { PlayerEditBookEvent editBookEvent = new PlayerEditBookEvent(this, oldBook, newBook, bookEditPacket.action); this.server.getPluginManager().callEvent(editBookEvent); if (!editBookEvent.isCancelled()) { + // HACK: When the client is survival, it sends MobEquipmentPacket when it edit a book. Then, when the server handle MobEquipmentPacket, the item does not same as before so it reverts. Ignore it to solve it. + if (!this.isCreative() && bookEditPacket.action == BookEditPacket.Action.SIGN_BOOK) { + this.setIgnoringMobEquipmentPacket(true); + } this.inventory.setItem(bookEditPacket.inventorySlot, editBookEvent.getNewBook()); } } @@ -4026,7 +4114,7 @@ public void onCompletion(Server server) { break; case ProtocolInfo.TICK_SYNC_PACKET: TickSyncPacket tickSyncPacket = (TickSyncPacket) packet; - + TickSyncPacket tickSyncPacketToClient = new TickSyncPacket(); tickSyncPacketToClient.setRequestTimestamp(tickSyncPacket.getRequestTimestamp()); tickSyncPacketToClient.setResponseTimestamp(this.getServer().getTick()); @@ -4057,7 +4145,7 @@ public boolean chat(String message) { } for (String msg : message.split("\n")) { - if (!msg.trim().isEmpty() && msg.length() <= 255 && this.messageCounter-- > 0) { + if (!msg.trim().isEmpty() && msg.length() <= 512 && this.messageCounter-- > 0) { PlayerChatEvent chatEvent = new PlayerChatEvent(this, msg); this.server.getPluginManager().callEvent(chatEvent); if (!chatEvent.isCancelled()) { @@ -4453,6 +4541,14 @@ public void save(boolean async) { } } + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Player"; + } + + @Override public String getName() { return this.username; } @@ -4463,7 +4559,7 @@ public void kill() { return; } - boolean showMessages = this.level.getGameRules().getBoolean(GameRule.SHOW_DEATH_MESSAGE); + boolean showMessages = this.level.getGameRules().getBoolean(GameRule.SHOW_DEATH_MESSAGES); String message = ""; List params = new ArrayList<>(); EntityDamageEvent cause = this.getLastDamageCause(); @@ -4521,12 +4617,8 @@ public void kill() { break; case LAVA: - Block block = this.level.getBlock(new Vector3(this.x, this.y - 1, this.z)); - if (block.getId() == Block.MAGMA) { - message = "death.attack.magma"; - } else { - message = "death.attack.lava"; - } + message = "death.attack.lava"; + if (killer instanceof EntityProjectile) { Entity shooter = ((EntityProjectile) killer).shootingEntity; if (shooter != null) { @@ -4553,8 +4645,11 @@ public void kill() { case CONTACT: if (cause instanceof EntityDamageByBlockEvent) { - if (((EntityDamageByBlockEvent) cause).getDamager().getId() == Block.CACTUS) { + int id = ((EntityDamageByBlockEvent) cause).getDamager().getId(); + if (id == BlockID.CACTUS) { message = "death.attack.cactus"; + } else if (id == BlockID.ANVIL) { + message = "death.attack.anvil"; } } break; @@ -4587,6 +4682,9 @@ public void kill() { case HUNGER: message = "death.attack.starve"; break; + case HOT_FLOOR: + message = "death.attack.magma"; + break; default: message = "death.attack.generic"; break; @@ -4804,6 +4902,7 @@ public void addExperience(int add) { addExperience(add, false); } + @PowerNukkitOnly public void addExperience(int add, boolean playLevelUpSound) { if (add == 0) return; int now = this.getExperience(); @@ -4837,7 +4936,7 @@ public void setExperience(int exp, int level) { } //todo something on performance, lots of exp orbs then lots of packets, could crash client - + @PowerNukkitOnly public void setExperience(int exp, int level, boolean playLevelUpSound) { int levelBefore = this.expLevel; this.exp = exp; @@ -5024,11 +5123,15 @@ public void sendPosition(Vector3 pos, double yaw, double pitch, int mode, Player pk.pitch = (float) pitch; pk.yaw = (float) yaw; pk.mode = mode; + pk.onGround = this.onGround; + if (this.riding != null) { + pk.ridingEid = this.riding.getId(); + pk.mode = MovePlayerPacket.MODE_PITCH; + } if (targets != null) { Server.broadcastPacket(targets, pk); } else { - pk.eid = this.id; this.dataPacket(pk); } } @@ -5099,7 +5202,11 @@ protected void sendPlayStatus(int status, boolean immediate) { PlayStatusPacket pk = new PlayStatusPacket(); pk.status = status; - this.dataPacket(pk); + if (immediate) { + this.dataPacketImmediately(pk); + } else { + this.dataPacket(pk); + } } @Override @@ -5279,7 +5386,7 @@ public long createBossBar(DummyBossBar dummyBossBar) { * @return DummyBossBar object * @see DummyBossBar#setText(String) Set BossBar text * @see DummyBossBar#setLength(float) Set BossBar length - * @see DummyBossBar#setColor(BlockColor) Set BossBar color + * @see DummyBossBar#setColor(BossBarColor) Set BossBar color */ public DummyBossBar getDummyBossBar(long bossBarId) { return this.dummyBossBars.getOrDefault(bossBarId, null); @@ -5692,7 +5799,7 @@ public boolean pickupEntity(Entity entity, boolean near) { Inventory inventory = this.inventory; if (entity instanceof EntityArrow && ((EntityArrow) entity).hadCollision) { ItemArrow item = new ItemArrow(); - if (this.isSurvival()) { + if (!this.isCreative()) { // Should only collect to the offhand slot if the item matches what is already there if (this.offhandInventory.getItem(0).getId() == item.getId() && this.offhandInventory.canAddItem(item)) { inventory = this.offhandInventory; @@ -5704,7 +5811,7 @@ public boolean pickupEntity(Entity entity, boolean near) { InventoryPickupArrowEvent ev = new InventoryPickupArrowEvent(inventory, (EntityArrow) entity); int pickupMode = ((EntityArrow) entity).getPickupMode(); - if (pickupMode == EntityArrow.PICKUP_NONE || pickupMode == EntityArrow.PICKUP_CREATIVE && !this.isCreative()) { + if (pickupMode == EntityProjectile.PICKUP_NONE || (pickupMode == EntityProjectile.PICKUP_CREATIVE && !this.isCreative())) { ev.setCancelled(); } @@ -5741,11 +5848,17 @@ public boolean pickupEntity(Entity entity, boolean near) { } Item item = ((EntityThrownTrident) entity).getItem(); - if (this.isSurvival() && !inventory.canAddItem(item)) { + if (!this.isCreative() && !this.inventory.canAddItem(item)) { return false; } InventoryPickupTridentEvent ev = new InventoryPickupTridentEvent(this.inventory, (EntityThrownTrident) entity); + + int pickupMode = ((EntityThrownTrident) entity).getPickupMode(); + if (pickupMode == EntityProjectile.PICKUP_NONE || (pickupMode == EntityProjectile.PICKUP_CREATIVE && !this.isCreative())) { + ev.setCancelled(); + } + this.server.getPluginManager().callEvent(ev); if (ev.isCancelled()) { return false; @@ -5771,7 +5884,7 @@ public boolean pickupEntity(Entity entity, boolean near) { Item item = ((EntityItem) entity).getItem(); if (item != null) { - if (this.isSurvival() && !inventory.canAddItem(item)) { + if (!this.isCreative() && !this.inventory.canAddItem(item)) { return false; } @@ -5797,8 +5910,8 @@ public boolean pickupEntity(Entity entity, boolean near) { Server.broadcastPacket(entity.getViewers().values(), pk); this.dataPacket(pk); + this.inventory.addItem(item.clone()); entity.close(); - inventory.addItem(item.clone()); return true; } } @@ -5831,8 +5944,9 @@ public boolean pickupEntity(Entity entity, boolean near) { if (toRepair instanceof ItemTool || toRepair instanceof ItemArmor) { if (toRepair.getDamage() > 0) { int dmg = toRepair.getDamage() - 2; - if (dmg < 0) + if (dmg < 0) { dmg = 0; + } toRepair.setDamage(dmg); inventory.setItem(itemToRepair, toRepair); return true; @@ -5906,9 +6020,10 @@ public void startFishing(Item fishingRod) { if (ev.isCancelled()) { fishingHook.close(); } else { - fishingHook.spawnToAll(); this.fishing = fishingHook; fishingHook.rod = fishingRod; + fishingHook.checkLure(); + fishingHook.spawnToAll(); } } @@ -5941,6 +6056,7 @@ private void updateBlockingFlag() { } } + @PowerNukkitOnly @Override protected void onBlock(Entity entity, boolean animate) { super.onBlock(entity, animate); @@ -6045,7 +6161,16 @@ public void sendAnnouncement(String source, String message) { pk.message = message; this.dataPacket(pk); } - + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public void completeUsingItem(int itemId, int action) { + CompletedUsingItemPacket pk = new CompletedUsingItemPacket(); + pk.itemId = itemId; + pk.action = action; + this.dataPacket(pk); + } + @PowerNukkitOnly @Since("1.4.0.0-PN") public boolean dataPacketImmediately(DataPacket packet) { @@ -6066,7 +6191,43 @@ public boolean dataPacketImmediately(DataPacket packet) { this.interfaz.putPacket(this, packet, false, true); } - + + return true; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public boolean dataResourcePacket(DataPacket packet) { + if (!this.connected) { + return false; + } + + try (Timing ignored = Timings.getSendDataPacketTiming(packet)) { + DataPacketSendEvent ev = new DataPacketSendEvent(this, packet); + this.server.getPluginManager().callEvent(ev); + if (ev.isCancelled()) { + return false; + } + + if (log.isTraceEnabled() && !server.isIgnoredPacket(packet.getClass())) { + log.trace("Resource Outbound {}: {}", this.getName(), packet); + } + + this.interfaz.putResourcePacket(this, packet); + } + return true; } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + public boolean isIgnoringMobEquipmentPacket() { + return this.isIgnoringMobEquipmentPacket; + } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + public void setIgnoringMobEquipmentPacket(boolean isIgnoringMobEquipmentPacket) { + this.isIgnoringMobEquipmentPacket = isIgnoringMobEquipmentPacket; + } } diff --git a/src/main/java/cn/nukkit/Server.java b/src/main/java/cn/nukkit/Server.java index 09aa880c560..f52bdc1ddcb 100644 --- a/src/main/java/cn/nukkit/Server.java +++ b/src/main/java/cn/nukkit/Server.java @@ -27,6 +27,7 @@ import cn.nukkit.inventory.CraftingManager; import cn.nukkit.inventory.Recipe; import cn.nukkit.item.Item; +import cn.nukkit.item.RuntimeItems; import cn.nukkit.item.enchantment.Enchantment; import cn.nukkit.lang.BaseLang; import cn.nukkit.lang.TextContainer; @@ -223,18 +224,21 @@ public class Server { private PositionTrackingService positionTrackingService; private final Map levels = new HashMap() { + @Override public Level put(Integer key, Level value) { Level result = super.put(key, value); levelArray = levels.values().toArray(Level.EMPTY_ARRAY); return result; } + @Override public boolean remove(Object key, Object value) { boolean result = super.remove(key, value); levelArray = levels.values().toArray(Level.EMPTY_ARRAY); return result; } + @Override public Level remove(Object key) { Level result = super.remove(key); levelArray = levels.values().toArray(Level.EMPTY_ARRAY); @@ -242,7 +246,7 @@ public Level remove(Object key) { } }; - private Level[] levelArray = Level.EMPTY_ARRAY; + private Level[] levelArray; private final ServiceManager serviceManager = new NKServiceManager(); @@ -272,13 +276,13 @@ public Level remove(Object key) { * Minimal initializer for testing */ @SuppressWarnings("UnstableApiUsage") - @PowerNukkitOnly - @Since("1.4.0.0-PN") Server(File tempDir) throws IOException { if (tempDir.isFile() && !tempDir.delete()) { throw new IOException("Failed to delete " + tempDir); } instance = this; + config = new Config(); + levelArray = Level.EMPTY_ARRAY; launchTime = System.currentTimeMillis(); BatchPacket batchPacket = new BatchPacket(); batchPacket.payload = EmptyArrays.EMPTY_BYTES; @@ -300,7 +304,6 @@ public Level remove(Object key) { console = new NukkitConsole(this); consoleThread = new ConsoleThread(); - config = new Config(); properties = new Config(); banByName = new BanList(dataPath + "banned-players.json"); banByIP = new BanList(dataPath + "banned-ips.json"); @@ -496,6 +499,7 @@ public Level remove(Object key) { log.info("Loading {} ...", TextFormat.GREEN + "nukkit.yml" + TextFormat.WHITE); this.config = new Config(this.dataPath + "nukkit.yml", Config.YAML); + levelArray = Level.EMPTY_ARRAY; Nukkit.DEBUG = NukkitMath.clamp(this.getConfig("debug.level", 1), 1, 3); @@ -641,10 +645,11 @@ public Level remove(Object key) { Block.init(); Enchantment.init(); + RuntimeItems.getRuntimeMapping(); + Potion.init(); Item.init(); EnumBiome.values(); //load class, this also registers biomes Effect.init(); - Potion.init(); Attribute.init(); DispenseBehaviorRegister.init(); GlobalBlockPalette.getOrCreateRuntimeId(0, 0); //Force it to load @@ -1270,15 +1275,8 @@ public void sendRecipeList(Player player) { } private void checkTickUpdates(int currentTick, long tickTime) { - for (Player p : new ArrayList<>(this.players.values())) { - /*if (!p.loggedIn && (tickTime - p.creationTime) >= 10000 && p.kick(PlayerKickEvent.Reason.LOGIN_TIMEOUT, "Login timeout")) { - continue; - } - - client freezes when applying resource packs - todo: fix*/ - - if (this.alwaysTickPlayers) { + if (this.alwaysTickPlayers) { + for (Player p : new ArrayList<>(this.players.values())) { p.onUpdate(currentTick); } } @@ -1492,6 +1490,7 @@ public String getNukkitVersion() { return Nukkit.VERSION; } + @PowerNukkitOnly public String getGitCommit() { return Nukkit.GIT_COMMIT; } @@ -2275,10 +2274,12 @@ public boolean isLanguageForced() { return forceLanguage; } + @PowerNukkitOnly public boolean isRedstoneEnabled() { return redstoneEnabled; } + @PowerNukkitOnly public void setRedstoneEnabled(boolean redstoneEnabled) { this.redstoneEnabled = redstoneEnabled; } @@ -2414,7 +2415,7 @@ public boolean isWhitelisted(String name) { } public boolean isOp(String name) { - return this.operators.exists(name, true); + return name != null && this.operators.exists(name, true); } public Config getWhitelist() { diff --git a/src/main/java/cn/nukkit/api/DeprecationDetails.java b/src/main/java/cn/nukkit/api/DeprecationDetails.java index b47ea02036b..497ec2dabf6 100644 --- a/src/main/java/cn/nukkit/api/DeprecationDetails.java +++ b/src/main/java/cn/nukkit/api/DeprecationDetails.java @@ -5,6 +5,7 @@ /** * Describe the deprecation with more details. This is persisted to the class file, so it can be read without javadocs. */ +@PowerNukkitOnly @Retention(RetentionPolicy.CLASS) @Target({ElementType.CONSTRUCTOR, ElementType.METHOD, ElementType.ANNOTATION_TYPE, ElementType.TYPE, ElementType.FIELD, ElementType.PACKAGE}) @@ -13,25 +14,30 @@ /** * The version which marked this element as deprecated. */ + @PowerNukkitOnly String since(); /** * Why it is deprecated. */ + @PowerNukkitOnly String reason(); /** * What should be used or do instead. */ + @PowerNukkitOnly String replaceWith() default ""; /** * When the annotated element will be removed or have it's signature changed. */ + @PowerNukkitOnly String toBeRemovedAt() default ""; /** * The maintainer party that has added this depreciation. For example: PowerNukkit, Cloudburst Nukkit, and Nukkit */ + @PowerNukkitOnly String by() default ""; } diff --git a/src/main/java/cn/nukkit/api/NewRakNetOnly.java b/src/main/java/cn/nukkit/api/NewRakNetOnly.java deleted file mode 100644 index 1760ead8527..00000000000 --- a/src/main/java/cn/nukkit/api/NewRakNetOnly.java +++ /dev/null @@ -1,21 +0,0 @@ -package cn.nukkit.api; - -import java.lang.annotation.*; - -/** - * Indicates that the annotated element is only available in PowerNukkit - * or in Cloudburst Nukkit environment with the "new-raknet" branch merged - * and will cause issues when used in a normal Nukkit server without the "new-raknet" patches and features. - * - * @author joserobjr - */ -@PowerNukkitOnly -@Since("1.4.0.0-PN") -@Retention(RetentionPolicy.CLASS) -@Target({ElementType.CONSTRUCTOR, ElementType.METHOD, ElementType.ANNOTATION_TYPE, ElementType.TYPE, - ElementType.FIELD, ElementType.PACKAGE}) -@Inherited -@Documented -public @interface NewRakNetOnly { - String value() default ""; -} diff --git a/src/main/java/cn/nukkit/api/PowerNukkitDifference.java b/src/main/java/cn/nukkit/api/PowerNukkitDifference.java index 0709c8155f5..a1c0b91fa52 100644 --- a/src/main/java/cn/nukkit/api/PowerNukkitDifference.java +++ b/src/main/java/cn/nukkit/api/PowerNukkitDifference.java @@ -16,9 +16,22 @@ @Documented @Repeatable(PowerNukkitDifference.DifferenceList.class) public @interface PowerNukkitDifference { - String info(); + @PowerNukkitOnly + @Since("1.3.0.0-PN") + String info() default ""; + + @PowerNukkitOnly + @Since("1.3.0.0-PN") String since() default ""; + @PowerNukkitOnly + @Since("1.5.1.0-PN") + Class extendsOnlyInPowerNukkit() default Void.class; + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + Class insteadOf() default Void.class; + @Retention(RetentionPolicy.CLASS) @Target({ElementType.CONSTRUCTOR, ElementType.METHOD, ElementType.ANNOTATION_TYPE, ElementType.TYPE, ElementType.FIELD, ElementType.PACKAGE}) diff --git a/src/main/java/cn/nukkit/api/PowerNukkitOnly.java b/src/main/java/cn/nukkit/api/PowerNukkitOnly.java index 81a05273a8b..8811d760664 100644 --- a/src/main/java/cn/nukkit/api/PowerNukkitOnly.java +++ b/src/main/java/cn/nukkit/api/PowerNukkitOnly.java @@ -13,5 +13,6 @@ @Inherited @Documented public @interface PowerNukkitOnly { + @PowerNukkitOnly String value() default ""; } diff --git a/src/main/java/cn/nukkit/api/RemovedFromNewRakNet.java b/src/main/java/cn/nukkit/api/RemovedFromNewRakNet.java deleted file mode 100644 index 51b444f39b1..00000000000 --- a/src/main/java/cn/nukkit/api/RemovedFromNewRakNet.java +++ /dev/null @@ -1,21 +0,0 @@ -package cn.nukkit.api; - -import java.lang.annotation.*; - -/** - * Indicates that the annotated element was removed in the popular Cloudburst new-raknet branch, using it - * will work in PowerNukkit and normal Nukkit but will cause issues in that branch or when the branch gets - * merged. - * - * @author joserobjr - */ -@PowerNukkitOnly -@Since("1.4.0.0-PN") -@Retention(RetentionPolicy.CLASS) -@Target({ElementType.CONSTRUCTOR, ElementType.METHOD, ElementType.ANNOTATION_TYPE, ElementType.TYPE, - ElementType.FIELD, ElementType.PACKAGE}) -@Inherited -@Documented -public @interface RemovedFromNewRakNet { - String value() default ""; -} diff --git a/src/main/java/cn/nukkit/api/Since.java b/src/main/java/cn/nukkit/api/Since.java index ab5882bf6fd..ac1d329d381 100644 --- a/src/main/java/cn/nukkit/api/Since.java +++ b/src/main/java/cn/nukkit/api/Since.java @@ -5,6 +5,7 @@ /** * Indicates which version added the annotated element. */ +@PowerNukkitOnly @Retention(RetentionPolicy.CLASS) @Target({ElementType.CONSTRUCTOR, ElementType.METHOD, ElementType.ANNOTATION_TYPE, ElementType.TYPE, ElementType.FIELD, ElementType.PACKAGE}) @@ -14,5 +15,6 @@ /** * The version which added the element. */ + @PowerNukkitOnly String value(); } diff --git a/src/main/java/cn/nukkit/api/UsedByReflection.java b/src/main/java/cn/nukkit/api/UsedByReflection.java index 42c07b87419..d582159b86d 100644 --- a/src/main/java/cn/nukkit/api/UsedByReflection.java +++ b/src/main/java/cn/nukkit/api/UsedByReflection.java @@ -1,4 +1,8 @@ package cn.nukkit.api; +import java.lang.annotation.Documented; + +@PowerNukkitOnly +@Documented public @interface UsedByReflection { } diff --git a/src/main/java/cn/nukkit/block/Block.java b/src/main/java/cn/nukkit/block/Block.java index 3ba81b20460..7eac9ab8e54 100644 --- a/src/main/java/cn/nukkit/block/Block.java +++ b/src/main/java/cn/nukkit/block/Block.java @@ -26,6 +26,7 @@ import cn.nukkit.utils.BlockColor; import cn.nukkit.utils.InvalidBlockDamageException; import com.google.common.base.Preconditions; +import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import lombok.extern.log4j.Log4j2; import javax.annotation.Nonnegative; @@ -56,10 +57,11 @@ public abstract class Block extends Position implements Metadatable, Cloneable, public static final Block[] EMPTY_ARRAY = new Block[0]; // + @SuppressWarnings("DeprecatedIsStillUsed") @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", reason = "It is being replaced by an other solution that don't require a fixed size") @PowerNukkitOnly - public static final int MAX_BLOCK_ID = dynamic(600); + public static final int MAX_BLOCK_ID = dynamic(750); @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", reason = "It's not a constant value, it may be changed on major updates and" + @@ -68,6 +70,7 @@ public abstract class Block extends Position implements Metadatable, Cloneable, @PowerNukkitOnly public static final int DATA_BITS = dynamic(4); + @SuppressWarnings("DeprecatedIsStillUsed") @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", reason = "It's not a constant value, it may be changed on major updates and" + " plugins will have to be recompiled in order to update this value in the binary files, " + @@ -86,6 +89,7 @@ public abstract class Block extends Position implements Metadatable, Cloneable, @DeprecationDetails(since = "1.4.0.0-PN", reason = "Not encapsulated, easy to break", replaceWith = "Block.get(int).getClass(), to register new blocks use registerBlockImplementation()") @SuppressWarnings({"java:S1444", "java:S2386"}) + @SuppressFBWarnings(value = "MS_PKGPROTECT", justification = "Changing it would break compatibility with some regular Nukkit plugins") public static Class[] list = null; @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.3.0.0-PN", @@ -93,43 +97,45 @@ public abstract class Block extends Position implements Metadatable, Cloneable, "to get the block with a given state use BlockState.of and than BlockState.getBlock()") @Deprecated @SuppressWarnings({"java:S1444", "java:S2386", "java:S1123", "java:S1133", "DeprecatedIsStillUsed"}) + @SuppressFBWarnings(value = "MS_PKGPROTECT", justification = "Changing it would break compatibility with some regular Nukkit plugins") public static Block[] fullList = null; @Deprecated @DeprecationDetails(reason = "Not encapsulated, easy to break", since = "1.4.0.0-PN", - replaceWith = "Block.getLightLevel()") + replaceWith = "Block.getLightLevel() or Block.getLightLevel(int)") @SuppressWarnings({"java:S1444", "java:S2386"}) + @SuppressFBWarnings(value = "MS_PKGPROTECT", justification = "Changing it would break compatibility with some regular Nukkit plugins") public static int[] light = null; @Deprecated @DeprecationDetails(reason = "Not encapsulated, easy to break", since = "1.4.0.0-PN", - replaceWith = "Block.getLightFilter()") - @SuppressWarnings({"java:S1444", "java:S2386"}) + replaceWith = "Block.getLightFilter() or Block.getLightFilter(int)") + @SuppressWarnings({"java:S1444", "java:S2386", "DeprecatedIsStillUsed"}) + @SuppressFBWarnings(value = "MS_PKGPROTECT", justification = "Changing it would break compatibility with some regular Nukkit plugins") public static int[] lightFilter = null; @Deprecated @DeprecationDetails(reason = "Not encapsulated, easy to break", since = "1.4.0.0-PN", - replaceWith = "Block.isSolid()") + replaceWith = "Block.isSolid() or Block.isSolid(int)") @SuppressWarnings({"java:S1444", "java:S2386"}) + @SuppressFBWarnings(value = "MS_PKGPROTECT", justification = "Changing it would break compatibility with some regular Nukkit plugins") public static boolean[] solid = null; @Deprecated @DeprecationDetails(reason = "Not encapsulated, easy to break", since = "1.4.0.0-PN", - replaceWith = "Block.getHardness()") - @SuppressWarnings({"java:S1444", "java:S2386"}) + replaceWith = "Block.getHardness() or Block.getHardness(int)") + @SuppressWarnings({"java:S1444", "java:S2386", "DeprecatedIsStillUsed"}) + @SuppressFBWarnings(value = "MS_PKGPROTECT", justification = "Changing it would break compatibility with some regular Nukkit plugins") public static double[] hardness = null; @Deprecated @DeprecationDetails(reason = "Not encapsulated, easy to break", since = "1.4.0.0-PN", - replaceWith = "Block.isTransparent()") - @SuppressWarnings({"java:S1444", "java:S2386"}) + replaceWith = "Block.isTransparent() or Block.isTransparent(int)") + @SuppressWarnings({"java:S1444", "java:S2386", "DeprecatedIsStillUsed"}) + @SuppressFBWarnings(value = "MS_PKGPROTECT", justification = "Changing it would break compatibility with some regular Nukkit plugins") public static boolean[] transparent = null; - @Deprecated - @DeprecationDetails(reason = "Not encapsulated, easy to break", since = "1.4.0.0-PN", - replaceWith = "Block.diffusesSkyLight()") - @SuppressWarnings({"java:S1444", "java:S2386"}) - public static boolean[] diffusesSkyLight = null; + private static boolean[] diffusesSkyLight = null; /** * if a block has can have variants @@ -196,7 +202,7 @@ public static void init() { list[TALL_GRASS] = BlockTallGrass.class; //31 list[DEAD_BUSH] = BlockDeadBush.class; //32 list[PISTON] = BlockPiston.class; //33 - list[PISTON_HEAD] = BlockPistonHead.class; //34 + list[PISTON_ARM_COLLISION] = BlockPistonHead.class; //34 list[WOOL] = BlockWool.class; //35 list[DANDELION] = BlockDandelion.class; //37 list[FLOWER] = BlockFlower.class; //38 @@ -293,7 +299,7 @@ public static void init() { list[EMERALD_ORE] = BlockOreEmerald.class; //129 list[ENDER_CHEST] = BlockEnderChest.class; //130 list[TRIPWIRE_HOOK] = BlockTripWireHook.class; - list[TRIPWIRE] = BlockTripWire.class; //132 + list[TRIP_WIRE] = BlockTripWire.class; //132 list[EMERALD_BLOCK] = BlockEmerald.class; //133 list[SPRUCE_WOOD_STAIRS] = BlockStairsSpruce.class; //134 list[BIRCH_WOOD_STAIRS] = BlockStairsBirch.class; //135 @@ -515,7 +521,7 @@ public static void init() { list[LIGHT_BLOCK] = BlockLight.class; //470 list[WITHER_ROSE] = BlockWitherRose.class; //471 - list[STICKYPISTONARMCOLLISION] = BlockPistonHeadSticky.class; //472 + list[STICKY_PISTON_ARM_COLLISION] = BlockPistonHeadSticky.class; //472 list[BEE_NEST] = BlockBeeNest.class; //473 list[BEEHIVE] = BlockBeehive.class; //474 list[HONEY_BLOCK] = BlockHoney.class; //475 @@ -701,6 +707,7 @@ public static Block get(int id, Integer meta, Position pos) { return get(id, meta, pos, 0); } + @PowerNukkitOnly @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", replaceWith = "BlockState.getBlock()", since = "1.4.0.0-PN") @SuppressWarnings("unchecked") @@ -748,6 +755,7 @@ public static Block get(int fullId, Level level, int x, int y, int z) { return get(fullId, level, x, y, z, 0); } + @PowerNukkitOnly @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.3.0.0-PN") public static Block get(int fullId, Level level, int x, int y, int z, int layer) { @@ -789,6 +797,65 @@ public static Block get(int id, int meta, Level level, int x, int y, int z, int } // + @PowerNukkitOnly + @Since("1.6.0.0-PN") + @SuppressWarnings("java:S1874") + public static boolean isSolid(int blockId) { + if (blockId < 0 || blockId >= solid.length) { + return true; + } + return solid[blockId]; + } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + public static boolean diffusesSkyLight(int blockId) { + if (blockId < 0 || blockId >= diffusesSkyLight.length) { + return false; + } + return diffusesSkyLight[blockId]; + } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + @SuppressWarnings("java:S1874") + public static double getHardness(int blockId) { + if (blockId < 0 || blockId >= hardness.length) { + return Double.MAX_VALUE; + } + return hardness[blockId]; + } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + @SuppressWarnings("java:S1874") + public static int getLightLevel(int blockId) { + if (blockId < 0 || blockId >= light.length) { + return 0; + } + return light[blockId]; + } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + @SuppressWarnings("java:S1874") + public static int getLightFilter(int blockId) { + if (blockId < 0 || blockId >= lightFilter.length) { + return 15; + } + return lightFilter[blockId]; + } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + @SuppressWarnings("java:S1874") + public static boolean isTransparent(int blockId) { + if (blockId < 0 || blockId >= transparent.length) { + return false; + } + return transparent[blockId]; + } + /** * Register a new block implementation overriding the existing one. * @param blockId The block ID that will be registered. Can't be negative. @@ -899,8 +966,6 @@ public static void registerBlockImplementation(int blockId, @Nonnull Class 1; } @@ -1075,14 +1142,17 @@ public boolean canBePushed() { return true; } + @PowerNukkitOnly public boolean canBePulled() { return true; } + @PowerNukkitOnly public boolean breaksWhenMoved() { return false; } + @PowerNukkitOnly public boolean sticksToPiston() { return true; } @@ -1117,6 +1187,7 @@ public BlockColor getColor() { public abstract int getId(); + @PowerNukkitOnly public int getItemId() { int id = getId(); if (id > 255) { @@ -1131,6 +1202,7 @@ public int getItemId() { * @return full id * @deprecated PowerNukkit: The meta is limited to 32 bits */ + @Override @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.3.0.0-PN") public int getFullId() { @@ -1140,6 +1212,7 @@ public int getFullId() { /** * The properties that fully describe all possible and valid states that this block can have. */ + @Override @Nonnull @PowerNukkitOnly @Since("1.4.0.0-PN") @@ -1147,6 +1220,7 @@ public BlockProperties getProperties() { return CommonBlockProperties.EMPTY_PROPERTIES; } + @Override @PowerNukkitOnly @Since("1.4.0.0-PN") @Nonnull @@ -1154,6 +1228,7 @@ public final BlockState getCurrentState() { return mutableState == null? BlockState.of(getId()) : mutableState.getCurrentState(); } + @Override @PowerNukkitOnly @Since("1.3.0.0-PN") public final int getRuntimeId() { @@ -1268,7 +1343,7 @@ private static int toolType0(Item item, int blockId) { return ItemTool.TYPE_NONE; } - @PowerNukkitDifference(info = "Special condition for the leaves", since = "1.4.0.0-PN") + @PowerNukkitDifference(info = "Special condition for the leaves and cobweb", since = "1.4.0.0-PN") private static boolean correctTool0(int blockToolType, Item item, int blockId) { if((blockId == LEAVES && item.isHoe()) || (blockId == LEAVES2 && item.isHoe())){ @@ -1281,7 +1356,8 @@ private static boolean correctTool0(int blockToolType, Item item, int blockId) { (blockToolType == ItemTool.TYPE_AXE && item.isAxe()) || (blockToolType == ItemTool.TYPE_HOE && item.isHoe()) || (blockToolType == ItemTool.TYPE_SHEARS && item.isShears()) || - blockToolType == ItemTool.TYPE_NONE; + blockToolType == ItemTool.TYPE_NONE || + (blockId == COBWEB && item.isShears()); } //http://minecraft.gamepedia.com/Breaking @@ -1291,7 +1367,7 @@ private static double breakTime0(double blockHardness, boolean correctTool, bool double baseTime = ((correctTool || canHarvestWithHand) ? 1.5 : 5.0) * blockHardness; double speed = 1.0 / baseTime; if (correctTool) speed *= toolBreakTimeBonus0(toolType, toolTier, blockId); - speed += speedBonusByEfficiencyLore0(efficiencyLoreLevel); + speed += correctTool ? speedBonusByEfficiencyLore0(efficiencyLoreLevel) : 0; speed *= speedRateByHasteLore0(hasteEffectLevel); if (insideOfWaterWithoutAquaAffinity) speed *= 0.2; if (outOfWaterButNotOnGround) speed *= 0.2; @@ -1342,7 +1418,7 @@ public double calculateBreakTime(@Nonnull Item item, @Nullable Player player) { .map(Enchantment::getLevel).orElse(0); if (canHarvest && efficiencyLevel > 0) { - speedMultiplier += efficiencyLevel ^ 2 + 1; + speedMultiplier += Math.pow(efficiencyLevel, 2) + 1; } if (hasConduitPower) hasteEffectLevel = Integer.max(hasteEffectLevel, 2); @@ -1463,14 +1539,17 @@ public boolean canBeBrokenWith(Item item) { return this.getHardness() != -1; } + @Override public Block getSide(BlockFace face) { return getSideAtLayer(layer, face); } + @Override public Block getSide(BlockFace face, int step) { return getSideAtLayer(layer, face, step); } + @PowerNukkitOnly public Block getSideAtLayer(int layer, BlockFace face) { if (this.isValid()) { return this.getLevel().getBlock((int) x + face.getXOffset(), (int) y + face.getYOffset(), (int) z + face.getZOffset(), layer); @@ -1478,6 +1557,7 @@ public Block getSideAtLayer(int layer, BlockFace face) { return this.getSide(face, 1); } + @PowerNukkitOnly public Block getSideAtLayer(int layer, BlockFace face, int step) { if (this.isValid()) { if (step == 1) { @@ -1494,74 +1574,92 @@ public Block getSideAtLayer(int layer, BlockFace face, int step) { return block; } + @Override public Block up() { return up(1); } + @Override public Block up(int step) { return getSide(BlockFace.UP, step); } + @PowerNukkitOnly public Block up(int step, int layer) { return getSideAtLayer(layer, BlockFace.UP, step); } + @Override public Block down() { return down(1); } + @Override public Block down(int step) { return getSide(BlockFace.DOWN, step); } + @PowerNukkitOnly public Block down(int step, int layer) { return getSideAtLayer(layer, BlockFace.DOWN, step); } + @Override public Block north() { return north(1); } + @Override public Block north(int step) { return getSide(BlockFace.NORTH, step); } + @PowerNukkitOnly public Block north(int step, int layer) { return getSideAtLayer(layer, BlockFace.NORTH, step); } + @Override public Block south() { return south(1); } + @Override public Block south(int step) { return getSide(BlockFace.SOUTH, step); } + @PowerNukkitOnly public Block south(int step, int layer) { return getSideAtLayer(layer, BlockFace.SOUTH, step); } + @Override public Block east() { return east(1); } + @Override public Block east(int step) { return getSide(BlockFace.EAST, step); } + @PowerNukkitOnly public Block east(int step, int layer) { return getSideAtLayer(layer, BlockFace.EAST, step); } + @Override public Block west() { return west(1); } + @Override public Block west(int step) { return getSide(BlockFace.WEST, step); } + @PowerNukkitOnly public Block west(int step, int layer) { return getSideAtLayer(layer, BlockFace.WEST, step); } @@ -1631,6 +1729,7 @@ protected AxisAlignedBB recalculateCollisionBoundingBox() { return getBoundingBox(); } + @Override public MovingObjectPosition calculateIntercept(Vector3 pos1, Vector3 pos2) { AxisAlignedBB bb = this.getBoundingBox(); if (bb == null) { @@ -1746,6 +1845,7 @@ public void removeMetadata(String metadataKey, Plugin owningPlugin) throws Excep } } + @Override public Block clone() { Block clone = (Block) super.clone(); clone.mutableState = mutableState != null? mutableState.copy() : null; @@ -1893,6 +1993,7 @@ public boolean isLavaResistant() { @Nonnull @Override + @PowerNukkitOnly public final ItemBlock asItemBlock() { return asItemBlock(1); } @@ -1912,11 +2013,13 @@ public boolean mustSilkTouch(Vector3 vector, int layer, BlockFace face, Item ite public boolean mustDrop(Vector3 vector, int layer, BlockFace face, Item item, Player player) { return false; } - + + @PowerNukkitOnly public Optional firstInLayers(Predicate condition) { return firstInLayers(0, condition); } - + + @PowerNukkitOnly public Optional firstInLayers(int startingLayer, Predicate condition) { int maximumLayer = this.level.requireProvider().getMaximumLayer(); for (int layer = startingLayer; layer <= maximumLayer; layer++) { @@ -1939,6 +2042,14 @@ public void setState(@Nonnull IBlockState state) throws InvalidBlockStateExcepti getMutableState().setState(state); } + @Since("1.5.1.0-PN") + @PowerNukkitOnly + @Override + @Nonnull + public Block forState(@Nonnull IBlockState state) throws InvalidBlockStateException { + return (Block) IMutableBlockState.super.forState(state); + } + @PowerNukkitOnly @Since("1.4.0.0-PN") @Override @@ -2155,6 +2266,7 @@ public boolean onProjectileHit(@Nonnull Entity projectile, @Nonnull Position pos return false; } + @PowerNukkitOnly @Nonnull @Override public final Block getBlock() { diff --git a/src/main/java/cn/nukkit/block/BlockAcaciaSignPost.java b/src/main/java/cn/nukkit/block/BlockAcaciaSignPost.java index 55f593084e1..a9c76533ea7 100644 --- a/src/main/java/cn/nukkit/block/BlockAcaciaSignPost.java +++ b/src/main/java/cn/nukkit/block/BlockAcaciaSignPost.java @@ -6,9 +6,11 @@ @PowerNukkitOnly public class BlockAcaciaSignPost extends BlockSignPost { + @PowerNukkitOnly public BlockAcaciaSignPost() { } + @PowerNukkitOnly public BlockAcaciaSignPost(int meta) { super(meta); } @@ -18,6 +20,7 @@ public int getId() { return ACACIA_STANDING_SIGN; } + @PowerNukkitOnly @Override public int getWallId() { return ACACIA_WALL_SIGN; diff --git a/src/main/java/cn/nukkit/block/BlockAcaciaWallSign.java b/src/main/java/cn/nukkit/block/BlockAcaciaWallSign.java index cfdf502b651..ab31156ae2a 100644 --- a/src/main/java/cn/nukkit/block/BlockAcaciaWallSign.java +++ b/src/main/java/cn/nukkit/block/BlockAcaciaWallSign.java @@ -6,10 +6,12 @@ @PowerNukkitOnly public class BlockAcaciaWallSign extends BlockWallSign { + @PowerNukkitOnly public BlockAcaciaWallSign() { this(0); } + @PowerNukkitOnly public BlockAcaciaWallSign(int meta) { super(meta); } @@ -19,6 +21,7 @@ public int getId() { return ACACIA_WALL_SIGN; } + @PowerNukkitOnly @Override protected int getPostId() { return ACACIA_STANDING_SIGN; diff --git a/src/main/java/cn/nukkit/block/BlockAllow.java b/src/main/java/cn/nukkit/block/BlockAllow.java index 8c3926e200f..f4b496dc14f 100644 --- a/src/main/java/cn/nukkit/block/BlockAllow.java +++ b/src/main/java/cn/nukkit/block/BlockAllow.java @@ -51,6 +51,7 @@ public boolean canBePushed() { return false; } + @PowerNukkitOnly @Override public boolean canBePulled() { return false; diff --git a/src/main/java/cn/nukkit/block/BlockAnvil.java b/src/main/java/cn/nukkit/block/BlockAnvil.java index b8364e07352..bf61c42a572 100644 --- a/src/main/java/cn/nukkit/block/BlockAnvil.java +++ b/src/main/java/cn/nukkit/block/BlockAnvil.java @@ -134,6 +134,7 @@ public boolean onActivate(@Nonnull Item item, Player player) { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockBanner.java b/src/main/java/cn/nukkit/block/BlockBanner.java index 668f5c64fd9..9613fd8db2d 100644 --- a/src/main/java/cn/nukkit/block/BlockBanner.java +++ b/src/main/java/cn/nukkit/block/BlockBanner.java @@ -214,6 +214,7 @@ public void setBlockFace(BlockFace face) { } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } diff --git a/src/main/java/cn/nukkit/block/BlockBarrier.java b/src/main/java/cn/nukkit/block/BlockBarrier.java index be261d862e9..a1748180772 100644 --- a/src/main/java/cn/nukkit/block/BlockBarrier.java +++ b/src/main/java/cn/nukkit/block/BlockBarrier.java @@ -8,8 +8,10 @@ * @author Pub4Game * @since 03.01.2016 */ +@PowerNukkitOnly public class BlockBarrier extends BlockSolid { + @PowerNukkitOnly public BlockBarrier() { } diff --git a/src/main/java/cn/nukkit/block/BlockBasalt.java b/src/main/java/cn/nukkit/block/BlockBasalt.java index 33be4a21ea9..50402ebd886 100644 --- a/src/main/java/cn/nukkit/block/BlockBasalt.java +++ b/src/main/java/cn/nukkit/block/BlockBasalt.java @@ -65,6 +65,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockBeacon.java b/src/main/java/cn/nukkit/block/BlockBeacon.java index 7bc9ae6a372..8e596ef6c40 100644 --- a/src/main/java/cn/nukkit/block/BlockBeacon.java +++ b/src/main/java/cn/nukkit/block/BlockBeacon.java @@ -109,7 +109,8 @@ public BlockColor getColor() { } @Override - public boolean canBePulled() { + @PowerNukkitOnly + public boolean canBePulled() { return false; } } diff --git a/src/main/java/cn/nukkit/block/BlockBed.java b/src/main/java/cn/nukkit/block/BlockBed.java index bdc79140dcb..d7dfdb1b750 100644 --- a/src/main/java/cn/nukkit/block/BlockBed.java +++ b/src/main/java/cn/nukkit/block/BlockBed.java @@ -250,7 +250,7 @@ public boolean place(@Nonnull Item item, @Nonnull Block block, @Nonnull Block ta level.setBlock(next, 1, next, true, false); } - BlockBed head = clone(); + BlockBed head = (BlockBed) clone(); head.setHeadPiece(true); level.setBlock(next, head, true, true); @@ -352,22 +352,17 @@ public void setOccupied(boolean occupied) { } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } - @PowerNukkitOnly("In Cloudburst Nukkit, the clone returns Object, which is a different signature!") - @Since("1.4.0.0-PN") - @Override - public BlockBed clone() { - return (BlockBed) super.clone(); - } - @PowerNukkitOnly @Since("1.4.0.0-PN") public boolean isBedValid() { diff --git a/src/main/java/cn/nukkit/block/BlockBedrock.java b/src/main/java/cn/nukkit/block/BlockBedrock.java index d9cd32de276..34a6551dcd8 100644 --- a/src/main/java/cn/nukkit/block/BlockBedrock.java +++ b/src/main/java/cn/nukkit/block/BlockBedrock.java @@ -84,7 +84,8 @@ public boolean canBePushed() { } @Override - public boolean canBePulled() { + @PowerNukkitOnly + public boolean canBePulled() { return false; } diff --git a/src/main/java/cn/nukkit/block/BlockBedrockInvisible.java b/src/main/java/cn/nukkit/block/BlockBedrockInvisible.java index 50405e78991..f37b962a0b2 100644 --- a/src/main/java/cn/nukkit/block/BlockBedrockInvisible.java +++ b/src/main/java/cn/nukkit/block/BlockBedrockInvisible.java @@ -61,7 +61,8 @@ public boolean canBePushed() { } @Override - public boolean canBePulled() { + @PowerNukkitOnly + public boolean canBePulled() { return false; } diff --git a/src/main/java/cn/nukkit/block/BlockBell.java b/src/main/java/cn/nukkit/block/BlockBell.java index cafc16e0f13..66a05ef3b45 100644 --- a/src/main/java/cn/nukkit/block/BlockBell.java +++ b/src/main/java/cn/nukkit/block/BlockBell.java @@ -447,12 +447,14 @@ public void setAttachment(AttachmentType attachmentType) { @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", reason = "Magic values.", replaceWith = "getAttachment()") + @PowerNukkitOnly public int getAttachmentType() { return getAttachment().ordinal(); } @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", reason = "Magic values.", replaceWith = "setAttachment(AttachmentType)") + @PowerNukkitOnly public void setAttachmentType(int attachmentType) { setAttachment(AttachmentType.values()[attachmentType]); } @@ -499,6 +501,7 @@ public double getResistance() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockBirchSignPost.java b/src/main/java/cn/nukkit/block/BlockBirchSignPost.java index 3270188efa9..e101f970cf5 100644 --- a/src/main/java/cn/nukkit/block/BlockBirchSignPost.java +++ b/src/main/java/cn/nukkit/block/BlockBirchSignPost.java @@ -20,6 +20,7 @@ public int getId() { return BIRCH_STANDING_SIGN; } + @PowerNukkitOnly @Override public int getWallId() { return BIRCH_WALL_SIGN; diff --git a/src/main/java/cn/nukkit/block/BlockBirchWallSign.java b/src/main/java/cn/nukkit/block/BlockBirchWallSign.java index cbd144a70f0..6d810eac8f0 100644 --- a/src/main/java/cn/nukkit/block/BlockBirchWallSign.java +++ b/src/main/java/cn/nukkit/block/BlockBirchWallSign.java @@ -21,6 +21,7 @@ public int getId() { return BIRCH_WALL_SIGN; } + @PowerNukkitOnly @Override protected int getPostId() { return BIRCH_STANDING_SIGN; diff --git a/src/main/java/cn/nukkit/block/BlockBlueIce.java b/src/main/java/cn/nukkit/block/BlockBlueIce.java index 115600f16a7..342a678bf2c 100644 --- a/src/main/java/cn/nukkit/block/BlockBlueIce.java +++ b/src/main/java/cn/nukkit/block/BlockBlueIce.java @@ -1,7 +1,11 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; + +@PowerNukkitOnly public class BlockBlueIce extends BlockIcePacked { - + + @PowerNukkitOnly public BlockBlueIce() { } diff --git a/src/main/java/cn/nukkit/block/BlockBorder.java b/src/main/java/cn/nukkit/block/BlockBorder.java index ac755d4a2ce..a268ce1632b 100644 --- a/src/main/java/cn/nukkit/block/BlockBorder.java +++ b/src/main/java/cn/nukkit/block/BlockBorder.java @@ -59,7 +59,8 @@ public boolean canBePushed() { } @Override - public boolean canBePulled() { + @PowerNukkitOnly + public boolean canBePulled() { return false; } diff --git a/src/main/java/cn/nukkit/block/BlockBrewingStand.java b/src/main/java/cn/nukkit/block/BlockBrewingStand.java index 3dc6d9f6dc8..79254b956ff 100644 --- a/src/main/java/cn/nukkit/block/BlockBrewingStand.java +++ b/src/main/java/cn/nukkit/block/BlockBrewingStand.java @@ -162,6 +162,7 @@ public Item toItem() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } @@ -171,6 +172,7 @@ public BlockColor getColor() { return BlockColor.IRON_BLOCK_COLOR; } + @Override public boolean hasComparatorInputOverride() { return true; } diff --git a/src/main/java/cn/nukkit/block/BlockBricks.java b/src/main/java/cn/nukkit/block/BlockBricks.java index 11a856a5451..db22e545384 100644 --- a/src/main/java/cn/nukkit/block/BlockBricks.java +++ b/src/main/java/cn/nukkit/block/BlockBricks.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -37,6 +38,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockBricksEndStone.java b/src/main/java/cn/nukkit/block/BlockBricksEndStone.java index 682201ca0f1..fbbbe5aa6a6 100644 --- a/src/main/java/cn/nukkit/block/BlockBricksEndStone.java +++ b/src/main/java/cn/nukkit/block/BlockBricksEndStone.java @@ -1,6 +1,6 @@ package cn.nukkit.block; -import cn.nukkit.item.Item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -25,6 +25,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockBricksNether.java b/src/main/java/cn/nukkit/block/BlockBricksNether.java index 6e13500a525..cd3a6523f86 100644 --- a/src/main/java/cn/nukkit/block/BlockBricksNether.java +++ b/src/main/java/cn/nukkit/block/BlockBricksNether.java @@ -1,7 +1,7 @@ package cn.nukkit.block; import cn.nukkit.api.PowerNukkitDifference; -import cn.nukkit.item.Item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -30,6 +30,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockBricksRedNether.java b/src/main/java/cn/nukkit/block/BlockBricksRedNether.java index 280aef46beb..cded4e46cce 100644 --- a/src/main/java/cn/nukkit/block/BlockBricksRedNether.java +++ b/src/main/java/cn/nukkit/block/BlockBricksRedNether.java @@ -1,12 +1,14 @@ package cn.nukkit.block; -import cn.nukkit.item.Item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@SuppressWarnings("deprecation") public class BlockBricksRedNether extends BlockNetherBrick { public BlockBricksRedNether() { + // Does nothing } @Override @@ -25,6 +27,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockBricksStone.java b/src/main/java/cn/nukkit/block/BlockBricksStone.java index 03461a40b9d..3e6350dd184 100644 --- a/src/main/java/cn/nukkit/block/BlockBricksStone.java +++ b/src/main/java/cn/nukkit/block/BlockBricksStone.java @@ -105,6 +105,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockButtonAcacia.java b/src/main/java/cn/nukkit/block/BlockButtonAcacia.java index 252974e5b4c..d6da3914d58 100644 --- a/src/main/java/cn/nukkit/block/BlockButtonAcacia.java +++ b/src/main/java/cn/nukkit/block/BlockButtonAcacia.java @@ -1,10 +1,15 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; + +@PowerNukkitOnly public class BlockButtonAcacia extends BlockButtonWooden { + @PowerNukkitOnly public BlockButtonAcacia() { this(0); } - + + @PowerNukkitOnly public BlockButtonAcacia(int meta) { super(meta); } diff --git a/src/main/java/cn/nukkit/block/BlockButtonBirch.java b/src/main/java/cn/nukkit/block/BlockButtonBirch.java index cda1cfba208..5210b187b39 100644 --- a/src/main/java/cn/nukkit/block/BlockButtonBirch.java +++ b/src/main/java/cn/nukkit/block/BlockButtonBirch.java @@ -1,10 +1,15 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; + +@PowerNukkitOnly public class BlockButtonBirch extends BlockButtonWooden { + @PowerNukkitOnly public BlockButtonBirch() { this(0); } - + + @PowerNukkitOnly public BlockButtonBirch(int meta) { super(meta); } diff --git a/src/main/java/cn/nukkit/block/BlockButtonDarkOak.java b/src/main/java/cn/nukkit/block/BlockButtonDarkOak.java index e642f45d1ab..92f6e45df73 100644 --- a/src/main/java/cn/nukkit/block/BlockButtonDarkOak.java +++ b/src/main/java/cn/nukkit/block/BlockButtonDarkOak.java @@ -1,10 +1,15 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; + +@PowerNukkitOnly public class BlockButtonDarkOak extends BlockButtonWooden { + @PowerNukkitOnly public BlockButtonDarkOak() { this(0); } - + + @PowerNukkitOnly public BlockButtonDarkOak(int meta) { super(meta); } diff --git a/src/main/java/cn/nukkit/block/BlockButtonJungle.java b/src/main/java/cn/nukkit/block/BlockButtonJungle.java index e383fd5bf2b..dab2abef2d8 100644 --- a/src/main/java/cn/nukkit/block/BlockButtonJungle.java +++ b/src/main/java/cn/nukkit/block/BlockButtonJungle.java @@ -1,10 +1,15 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; + +@PowerNukkitOnly public class BlockButtonJungle extends BlockButtonWooden { + @PowerNukkitOnly public BlockButtonJungle() { this(0); } - + + @PowerNukkitOnly public BlockButtonJungle(int meta) { super(meta); } diff --git a/src/main/java/cn/nukkit/block/BlockButtonSpruce.java b/src/main/java/cn/nukkit/block/BlockButtonSpruce.java index 81469b6ab93..63a0171d413 100644 --- a/src/main/java/cn/nukkit/block/BlockButtonSpruce.java +++ b/src/main/java/cn/nukkit/block/BlockButtonSpruce.java @@ -1,10 +1,15 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; + +@PowerNukkitOnly public class BlockButtonSpruce extends BlockButtonWooden { + @PowerNukkitOnly public BlockButtonSpruce() { this(0); } - + + @PowerNukkitOnly public BlockButtonSpruce(int meta) { super(meta); } diff --git a/src/main/java/cn/nukkit/block/BlockButtonStone.java b/src/main/java/cn/nukkit/block/BlockButtonStone.java index 6ebdf9df458..848a5404645 100644 --- a/src/main/java/cn/nukkit/block/BlockButtonStone.java +++ b/src/main/java/cn/nukkit/block/BlockButtonStone.java @@ -1,6 +1,7 @@ package cn.nukkit.block; import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import cn.nukkit.item.ItemTool; @@ -34,6 +35,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockCactus.java b/src/main/java/cn/nukkit/block/BlockCactus.java index 10342ddd827..60ec57e5e9d 100644 --- a/src/main/java/cn/nukkit/block/BlockCactus.java +++ b/src/main/java/cn/nukkit/block/BlockCactus.java @@ -185,12 +185,14 @@ public Item[] getDrops(Item item) { } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } } diff --git a/src/main/java/cn/nukkit/block/BlockCake.java b/src/main/java/cn/nukkit/block/BlockCake.java index 858153bd5ad..5e1e55d386b 100644 --- a/src/main/java/cn/nukkit/block/BlockCake.java +++ b/src/main/java/cn/nukkit/block/BlockCake.java @@ -158,21 +158,25 @@ public BlockColor getColor() { return BlockColor.AIR_BLOCK_COLOR; } + @Override public int getComparatorInputOverride() { return (7 - this.getDamage()) * 2; } + @Override public boolean hasComparatorInputOverride() { return true; } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } } diff --git a/src/main/java/cn/nukkit/block/BlockCampfire.java b/src/main/java/cn/nukkit/block/BlockCampfire.java index eb9e7526982..3827fa0b155 100644 --- a/src/main/java/cn/nukkit/block/BlockCampfire.java +++ b/src/main/java/cn/nukkit/block/BlockCampfire.java @@ -1,6 +1,7 @@ package cn.nukkit.block; import cn.nukkit.Player; +import cn.nukkit.Server; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.blockentity.BlockEntity; @@ -8,13 +9,17 @@ import cn.nukkit.blockproperty.BlockProperties; import cn.nukkit.blockproperty.BooleanBlockProperty; import cn.nukkit.entity.Entity; +import cn.nukkit.entity.item.EntityPotion; import cn.nukkit.entity.projectile.EntityArrow; +import cn.nukkit.entity.projectile.EntityProjectile; +import cn.nukkit.event.entity.EntityCombustByBlockEvent; import cn.nukkit.event.entity.EntityDamageByBlockEvent; import cn.nukkit.event.entity.EntityDamageEvent; import cn.nukkit.inventory.CampfireInventory; import cn.nukkit.inventory.CampfireRecipe; import cn.nukkit.inventory.ContainerInventory; import cn.nukkit.item.*; +import cn.nukkit.item.enchantment.Enchantment; import cn.nukkit.level.Level; import cn.nukkit.level.Position; import cn.nukkit.level.Sound; @@ -24,6 +29,7 @@ import cn.nukkit.math.Vector3; import cn.nukkit.nbt.tag.CompoundTag; import cn.nukkit.nbt.tag.Tag; +import cn.nukkit.potion.Effect; import cn.nukkit.utils.BlockColor; import cn.nukkit.utils.Faceable; import lombok.extern.log4j.Log4j2; @@ -31,7 +37,6 @@ import javax.annotation.Nonnull; import javax.annotation.Nullable; import java.util.Map; -import java.util.concurrent.ThreadLocalRandom; import static cn.nukkit.blockproperty.CommonBlockProperties.DIRECTION; @@ -112,7 +117,7 @@ public boolean canHarvestWithHand() { @Override public Item[] getDrops(Item item) { - return new Item[] { new ItemCoal(0, 1 + ThreadLocalRandom.current().nextInt(1)) }; + return new Item[] { MinecraftItemID.CHARCOAL.get(2) }; } @Override @@ -170,10 +175,33 @@ public boolean hasEntityCollision() { @Override public void onEntityCollide(Entity entity) { - if (!isExtinguished() && !entity.isSneaking()) { - entity.attack(new EntityDamageByBlockEvent(this, entity, EntityDamageEvent.DamageCause.FIRE, 1)); + if (isExtinguished()) { + if (entity.isOnFire()) { + setExtinguished(false); + level.setBlock(this, this, true); + } + return; + } + + if(entity.hasEffect(Effect.FIRE_RESISTANCE) + || entity instanceof EntityProjectile + || !entity.attack(getDamageEvent(entity)) + || !entity.isAlive()) { + return; + } + + EntityCombustByBlockEvent ev = new EntityCombustByBlockEvent(this, entity, 8); + Server.getInstance().getPluginManager().callEvent(ev); + if (!ev.isCancelled() && entity.isAlive()) { + entity.setOnFire(ev.getDuration()); } } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + protected EntityDamageEvent getDamageEvent(Entity entity) { + return new EntityDamageByBlockEvent(this, entity, EntityDamageEvent.DamageCause.FIRE, 1); + } @Override public boolean canBeActivated() { @@ -205,12 +233,14 @@ public boolean onActivate(@Nonnull Item item, @Nullable Player player) { BlockEntityCampfire campfire = getOrCreateBlockEntity(); boolean itemUsed = false; - if (item.isShovel() && !isExtinguished()) { - setExtinguished(true); - this.level.setBlock(this, this, true, true); - this.level.addSound(this, Sound.RANDOM_FIZZ, 0.5f, 2.2f); - itemUsed = true; - } else if (item.getId() == ItemID.FLINT_AND_STEEL) { + if (!isExtinguished()) { + if (item.isShovel()) { + setExtinguished(true); + this.level.setBlock(this, this, true, true); + this.level.addSound(this, Sound.RANDOM_FIZZ, 0.5f, 2.2f); + itemUsed = true; + } + } else if (item.getId() == ItemID.FLINT_AND_STEEL || item.getEnchantment(Enchantment.ID_FIRE_ASPECT) != null) { item.useOn(this); setExtinguished(false); this.level.setBlock(this, this, true, true); @@ -242,6 +272,11 @@ public boolean onProjectileHit(@Nonnull Entity projectile, @Nonnull Position pos setExtinguished(false); level.setBlock(this, this, true); return true; + } else if (projectile instanceof EntityPotion && !isExtinguished() + && ((EntityPotion) projectile).potionId == 0) { + setExtinguished(true); + level.setBlock(this, this, true); + return true; } return false; } @@ -267,10 +302,12 @@ public BlockColor getColor() { return BlockColor.SPRUCE_BLOCK_COLOR; } + @PowerNukkitOnly public boolean isExtinguished() { return getBooleanValue(EXTINGUISHED); } + @PowerNukkitOnly public void setExtinguished(boolean extinguished) { setBooleanValue(EXTINGUISHED, extinguished); } @@ -314,17 +351,19 @@ public int getComparatorInputOverride() { } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } @Override - public boolean canBePulled() { + @PowerNukkitOnly + public boolean canBePulled() { return false; } @Override public boolean canBePushed() { - return false; + return true; } } diff --git a/src/main/java/cn/nukkit/block/BlockCampfireSoul.java b/src/main/java/cn/nukkit/block/BlockCampfireSoul.java index da682cc21e0..e5cceb42e6b 100644 --- a/src/main/java/cn/nukkit/block/BlockCampfireSoul.java +++ b/src/main/java/cn/nukkit/block/BlockCampfireSoul.java @@ -2,8 +2,12 @@ import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; +import cn.nukkit.entity.Entity; +import cn.nukkit.event.entity.EntityDamageByBlockEvent; +import cn.nukkit.event.entity.EntityDamageEvent; import cn.nukkit.item.Item; import cn.nukkit.item.ItemID; +import cn.nukkit.item.MinecraftItemID; @PowerNukkitOnly @Since("1.4.0.0-PN") @@ -39,4 +43,16 @@ public int getLightLevel() { public Item toItem() { return Item.get(ItemID.SOUL_CAMPFIRE); } + + @Override + public Item[] getDrops(Item item) { + return new Item[] { MinecraftItemID.SOUL_SOIL.get(1) }; + } + + @Since("1.5.1.0-PN") + @PowerNukkitOnly + @Override + protected EntityDamageEvent getDamageEvent(Entity entity) { + return new EntityDamageByBlockEvent(this, entity, EntityDamageEvent.DamageCause.FIRE, 2); + } } diff --git a/src/main/java/cn/nukkit/block/BlockCarpet.java b/src/main/java/cn/nukkit/block/BlockCarpet.java index 4472d4e602e..467d7d7b6e2 100644 --- a/src/main/java/cn/nukkit/block/BlockCarpet.java +++ b/src/main/java/cn/nukkit/block/BlockCarpet.java @@ -42,6 +42,7 @@ public int getId() { @Nonnull @Override + @PowerNukkitOnly public BlockProperties getProperties() { return PROPERTIES; } diff --git a/src/main/java/cn/nukkit/block/BlockCartographyTable.java b/src/main/java/cn/nukkit/block/BlockCartographyTable.java index 2acf78110ed..2c2140fcb8c 100644 --- a/src/main/java/cn/nukkit/block/BlockCartographyTable.java +++ b/src/main/java/cn/nukkit/block/BlockCartographyTable.java @@ -1,6 +1,7 @@ package cn.nukkit.block; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -8,8 +9,10 @@ import javax.annotation.Nonnull; import javax.annotation.Nullable; +@PowerNukkitOnly public class BlockCartographyTable extends BlockSolid { + @PowerNukkitOnly public BlockCartographyTable() { } diff --git a/src/main/java/cn/nukkit/block/BlockCarvedPumpkin.java b/src/main/java/cn/nukkit/block/BlockCarvedPumpkin.java index b7a25ed2963..9bc28eb0223 100644 --- a/src/main/java/cn/nukkit/block/BlockCarvedPumpkin.java +++ b/src/main/java/cn/nukkit/block/BlockCarvedPumpkin.java @@ -1,12 +1,19 @@ package cn.nukkit.block; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import javax.annotation.Nonnull; +@PowerNukkitOnly public class BlockCarvedPumpkin extends BlockPumpkin { + @PowerNukkitOnly + public BlockCarvedPumpkin() { + super(); + } + @Override public int getId() { return CARVED_PUMPKIN; diff --git a/src/main/java/cn/nukkit/block/BlockCauldron.java b/src/main/java/cn/nukkit/block/BlockCauldron.java index 88ef1e1e983..09f1f222f19 100644 --- a/src/main/java/cn/nukkit/block/BlockCauldron.java +++ b/src/main/java/cn/nukkit/block/BlockCauldron.java @@ -79,6 +79,7 @@ public Class getBlockEntityClass() { return BlockEntityCauldron.class; } + @Override public String getName() { return "Cauldron Block"; } @@ -110,11 +111,13 @@ public boolean isFull() { public boolean isEmpty() { return getFillLevel() == FILL_LEVEL.getMinValue(); } - + + @PowerNukkitOnly public int getFillLevel() { return getIntValue(FILL_LEVEL); } - + + @PowerNukkitOnly public void setFillLevel(int fillLevel) { setIntValue(FILL_LEVEL, fillLevel); } @@ -453,6 +456,7 @@ public boolean place(@Nonnull Item item, @Nonnull Block block, @Nonnull Block ta } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockCauldronLava.java b/src/main/java/cn/nukkit/block/BlockCauldronLava.java index 99391d540fe..80b6c56b28d 100644 --- a/src/main/java/cn/nukkit/block/BlockCauldronLava.java +++ b/src/main/java/cn/nukkit/block/BlockCauldronLava.java @@ -56,7 +56,8 @@ public boolean hasEntityCollision() { protected AxisAlignedBB recalculateCollisionBoundingBox() { return shrink(0.3, 0.3, 0.3); } - + + @PowerNukkitOnly @Override public void setFillLevel(int fillLevel) { super.setFillLevel(fillLevel); diff --git a/src/main/java/cn/nukkit/block/BlockChorusFlower.java b/src/main/java/cn/nukkit/block/BlockChorusFlower.java index 3ed2155ebec..6eacf1e2ae0 100644 --- a/src/main/java/cn/nukkit/block/BlockChorusFlower.java +++ b/src/main/java/cn/nukkit/block/BlockChorusFlower.java @@ -117,12 +117,14 @@ public Item[] getDrops(Item item) { } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } } diff --git a/src/main/java/cn/nukkit/block/BlockChorusPlant.java b/src/main/java/cn/nukkit/block/BlockChorusPlant.java index daaba2d4291..05d8be61178 100644 --- a/src/main/java/cn/nukkit/block/BlockChorusPlant.java +++ b/src/main/java/cn/nukkit/block/BlockChorusPlant.java @@ -1,6 +1,7 @@ package cn.nukkit.block; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import cn.nukkit.item.ItemID; import cn.nukkit.item.ItemTool; @@ -102,12 +103,14 @@ public Item[] getDrops(Item item) { } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } diff --git a/src/main/java/cn/nukkit/block/BlockCoal.java b/src/main/java/cn/nukkit/block/BlockCoal.java index c4989ccd4d1..0797c1a07e3 100644 --- a/src/main/java/cn/nukkit/block/BlockCoal.java +++ b/src/main/java/cn/nukkit/block/BlockCoal.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -47,6 +48,7 @@ public String getName() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockCobblestone.java b/src/main/java/cn/nukkit/block/BlockCobblestone.java index b411df4faf1..099367ce9b3 100644 --- a/src/main/java/cn/nukkit/block/BlockCobblestone.java +++ b/src/main/java/cn/nukkit/block/BlockCobblestone.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; /** @@ -36,6 +37,7 @@ public String getName() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockCobweb.java b/src/main/java/cn/nukkit/block/BlockCobweb.java index 0436a0ec2d4..30d9bfade2e 100644 --- a/src/main/java/cn/nukkit/block/BlockCobweb.java +++ b/src/main/java/cn/nukkit/block/BlockCobweb.java @@ -94,6 +94,7 @@ public boolean canHarvestWithHand() { return false; } + @PowerNukkitOnly @Override public boolean diffusesSkyLight() { return true; diff --git a/src/main/java/cn/nukkit/block/BlockCocoa.java b/src/main/java/cn/nukkit/block/BlockCocoa.java index 9b8f83c316d..3d42f98a13f 100644 --- a/src/main/java/cn/nukkit/block/BlockCocoa.java +++ b/src/main/java/cn/nukkit/block/BlockCocoa.java @@ -207,10 +207,12 @@ public boolean onActivate(@Nonnull Item item, Player player) { return false; } + @PowerNukkitOnly public int getGrowthStage() { return this.getDamage() / 4; } + @PowerNukkitOnly public boolean grow() { Block block = this.clone(); block.setDamage(block.getDamage() + 4); @@ -263,12 +265,14 @@ public BlockFace getBlockFace() { } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } } diff --git a/src/main/java/cn/nukkit/block/BlockConcrete.java b/src/main/java/cn/nukkit/block/BlockConcrete.java index 8e96e3935d9..b2df682773f 100644 --- a/src/main/java/cn/nukkit/block/BlockConcrete.java +++ b/src/main/java/cn/nukkit/block/BlockConcrete.java @@ -53,7 +53,7 @@ public double getHardness() { @Override public String getName() { - return "Concrete"; + return getDyeColor().getName() + " Concrete"; } @Override @@ -62,16 +62,17 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } @Override public BlockColor getColor() { - return DyeColor.getByWoolData(getDamage()).getColor(); + return getDyeColor().getColor(); } public DyeColor getDyeColor() { - return DyeColor.getByWoolData(getDamage()); + return getPropertyValue(CommonBlockProperties.COLOR); } } diff --git a/src/main/java/cn/nukkit/block/BlockConcretePowder.java b/src/main/java/cn/nukkit/block/BlockConcretePowder.java index 6b364cca0d9..d2810463139 100644 --- a/src/main/java/cn/nukkit/block/BlockConcretePowder.java +++ b/src/main/java/cn/nukkit/block/BlockConcretePowder.java @@ -10,6 +10,8 @@ import cn.nukkit.item.ItemTool; import cn.nukkit.level.Level; import cn.nukkit.math.BlockFace; +import cn.nukkit.utils.BlockColor; +import cn.nukkit.utils.DyeColor; import javax.annotation.Nonnull; @@ -46,7 +48,7 @@ public BlockProperties getProperties() { @Override public String getName() { - return "Concrete Powder"; + return getDyeColor().getName() + " Concrete Powder"; } @Override @@ -101,4 +103,14 @@ public boolean place(@Nonnull Item item, @Nonnull Block b, @Nonnull Block target return true; } + + @Override + public BlockColor getColor() { + return getDyeColor().getColor(); + } + + @PowerNukkitOnly + public DyeColor getDyeColor() { + return getPropertyValue(CommonBlockProperties.COLOR); + } } diff --git a/src/main/java/cn/nukkit/block/BlockCoralFanDead.java b/src/main/java/cn/nukkit/block/BlockCoralFanDead.java index 0dbfb92ab02..d50aebacddf 100644 --- a/src/main/java/cn/nukkit/block/BlockCoralFanDead.java +++ b/src/main/java/cn/nukkit/block/BlockCoralFanDead.java @@ -30,7 +30,8 @@ public String getName() { public BlockColor getColor() { return BlockColor.GRAY_BLOCK_COLOR; } - + + @PowerNukkitOnly @Override public boolean isDead() { return true; diff --git a/src/main/java/cn/nukkit/block/BlockCoralFanHang.java b/src/main/java/cn/nukkit/block/BlockCoralFanHang.java index 3d2330d258b..015347d630c 100644 --- a/src/main/java/cn/nukkit/block/BlockCoralFanHang.java +++ b/src/main/java/cn/nukkit/block/BlockCoralFanHang.java @@ -66,7 +66,8 @@ public String getName() { return name + " Wall Fan"; } } - + + @PowerNukkitOnly @Override public boolean isDead() { return (getDamage() & 0b10) == 0b10; @@ -80,7 +81,8 @@ public int onUpdate(int type) { return super.onUpdate(type); } } - + + @PowerNukkitOnly @Override public int getType() { if ((getDamage() & 0b1) == 0) { @@ -105,7 +107,8 @@ public BlockFace getBlockFace() { return BlockFace.SOUTH; } } - + + @PowerNukkitOnly @Override public BlockFace getRootsFace() { return getBlockFace().getOpposite(); diff --git a/src/main/java/cn/nukkit/block/BlockCoralFanHang2.java b/src/main/java/cn/nukkit/block/BlockCoralFanHang2.java index 317161ef2da..70679b0a397 100644 --- a/src/main/java/cn/nukkit/block/BlockCoralFanHang2.java +++ b/src/main/java/cn/nukkit/block/BlockCoralFanHang2.java @@ -45,6 +45,7 @@ public BlockProperties getProperties() { return PROPERTIES; } + @PowerNukkitOnly @Override public int getType() { if ((getDamage() & 0b1) == 0) { diff --git a/src/main/java/cn/nukkit/block/BlockCoralFanHang3.java b/src/main/java/cn/nukkit/block/BlockCoralFanHang3.java index 479ae084208..a41fd2a4573 100644 --- a/src/main/java/cn/nukkit/block/BlockCoralFanHang3.java +++ b/src/main/java/cn/nukkit/block/BlockCoralFanHang3.java @@ -45,6 +45,7 @@ public BlockProperties getProperties() { return PROPERTIES; } + @PowerNukkitOnly @Override public int getType() { return BlockCoral.TYPE_HORN; diff --git a/src/main/java/cn/nukkit/block/BlockCrimsonSignPost.java b/src/main/java/cn/nukkit/block/BlockCrimsonSignPost.java index 0e545bec9f8..1a4980c1aae 100644 --- a/src/main/java/cn/nukkit/block/BlockCrimsonSignPost.java +++ b/src/main/java/cn/nukkit/block/BlockCrimsonSignPost.java @@ -25,6 +25,7 @@ public int getId() { return CRIMSON_STANDING_SIGN; } + @PowerNukkitOnly @Override public int getWallId() { return CRIMSON_WALL_SIGN; diff --git a/src/main/java/cn/nukkit/block/BlockCrimsonWallSign.java b/src/main/java/cn/nukkit/block/BlockCrimsonWallSign.java index 11b249d76b0..77863d4f149 100644 --- a/src/main/java/cn/nukkit/block/BlockCrimsonWallSign.java +++ b/src/main/java/cn/nukkit/block/BlockCrimsonWallSign.java @@ -25,6 +25,7 @@ public int getId() { return CRIMSON_WALL_SIGN; } + @PowerNukkitOnly @Override protected int getPostId() { return CRIMSON_STANDING_SIGN; diff --git a/src/main/java/cn/nukkit/block/BlockCrops.java b/src/main/java/cn/nukkit/block/BlockCrops.java index c82fc24a9a2..22f35ce8f44 100644 --- a/src/main/java/cn/nukkit/block/BlockCrops.java +++ b/src/main/java/cn/nukkit/block/BlockCrops.java @@ -8,12 +8,10 @@ import cn.nukkit.blockproperty.IntBlockProperty; import cn.nukkit.event.block.BlockGrowEvent; import cn.nukkit.item.Item; -import cn.nukkit.item.ItemID; import cn.nukkit.level.Level; import cn.nukkit.level.particle.BoneMealParticle; import cn.nukkit.math.BlockFace; import cn.nukkit.utils.BlockColor; -import cn.nukkit.utils.DyeColor; import javax.annotation.Nonnull; import java.util.concurrent.ThreadLocalRandom; diff --git a/src/main/java/cn/nukkit/block/BlockDarkOakSignPost.java b/src/main/java/cn/nukkit/block/BlockDarkOakSignPost.java index 4769a702844..46aaa962731 100644 --- a/src/main/java/cn/nukkit/block/BlockDarkOakSignPost.java +++ b/src/main/java/cn/nukkit/block/BlockDarkOakSignPost.java @@ -20,6 +20,7 @@ public int getId() { return DARKOAK_STANDING_SIGN; } + @PowerNukkitOnly @Override public int getWallId() { return DARKOAK_WALL_SIGN; diff --git a/src/main/java/cn/nukkit/block/BlockDarkOakWallSign.java b/src/main/java/cn/nukkit/block/BlockDarkOakWallSign.java index 444a361d6a2..52488c080fd 100644 --- a/src/main/java/cn/nukkit/block/BlockDarkOakWallSign.java +++ b/src/main/java/cn/nukkit/block/BlockDarkOakWallSign.java @@ -21,6 +21,7 @@ public int getId() { return DARKOAK_WALL_SIGN; } + @PowerNukkitOnly @Override protected int getPostId() { return DARKOAK_STANDING_SIGN; diff --git a/src/main/java/cn/nukkit/block/BlockDaylightDetector.java b/src/main/java/cn/nukkit/block/BlockDaylightDetector.java index 5692b9532ab..e800b852a3b 100644 --- a/src/main/java/cn/nukkit/block/BlockDaylightDetector.java +++ b/src/main/java/cn/nukkit/block/BlockDaylightDetector.java @@ -141,10 +141,12 @@ public boolean isPowerSource() { return true; } + @PowerNukkitOnly public boolean isInverted() { return false; } + @PowerNukkitOnly public void updatePower() { int i; if (getLevel().getDimension() == Level.DIMENSION_OVERWORLD) { diff --git a/src/main/java/cn/nukkit/block/BlockDaylightDetectorInverted.java b/src/main/java/cn/nukkit/block/BlockDaylightDetectorInverted.java index bd9368bc7c5..78936346a8e 100644 --- a/src/main/java/cn/nukkit/block/BlockDaylightDetectorInverted.java +++ b/src/main/java/cn/nukkit/block/BlockDaylightDetectorInverted.java @@ -2,6 +2,7 @@ import cn.nukkit.Player; import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import cn.nukkit.item.ItemBlock; @@ -39,6 +40,7 @@ public boolean onActivate(@Nonnull Item item, Player player) { return true; } + @PowerNukkitOnly @Override public boolean isInverted() { return true; diff --git a/src/main/java/cn/nukkit/block/BlockDeadBush.java b/src/main/java/cn/nukkit/block/BlockDeadBush.java index 3e07a154688..d11e27d6142 100644 --- a/src/main/java/cn/nukkit/block/BlockDeadBush.java +++ b/src/main/java/cn/nukkit/block/BlockDeadBush.java @@ -107,6 +107,7 @@ public Item[] getDrops(Item item) { } } + @Override public BlockColor getColor() { return BlockColor.FOLIAGE_BLOCK_COLOR; } diff --git a/src/main/java/cn/nukkit/block/BlockDeny.java b/src/main/java/cn/nukkit/block/BlockDeny.java index d608bb0e412..d84f66f4756 100644 --- a/src/main/java/cn/nukkit/block/BlockDeny.java +++ b/src/main/java/cn/nukkit/block/BlockDeny.java @@ -52,7 +52,8 @@ public boolean canBePushed() { } @Override - public boolean canBePulled() { + @PowerNukkitOnly + public boolean canBePulled() { return false; } diff --git a/src/main/java/cn/nukkit/block/BlockDiamond.java b/src/main/java/cn/nukkit/block/BlockDiamond.java index cf1b0c1c3b0..9bae95f151b 100644 --- a/src/main/java/cn/nukkit/block/BlockDiamond.java +++ b/src/main/java/cn/nukkit/block/BlockDiamond.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -37,6 +38,7 @@ public String getName() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_IRON; } diff --git a/src/main/java/cn/nukkit/block/BlockDispenser.java b/src/main/java/cn/nukkit/block/BlockDispenser.java index ecff477da9c..79fcafc0a87 100644 --- a/src/main/java/cn/nukkit/block/BlockDispenser.java +++ b/src/main/java/cn/nukkit/block/BlockDispenser.java @@ -227,7 +227,7 @@ public int onUpdate(int type) { return 0; } - @PowerNukkitDifference(info = "Trigger observer on dispense fail (with #setDirty()).", since = "1.4.0.0-PN") + @PowerNukkitOnly public void dispense() { InventoryHolder blockEntity = getBlockEntity(); @@ -296,6 +296,7 @@ public void dispense() { } } + @PowerNukkitOnly protected DispenseBehavior getDispenseBehavior(Item item) { return DispenseBehaviorRegister.getBehavior(item.getId()); } @@ -311,6 +312,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockDoor.java b/src/main/java/cn/nukkit/block/BlockDoor.java index e1f585c1985..30f123e7f1e 100644 --- a/src/main/java/cn/nukkit/block/BlockDoor.java +++ b/src/main/java/cn/nukkit/block/BlockDoor.java @@ -56,6 +56,7 @@ public abstract class BlockDoor extends BlockTransparentMeta implements Redstone BlockFace.WEST, BlockFace.NORTH }).ordinal(true); + @PowerNukkitOnly protected static final BlockProperties PROPERTIES = new BlockProperties(DOOR_DIRECTION, OPEN, UPPER_BLOCK, DOOR_HINGE); @Deprecated @DeprecationDetails(reason = "Use the accessors or properties instead", since = "1.4.0.0-PN", replaceWith = "CommonBlockProperties.OPEN") @@ -452,12 +453,14 @@ public void setBlockFace(BlockFace face) { } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } } diff --git a/src/main/java/cn/nukkit/block/BlockDoorIron.java b/src/main/java/cn/nukkit/block/BlockDoorIron.java index 34251050bd0..1f1a9b5d6f8 100644 --- a/src/main/java/cn/nukkit/block/BlockDoorIron.java +++ b/src/main/java/cn/nukkit/block/BlockDoorIron.java @@ -1,6 +1,7 @@ package cn.nukkit.block; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import cn.nukkit.item.ItemDoorIron; import cn.nukkit.item.ItemTool; @@ -52,6 +53,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockDoubleSlabBase.java b/src/main/java/cn/nukkit/block/BlockDoubleSlabBase.java index 47bdb0f0a06..d27cf026cfd 100644 --- a/src/main/java/cn/nukkit/block/BlockDoubleSlabBase.java +++ b/src/main/java/cn/nukkit/block/BlockDoubleSlabBase.java @@ -32,7 +32,7 @@ public BlockProperties getProperties() { @PowerNukkitOnly @Since("1.4.0.0-PN") public abstract String getSlabName(); - + @PowerNukkitOnly @Since("1.4.0.0-PN") public abstract int getSingleSlabId(); diff --git a/src/main/java/cn/nukkit/block/BlockDoubleSlabBlackstone.java b/src/main/java/cn/nukkit/block/BlockDoubleSlabBlackstone.java index 836ccdb18b0..e906c1a8d91 100644 --- a/src/main/java/cn/nukkit/block/BlockDoubleSlabBlackstone.java +++ b/src/main/java/cn/nukkit/block/BlockDoubleSlabBlackstone.java @@ -23,6 +23,7 @@ protected BlockDoubleSlabBlackstone(int meta) { super(meta); } + @PowerNukkitOnly @Override public String getSlabName() { return "Double Blackstone Slab"; @@ -56,6 +57,7 @@ public int getToolType() { return ItemTool.TYPE_PICKAXE; } + @PowerNukkitOnly @Override public int getSingleSlabId() { return BLACKSTONE_SLAB; diff --git a/src/main/java/cn/nukkit/block/BlockDoubleSlabBlackstonePolished.java b/src/main/java/cn/nukkit/block/BlockDoubleSlabBlackstonePolished.java index 750198fcaa8..d4b90127a00 100644 --- a/src/main/java/cn/nukkit/block/BlockDoubleSlabBlackstonePolished.java +++ b/src/main/java/cn/nukkit/block/BlockDoubleSlabBlackstonePolished.java @@ -25,11 +25,13 @@ public int getId() { return POLISHED_BLACKSTONE_DOUBLE_SLAB; } + @PowerNukkitOnly @Override public int getSingleSlabId() { return POLISHED_BLACKSTONE_SLAB; } + @PowerNukkitOnly @Override public String getSlabName() { return "Polished Blackstone"; diff --git a/src/main/java/cn/nukkit/block/BlockDoubleSlabBrickBlackstonePolished.java b/src/main/java/cn/nukkit/block/BlockDoubleSlabBrickBlackstonePolished.java index ec24afa1fe3..29d2e43a11d 100644 --- a/src/main/java/cn/nukkit/block/BlockDoubleSlabBrickBlackstonePolished.java +++ b/src/main/java/cn/nukkit/block/BlockDoubleSlabBrickBlackstonePolished.java @@ -22,11 +22,13 @@ public int getId() { return POLISHED_BLACKSTONE_BRICK_DOUBLE_SLAB; } + @PowerNukkitOnly @Override public int getSingleSlabId() { return POLISHED_BLACKSTONE_BRICK_SLAB; } + @PowerNukkitOnly @Override public String getSlabName() { return "Polished Blackstone Brick"; diff --git a/src/main/java/cn/nukkit/block/BlockDoubleSlabCrimson.java b/src/main/java/cn/nukkit/block/BlockDoubleSlabCrimson.java index b0de9d0f8a9..81b11f66030 100644 --- a/src/main/java/cn/nukkit/block/BlockDoubleSlabCrimson.java +++ b/src/main/java/cn/nukkit/block/BlockDoubleSlabCrimson.java @@ -32,17 +32,20 @@ public BlockProperties getProperties() { return BlockSlab.SIMPLE_SLAB_PROPERTIES; } + @PowerNukkitOnly @Override public String getSlabName() { return "Crimson"; } + @PowerNukkitOnly @Override public int getSingleSlabId() { return CRIMSON_SLAB; } //TODO Adjust or remove this when merging https://github.com/PowerNukkit/PowerNukkit/pull/370 + @PowerNukkitOnly @Override protected boolean isCorrectTool(Item item) { return true; diff --git a/src/main/java/cn/nukkit/block/BlockDoubleSlabRedSandstone.java b/src/main/java/cn/nukkit/block/BlockDoubleSlabRedSandstone.java index 80b9c5176c1..a2183b252d7 100644 --- a/src/main/java/cn/nukkit/block/BlockDoubleSlabRedSandstone.java +++ b/src/main/java/cn/nukkit/block/BlockDoubleSlabRedSandstone.java @@ -50,6 +50,7 @@ public void setSlabType(StoneSlab2Type type) { setPropertyValue(StoneSlab2Type.PROPERTY, type); } + @PowerNukkitOnly @Override public String getSlabName() { return getSlabType().getEnglishName(); @@ -70,12 +71,14 @@ public int getToolType() { return ItemTool.TYPE_PICKAXE; } + @PowerNukkitOnly @Override public int getSingleSlabId() { return RED_SANDSTONE_SLAB; } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockDoubleSlabStone.java b/src/main/java/cn/nukkit/block/BlockDoubleSlabStone.java index 5005e6560dd..acdc9930830 100644 --- a/src/main/java/cn/nukkit/block/BlockDoubleSlabStone.java +++ b/src/main/java/cn/nukkit/block/BlockDoubleSlabStone.java @@ -66,6 +66,7 @@ public StoneSlab1Type getSlabType() { return getPropertyValue(StoneSlab1Type.PROPERTY); } + @PowerNukkitOnly @Override public int getSingleSlabId() { return STONE_SLAB; @@ -77,12 +78,14 @@ public void setSlabType(StoneSlab1Type type) { setPropertyValue(StoneSlab1Type.PROPERTY, type); } + @PowerNukkitOnly @Override public String getSlabName() { return getSlabType().getEnglishName(); } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockDoubleSlabStone3.java b/src/main/java/cn/nukkit/block/BlockDoubleSlabStone3.java index a7589b19fe6..996dc568d74 100644 --- a/src/main/java/cn/nukkit/block/BlockDoubleSlabStone3.java +++ b/src/main/java/cn/nukkit/block/BlockDoubleSlabStone3.java @@ -1,6 +1,5 @@ package cn.nukkit.block; -import cn.nukkit.api.PowerNukkitDifference; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.blockproperty.BlockProperties; @@ -10,21 +9,23 @@ import javax.annotation.Nonnull; -@PowerNukkitDifference(info = "Extends BlockDoubleSlabBase instead of BlockDoubleSlabStone only in PowerNukkit") +@PowerNukkitOnly public class BlockDoubleSlabStone3 extends BlockDoubleSlabBase { - public static final int END_STONE_BRICKS = 0; - public static final int SMOOTH_RED_SANDSTONE = 1; - public static final int POLISHED_ANDESITE = 2; - public static final int ANDESITE = 3; - public static final int DIORITE = 4; - public static final int POLISHED_DIORITE = 5; - public static final int GRANITE = 6; - public static final int POLISHED_GRANITE = 7; + @PowerNukkitOnly public static final int END_STONE_BRICKS = 0; + @PowerNukkitOnly public static final int SMOOTH_RED_SANDSTONE = 1; + @PowerNukkitOnly public static final int POLISHED_ANDESITE = 2; + @PowerNukkitOnly public static final int ANDESITE = 3; + @PowerNukkitOnly public static final int DIORITE = 4; + @PowerNukkitOnly public static final int POLISHED_DIORITE = 5; + @PowerNukkitOnly public static final int GRANITE = 6; + @PowerNukkitOnly public static final int POLISHED_GRANITE = 7; + @PowerNukkitOnly public BlockDoubleSlabStone3() { this(0); } + @PowerNukkitOnly public BlockDoubleSlabStone3(int meta) { super(meta); } @@ -54,6 +55,7 @@ public void setSlabType(StoneSlab3Type type) { setPropertyValue(StoneSlab3Type.PROPERTY, type); } + @PowerNukkitOnly @Override public String getSlabName() { return getSlabType().getEnglishName(); @@ -74,12 +76,14 @@ public int getToolType() { return ItemTool.TYPE_PICKAXE; } + @PowerNukkitOnly @Override public int getSingleSlabId() { return STONE_SLAB3; } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockDoubleSlabStone4.java b/src/main/java/cn/nukkit/block/BlockDoubleSlabStone4.java index e60e5336c9d..8216dd6ea04 100644 --- a/src/main/java/cn/nukkit/block/BlockDoubleSlabStone4.java +++ b/src/main/java/cn/nukkit/block/BlockDoubleSlabStone4.java @@ -1,6 +1,5 @@ package cn.nukkit.block; -import cn.nukkit.api.PowerNukkitDifference; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.blockproperty.BlockProperties; @@ -10,18 +9,20 @@ import javax.annotation.Nonnull; -@PowerNukkitDifference(info = "Extends BlockDoubleSlabBase instead of BlockDoubleSlabStone only in PowerNukkit") +@PowerNukkitOnly public class BlockDoubleSlabStone4 extends BlockDoubleSlabBase { - public static final int MOSSY_STONE_BRICKS = 0; - public static final int SMOOTH_QUARTZ = 1; - public static final int STONE = 2; - public static final int CUT_SANDSTONE = 3; - public static final int CUT_RED_SANDSTONE = 4; + @PowerNukkitOnly public static final int MOSSY_STONE_BRICKS = 0; + @PowerNukkitOnly public static final int SMOOTH_QUARTZ = 1; + @PowerNukkitOnly public static final int STONE = 2; + @PowerNukkitOnly public static final int CUT_SANDSTONE = 3; + @PowerNukkitOnly public static final int CUT_RED_SANDSTONE = 4; + @PowerNukkitOnly public BlockDoubleSlabStone4() { this(0); } + @PowerNukkitOnly public BlockDoubleSlabStone4(int meta) { super(meta); } @@ -51,6 +52,7 @@ public void setSlabType(StoneSlab4Type type) { setPropertyValue(StoneSlab4Type.PROPERTY, type); } + @PowerNukkitOnly @Override public String getSlabName() { return getSlabType().getEnglishName(); @@ -71,12 +73,14 @@ public int getToolType() { return ItemTool.TYPE_PICKAXE; } + @PowerNukkitOnly @Override public int getSingleSlabId() { return STONE_SLAB4; } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockDoubleSlabWarped.java b/src/main/java/cn/nukkit/block/BlockDoubleSlabWarped.java index a639bdcd3dc..adea1af5444 100644 --- a/src/main/java/cn/nukkit/block/BlockDoubleSlabWarped.java +++ b/src/main/java/cn/nukkit/block/BlockDoubleSlabWarped.java @@ -21,11 +21,13 @@ public int getId() { return WARPED_DOUBLE_SLAB; } + @PowerNukkitOnly @Override public String getSlabName() { return "Warped"; } + @PowerNukkitOnly @Override public int getSingleSlabId() { return WARPED_SLAB; @@ -33,6 +35,7 @@ public int getSingleSlabId() { //TODO Adjust or remove this when merging https://github.com/PowerNukkit/PowerNukkit/pull/370 @Override + @PowerNukkitOnly protected boolean isCorrectTool(Item item) { return true; } diff --git a/src/main/java/cn/nukkit/block/BlockDoubleSlabWood.java b/src/main/java/cn/nukkit/block/BlockDoubleSlabWood.java index 4f8596a81a8..95c2c1f1ce8 100644 --- a/src/main/java/cn/nukkit/block/BlockDoubleSlabWood.java +++ b/src/main/java/cn/nukkit/block/BlockDoubleSlabWood.java @@ -51,6 +51,7 @@ public void setWoodType(WoodType type) { setPropertyValue(WoodType.PROPERTY, type); } + @PowerNukkitOnly @Override public String getSlabName() { return getWoodType().getEnglishName(); @@ -76,6 +77,7 @@ public int getToolType() { return ItemTool.TYPE_AXE; } + @PowerNukkitOnly @Override public int getSingleSlabId() { return WOOD_SLAB; @@ -83,6 +85,7 @@ public int getSingleSlabId() { //TODO Adjust or remove this when merging https://github.com/PowerNukkit/PowerNukkit/pull/370 @Override + @PowerNukkitOnly protected boolean isCorrectTool(Item item) { return true; } diff --git a/src/main/java/cn/nukkit/block/BlockDragonEgg.java b/src/main/java/cn/nukkit/block/BlockDragonEgg.java index 1601a956089..5ec1a2630ef 100644 --- a/src/main/java/cn/nukkit/block/BlockDragonEgg.java +++ b/src/main/java/cn/nukkit/block/BlockDragonEgg.java @@ -112,12 +112,14 @@ public void teleport() { } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } } diff --git a/src/main/java/cn/nukkit/block/BlockDriedKelpBlock.java b/src/main/java/cn/nukkit/block/BlockDriedKelpBlock.java index 6efd4dd08fe..f387c928332 100644 --- a/src/main/java/cn/nukkit/block/BlockDriedKelpBlock.java +++ b/src/main/java/cn/nukkit/block/BlockDriedKelpBlock.java @@ -1,9 +1,12 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockDriedKelpBlock extends BlockSolid { - + + @PowerNukkitOnly public BlockDriedKelpBlock() { } diff --git a/src/main/java/cn/nukkit/block/BlockDropper.java b/src/main/java/cn/nukkit/block/BlockDropper.java index fb1933c4a51..1119721858f 100644 --- a/src/main/java/cn/nukkit/block/BlockDropper.java +++ b/src/main/java/cn/nukkit/block/BlockDropper.java @@ -1,6 +1,5 @@ package cn.nukkit.block; -import cn.nukkit.api.PowerNukkitDifference; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.blockentity.BlockEntity; @@ -12,13 +11,15 @@ import javax.annotation.Nonnull; -@PowerNukkitDifference(since = "1.4.0.0-PN", info = "Implements BlockEntityHolder only in PowerNukkit") +@PowerNukkitOnly public class BlockDropper extends BlockDispenser { + @PowerNukkitOnly public BlockDropper() { this(0); } + @PowerNukkitOnly public BlockDropper(int meta) { super(meta); } @@ -49,12 +50,13 @@ public String getBlockEntityType() { return BlockEntity.DROPPER; } + @PowerNukkitOnly @Override public void dispense() { super.dispense(); } - @PowerNukkitDifference(info = "Spend items in container, the dropper faces to (if there is one).", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override protected DispenseBehavior getDispenseBehavior(Item item) { return new DropperDispenseBehavior(); @@ -76,6 +78,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockEmerald.java b/src/main/java/cn/nukkit/block/BlockEmerald.java index 595276a7160..041e720a590 100644 --- a/src/main/java/cn/nukkit/block/BlockEmerald.java +++ b/src/main/java/cn/nukkit/block/BlockEmerald.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -38,6 +39,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_IRON; } diff --git a/src/main/java/cn/nukkit/block/BlockEnchantingTable.java b/src/main/java/cn/nukkit/block/BlockEnchantingTable.java index 0f5e2503f61..31be357b18c 100644 --- a/src/main/java/cn/nukkit/block/BlockEnchantingTable.java +++ b/src/main/java/cn/nukkit/block/BlockEnchantingTable.java @@ -93,6 +93,7 @@ public double getMaxY() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockEndPortal.java b/src/main/java/cn/nukkit/block/BlockEndPortal.java index ecb824da10b..e615d7f2cc0 100644 --- a/src/main/java/cn/nukkit/block/BlockEndPortal.java +++ b/src/main/java/cn/nukkit/block/BlockEndPortal.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitDifference; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.blockproperty.BlockProperties; @@ -69,8 +70,7 @@ public boolean hasEntityCollision() { return true; } - @PowerNukkitOnly("NukkitX returns null") - @Since("1.2.1.0-PN") + @PowerNukkitDifference(since = "1.2.1.0-PN", info = "NukkitX returns null") @Override public AxisAlignedBB getCollisionBoundingBox() { return this; diff --git a/src/main/java/cn/nukkit/block/BlockEndPortalFrame.java b/src/main/java/cn/nukkit/block/BlockEndPortalFrame.java index 2b2cd8ec0b7..63abf9aec66 100644 --- a/src/main/java/cn/nukkit/block/BlockEndPortalFrame.java +++ b/src/main/java/cn/nukkit/block/BlockEndPortalFrame.java @@ -100,14 +100,17 @@ public boolean canBePushed() { } @Override - public boolean canBePulled() { + @PowerNukkitOnly + public boolean canBePulled() { return false; } + @Override public boolean hasComparatorInputOverride() { return true; } + @Override public int getComparatorInputOverride() { return (getDamage() & 4) != 0 ? 15 : 0; } diff --git a/src/main/java/cn/nukkit/block/BlockEndStone.java b/src/main/java/cn/nukkit/block/BlockEndStone.java index 76d537a5ca7..c7a41ff8413 100644 --- a/src/main/java/cn/nukkit/block/BlockEndStone.java +++ b/src/main/java/cn/nukkit/block/BlockEndStone.java @@ -1,6 +1,6 @@ package cn.nukkit.block; -import cn.nukkit.item.Item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -39,6 +39,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockEnderChest.java b/src/main/java/cn/nukkit/block/BlockEnderChest.java index f929a9b0315..a68370451ff 100644 --- a/src/main/java/cn/nukkit/block/BlockEnderChest.java +++ b/src/main/java/cn/nukkit/block/BlockEnderChest.java @@ -175,6 +175,7 @@ public boolean onActivate(@Nonnull Item item, Player player) { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } @@ -205,7 +206,8 @@ public boolean canBePushed() { } @Override - public boolean canBePulled() { + @PowerNukkitOnly + public boolean canBePulled() { return false; } @@ -229,6 +231,7 @@ public BlockFace getBlockFace() { return BlockFace.fromHorizontalIndex(this.getDamage() & 0x07); } + @PowerNukkitOnly @Nullable @Override public BlockEntityEnderChest getBlockEntity() { diff --git a/src/main/java/cn/nukkit/block/BlockEntityHolder.java b/src/main/java/cn/nukkit/block/BlockEntityHolder.java index e7e1b53ccae..4751aa12adb 100644 --- a/src/main/java/cn/nukkit/block/BlockEntityHolder.java +++ b/src/main/java/cn/nukkit/block/BlockEntityHolder.java @@ -11,7 +11,6 @@ import cn.nukkit.math.Vector3; import cn.nukkit.nbt.tag.CompoundTag; import cn.nukkit.utils.LevelException; -import jdk.nashorn.internal.objects.annotations.Getter; import javax.annotation.Nonnull; import javax.annotation.Nullable; @@ -19,8 +18,8 @@ @PowerNukkitOnly @Since("1.4.0.0-PN") public interface BlockEntityHolder { - @PowerNukkitOnly @Since("1.4.0.0-PN") + @PowerNukkitOnly @Nullable default E getBlockEntity() { Level level = getLevel(); @@ -130,7 +129,6 @@ default E getOrCreateBlockEntity() { @PowerNukkitOnly @Since("1.4.0.0-PN") - @Getter Level getLevel(); @PowerNukkitOnly diff --git a/src/main/java/cn/nukkit/block/BlockFallable.java b/src/main/java/cn/nukkit/block/BlockFallable.java index cb5bba4ef1d..6e9ac98a12c 100644 --- a/src/main/java/cn/nukkit/block/BlockFallable.java +++ b/src/main/java/cn/nukkit/block/BlockFallable.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.entity.Entity; import cn.nukkit.entity.item.EntityFallingBlock; import cn.nukkit.event.block.BlockFallEvent; @@ -15,6 +16,7 @@ public abstract class BlockFallable extends BlockSolid { protected BlockFallable() { } + @Override public int onUpdate(int type) { if (type == Level.BLOCK_UPDATE_NORMAL) { Block down = this.down(); @@ -34,6 +36,7 @@ public int onUpdate(int type) { return type; } + @PowerNukkitOnly protected EntityFallingBlock createFallingEntity(CompoundTag customNbt) { CompoundTag nbt = new CompoundTag() .putList(new ListTag("Pos") diff --git a/src/main/java/cn/nukkit/block/BlockFence.java b/src/main/java/cn/nukkit/block/BlockFence.java index 84b5ab86924..e51e63325d7 100644 --- a/src/main/java/cn/nukkit/block/BlockFence.java +++ b/src/main/java/cn/nukkit/block/BlockFence.java @@ -23,6 +23,7 @@ */ @PowerNukkitDifference(info = "Implements BlockConnectable only on PowerNukkit", since = "1.3.0.0-PN") public class BlockFence extends BlockTransparentMeta implements BlockConnectable { + @PowerNukkitOnly public static final BlockProperties PROPERTIES = new BlockProperties(WoodType.PROPERTY); @Deprecated @DeprecationDetails(reason = "Moved to the block property system", since = "1.4.0.0-PN", replaceWith = "getWoodType()") diff --git a/src/main/java/cn/nukkit/block/BlockFenceBase.java b/src/main/java/cn/nukkit/block/BlockFenceBase.java index 260a453295c..88ddc38fb0f 100644 --- a/src/main/java/cn/nukkit/block/BlockFenceBase.java +++ b/src/main/java/cn/nukkit/block/BlockFenceBase.java @@ -39,6 +39,7 @@ public BlockProperties getProperties() { reason = "Will always returns empty on this type. It is here for backward compatibility", since = "1.4.0.0-PN") @Override + @PowerNukkitOnly public Optional getWoodType() { return Optional.empty(); } @@ -47,6 +48,7 @@ public Optional getWoodType() { reason = "Only accepts null. It is here for backward compatibility", since = "1.4.0.0-PN") @Override + @PowerNukkitOnly public void setWoodType(@Nullable WoodType woodType) { if (woodType != null) { throw new InvalidBlockPropertyValueException(WoodType.PROPERTY, null, woodType, "This block don't have a regular wood type"); diff --git a/src/main/java/cn/nukkit/block/BlockFenceNetherBrick.java b/src/main/java/cn/nukkit/block/BlockFenceNetherBrick.java index 28080651e09..337c136e321 100644 --- a/src/main/java/cn/nukkit/block/BlockFenceNetherBrick.java +++ b/src/main/java/cn/nukkit/block/BlockFenceNetherBrick.java @@ -1,8 +1,8 @@ package cn.nukkit.block; import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; -import cn.nukkit.item.Item; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -47,6 +47,7 @@ public double getResistance() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockFire.java b/src/main/java/cn/nukkit/block/BlockFire.java index 44de00cc11e..145d822ecd6 100644 --- a/src/main/java/cn/nukkit/block/BlockFire.java +++ b/src/main/java/cn/nukkit/block/BlockFire.java @@ -41,14 +41,10 @@ public class BlockFire extends BlockFlowable { @Since("1.4.0.0-PN") public static final BlockProperties PROPERTIES = new BlockProperties(FIRE_AGE); - @PowerNukkitOnly - @Since("1.4.0.0-PN") public BlockFire() { this(0); } - @PowerNukkitOnly - @Since("1.4.0.0-PN") public BlockFire(int meta) { super(meta); } diff --git a/src/main/java/cn/nukkit/block/BlockFletchingTable.java b/src/main/java/cn/nukkit/block/BlockFletchingTable.java index 8a321648e35..e2a2960b641 100644 --- a/src/main/java/cn/nukkit/block/BlockFletchingTable.java +++ b/src/main/java/cn/nukkit/block/BlockFletchingTable.java @@ -1,10 +1,13 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockFletchingTable extends BlockSolid { + @PowerNukkitOnly public BlockFletchingTable() { } diff --git a/src/main/java/cn/nukkit/block/BlockFlowable.java b/src/main/java/cn/nukkit/block/BlockFlowable.java index 3beacce47a4..7e80bfcc0fd 100644 --- a/src/main/java/cn/nukkit/block/BlockFlowable.java +++ b/src/main/java/cn/nukkit/block/BlockFlowable.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.math.AxisAlignedBB; /** @@ -37,12 +38,14 @@ public boolean isSolid() { } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } diff --git a/src/main/java/cn/nukkit/block/BlockFlower.java b/src/main/java/cn/nukkit/block/BlockFlower.java index 96b2657e92b..53c12383563 100644 --- a/src/main/java/cn/nukkit/block/BlockFlower.java +++ b/src/main/java/cn/nukkit/block/BlockFlower.java @@ -10,6 +10,7 @@ import cn.nukkit.blockproperty.BlockProperty; import cn.nukkit.blockproperty.exception.InvalidBlockPropertyValueException; import cn.nukkit.blockproperty.value.SmallFlowerType; +import cn.nukkit.api.Since; import cn.nukkit.item.Item; import cn.nukkit.level.Level; import cn.nukkit.level.particle.BoneMealParticle; @@ -44,7 +45,7 @@ public class BlockFlower extends BlockFlowable { @PowerNukkitOnly @Since("1.4.0.0-PN") public static final BlockProperties PROPERTIES = new BlockProperties(RED_FLOWER_TYPE); - + @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", by = "PowerNukkit", reason = "Magic value. Use FlowerType instead") public static final int TYPE_POPPY = 0; @@ -81,6 +82,16 @@ public class BlockFlower extends BlockFlowable { @DeprecationDetails(since = "1.4.0.0-PN", by = "PowerNukkit", reason = "Magic value. Use FlowerType instead") public static final int TYPE_OXEYE_DAISY = 8; + @Deprecated + @DeprecationDetails(since = "FUTURE", by = "PowerNukkit", reason = "Magic value. Use FlowerType instead") + @Since("FUTURE") + public static final int TYPE_CORNFLOWER = 9; + + @Deprecated + @DeprecationDetails(since = "FUTURE", by = "PowerNukkit", reason = "Magic value. Use FlowerType instead") + @Since("FUTURE") + public static final int TYPE_LILY_OF_THE_VALLEY = 10; + public BlockFlower() { this(0); } @@ -106,7 +117,7 @@ public BlockProperties getProperties() { public String getName() { return getFlowerType().getEnglishName(); } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public SmallFlowerType getFlowerType() { @@ -133,7 +144,7 @@ protected void setOnSingleFlowerType(SmallFlowerType acceptsOnly, SmallFlowerTyp public void setFlowerType(SmallFlowerType flowerType) { setPropertyValue(RED_FLOWER_TYPE, flowerType); } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public static boolean isSupportValid(Block block) { @@ -148,7 +159,7 @@ public static boolean isSupportValid(Block block) { } } - @PowerNukkitDifference(since = "1.4.0.0-PN", info = "Fixed support logic") + @PowerNukkitOnly public boolean canPlantOn(Block block) { return isSupportValid(block); } diff --git a/src/main/java/cn/nukkit/block/BlockFungusCrimson.java b/src/main/java/cn/nukkit/block/BlockFungusCrimson.java index 046f2c5511e..0f0d115d9d7 100644 --- a/src/main/java/cn/nukkit/block/BlockFungusCrimson.java +++ b/src/main/java/cn/nukkit/block/BlockFungusCrimson.java @@ -27,11 +27,13 @@ public String getName() { return "Crimson Fungus"; } + @PowerNukkitOnly @Override protected boolean canGrowOn(Block support) { return support.getId() == CRIMSON_NYLIUM; } + @PowerNukkitOnly @Override public boolean grow(@Nullable Player cause) { // TODO Make it grow diff --git a/src/main/java/cn/nukkit/block/BlockFungusWarped.java b/src/main/java/cn/nukkit/block/BlockFungusWarped.java index f1d83f605cb..a170dc3575a 100644 --- a/src/main/java/cn/nukkit/block/BlockFungusWarped.java +++ b/src/main/java/cn/nukkit/block/BlockFungusWarped.java @@ -27,11 +27,13 @@ public String getName() { return "Warped Fungus"; } + @PowerNukkitOnly @Override protected boolean canGrowOn(Block support) { return support.getId() == WARPED_NYLIUM; } + @PowerNukkitOnly @Override public boolean grow(@Nullable Player cause) { // TODO Make it grow diff --git a/src/main/java/cn/nukkit/block/BlockFurnaceBurning.java b/src/main/java/cn/nukkit/block/BlockFurnaceBurning.java index cac0047e0f1..ec3ad9bf968 100644 --- a/src/main/java/cn/nukkit/block/BlockFurnaceBurning.java +++ b/src/main/java/cn/nukkit/block/BlockFurnaceBurning.java @@ -148,6 +148,7 @@ public Item toItem() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockGold.java b/src/main/java/cn/nukkit/block/BlockGold.java index bf905d488fc..a10fd3a1af9 100644 --- a/src/main/java/cn/nukkit/block/BlockGold.java +++ b/src/main/java/cn/nukkit/block/BlockGold.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -38,6 +39,7 @@ public double getResistance() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_IRON; } diff --git a/src/main/java/cn/nukkit/block/BlockGravel.java b/src/main/java/cn/nukkit/block/BlockGravel.java index 7acbeae1f7f..7a014c1334f 100644 --- a/src/main/java/cn/nukkit/block/BlockGravel.java +++ b/src/main/java/cn/nukkit/block/BlockGravel.java @@ -3,7 +3,6 @@ import cn.nukkit.item.enchantment.Enchantment; import cn.nukkit.item.Item; import cn.nukkit.item.ItemID; -import cn.nukkit.item.ItemFlint; import cn.nukkit.item.ItemTool; import cn.nukkit.math.NukkitRandom; diff --git a/src/main/java/cn/nukkit/block/BlockGrindstone.java b/src/main/java/cn/nukkit/block/BlockGrindstone.java index f2b53036a97..7a42632b957 100644 --- a/src/main/java/cn/nukkit/block/BlockGrindstone.java +++ b/src/main/java/cn/nukkit/block/BlockGrindstone.java @@ -70,6 +70,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockHoney.java b/src/main/java/cn/nukkit/block/BlockHoney.java index 7cf8bee4bc5..518a7546654 100644 --- a/src/main/java/cn/nukkit/block/BlockHoney.java +++ b/src/main/java/cn/nukkit/block/BlockHoney.java @@ -12,9 +12,15 @@ import java.util.Random; +@PowerNukkitOnly public class BlockHoney extends BlockSolid { private static final Random RANDOM = new Random(); + @PowerNukkitOnly + public BlockHoney() { + super(); + } + @Override public String getName() { return "Honey Block"; diff --git a/src/main/java/cn/nukkit/block/BlockHoneycombBlock.java b/src/main/java/cn/nukkit/block/BlockHoneycombBlock.java index 741bffbcc23..b445d25f08a 100644 --- a/src/main/java/cn/nukkit/block/BlockHoneycombBlock.java +++ b/src/main/java/cn/nukkit/block/BlockHoneycombBlock.java @@ -1,10 +1,13 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockHoneycombBlock extends BlockSolid { + @PowerNukkitOnly public BlockHoneycombBlock() { } diff --git a/src/main/java/cn/nukkit/block/BlockHopper.java b/src/main/java/cn/nukkit/block/BlockHopper.java index 0dbc751acf9..3fc98e4206b 100644 --- a/src/main/java/cn/nukkit/block/BlockHopper.java +++ b/src/main/java/cn/nukkit/block/BlockHopper.java @@ -196,6 +196,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockHyphaeCrimson.java b/src/main/java/cn/nukkit/block/BlockHyphaeCrimson.java index 2f23427c374..60dc22272bc 100644 --- a/src/main/java/cn/nukkit/block/BlockHyphaeCrimson.java +++ b/src/main/java/cn/nukkit/block/BlockHyphaeCrimson.java @@ -30,6 +30,7 @@ public String getName() { return "Crimson Hyphae"; } + @PowerNukkitOnly @Override protected BlockState getStrippedState() { return getCurrentState().withBlockId(STRIPPED_CRIMSON_HYPHAE); diff --git a/src/main/java/cn/nukkit/block/BlockHyphaeWarped.java b/src/main/java/cn/nukkit/block/BlockHyphaeWarped.java index eb973ffc9cb..e44e2146e32 100644 --- a/src/main/java/cn/nukkit/block/BlockHyphaeWarped.java +++ b/src/main/java/cn/nukkit/block/BlockHyphaeWarped.java @@ -31,6 +31,7 @@ public String getName() { return "Warped Hyphae"; } + @PowerNukkitOnly @Override protected BlockState getStrippedState() { return getCurrentState().withBlockId(STRIPPED_WARPED_HYPHAE); diff --git a/src/main/java/cn/nukkit/block/BlockID.java b/src/main/java/cn/nukkit/block/BlockID.java index 517570bab49..b560dbc3828 100644 --- a/src/main/java/cn/nukkit/block/BlockID.java +++ b/src/main/java/cn/nukkit/block/BlockID.java @@ -48,6 +48,9 @@ public interface BlockID { int BUSH = 32; int DEAD_BUSH = 32; int PISTON = 33; + @PowerNukkitOnly @Since("1.6.0.0-PN") int PISTON_ARM_COLLISION = 34; + @Deprecated + @DeprecationDetails(since = "1.6.0.0-PN", by = "PowerNukkit", reason = "Incorrect name", replaceWith = "PISTON_ARM_COLLISION") int PISTON_HEAD = 34; int WOOL = 35; int DANDELION = 37; @@ -181,6 +184,9 @@ public interface BlockID { int EMERALD_ORE = 129; int ENDER_CHEST = 130; int TRIPWIRE_HOOK = 131; + @PowerNukkitOnly @Since("1.6.0.0-PN") int TRIP_WIRE = 132; + @Deprecated + @DeprecationDetails(since = "1.6.0.0-PN", by = "Mojang", reason = "Renamed", replaceWith = "TRIP_WIRE") int TRIPWIRE = 132; int EMERALD_BLOCK = 133; int SPRUCE_WOOD_STAIRS = 134; @@ -301,8 +307,11 @@ public interface BlockID { int RED_GLAZED_TERRACOTTA = 234; int BLACK_GLAZED_TERRACOTTA = 235; int CONCRETE = 236; - @Since("1.4.0.0-PN") @PowerNukkitOnly int CONCRETEPOWDER = 237; - int CONCRETE_POWDER = CONCRETEPOWDER; + int CONCRETE_POWDER = 237; + @Since("1.4.0.0-PN") + @PowerNukkitOnly + @Deprecated @DeprecationDetails(since = "1.6.0.0-PN", by = "Mojang", replaceWith = "CONCRETE_POWDER", reason = "Renamed") + int CONCRETEPOWDER = CONCRETE_POWDER; int CHORUS_PLANT = 240; int STAINED_GLASS = 241; @@ -430,8 +439,15 @@ public interface BlockID { @PowerNukkitOnly int LIT_BLAST_FURNACE = 469; @PowerNukkitOnly int LIGHT_BLOCK = 470; @PowerNukkitOnly int WITHER_ROSE = 471; - @PowerNukkitOnly int STICKYPISTONARMCOLLISION = 472; - @PowerNukkitOnly int PISTON_HEAD_STICKY = 472; + @PowerNukkitOnly @Since("1.6.0.0-PN") int STICKY_PISTON_ARM_COLLISION = 472; + @PowerNukkitOnly + @Deprecated + @DeprecationDetails(since = "1.6.0.0-PN", by = "Mojang", replaceWith = "STICKY_PISTON_ARM_COLLISION", reason = "Renamed") + int STICKYPISTONARMCOLLISION = STICKY_PISTON_ARM_COLLISION; + @PowerNukkitOnly + @Deprecated + @DeprecationDetails(since = "1.6.0.0-PN", by = "PowerNukkit", replaceWith = "STICKY_PISTON_ARM_COLLISION", reason = "Renamed") + int PISTON_HEAD_STICKY = STICKY_PISTON_ARM_COLLISION; @PowerNukkitOnly int BEE_NEST = 473; @PowerNukkitOnly int BEEHIVE = 474; @PowerNukkitOnly int HONEY_BLOCK = 475; @@ -519,5 +535,4 @@ public interface BlockID { @Since("1.4.0.0-PN") @PowerNukkitOnly int CHISELED_NETHER_BRICKS = 557; @Since("1.4.0.0-PN") @PowerNukkitOnly int CRACKED_NETHER_BRICKS = 558; @Since("1.4.0.0-PN") @PowerNukkitOnly int QUARTZ_BRICKS = 559; - //int UNKNOWN = 600; } diff --git a/src/main/java/cn/nukkit/block/BlockIceFrosted.java b/src/main/java/cn/nukkit/block/BlockIceFrosted.java index 4bf7a143133..2681ef7cca0 100644 --- a/src/main/java/cn/nukkit/block/BlockIceFrosted.java +++ b/src/main/java/cn/nukkit/block/BlockIceFrosted.java @@ -13,6 +13,7 @@ import javax.annotation.Nonnull; import java.util.concurrent.ThreadLocalRandom; +@PowerNukkitOnly public class BlockIceFrosted extends BlockTransparentMeta { @PowerNukkitOnly @@ -23,10 +24,12 @@ public class BlockIceFrosted extends BlockTransparentMeta { @Since("1.5.0.0-PN") public static final BlockProperties PROPERTIES = new BlockProperties(AGE); + @PowerNukkitOnly public BlockIceFrosted() { this(0); } + @PowerNukkitOnly public BlockIceFrosted(int meta) { super(meta); } @@ -110,6 +113,7 @@ public boolean canHarvestWithHand() { return false; } + @PowerNukkitOnly protected void slightlyMelt(boolean isSource) { int age = getDamage(); if (age < 3) { diff --git a/src/main/java/cn/nukkit/block/BlockIron.java b/src/main/java/cn/nukkit/block/BlockIron.java index 12a871b07b6..d7e4e172269 100644 --- a/src/main/java/cn/nukkit/block/BlockIron.java +++ b/src/main/java/cn/nukkit/block/BlockIron.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -38,6 +39,7 @@ public double getResistance() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_STONE; } diff --git a/src/main/java/cn/nukkit/block/BlockIronBars.java b/src/main/java/cn/nukkit/block/BlockIronBars.java index dfd7452d317..9b5979537a1 100644 --- a/src/main/java/cn/nukkit/block/BlockIronBars.java +++ b/src/main/java/cn/nukkit/block/BlockIronBars.java @@ -52,6 +52,7 @@ public Item toItem() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockItemFrame.java b/src/main/java/cn/nukkit/block/BlockItemFrame.java index 0a757842eed..17760a38532 100644 --- a/src/main/java/cn/nukkit/block/BlockItemFrame.java +++ b/src/main/java/cn/nukkit/block/BlockItemFrame.java @@ -39,9 +39,13 @@ public class BlockItemFrame extends BlockTransparentMeta implements BlockEntityH @Since("1.4.0.0-PN") public static final BooleanBlockProperty HAS_MAP = new BooleanBlockProperty("item_frame_map_bit", false); + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public static final BooleanBlockProperty HAS_PHOTO = new BooleanBlockProperty("item_frame_photo_bit", false); + @PowerNukkitOnly @Since("1.4.0.0-PN") - public static final BlockProperties PROPERTIES = new BlockProperties(FACING_DIRECTION, HAS_MAP); + public static final BlockProperties PROPERTIES = new BlockProperties(FACING_DIRECTION, HAS_MAP, HAS_PHOTO); public BlockItemFrame() { this(0); @@ -91,6 +95,18 @@ public void setStoringMap(boolean map) { setBooleanValue(HAS_MAP, map); } + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public boolean isStoringPhoto() { + return getBooleanValue(HAS_PHOTO); + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setStoringPhoto(boolean hasPhoto) { + setBooleanValue(HAS_PHOTO, hasPhoto); + } + @PowerNukkitOnly @Since("1.4.0.0-PN") @Nonnull @@ -177,10 +193,18 @@ public boolean onActivate(@Nonnull Item item, Player player) { @PowerNukkitDifference(info = "Allow to place on walls", since = "1.3.0.0-PN") @Override public boolean place(@Nonnull Item item, @Nonnull Block block, @Nonnull Block target, @Nonnull BlockFace face, double fx, double fy, double fz, @Nullable Player player) { - if (target.getId() != COBBLE_WALL && (!target.isSolid() || (block.isSolid() && !block.canBeReplaced()))) { + if ((!(target.isSolid() || target instanceof BlockWall) && !target.equals(block) || (block.isSolid() && !block.canBeReplaced()))) { return false; } + if (target.equals(block) && block.canBeReplaced()) { + face = BlockFace.UP; + target = block.down(); + if (!target.isSolid() && !(target instanceof BlockWall)) { + return false; + } + } + setBlockFace(face); setStoringMap(item.getId() == ItemID.MAP); CompoundTag nbt = new CompoundTag() @@ -257,17 +281,18 @@ public double getHardness() { } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } - @PowerNukkitOnly("Will calculate the correct AABB") - @Since("1.3.0.0-PN") + @PowerNukkitDifference(since = "1.3.0.0-PN", info = "Will calculate the correct AABB") @Override protected AxisAlignedBB recalculateBoundingBox() { double[][] aabb = { diff --git a/src/main/java/cn/nukkit/block/BlockJungleSignPost.java b/src/main/java/cn/nukkit/block/BlockJungleSignPost.java index ac8ed1c440a..f59c49bd549 100644 --- a/src/main/java/cn/nukkit/block/BlockJungleSignPost.java +++ b/src/main/java/cn/nukkit/block/BlockJungleSignPost.java @@ -20,6 +20,7 @@ public int getId() { return JUNGLE_STANDING_SIGN; } + @PowerNukkitOnly @Override public int getWallId() { return JUNGLE_WALL_SIGN; diff --git a/src/main/java/cn/nukkit/block/BlockJungleWallSign.java b/src/main/java/cn/nukkit/block/BlockJungleWallSign.java index d8c988f0a49..d042b1db7b7 100644 --- a/src/main/java/cn/nukkit/block/BlockJungleWallSign.java +++ b/src/main/java/cn/nukkit/block/BlockJungleWallSign.java @@ -21,6 +21,7 @@ public int getId() { return JUNGLE_WALL_SIGN; } + @PowerNukkitOnly @Override protected int getPostId() { return JUNGLE_STANDING_SIGN; diff --git a/src/main/java/cn/nukkit/block/BlockLadder.java b/src/main/java/cn/nukkit/block/BlockLadder.java index 184a22b611f..7ca1c24508f 100644 --- a/src/main/java/cn/nukkit/block/BlockLadder.java +++ b/src/main/java/cn/nukkit/block/BlockLadder.java @@ -233,12 +233,14 @@ public BlockFace getBlockFace() { } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } } diff --git a/src/main/java/cn/nukkit/block/BlockLantern.java b/src/main/java/cn/nukkit/block/BlockLantern.java index ad1b4c5af24..bc70d59045f 100644 --- a/src/main/java/cn/nukkit/block/BlockLantern.java +++ b/src/main/java/cn/nukkit/block/BlockLantern.java @@ -186,6 +186,7 @@ public BlockColor getColor() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockLapis.java b/src/main/java/cn/nukkit/block/BlockLapis.java index b671511ad09..54a02a69d52 100644 --- a/src/main/java/cn/nukkit/block/BlockLapis.java +++ b/src/main/java/cn/nukkit/block/BlockLapis.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -38,6 +39,7 @@ public double getResistance() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_STONE; } diff --git a/src/main/java/cn/nukkit/block/BlockLeaves.java b/src/main/java/cn/nukkit/block/BlockLeaves.java index edbf319f6d5..d9f6020efb9 100644 --- a/src/main/java/cn/nukkit/block/BlockLeaves.java +++ b/src/main/java/cn/nukkit/block/BlockLeaves.java @@ -273,6 +273,7 @@ protected Item getSapling() { return Item.get(BlockID.SAPLING, getIntValue(OLD_LEAF_TYPE)); } + @PowerNukkitOnly @Override public boolean diffusesSkyLight() { return true; @@ -280,12 +281,14 @@ public boolean diffusesSkyLight() { @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } } diff --git a/src/main/java/cn/nukkit/block/BlockLeaves2.java b/src/main/java/cn/nukkit/block/BlockLeaves2.java index 5e16b6df616..242f1cc4d04 100644 --- a/src/main/java/cn/nukkit/block/BlockLeaves2.java +++ b/src/main/java/cn/nukkit/block/BlockLeaves2.java @@ -46,11 +46,13 @@ public BlockProperties getProperties() { return NEW_LEAF_PROPERTIES; } + @PowerNukkitOnly @Override public WoodType getType() { return getPropertyValue(NEW_LEAF_TYPE); } + @PowerNukkitOnly @Override public void setType(WoodType type) { setPropertyValue(NEW_LEAF_TYPE, type); diff --git a/src/main/java/cn/nukkit/block/BlockLectern.java b/src/main/java/cn/nukkit/block/BlockLectern.java index 6896991a464..120306a10b2 100644 --- a/src/main/java/cn/nukkit/block/BlockLectern.java +++ b/src/main/java/cn/nukkit/block/BlockLectern.java @@ -200,7 +200,7 @@ public void setActivated(boolean activated) { } } - @PowerNukkitDifference(info = "Down side is strongly powered.", since = "1.4.0.0-PN") + @PowerNukkitOnly public void executeRedstonePulse() { if (isActivated()) { level.cancelSheduledUpdate(this, this); diff --git a/src/main/java/cn/nukkit/block/BlockLever.java b/src/main/java/cn/nukkit/block/BlockLever.java index 73e8d8fc209..a6c82de6a93 100644 --- a/src/main/java/cn/nukkit/block/BlockLever.java +++ b/src/main/java/cn/nukkit/block/BlockLever.java @@ -204,6 +204,7 @@ public int getWeakPower(BlockFace side) { return isPowerOn() ? 15 : 0; } + @Override public int getStrongPower(BlockFace side) { return !isPowerOn() ? 0 : getLeverOrientation().getFacing() == side ? 15 : 0; } @@ -242,6 +243,7 @@ public BlockFace getFacing() { return this.facing; } + @Override public String toString() { return this.name; } diff --git a/src/main/java/cn/nukkit/block/BlockLiquid.java b/src/main/java/cn/nukkit/block/BlockLiquid.java index 73a92b5c978..11ef60a599e 100644 --- a/src/main/java/cn/nukkit/block/BlockLiquid.java +++ b/src/main/java/cn/nukkit/block/BlockLiquid.java @@ -117,6 +117,7 @@ protected AxisAlignedBB recalculateCollisionBoundingBox() { return this; } + @PowerNukkitOnly public boolean usesWaterLogging() { return false; } @@ -528,12 +529,14 @@ public Item toItem() { } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } diff --git a/src/main/java/cn/nukkit/block/BlockLodestone.java b/src/main/java/cn/nukkit/block/BlockLodestone.java index ee0f25503f7..25b3bd969c5 100644 --- a/src/main/java/cn/nukkit/block/BlockLodestone.java +++ b/src/main/java/cn/nukkit/block/BlockLodestone.java @@ -148,7 +148,8 @@ public BlockColor getColor() { } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } diff --git a/src/main/java/cn/nukkit/block/BlockLoom.java b/src/main/java/cn/nukkit/block/BlockLoom.java index 6b9eed38dac..7625e6bf63b 100644 --- a/src/main/java/cn/nukkit/block/BlockLoom.java +++ b/src/main/java/cn/nukkit/block/BlockLoom.java @@ -103,7 +103,6 @@ public boolean place(@Nonnull Item item, @Nonnull Block block, @Nonnull Block ta return true; } - @PowerNukkitOnly @Since("1.5.0.0-PN") @Override public BlockFace getBlockFace() { diff --git a/src/main/java/cn/nukkit/block/BlockMagma.java b/src/main/java/cn/nukkit/block/BlockMagma.java index de00aa9d6e9..b63b53449ad 100644 --- a/src/main/java/cn/nukkit/block/BlockMagma.java +++ b/src/main/java/cn/nukkit/block/BlockMagma.java @@ -8,6 +8,7 @@ import cn.nukkit.item.Item; import cn.nukkit.item.ItemTool; import cn.nukkit.item.enchantment.Enchantment; +import cn.nukkit.level.GameRule; import cn.nukkit.level.Level; import cn.nukkit.potion.Effect; import cn.nukkit.utils.BlockColor; @@ -61,19 +62,19 @@ public Item[] getDrops(Item item) { @Override public void onEntityCollide(Entity entity) { - if (!entity.hasEffect(Effect.FIRE_RESISTANCE)) { - if (entity instanceof Player) { - Player p = (Player) entity; - if (p.getInventory().getBoots().getEnchantment(Enchantment.ID_FROST_WALKER) != null) { - return; - } - if (!p.isCreative() && !p.isSpectator() && !p.isSneaking()) { - entity.attack(new EntityDamageByBlockEvent(this, entity, EntityDamageEvent.DamageCause.LAVA, 1)); - } - } else { - entity.attack(new EntityDamageByBlockEvent(this, entity, EntityDamageEvent.DamageCause.LAVA, 1)); + if (entity.hasEffect(Effect.FIRE_RESISTANCE)) { + return; + } + + if (entity instanceof Player) { + Player p = (Player) entity; + if (p.getInventory().getBoots().getEnchantment(Enchantment.ID_FROST_WALKER) != null + || p.isCreative() || p.isSpectator() || p.isSneaking() || !p.level.getGameRules().getBoolean(GameRule.FIRE_DAMAGE)) { + return; } } + + entity.attack(new EntityDamageByBlockEvent(this, entity, EntityDamageEvent.DamageCause.HOT_FLOOR, 1)); } @Override diff --git a/src/main/java/cn/nukkit/block/BlockMelon.java b/src/main/java/cn/nukkit/block/BlockMelon.java index 4180c4a9b7c..903a66dcd18 100644 --- a/src/main/java/cn/nukkit/block/BlockMelon.java +++ b/src/main/java/cn/nukkit/block/BlockMelon.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import cn.nukkit.item.ItemMelon; import cn.nukkit.item.ItemTool; @@ -23,10 +24,12 @@ public int getId() { return MELON_BLOCK; } + @Override public String getName() { return "Melon Block"; } + @Override public double getHardness() { return 1; } @@ -67,12 +70,14 @@ public boolean canSilkTouch() { } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } } diff --git a/src/main/java/cn/nukkit/block/BlockMobSpawner.java b/src/main/java/cn/nukkit/block/BlockMobSpawner.java index e01f3a5af07..52d74e8881f 100644 --- a/src/main/java/cn/nukkit/block/BlockMobSpawner.java +++ b/src/main/java/cn/nukkit/block/BlockMobSpawner.java @@ -29,6 +29,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } @@ -60,7 +61,8 @@ public int getWaterloggingLevel() { } @Override - public boolean canBePulled() { + @PowerNukkitOnly + public boolean canBePulled() { return false; } diff --git a/src/main/java/cn/nukkit/block/BlockMossStone.java b/src/main/java/cn/nukkit/block/BlockMossStone.java index efde4c63819..a25555a8b01 100644 --- a/src/main/java/cn/nukkit/block/BlockMossStone.java +++ b/src/main/java/cn/nukkit/block/BlockMossStone.java @@ -1,6 +1,6 @@ package cn.nukkit.block; -import cn.nukkit.item.Item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; /** @@ -38,6 +38,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockMoving.java b/src/main/java/cn/nukkit/block/BlockMoving.java index ee2f4f8536b..16729390be8 100644 --- a/src/main/java/cn/nukkit/block/BlockMoving.java +++ b/src/main/java/cn/nukkit/block/BlockMoving.java @@ -1,7 +1,6 @@ package cn.nukkit.block; import cn.nukkit.Player; -import cn.nukkit.api.PowerNukkitDifference; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.blockentity.BlockEntity; @@ -12,13 +11,15 @@ import javax.annotation.Nonnull; import javax.annotation.Nullable; -@PowerNukkitDifference(since = "1.4.0.0-PN", info = "Implements BlockEntityHolder only in PowerNukkit") +@PowerNukkitOnly public class BlockMoving extends BlockTransparent implements BlockEntityHolder { + @PowerNukkitOnly public BlockMoving() { this(0); } + @PowerNukkitOnly public BlockMoving(int meta) { super(); } @@ -60,7 +61,8 @@ public boolean canBePushed() { } @Override - public boolean canBePulled() { + @PowerNukkitOnly + public boolean canBePulled() { return false; } diff --git a/src/main/java/cn/nukkit/block/BlockMushroom.java b/src/main/java/cn/nukkit/block/BlockMushroom.java index b2c46f9997d..e7accd0429d 100644 --- a/src/main/java/cn/nukkit/block/BlockMushroom.java +++ b/src/main/java/cn/nukkit/block/BlockMushroom.java @@ -123,6 +123,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockNetherBrick.java b/src/main/java/cn/nukkit/block/BlockNetherBrick.java index cc336ca4b41..ddd1b6efaef 100644 --- a/src/main/java/cn/nukkit/block/BlockNetherBrick.java +++ b/src/main/java/cn/nukkit/block/BlockNetherBrick.java @@ -1,55 +1,26 @@ package cn.nukkit.block; -import cn.nukkit.item.Item; -import cn.nukkit.item.ItemTool; -import cn.nukkit.utils.BlockColor; +import cn.nukkit.api.DeprecationDetails; +import cn.nukkit.api.PowerNukkitDifference; /** * @author xtypr * @since 2015/12/7 */ -public class BlockNetherBrick extends BlockSolid { - +@Deprecated +@DeprecationDetails(since = "1.5.1.0-PN", by = "PowerNukkit", + reason = "Duplicated of BlockBricksNether and the other one is used instead of this one.", + replaceWith = "BlockBricksNether" +) +@PowerNukkitDifference(since = "1.5.1.0-PN", extendsOnlyInPowerNukkit = BlockBricksNether.class, insteadOf = BlockSolid.class) +@SuppressWarnings({"DeprecatedIsStillUsed", "java:S1133"}) +public class BlockNetherBrick extends BlockBricksNether { + @Deprecated + @DeprecationDetails(since = "1.5.1.0-PN", by = "PowerNukkit", + reason = "Duplicated of BlockBricksNether and the other one is used instead of this one.", + replaceWith = "BlockBricksNether" + ) public BlockNetherBrick() { - } - - @Override - public String getName() { - return "Nether Bricks"; - } - - @Override - public int getId() { - return NETHER_BRICKS; - } - - @Override - public int getToolType() { - return ItemTool.TYPE_PICKAXE; - } - - @Override - public double getHardness() { - return 2; - } - - @Override - public double getResistance() { - return 10; - } - - @Override - public int getToolTier() { - return ItemTool.TIER_WOODEN; - } - - @Override - public BlockColor getColor() { - return BlockColor.NETHERRACK_BLOCK_COLOR; - } - - @Override - public boolean canHarvestWithHand() { - return false; + // Does nothing } } diff --git a/src/main/java/cn/nukkit/block/BlockNetherWartBlock.java b/src/main/java/cn/nukkit/block/BlockNetherWartBlock.java index 1c1eb670224..17a70f60300 100644 --- a/src/main/java/cn/nukkit/block/BlockNetherWartBlock.java +++ b/src/main/java/cn/nukkit/block/BlockNetherWartBlock.java @@ -1,16 +1,13 @@ package cn.nukkit.block; import cn.nukkit.api.PowerNukkitDifference; -import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; -@PowerNukkitOnly @Since("1.4.0.0-PN") public class BlockNetherWartBlock extends BlockSolid { - @PowerNukkitOnly @Since("1.4.0.0-PN") public BlockNetherWartBlock() { // Does nothing @@ -36,11 +33,10 @@ public double getHardness() { return 1; } - // TODO Fix it in https://github.com/PowerNukkit/PowerNukkit/pull/370, the same for BlockNetherWartBlock @PowerNukkitDifference(info = "It's now hoe instead of none", since = "1.4.0.0-PN") @Override public int getToolType() { - return ItemTool.TYPE_HANDS_ONLY; //TODO Correct type is hoe + return ItemTool.TYPE_HOE; } @Override diff --git a/src/main/java/cn/nukkit/block/BlockNetherrack.java b/src/main/java/cn/nukkit/block/BlockNetherrack.java index e8563fab5c1..bf2f62c3c78 100644 --- a/src/main/java/cn/nukkit/block/BlockNetherrack.java +++ b/src/main/java/cn/nukkit/block/BlockNetherrack.java @@ -1,6 +1,7 @@ package cn.nukkit.block; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import cn.nukkit.item.ItemTool; import cn.nukkit.math.BlockFace; @@ -47,6 +48,7 @@ public String getName() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockObserver.java b/src/main/java/cn/nukkit/block/BlockObserver.java index f51751ecb68..3559734ba7b 100644 --- a/src/main/java/cn/nukkit/block/BlockObserver.java +++ b/src/main/java/cn/nukkit/block/BlockObserver.java @@ -163,6 +163,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockObsidian.java b/src/main/java/cn/nukkit/block/BlockObsidian.java index 2005814b35e..bd7c8030cfe 100644 --- a/src/main/java/cn/nukkit/block/BlockObsidian.java +++ b/src/main/java/cn/nukkit/block/BlockObsidian.java @@ -31,6 +31,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_DIAMOND; } @@ -81,7 +82,8 @@ public boolean canBePushed() { } @Override - public boolean canBePulled() { + @PowerNukkitOnly + public boolean canBePulled() { return false; } diff --git a/src/main/java/cn/nukkit/block/BlockObsidianCrying.java b/src/main/java/cn/nukkit/block/BlockObsidianCrying.java index 2ec6a755aff..4e6995e0a5d 100644 --- a/src/main/java/cn/nukkit/block/BlockObsidianCrying.java +++ b/src/main/java/cn/nukkit/block/BlockObsidianCrying.java @@ -61,7 +61,8 @@ public boolean canBePushed() { } @Override - public boolean canBePulled() { + @PowerNukkitOnly + public boolean canBePulled() { return false; } diff --git a/src/main/java/cn/nukkit/block/BlockObsidianGlowing.java b/src/main/java/cn/nukkit/block/BlockObsidianGlowing.java index 2536774520a..12124d36e2f 100644 --- a/src/main/java/cn/nukkit/block/BlockObsidianGlowing.java +++ b/src/main/java/cn/nukkit/block/BlockObsidianGlowing.java @@ -74,7 +74,8 @@ public boolean canBePushed() { } @Override - public boolean canBePulled() { + @PowerNukkitOnly + public boolean canBePulled() { return false; } diff --git a/src/main/java/cn/nukkit/block/BlockOreCoal.java b/src/main/java/cn/nukkit/block/BlockOreCoal.java index a9b5ae70ae4..4842db993cd 100644 --- a/src/main/java/cn/nukkit/block/BlockOreCoal.java +++ b/src/main/java/cn/nukkit/block/BlockOreCoal.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import cn.nukkit.item.ItemCoal; import cn.nukkit.item.ItemTool; @@ -43,6 +44,7 @@ public String getName() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockOreDiamond.java b/src/main/java/cn/nukkit/block/BlockOreDiamond.java index d2ffd7e375a..6e29ae64ece 100644 --- a/src/main/java/cn/nukkit/block/BlockOreDiamond.java +++ b/src/main/java/cn/nukkit/block/BlockOreDiamond.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import cn.nukkit.item.ItemDiamond; import cn.nukkit.item.ItemTool; @@ -38,6 +39,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_IRON; } diff --git a/src/main/java/cn/nukkit/block/BlockOreEmerald.java b/src/main/java/cn/nukkit/block/BlockOreEmerald.java index bc695a21da4..dd63f834fd9 100644 --- a/src/main/java/cn/nukkit/block/BlockOreEmerald.java +++ b/src/main/java/cn/nukkit/block/BlockOreEmerald.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import cn.nukkit.item.ItemEmerald; import cn.nukkit.item.ItemTool; @@ -33,6 +34,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_IRON; } diff --git a/src/main/java/cn/nukkit/block/BlockOreGold.java b/src/main/java/cn/nukkit/block/BlockOreGold.java index 224123502e2..ec16269062f 100644 --- a/src/main/java/cn/nukkit/block/BlockOreGold.java +++ b/src/main/java/cn/nukkit/block/BlockOreGold.java @@ -1,6 +1,6 @@ package cn.nukkit.block; -import cn.nukkit.item.Item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; /** @@ -32,6 +32,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_IRON; } diff --git a/src/main/java/cn/nukkit/block/BlockOreIron.java b/src/main/java/cn/nukkit/block/BlockOreIron.java index fd21f761c46..c4d30b7421a 100644 --- a/src/main/java/cn/nukkit/block/BlockOreIron.java +++ b/src/main/java/cn/nukkit/block/BlockOreIron.java @@ -1,6 +1,6 @@ package cn.nukkit.block; -import cn.nukkit.item.Item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; /** @@ -33,6 +33,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_STONE; } diff --git a/src/main/java/cn/nukkit/block/BlockOreLapis.java b/src/main/java/cn/nukkit/block/BlockOreLapis.java index e2777332dfc..577cf8a6517 100644 --- a/src/main/java/cn/nukkit/block/BlockOreLapis.java +++ b/src/main/java/cn/nukkit/block/BlockOreLapis.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import cn.nukkit.item.ItemTool; import cn.nukkit.item.MinecraftItemID; @@ -38,6 +39,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_STONE; } diff --git a/src/main/java/cn/nukkit/block/BlockOreQuartz.java b/src/main/java/cn/nukkit/block/BlockOreQuartz.java index 880356d7ffa..53202565816 100644 --- a/src/main/java/cn/nukkit/block/BlockOreQuartz.java +++ b/src/main/java/cn/nukkit/block/BlockOreQuartz.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import cn.nukkit.item.ItemQuartz; import cn.nukkit.item.ItemTool; @@ -43,6 +44,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockOreRedstone.java b/src/main/java/cn/nukkit/block/BlockOreRedstone.java index df23cf8f127..e86e6a01960 100644 --- a/src/main/java/cn/nukkit/block/BlockOreRedstone.java +++ b/src/main/java/cn/nukkit/block/BlockOreRedstone.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import cn.nukkit.item.ItemRedstone; import cn.nukkit.item.ItemTool; @@ -38,6 +39,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_IRON; } diff --git a/src/main/java/cn/nukkit/block/BlockPiston.java b/src/main/java/cn/nukkit/block/BlockPiston.java index c1a365f81c2..bad208f4e95 100644 --- a/src/main/java/cn/nukkit/block/BlockPiston.java +++ b/src/main/java/cn/nukkit/block/BlockPiston.java @@ -1,6 +1,7 @@ package cn.nukkit.block; import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; /** * @author CreeperFace @@ -26,8 +27,9 @@ public String getName() { return "Piston"; } + @PowerNukkitOnly @Override public int getPistonHeadBlockId() { - return PISTON_HEAD; + return PISTON_ARM_COLLISION; } } diff --git a/src/main/java/cn/nukkit/block/BlockPistonBase.java b/src/main/java/cn/nukkit/block/BlockPistonBase.java index 169b3144bc3..56c3b279c49 100644 --- a/src/main/java/cn/nukkit/block/BlockPistonBase.java +++ b/src/main/java/cn/nukkit/block/BlockPistonBase.java @@ -340,13 +340,16 @@ private boolean doMove(boolean extending) { blockEntity.move(extending, attached); return true; } - + + @PowerNukkitOnly protected BlockPistonHead createHead(int damage) { return (BlockPistonHead) Block.get(getPistonHeadBlockId(), damage); } + @PowerNukkitOnly public abstract int getPistonHeadBlockId(); + @PowerNukkitOnly public static boolean canPush(Block block, BlockFace face, boolean destroyBlocks, boolean extending) { if ( block.getY() >= 0 && (face != BlockFace.DOWN || block.getY() != 0) && diff --git a/src/main/java/cn/nukkit/block/BlockPistonHead.java b/src/main/java/cn/nukkit/block/BlockPistonHead.java index 3e5c41fba76..de94cbf728a 100644 --- a/src/main/java/cn/nukkit/block/BlockPistonHead.java +++ b/src/main/java/cn/nukkit/block/BlockPistonHead.java @@ -30,7 +30,7 @@ public BlockPistonHead(int meta) { @Override public int getId() { - return PISTON_HEAD; + return PISTON_ARM_COLLISION; } @Since("1.4.0.0-PN") @@ -76,6 +76,12 @@ public boolean onBreak(Item item) { return true; } + @Since("1.6.0.0-PN") + public BlockFace getFacing() { + return getBlockFace(); + } + + @PowerNukkitOnly @Override public BlockFace getBlockFace() { BlockFace face = BlockFace.fromIndex(this.getDamage()); @@ -89,7 +95,8 @@ public boolean canBePushed() { } @Override - public boolean canBePulled() { + @PowerNukkitOnly + public boolean canBePulled() { return false; } diff --git a/src/main/java/cn/nukkit/block/BlockPistonHeadSticky.java b/src/main/java/cn/nukkit/block/BlockPistonHeadSticky.java index 0944bc257d3..0f59f64864d 100644 --- a/src/main/java/cn/nukkit/block/BlockPistonHeadSticky.java +++ b/src/main/java/cn/nukkit/block/BlockPistonHeadSticky.java @@ -1,17 +1,22 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; + +@PowerNukkitOnly public class BlockPistonHeadSticky extends BlockPistonHead { + @PowerNukkitOnly public BlockPistonHeadSticky() { this(0); } - + + @PowerNukkitOnly public BlockPistonHeadSticky(int meta) { super(meta); } @Override public int getId() { - return PISTON_HEAD_STICKY; + return STICKY_PISTON_ARM_COLLISION; } @Override diff --git a/src/main/java/cn/nukkit/block/BlockPistonSticky.java b/src/main/java/cn/nukkit/block/BlockPistonSticky.java index 44f2525a7b4..0f5d49aaad0 100644 --- a/src/main/java/cn/nukkit/block/BlockPistonSticky.java +++ b/src/main/java/cn/nukkit/block/BlockPistonSticky.java @@ -1,6 +1,7 @@ package cn.nukkit.block; import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; /** * @author CreeperFace @@ -27,8 +28,9 @@ public String getName() { return "Sticky Piston"; } + @PowerNukkitOnly @Override public int getPistonHeadBlockId() { - return PISTON_HEAD_STICKY; + return STICKY_PISTON_ARM_COLLISION; } } diff --git a/src/main/java/cn/nukkit/block/BlockPressurePlateAcacia.java b/src/main/java/cn/nukkit/block/BlockPressurePlateAcacia.java index e128721e5c9..0322e9ad150 100644 --- a/src/main/java/cn/nukkit/block/BlockPressurePlateAcacia.java +++ b/src/main/java/cn/nukkit/block/BlockPressurePlateAcacia.java @@ -1,11 +1,16 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; + +@PowerNukkitOnly public class BlockPressurePlateAcacia extends BlockPressurePlateWood { - + + @PowerNukkitOnly public BlockPressurePlateAcacia() { this(0); } - + + @PowerNukkitOnly public BlockPressurePlateAcacia(int meta) { super(meta); } diff --git a/src/main/java/cn/nukkit/block/BlockPressurePlateBirch.java b/src/main/java/cn/nukkit/block/BlockPressurePlateBirch.java index dd2ead0db7a..39005da40fb 100644 --- a/src/main/java/cn/nukkit/block/BlockPressurePlateBirch.java +++ b/src/main/java/cn/nukkit/block/BlockPressurePlateBirch.java @@ -1,11 +1,16 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; + +@PowerNukkitOnly public class BlockPressurePlateBirch extends BlockPressurePlateWood { - + + @PowerNukkitOnly public BlockPressurePlateBirch() { this(0); } - + + @PowerNukkitOnly public BlockPressurePlateBirch(int meta) { super(meta); } diff --git a/src/main/java/cn/nukkit/block/BlockPressurePlateDarkOak.java b/src/main/java/cn/nukkit/block/BlockPressurePlateDarkOak.java index 3590d83e729..90621a24591 100644 --- a/src/main/java/cn/nukkit/block/BlockPressurePlateDarkOak.java +++ b/src/main/java/cn/nukkit/block/BlockPressurePlateDarkOak.java @@ -1,11 +1,16 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; + +@PowerNukkitOnly public class BlockPressurePlateDarkOak extends BlockPressurePlateWood { - + + @PowerNukkitOnly public BlockPressurePlateDarkOak() { this(0); } - + + @PowerNukkitOnly public BlockPressurePlateDarkOak(int meta) { super(meta); } diff --git a/src/main/java/cn/nukkit/block/BlockPressurePlateJungle.java b/src/main/java/cn/nukkit/block/BlockPressurePlateJungle.java index c967ba13840..c4ea1f930dd 100644 --- a/src/main/java/cn/nukkit/block/BlockPressurePlateJungle.java +++ b/src/main/java/cn/nukkit/block/BlockPressurePlateJungle.java @@ -1,11 +1,16 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; + +@PowerNukkitOnly public class BlockPressurePlateJungle extends BlockPressurePlateWood { - + + @PowerNukkitOnly public BlockPressurePlateJungle() { this(0); } - + + @PowerNukkitOnly public BlockPressurePlateJungle(int meta) { super(meta); } diff --git a/src/main/java/cn/nukkit/block/BlockPressurePlateSpruce.java b/src/main/java/cn/nukkit/block/BlockPressurePlateSpruce.java index 034a16a402a..afccd0f1c34 100644 --- a/src/main/java/cn/nukkit/block/BlockPressurePlateSpruce.java +++ b/src/main/java/cn/nukkit/block/BlockPressurePlateSpruce.java @@ -1,11 +1,16 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; + +@PowerNukkitOnly public class BlockPressurePlateSpruce extends BlockPressurePlateWood { - + + @PowerNukkitOnly public BlockPressurePlateSpruce() { this(0); } - + + @PowerNukkitOnly public BlockPressurePlateSpruce(int meta) { super(meta); } diff --git a/src/main/java/cn/nukkit/block/BlockPressurePlateStone.java b/src/main/java/cn/nukkit/block/BlockPressurePlateStone.java index 296e089d0da..0fd5c0a41c7 100644 --- a/src/main/java/cn/nukkit/block/BlockPressurePlateStone.java +++ b/src/main/java/cn/nukkit/block/BlockPressurePlateStone.java @@ -1,8 +1,8 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.entity.Entity; import cn.nukkit.entity.EntityLiving; -import cn.nukkit.item.Item; import cn.nukkit.item.ItemTool; import cn.nukkit.math.AxisAlignedBB; import cn.nukkit.utils.BlockColor; @@ -48,6 +48,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockPrismarine.java b/src/main/java/cn/nukkit/block/BlockPrismarine.java index 3256b671004..4ea436ff136 100644 --- a/src/main/java/cn/nukkit/block/BlockPrismarine.java +++ b/src/main/java/cn/nukkit/block/BlockPrismarine.java @@ -86,6 +86,7 @@ public PrismarineBlockType getPrismarineBlockType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockPumpkin.java b/src/main/java/cn/nukkit/block/BlockPumpkin.java index c2026ece48f..49d9dea21ef 100644 --- a/src/main/java/cn/nukkit/block/BlockPumpkin.java +++ b/src/main/java/cn/nukkit/block/BlockPumpkin.java @@ -44,7 +44,8 @@ public String getName() { public int getId() { return PUMPKIN; } - + + @PowerNukkitOnly @Nonnull @Override public BlockProperties getProperties() { @@ -111,12 +112,14 @@ public BlockColor getColor() { } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } @@ -124,7 +127,8 @@ public boolean sticksToPiston() { public BlockFace getBlockFace() { return getPropertyValue(DIRECTION); } - + + @PowerNukkitOnly @Override public void setBlockFace(BlockFace face) { setPropertyValue(DIRECTION, face); diff --git a/src/main/java/cn/nukkit/block/BlockQuartz.java b/src/main/java/cn/nukkit/block/BlockQuartz.java index 2ecf200a564..25a2b9e1d12 100644 --- a/src/main/java/cn/nukkit/block/BlockQuartz.java +++ b/src/main/java/cn/nukkit/block/BlockQuartz.java @@ -93,6 +93,7 @@ public boolean place(@Nonnull Item item, @Nonnull Block block, @Nonnull Block ta } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockRail.java b/src/main/java/cn/nukkit/block/BlockRail.java index 7cd0446ac2b..206f2efd80d 100644 --- a/src/main/java/cn/nukkit/block/BlockRail.java +++ b/src/main/java/cn/nukkit/block/BlockRail.java @@ -386,7 +386,8 @@ public boolean canBePushed() { } @Override - public boolean canBePulled() { + @PowerNukkitOnly + public boolean canBePulled() { return true; } } diff --git a/src/main/java/cn/nukkit/block/BlockRailPowered.java b/src/main/java/cn/nukkit/block/BlockRailPowered.java index 295b788d2f4..a11294c95b4 100644 --- a/src/main/java/cn/nukkit/block/BlockRailPowered.java +++ b/src/main/java/cn/nukkit/block/BlockRailPowered.java @@ -1,7 +1,6 @@ package cn.nukkit.block; import cn.nukkit.api.PowerNukkitDifference; -import cn.nukkit.item.Item; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.blockproperty.BlockProperties; @@ -70,9 +69,9 @@ public int onUpdate(int type) { // Avoid Block mistake if (wasPowered != isPowered) { setActive(isPowered); - level.updateAround(down()); + RedstoneComponent.updateAroundRedstone(down()); if (getOrientation().isAscending()) { - level.updateAround(up()); + RedstoneComponent.updateAroundRedstone(up()); } } return type; @@ -80,6 +79,17 @@ public int onUpdate(int type) { return 0; } + @Since("1.5.2.0-PN") + @PowerNukkitOnly + @Override + public void afterRemoval(Block newBlock, boolean update) { + RedstoneComponent.updateAroundRedstone(down()); + if (getOrientation().isAscending()) { + RedstoneComponent.updateAroundRedstone(up()); + } + super.afterRemoval(newBlock, update); + } + /** * Check the surrounding of the rail * @@ -109,10 +119,10 @@ private boolean checkSurrounding(Vector3 pos, boolean relative, int power) { } // Used to check if the next ascending rail should be what - Rail.Orientation base = null; + Rail.Orientation base = block.getOrientation(); boolean onStraight = true; // Third: Recalculate the base position - switch (block.getOrientation()) { + switch (base) { case STRAIGHT_NORTH_SOUTH: if (relative) { dz++; @@ -135,7 +145,6 @@ private boolean checkSurrounding(Vector3 pos, boolean relative, int power) { dy++; onStraight = false; } - base = Rail.Orientation.STRAIGHT_EAST_WEST; break; case ASCENDING_WEST: if (relative) { @@ -145,7 +154,6 @@ private boolean checkSurrounding(Vector3 pos, boolean relative, int power) { } else { dx++; } - base = Rail.Orientation.STRAIGHT_EAST_WEST; break; case ASCENDING_NORTH: if (relative) { @@ -155,7 +163,6 @@ private boolean checkSurrounding(Vector3 pos, boolean relative, int power) { dy++; onStraight = false; } - base = Rail.Orientation.STRAIGHT_NORTH_SOUTH; break; case ASCENDING_SOUTH: if (relative) { @@ -165,7 +172,6 @@ private boolean checkSurrounding(Vector3 pos, boolean relative, int power) { } else { dz--; } - base = Rail.Orientation.STRAIGHT_NORTH_SOUTH; break; default: // Unable to determinate the rail orientation @@ -174,7 +180,7 @@ private boolean checkSurrounding(Vector3 pos, boolean relative, int power) { } // Next check the if rail is on power state return canPowered(new Vector3(dx, dy, dz), base, power, relative) - || onStraight && canPowered(new Vector3(dx, dy - 1., dz), base, power, relative); + || onStraight && canPowered(new Vector3(dx, dy - 1.0D, dz), base, power, relative); } @PowerNukkitDifference(info = "Using new method for checking if powered", since = "1.4.0.0-PN") @@ -189,7 +195,7 @@ protected boolean canPowered(Vector3 pos, Rail.Orientation state, int power, boo Rail.Orientation base = ((BlockRailPowered) block).getOrientation(); // Possible way how to know when the rail is activated is rail were directly powered - // OR recheck the surrounding... Which will returns here =w= + // OR recheck the surrounding... Which will returns here =w= return (state != Rail.Orientation.STRAIGHT_EAST_WEST || base != Rail.Orientation.STRAIGHT_NORTH_SOUTH && base != Rail.Orientation.ASCENDING_NORTH @@ -198,7 +204,8 @@ protected boolean canPowered(Vector3 pos, Rail.Orientation state, int power, boo || base != Rail.Orientation.STRAIGHT_EAST_WEST && base != Rail.Orientation.ASCENDING_EAST && base != Rail.Orientation.ASCENDING_WEST) - && (this.isGettingPower() || checkSurrounding(pos, relative, power + 1)); + && (block.isGettingPower() || checkSurrounding(pos, relative, power + 1)); + } @Override diff --git a/src/main/java/cn/nukkit/block/BlockRedSandstone.java b/src/main/java/cn/nukkit/block/BlockRedSandstone.java index 4b219ded082..6c53975fa5f 100644 --- a/src/main/java/cn/nukkit/block/BlockRedSandstone.java +++ b/src/main/java/cn/nukkit/block/BlockRedSandstone.java @@ -2,7 +2,6 @@ import cn.nukkit.item.Item; import cn.nukkit.item.ItemBlock; -import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; /** diff --git a/src/main/java/cn/nukkit/block/BlockRedstone.java b/src/main/java/cn/nukkit/block/BlockRedstone.java index b6976eec21f..1e59f5ff6be 100644 --- a/src/main/java/cn/nukkit/block/BlockRedstone.java +++ b/src/main/java/cn/nukkit/block/BlockRedstone.java @@ -64,6 +64,7 @@ public String getName() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } @@ -74,7 +75,6 @@ public BlockColor getColor() { } @Override - @PowerNukkitOnly @PowerNukkitDifference(info = "Update around redstone", since = "1.4.0.0-PN") public boolean place(@Nonnull Item item, @Nonnull Block block, @Nonnull Block target, @Nonnull BlockFace face, double fx, double fy, double fz, @Nullable Player player) { if (super.place(item, block, target, face, fx, fy, fz, player)) { @@ -86,7 +86,6 @@ public boolean place(@Nonnull Item item, @Nonnull Block block, @Nonnull Block ta } @Override - @PowerNukkitOnly @PowerNukkitDifference(info = "Update around redstone", since = "1.4.0.0-PN") public boolean onBreak(Item item) { if (!super.onBreak(item)) { diff --git a/src/main/java/cn/nukkit/block/BlockRedstoneComparator.java b/src/main/java/cn/nukkit/block/BlockRedstoneComparator.java index bdb159b8c7c..0fb4c834824 100644 --- a/src/main/java/cn/nukkit/block/BlockRedstoneComparator.java +++ b/src/main/java/cn/nukkit/block/BlockRedstoneComparator.java @@ -117,6 +117,7 @@ public void updateState() { } } + @Override protected int calculateInputStrength() { int power = super.calculateInputStrength(); BlockFace face = getFacing(); @@ -135,6 +136,7 @@ protected int calculateInputStrength() { return power; } + @Override protected boolean shouldBePowered() { int input = this.calculateInputStrength(); diff --git a/src/main/java/cn/nukkit/block/BlockRedstoneDiode.java b/src/main/java/cn/nukkit/block/BlockRedstoneDiode.java index 25206a80ecc..0d993d63a1e 100644 --- a/src/main/java/cn/nukkit/block/BlockRedstoneDiode.java +++ b/src/main/java/cn/nukkit/block/BlockRedstoneDiode.java @@ -74,7 +74,8 @@ public boolean place(@Nonnull Item item, @Nonnull Block block, @Nonnull Block ta } return true; } - + + @PowerNukkitOnly protected boolean isSupportValid(Block support) { return BlockLever.isSupportValid(support, BlockFace.UP) || support instanceof BlockCauldron; } @@ -216,10 +217,12 @@ protected int getRedstoneSignal() { return 15; } + @Override public int getStrongPower(BlockFace side) { return getWeakPower(side); } + @Override public int getWeakPower(BlockFace side) { return !this.isPowered() ? 0 : (getFacing() == side ? this.getRedstoneSignal() : 0); } diff --git a/src/main/java/cn/nukkit/block/BlockRedstoneWire.java b/src/main/java/cn/nukkit/block/BlockRedstoneWire.java index 6ff4b3f3c78..e8dcaa815df 100644 --- a/src/main/java/cn/nukkit/block/BlockRedstoneWire.java +++ b/src/main/java/cn/nukkit/block/BlockRedstoneWire.java @@ -248,15 +248,17 @@ public int onUpdate(int type) { return Level.BLOCK_UPDATE_NORMAL; } - @PowerNukkitDifference(since = "1.4.0.0-PN", info = "Fixed placement logic") + @PowerNukkitOnly public boolean canBePlacedOn(Block support) { return support.isSolid(BlockFace.UP); } + @Override public int getStrongPower(BlockFace side) { return !this.canProvidePower ? 0 : getWeakPower(side); } + @Override public int getWeakPower(BlockFace side) { if (!this.canProvidePower) { return 0; diff --git a/src/main/java/cn/nukkit/block/BlockRespawnAnchor.java b/src/main/java/cn/nukkit/block/BlockRespawnAnchor.java index 041c985a5e4..645005f59ee 100644 --- a/src/main/java/cn/nukkit/block/BlockRespawnAnchor.java +++ b/src/main/java/cn/nukkit/block/BlockRespawnAnchor.java @@ -23,6 +23,7 @@ import cn.nukkit.api.Since; import cn.nukkit.blockproperty.BlockProperties; import cn.nukkit.blockproperty.IntBlockProperty; +import cn.nukkit.blockproperty.exception.InvalidBlockPropertyMetaException; import cn.nukkit.event.block.BlockExplosionPrimeEvent; import cn.nukkit.item.Item; import cn.nukkit.item.ItemTool; @@ -57,7 +58,18 @@ public class BlockRespawnAnchor extends BlockMeta { public int getId() { return RESPAWN_ANCHOR; } - + + @PowerNukkitOnly + public BlockRespawnAnchor() { + this(0); + } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + public BlockRespawnAnchor(int meta) throws InvalidBlockPropertyMetaException { + super(meta); + } + @Since("1.4.0.0-PN") @PowerNukkitOnly @Nonnull @@ -209,7 +221,8 @@ public boolean canBePushed() { } @Override - public boolean canBePulled() { + @PowerNukkitOnly + public boolean canBePulled() { return false; } diff --git a/src/main/java/cn/nukkit/block/BlockSand.java b/src/main/java/cn/nukkit/block/BlockSand.java index 486aa2641b5..c26e41e53a1 100644 --- a/src/main/java/cn/nukkit/block/BlockSand.java +++ b/src/main/java/cn/nukkit/block/BlockSand.java @@ -75,6 +75,10 @@ public String getName() { @Override public BlockColor getColor() { + if (this.getDamage() == 0x01) { + return BlockColor.ORANGE_BLOCK_COLOR; + } + return BlockColor.SAND_BLOCK_COLOR; } } diff --git a/src/main/java/cn/nukkit/block/BlockSandstone.java b/src/main/java/cn/nukkit/block/BlockSandstone.java index 0d49bdf4595..ad103a18270 100644 --- a/src/main/java/cn/nukkit/block/BlockSandstone.java +++ b/src/main/java/cn/nukkit/block/BlockSandstone.java @@ -7,8 +7,6 @@ import cn.nukkit.blockproperty.BlockProperties; import cn.nukkit.blockproperty.BlockProperty; import cn.nukkit.blockproperty.value.SandStoneType; -import cn.nukkit.item.Item; -import cn.nukkit.item.ItemBlock; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -65,6 +63,7 @@ public void setSandstoneType(SandStoneType sandStoneType) { setPropertyValue(SAND_STONE_TYPE, sandStoneType); } + @PowerNukkitOnly public SandStoneType getSandstoneType() { return getPropertyValue(SAND_STONE_TYPE); } @@ -85,6 +84,7 @@ public String getName() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockScaffolding.java b/src/main/java/cn/nukkit/block/BlockScaffolding.java index 23e59ef2a33..0883e141afb 100644 --- a/src/main/java/cn/nukkit/block/BlockScaffolding.java +++ b/src/main/java/cn/nukkit/block/BlockScaffolding.java @@ -173,6 +173,7 @@ public int onUpdate(int type) { return 0; } + @PowerNukkitOnly @Override protected EntityFallingBlock createFallingEntity(CompoundTag customNbt) { setDamage(0); diff --git a/src/main/java/cn/nukkit/block/BlockSeaLantern.java b/src/main/java/cn/nukkit/block/BlockSeaLantern.java index 2c393f6daab..97fc780218f 100644 --- a/src/main/java/cn/nukkit/block/BlockSeaLantern.java +++ b/src/main/java/cn/nukkit/block/BlockSeaLantern.java @@ -1,6 +1,5 @@ package cn.nukkit.block; -import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import cn.nukkit.item.ItemID; import cn.nukkit.item.enchantment.Enchantment; @@ -8,10 +7,8 @@ import java.util.concurrent.ThreadLocalRandom; -@PowerNukkitOnly public class BlockSeaLantern extends BlockTransparent { - @PowerNukkitOnly public BlockSeaLantern() { // Does Nothing } diff --git a/src/main/java/cn/nukkit/block/BlockSignPost.java b/src/main/java/cn/nukkit/block/BlockSignPost.java index 639e8a92bca..d8cce0d0b5e 100644 --- a/src/main/java/cn/nukkit/block/BlockSignPost.java +++ b/src/main/java/cn/nukkit/block/BlockSignPost.java @@ -123,10 +123,12 @@ public int getWaterloggingLevel() { return 1; } + @PowerNukkitOnly protected int getPostId() { return getId(); } + @PowerNukkitOnly public int getWallId() { return WALL_SIGN; } @@ -233,6 +235,7 @@ public void setBlockFace(BlockFace face) { } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } diff --git a/src/main/java/cn/nukkit/block/BlockSkull.java b/src/main/java/cn/nukkit/block/BlockSkull.java index 7d8609b035d..893fda47e69 100644 --- a/src/main/java/cn/nukkit/block/BlockSkull.java +++ b/src/main/java/cn/nukkit/block/BlockSkull.java @@ -5,6 +5,7 @@ */ import cn.nukkit.Player; +import cn.nukkit.api.DeprecationDetails; import cn.nukkit.api.PowerNukkitDifference; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; @@ -31,13 +32,15 @@ @PowerNukkitDifference(since = "1.4.0.0-PN", info = "Implements BlockEntityHolder only in PowerNukkit") @PowerNukkitDifference(info = "Implements RedstoneComponent.", since = "1.4.0.0-PN") public class BlockSkull extends BlockTransparentMeta implements RedstoneComponent, BlockEntityHolder { + @Deprecated + @DeprecationDetails(since = "1.6.0.0-PN", reason = "Mojang removed from Minecraft 1.18.10") @PowerNukkitOnly @Since("1.5.0.0-PN") public static final BooleanBlockProperty NO_DROP = new BooleanBlockProperty("no_drop_bit", false); @PowerNukkitOnly @Since("1.5.0.0-PN") - public static final BlockProperties PROPERTIES = new BlockProperties(FACING_DIRECTION, NO_DROP); + public static final BlockProperties PROPERTIES = new BlockProperties(FACING_DIRECTION); public BlockSkull() { this(0); @@ -204,12 +207,14 @@ public BlockColor getColor() { } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } } diff --git a/src/main/java/cn/nukkit/block/BlockSlabBlackstone.java b/src/main/java/cn/nukkit/block/BlockSlabBlackstone.java index a1c65b4ab85..0a009413e82 100644 --- a/src/main/java/cn/nukkit/block/BlockSlabBlackstone.java +++ b/src/main/java/cn/nukkit/block/BlockSlabBlackstone.java @@ -37,11 +37,13 @@ public BlockProperties getProperties() { return SIMPLE_SLAB_PROPERTIES; } + @PowerNukkitOnly @Override public String getSlabName() { return "Blackstone Slab"; } + @PowerNukkitOnly @Override public boolean isSameType(BlockSlab slab) { return slab.getId() == getId(); diff --git a/src/main/java/cn/nukkit/block/BlockSlabBlackstonePolished.java b/src/main/java/cn/nukkit/block/BlockSlabBlackstonePolished.java index 1fef43bcfbc..2ab7500790e 100644 --- a/src/main/java/cn/nukkit/block/BlockSlabBlackstonePolished.java +++ b/src/main/java/cn/nukkit/block/BlockSlabBlackstonePolished.java @@ -45,11 +45,13 @@ public BlockProperties getProperties() { return SIMPLE_SLAB_PROPERTIES; } + @PowerNukkitOnly @Override public String getSlabName() { return "Polished Blackstone"; } + @PowerNukkitOnly @Override public boolean isSameType(BlockSlab slab) { return getId() == slab.getId(); diff --git a/src/main/java/cn/nukkit/block/BlockSlabBrickBlackstonePolished.java b/src/main/java/cn/nukkit/block/BlockSlabBrickBlackstonePolished.java index 5b973dc4008..7efcfe4bb1f 100644 --- a/src/main/java/cn/nukkit/block/BlockSlabBrickBlackstonePolished.java +++ b/src/main/java/cn/nukkit/block/BlockSlabBrickBlackstonePolished.java @@ -29,6 +29,7 @@ public int getId() { return POLISHED_BLACKSTONE_BRICK_SLAB; } + @PowerNukkitOnly @Override public String getSlabName() { return "Polished Blackstone Brick"; diff --git a/src/main/java/cn/nukkit/block/BlockSlabCrimson.java b/src/main/java/cn/nukkit/block/BlockSlabCrimson.java index 3d375ea0092..b2c852156a6 100644 --- a/src/main/java/cn/nukkit/block/BlockSlabCrimson.java +++ b/src/main/java/cn/nukkit/block/BlockSlabCrimson.java @@ -25,6 +25,7 @@ public BlockSlabCrimson(int meta) { super(meta, CRIMSON_DOUBLE_SLAB); } + @PowerNukkitOnly @Override public String getSlabName() { return "Crimson"; @@ -43,6 +44,7 @@ public BlockProperties getProperties() { return SIMPLE_SLAB_PROPERTIES; } + @PowerNukkitOnly @Override public boolean isSameType(BlockSlab slab) { return getId() == slab.getId(); diff --git a/src/main/java/cn/nukkit/block/BlockSlabRedSandstone.java b/src/main/java/cn/nukkit/block/BlockSlabRedSandstone.java index 69631fbb2ae..6d5770c168a 100644 --- a/src/main/java/cn/nukkit/block/BlockSlabRedSandstone.java +++ b/src/main/java/cn/nukkit/block/BlockSlabRedSandstone.java @@ -23,12 +23,12 @@ public class BlockSlabRedSandstone extends BlockSlab { public static final int RED_SANDSTONE = 0; public static final int PURPUR = 1; - public static final int PRISMARINE = 2; - public static final int PRISMARINE_BRICKS = 3; - public static final int DARK_PRISMARINE = 4; - public static final int MOSSY_COBBLESTONE = 5; - public static final int SMOOTH_SANDSTONE = 6; - public static final int RED_NETHER_BRICK = 7; + @PowerNukkitOnly public static final int PRISMARINE = 2; + @PowerNukkitOnly public static final int PRISMARINE_BRICKS = 3; + @PowerNukkitOnly public static final int DARK_PRISMARINE = 4; + @PowerNukkitOnly public static final int MOSSY_COBBLESTONE = 5; + @PowerNukkitOnly public static final int SMOOTH_SANDSTONE = 6; + @PowerNukkitOnly public static final int RED_NETHER_BRICK = 7; public BlockSlabRedSandstone() { this(0); @@ -51,6 +51,7 @@ public BlockProperties getProperties() { return PROPERTIES; } + @PowerNukkitOnly @Override public String getSlabName() { return getSlabType().getEnglishName(); @@ -68,6 +69,7 @@ public void setSlabType(StoneSlab2Type type) { setPropertyValue(StoneSlab2Type.PROPERTY, type); } + @PowerNukkitOnly @Override public boolean isSameType(BlockSlab slab) { return slab.getId() == getId() && getSlabType().equals(slab.getPropertyValue(StoneSlab2Type.PROPERTY)); @@ -84,6 +86,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockSlabStone.java b/src/main/java/cn/nukkit/block/BlockSlabStone.java index 2455679e23d..84f18dd8a1d 100644 --- a/src/main/java/cn/nukkit/block/BlockSlabStone.java +++ b/src/main/java/cn/nukkit/block/BlockSlabStone.java @@ -51,17 +51,20 @@ public BlockProperties getProperties() { return PROPERTIES; } + @PowerNukkitOnly @Override public String getSlabName() { return getSlabType().getEnglishName(); } + @PowerNukkitOnly @Override public boolean isSameType(BlockSlab slab) { return slab.getId() == getId() && getSlabType().equals(slab.getPropertyValue(StoneSlab1Type.PROPERTY)); } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockSlabStone3.java b/src/main/java/cn/nukkit/block/BlockSlabStone3.java index 347cd2a2d61..1d9b3c11cca 100644 --- a/src/main/java/cn/nukkit/block/BlockSlabStone3.java +++ b/src/main/java/cn/nukkit/block/BlockSlabStone3.java @@ -9,6 +9,7 @@ import javax.annotation.Nonnull; +@PowerNukkitOnly public class BlockSlabStone3 extends BlockSlab { @PowerNukkitOnly @Since("1.4.0.0-PN") @@ -17,19 +18,21 @@ public class BlockSlabStone3 extends BlockSlab { TOP_SLOT_PROPERTY ); - public static final int END_STONE_BRICKS = 0; - public static final int SMOOTH_RED_SANDSTONE = 1; - public static final int POLISHED_ANDESITE = 2; - public static final int ANDESITE = 3; - public static final int DIORITE = 4; - public static final int POLISHED_DIORITE = 5; - public static final int GRANITE = 6; - public static final int POLISHED_GRANITE = 7; + @PowerNukkitOnly public static final int END_STONE_BRICKS = 0; + @PowerNukkitOnly public static final int SMOOTH_RED_SANDSTONE = 1; + @PowerNukkitOnly public static final int POLISHED_ANDESITE = 2; + @PowerNukkitOnly public static final int ANDESITE = 3; + @PowerNukkitOnly public static final int DIORITE = 4; + @PowerNukkitOnly public static final int POLISHED_DIORITE = 5; + @PowerNukkitOnly public static final int GRANITE = 6; + @PowerNukkitOnly public static final int POLISHED_GRANITE = 7; + @PowerNukkitOnly public BlockSlabStone3() { this(0); } + @PowerNukkitOnly public BlockSlabStone3(int meta) { super(meta, DOUBLE_STONE_SLAB3); } @@ -47,6 +50,7 @@ public BlockProperties getProperties() { return PROPERTIES; } + @PowerNukkitOnly @Override public String getSlabName() { return getSlabType().getEnglishName(); @@ -65,6 +69,7 @@ public void setSlabType(StoneSlab3Type type) { } + @PowerNukkitOnly @Override public boolean isSameType(BlockSlab slab) { return slab.getId() == getId() && getSlabType().equals(slab.getPropertyValue(StoneSlab3Type.PROPERTY)); @@ -77,6 +82,7 @@ public BlockColor getColor() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockSlabStone4.java b/src/main/java/cn/nukkit/block/BlockSlabStone4.java index adcf5316e05..1eb95b6febf 100644 --- a/src/main/java/cn/nukkit/block/BlockSlabStone4.java +++ b/src/main/java/cn/nukkit/block/BlockSlabStone4.java @@ -9,6 +9,7 @@ import javax.annotation.Nonnull; +@PowerNukkitOnly public class BlockSlabStone4 extends BlockSlab { @PowerNukkitOnly @Since("1.4.0.0-PN") @@ -17,17 +18,18 @@ public class BlockSlabStone4 extends BlockSlab { TOP_SLOT_PROPERTY ); - public static final int MOSSY_STONE_BRICKS = 0; - public static final int SMOOTH_QUARTZ = 1; - public static final int STONE = 2; - public static final int CUT_SANDSTONE = 3; - public static final int CUT_RED_SANDSTONE = 4; - + @PowerNukkitOnly public static final int MOSSY_STONE_BRICKS = 0; + @PowerNukkitOnly public static final int SMOOTH_QUARTZ = 1; + @PowerNukkitOnly public static final int STONE = 2; + @PowerNukkitOnly public static final int CUT_SANDSTONE = 3; + @PowerNukkitOnly public static final int CUT_RED_SANDSTONE = 4; + @PowerNukkitOnly public BlockSlabStone4() { this(0); } + @PowerNukkitOnly public BlockSlabStone4(int meta) { super(meta, DOUBLE_STONE_SLAB4); } @@ -57,11 +59,13 @@ public void setSlabType(StoneSlab4Type type) { setPropertyValue(StoneSlab4Type.PROPERTY, type); } + @PowerNukkitOnly @Override public String getSlabName() { return getSlabType().getEnglishName(); } + @PowerNukkitOnly @Override public boolean isSameType(BlockSlab slab) { return slab.getId() == getId() && getSlabType().equals(slab.getPropertyValue(StoneSlab4Type.PROPERTY)); @@ -74,6 +78,7 @@ public BlockColor getColor() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockSlabWarped.java b/src/main/java/cn/nukkit/block/BlockSlabWarped.java index 8389bcf65f0..d8373891d1b 100644 --- a/src/main/java/cn/nukkit/block/BlockSlabWarped.java +++ b/src/main/java/cn/nukkit/block/BlockSlabWarped.java @@ -26,6 +26,7 @@ public BlockSlabWarped(int meta) { super(meta, WARPED_DOUBLE_SLAB); } + @PowerNukkitOnly @Override public String getSlabName() { return "Warped"; @@ -44,6 +45,7 @@ public BlockProperties getProperties() { return SIMPLE_SLAB_PROPERTIES; } + @PowerNukkitOnly @Override public boolean isSameType(BlockSlab slab) { return getId() == slab.getId(); diff --git a/src/main/java/cn/nukkit/block/BlockSlabWood.java b/src/main/java/cn/nukkit/block/BlockSlabWood.java index b27c5b756e0..3564c6f6e67 100644 --- a/src/main/java/cn/nukkit/block/BlockSlabWood.java +++ b/src/main/java/cn/nukkit/block/BlockSlabWood.java @@ -34,6 +34,7 @@ public String getName() { return (isOnTop()? "Upper " : "") + getSlabName() + " Wood Slab"; } + @PowerNukkitOnly @Override public String getSlabName() { return getWoodType().getEnglishName(); @@ -44,6 +45,7 @@ public int getId() { return WOOD_SLAB; } + @PowerNukkitOnly @Override public boolean isSameType(BlockSlab slab) { return slab.getId() == getId() && slab.getPropertyValue(WoodType.PROPERTY).equals(getWoodType()); diff --git a/src/main/java/cn/nukkit/block/BlockSmoothStone.java b/src/main/java/cn/nukkit/block/BlockSmoothStone.java index b90dbd9a303..7c3f94e85c7 100644 --- a/src/main/java/cn/nukkit/block/BlockSmoothStone.java +++ b/src/main/java/cn/nukkit/block/BlockSmoothStone.java @@ -36,6 +36,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockSnowLayer.java b/src/main/java/cn/nukkit/block/BlockSnowLayer.java index c78d1693876..9072e898e63 100644 --- a/src/main/java/cn/nukkit/block/BlockSnowLayer.java +++ b/src/main/java/cn/nukkit/block/BlockSnowLayer.java @@ -13,7 +13,6 @@ import cn.nukkit.item.Item; import cn.nukkit.item.ItemID; import cn.nukkit.item.ItemTool; -import cn.nukkit.level.GameRule; import cn.nukkit.level.Level; import cn.nukkit.level.biome.Biome; import cn.nukkit.math.AxisAlignedBB; diff --git a/src/main/java/cn/nukkit/block/BlockSoulSand.java b/src/main/java/cn/nukkit/block/BlockSoulSand.java index 6b33af76357..0102d844676 100644 --- a/src/main/java/cn/nukkit/block/BlockSoulSand.java +++ b/src/main/java/cn/nukkit/block/BlockSoulSand.java @@ -1,6 +1,7 @@ package cn.nukkit.block; import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.entity.Entity; import cn.nukkit.event.block.BlockFormEvent; import cn.nukkit.item.ItemTool; @@ -52,6 +53,7 @@ public boolean hasEntityCollision() { return true; } + @PowerNukkitOnly @Override public boolean isSoulSpeedCompatible() { return true; diff --git a/src/main/java/cn/nukkit/block/BlockSoulSoil.java b/src/main/java/cn/nukkit/block/BlockSoulSoil.java index 2ef3811748c..31fff2e8097 100644 --- a/src/main/java/cn/nukkit/block/BlockSoulSoil.java +++ b/src/main/java/cn/nukkit/block/BlockSoulSoil.java @@ -49,6 +49,7 @@ public BlockColor getColor() { return BlockColor.BROWN_BLOCK_COLOR; } + @PowerNukkitOnly @Override public boolean isSoulSpeedCompatible() { return true; diff --git a/src/main/java/cn/nukkit/block/BlockSoulTorch.java b/src/main/java/cn/nukkit/block/BlockSoulTorch.java index 77d5d165fef..bd7ce1a5de1 100644 --- a/src/main/java/cn/nukkit/block/BlockSoulTorch.java +++ b/src/main/java/cn/nukkit/block/BlockSoulTorch.java @@ -13,6 +13,7 @@ public BlockSoulTorch() { this(0); } + @PowerNukkitOnly public BlockSoulTorch(int meta) { super(meta); } diff --git a/src/main/java/cn/nukkit/block/BlockSpruceSignPost.java b/src/main/java/cn/nukkit/block/BlockSpruceSignPost.java index 130a92a9d56..696285ca9cb 100644 --- a/src/main/java/cn/nukkit/block/BlockSpruceSignPost.java +++ b/src/main/java/cn/nukkit/block/BlockSpruceSignPost.java @@ -20,6 +20,7 @@ public int getId() { return SPRUCE_STANDING_SIGN; } + @PowerNukkitOnly @Override public int getWallId() { return SPRUCE_WALL_SIGN; diff --git a/src/main/java/cn/nukkit/block/BlockSpruceWallSign.java b/src/main/java/cn/nukkit/block/BlockSpruceWallSign.java index 876bf06009f..bd3b8af7bfb 100644 --- a/src/main/java/cn/nukkit/block/BlockSpruceWallSign.java +++ b/src/main/java/cn/nukkit/block/BlockSpruceWallSign.java @@ -21,6 +21,7 @@ public int getId() { return SPRUCE_WALL_SIGN; } + @PowerNukkitOnly @Override protected int getPostId() { return SPRUCE_STANDING_SIGN; diff --git a/src/main/java/cn/nukkit/block/BlockStairs.java b/src/main/java/cn/nukkit/block/BlockStairs.java index 559b5845a6b..6ac1d8a6300 100644 --- a/src/main/java/cn/nukkit/block/BlockStairs.java +++ b/src/main/java/cn/nukkit/block/BlockStairs.java @@ -74,7 +74,10 @@ public boolean place(@Nonnull Item item, @Nonnull Block block, @Nonnull Block ta if ((fy > 0.5 && face != BlockFace.UP) || face == BlockFace.DOWN) { setUpsideDown(true); + } else { + setUpsideDown(false); } + this.getLevel().setBlock(block, this, true, true); return true; diff --git a/src/main/java/cn/nukkit/block/BlockStairsAndesite.java b/src/main/java/cn/nukkit/block/BlockStairsAndesite.java index 37287e75854..e321a7a853d 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsAndesite.java +++ b/src/main/java/cn/nukkit/block/BlockStairsAndesite.java @@ -1,13 +1,17 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockStairsAndesite extends BlockStairs { + @PowerNukkitOnly public BlockStairsAndesite() { this(0); } + @PowerNukkitOnly public BlockStairsAndesite(int meta) { super(meta); } @@ -33,6 +37,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsAndesitePolished.java b/src/main/java/cn/nukkit/block/BlockStairsAndesitePolished.java index 46df047a61d..a23527c86bd 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsAndesitePolished.java +++ b/src/main/java/cn/nukkit/block/BlockStairsAndesitePolished.java @@ -1,13 +1,17 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockStairsAndesitePolished extends BlockStairs { + @PowerNukkitOnly public BlockStairsAndesitePolished() { this(0); } + @PowerNukkitOnly public BlockStairsAndesitePolished(int meta) { super(meta); } @@ -33,6 +37,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsBrick.java b/src/main/java/cn/nukkit/block/BlockStairsBrick.java index becf2422ddf..1afc0961682 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsBrick.java +++ b/src/main/java/cn/nukkit/block/BlockStairsBrick.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -37,6 +38,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsCobblestone.java b/src/main/java/cn/nukkit/block/BlockStairsCobblestone.java index 93558d55218..c220f3d6c7f 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsCobblestone.java +++ b/src/main/java/cn/nukkit/block/BlockStairsCobblestone.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -37,6 +38,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsDarkPrismarine.java b/src/main/java/cn/nukkit/block/BlockStairsDarkPrismarine.java index ae6538e00df..a332d598c8f 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsDarkPrismarine.java +++ b/src/main/java/cn/nukkit/block/BlockStairsDarkPrismarine.java @@ -1,13 +1,17 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockStairsDarkPrismarine extends BlockStairs { + @PowerNukkitOnly public BlockStairsDarkPrismarine() { this(0); } + @PowerNukkitOnly public BlockStairsDarkPrismarine(int meta) { super(meta); } @@ -33,6 +37,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsDiorite.java b/src/main/java/cn/nukkit/block/BlockStairsDiorite.java index 070f5b259f3..b43813f40d7 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsDiorite.java +++ b/src/main/java/cn/nukkit/block/BlockStairsDiorite.java @@ -1,13 +1,17 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockStairsDiorite extends BlockStairs { + @PowerNukkitOnly public BlockStairsDiorite() { this(0); } + @PowerNukkitOnly public BlockStairsDiorite(int meta) { super(meta); } @@ -33,6 +37,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsDioritePolished.java b/src/main/java/cn/nukkit/block/BlockStairsDioritePolished.java index 76694e98a78..e44a3163c74 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsDioritePolished.java +++ b/src/main/java/cn/nukkit/block/BlockStairsDioritePolished.java @@ -1,13 +1,17 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockStairsDioritePolished extends BlockStairs { + @PowerNukkitOnly public BlockStairsDioritePolished() { this(0); } + @PowerNukkitOnly public BlockStairsDioritePolished(int meta) { super(meta); } diff --git a/src/main/java/cn/nukkit/block/BlockStairsEndBrick.java b/src/main/java/cn/nukkit/block/BlockStairsEndBrick.java index 29cf87a4816..da68e232592 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsEndBrick.java +++ b/src/main/java/cn/nukkit/block/BlockStairsEndBrick.java @@ -1,13 +1,17 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockStairsEndBrick extends BlockStairs { + @PowerNukkitOnly public BlockStairsEndBrick() { this(0); } + @PowerNukkitOnly public BlockStairsEndBrick(int meta) { super(meta); } @@ -33,6 +37,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsGranite.java b/src/main/java/cn/nukkit/block/BlockStairsGranite.java index 0df7c161676..b2a3198034d 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsGranite.java +++ b/src/main/java/cn/nukkit/block/BlockStairsGranite.java @@ -1,13 +1,17 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockStairsGranite extends BlockStairs { + @PowerNukkitOnly public BlockStairsGranite() { this(0); } + @PowerNukkitOnly public BlockStairsGranite(int meta) { super(meta); } @@ -33,6 +37,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsGranitePolished.java b/src/main/java/cn/nukkit/block/BlockStairsGranitePolished.java index 9321afbadb1..ae48361a84c 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsGranitePolished.java +++ b/src/main/java/cn/nukkit/block/BlockStairsGranitePolished.java @@ -1,13 +1,17 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockStairsGranitePolished extends BlockStairs { + @PowerNukkitOnly public BlockStairsGranitePolished() { this(0); } + @PowerNukkitOnly public BlockStairsGranitePolished(int meta) { super(meta); } @@ -33,6 +37,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsMossyCobblestone.java b/src/main/java/cn/nukkit/block/BlockStairsMossyCobblestone.java index d3cf06f53d3..8de8afb444a 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsMossyCobblestone.java +++ b/src/main/java/cn/nukkit/block/BlockStairsMossyCobblestone.java @@ -1,13 +1,17 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockStairsMossyCobblestone extends BlockStairs { + @PowerNukkitOnly public BlockStairsMossyCobblestone() { this(0); } + @PowerNukkitOnly public BlockStairsMossyCobblestone(int meta) { super(meta); } @@ -33,6 +37,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsMossyStoneBrick.java b/src/main/java/cn/nukkit/block/BlockStairsMossyStoneBrick.java index b511c8fcc87..183c82f6916 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsMossyStoneBrick.java +++ b/src/main/java/cn/nukkit/block/BlockStairsMossyStoneBrick.java @@ -1,13 +1,17 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockStairsMossyStoneBrick extends BlockStairs { + @PowerNukkitOnly public BlockStairsMossyStoneBrick() { this(0); } + @PowerNukkitOnly public BlockStairsMossyStoneBrick(int meta) { super(meta); } @@ -33,6 +37,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsNetherBrick.java b/src/main/java/cn/nukkit/block/BlockStairsNetherBrick.java index 5f3563ef786..1ad5034280a 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsNetherBrick.java +++ b/src/main/java/cn/nukkit/block/BlockStairsNetherBrick.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -37,6 +38,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsPrismarine.java b/src/main/java/cn/nukkit/block/BlockStairsPrismarine.java index bf387db6986..209d5a4f338 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsPrismarine.java +++ b/src/main/java/cn/nukkit/block/BlockStairsPrismarine.java @@ -1,13 +1,17 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockStairsPrismarine extends BlockStairs { + @PowerNukkitOnly public BlockStairsPrismarine() { this(0); } + @PowerNukkitOnly public BlockStairsPrismarine(int meta) { super(meta); } @@ -33,6 +37,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsPrismarineBrick.java b/src/main/java/cn/nukkit/block/BlockStairsPrismarineBrick.java index 24d2fed25e7..8d429284d57 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsPrismarineBrick.java +++ b/src/main/java/cn/nukkit/block/BlockStairsPrismarineBrick.java @@ -1,13 +1,17 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockStairsPrismarineBrick extends BlockStairs { + @PowerNukkitOnly public BlockStairsPrismarineBrick() { this(0); } + @PowerNukkitOnly public BlockStairsPrismarineBrick(int meta) { super(meta); } @@ -33,6 +37,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsPurpur.java b/src/main/java/cn/nukkit/block/BlockStairsPurpur.java index 0d6c96f2e15..9e2b8eda06d 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsPurpur.java +++ b/src/main/java/cn/nukkit/block/BlockStairsPurpur.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -34,6 +35,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsQuartz.java b/src/main/java/cn/nukkit/block/BlockStairsQuartz.java index 37aa51eb07c..b36617057bb 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsQuartz.java +++ b/src/main/java/cn/nukkit/block/BlockStairsQuartz.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -37,6 +38,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsRedNetherBrick.java b/src/main/java/cn/nukkit/block/BlockStairsRedNetherBrick.java index 0eb3e049377..e0548612d13 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsRedNetherBrick.java +++ b/src/main/java/cn/nukkit/block/BlockStairsRedNetherBrick.java @@ -1,13 +1,17 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockStairsRedNetherBrick extends BlockStairs { + @PowerNukkitOnly public BlockStairsRedNetherBrick() { this(0); } + @PowerNukkitOnly public BlockStairsRedNetherBrick(int meta) { super(meta); } @@ -33,6 +37,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsRedSandstone.java b/src/main/java/cn/nukkit/block/BlockStairsRedSandstone.java index fc55e3bb1af..e783462ed70 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsRedSandstone.java +++ b/src/main/java/cn/nukkit/block/BlockStairsRedSandstone.java @@ -1,6 +1,6 @@ package cn.nukkit.block; -import cn.nukkit.item.Item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -39,6 +39,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsSandstone.java b/src/main/java/cn/nukkit/block/BlockStairsSandstone.java index 7f902a103d4..44f4f3c143b 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsSandstone.java +++ b/src/main/java/cn/nukkit/block/BlockStairsSandstone.java @@ -1,5 +1,6 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -37,6 +38,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsSmoothQuartz.java b/src/main/java/cn/nukkit/block/BlockStairsSmoothQuartz.java index 437b465d8bf..328bb231864 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsSmoothQuartz.java +++ b/src/main/java/cn/nukkit/block/BlockStairsSmoothQuartz.java @@ -1,13 +1,17 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockStairsSmoothQuartz extends BlockStairs { + @PowerNukkitOnly public BlockStairsSmoothQuartz() { this(0); } + @PowerNukkitOnly public BlockStairsSmoothQuartz(int meta) { super(meta); } @@ -33,6 +37,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsSmoothRedSandstone.java b/src/main/java/cn/nukkit/block/BlockStairsSmoothRedSandstone.java index f8efb5d8443..496c9b06f2d 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsSmoothRedSandstone.java +++ b/src/main/java/cn/nukkit/block/BlockStairsSmoothRedSandstone.java @@ -1,13 +1,17 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockStairsSmoothRedSandstone extends BlockStairs { + @PowerNukkitOnly public BlockStairsSmoothRedSandstone() { this(0); } + @PowerNukkitOnly public BlockStairsSmoothRedSandstone(int meta) { super(meta); } @@ -33,6 +37,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsSmoothSandstone.java b/src/main/java/cn/nukkit/block/BlockStairsSmoothSandstone.java index 0847f243cf6..2468191b715 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsSmoothSandstone.java +++ b/src/main/java/cn/nukkit/block/BlockStairsSmoothSandstone.java @@ -1,13 +1,17 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockStairsSmoothSandstone extends BlockStairs { + @PowerNukkitOnly public BlockStairsSmoothSandstone() { this(0); } + @PowerNukkitOnly public BlockStairsSmoothSandstone(int meta) { super(meta); } @@ -33,6 +37,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsStone.java b/src/main/java/cn/nukkit/block/BlockStairsStone.java index d7f902010af..0e83f8f035e 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsStone.java +++ b/src/main/java/cn/nukkit/block/BlockStairsStone.java @@ -1,13 +1,17 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockStairsStone extends BlockStairs { + @PowerNukkitOnly public BlockStairsStone() { this(0); } + @PowerNukkitOnly public BlockStairsStone(int meta) { super(meta); } @@ -33,6 +37,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStairsStoneBrick.java b/src/main/java/cn/nukkit/block/BlockStairsStoneBrick.java index b95802afc6d..4f89429f122 100644 --- a/src/main/java/cn/nukkit/block/BlockStairsStoneBrick.java +++ b/src/main/java/cn/nukkit/block/BlockStairsStoneBrick.java @@ -1,6 +1,7 @@ package cn.nukkit.block; import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -28,6 +29,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStemCrimson.java b/src/main/java/cn/nukkit/block/BlockStemCrimson.java index d9f716bb1b3..d06960d0dcb 100644 --- a/src/main/java/cn/nukkit/block/BlockStemCrimson.java +++ b/src/main/java/cn/nukkit/block/BlockStemCrimson.java @@ -31,6 +31,7 @@ public String getName() { return "Crimson Stem"; } + @PowerNukkitOnly @Override protected BlockState getStrippedState() { return getCurrentState().withBlockId(STRIPPED_CRIMSON_STEM); diff --git a/src/main/java/cn/nukkit/block/BlockStemStripped.java b/src/main/java/cn/nukkit/block/BlockStemStripped.java index 43eaa6ec628..8a3e86b7cfe 100644 --- a/src/main/java/cn/nukkit/block/BlockStemStripped.java +++ b/src/main/java/cn/nukkit/block/BlockStemStripped.java @@ -17,6 +17,7 @@ public BlockStemStripped(int meta) { super(meta); } + @PowerNukkitOnly @Override protected BlockState getStrippedState() { return getCurrentState(); diff --git a/src/main/java/cn/nukkit/block/BlockStemWarped.java b/src/main/java/cn/nukkit/block/BlockStemWarped.java index 9407694f646..23442df2843 100644 --- a/src/main/java/cn/nukkit/block/BlockStemWarped.java +++ b/src/main/java/cn/nukkit/block/BlockStemWarped.java @@ -31,6 +31,7 @@ public String getName() { return "Warped Stem"; } + @PowerNukkitOnly @Override protected BlockState getStrippedState() { return getCurrentState().withBlockId(STRIPPED_WARPED_STEM); diff --git a/src/main/java/cn/nukkit/block/BlockStone.java b/src/main/java/cn/nukkit/block/BlockStone.java index 5557862ec9d..7ac87e1282c 100644 --- a/src/main/java/cn/nukkit/block/BlockStone.java +++ b/src/main/java/cn/nukkit/block/BlockStone.java @@ -112,6 +112,7 @@ public BlockColor getColor() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStonecutter.java b/src/main/java/cn/nukkit/block/BlockStonecutter.java index 7a8181623c6..0422f312967 100644 --- a/src/main/java/cn/nukkit/block/BlockStonecutter.java +++ b/src/main/java/cn/nukkit/block/BlockStonecutter.java @@ -1,7 +1,6 @@ package cn.nukkit.block; import cn.nukkit.api.PowerNukkitOnly; -import cn.nukkit.item.Item; import cn.nukkit.item.ItemTool; public class BlockStonecutter extends BlockSolid { @@ -36,6 +35,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockStonecutterBlock.java b/src/main/java/cn/nukkit/block/BlockStonecutterBlock.java index 18500449665..4ce32f48293 100644 --- a/src/main/java/cn/nukkit/block/BlockStonecutterBlock.java +++ b/src/main/java/cn/nukkit/block/BlockStonecutterBlock.java @@ -121,6 +121,7 @@ public int getToolType() { return ItemTool.TYPE_PICKAXE; } + @PowerNukkitOnly @Override public int getToolTier() { return ItemTool.TIER_WOODEN; diff --git a/src/main/java/cn/nukkit/block/BlockStructure.java b/src/main/java/cn/nukkit/block/BlockStructure.java index ce24caa2d9a..1545c8521c4 100644 --- a/src/main/java/cn/nukkit/block/BlockStructure.java +++ b/src/main/java/cn/nukkit/block/BlockStructure.java @@ -122,7 +122,8 @@ public boolean canBePushed() { } @Override - public boolean canBePulled() { + @PowerNukkitOnly + public boolean canBePulled() { return false; } diff --git a/src/main/java/cn/nukkit/block/BlockStructureVoid.java b/src/main/java/cn/nukkit/block/BlockStructureVoid.java index b56728606c7..b910bee63c6 100644 --- a/src/main/java/cn/nukkit/block/BlockStructureVoid.java +++ b/src/main/java/cn/nukkit/block/BlockStructureVoid.java @@ -101,7 +101,8 @@ public boolean canBePushed() { } @Override - public boolean canBePulled() { + @PowerNukkitOnly + public boolean canBePulled() { return false; } diff --git a/src/main/java/cn/nukkit/block/BlockTerracotta.java b/src/main/java/cn/nukkit/block/BlockTerracotta.java index f3af84b012a..299224ec15f 100644 --- a/src/main/java/cn/nukkit/block/BlockTerracotta.java +++ b/src/main/java/cn/nukkit/block/BlockTerracotta.java @@ -61,6 +61,7 @@ public double getResistance() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockTerracottaGlazed.java b/src/main/java/cn/nukkit/block/BlockTerracottaGlazed.java index 7ef76aed66c..4706b0154f6 100644 --- a/src/main/java/cn/nukkit/block/BlockTerracottaGlazed.java +++ b/src/main/java/cn/nukkit/block/BlockTerracottaGlazed.java @@ -54,6 +54,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockThin.java b/src/main/java/cn/nukkit/block/BlockThin.java index 319edd17026..6e98a991533 100644 --- a/src/main/java/cn/nukkit/block/BlockThin.java +++ b/src/main/java/cn/nukkit/block/BlockThin.java @@ -33,6 +33,7 @@ public boolean isSolid(BlockFace side) { return false; } + @Override protected AxisAlignedBB recalculateBoundingBox() { final double offNW = 7.0 / 16.0; final double offSE = 9.0 / 16.0; diff --git a/src/main/java/cn/nukkit/block/BlockTrapdoorAcacia.java b/src/main/java/cn/nukkit/block/BlockTrapdoorAcacia.java index 9c6e2c7e7c2..fabe96636ec 100644 --- a/src/main/java/cn/nukkit/block/BlockTrapdoorAcacia.java +++ b/src/main/java/cn/nukkit/block/BlockTrapdoorAcacia.java @@ -1,12 +1,16 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockTrapdoorAcacia extends BlockTrapdoor { + @PowerNukkitOnly public BlockTrapdoorAcacia() { this(0); } - + + @PowerNukkitOnly public BlockTrapdoorAcacia(int meta) { super(meta); } diff --git a/src/main/java/cn/nukkit/block/BlockTrapdoorBirch.java b/src/main/java/cn/nukkit/block/BlockTrapdoorBirch.java index 071d46586eb..e80f2fc1e78 100644 --- a/src/main/java/cn/nukkit/block/BlockTrapdoorBirch.java +++ b/src/main/java/cn/nukkit/block/BlockTrapdoorBirch.java @@ -1,12 +1,16 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockTrapdoorBirch extends BlockTrapdoor { + @PowerNukkitOnly public BlockTrapdoorBirch() { this(0); } - + + @PowerNukkitOnly public BlockTrapdoorBirch(int meta) { super(meta); } diff --git a/src/main/java/cn/nukkit/block/BlockTrapdoorDarkOak.java b/src/main/java/cn/nukkit/block/BlockTrapdoorDarkOak.java index 33d9ea9b9cf..7d1864e9531 100644 --- a/src/main/java/cn/nukkit/block/BlockTrapdoorDarkOak.java +++ b/src/main/java/cn/nukkit/block/BlockTrapdoorDarkOak.java @@ -1,12 +1,16 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockTrapdoorDarkOak extends BlockTrapdoor { + @PowerNukkitOnly public BlockTrapdoorDarkOak() { this(0); } - + + @PowerNukkitOnly public BlockTrapdoorDarkOak(int meta) { super(meta); } diff --git a/src/main/java/cn/nukkit/block/BlockTrapdoorIron.java b/src/main/java/cn/nukkit/block/BlockTrapdoorIron.java index 1673bc82a8a..3ab653f810e 100644 --- a/src/main/java/cn/nukkit/block/BlockTrapdoorIron.java +++ b/src/main/java/cn/nukkit/block/BlockTrapdoorIron.java @@ -1,6 +1,7 @@ package cn.nukkit.block; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import cn.nukkit.item.ItemTool; import cn.nukkit.utils.BlockColor; @@ -62,6 +63,7 @@ public boolean canHarvestWithHand() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockTrapdoorJungle.java b/src/main/java/cn/nukkit/block/BlockTrapdoorJungle.java index 892e4af48ce..18288f7a67e 100644 --- a/src/main/java/cn/nukkit/block/BlockTrapdoorJungle.java +++ b/src/main/java/cn/nukkit/block/BlockTrapdoorJungle.java @@ -1,12 +1,16 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockTrapdoorJungle extends BlockTrapdoor { + @PowerNukkitOnly public BlockTrapdoorJungle() { this(0); } - + + @PowerNukkitOnly public BlockTrapdoorJungle(int meta) { super(meta); } diff --git a/src/main/java/cn/nukkit/block/BlockTrapdoorSpruce.java b/src/main/java/cn/nukkit/block/BlockTrapdoorSpruce.java index 00fc993d32a..4df84d93aab 100644 --- a/src/main/java/cn/nukkit/block/BlockTrapdoorSpruce.java +++ b/src/main/java/cn/nukkit/block/BlockTrapdoorSpruce.java @@ -1,12 +1,16 @@ package cn.nukkit.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.utils.BlockColor; +@PowerNukkitOnly public class BlockTrapdoorSpruce extends BlockTrapdoor { + @PowerNukkitOnly public BlockTrapdoorSpruce() { this(0); } - + + @PowerNukkitOnly public BlockTrapdoorSpruce(int meta) { super(meta); } diff --git a/src/main/java/cn/nukkit/block/BlockTripWire.java b/src/main/java/cn/nukkit/block/BlockTripWire.java index 301624ca30f..25994a2ab30 100644 --- a/src/main/java/cn/nukkit/block/BlockTripWire.java +++ b/src/main/java/cn/nukkit/block/BlockTripWire.java @@ -48,7 +48,7 @@ public BlockTripWire() { @Override public int getId() { - return TRIPWIRE; + return TRIP_WIRE; } @Since("1.4.0.0-PN") @@ -175,7 +175,7 @@ private void updateHook(boolean scheduleUpdate) { break; } - if (block.getId() != Block.TRIPWIRE) { + if (block.getId() != Block.TRIP_WIRE) { break; } } diff --git a/src/main/java/cn/nukkit/block/BlockTripWireHook.java b/src/main/java/cn/nukkit/block/BlockTripWireHook.java index 1c21741ee5d..7758dd0d41e 100644 --- a/src/main/java/cn/nukkit/block/BlockTripWireHook.java +++ b/src/main/java/cn/nukkit/block/BlockTripWireHook.java @@ -139,7 +139,7 @@ public void calculateState(boolean onBreak, boolean updateAround, int pos, Block break; } - if (b.getId() != Block.TRIPWIRE && i != pos) { + if (b.getId() != Block.TRIP_WIRE && i != pos) { blocks[i] = null; canConnect = false; } else { diff --git a/src/main/java/cn/nukkit/block/BlockTurtleEgg.java b/src/main/java/cn/nukkit/block/BlockTurtleEgg.java index e108c124899..9f601fee8a3 100644 --- a/src/main/java/cn/nukkit/block/BlockTurtleEgg.java +++ b/src/main/java/cn/nukkit/block/BlockTurtleEgg.java @@ -102,7 +102,6 @@ public void setCracks(@Nullable CrackState cracks) { setPropertyValue(CRACK_STATE, cracks); } - @PowerNukkitOnly @Since("1.4.0.0-PN") @Override public double getHardness() { diff --git a/src/main/java/cn/nukkit/block/BlockUndyedShulkerBox.java b/src/main/java/cn/nukkit/block/BlockUndyedShulkerBox.java index afa510322dd..d80dfe06f2b 100644 --- a/src/main/java/cn/nukkit/block/BlockUndyedShulkerBox.java +++ b/src/main/java/cn/nukkit/block/BlockUndyedShulkerBox.java @@ -198,12 +198,14 @@ public BlockColor getColor() { } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } diff --git a/src/main/java/cn/nukkit/block/BlockUnknown.java b/src/main/java/cn/nukkit/block/BlockUnknown.java index 633fbc8af45..abe45400970 100644 --- a/src/main/java/cn/nukkit/block/BlockUnknown.java +++ b/src/main/java/cn/nukkit/block/BlockUnknown.java @@ -13,7 +13,7 @@ public class BlockUnknown extends BlockMeta { @PowerNukkitOnly @Since("1.5.0.0-PN") - public static final UnsignedIntBlockProperty UNKNOWN = new UnsignedIntBlockProperty("unknown", true, 0xFFFFFFFF); + public static final UnsignedIntBlockProperty UNKNOWN = new UnsignedIntBlockProperty("nukkit-unknown", true, 0xFFFFFFFF); @PowerNukkitOnly @Since("1.4.0.0-PN") @@ -29,7 +29,17 @@ public BlockUnknown(int id, Integer meta) { super(0); this.id = id; if (meta != null && meta != 0) { - getMutableState().setDataStorageFromInt(meta, true); + getMutableState().setDataStorageFromInt(meta, false); + } + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public BlockUnknown(int id, Number meta) { + super(0); + this.id = id; + if (meta != null) { + getMutableState().setDataStorage(meta, false); } } diff --git a/src/main/java/cn/nukkit/block/BlockVine.java b/src/main/java/cn/nukkit/block/BlockVine.java index bdcb679faed..95cab4b1026 100644 --- a/src/main/java/cn/nukkit/block/BlockVine.java +++ b/src/main/java/cn/nukkit/block/BlockVine.java @@ -388,12 +388,14 @@ public BlockColor getColor() { } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } diff --git a/src/main/java/cn/nukkit/block/BlockVinesNether.java b/src/main/java/cn/nukkit/block/BlockVinesNether.java index fe1ad20e609..53563a33e9e 100644 --- a/src/main/java/cn/nukkit/block/BlockVinesNether.java +++ b/src/main/java/cn/nukkit/block/BlockVinesNether.java @@ -428,11 +428,13 @@ public boolean canPassThrough() { } @Override - public boolean sticksToPiston() { + @PowerNukkitOnly + public boolean sticksToPiston() { return false; } @Override + @PowerNukkitOnly public boolean breaksWhenMoved() { return true; } diff --git a/src/main/java/cn/nukkit/block/BlockWall.java b/src/main/java/cn/nukkit/block/BlockWall.java index f3f9e26f424..289aa3127cf 100644 --- a/src/main/java/cn/nukkit/block/BlockWall.java +++ b/src/main/java/cn/nukkit/block/BlockWall.java @@ -91,6 +91,7 @@ public String getName() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockWallBanner.java b/src/main/java/cn/nukkit/block/BlockWallBanner.java index 1343db16a3a..c9dd4044ebc 100644 --- a/src/main/java/cn/nukkit/block/BlockWallBanner.java +++ b/src/main/java/cn/nukkit/block/BlockWallBanner.java @@ -72,11 +72,13 @@ public BlockFace getBlockFace() { return getPropertyValue(FACING_DIRECTION); } + @PowerNukkitOnly @Override public void setDirection(CompassRoseDirection direction) { setBlockFace(direction.getClosestBlockFace()); } + @PowerNukkitOnly @Override public CompassRoseDirection getDirection() { return getBlockFace().getCompassRoseDirection(); diff --git a/src/main/java/cn/nukkit/block/BlockWallBase.java b/src/main/java/cn/nukkit/block/BlockWallBase.java index d6689aff80d..e9a500db8bb 100644 --- a/src/main/java/cn/nukkit/block/BlockWallBase.java +++ b/src/main/java/cn/nukkit/block/BlockWallBase.java @@ -482,7 +482,7 @@ protected AxisAlignedBB recalculateBoundingBox() { ); } - @PowerNukkitDifference(info = "Will connect to glass panes, iron bars and fence gates", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public boolean canConnect(Block block) { switch (block.getId()) { diff --git a/src/main/java/cn/nukkit/block/BlockWallSign.java b/src/main/java/cn/nukkit/block/BlockWallSign.java index 0a380950010..2eda5f52d8c 100644 --- a/src/main/java/cn/nukkit/block/BlockWallSign.java +++ b/src/main/java/cn/nukkit/block/BlockWallSign.java @@ -44,11 +44,13 @@ public BlockProperties getProperties() { return PROPERTIES; } + @PowerNukkitOnly @Override public int getWallId() { return getId(); } + @PowerNukkitOnly @Override protected int getPostId() { return SIGN_POST; @@ -82,11 +84,13 @@ public BlockFace getBlockFace() { return getPropertyValue(FACING_DIRECTION); } + @PowerNukkitOnly @Override public void setSignDirection(CompassRoseDirection direction) { setBlockFace(direction.getClosestBlockFace()); } + @PowerNukkitOnly @Override public CompassRoseDirection getSignDirection() { return getBlockFace().getCompassRoseDirection(); diff --git a/src/main/java/cn/nukkit/block/BlockWarpedSignPost.java b/src/main/java/cn/nukkit/block/BlockWarpedSignPost.java index bd74d265ca1..3e4d572b16d 100644 --- a/src/main/java/cn/nukkit/block/BlockWarpedSignPost.java +++ b/src/main/java/cn/nukkit/block/BlockWarpedSignPost.java @@ -24,6 +24,7 @@ public int getId() { return WARPED_STANDING_SIGN; } + @PowerNukkitOnly @Override public int getWallId() { return WARPED_WALL_SIGN; diff --git a/src/main/java/cn/nukkit/block/BlockWarpedWallSign.java b/src/main/java/cn/nukkit/block/BlockWarpedWallSign.java index 65c612d812f..3d48cd5d185 100644 --- a/src/main/java/cn/nukkit/block/BlockWarpedWallSign.java +++ b/src/main/java/cn/nukkit/block/BlockWarpedWallSign.java @@ -25,6 +25,7 @@ public int getId() { return WARPED_WALL_SIGN; } + @PowerNukkitOnly @Override protected int getPostId() { return WARPED_STANDING_SIGN; diff --git a/src/main/java/cn/nukkit/block/BlockWater.java b/src/main/java/cn/nukkit/block/BlockWater.java index 4c377c4969c..002e339d943 100644 --- a/src/main/java/cn/nukkit/block/BlockWater.java +++ b/src/main/java/cn/nukkit/block/BlockWater.java @@ -89,6 +89,7 @@ public int tickRate() { return 5; } + @PowerNukkitOnly @Override public boolean usesWaterLogging() { return true; diff --git a/src/main/java/cn/nukkit/block/BlockWeightedPressurePlateHeavy.java b/src/main/java/cn/nukkit/block/BlockWeightedPressurePlateHeavy.java index 8e1ebb22dba..83cf4c669bf 100644 --- a/src/main/java/cn/nukkit/block/BlockWeightedPressurePlateHeavy.java +++ b/src/main/java/cn/nukkit/block/BlockWeightedPressurePlateHeavy.java @@ -1,6 +1,6 @@ package cn.nukkit.block; -import cn.nukkit.item.Item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.math.NukkitMath; import cn.nukkit.utils.BlockColor; @@ -46,6 +46,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockWeightedPressurePlateLight.java b/src/main/java/cn/nukkit/block/BlockWeightedPressurePlateLight.java index 0f0821bc448..61a6257d232 100644 --- a/src/main/java/cn/nukkit/block/BlockWeightedPressurePlateLight.java +++ b/src/main/java/cn/nukkit/block/BlockWeightedPressurePlateLight.java @@ -1,6 +1,6 @@ package cn.nukkit.block; -import cn.nukkit.item.Item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemTool; import cn.nukkit.math.NukkitMath; import cn.nukkit.utils.BlockColor; @@ -46,6 +46,7 @@ public int getToolType() { } @Override + @PowerNukkitOnly public int getToolTier() { return ItemTool.TIER_WOODEN; } diff --git a/src/main/java/cn/nukkit/block/BlockWitherRose.java b/src/main/java/cn/nukkit/block/BlockWitherRose.java index ed6de2e7795..7fe204ce15f 100644 --- a/src/main/java/cn/nukkit/block/BlockWitherRose.java +++ b/src/main/java/cn/nukkit/block/BlockWitherRose.java @@ -14,11 +14,14 @@ import javax.annotation.Nonnull; +@PowerNukkitOnly public class BlockWitherRose extends BlockFlower { + @PowerNukkitOnly public BlockWitherRose() { this(0); } + @PowerNukkitOnly public BlockWitherRose(int meta) { super(0); } @@ -36,6 +39,7 @@ public BlockProperties getProperties() { return CommonBlockProperties.EMPTY_PROPERTIES; } + @PowerNukkitOnly @Override public boolean canPlantOn(Block block) { return super.canPlantOn(block) || block.getId() == BlockID.NETHERRACK || block.getId() == BlockID.SOUL_SAND; diff --git a/src/main/java/cn/nukkit/block/BlockWood.java b/src/main/java/cn/nukkit/block/BlockWood.java index d61a5460d02..6284f98b207 100644 --- a/src/main/java/cn/nukkit/block/BlockWood.java +++ b/src/main/java/cn/nukkit/block/BlockWood.java @@ -8,6 +8,8 @@ import cn.nukkit.blockproperty.BlockProperty; import cn.nukkit.blockproperty.value.WoodType; import cn.nukkit.blockstate.BlockState; +import cn.nukkit.blockstate.IBlockState; +import cn.nukkit.blockstate.exception.InvalidBlockStateException; import cn.nukkit.utils.BlockColor; import javax.annotation.Nonnull; @@ -65,7 +67,7 @@ public double getHardness() { public double getResistance() { return 2; } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public WoodType getWoodType() { @@ -80,7 +82,31 @@ public void setWoodType(WoodType woodType) { @Override public String getName() { - return getWoodType().getEnglishName() + " Wood"; + return getWoodType().getEnglishName() + " Log"; + } + + @Since("1.5.1.0-PN") + @PowerNukkitOnly + @Nonnull + @Override + public Block forState(@Nonnull IBlockState state) throws InvalidBlockStateException { + int id = getId(); + if (id != LOG && id != LOG2) { + return super.forState(state); + } + + id = state.getBlockId(); + if (id != LOG && id != LOG2 || state.getBitSize() != 4) { + return super.forState(state); + } + + int exactInt = state.getExactIntStorage(); + if ((exactInt & 0b1100) == 0b1100) { + int increment = state.getBlockId() == BlockID.LOG? 0b000 : 0b100; + return BlockState.of(BlockID.WOOD_BARK, (exactInt & 0b11) + increment).getBlock(this, layer); + } + + return super.forState(state); } @Override @@ -93,6 +119,7 @@ public int getBurnAbility() { return 10; } + @PowerNukkitOnly @Override protected BlockState getStrippedState() { int strippedId; diff --git a/src/main/java/cn/nukkit/block/BlockWood2.java b/src/main/java/cn/nukkit/block/BlockWood2.java index 12ba9aecc24..e18b0b30d68 100644 --- a/src/main/java/cn/nukkit/block/BlockWood2.java +++ b/src/main/java/cn/nukkit/block/BlockWood2.java @@ -49,11 +49,13 @@ public BlockProperties getProperties() { return PROPERTIES; } + @PowerNukkitOnly @Override public WoodType getWoodType() { return getPropertyValue(NEW_LOG_TYPE); } + @PowerNukkitOnly @Override public void setWoodType(WoodType woodType) { setPropertyValue(NEW_LOG_TYPE, woodType); diff --git a/src/main/java/cn/nukkit/block/BlockWoodBark.java b/src/main/java/cn/nukkit/block/BlockWoodBark.java index 60535238234..75a2a0a1adf 100644 --- a/src/main/java/cn/nukkit/block/BlockWoodBark.java +++ b/src/main/java/cn/nukkit/block/BlockWoodBark.java @@ -51,14 +51,16 @@ public BlockProperties getProperties() { @Override public String getName() { - return (isStripped()? "Stripped ": "") + super.getName(); + return (isStripped()? "Stripped ": "") + getWoodType().getEnglishName() + " Wood"; } + @PowerNukkitOnly @Override public WoodType getWoodType() { return getPropertyValue(WoodType.PROPERTY); } + @PowerNukkitOnly @Override public void setWoodType(WoodType woodType) { setPropertyValue(WoodType.PROPERTY, woodType); diff --git a/src/main/java/cn/nukkit/block/BlockWoodStripped.java b/src/main/java/cn/nukkit/block/BlockWoodStripped.java index f6c660b2b92..a56d9c9aae2 100644 --- a/src/main/java/cn/nukkit/block/BlockWoodStripped.java +++ b/src/main/java/cn/nukkit/block/BlockWoodStripped.java @@ -34,6 +34,7 @@ public BlockProperties getProperties() { return PILLAR_PROPERTIES; } + @PowerNukkitOnly @Override protected BlockState getStrippedState() { return getCurrentState(); @@ -41,9 +42,10 @@ protected BlockState getStrippedState() { @Override public String getName() { - return "Stripped " + getWoodType() + " Log"; + return "Stripped " + super.getName(); } + @PowerNukkitOnly @Override public void setWoodType(WoodType woodType) { if (!woodType.equals(getWoodType())) { diff --git a/src/main/java/cn/nukkit/block/BlockWoodStrippedAcacia.java b/src/main/java/cn/nukkit/block/BlockWoodStrippedAcacia.java index 8e27a4860c9..43b0e05f57e 100644 --- a/src/main/java/cn/nukkit/block/BlockWoodStrippedAcacia.java +++ b/src/main/java/cn/nukkit/block/BlockWoodStrippedAcacia.java @@ -21,6 +21,7 @@ public int getId() { return STRIPPED_ACACIA_LOG; } + @PowerNukkitOnly @Override public WoodType getWoodType() { return WoodType.ACACIA; diff --git a/src/main/java/cn/nukkit/block/BlockWoodStrippedBirch.java b/src/main/java/cn/nukkit/block/BlockWoodStrippedBirch.java index 8444849c055..caa0181a82d 100644 --- a/src/main/java/cn/nukkit/block/BlockWoodStrippedBirch.java +++ b/src/main/java/cn/nukkit/block/BlockWoodStrippedBirch.java @@ -20,6 +20,7 @@ public int getId() { return STRIPPED_BIRCH_LOG; } + @PowerNukkitOnly @Override public WoodType getWoodType() { return WoodType.BIRCH; diff --git a/src/main/java/cn/nukkit/block/BlockWoodStrippedDarkOak.java b/src/main/java/cn/nukkit/block/BlockWoodStrippedDarkOak.java index 5a648725f5f..b1408357e87 100644 --- a/src/main/java/cn/nukkit/block/BlockWoodStrippedDarkOak.java +++ b/src/main/java/cn/nukkit/block/BlockWoodStrippedDarkOak.java @@ -20,6 +20,7 @@ public int getId() { return STRIPPED_DARK_OAK_LOG; } + @PowerNukkitOnly @Override public WoodType getWoodType() { return WoodType.DARK_OAK; diff --git a/src/main/java/cn/nukkit/block/BlockWoodStrippedJungle.java b/src/main/java/cn/nukkit/block/BlockWoodStrippedJungle.java index 40202205bcd..83e7517995c 100644 --- a/src/main/java/cn/nukkit/block/BlockWoodStrippedJungle.java +++ b/src/main/java/cn/nukkit/block/BlockWoodStrippedJungle.java @@ -20,6 +20,7 @@ public int getId() { return STRIPPED_JUNGLE_LOG; } + @PowerNukkitOnly @Override public WoodType getWoodType() { return WoodType.JUNGLE; diff --git a/src/main/java/cn/nukkit/block/BlockWoodStrippedOak.java b/src/main/java/cn/nukkit/block/BlockWoodStrippedOak.java index aeb5903b1e7..b46315be3a0 100644 --- a/src/main/java/cn/nukkit/block/BlockWoodStrippedOak.java +++ b/src/main/java/cn/nukkit/block/BlockWoodStrippedOak.java @@ -20,6 +20,7 @@ public int getId() { return STRIPPED_OAK_LOG; } + @PowerNukkitOnly @Override public WoodType getWoodType() { return WoodType.OAK; diff --git a/src/main/java/cn/nukkit/block/BlockWoodStrippedSpruce.java b/src/main/java/cn/nukkit/block/BlockWoodStrippedSpruce.java index d9379e92a2a..c40c71e408a 100644 --- a/src/main/java/cn/nukkit/block/BlockWoodStrippedSpruce.java +++ b/src/main/java/cn/nukkit/block/BlockWoodStrippedSpruce.java @@ -20,6 +20,7 @@ public int getId() { return STRIPPED_SPRUCE_LOG; } + @PowerNukkitOnly @Override public WoodType getWoodType() { return WoodType.SPRUCE; diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntity.java b/src/main/java/cn/nukkit/blockentity/BlockEntity.java index b28c4d92955..874020959fd 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntity.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntity.java @@ -11,6 +11,7 @@ import cn.nukkit.level.format.FullChunk; import cn.nukkit.math.Vector3; import cn.nukkit.nbt.tag.CompoundTag; +import cn.nukkit.scheduler.Task; import cn.nukkit.utils.ChunkException; import co.aikar.timings.Timing; import co.aikar.timings.Timings; @@ -121,10 +122,12 @@ protected void initBlockEntity() { } + @PowerNukkitOnly public static BlockEntity createBlockEntity(String type, Position position, Object... args) { return createBlockEntity(type, position, BlockEntity.getDefaultCompound(position, type), args); } + @PowerNukkitOnly public static BlockEntity createBlockEntity(String type, Position pos, CompoundTag nbt, Object... args) { return createBlockEntity(type, pos.getLevel().getChunk(pos.getFloorX() >> 4, pos.getFloorZ() >> 4), nbt, args); } @@ -249,7 +252,8 @@ public void close() { public void onBreak() { } - + + @PowerNukkitOnly public void onBreak(boolean isSilkTouch) { onBreak(); } @@ -258,7 +262,14 @@ public void setDirty() { chunk.setChanged(); if (this.getLevelBlock().getId() != BlockID.AIR) { - this.level.updateComparatorOutputLevelSelective(this, isObservable()); + getLevel().getServer().getScheduler().scheduleTask(new Task() { + @Override + public void onRun(int currentTick) { + if (isValid() && isBlockEntityValid()) { + getLevel().updateComparatorOutputLevelSelective(BlockEntity.this, isObservable()); + } + } + }); } } @@ -287,6 +298,7 @@ public static CompoundTag getDefaultCompound(Vector3 pos, String id) { .putInt("z", pos.getFloorZ()); } + @PowerNukkitOnly @Nullable @Override public final BlockEntity getLevelBlockEntity() { diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntityBarrel.java b/src/main/java/cn/nukkit/blockentity/BlockEntityBarrel.java index 7117174331d..df1281f3d57 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntityBarrel.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntityBarrel.java @@ -1,12 +1,15 @@ package cn.nukkit.blockentity; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockID; import cn.nukkit.inventory.BarrelInventory; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; +@PowerNukkitOnly public class BlockEntityBarrel extends BlockEntitySpawnableContainer implements BlockEntityNameable { + @PowerNukkitOnly public BlockEntityBarrel(FullChunk chunk, CompoundTag nbt) { super(chunk, nbt); } diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntityBeacon.java b/src/main/java/cn/nukkit/blockentity/BlockEntityBeacon.java index a67d081da5f..718e6a4f019 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntityBeacon.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntityBeacon.java @@ -152,7 +152,7 @@ private boolean hasSkyAccess() { //Check every block from our y coord to the top of the world for (int y = tileY + 1; y <= 255; y++) { int testBlockId = level.getBlockIdAt(tileX, y, tileZ); - if (!Block.transparent[testBlockId]) { + if (!Block.isTransparent(testBlockId)) { //There is no sky access return false; } diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntityBeehive.java b/src/main/java/cn/nukkit/blockentity/BlockEntityBeehive.java index 97627076ac7..ffd01ab16c7 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntityBeehive.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntityBeehive.java @@ -311,7 +311,8 @@ public void onBreak() { } } } - + + @PowerNukkitOnly @Override public void onBreak(boolean isSilkTouch) { if (!isSilkTouch) { diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntityBell.java b/src/main/java/cn/nukkit/blockentity/BlockEntityBell.java index 128ffdfcf95..c1bcd2dbe26 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntityBell.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntityBell.java @@ -1,6 +1,7 @@ package cn.nukkit.blockentity; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.level.Sound; import cn.nukkit.level.format.FullChunk; @@ -11,13 +12,15 @@ import java.util.ArrayList; import java.util.List; +@PowerNukkitOnly public class BlockEntityBell extends BlockEntitySpawnable { private boolean ringing; private int direction; private int ticks; - public final List spawnExceptions = new ArrayList<>(2); + @PowerNukkitOnly public final List spawnExceptions = new ArrayList<>(2); + @PowerNukkitOnly public BlockEntityBell(FullChunk chunk, CompoundTag nbt) { super(chunk, nbt); } @@ -92,10 +95,12 @@ private void spawnToAllWithExceptions() { } } + @PowerNukkitOnly public boolean isRinging() { return ringing; } + @PowerNukkitOnly public void setRinging(boolean ringing) { if (this.level != null && this.ringing != ringing) { this.ringing = ringing; @@ -103,18 +108,22 @@ public void setRinging(boolean ringing) { } } + @PowerNukkitOnly public int getDirection() { return direction; } + @PowerNukkitOnly public void setDirection(int direction) { this.direction = direction; } + @PowerNukkitOnly public int getTicks() { return ticks; } + @PowerNukkitOnly public void setTicks(int ticks) { this.ticks = ticks; } diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntityBlastFurnace.java b/src/main/java/cn/nukkit/blockentity/BlockEntityBlastFurnace.java index eaf3454c45f..d1bc9ef7759 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntityBlastFurnace.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntityBlastFurnace.java @@ -1,5 +1,6 @@ package cn.nukkit.blockentity; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.inventory.InventoryType; import cn.nukkit.inventory.SmeltingRecipe; @@ -7,41 +8,50 @@ import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; +@PowerNukkitOnly public class BlockEntityBlastFurnace extends BlockEntityFurnace { + @PowerNukkitOnly public BlockEntityBlastFurnace(FullChunk chunk, CompoundTag nbt) { super(chunk, nbt); } + @PowerNukkitOnly @Override protected String getFurnaceName() { return "Blast Furnace"; } + @PowerNukkitOnly @Override protected String getClientName() { return BLAST_FURNACE; } + @PowerNukkitOnly @Override protected int getIdleBlockId() { return Block.BLAST_FURNACE; } + @PowerNukkitOnly @Override protected int getBurningBlockId() { return Block.LIT_BLAST_FURNACE; } + @PowerNukkitOnly @Override protected InventoryType getInventoryType() { return InventoryType.BLAST_FURNACE; } + @PowerNukkitOnly @Override protected SmeltingRecipe matchRecipe(Item raw) { return this.server.getCraftingManager().matchBlastFurnaceRecipe(raw); } + @PowerNukkitOnly @Override protected int getSpeedMultiplier() { return 2; diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntityCampfire.java b/src/main/java/cn/nukkit/blockentity/BlockEntityCampfire.java index 80d76a8184f..3b657de6104 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntityCampfire.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntityCampfire.java @@ -1,6 +1,7 @@ package cn.nukkit.blockentity; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.block.BlockAir; import cn.nukkit.block.BlockCampfire; @@ -19,6 +20,7 @@ import java.util.HashSet; import java.util.concurrent.ThreadLocalRandom; +@PowerNukkitOnly public class BlockEntityCampfire extends BlockEntitySpawnable implements InventoryHolder, BlockEntityContainer { private CampfireInventory inventory; @@ -26,6 +28,7 @@ public class BlockEntityCampfire extends BlockEntitySpawnable implements Invento private CampfireRecipe[] recipes; private boolean[] keepItem; + @PowerNukkitOnly public BlockEntityCampfire(FullChunk chunk, CompoundTag nbt) { super(chunk, nbt); } @@ -105,6 +108,7 @@ public boolean onUpdate() { return needsUpdate; } + @PowerNukkitOnly public boolean getKeepItem(int slot) { if (slot < 0 || slot >= keepItem.length) { return false; @@ -112,6 +116,7 @@ public boolean getKeepItem(int slot) { return keepItem[slot]; } + @PowerNukkitOnly public void setKeepItem(int slot, boolean keep) { if (slot < 0 || slot >= keepItem.length) { return; @@ -138,6 +143,7 @@ public void saveNBT() { super.saveNBT(); } + @PowerNukkitOnly public void setRecipe(int index, CampfireRecipe recipe) { this.recipes[index] = recipe; } diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntityCauldron.java b/src/main/java/cn/nukkit/blockentity/BlockEntityCauldron.java index 002aada97fa..45184e6d78a 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntityCauldron.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntityCauldron.java @@ -28,22 +28,27 @@ public class BlockEntityCauldron extends BlockEntitySpawnable { @PowerNukkitDifference(since = "1.4.0.0-PN", info = "Using -1 instead of the overflown 0xFFFF") @Deprecated @DeprecationDetails(by = "PowerNukkit", since = "1.4.0.0-PN", reason = "Magic value", replaceWith = "PotionType") + @PowerNukkitOnly public static final int POTION_TYPE_EMPTY = -1; @Deprecated @DeprecationDetails(by = "PowerNukkit", since = "1.4.0.0-PN", reason = "Magic value", replaceWith = "PotionType") + @PowerNukkitOnly public static final int POTION_TYPE_NORMAL = 0; @Deprecated @DeprecationDetails(by = "PowerNukkit", since = "1.4.0.0-PN", reason = "Magic value", replaceWith = "PotionType") + @PowerNukkitOnly public static final int POTION_TYPE_SPLASH = 1; @Deprecated @DeprecationDetails(by = "PowerNukkit", since = "1.4.0.0-PN", reason = "Magic value", replaceWith = "PotionType") + @PowerNukkitOnly public static final int POTION_TYPE_LINGERING = 2; @Deprecated @DeprecationDetails(by = "PowerNukkit", since = "1.4.0.0-PN", reason = "Magic value", replaceWith = "PotionType") + @PowerNukkitOnly public static final int POTION_TYPE_LAVA = 0xF19B; public BlockEntityCauldron(FullChunk chunk, CompoundTag nbt) { @@ -84,11 +89,13 @@ public void setPotionId(int potionId) { public boolean hasPotion() { return (getPotionId() & 0xffff) != 0xffff; } - + + @PowerNukkitOnly public void setPotionType(int potionType) { this.namedTag.putShort("PotionType", (short)(potionType & 0xFFFF)); } - + + @PowerNukkitOnly public int getPotionType() { return (short)(this.namedTag.getShort("PotionType") & 0xFFFF); } diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntityConduit.java b/src/main/java/cn/nukkit/blockentity/BlockEntityConduit.java index 72f57883770..23c35e33596 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntityConduit.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntityConduit.java @@ -1,5 +1,6 @@ package cn.nukkit.blockentity; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.block.BlockID; import cn.nukkit.entity.Entity; @@ -24,7 +25,9 @@ import java.util.List; import java.util.concurrent.ThreadLocalRandom; +@PowerNukkitOnly public class BlockEntityConduit extends BlockEntitySpawnable { + @PowerNukkitOnly public static IntSet VALID_STRUCTURE_BLOCKS = new IntOpenHashSet(new int[]{ BlockID.PRISMARINE, BlockID.SEA_LANTERN @@ -35,6 +38,7 @@ public class BlockEntityConduit extends BlockEntitySpawnable { private boolean active; private int validBlocks; + @PowerNukkitOnly public BlockEntityConduit(FullChunk chunk, CompoundTag nbt) { super(chunk, nbt); } @@ -117,10 +121,12 @@ public boolean isBlockEntityValid() { return getBlock().getId() == BlockID.CONDUIT; } + @PowerNukkitOnly public void setTargetEntity(Entity targetEntity) { this.targetEntity = targetEntity; } + @PowerNukkitOnly public Entity getTargetEntity() { return targetEntity; } @@ -130,10 +136,12 @@ public Entity getTargetEntity() { this.active = active; }*/ + @PowerNukkitOnly public boolean isActive() { return active; } + @PowerNukkitOnly public void addEffectToPlayers() { int radius = getPlayerRadius(); if (radius <= 0) { @@ -155,6 +163,7 @@ public void addEffectToPlayers() { ); } + @PowerNukkitOnly public void attackMob() { int radius = getAttackRadius(); if (radius <= 0) { @@ -196,10 +205,12 @@ public void attackMob() { } } + @PowerNukkitOnly public boolean canAttack(Entity target) { return target instanceof EntityMob && canAffect(target); } + @PowerNukkitOnly public boolean canAffect(Entity target) { return target.isTouchingWater() || target.level.isRaining() && target.level.canBlockSeeSky(target) @@ -285,6 +296,7 @@ private int scanFrame() { return validBlocks; } + @PowerNukkitOnly public List scanEdgeBlock() { List validBlocks = new ArrayList<>(); int x = getFloorX(); @@ -316,6 +328,7 @@ public List scanEdgeBlock() { return validBlocks; } + @PowerNukkitOnly public boolean scanStructure() { if(!scanWater()) { this.validBlocks = 0; @@ -333,15 +346,18 @@ public boolean scanStructure() { return true; } + @PowerNukkitOnly public int getValidBlocks() { return validBlocks; } + @PowerNukkitOnly public int getPlayerRadius() { int radius = validBlocks / 7; return radius * 16; } + @PowerNukkitOnly public int getAttackRadius() { if (validBlocks >= 42) { return 8; diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntityDaylightDetector.java b/src/main/java/cn/nukkit/blockentity/BlockEntityDaylightDetector.java index f66c2987b90..d8105efebdc 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntityDaylightDetector.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntityDaylightDetector.java @@ -1,13 +1,16 @@ package cn.nukkit.blockentity; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.block.BlockDaylightDetector; import cn.nukkit.block.BlockID; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; +@PowerNukkitOnly public class BlockEntityDaylightDetector extends BlockEntity { + @PowerNukkitOnly public BlockEntityDaylightDetector(FullChunk chunk, CompoundTag nbt) { super(chunk, nbt); } diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntityDispenser.java b/src/main/java/cn/nukkit/blockentity/BlockEntityDispenser.java index 66ea11a535d..8d1877ad1d2 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntityDispenser.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntityDispenser.java @@ -1,27 +1,27 @@ package cn.nukkit.blockentity; -import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockID; import cn.nukkit.inventory.DispenserInventory; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; -@PowerNukkitDifference(info = "Extends BlockEntityEjectable instead of " + - "BlockEntitySpawnable, BlockEntityContainer, BlockEntityNameable, and InventoryHolder " + - "only in PowerNukkit", since = "1.4.0.0-PN") +@PowerNukkitOnly public class BlockEntityDispenser extends BlockEntityEjectable { - protected DispenserInventory inventory; - + @PowerNukkitOnly public BlockEntityDispenser(FullChunk chunk, CompoundTag nbt) { super(chunk, nbt); } + @PowerNukkitOnly @Override protected DispenserInventory createInventory() { - return inventory = new DispenserInventory(this); + inventory = new DispenserInventory(this); + return getInventory(); } + @PowerNukkitOnly @Override protected String getBlockEntityName() { return BlockEntity.DISPENSER; @@ -29,7 +29,7 @@ protected String getBlockEntityName() { @Override public DispenserInventory getInventory() { - return inventory; + return (DispenserInventory) inventory; } @Override diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntityDropper.java b/src/main/java/cn/nukkit/blockentity/BlockEntityDropper.java index 87681196f30..5e28ca02f4a 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntityDropper.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntityDropper.java @@ -1,27 +1,27 @@ package cn.nukkit.blockentity; -import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockID; import cn.nukkit.inventory.DropperInventory; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; -@PowerNukkitDifference(info = "Extends BlockEntityEjectable instead of " + - "BlockEntitySpawnable, BlockEntityContainer, BlockEntityNameable, and InventoryHolder " + - "only in PowerNukkit", since = "1.4.0.0-PN") +@PowerNukkitOnly public class BlockEntityDropper extends BlockEntityEjectable { - protected DropperInventory inventory; - + @PowerNukkitOnly public BlockEntityDropper(FullChunk chunk, CompoundTag nbt) { super(chunk, nbt); } + @PowerNukkitOnly @Override protected DropperInventory createInventory() { - return inventory = new DropperInventory(this); + inventory = new DropperInventory(this); + return getInventory(); } + @PowerNukkitOnly @Override protected String getBlockEntityName() { return BlockEntity.DISPENSER; @@ -29,7 +29,7 @@ protected String getBlockEntityName() { @Override public DropperInventory getInventory() { - return inventory; + return (DropperInventory) inventory; } @Override diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntityFurnace.java b/src/main/java/cn/nukkit/blockentity/BlockEntityFurnace.java index 124299199fa..b19e797e8e5 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntityFurnace.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntityFurnace.java @@ -1,6 +1,7 @@ package cn.nukkit.blockentity; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.block.BlockID; import cn.nukkit.event.inventory.FurnaceBurnEvent; @@ -36,6 +37,7 @@ public BlockEntityFurnace(FullChunk chunk, CompoundTag nbt) { super(chunk, nbt); } + @PowerNukkitOnly protected InventoryType getInventoryType() { return InventoryType.FURNACE; } @@ -89,10 +91,12 @@ protected void initBlockEntity() { super.initBlockEntity(); } + @PowerNukkitOnly protected String getFurnaceName() { return "Furnace"; } + @PowerNukkitOnly protected String getClientName() { return FURNACE; } @@ -203,14 +207,17 @@ public FurnaceInventory getInventory() { return inventory; } + @PowerNukkitOnly protected int getIdleBlockId() { return Block.FURNACE; } + @PowerNukkitOnly protected int getBurningBlockId() { return Block.LIT_FURNACE; } + @PowerNukkitOnly protected void setBurning(boolean burning) { if (burning) { if (this.getBlock().getId() == getIdleBlockId()) { @@ -247,10 +254,12 @@ protected void checkFuel(Item fuel) { } } + @PowerNukkitOnly protected SmeltingRecipe matchRecipe(Item raw) { return this.server.getCraftingManager().matchFurnaceRecipe(raw); } + @PowerNukkitOnly protected int getSpeedMultiplier() { return 1; } diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntityItemFrame.java b/src/main/java/cn/nukkit/blockentity/BlockEntityItemFrame.java index b2f9673dfe8..6ea17aaf5d3 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntityItemFrame.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntityItemFrame.java @@ -90,6 +90,7 @@ public void setItemDropChance(float chance) { this.namedTag.putFloat("ItemDropChance", chance); } + @Override public void setDirty() { this.spawnToAll(); super.setDirty(); diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntityLectern.java b/src/main/java/cn/nukkit/blockentity/BlockEntityLectern.java index c3ed5fc0df9..f691a3aeaf3 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntityLectern.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntityLectern.java @@ -1,6 +1,7 @@ package cn.nukkit.blockentity; import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockAir; import cn.nukkit.block.BlockID; import cn.nukkit.utils.RedstoneComponent; @@ -11,10 +12,12 @@ import cn.nukkit.nbt.tag.CompoundTag; import cn.nukkit.nbt.tag.IntTag; +@PowerNukkitOnly public class BlockEntityLectern extends BlockEntitySpawnable { private int totalPages; + @PowerNukkitOnly public BlockEntityLectern(FullChunk chunk, CompoundTag nbt) { super(chunk, nbt); } @@ -64,10 +67,12 @@ public void onBreak() { level.dropItem(this, getBook()); } + @PowerNukkitOnly public boolean hasBook() { return this.namedTag.contains("book") && this.namedTag.get("book") instanceof CompoundTag; } + @PowerNukkitOnly public Item getBook() { if (!hasBook()) { return new ItemBlock(new BlockAir(), 0, 0); @@ -76,6 +81,7 @@ public Item getBook() { } } + @PowerNukkitOnly public void setBook(Item item) { if (item.getId() == Item.WRITTEN_BOOK || item.getId() == Item.BOOK_AND_QUILL) { this.namedTag.putCompound("book", NBTIO.putItemHelper(item)); @@ -86,31 +92,38 @@ public void setBook(Item item) { updateTotalPages(); } + @PowerNukkitOnly public int getLeftPage() { return (getRawPage() * 2) + 1; } + @PowerNukkitOnly public int getRightPage() { return getLeftPage() + 1; } + @PowerNukkitOnly public void setLeftPage(int newLeftPage) { setRawPage((newLeftPage - 1) /2); } + @PowerNukkitOnly public void setRightPage(int newRightPage) { setLeftPage(newRightPage -1); } + @PowerNukkitOnly public void setRawPage(int page) { this.namedTag.putInt("page", Math.min(page, totalPages)); this.getLevel().updateAround(this); } + @PowerNukkitOnly public int getRawPage() { return this.namedTag.getInt("page"); } + @PowerNukkitOnly public int getTotalPages() { return totalPages; } diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntityMovingBlock.java b/src/main/java/cn/nukkit/blockentity/BlockEntityMovingBlock.java index 144672200f0..2c056eeab5d 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntityMovingBlock.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntityMovingBlock.java @@ -20,6 +20,7 @@ */ public class BlockEntityMovingBlock extends BlockEntitySpawnable { + @PowerNukkitOnly protected String blockString; protected Block block; @@ -49,6 +50,7 @@ protected void initBlockEntity() { super.initBlockEntity(); } + @PowerNukkitOnly @Deprecated @DeprecationDetails(by = "PowerNukkit", since = "1.4.0.0-PN", reason = "renamed", replaceWith = "getMovingBlockEntityCompound()") public CompoundTag getBlockEntity() { return getMovingBlockEntityCompound(); @@ -65,14 +67,17 @@ public CompoundTag getMovingBlockEntityCompound() { return null; } + @PowerNukkitOnly public Block getMovingBlock() { return this.block; } + @PowerNukkitOnly public String getMovingBlockString() { return this.blockString; } + @PowerNukkitOnly public void moveCollidedEntities(BlockEntityPistonArm piston, BlockFace moveDirection) { AxisAlignedBB bb = block.getBoundingBox(); diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntityPistonArm.java b/src/main/java/cn/nukkit/blockentity/BlockEntityPistonArm.java index ecdf66da1c4..cd346d27cf0 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntityPistonArm.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntityPistonArm.java @@ -7,7 +7,6 @@ import cn.nukkit.block.Block; import cn.nukkit.block.BlockAir; import cn.nukkit.block.BlockID; -import cn.nukkit.utils.RedstoneComponent; import cn.nukkit.entity.Entity; import cn.nukkit.event.entity.EntityMoveByPistonEvent; import cn.nukkit.level.Level; @@ -20,17 +19,21 @@ import cn.nukkit.nbt.tag.IntTag; import cn.nukkit.nbt.tag.ListTag; import cn.nukkit.utils.Faceable; +import cn.nukkit.utils.RedstoneComponent; import java.util.ArrayList; import java.util.List; +import static cn.nukkit.utils.Utils.dynamic; + /** * @author CreeperFace */ @PowerNukkitDifference(info = "The piston will work as close as possible to vanilla") public class BlockEntityPistonArm extends BlockEntitySpawnable { - public static final float MOVE_STEP = Float.valueOf(0.5f); + @PowerNukkitOnly + public static final float MOVE_STEP = dynamic(0.5f); public float progress; public float lastProgress = 1; @@ -41,9 +44,13 @@ public class BlockEntityPistonArm extends BlockEntitySpawnable { public boolean sticky; - public int state; - public int newState = 1; + @Since("1.6.0.0-PN") + public byte state; + + @Since("1.6.0.0-PN") + public byte newState = 1; + @PowerNukkitOnly public List attachedBlocks; public boolean powered; @@ -155,12 +162,11 @@ void moveEntity(Entity entity, BlockFace moveDirection) { } } - @PowerNukkitDifference(info = "Trigger observer (with #setDirty()).", since = "1.4.0.0-PN") - @PowerNukkitDifference(info = "Add option to see if blockentity is currently handling piston move (var finished)") + @PowerNukkitOnly public void move(boolean extending, List attachedBlocks) { this.extending = extending; this.lastProgress = this.progress = extending ? 0 : 1; - this.state = this.newState = extending ? 1 : 3; + this.state = this.newState = (byte) (extending ? 1 : 3); this.attachedBlocks = attachedBlocks; this.movable = false; this.finished = false; @@ -189,7 +195,7 @@ public boolean onUpdate() { this.moveCollidedEntities(); if (this.progress == this.lastProgress) { - this.state = this.newState = extending ? 2 : 0; + this.state = this.newState = (byte) (extending ? 2 : 0); BlockFace pushDir = this.extending ? facing : facing.getOpposite(); @@ -217,7 +223,7 @@ public boolean onUpdate() { } if (!extending) { - if (this.level.getBlock(getSide(facing)).getId() == (sticky? BlockID.PISTON_HEAD_STICKY : BlockID.PISTON_HEAD)) { + if (this.level.getBlock(getSide(facing)).getId() == (sticky? BlockID.STICKY_PISTON_ARM_COLLISION : BlockID.PISTON_ARM_COLLISION)) { this.level.setBlock(getSide(facing), new BlockAir()); } this.movable = true; @@ -238,11 +244,13 @@ private float getExtendedProgress(float progress) { return this.extending ? progress - 1 : 1 - progress; } + @Override public boolean isBlockEntityValid() { int id = getLevelBlock().getId(); return id == BlockID.PISTON || id == BlockID.STICKY_PISTON; } + @Override public void saveNBT() { super.saveNBT(); this.namedTag.putByte("State", this.state); @@ -254,6 +262,7 @@ public void saveNBT() { this.namedTag.putInt("facing", this.facing.getIndex()); } + @Override public CompoundTag getSpawnCompound() { return new CompoundTag() .putString("id", BlockEntity.PISTON_ARM) diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntitySmoker.java b/src/main/java/cn/nukkit/blockentity/BlockEntitySmoker.java index c114796dd3e..c8c57fd5924 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntitySmoker.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntitySmoker.java @@ -1,5 +1,6 @@ package cn.nukkit.blockentity; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.inventory.InventoryType; import cn.nukkit.inventory.SmeltingRecipe; @@ -7,41 +8,50 @@ import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; +@PowerNukkitOnly public class BlockEntitySmoker extends BlockEntityFurnace { + @PowerNukkitOnly public BlockEntitySmoker(FullChunk chunk, CompoundTag nbt) { super(chunk, nbt); } + @PowerNukkitOnly @Override protected String getFurnaceName() { return "Smoker"; } + @PowerNukkitOnly @Override protected String getClientName() { return SMOKER; } + @PowerNukkitOnly @Override protected int getIdleBlockId() { return Block.SMOKER; } + @PowerNukkitOnly @Override protected int getBurningBlockId() { return Block.LIT_SMOKER; } + @PowerNukkitOnly @Override protected InventoryType getInventoryType() { return InventoryType.SMOKER; } + @PowerNukkitOnly @Override protected SmeltingRecipe matchRecipe(Item raw) { return this.server.getCraftingManager().matchSmokerRecipe(raw); } + @PowerNukkitOnly @Override protected int getSpeedMultiplier() { return 2; diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntitySpawnable.java b/src/main/java/cn/nukkit/blockentity/BlockEntitySpawnable.java index 146c4d0c8f4..8f1d1f3f517 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntitySpawnable.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntitySpawnable.java @@ -1,6 +1,7 @@ package cn.nukkit.blockentity; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.NBTIO; import cn.nukkit.nbt.tag.CompoundTag; @@ -37,10 +38,12 @@ public void spawnTo(Player player) { player.dataPacket(getSpawnPacket()); } + @PowerNukkitOnly public BlockEntityDataPacket getSpawnPacket() { return getSpawnPacket(null); } + @PowerNukkitOnly public BlockEntityDataPacket getSpawnPacket(CompoundTag nbt) { if (nbt == null) { nbt = this.getSpawnCompound(); diff --git a/src/main/java/cn/nukkit/blockentity/BlockEntitySpawnableContainer.java b/src/main/java/cn/nukkit/blockentity/BlockEntitySpawnableContainer.java index 477a6d1b939..1805583560b 100644 --- a/src/main/java/cn/nukkit/blockentity/BlockEntitySpawnableContainer.java +++ b/src/main/java/cn/nukkit/blockentity/BlockEntitySpawnableContainer.java @@ -1,6 +1,7 @@ package cn.nukkit.blockentity; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockAir; import cn.nukkit.inventory.ContainerInventory; import cn.nukkit.inventory.InventoryHolder; @@ -13,9 +14,12 @@ import java.util.HashSet; +@PowerNukkitOnly public abstract class BlockEntitySpawnableContainer extends BlockEntitySpawnable implements InventoryHolder, BlockEntityContainer { + @PowerNukkitOnly protected ContainerInventory inventory; + @PowerNukkitOnly public BlockEntitySpawnableContainer(FullChunk chunk, CompoundTag nbt) { super(chunk, nbt); } @@ -61,6 +65,7 @@ public void saveNBT() { } } + @PowerNukkitOnly protected int getSlotIndex(int index) { ListTag list = this.namedTag.getList("Items", CompoundTag.class); for (int i = 0; i < list.size(); i++) { diff --git a/src/main/java/cn/nukkit/blockproperty/ArrayBlockProperty.java b/src/main/java/cn/nukkit/blockproperty/ArrayBlockProperty.java index 171ed7987ae..66223af2aac 100644 --- a/src/main/java/cn/nukkit/blockproperty/ArrayBlockProperty.java +++ b/src/main/java/cn/nukkit/blockproperty/ArrayBlockProperty.java @@ -25,7 +25,10 @@ public final class ArrayBlockProperty extends BlockPrope @Nonnull private final E[] universe; - + + /** + * Nullable when {@link #ordinal} is {@code true. + */ private final String[] persistenceNames; private final Class eClass; @@ -123,6 +126,7 @@ public ArrayBlockProperty ordinal(boolean ordinal) { return new ArrayBlockProperty<>(getName(), isExportedToItem(), universe, getBitSize(), getPersistenceName(), ordinal); } + @PowerNukkitOnly @Override public int getMetaForValue(@Nullable E value) { if (value == null) { @@ -137,11 +141,13 @@ public int getMetaForValue(@Nullable E value) { } @Nonnull + @PowerNukkitOnly @Override public E getValueForMeta(int meta) { return universe[meta]; } + @PowerNukkitOnly @Override public int getIntValueForMeta(int meta) { try { @@ -153,6 +159,7 @@ public int getIntValueForMeta(int meta) { } @Nonnull + @PowerNukkitOnly @Override public String getPersistenceValueForMeta(int meta) { try { @@ -177,7 +184,7 @@ public int getMetaForPersistenceValue(String persistenceValue) { validateMetaDirectly(meta); } catch (IndexOutOfBoundsException|IllegalArgumentException e) { throw new InvalidBlockPropertyPersistenceValueException(this, null, persistenceValue, - "Expected a number from 0 to " + persistenceNames.length, e); + "Expected a number from 0 to " + (universe.length - 1), e); } return meta; } @@ -192,6 +199,7 @@ public int getMetaForPersistenceValue(String persistenceValue) { ); } + @PowerNukkitOnly @Override protected void validateDirectly(@Nullable E value) { for (E object : universe) { @@ -202,17 +210,20 @@ protected void validateDirectly(@Nullable E value) { throw new IllegalArgumentException(value+" is not valid for this property"); } + @PowerNukkitOnly @Override protected void validateMetaDirectly(int meta) { Preconditions.checkElementIndex(meta, universe.length); } + @PowerNukkitOnly @Nonnull @Override public Class getValueClass() { return eClass; } + @PowerNukkitOnly @Nonnull public E[] getUniverse() { return universe.clone(); diff --git a/src/main/java/cn/nukkit/blockproperty/BlockProperties.java b/src/main/java/cn/nukkit/blockproperty/BlockProperties.java index f8e25a76581..08d58b2fc29 100644 --- a/src/main/java/cn/nukkit/blockproperty/BlockProperties.java +++ b/src/main/java/cn/nukkit/blockproperty/BlockProperties.java @@ -523,6 +523,7 @@ public int getIntValue(BigInteger currentMeta, String propertyName) { * @throws NoSuchElementException If the property is not registered * @throws InvalidBlockPropertyMetaException If the meta contains invalid data */ + @PowerNukkitOnly public String getPersistenceValue(int currentMeta, String propertyName) { RegisteredBlockProperty registry = requireRegisteredProperty(propertyName); return registry.property.getPersistenceValue(currentMeta, registry.offset); @@ -532,6 +533,7 @@ public String getPersistenceValue(int currentMeta, String propertyName) { * @throws NoSuchElementException If the property is not registered * @throws InvalidBlockPropertyMetaException If the meta contains invalid data */ + @PowerNukkitOnly public String getPersistenceValue(long currentMeta, String propertyName) { RegisteredBlockProperty registry = requireRegisteredProperty(propertyName); return registry.property.getPersistenceValue(currentMeta, registry.offset); @@ -541,6 +543,7 @@ public String getPersistenceValue(long currentMeta, String propertyName) { * @throws NoSuchElementException If the property is not registered * @throws InvalidBlockPropertyMetaException If the meta contains invalid data */ + @PowerNukkitOnly public String getPersistenceValue(BigInteger currentMeta, String propertyName) { RegisteredBlockProperty registry = requireRegisteredProperty(propertyName); return registry.property.getPersistenceValue(currentMeta, registry.offset); diff --git a/src/main/java/cn/nukkit/blockproperty/BlockProperty.java b/src/main/java/cn/nukkit/blockproperty/BlockProperty.java index af7b0bc4f65..31f02c203b8 100644 --- a/src/main/java/cn/nukkit/blockproperty/BlockProperty.java +++ b/src/main/java/cn/nukkit/blockproperty/BlockProperty.java @@ -498,6 +498,15 @@ public String toString() { @Since("1.4.0.0-PN") public abstract boolean isDefaultValue(@Nullable T value); + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public final boolean isDefaultPersistentValue(@Nonnull String value) { + int meta = getMetaForPersistenceValue(value); + int intValue = getIntValueForMeta(meta); + int defaultIntValue = getDefaultIntValue(); + return intValue == defaultIntValue; + } + @PowerNukkitOnly @Since("1.4.0.0-PN") @Nonnull diff --git a/src/main/java/cn/nukkit/blockproperty/BooleanBlockProperty.java b/src/main/java/cn/nukkit/blockproperty/BooleanBlockProperty.java index 8e191b55eef..a0330d8aead 100644 --- a/src/main/java/cn/nukkit/blockproperty/BooleanBlockProperty.java +++ b/src/main/java/cn/nukkit/blockproperty/BooleanBlockProperty.java @@ -41,12 +41,14 @@ public BooleanBlockProperty exportingToItems(boolean exportedToItem) { return new BooleanBlockProperty(getName(), exportedToItem, getPersistenceName()); } + @PowerNukkitOnly @Override public int setValue(int currentMeta, int bitOffset, @Nullable Boolean newValue) { boolean value = newValue != null && newValue; return setValue(currentMeta, bitOffset, value); } + @PowerNukkitOnly @Override public long setValue(long currentBigMeta, int bitOffset, @Nullable Boolean newValue) { boolean value = newValue != null && newValue; @@ -68,11 +70,13 @@ public long setValue(long currentMeta, int bitOffset, boolean newValue) { } @Nonnull + @PowerNukkitOnly @Override public Boolean getValue(int currentMeta, int bitOffset) { return getBooleanValue(currentMeta, bitOffset); } + @PowerNukkitOnly @Nonnull @Override public Boolean getValue(long currentBigMeta, int bitOffset) { @@ -100,6 +104,7 @@ public boolean getBooleanValue(BigInteger currentHugeData, int bitOffset) { return mask.equals(currentHugeData.and(mask)); } + @PowerNukkitOnly @Override public int getIntValue(int currentMeta, int bitOffset) { return getBooleanValue(currentMeta, bitOffset)? 1 : 0; @@ -108,6 +113,7 @@ public int getIntValue(int currentMeta, int bitOffset) { /** * @throws InvalidBlockPropertyMetaException If the meta contains invalid data */ + @PowerNukkitOnly @Override public int getIntValueForMeta(int meta) { if (meta == 1 || meta == 0) { @@ -116,6 +122,7 @@ public int getIntValueForMeta(int meta) { throw new InvalidBlockPropertyMetaException(this, meta, meta, "Only 1 or 0 was expected"); } + @PowerNukkitOnly @Override public int getMetaForValue(@Nullable Boolean value) { return Boolean.TRUE.equals(value)? 1 : 0; @@ -125,6 +132,7 @@ public int getMetaForValue(@Nullable Boolean value) { * @throws InvalidBlockPropertyMetaException If the meta contains invalid data */ @Nonnull + @PowerNukkitOnly @Override public Boolean getValueForMeta(int meta) { return getBooleanValueForMeta(meta); @@ -145,6 +153,7 @@ public boolean getBooleanValueForMeta(int meta) { } } + @Override @PowerNukkitOnly @Since("1.4.0.0-PN") @Nonnull @@ -159,17 +168,20 @@ public boolean isDefaultValue(@Nullable Boolean value) { return value == null || Boolean.FALSE.equals(value); } + @PowerNukkitOnly @Override protected void validateMetaDirectly(int meta) { Preconditions.checkArgument(meta == 1 || meta == 0, "Must be 1 or 0"); } + @PowerNukkitOnly @Nonnull @Override public Class getValueClass() { return Boolean.class; } + @PowerNukkitOnly @Override public String getPersistenceValueForMeta(int meta) { if (meta == 1) { diff --git a/src/main/java/cn/nukkit/blockproperty/IntBlockProperty.java b/src/main/java/cn/nukkit/blockproperty/IntBlockProperty.java index 18436bd4b91..2387cdecc6a 100644 --- a/src/main/java/cn/nukkit/blockproperty/IntBlockProperty.java +++ b/src/main/java/cn/nukkit/blockproperty/IntBlockProperty.java @@ -65,6 +65,7 @@ public IntBlockProperty exportingToItems(boolean exportedToItem) { return new IntBlockProperty(getName(), exportedToItem, getMaxValue(), getMinValue(), getBitSize(), getPersistenceName()); } + @PowerNukkitOnly @Override public int getMetaForValue(@Nullable Integer value) { if (value == null) { @@ -84,12 +85,14 @@ public int getMetaForValue(int value) { return value - minValue; } + @PowerNukkitOnly @Nonnull @Override public Integer getValueForMeta(int meta) { return getIntValueForMeta(meta); } + @PowerNukkitOnly @Override public int getIntValueForMeta(int meta) { try { @@ -100,6 +103,7 @@ public int getIntValueForMeta(int meta) { return minValue + meta; } + @PowerNukkitOnly @Override public String getPersistenceValueForMeta(int meta) { return String.valueOf(getIntValueForMeta(meta)); @@ -116,6 +120,7 @@ public int getMetaForPersistenceValue(@Nonnull String persistenceValue) { } } + @PowerNukkitOnly @Override protected void validateDirectly(@Nullable Integer value) { if (value == null) { @@ -123,12 +128,13 @@ protected void validateDirectly(@Nullable Integer value) { } validateDirectly(value.intValue()); } - + private void validateDirectly(int newValue) { Preconditions.checkArgument(newValue >= minValue, "New value (%s) must be higher or equals to %s", newValue, minValue); Preconditions.checkArgument(maxValue >= newValue, "New value (%s) must be less or equals to %s", newValue, maxValue); } + @PowerNukkitOnly @Override protected void validateMetaDirectly(int meta) { int max = maxValue - minValue; @@ -153,6 +159,7 @@ public int getMinValue() { return minValue; } + @Override @PowerNukkitOnly @Since("1.4.0.0-PN") @Nonnull @@ -181,6 +188,7 @@ public boolean isDefaultValue(@Nullable Integer value) { return value == null || minValue == value; } + @PowerNukkitOnly @Nonnull @Override public Class getValueClass() { diff --git a/src/main/java/cn/nukkit/blockproperty/UnsignedIntBlockProperty.java b/src/main/java/cn/nukkit/blockproperty/UnsignedIntBlockProperty.java index 64987c13e13..fa40154f884 100644 --- a/src/main/java/cn/nukkit/blockproperty/UnsignedIntBlockProperty.java +++ b/src/main/java/cn/nukkit/blockproperty/UnsignedIntBlockProperty.java @@ -75,6 +75,7 @@ private static int addSign(long value) { return (int)(value & 0xFFFFFFFFL); } + @PowerNukkitOnly @Override public int getMetaForValue(@Nullable Integer value) { if (value == null) { @@ -89,12 +90,14 @@ public int getMetaForValue(@Nullable Integer value) { return (int) (unsigned - minValue); } + @PowerNukkitOnly @Nonnull @Override public Integer getValueForMeta(int meta) { return getIntValueForMeta(meta); } + @PowerNukkitOnly @Override public int getIntValueForMeta(int meta) { try { @@ -105,6 +108,7 @@ public int getIntValueForMeta(int meta) { return (int) (minValue + meta); } + @PowerNukkitOnly @Override public String getPersistenceValueForMeta(int meta) { return String.valueOf(removeSign(getIntValueForMeta(meta))); @@ -121,6 +125,7 @@ public int getMetaForPersistenceValue(@Nonnull String persistenceValue) { } } + @PowerNukkitOnly @Override protected void validateDirectly(@Nullable Integer value) { if (value == null) { @@ -137,12 +142,14 @@ private void validateDirectly(long unsigned) { Preconditions.checkArgument(maxValue >= unsigned, "New value (%s) must be less or equals to %s", unsigned, maxValue); } + @PowerNukkitOnly @Override protected void validateMetaDirectly(int meta) { long max = maxValue - minValue; Preconditions.checkArgument(0 <= meta && meta <= max, "The meta %s is outside the range of 0 .. ", meta, max); } + @PowerNukkitOnly @Nonnull @Override public Class getValueClass() { @@ -161,6 +168,7 @@ public long getMinValue() { return minValue; } + @Override @Nonnull @PowerNukkitOnly @Since("1.4.0.0-PN") diff --git a/src/main/java/cn/nukkit/blockstate/BigIntegerMutableBlockState.java b/src/main/java/cn/nukkit/blockstate/BigIntegerMutableBlockState.java index 11da0827f27..1dc673eb53c 100644 --- a/src/main/java/cn/nukkit/blockstate/BigIntegerMutableBlockState.java +++ b/src/main/java/cn/nukkit/blockstate/BigIntegerMutableBlockState.java @@ -31,6 +31,7 @@ @ToString(callSuper = true) @EqualsAndHashCode(callSuper = true) @ParametersAreNonnullByDefault +@PowerNukkitOnly public class BigIntegerMutableBlockState extends MutableBlockState { private static final Set> LONG_COMPATIBLE_CLASSES = new HashSet<>(Arrays.asList( Long.class, Integer.class, Short.class, Byte.class)); @@ -78,8 +79,6 @@ public void setDataStorageFromInt(@Nonnegative int storage) { this.storage = state; } - @Since("1.4.0.0-PN") - @PowerNukkitOnly @Override @API(definition = INTERNAL, usage = INCUBATING) void setDataStorageWithoutValidation(Number storage) { @@ -90,6 +89,7 @@ void setDataStorageWithoutValidation(Number storage) { } } + @PowerNukkitOnly @Override public void validate() { validate(storage); @@ -123,6 +123,7 @@ private void validate(BigInteger state) { @Deprecated @DeprecationDetails(reason = "Can't store all data, exists for backward compatibility reasons", since = "1.4.0.0-PN", replaceWith = "getDataStorage()") @Override + @PowerNukkitOnly public int getLegacyDamage() { return storage.and(BigInteger.valueOf(Block.DATA_MASK)).intValue(); } @@ -131,6 +132,7 @@ public int getLegacyDamage() { @Deprecated @DeprecationDetails(reason = "Can't store all data, exists for backward compatibility reasons", since = "1.4.0.0-PN", replaceWith = "getDataStorage()") @Override + @PowerNukkitOnly public int getBigDamage() { return storage.and(BigInteger.valueOf(BlockStateRegistry.BIG_META_MASK)).intValue(); } @@ -154,6 +156,7 @@ public BigInteger getHugeDamage() { return storage; } + @PowerNukkitOnly @Nonnegative @Nonnull @Override @@ -191,15 +194,18 @@ public void setIntValue(String propertyName, int value) { @Nonnull @Override + @PowerNukkitOnly public Serializable getPropertyValue(String propertyName) { return properties.getValue(storage, propertyName); } + @PowerNukkitOnly @Override public int getIntValue(String propertyName) { return properties.getIntValue(storage, propertyName); } + @PowerNukkitOnly @Override public boolean getBooleanValue(String propertyName) { return properties.getBooleanValue(storage, propertyName); @@ -211,10 +217,12 @@ public boolean getBooleanValue(String propertyName) { */ @Nonnull @Override + @PowerNukkitOnly public String getPersistenceValue(String propertyName) { return properties.getPersistenceValue(storage, propertyName); } + @PowerNukkitOnly @Nonnull @Override public BlockState getCurrentState() { @@ -228,6 +236,7 @@ public int getExactIntStorage() { return storage.intValueExact(); } + @PowerNukkitOnly @Nonnull @Override public BigIntegerMutableBlockState copy() { diff --git a/src/main/java/cn/nukkit/blockstate/BlockState.java b/src/main/java/cn/nukkit/blockstate/BlockState.java index 5cf42cdaad8..20caf6c9bba 100644 --- a/src/main/java/cn/nukkit/blockstate/BlockState.java +++ b/src/main/java/cn/nukkit/blockstate/BlockState.java @@ -154,8 +154,86 @@ public static BlockState of(@Nonnegative int blockId, @Nonnegative Number blockD throw new InvalidBlockStateDataTypeException(blockData); } } + + /** + *

Returns the {@link BlockState} object that represents the given {@code persistedStateId}. + * + *

Same as {@code of(persistedStateid, true}. + * + * @param persistedStateId Must follow the same syntax returned by {@link #getStateId()} or {@link #getLegacyStateId()} + * @throws InvalidBlockPropertyValueException If any property value in the given {@code persistedStateId} is not valid for the state. + * + * @return The block state, never null + */ + @PowerNukkitOnly + @Since("1.5.2.0-PN") + @Nonnull + public static BlockState of(@Nonnull String persistedStateId) { + return of(persistedStateId, true); + } + + /** + * Returns the {@link BlockState} object that represents the given {@code persistedStateId}. + * + * @param persistedStateId Must follow the same syntax returned by {@link #getStateId()} or {@link #getLegacyStateId()} + * @param useDefaultPropertyValues When {@code true}, the default value will be used for any missing {@link BlockProperty} + * in {@code persistedStateId}. + * @throws IllegalArgumentException If {@code useDefaultPropertyValues} is false and there are missing properties + * @throws InvalidBlockPropertyValueException If any property value in the given {@code persistedStateId} is not valid for the state. + * @throws NoSuchElementException If there are no block registered with the given id. + * + * @return The block state, never null + */ + @PowerNukkitOnly + @Since("1.5.2.0-PN") + @Nonnull + public static BlockState of(@Nonnull String persistedStateId, boolean useDefaultPropertyValues) { + String[] stateParts = persistedStateId.split(";"); + String namespacedId = stateParts[0]; + int id = Optional.ofNullable(BlockStateRegistry.getBlockId(namespacedId)) + .map(OptionalInt::of) + .orElse(OptionalInt.empty()) + .orElseThrow(()-> new NoSuchElementException("Block " + namespacedId + " not found.")); + + // Fast path + BlockState state = BlockState.of(id); + if (stateParts.length == 1 && useDefaultPropertyValues) { + return state; + } + + if (stateParts.length == 2 && (stateParts[1].startsWith("nukkit-unknown=") || stateParts[1].startsWith("unknown="))) { + BigInteger damage = new BigInteger(stateParts[1].split("=", 2)[1]); + return BlockState.of(id, damage); + } + + if (stateParts.length == 1 && state.getPropertyNames().isEmpty()) { + return state; + } + + if (useDefaultPropertyValues) { + for (int i = 1; i < stateParts.length; i++) { + String[] propertyKeyValue = stateParts[i].split("=", 2); + state = state.withProperty(propertyKeyValue[0], propertyKeyValue[1]); + } + return state; + } else { + Set defined = new LinkedHashSet<>(); + Set needed = new LinkedHashSet<>(state.getPropertyNames()); + for (int i = 1; i < stateParts.length; i++) { + String[] propertyKeyValue = stateParts[i].split("=", 2); + state = state.withProperty(propertyKeyValue[0], propertyKeyValue[1]); + defined.add(propertyKeyValue[0]); + } + needed.removeAll(defined); + if (needed.isEmpty()) { + return state; + } + throw new IllegalArgumentException( + "The state id " + persistedStateId + " is missing the following properties: " + needed + ); + } + } - @Getter @Nonnegative private final int blockId; @@ -218,6 +296,14 @@ private BlockState(@Nonnegative int blockId, @Nonnegative BigInteger blockData) } } + @PowerNukkitOnly + @Since("1.4.0.0-PN") + @Nonnegative + @Override + public int getBlockId() { + return blockId; + } + @PowerNukkitOnly @Since("1.4.0.0-PN") @Nonnull @@ -397,12 +483,14 @@ public ItemBlock asItemBlock(int count) { @Nonnegative @Nonnull @Override + @PowerNukkitOnly public Number getDataStorage() { return storage.getNumber(); } @Nonnull @Override + @PowerNukkitOnly public BlockProperties getProperties() { return BlockStateRegistry.getProperties(blockId); } @@ -411,6 +499,7 @@ public BlockProperties getProperties() { @Deprecated @DeprecationDetails(reason = "Can't store all data, exists for backward compatibility reasons", since = "1.4.0.0-PN", replaceWith = "getDataStorage()") @Override + @PowerNukkitOnly public int getLegacyDamage() { return storage.getLegacyDamage(); } @@ -418,6 +507,7 @@ public int getLegacyDamage() { @Unsigned @Deprecated @DeprecationDetails(reason = "Can't store all data, exists for backward compatibility reasons", since = "1.4.0.0-PN", replaceWith = "getDataStorage()") + @PowerNukkitOnly @Override public int getBigDamage() { return storage.getBigDamage(); @@ -444,15 +534,18 @@ public BigInteger getHugeDamage() { @Nonnull @Override + @PowerNukkitOnly public Serializable getPropertyValue(String propertyName) { return storage.getPropertyValue(getProperties(), propertyName); } @Override + @PowerNukkitOnly public int getIntValue(String propertyName) { return storage.getIntValue(getProperties(), propertyName); } + @PowerNukkitOnly @Override public boolean getBooleanValue(String propertyName) { return storage.getBooleanValue(getProperties(), propertyName); @@ -460,16 +553,19 @@ public boolean getBooleanValue(String propertyName) { @Nonnull @Override + @PowerNukkitOnly public String getPersistenceValue(String propertyName) { return storage.getPersistenceValue(getProperties(), propertyName); } @Nonnull @Override + @PowerNukkitOnly public BlockState getCurrentState() { return this; } + @PowerNukkitOnly @Override public int getBitSize() { return storage.getBitSize(); @@ -497,7 +593,7 @@ public boolean isDefaultState() { } @Override - public boolean equals(Object o) { + public boolean equals(@Nullable Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; @@ -580,6 +676,7 @@ public OptionalBoolean getCachedValidation() { @Nonnull @Override + @PowerNukkitOnly public Block getBlock() { try { Block block = IBlockState.super.getBlock(); @@ -593,6 +690,7 @@ public Block getBlock() { @Nonnull @Override + @PowerNukkitOnly public Block getBlock(@Nullable Level level, int x, int y, int z, int layer, boolean repair, @Nullable Consumer callback) { if (valid == OptionalBoolean.TRUE) { Block block = IBlockState.super.getBlock(); diff --git a/src/main/java/cn/nukkit/blockstate/BlockStateRegistry.java b/src/main/java/cn/nukkit/blockstate/BlockStateRegistry.java index 0a555fd04c6..8010780454a 100644 --- a/src/main/java/cn/nukkit/blockstate/BlockStateRegistry.java +++ b/src/main/java/cn/nukkit/blockstate/BlockStateRegistry.java @@ -8,6 +8,7 @@ import cn.nukkit.block.BlockID; import cn.nukkit.block.BlockUnknown; import cn.nukkit.blockproperty.BlockProperties; +import cn.nukkit.blockproperty.exception.BlockPropertyNotFoundException; import cn.nukkit.blockstate.exception.InvalidBlockStateException; import cn.nukkit.nbt.NBTIO; import cn.nukkit.nbt.tag.CompoundTag; @@ -15,6 +16,7 @@ import cn.nukkit.utils.BinaryStream; import cn.nukkit.utils.HumanStringComparator; import com.google.common.base.Preconditions; +import io.netty.util.internal.EmptyArrays; import it.unimi.dsi.fastutil.ints.Int2ObjectMap; import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap; import lombok.AllArgsConstructor; @@ -58,6 +60,8 @@ public class BlockStateRegistry { private final byte[] blockPaletteBytes; + private final List knownStateIds; + // static { @@ -95,6 +99,7 @@ public class BlockStateRegistry { // List tags = new ArrayList<>(); + List loadingKnownStateIds = new ArrayList<>(); try (InputStream stream = Server.class.getClassLoader().getResourceAsStream("canonical_block_states.nbt")) { if (stream == null) { throw new AssertionError("Unable to locate block state nbt"); @@ -107,14 +112,18 @@ public class BlockStateRegistry { tag.putInt("runtimeId", runtimeId++); tag.putInt("blockId", persistenceNameToBlockId.getOrDefault(tag.getString("name").toLowerCase(), -1)); tags.add(tag); + loadingKnownStateIds.add(getStateId(tag)); } } + knownStateIds = Arrays.asList(loadingKnownStateIds.toArray(EmptyArrays.EMPTY_STRINGS)); } catch (IOException e) { throw new AssertionError(e); } // Integer infoUpdateRuntimeId = null; - + + Set warned = new HashSet<>(); + for (CompoundTag state : tags) { int blockId = state.getInt("blockId"); int runtimeId = state.getInt("runtimeId"); @@ -128,6 +137,11 @@ public class BlockStateRegistry { if (isNameOwnerOfId(name, blockId)) { registerPersistenceName(blockId, name); registerStateId(state, runtimeId); + } else if (blockId == -1) { + if (warned.add(name)) { + log.warn("Unknown block id for the block named {}", name); + } + registerStateId(state, runtimeId); } } @@ -145,9 +159,9 @@ public class BlockStateRegistry { } // - + private boolean isNameOwnerOfId(String name, int blockId) { - return !name.equals("minecraft:wood") || blockId == BlockID.WOOD_BARK; + return blockId != -1 && !name.equals("minecraft:wood") || blockId == BlockID.WOOD_BARK; } @Nonnull @@ -169,6 +183,33 @@ private static Registration findRegistrationByRuntimeId(int runtimeId) { return runtimeIdRegistration.get(runtimeId); } + @PowerNukkitOnly + @Since("1.5.2.0-PN") + @Nullable + public String getKnownBlockStateIdByRuntimeId(int runtimeId) { + if (runtimeId >= 0 && runtimeId < knownStateIds.size()) { + return knownStateIds.get(runtimeId); + } + return null; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public int getKnownRuntimeIdByBlockStateId(String stateId) { + int result = knownStateIds.indexOf(stateId); + if (result != -1) { + return result; + } + BlockState state; + try { + state = BlockState.of(stateId); + } catch (NoSuchElementException|IllegalStateException|IllegalArgumentException ignored) { + return -1; + } + String fullStateId = state.getStateId(); + return knownStateIds.indexOf(fullStateId); + } + /** * @return {@code null} if the runtime id does not matches any known block state. */ @@ -213,10 +254,61 @@ private BlockState buildStateFromCompound(CompoundTag block) { return state; } + private static NoSuchElementException runtimeIdNotRegistered(int runtimeId) { + return new NoSuchElementException("The block id for the runtime id "+runtimeId+" is not registered"); + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public int getBlockIdByRuntimeId(int runtimeId) { + Registration registration = findRegistrationByRuntimeId(runtimeId); + if (registration == null) { + throw runtimeIdNotRegistered(runtimeId); + } + BlockState state = registration.state; + if (state != null) { + return state.getBlockId(); + } + CompoundTag originalBlock = registration.originalBlock; + if (originalBlock == null) { + throw runtimeIdNotRegistered(runtimeId); + } + try { + state = buildStateFromCompound(originalBlock); + } catch (BlockPropertyNotFoundException e) { + String name = originalBlock.getString("name").toLowerCase(Locale.ENGLISH); + Integer id = getBlockId(name); + if (id == null) { + throw runtimeIdNotRegistered(runtimeId); + } + return id; + } + if (state != null) { + registration.state = state; + registration.originalBlock = null; + } else { + throw runtimeIdNotRegistered(runtimeId); + } + return state.getBlockId(); + } + @PowerNukkitOnly @Since("1.4.0.0-PN") public int getRuntimeId(BlockState state) { - return getRegistration(state).runtimeId; + return getRegistration(convertToNewState(state)).runtimeId; + } + + private BlockState convertToNewState(BlockState oldState) { + // Check OldWoodBarkUpdater.java and https://minecraft.fandom.com/wiki/Log#Metadata + // The Only bark variant is replaced in the client side to minecraft:wood with the same wood type + if (oldState.getBitSize() == 4 && (oldState.getBlockId() == BlockID.LOG || oldState.getBlockId() == BlockID.LOG2)) { + int exactInt = oldState.getExactIntStorage(); + if ((exactInt & 0b1100) == 0b1100) { + int increment = oldState.getBlockId() == BlockID.LOG ? 0b000 : 0b100; + return BlockState.of(BlockID.WOOD_BARK, (exactInt & 0b11) + increment); + } + } + return oldState; } private Registration getRegistration(BlockState state) { @@ -413,7 +505,7 @@ public void copyBlockPaletteBytes(byte[] target, int targetIndex) { public BlockProperties getProperties(int blockId) { int fullId = blockId << Block.DATA_BITS; Block block; - if (fullId >= Block.fullList.length || (block = Block.fullList[fullId]) == null) { + if (fullId >= Block.fullList.length || fullId < 0 || (block = Block.fullList[fullId]) == null) { return BlockUnknown.PROPERTIES; } return block.getProperties(); diff --git a/src/main/java/cn/nukkit/blockstate/BlockStateRepair.java b/src/main/java/cn/nukkit/blockstate/BlockStateRepair.java index 8ff784d484b..2b0edf28971 100644 --- a/src/main/java/cn/nukkit/blockstate/BlockStateRepair.java +++ b/src/main/java/cn/nukkit/blockstate/BlockStateRepair.java @@ -5,6 +5,8 @@ import cn.nukkit.blockproperty.BlockProperties; import cn.nukkit.blockproperty.BlockProperty; import cn.nukkit.blockproperty.exception.InvalidBlockPropertyException; +import lombok.AllArgsConstructor; +import lombok.Getter; import lombok.Value; import lombok.experimental.NonFinal; @@ -18,6 +20,8 @@ @PowerNukkitOnly @Since("1.4.0.0-PN") @Value +@AllArgsConstructor(onConstructor = @__(@PowerNukkitOnly)) +@Getter(onMethod = @__(@PowerNukkitOnly)) public class BlockStateRepair { /** * The block ID of the block state that is being repaired. diff --git a/src/main/java/cn/nukkit/blockstate/ByteMutableBlockState.java b/src/main/java/cn/nukkit/blockstate/ByteMutableBlockState.java index 3cc5487725b..37240c2404a 100644 --- a/src/main/java/cn/nukkit/blockstate/ByteMutableBlockState.java +++ b/src/main/java/cn/nukkit/blockstate/ByteMutableBlockState.java @@ -66,6 +66,7 @@ public ByteMutableBlockState(int blockId, BlockProperties properties) { this(blockId, properties, (byte)0); } + @PowerNukkitOnly @Nonnegative @Deprecated @DeprecationDetails(reason = "Can't store all data, exists for backward compatibility reasons", since = "1.4.0.0-PN", replaceWith = "getDataStorage()") @@ -78,6 +79,7 @@ public int getLegacyDamage() { @Deprecated @DeprecationDetails(reason = "Can't store all data, exists for backward compatibility reasons", since = "1.4.0.0-PN", replaceWith = "getDataStorage()") @Override + @PowerNukkitOnly public int getBigDamage() { return storage; } @@ -94,6 +96,7 @@ public BigInteger getHugeDamage() { @Nonnegative @Nonnull @Override + @PowerNukkitOnly public Byte getDataStorage() { return storage; } @@ -132,14 +135,13 @@ public void setDataStorageFromInt(@Nonnegative int storage) { this.storage = (byte)storage; } - @Since("1.4.0.0-PN") - @PowerNukkitOnly @Override @API(definition = INTERNAL, usage = INCUBATING) void setDataStorageWithoutValidation(Number storage) { this.storage = storage.byteValue(); } + @PowerNukkitOnly @Override public void validate() { validate(storage); @@ -197,28 +199,33 @@ public void setIntValue(String propertyName, int value) { storage = (byte)properties.setIntValue(storage, propertyName, value); } + @PowerNukkitOnly @Nonnull @Override public Serializable getPropertyValue(String propertyName) { return properties.getValue(storage, propertyName); } + @PowerNukkitOnly @Override public int getIntValue(String propertyName) { return properties.getIntValue(storage, propertyName); } + @PowerNukkitOnly @Override public boolean getBooleanValue(String propertyName) { return properties.getBooleanValue(storage, propertyName); } + @PowerNukkitOnly @Nonnull @Override public String getPersistenceValue(String propertyName) { return properties.getPersistenceValue(storage, propertyName); } + @PowerNukkitOnly @Nonnull @Override public BlockState getCurrentState() { @@ -232,6 +239,7 @@ public int getExactIntStorage() { return storage; } + @PowerNukkitOnly @Nonnull @Override public ByteMutableBlockState copy() { diff --git a/src/main/java/cn/nukkit/blockstate/IBlockState.java b/src/main/java/cn/nukkit/blockstate/IBlockState.java index 0b321c58faa..1755372160f 100644 --- a/src/main/java/cn/nukkit/blockstate/IBlockState.java +++ b/src/main/java/cn/nukkit/blockstate/IBlockState.java @@ -29,6 +29,7 @@ import java.io.Serializable; import java.math.BigInteger; import java.util.*; +import java.util.AbstractMap.SimpleEntry; import java.util.function.Consumer; import static cn.nukkit.blockstate.Loggers.logIBlockState; @@ -205,6 +206,29 @@ default String getStateId() { return stateId.toString(); } + @PowerNukkitOnly + @Since("1.5.2.0-PN") + default String getMinimalistStateId() { + if (isDefaultState()) { + return getPersistenceName(); + } + BlockProperties properties = getProperties(); + Map propertyMap = new TreeMap<>(HumanStringComparator.getInstance()); + try { + properties.getNames().stream() + .map(name -> new SimpleEntry<>(properties.getBlockProperty(name), getPersistenceValue(name))) + .filter(entry -> !entry.getKey().isDefaultPersistentValue(entry.getValue())) + .forEach(entry -> propertyMap.put(entry.getKey().getPersistenceName(), entry.getValue())); + } catch (InvalidBlockPropertyException e) { + logIBlockState.debug("Attempted to get the stateId of an invalid state {}:{}\nProperties: {}", getBlockId(), getDataStorage(), properties, e); + return getLegacyStateId(); + } + + StringBuilder stateId = new StringBuilder(getPersistenceName()); + propertyMap.forEach((name, value) -> stateId.append(';').append(name).append('=').append(value)); + return stateId.toString(); + } + @PowerNukkitOnly @Since("1.4.0.0-PN") @Nonnull @@ -225,8 +249,7 @@ default String getLegacyStateId() { @Nonnull default Block getBlock() { Block block = Block.get(getBlockId()); - block.setState(this); - return block; + return block.forState(this); } /** @@ -275,8 +298,7 @@ default Block getBlock(@Nullable Level level, int x, int y, int z, int layer, bo BlockState currentState = getCurrentState(); try { if (currentState.isCachedValidationValid()) { - block.setState(currentState); - return block; + return block.forState(currentState); } } catch (Exception e) { logIBlockState.error("Unexpected error while trying to set the cached valid state to the block. State: {}, Block: {}", currentState, block, e); @@ -420,6 +442,7 @@ default int getFullId() { return (getBlockId() << Block.DATA_BITS) | (getLegacyDamage() & Block.DATA_MASK); } + @PowerNukkitOnly @Deprecated @DeprecationDetails(reason = "Can't store all data, exists for backward compatibility reasons", since = "1.4.0.0-PN", replaceWith = "the BlockState itself") default long getBigId() { diff --git a/src/main/java/cn/nukkit/blockstate/IMutableBlockState.java b/src/main/java/cn/nukkit/blockstate/IMutableBlockState.java index c785f4d41d8..c60fbb3637d 100644 --- a/src/main/java/cn/nukkit/blockstate/IMutableBlockState.java +++ b/src/main/java/cn/nukkit/blockstate/IMutableBlockState.java @@ -44,6 +44,28 @@ default void setState(IBlockState state) throws InvalidBlockStateException { throw new UnsupportedOperationException(); } } + + /** + * Replace all matching states of this block state with the same states of the given block state. + * But giving opportunity to return a new instance of this mutable state if needed. + * + *

States that doesn't exists in the other state are ignored. + *

Only properties that matches each other will be copied, for example, if this state have an age property + * going from 0 to 7 and the other have an age from 0 to 15, the age property won't change. + *

If the implementation recognizes that the given state does not match the current set of properties + * and needs an update, it may update and return a new state with a different block id and different set + * of properties that represent the expected visual state. The this change can be detected with an {@code ==} operation. + * @throws UnsupportedOperationException If the state is from a different block id and property copying isn't supported by the implementation + * @throws InvalidBlockStateException If the given storage has invalid data properties + * @param state The states that will have the properties copied. + */ + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Nonnull + default IMutableBlockState forState(@Nonnull IBlockState state) throws InvalidBlockStateException { + setState(state); + return this; + } /** * @throws InvalidBlockStateException If the given storage has invalid data properties diff --git a/src/main/java/cn/nukkit/blockstate/IntMutableBlockState.java b/src/main/java/cn/nukkit/blockstate/IntMutableBlockState.java index 69bd9532b6f..e6c13b15561 100644 --- a/src/main/java/cn/nukkit/blockstate/IntMutableBlockState.java +++ b/src/main/java/cn/nukkit/blockstate/IntMutableBlockState.java @@ -48,6 +48,7 @@ public IntMutableBlockState(int blockId, BlockProperties properties) { @Deprecated @DeprecationDetails(reason = "Can't store all data, exists for backward compatibility reasons", since = "1.4.0.0-PN", replaceWith = "getDataStorage()") @Override + @PowerNukkitOnly public int getLegacyDamage() { return storage & Block.DATA_MASK; } @@ -56,6 +57,7 @@ public int getLegacyDamage() { @Deprecated @DeprecationDetails(reason = "Can't store all data, exists for backward compatibility reasons", since = "1.4.0.0-PN", replaceWith = "getDataStorage()") @Override + @PowerNukkitOnly public int getBigDamage() { return storage; } @@ -71,6 +73,7 @@ public BigInteger getHugeDamage() { @Nonnegative @Nonnull + @PowerNukkitOnly @Override public Integer getDataStorage() { return storage; @@ -109,14 +112,13 @@ public void setDataStorageFromInt(@Nonnegative int storage) { this.storage = storage; } - @Since("1.4.0.0-PN") - @PowerNukkitOnly @Override @API(definition = INTERNAL, usage = INCUBATING) void setDataStorageWithoutValidation(Number storage) { this.storage = storage.intValue(); } + @PowerNukkitOnly @Override public void validate() { validate(storage); @@ -169,22 +171,26 @@ public void setIntValue(String propertyName, int value) { storage = properties.setIntValue(storage, propertyName, value); } + @PowerNukkitOnly @Nonnull @Override public Serializable getPropertyValue(String propertyName) { return properties.getValue(storage, propertyName); } + @PowerNukkitOnly @Override public int getIntValue(String propertyName) { return properties.getIntValue(storage, propertyName); } + @PowerNukkitOnly @Override public boolean getBooleanValue(String propertyName) { return properties.getBooleanValue(storage, propertyName); } + @PowerNukkitOnly @Nonnull @Override public String getPersistenceValue(String propertyName) { @@ -193,6 +199,7 @@ public String getPersistenceValue(String propertyName) { @Nonnull @Override + @PowerNukkitOnly public BlockState getCurrentState() { return BlockState.of(blockId, storage); } @@ -204,6 +211,7 @@ public int getExactIntStorage() { return storage; } + @PowerNukkitOnly @Nonnull @Override public IntMutableBlockState copy() { diff --git a/src/main/java/cn/nukkit/blockstate/LongMutableBlockState.java b/src/main/java/cn/nukkit/blockstate/LongMutableBlockState.java index e6f38c8eff9..d53df31a76a 100644 --- a/src/main/java/cn/nukkit/blockstate/LongMutableBlockState.java +++ b/src/main/java/cn/nukkit/blockstate/LongMutableBlockState.java @@ -74,13 +74,12 @@ public void setDataStorageFromInt(@Nonnegative int storage) { this.storage = state; } - @Since("1.4.0.0-PN") - @PowerNukkitOnly @Override void setDataStorageWithoutValidation(Number storage) { this.storage = storage.longValue(); } + @PowerNukkitOnly @Override public void validate() { validate(storage); @@ -116,6 +115,7 @@ private void validate(long state) { @Deprecated @DeprecationDetails(reason = "Can't store all data, exists for backward compatibility reasons", since = "1.4.0.0-PN", replaceWith = "getDataStorage()") @Override + @PowerNukkitOnly public int getLegacyDamage() { return (int) (storage & Block.DATA_MASK); } @@ -124,6 +124,7 @@ public int getLegacyDamage() { @Deprecated @DeprecationDetails(reason = "Can't store all data, exists for backward compatibility reasons", since = "1.4.0.0-PN", replaceWith = "getDataStorage()") @Override + @PowerNukkitOnly public int getBigDamage() { return (int) (storage & BlockStateRegistry.BIG_META_MASK); } @@ -150,6 +151,7 @@ public BigInteger getHugeDamage() { @Nonnegative @Nonnull @Override + @PowerNukkitOnly public Number getDataStorage() { return storage; } @@ -182,22 +184,26 @@ public void setIntValue(String propertyName, int value) { storage = properties.setIntValue(storage, propertyName, value); } + @PowerNukkitOnly @Nonnull @Override public Serializable getPropertyValue(String propertyName) { return properties.getValue(storage, propertyName); } + @PowerNukkitOnly @Override public int getIntValue(String propertyName) { return properties.getIntValue(storage, propertyName); } + @PowerNukkitOnly @Override public boolean getBooleanValue(String propertyName) { return properties.getBooleanValue(storage, propertyName); } + @PowerNukkitOnly @Nonnull @Override public String getPersistenceValue(String propertyName) { @@ -206,6 +212,7 @@ public String getPersistenceValue(String propertyName) { @Nonnull @Override + @PowerNukkitOnly public BlockState getCurrentState() { return BlockState.of(blockId, storage); } @@ -221,6 +228,7 @@ public int getExactIntStorage() { return (int) storage; } + @PowerNukkitOnly @Nonnull @Override public LongMutableBlockState copy() { diff --git a/src/main/java/cn/nukkit/blockstate/MutableBlockState.java b/src/main/java/cn/nukkit/blockstate/MutableBlockState.java index f496362d179..8a4f93aed92 100644 --- a/src/main/java/cn/nukkit/blockstate/MutableBlockState.java +++ b/src/main/java/cn/nukkit/blockstate/MutableBlockState.java @@ -35,8 +35,6 @@ public abstract class MutableBlockState implements IMutableBlockState { this.properties = properties; } - @PowerNukkitOnly - @Since("1.4.0.0-PN") @API(definition = INTERNAL, usage = INCUBATING) void setDataStorageWithoutValidation(Number storage) { setDataStorage(storage); @@ -57,18 +55,21 @@ public void setState(IBlockState state) throws InvalidBlockStateException { } } + @PowerNukkitOnly @Nonnull @Override public final BlockProperties getProperties() { return properties; } + @PowerNukkitOnly @Nonnegative @Override public final int getBlockId() { return blockId; } + @PowerNukkitOnly @Override @Deprecated @DeprecationDetails(reason = "Can't store all data, exists for backward compatibility reasons", since = "1.4.0.0-PN", replaceWith = "the BlockState itself") @@ -79,10 +80,12 @@ public final int getFullId() { @Override @Deprecated @DeprecationDetails(reason = "Can't store all data, exists for backward compatibility reasons", since = "1.4.0.0-PN", replaceWith = "the BlockState itself") + @PowerNukkitOnly public final long getBigId() { return IMutableBlockState.super.getBigId(); } + @PowerNukkitOnly @Override public final int getBitSize() { return getProperties().getBitSize(); diff --git a/src/main/java/cn/nukkit/blockstate/ZeroMutableBlockState.java b/src/main/java/cn/nukkit/blockstate/ZeroMutableBlockState.java index f9263a5a0ef..20537a9926f 100644 --- a/src/main/java/cn/nukkit/blockstate/ZeroMutableBlockState.java +++ b/src/main/java/cn/nukkit/blockstate/ZeroMutableBlockState.java @@ -51,13 +51,15 @@ public ZeroMutableBlockState(int blockId, BlockProperties properties) { state = BlockState.of(blockId); } + @PowerNukkitOnly @Override public void validate() { } + @PowerNukkitOnly @Nonnull @Override - public MutableBlockState copy() { + public ZeroMutableBlockState copy() { return this; } @@ -137,8 +139,8 @@ public int getLegacyDamage() { @Unsigned @Since("1.4.0.0-PN") - @PowerNukkitOnly @Override + @PowerNukkitOnly public int getBigDamage() { return 0; } diff --git a/src/main/java/cn/nukkit/command/CapturingCommandSender.java b/src/main/java/cn/nukkit/command/CapturingCommandSender.java index ce032506817..fdcca3d68d3 100644 --- a/src/main/java/cn/nukkit/command/CapturingCommandSender.java +++ b/src/main/java/cn/nukkit/command/CapturingCommandSender.java @@ -1,65 +1,91 @@ package cn.nukkit.command; import cn.nukkit.Server; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.lang.TextContainer; import cn.nukkit.permission.*; import cn.nukkit.plugin.Plugin; import cn.nukkit.utils.TextFormat; import lombok.AllArgsConstructor; -import lombok.Getter; import lombok.NonNull; -import lombok.Setter; +import javax.annotation.Nonnull; import java.util.Map; import java.util.function.Function; /** * @since 1.2.1.0-PN */ -@AllArgsConstructor +@PowerNukkitOnly +@AllArgsConstructor(onConstructor = @__(@PowerNukkitOnly)) public class CapturingCommandSender implements CommandSender { private final StringBuilder captured = new StringBuilder(); @NonNull - @Getter - @Setter private String name; - @Getter @Setter private boolean isOp; @NonNull private final Permissible perms; + @PowerNukkitOnly public CapturingCommandSender() { this("System"); } - + + @PowerNukkitOnly public CapturingCommandSender(@NonNull String name) { this.name = name; this.perms = new PermissibleBase(this); } + @PowerNukkitOnly public CapturingCommandSender(@NonNull String name, boolean isOp) { this.name = name; - this.isOp = true; + this.isOp = isOp; this.perms = new PermissibleBase(this); } + @PowerNukkitOnly public CapturingCommandSender(@NonNull String name, boolean isOp, @NonNull Function permissibleFactory) { this.name = name; - this.isOp = true; + this.isOp = isOp; this.perms = permissibleFactory.apply(this); } - + + @Nonnull + @Override + public String getName() { + return name; + } + + @PowerNukkitOnly + public void setName(@Nonnull String name) { + this.name = name; + } + + @Override + public boolean isOp() { + return isOp; + } + + @Override + public void setOp(boolean op) { + isOp = op; + } + + @PowerNukkitOnly public void resetCapture() { captured.setLength(0); } - + + @PowerNukkitOnly public synchronized String getRawCapture() { return captured.toString(); } - + + @PowerNukkitOnly public synchronized String getCleanCapture() { return TextFormat.clean(captured.toString()); } diff --git a/src/main/java/cn/nukkit/command/Command.java b/src/main/java/cn/nukkit/command/Command.java index f9307be8ccb..8f2cd25f6c5 100644 --- a/src/main/java/cn/nukkit/command/Command.java +++ b/src/main/java/cn/nukkit/command/Command.java @@ -2,6 +2,9 @@ import cn.nukkit.Player; import cn.nukkit.Server; +import cn.nukkit.api.DeprecationDetails; +import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.command.data.*; import cn.nukkit.lang.TextContainer; import cn.nukkit.lang.TranslationContainer; @@ -18,8 +21,6 @@ */ public abstract class Command { - private static CommandData defaultDataTemplate; - protected CommandData commandData; private final String name; @@ -134,7 +135,8 @@ public CommandDataVersions generateCustomCommandData(Player player) { public Map getOverloads() { return this.commandData.overloads; } - + + @PowerNukkitOnly protected double parseTilde(String arg, double pos) { if (arg.equals("~")) { return pos; @@ -263,11 +265,17 @@ public void setUsage(String usageMessage) { this.usageMessage = usageMessage; } + @Deprecated + @DeprecationDetails( + by = "PowerNukkit", + since = "1.5.2.0-PN", + reason = "Unused and always throws an exception even in Cloudburst Nukkit") + @PowerNukkitDifference( + since = "1.5.2.0-PN", + info = "Throws UnsupportedOperationException instead of NullPointerException" + ) public static CommandData generateDefaultData() { - if (defaultDataTemplate == null) { - //defaultDataTemplate = new Gson().fromJson(new InputStreamReader(Server.class.getClassLoader().getResourceAsStream("command_default.json"))); - } - return defaultDataTemplate.clone(); + throw new UnsupportedOperationException(); } public static void broadcastCommandMessage(CommandSender source, String message) { diff --git a/src/main/java/cn/nukkit/command/ConsoleCommandSender.java b/src/main/java/cn/nukkit/command/ConsoleCommandSender.java index f6ff12ae348..0ab510a0514 100644 --- a/src/main/java/cn/nukkit/command/ConsoleCommandSender.java +++ b/src/main/java/cn/nukkit/command/ConsoleCommandSender.java @@ -73,6 +73,7 @@ public Map getEffectivePermissions() { return this.perm.getEffectivePermissions(); } + @Override public boolean isPlayer() { return false; } diff --git a/src/main/java/cn/nukkit/command/data/CommandEnum.java b/src/main/java/cn/nukkit/command/data/CommandEnum.java index c14cf314688..ae11813cf2b 100644 --- a/src/main/java/cn/nukkit/command/data/CommandEnum.java +++ b/src/main/java/cn/nukkit/command/data/CommandEnum.java @@ -62,6 +62,7 @@ public List getValues() { return values; } + @Override public int hashCode() { return name.hashCode(); } diff --git a/src/main/java/cn/nukkit/command/defaults/EnchantCommand.java b/src/main/java/cn/nukkit/command/defaults/EnchantCommand.java index 82ee3f5f040..e155830fd7f 100644 --- a/src/main/java/cn/nukkit/command/defaults/EnchantCommand.java +++ b/src/main/java/cn/nukkit/command/defaults/EnchantCommand.java @@ -34,7 +34,7 @@ public EnchantCommand(String name) { "protection", "fire_protection", "feather_falling", "blast_protection", "projectile_projection", "thorns", "respiration", "aqua_affinity", "depth_strider", "sharpness", "smite", "bane_of_arthropods", "knockback", "fire_aspect", "looting", "efficiency", "silk_touch", "durability", "fortune", "power", "punch", "flame", "infinity", "luck_of_the_sea", "lure", "frost_walker", "mending", - "binding_curse", "vanishing_curse", "impaling", "loyality", "riptide", "channeling", "multishot", "piercing", "quick_charge", + "binding_curse", "vanishing_curse", "impaling", "loyalty", "riptide", "channeling", "multishot", "piercing", "quick_charge", "soul_speed")), CommandParameter.newType("level", true, CommandParamType.INT) }); @@ -86,11 +86,12 @@ public boolean execute(CommandSender sender, String commandLabel, String[] args) inventory.setItemInHand(clone); player.giveItem(enchanted); } - Command.broadcastCommandMessage(sender, new TranslationContainer("%commands.enchant.success")); + Command.broadcastCommandMessage(sender, new TranslationContainer("%commands.enchant.success", args[1])); return true; } public int getIdByName(String value) throws NumberFormatException { + value = value.toLowerCase(); switch (value) { case "protection": return 0; @@ -127,6 +128,7 @@ public int getIdByName(String value) throws NumberFormatException { case "silk_touch": return 16; case "durability": + case "unbreaking": return 17; case "fortune": return 18; @@ -152,9 +154,9 @@ public int getIdByName(String value) throws NumberFormatException { return 28; case "impaling": return 29; - case "loyality": - return 30; case "riptide": + return 30; + case "loyalty": return 31; case "channeling": return 32; diff --git a/src/main/java/cn/nukkit/command/defaults/GameruleCommand.java b/src/main/java/cn/nukkit/command/defaults/GameruleCommand.java index 1015a4cc662..c00cc5d0d39 100644 --- a/src/main/java/cn/nukkit/command/defaults/GameruleCommand.java +++ b/src/main/java/cn/nukkit/command/defaults/GameruleCommand.java @@ -29,6 +29,9 @@ public GameruleCommand(String name) { List unknownGameRules = new ArrayList<>(); rules.getGameRules().forEach((rule, value) -> { + if (rule.isDeprecated()) { + return; + } switch (value.getType()) { case BOOLEAN: boolGameRules.add(rule.getName().toLowerCase()); diff --git a/src/main/java/cn/nukkit/command/defaults/KillCommand.java b/src/main/java/cn/nukkit/command/defaults/KillCommand.java index 141e2623ce5..dc2328b9c1e 100644 --- a/src/main/java/cn/nukkit/command/defaults/KillCommand.java +++ b/src/main/java/cn/nukkit/command/defaults/KillCommand.java @@ -60,7 +60,7 @@ public boolean execute(CommandSender sender, String commandLabel, String[] args) for (Level level : Server.getInstance().getLevels().values()) { for (Entity entity : level.getEntities()) { if (!(entity instanceof Player)) { - joiner.add(entity.getName()); + joiner.add(entity.getVisibleName()); entity.close(); } } diff --git a/src/main/java/cn/nukkit/command/defaults/SetBlockCommand.java b/src/main/java/cn/nukkit/command/defaults/SetBlockCommand.java index f1f7890bfcc..d1be38ee3ec 100644 --- a/src/main/java/cn/nukkit/command/defaults/SetBlockCommand.java +++ b/src/main/java/cn/nukkit/command/defaults/SetBlockCommand.java @@ -1,6 +1,7 @@ package cn.nukkit.command.defaults; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.block.BlockID; import cn.nukkit.command.CommandSender; @@ -14,7 +15,9 @@ import java.util.Arrays; +@PowerNukkitOnly public class SetBlockCommand extends VanillaCommand { + @PowerNukkitOnly public SetBlockCommand(String name) { super(name, "%nukkit.command.setblock.description", "%nukkit.command.setblock.usage"); this.setPermission("nukkit.command.setblock"); diff --git a/src/main/java/cn/nukkit/command/defaults/SetWorldSpawnCommand.java b/src/main/java/cn/nukkit/command/defaults/SetWorldSpawnCommand.java index 713e92d85a7..a113047aa8b 100644 --- a/src/main/java/cn/nukkit/command/defaults/SetWorldSpawnCommand.java +++ b/src/main/java/cn/nukkit/command/defaults/SetWorldSpawnCommand.java @@ -20,7 +20,8 @@ public SetWorldSpawnCommand(String name) { super(name, "%nukkit.command.setworldspawn.description", "%commands.setworldspawn.usage"); this.setPermission("nukkit.command.setworldspawn"); this.commandParameters.clear(); - this.commandParameters.put("default", new CommandParameter[]{ + this.commandParameters.put("default", CommandParameter.EMPTY_ARRAY); + this.commandParameters.put("spawnPoint", new CommandParameter[]{ CommandParameter.newType("spawnPoint", true, CommandParamType.POSITION) }); } diff --git a/src/main/java/cn/nukkit/command/defaults/WhitelistCommand.java b/src/main/java/cn/nukkit/command/defaults/WhitelistCommand.java index da06292064c..a4f560da794 100644 --- a/src/main/java/cn/nukkit/command/defaults/WhitelistCommand.java +++ b/src/main/java/cn/nukkit/command/defaults/WhitelistCommand.java @@ -15,7 +15,7 @@ public class WhitelistCommand extends VanillaCommand { public WhitelistCommand(String name) { - super(name, "%nukkit.command.whitelist.description", "%commands.whitelist.usage"); + super(name, "%nukkit.command.whitelist.description", "%commands.whitelist.usage", new String[]{"allowlist"}); // In Minecraft Bedrock v1.18.10 the whitelist was renamed to allowlist this.setPermission( "nukkit.command.whitelist.reload;" + "nukkit.command.whitelist.enable;" + @@ -52,17 +52,17 @@ public boolean execute(CommandSender sender, String commandLabel, String[] args) switch (args[0].toLowerCase()) { case "reload": sender.getServer().reloadWhitelist(); - Command.broadcastCommandMessage(sender, new TranslationContainer("commands.whitelist.reloaded")); + Command.broadcastCommandMessage(sender, new TranslationContainer("commands.allowlist.reloaded")); return true; case "on": sender.getServer().setPropertyBoolean("white-list", true); - Command.broadcastCommandMessage(sender, new TranslationContainer("commands.whitelist.enabled")); + Command.broadcastCommandMessage(sender, new TranslationContainer("commands.allowlist.enabled")); return true; case "off": sender.getServer().setPropertyBoolean("white-list", false); - Command.broadcastCommandMessage(sender, new TranslationContainer("commands.whitelist.disabled")); + Command.broadcastCommandMessage(sender, new TranslationContainer("commands.allowlist.disabled")); return true; case "list": @@ -72,17 +72,17 @@ public boolean execute(CommandSender sender, String commandLabel, String[] args) result.append(player).append(", "); ++count; } - sender.sendMessage(new TranslationContainer("commands.whitelist.list", String.valueOf(count), String.valueOf(count))); + sender.sendMessage(new TranslationContainer("commands.allowlist.list", String.valueOf(count), String.valueOf(count))); sender.sendMessage(result.length() > 0 ? result.substring(0, result.length() - 2) : ""); return true; case "add": - sender.sendMessage(new TranslationContainer("commands.generic.usage", "%commands.whitelist.add.usage")); + sender.sendMessage(new TranslationContainer("commands.generic.usage", this.usageMessage)); return true; case "remove": - sender.sendMessage(new TranslationContainer("commands.generic.usage", "%commands.whitelist.remove.usage")); + sender.sendMessage(new TranslationContainer("commands.generic.usage", this.usageMessage)); return true; } } else if (args.length == 2) { @@ -92,12 +92,12 @@ public boolean execute(CommandSender sender, String commandLabel, String[] args) switch (args[0].toLowerCase()) { case "add": sender.getServer().getOfflinePlayer(args[1]).setWhitelisted(true); - Command.broadcastCommandMessage(sender, new TranslationContainer("commands.whitelist.add.success", args[1])); + Command.broadcastCommandMessage(sender, new TranslationContainer("commands.allowlist.add.success", args[1])); return true; case "remove": sender.getServer().getOfflinePlayer(args[1]).setWhitelisted(false); - Command.broadcastCommandMessage(sender, new TranslationContainer("commands.whitelist.remove.success", args[1])); + Command.broadcastCommandMessage(sender, new TranslationContainer("commands.allowlist.remove.success", args[1])); return true; } diff --git a/src/main/java/cn/nukkit/dispenser/BoatDispenseBehavior.java b/src/main/java/cn/nukkit/dispenser/BoatDispenseBehavior.java index bbae7c027b4..d252a9db1a7 100644 --- a/src/main/java/cn/nukkit/dispenser/BoatDispenseBehavior.java +++ b/src/main/java/cn/nukkit/dispenser/BoatDispenseBehavior.java @@ -1,5 +1,6 @@ package cn.nukkit.dispenser; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.block.BlockDispenser; import cn.nukkit.block.BlockID; @@ -7,12 +8,18 @@ import cn.nukkit.entity.Entity; import cn.nukkit.entity.item.EntityBoat; import cn.nukkit.item.Item; -import cn.nukkit.item.ItemBoat; import cn.nukkit.math.BlockFace; import cn.nukkit.math.Vector3; +@PowerNukkitOnly public class BoatDispenseBehavior extends DefaultDispenseBehavior { + @PowerNukkitOnly + public BoatDispenseBehavior() { + super(); + } + + @PowerNukkitOnly @Override public Item dispense(BlockDispenser block, BlockFace face, Item item) { Vector3 pos = block.getSide(face).multiply(1.125); @@ -29,7 +36,7 @@ public Item dispense(BlockDispenser block, BlockFace face, Item item) { EntityBoat boat = new EntityBoat(block.level.getChunk(target.getChunkX(), target.getChunkZ()), Entity.getDefaultNBT(pos) - .putByte("woodID", ((ItemBoat)item).getLegacyBoatDamage().orElse(0)) + .putInt("Variant", item.getDamage()) ); boat.spawnToAll(); diff --git a/src/main/java/cn/nukkit/dispenser/BucketDispenseBehavior.java b/src/main/java/cn/nukkit/dispenser/BucketDispenseBehavior.java index 31fec412b77..a8bd23033c7 100644 --- a/src/main/java/cn/nukkit/dispenser/BucketDispenseBehavior.java +++ b/src/main/java/cn/nukkit/dispenser/BucketDispenseBehavior.java @@ -1,5 +1,6 @@ package cn.nukkit.dispenser; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.*; import cn.nukkit.item.Item; import cn.nukkit.item.ItemBucket; @@ -11,6 +12,7 @@ */ public class BucketDispenseBehavior extends DefaultDispenseBehavior { + @PowerNukkitOnly @Override public Item dispense(BlockDispenser block, BlockFace face, Item item) { if (!(item instanceof ItemBucket)) { diff --git a/src/main/java/cn/nukkit/dispenser/DefaultDispenseBehavior.java b/src/main/java/cn/nukkit/dispenser/DefaultDispenseBehavior.java index e24a39006b2..8f17cc7179f 100644 --- a/src/main/java/cn/nukkit/dispenser/DefaultDispenseBehavior.java +++ b/src/main/java/cn/nukkit/dispenser/DefaultDispenseBehavior.java @@ -1,5 +1,6 @@ package cn.nukkit.dispenser; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockDispenser; import cn.nukkit.item.Item; import cn.nukkit.math.BlockFace; @@ -14,8 +15,10 @@ */ public class DefaultDispenseBehavior implements DispenseBehavior { + @PowerNukkitOnly public boolean success = true; + @PowerNukkitOnly @Override public Item dispense(BlockDispenser block, BlockFace face, Item item) { Vector3 dispensePos = block.getDispensePosition(); diff --git a/src/main/java/cn/nukkit/dispenser/DispenseBehavior.java b/src/main/java/cn/nukkit/dispenser/DispenseBehavior.java index ebb94f2c36a..04ecaa2b323 100644 --- a/src/main/java/cn/nukkit/dispenser/DispenseBehavior.java +++ b/src/main/java/cn/nukkit/dispenser/DispenseBehavior.java @@ -1,5 +1,6 @@ package cn.nukkit.dispenser; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockDispenser; import cn.nukkit.item.Item; import cn.nukkit.math.BlockFace; @@ -9,6 +10,7 @@ */ public interface DispenseBehavior { + @PowerNukkitOnly Item dispense(BlockDispenser block, BlockFace face, Item item); } diff --git a/src/main/java/cn/nukkit/dispenser/DispenseBehaviorRegister.java b/src/main/java/cn/nukkit/dispenser/DispenseBehaviorRegister.java index e57d7fa5ee9..41494fc2f57 100644 --- a/src/main/java/cn/nukkit/dispenser/DispenseBehaviorRegister.java +++ b/src/main/java/cn/nukkit/dispenser/DispenseBehaviorRegister.java @@ -1,5 +1,6 @@ package cn.nukkit.dispenser; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockID; import cn.nukkit.item.ItemID; @@ -26,6 +27,7 @@ public static void removeDispenseBehavior(int id) { behaviors.remove(id); } + @PowerNukkitOnly public static void init() { registerBehavior(ItemID.BOAT, new BoatDispenseBehavior()); registerBehavior(ItemID.BUCKET, new BucketDispenseBehavior()); diff --git a/src/main/java/cn/nukkit/dispenser/DropperDispenseBehavior.java b/src/main/java/cn/nukkit/dispenser/DropperDispenseBehavior.java index 2ec3460bb2a..d38318adbce 100644 --- a/src/main/java/cn/nukkit/dispenser/DropperDispenseBehavior.java +++ b/src/main/java/cn/nukkit/dispenser/DropperDispenseBehavior.java @@ -1,6 +1,5 @@ package cn.nukkit.dispenser; -import cn.nukkit.api.PowerNukkitDifference; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.block.BlockDispenser; @@ -10,9 +9,15 @@ import cn.nukkit.level.Sound; import cn.nukkit.math.BlockFace; -@PowerNukkitDifference(info = "Spend items in container, the dropper faces to (if there is one).", since = "1.4.0.0-PN") @PowerNukkitOnly public class DropperDispenseBehavior extends DefaultDispenseBehavior { + + @PowerNukkitOnly + public DropperDispenseBehavior() { + super(); + } + + @PowerNukkitOnly @Override public Item dispense(BlockDispenser block, BlockFace face, Item item) { Block target = block.getSide(face); diff --git a/src/main/java/cn/nukkit/dispenser/DyeDispenseBehavior.java b/src/main/java/cn/nukkit/dispenser/DyeDispenseBehavior.java index 4229683e00c..638cc0de850 100644 --- a/src/main/java/cn/nukkit/dispenser/DyeDispenseBehavior.java +++ b/src/main/java/cn/nukkit/dispenser/DyeDispenseBehavior.java @@ -1,11 +1,19 @@ package cn.nukkit.dispenser; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.*; import cn.nukkit.item.Item; import cn.nukkit.math.BlockFace; +@PowerNukkitOnly public class DyeDispenseBehavior extends DefaultDispenseBehavior { + @PowerNukkitOnly + public DyeDispenseBehavior() { + super(); + } + + @PowerNukkitOnly @Override public Item dispense(BlockDispenser block, BlockFace face, Item item) { Block target = block.getSide(face); diff --git a/src/main/java/cn/nukkit/dispenser/EmptyBucketDispenseBehavior.java b/src/main/java/cn/nukkit/dispenser/EmptyBucketDispenseBehavior.java index 088a356afaa..a664478b2cb 100644 --- a/src/main/java/cn/nukkit/dispenser/EmptyBucketDispenseBehavior.java +++ b/src/main/java/cn/nukkit/dispenser/EmptyBucketDispenseBehavior.java @@ -1,5 +1,6 @@ package cn.nukkit.dispenser; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.*; import cn.nukkit.item.Item; import cn.nukkit.item.MinecraftItemID; @@ -10,6 +11,7 @@ */ public class EmptyBucketDispenseBehavior extends DefaultDispenseBehavior { + @PowerNukkitOnly @Override public Item dispense(BlockDispenser block, BlockFace face, Item item) { Block target = block.getSide(face); diff --git a/src/main/java/cn/nukkit/dispenser/FireChargeDispenseBehavior.java b/src/main/java/cn/nukkit/dispenser/FireChargeDispenseBehavior.java deleted file mode 100644 index 6edfaa09655..00000000000 --- a/src/main/java/cn/nukkit/dispenser/FireChargeDispenseBehavior.java +++ /dev/null @@ -1,14 +0,0 @@ -package cn.nukkit.dispenser; - -import cn.nukkit.block.BlockDispenser; -import cn.nukkit.item.Item; -import cn.nukkit.math.BlockFace; - -public class FireChargeDispenseBehavior extends DefaultDispenseBehavior { - - @Override - public Item dispense(BlockDispenser block, BlockFace face, Item item) { - //TODO: firecharge - return null; - } -} diff --git a/src/main/java/cn/nukkit/dispenser/FireworksDispenseBehavior.java b/src/main/java/cn/nukkit/dispenser/FireworksDispenseBehavior.java index bcc55074a09..f7c80d2a8e1 100644 --- a/src/main/java/cn/nukkit/dispenser/FireworksDispenseBehavior.java +++ b/src/main/java/cn/nukkit/dispenser/FireworksDispenseBehavior.java @@ -1,5 +1,6 @@ package cn.nukkit.dispenser; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockDispenser; import cn.nukkit.entity.Entity; import cn.nukkit.entity.item.EntityFirework; @@ -9,8 +10,15 @@ import cn.nukkit.nbt.NBTIO; import cn.nukkit.nbt.tag.CompoundTag; +@PowerNukkitOnly public class FireworksDispenseBehavior extends DefaultDispenseBehavior { + @PowerNukkitOnly + public FireworksDispenseBehavior() { + super(); + } + + @PowerNukkitOnly @Override public Item dispense(BlockDispenser block, BlockFace face, Item item) { BlockFace opposite = face.getOpposite(); diff --git a/src/main/java/cn/nukkit/dispenser/FlintAndSteelDispenseBehavior.java b/src/main/java/cn/nukkit/dispenser/FlintAndSteelDispenseBehavior.java index 54dec1b0eef..fd88e362bc3 100644 --- a/src/main/java/cn/nukkit/dispenser/FlintAndSteelDispenseBehavior.java +++ b/src/main/java/cn/nukkit/dispenser/FlintAndSteelDispenseBehavior.java @@ -1,19 +1,25 @@ package cn.nukkit.dispenser; import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.block.BlockDispenser; import cn.nukkit.block.BlockID; import cn.nukkit.item.Item; -import cn.nukkit.item.ItemFlintSteel; import cn.nukkit.level.Sound; import cn.nukkit.math.BlockFace; +@PowerNukkitOnly public class FlintAndSteelDispenseBehavior extends DefaultDispenseBehavior { + @PowerNukkitOnly + public FlintAndSteelDispenseBehavior() { + super(); + } + @Override @PowerNukkitDifference(info = "Reduce flint and steel usage instead of clearing.", since = "1.4.0.0-PN") - public Item dispense(BlockDispenser block, BlockFace face, Item item) { + public @PowerNukkitOnly Item dispense(BlockDispenser block, BlockFace face, Item item) { Block target = block.getSide(face); item = item.clone(); diff --git a/src/main/java/cn/nukkit/dispenser/ProjectileDispenseBehavior.java b/src/main/java/cn/nukkit/dispenser/ProjectileDispenseBehavior.java index a6d083d4921..c40a1095b1e 100644 --- a/src/main/java/cn/nukkit/dispenser/ProjectileDispenseBehavior.java +++ b/src/main/java/cn/nukkit/dispenser/ProjectileDispenseBehavior.java @@ -1,6 +1,7 @@ package cn.nukkit.dispenser; import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockDispenser; import cn.nukkit.entity.Entity; import cn.nukkit.entity.projectile.EntityProjectile; @@ -23,7 +24,7 @@ public ProjectileDispenseBehavior(String entity) { @Override @PowerNukkitDifference(info = "Implement sound.", since = "1.4.0.0-PN") - public Item dispense(BlockDispenser source, BlockFace face, Item item) { + public @PowerNukkitOnly Item dispense(BlockDispenser source, BlockFace face, Item item) { Vector3 dispensePos = source.getDispensePosition(); CompoundTag nbt = Entity.getDefaultNBT(dispensePos); @@ -50,10 +51,12 @@ public Item dispense(BlockDispenser source, BlockFace face, Item item) { return null; } + @PowerNukkitOnly protected double getMotion() { return 1.1; } + @PowerNukkitOnly protected float getAccuracy() { return 6; } diff --git a/src/main/java/cn/nukkit/dispenser/PumpkinDispenseBehavior.java b/src/main/java/cn/nukkit/dispenser/PumpkinDispenseBehavior.java deleted file mode 100644 index 0803372fa92..00000000000 --- a/src/main/java/cn/nukkit/dispenser/PumpkinDispenseBehavior.java +++ /dev/null @@ -1,17 +0,0 @@ -package cn.nukkit.dispenser; - -import cn.nukkit.block.Block; -import cn.nukkit.block.BlockDispenser; -import cn.nukkit.item.Item; -import cn.nukkit.math.BlockFace; - -public class PumpkinDispenseBehavior extends DefaultDispenseBehavior { - - @Override - public Item dispense(BlockDispenser block, BlockFace face, Item item) { - Block target = block.getSide(face); - - //TODO: snowman / golem - return null; - } -} diff --git a/src/main/java/cn/nukkit/dispenser/ShulkerBoxDispenseBehavior.java b/src/main/java/cn/nukkit/dispenser/ShulkerBoxDispenseBehavior.java index 1a878802fcc..4c6f5d9072c 100644 --- a/src/main/java/cn/nukkit/dispenser/ShulkerBoxDispenseBehavior.java +++ b/src/main/java/cn/nukkit/dispenser/ShulkerBoxDispenseBehavior.java @@ -1,13 +1,21 @@ package cn.nukkit.dispenser; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.block.BlockDispenser; import cn.nukkit.block.BlockUndyedShulkerBox; import cn.nukkit.item.Item; import cn.nukkit.math.BlockFace; +@PowerNukkitOnly public class ShulkerBoxDispenseBehavior extends DefaultDispenseBehavior { + @PowerNukkitOnly + public ShulkerBoxDispenseBehavior() { + super(); + } + + @PowerNukkitOnly @Override public Item dispense(BlockDispenser block, BlockFace face, Item item) { Block target = block.getSide(face); diff --git a/src/main/java/cn/nukkit/dispenser/SpawnEggDispenseBehavior.java b/src/main/java/cn/nukkit/dispenser/SpawnEggDispenseBehavior.java index 349453a8b35..27ff98de721 100644 --- a/src/main/java/cn/nukkit/dispenser/SpawnEggDispenseBehavior.java +++ b/src/main/java/cn/nukkit/dispenser/SpawnEggDispenseBehavior.java @@ -1,5 +1,6 @@ package cn.nukkit.dispenser; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockDispenser; import cn.nukkit.entity.Entity; import cn.nukkit.entity.EntityLiving; @@ -8,8 +9,15 @@ import cn.nukkit.math.BlockFace; import cn.nukkit.math.Vector3; +@PowerNukkitOnly public class SpawnEggDispenseBehavior extends DefaultDispenseBehavior { + @PowerNukkitOnly + public SpawnEggDispenseBehavior() { + super(); + } + + @PowerNukkitOnly @Override public Item dispense(BlockDispenser block, BlockFace face, Item item) { Vector3 pos = block.getSide(face).add(0.5, 0.7, 0.5); diff --git a/src/main/java/cn/nukkit/dispenser/TNTDispenseBehavior.java b/src/main/java/cn/nukkit/dispenser/TNTDispenseBehavior.java index bbdb9aaf266..5f6abc7ce91 100644 --- a/src/main/java/cn/nukkit/dispenser/TNTDispenseBehavior.java +++ b/src/main/java/cn/nukkit/dispenser/TNTDispenseBehavior.java @@ -1,5 +1,6 @@ package cn.nukkit.dispenser; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockDispenser; import cn.nukkit.entity.Entity; import cn.nukkit.entity.item.EntityPrimedTNT; @@ -7,8 +8,15 @@ import cn.nukkit.math.BlockFace; import cn.nukkit.math.Vector3; +@PowerNukkitOnly public class TNTDispenseBehavior extends DefaultDispenseBehavior { + @PowerNukkitOnly + public TNTDispenseBehavior() { + super(); + } + + @PowerNukkitOnly @Override public Item dispense(BlockDispenser block, BlockFace face, Item item) { Vector3 pos = block.getSide(face).add(0.5, 0, 0.5); diff --git a/src/main/java/cn/nukkit/entity/Attribute.java b/src/main/java/cn/nukkit/entity/Attribute.java index 1ab060eb7f9..611424a073c 100644 --- a/src/main/java/cn/nukkit/entity/Attribute.java +++ b/src/main/java/cn/nukkit/entity/Attribute.java @@ -9,13 +9,11 @@ import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.utils.ServerException; -import lombok.ToString; import java.util.HashMap; import java.util.Map; import java.util.Objects; -@ToString public class Attribute implements Cloneable { @PowerNukkitOnly @Since("1.4.0.0-PN") @@ -177,4 +175,14 @@ public Attribute clone() { return null; } } + + @Override + public String toString() { + return name + "{" + + "min=" + minValue + + ", max=" + maxValue + + ", def=" + defaultValue + + ", val=" + currentValue + + '}'; + } } diff --git a/src/main/java/cn/nukkit/entity/Entity.java b/src/main/java/cn/nukkit/entity/Entity.java index a8308beb055..b55bc03e5a4 100644 --- a/src/main/java/cn/nukkit/entity/Entity.java +++ b/src/main/java/cn/nukkit/entity/Entity.java @@ -20,6 +20,8 @@ import cn.nukkit.event.player.PlayerTeleportEvent; import cn.nukkit.item.Item; import cn.nukkit.item.ItemID; +import cn.nukkit.item.enchantment.Enchantment; +import cn.nukkit.item.enchantment.sideeffect.SideEffect; import cn.nukkit.level.*; import cn.nukkit.level.format.FullChunk; import cn.nukkit.math.*; @@ -35,10 +37,14 @@ import cn.nukkit.potion.Effect; import cn.nukkit.scheduler.Task; import cn.nukkit.utils.ChunkException; +import cn.nukkit.utils.TextFormat; +import cn.nukkit.utils.Utils; import co.aikar.timings.Timing; import co.aikar.timings.Timings; import co.aikar.timings.TimingsHistory; import com.google.common.collect.Iterables; +import it.unimi.dsi.fastutil.ints.IntArrayList; +import it.unimi.dsi.fastutil.ints.IntCollection; import lombok.extern.log4j.Log4j2; import javax.annotation.Nonnull; @@ -124,16 +130,7 @@ public abstract class Entity extends Location implements Metadatable { public static final int DATA_POTION_AUX_VALUE = dynamic(36); //short public static final int DATA_LEAD_HOLDER_EID = dynamic(37); //long public static final int DATA_SCALE = dynamic(38); //float - @Since("1.4.0.0-PN") public static final int DATA_INTERACTIVE_TAG = dynamic(39); //string (button text) - - @PowerNukkitOnly @Since("1.2.0.0-PN") - @Deprecated @DeprecationDetails( - by = "PowerNukkit", since = "1.4.0.0-PN", - reason = "This is not only for NPC, it's used to display any interactive button text " + - "and Nukkit added this constant with a different name", - replaceWith = "DATA_INTERACTIVE_TAG") - public static final int DATA_HAS_NPC_COMPONENT = dynamic(DATA_INTERACTIVE_TAG); //byte - + @Since("1.2.0.0-PN") public static final int DATA_HAS_NPC_COMPONENT = dynamic(39); //byte public static final int DATA_NPC_SKIN_ID = dynamic(40); //string public static final int DATA_URL_TAG = dynamic(41); //string public static final int DATA_MAX_AIR = dynamic(42); //short @@ -194,7 +191,14 @@ public abstract class Entity extends Location implements Metadatable { @Since("1.2.0.0-PN") public static final int DATA_CHANGE_RATE = dynamic(97); //float @Since("1.2.0.0-PN") public static final int DATA_CHANGE_ON_PICKUP = dynamic(98); //float @Since("1.2.0.0-PN") public static final int DATA_PICKUP_COUNT = dynamic(99); //int - @Since("1.2.0.0-PN") public static final int DATA_INTERACT_TEXT = dynamic(100); //string + @Since("1.4.0.0-PN") public static final int DATA_INTERACTIVE_TAG = dynamic(100); //string (button text) + + @PowerNukkitOnly("Removed from Cloudburst Nukkit") + @Deprecated + @DeprecationDetails(by = "Cloudburst Nukkit", reason = "Duplicated and removed", replaceWith = "DATA_INTERACTIVE_TAG", since = "1.6.0.0-PN") + @Since("1.2.0.0-PN") + public static final int DATA_INTERACT_TEXT = dynamic(DATA_INTERACTIVE_TAG); //string + public static final int DATA_TRADE_TIER = dynamic(101); //int public static final int DATA_MAX_TRADE_TIER = dynamic(102); //int @Since("1.2.0.0-PN") public static final int DATA_TRADE_EXPERIENCE = dynamic(103); //int @@ -214,11 +218,11 @@ public abstract class Entity extends Location implements Metadatable { @Since("1.3.0.0-PN") public static final int DATA_NEARBY_CURED_DISCOUNT_TIMESTAMP = dynamic(117); //int @Since("1.3.0.0-PN") public static final int DATA_HITBOX = dynamic(118); //NBT @Since("1.3.0.0-PN") public static final int DATA_IS_BUOYANT = dynamic(119); //byte - @Since("1.5.0.0-PN") @PowerNukkitOnly public static final int DATA_BASE_RUNTIME_ID = dynamic(120); // ??? - @Since("1.4.0.0-PN") public static final int DATA_FREEZING_EFFECT_STRENGTH = dynamic(121); + @Since("1.5.0.0-PN") public static final int DATA_BASE_RUNTIME_ID = dynamic(120); // ??? + @Since("1.4.0.0-PN") public static final int DATA_FREEZING_EFFECT_STRENGTH = dynamic(121); // ??? @Since("1.3.0.0-PN") public static final int DATA_BUOYANCY_DATA = dynamic(122); //string @Since("1.4.0.0-PN") public static final int DATA_GOAT_HORN_COUNT = dynamic(123); // ??? - @Since("1.5.0.0-PN") @PowerNukkitOnly public static final int DATA_UPDATE_PROPERTIES = dynamic(124); // ??? + @Since("1.5.0.0-PN") public static final int DATA_UPDATE_PROPERTIES = dynamic(124); // ??? // Flags public static final int DATA_FLAG_ONFIRE = dynamic(0); @@ -309,7 +313,7 @@ public abstract class Entity extends Location implements Metadatable { @Since("1.2.0.0-PN") public static final int DATA_FLAG_BLOCKED_USING_SHIELD = dynamic(73); @Since("1.2.0.0-PN") public static final int DATA_FLAG_BLOCKED_USING_DAMAGED_SHIELD = dynamic(74); @Since("1.2.0.0-PN") public static final int DATA_FLAG_SLEEPING = dynamic(75); - @Since("1.2.0.0-PN") public static final int DATA_FLAG_WANTS_TO_WAKE = dynamic(76); + @Since("1.6.0.0-PN") public static final int DATA_FLAG_ENTITY_GROW_UP = dynamic(76); @Since("1.2.0.0-PN") public static final int DATA_FLAG_TRADE_INTEREST = dynamic(77); @Since("1.2.0.0-PN") public static final int DATA_FLAG_DOOR_BREAKER = dynamic(78); @Since("1.2.0.0-PN") public static final int DATA_FLAG_BREAKING_OBSTRUCTION = dynamic(79); @@ -329,7 +333,11 @@ public abstract class Entity extends Location implements Metadatable { @Since("1.3.0.0-PN") public static final int DATA_FLAG_ADMIRING = dynamic(93); @Since("1.3.0.0-PN") public static final int DATA_FLAG_CELEBRATING_SPECIAL = dynamic(94); @Since("1.4.0.0-PN") public static final int DATA_FLAG_RAM_ATTACK = dynamic(96); - @Since("1.5.0.0-PN") @PowerNukkitOnly public static final int DATA_FLAG_PLAYING_DEAD = dynamic(97); + @Since("1.5.0.0-PN") public static final int DATA_FLAG_PLAYING_DEAD = dynamic(97); + @Since("1.6.0.0-PN") public static final int DATA_FLAG_IN_ASCENDABLE_BLOCK = dynamic(98); + @Since("1.6.0.0-PN") public static final int DATA_FLAG_OVER_DESCENDABLE_BLOCK = dynamic(99); + public static final int DATA_FLAG_CROAKING = 100; + public static final int DATA_FLAG_EAT_MOB = 101; public static long entityCount = 1; @@ -377,11 +385,13 @@ public abstract class Entity extends Location implements Metadatable { public double lastMotionY; public double lastMotionZ; - public double lastYaw; public double lastPitch; + @Since("1.6.0.0-PN") public double lastYaw; + @Since("1.6.0.0-PN") public double lastHeadYaw; public double pitchDelta; - public double yawDelta; + @Since("1.6.0.0-PN") public double yawDelta; + @Since("1.6.0.0-PN") public double headYawDelta; public double entityCollisionReduction = 0; // Higher than 0.9 will result a fast collisions public AxisAlignedBB boundingBox; @@ -446,8 +456,18 @@ public float getHeight() { return 0; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public float getCurrentHeight() { + if (isSwimming()) { + return getSwimmingHeight(); + } else { + return getHeight(); + } + } + public float getEyeHeight() { - return this.getHeight() / 2 + 0.1f; + return getCurrentHeight() / 2 + 0.1f; } public float getWidth() { @@ -680,12 +700,24 @@ public boolean isSwimming() { return this.getDataFlag(DATA_FLAGS, DATA_FLAG_SWIMMING); } + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public float getSwimmingHeight() { + return getHeight(); + } + public void setSwimming() { this.setSwimming(true); } public void setSwimming(boolean value) { + if (isSwimming() == value) { + return; + } this.setDataFlag(DATA_FLAGS, DATA_FLAG_SWIMMING, value); + if (Float.compare(getSwimmingHeight(), getHeight()) != 0) { + recalculateBoundingBox(true); + } } public boolean isSprinting() { @@ -832,11 +864,20 @@ public void recalculateBoundingBox() { } public void recalculateBoundingBox(boolean send) { - float height = this.getHeight() * this.scale; + float entityHeight = getCurrentHeight(); + float height = entityHeight * this.scale; double radius = (this.getWidth() * this.scale) / 2d; - this.boundingBox.setBounds(x - radius, y, z - radius, x + radius, y + height, z + radius); + this.boundingBox.setBounds( + x - radius, + y, + z - radius, + + x + radius, + y + height, + z + radius + ); - FloatEntityData bbH = new FloatEntityData(DATA_BOUNDING_BOX_HEIGHT, this.getHeight()); + FloatEntityData bbH = new FloatEntityData(DATA_BOUNDING_BOX_HEIGHT, entityHeight); FloatEntityData bbW = new FloatEntityData(DATA_BOUNDING_BOX_WIDTH, this.getWidth()); this.dataProperties.put(bbH); this.dataProperties.put(bbW); @@ -966,6 +1007,50 @@ public static boolean registerEntity(String name, Class clazz, return true; } + @Nonnull + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public static IntCollection getKnownEntityIds() { + return knownEntities.keySet().stream() + .filter(Utils::isInteger) + .mapToInt(Integer::parseInt) + .collect(IntArrayList::new, IntArrayList::add, IntArrayList::addAll); + } + + @Nonnull + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public static List getSaveIds() { + return new ArrayList<>(shortNames.values()); + } + + @Nonnull + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public static OptionalInt getSaveId(String id) { + Class entityClass = knownEntities.get(id); + if (entityClass == null) { + return OptionalInt.empty(); + } + return knownEntities.entrySet().stream() + .filter(entry -> entry.getValue().equals(entityClass)) + .map(Map.Entry::getKey) + .filter(Utils::isInteger) + .mapToInt(Integer::parseInt) + .findFirst(); + } + + @Nullable + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public static String getSaveId(int id) { + Class entityClass = knownEntities.get(Integer.toString(id)); + if (entityClass == null) { + return null; + } + return shortNames.get(entityClass.getSimpleName()); + } + @Nonnull public static CompoundTag getDefaultNBT(@Nonnull Vector3 pos) { return getDefaultNBT(pos, null); @@ -1054,12 +1139,38 @@ public void saveNBT() { } } + /** + * The name that English name of the type of this entity. + */ + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public String getOriginalName() { + return this.getSaveId(); + } + + /** + * Similar to {@link #getName()}, but if the name is blank or empty it returns the static name instead. + */ + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public final String getVisibleName() { + String name = getName(); + if (!TextFormat.clean(name).trim().isEmpty()) { + return name; + } else { + return getOriginalName(); + } + } + + /** + * The current name used by this entity in the name tag, or the static name if the entity don't have nametag. + */ @Nonnull public String getName() { if (this.hasCustomName()) { return this.getNameTag(); } else { - return this.getSaveId(); + return this.getOriginalName(); } } @@ -1182,6 +1293,17 @@ public boolean attack(EntityDamageEvent source) { if (source.isCancelled()) { return false; } + + // Make fire aspect to set the target in fire before dealing any damage so the target is in fire on death even if killed by the first hit + if (source instanceof EntityDamageByEntityEvent) { + Enchantment[] enchantments = ((EntityDamageByEntityEvent) source).getWeaponEnchantments(); + if (enchantments != null) { + for (Enchantment enchantment : enchantments) { + enchantment.doAttack(((EntityDamageByEntityEvent) source).getDamager(), this); + } + } + } + if (this.absorption > 0) { // Damage Absorption this.setAbsorption(Math.max(0, this.getAbsorption() + source.getDamage(EntityDamageEvent.DamageModifier.ABSORPTION))); } @@ -1221,7 +1343,10 @@ public boolean attack(EntityDamageEvent source) { } } } - + Entity attacker = source instanceof EntityDamageByEntityEvent? ((EntityDamageByEntityEvent) source).getDamager() : null; + for (SideEffect sideEffect : source.getSideEffects()) { + sideEffect.doPreHealthChange(this, source, attacker); + } setHealth(newHealth); return true; } @@ -1305,13 +1430,13 @@ protected boolean checkObstruction(double x, double y, double z) { double diffY = y - j; double diffZ = z - k; - if (!Block.transparent[this.level.getBlockIdAt(i, j, k)]) { - boolean flag = Block.transparent[this.level.getBlockIdAt(i - 1, j, k)]; - boolean flag1 = Block.transparent[this.level.getBlockIdAt(i + 1, j, k)]; - boolean flag2 = Block.transparent[this.level.getBlockIdAt(i, j - 1, k)]; - boolean flag3 = Block.transparent[this.level.getBlockIdAt(i, j + 1, k)]; - boolean flag4 = Block.transparent[this.level.getBlockIdAt(i, j, k - 1)]; - boolean flag5 = Block.transparent[this.level.getBlockIdAt(i, j, k + 1)]; + if (!Block.isTransparent(this.level.getBlockIdAt(i, j, k))) { + boolean flag = Block.isTransparent(this.level.getBlockIdAt(i - 1, j, k)); + boolean flag1 = Block.isTransparent(this.level.getBlockIdAt(i + 1, j, k)); + boolean flag2 = Block.isTransparent(this.level.getBlockIdAt(i, j - 1, k)); + boolean flag3 = Block.isTransparent(this.level.getBlockIdAt(i, j + 1, k)); + boolean flag4 = Block.isTransparent(this.level.getBlockIdAt(i, j, k - 1)); + boolean flag5 = Block.isTransparent(this.level.getBlockIdAt(i, j, k + 1)); int direction = -1; double limit = 9999; @@ -1557,9 +1682,11 @@ public void updateMovement() { this.lastY = this.y; this.lastZ = this.z; - this.lastYaw = this.yaw; this.lastPitch = this.pitch; + this.lastYaw = this.yaw; + this.lastHeadYaw = this.headYaw; + // If you want to achieve headYaw in movement. You can override it by yourself. Changing would break some mob plugins. this.addMovement(this.x, this.y + this.getBaseOffset(), this.z, this.yaw, this.pitch, this.yaw); this.positionChanged = true; } else { @@ -1589,6 +1716,7 @@ public void addMotion(double motionX, double motionY, double motionZ) { Server.broadcastPacket(this.hasSpawned.values(), pk); } + @Override public Vector3 getDirectionVector() { Vector3 vector = super.getDirectionVector(); return this.temporalVector.setComponents(vector.x, vector.y, vector.z); @@ -1761,6 +1889,7 @@ public void setAbsorption(float absorption) { } } + @PowerNukkitOnly public boolean canBePushed() { return true; } @@ -1819,17 +1948,18 @@ public void fall(float fallDistance) { return; } - float damage = (float) Math.floor(fallDistance - 3 - (this.hasEffect(Effect.JUMP) ? this.getEffect(Effect.JUMP).getAmplifier() + 1 : 0)); Location floorLocation = this.floor(); Block down = this.level.getBlock(floorLocation.down()); - if (damage > 0) { - if(down instanceof BlockHayBale) { - damage -= (damage * 0.8f); - } - if (down.getId() == BlockID.HONEY_BLOCK) { + + if (!this.isPlayer || level.getGameRules().getBoolean(GameRule.FALL_DAMAGE)) { + int jumpBoost = this.hasEffect(Effect.JUMP_BOOST)? (getEffect(Effect.JUMP_BOOST).getAmplifier() + 1) : 0; + float damage = (float) Math.floor(fallDistance - 3 - jumpBoost); + + if(down instanceof BlockHayBale || down instanceof BlockHoney) { damage *= 0.2F; } - if (!this.isPlayer || level.getGameRules().getBoolean(GameRule.FALL_DAMAGE)) { + + if (damage > 0) { this.attack(new EntityDamageEvent(this, DamageCause.FALL, damage)); } } @@ -1934,6 +2064,7 @@ public void onStruckByLightning(Entity entity) { } } + @PowerNukkitOnly public void onPushByPiston(BlockEntityPistonArm piston) { } @@ -1976,11 +2107,13 @@ public Position getPosition() { return new Position(this.x, this.y, this.z, this.level); } + @Override @Nonnull public Location getLocation() { - return new Location(this.x, this.y, this.z, this.yaw, this.pitch, this.level); + return new Location(this.x, this.y, this.z, this.yaw, this.pitch, this.headYaw, this.level); } + @PowerNukkitOnly public boolean isTouchingWater() { return hasWaterAt(0) || hasWaterAt(this.getEyeHeight()); } @@ -2351,12 +2484,30 @@ public boolean setPositionAndRotation(Vector3 pos, double yaw, double pitch) { return false; } + @Since("1.6.0.0-PN") + public boolean setPositionAndRotation(Vector3 pos, double yaw, double pitch, double headYaw) { + if (this.setPosition(pos)) { + this.setRotation(yaw, pitch, headYaw); + return true; + } + + return false; + } + public void setRotation(double yaw, double pitch) { this.yaw = yaw; this.pitch = pitch; this.scheduleUpdate(); } + @Since("1.6.0.0-PN") + public void setRotation(double yaw, double pitch, double headYaw) { + this.yaw = yaw; + this.pitch = pitch; + this.headYaw = headYaw; + this.scheduleUpdate(); + } + /** * Whether the entity can active pressure plates. * Used for {@link cn.nukkit.entity.passive.EntityBat}s only. @@ -2465,7 +2616,7 @@ public boolean teleport(Vector3 pos) { } public boolean teleport(Vector3 pos, PlayerTeleportEvent.TeleportCause cause) { - return this.teleport(Location.fromObject(pos, this.level, this.yaw, this.pitch), cause); + return this.teleport(Location.fromObject(pos, this.level, this.yaw, this.pitch, this.headYaw), cause); } public boolean teleport(Position pos) { @@ -2473,7 +2624,7 @@ public boolean teleport(Position pos) { } public boolean teleport(Position pos, PlayerTeleportEvent.TeleportCause cause) { - return this.teleport(Location.fromObject(pos, pos.level, this.yaw, this.pitch), cause); + return this.teleport(Location.fromObject(pos, pos.level, this.yaw, this.pitch, this.headYaw), cause); } public boolean teleport(Location location) { @@ -2495,6 +2646,11 @@ public boolean teleport(Location location, PlayerTeleportEvent.TeleportCause cau to = ev.getTo(); } + Entity currentRide = getRiding(); + if (currentRide != null && !currentRide.dismountEntity(this)) { + return false; + } + this.ySize = 0; this.setMotion(this.temporalVector.setComponents(0, 0, 0)); @@ -2516,10 +2672,12 @@ public long getId() { } public void respawnToAll() { - for (Player player : this.hasSpawned.values()) { + Player[] players = this.hasSpawned.values().toArray(Player.EMPTY_ARRAY); + this.hasSpawned.clear(); + + for (Player player : players) { this.spawnTo(player); } - this.hasSpawned.clear(); } public void spawnToAll() { @@ -2603,14 +2761,20 @@ public boolean setDataProperty(EntityData data) { } public boolean setDataProperty(EntityData data, boolean send) { - if (!Objects.equals(data, this.getDataProperties().get(data.getId()))) { - this.getDataProperties().put(data); - if (send) { - this.sendData(this.hasSpawned.values().toArray(Player.EMPTY_ARRAY), new EntityMetadata().put(this.dataProperties.get(data.getId()))); + if (Objects.equals(data, this.dataProperties.get(data.getId()))) { + return false; + } + + this.dataProperties.put(data); + if (send) { + EntityMetadata metadata = new EntityMetadata(); + metadata.put(this.dataProperties.get(data.getId())); + if (data.getId() == DATA_FLAGS_EXTENDED) { + metadata.put(this.dataProperties.get(DATA_FLAGS)); } - return true; + this.sendData(this.hasSpawned.values().toArray(Player.EMPTY_ARRAY), metadata); } - return false; + return true; } public EntityMetadata getDataProperties() { @@ -2712,6 +2876,7 @@ public Server getServer() { return server; } + @PowerNukkitOnly public boolean isUndead() { return false; } diff --git a/src/main/java/cn/nukkit/entity/EntityCreature.java b/src/main/java/cn/nukkit/entity/EntityCreature.java index 5a57a7a4ff8..8e20e723525 100644 --- a/src/main/java/cn/nukkit/entity/EntityCreature.java +++ b/src/main/java/cn/nukkit/entity/EntityCreature.java @@ -23,7 +23,7 @@ public EntityCreature(FullChunk chunk, CompoundTag nbt) { // Armor stands, when implemented, should also check this. @Override public boolean onInteract(Player player, Item item, Vector3 clickedPos) { - if (item.getId() == Item.NAME_TAG) { + if (item.getId() == Item.NAME_TAG && !player.isAdventure()) { return applyNameTag(player, item); } return false; diff --git a/src/main/java/cn/nukkit/entity/EntityHuman.java b/src/main/java/cn/nukkit/entity/EntityHuman.java index 240314f7a29..07db9539922 100644 --- a/src/main/java/cn/nukkit/entity/EntityHuman.java +++ b/src/main/java/cn/nukkit/entity/EntityHuman.java @@ -1,6 +1,8 @@ package cn.nukkit.entity; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.data.IntPositionEntityData; import cn.nukkit.entity.data.Skin; import cn.nukkit.item.Item; @@ -50,14 +52,21 @@ public float getHeight() { return 1.8f; } + @Since("1.5.1.0-PN") + @PowerNukkitOnly + @Override + public float getSwimmingHeight() { + return getWidth(); + } + @Override public float getEyeHeight() { - return 1.62f; + return (float)(boundingBox.getMaxY() - boundingBox.getMinY() - 0.18); } @Override protected float getBaseOffset() { - return this.getEyeHeight(); + return 1.62f; } protected Skin skin; @@ -210,6 +219,13 @@ protected void initEntity() { super.initEntity(); } + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Human"; + } + @Override public String getName() { return this.getNameTag(); @@ -361,6 +377,7 @@ public void close() { } } + @PowerNukkitOnly @Override protected void onBlock(Entity entity, boolean animate) { super.onBlock(entity, animate); diff --git a/src/main/java/cn/nukkit/entity/EntityLiving.java b/src/main/java/cn/nukkit/entity/EntityLiving.java index f243aab244a..4b5ba5d1a6d 100644 --- a/src/main/java/cn/nukkit/entity/EntityLiving.java +++ b/src/main/java/cn/nukkit/entity/EntityLiving.java @@ -448,16 +448,19 @@ protected boolean blockedByShield(EntityDamageEvent source) { return true; } + @PowerNukkitOnly protected void onBlock(Entity entity, boolean animate) { if (animate) { getLevel().addSound(this, Sound.ITEM_SHIELD_BLOCK); } } + @PowerNukkitOnly public boolean isBlocking() { return this.getDataFlag(DATA_FLAGS_EXTENDED, DATA_FLAG_BLOCKING); } + @PowerNukkitOnly public void setBlocking(boolean value) { this.setDataFlag(DATA_FLAGS_EXTENDED, DATA_FLAG_BLOCKING, value); } diff --git a/src/main/java/cn/nukkit/entity/EntityNameable.java b/src/main/java/cn/nukkit/entity/EntityNameable.java index 0786f1ca83a..2498555eb11 100644 --- a/src/main/java/cn/nukkit/entity/EntityNameable.java +++ b/src/main/java/cn/nukkit/entity/EntityNameable.java @@ -58,7 +58,7 @@ default boolean playerApplyNameTag(@Nonnull Player player, @Nonnull Item item, b this.setNameTagVisible(true); if(consume && !player.isCreative()) { - player.getInventory().removeItem(item); + item.decrement(1); } // Set entity as persistent. return true; diff --git a/src/main/java/cn/nukkit/entity/data/ByteEntityData.java b/src/main/java/cn/nukkit/entity/data/ByteEntityData.java index d20d3a0426c..49cad2581a0 100644 --- a/src/main/java/cn/nukkit/entity/data/ByteEntityData.java +++ b/src/main/java/cn/nukkit/entity/data/ByteEntityData.java @@ -13,10 +13,12 @@ public ByteEntityData(int id, int data) { this.data = data; } + @Override public Integer getData() { return data; } + @Override public void setData(Integer data) { if (data == null) { this.data = 0; @@ -29,4 +31,9 @@ public void setData(Integer data) { public int getType() { return Entity.DATA_TYPE_BYTE; } + + @Override + public String toString() { + return data + "b"; + } } diff --git a/src/main/java/cn/nukkit/entity/data/EntityMetadata.java b/src/main/java/cn/nukkit/entity/data/EntityMetadata.java index 47dcacc56e2..ffe87dff381 100644 --- a/src/main/java/cn/nukkit/entity/data/EntityMetadata.java +++ b/src/main/java/cn/nukkit/entity/data/EntityMetadata.java @@ -5,7 +5,7 @@ import cn.nukkit.math.Vector3; import cn.nukkit.math.Vector3f; import cn.nukkit.nbt.tag.CompoundTag; -import lombok.ToString; +import lombok.extern.log4j.Log4j2; import java.util.HashMap; import java.util.Map; @@ -13,7 +13,7 @@ /** * @author MagicDroidX (Nukkit Project) */ -@ToString +@Log4j2 public class EntityMetadata { private final Map map = new HashMap<>(); @@ -38,6 +38,7 @@ public boolean exists(int id) { public EntityMetadata put(EntityData data) { this.map.put(data.getId(), data); + //log.info("Updated entity data {}", this::toString); return this; } @@ -121,4 +122,9 @@ public EntityMetadata putString(int id, String value) { public Map getMap() { return new HashMap<>(map); } + + @Override + public String toString() { + return map.toString(); + } } diff --git a/src/main/java/cn/nukkit/entity/data/FloatEntityData.java b/src/main/java/cn/nukkit/entity/data/FloatEntityData.java index 12c62f00d45..52aceeb1db1 100644 --- a/src/main/java/cn/nukkit/entity/data/FloatEntityData.java +++ b/src/main/java/cn/nukkit/entity/data/FloatEntityData.java @@ -13,10 +13,12 @@ public FloatEntityData(int id, float data) { this.data = data; } + @Override public Float getData() { return data; } + @Override public void setData(Float data) { if (data == null) { this.data = 0; @@ -30,4 +32,9 @@ public void setData(Float data) { public int getType() { return Entity.DATA_TYPE_FLOAT; } + + @Override + public String toString() { + return data + "f"; + } } diff --git a/src/main/java/cn/nukkit/entity/data/IntEntityData.java b/src/main/java/cn/nukkit/entity/data/IntEntityData.java index 87dbf695e24..0cafe48ff4d 100644 --- a/src/main/java/cn/nukkit/entity/data/IntEntityData.java +++ b/src/main/java/cn/nukkit/entity/data/IntEntityData.java @@ -13,10 +13,12 @@ public IntEntityData(int id, int data) { this.data = data; } + @Override public Integer getData() { return data; } + @Override public void setData(Integer data) { if (data == null) { this.data = 0; @@ -29,4 +31,9 @@ public void setData(Integer data) { public int getType() { return Entity.DATA_TYPE_INT; } + + @Override + public String toString() { + return data + "i"; + } } diff --git a/src/main/java/cn/nukkit/entity/data/IntPositionEntityData.java b/src/main/java/cn/nukkit/entity/data/IntPositionEntityData.java index f00b7b391dd..4f37cf0f0a0 100644 --- a/src/main/java/cn/nukkit/entity/data/IntPositionEntityData.java +++ b/src/main/java/cn/nukkit/entity/data/IntPositionEntityData.java @@ -41,4 +41,9 @@ public void setData(BlockVector3 data) { public int getType() { return Entity.DATA_TYPE_POS; } + + @Override + public String toString() { + return "(" + x + ", " + y + ", " + z + ")"; + } } diff --git a/src/main/java/cn/nukkit/entity/data/LongEntityData.java b/src/main/java/cn/nukkit/entity/data/LongEntityData.java index 595c9440a92..25c636b59dc 100644 --- a/src/main/java/cn/nukkit/entity/data/LongEntityData.java +++ b/src/main/java/cn/nukkit/entity/data/LongEntityData.java @@ -13,10 +13,12 @@ public LongEntityData(int id, long data) { this.data = data; } + @Override public Long getData() { return data; } + @Override public void setData(Long data) { this.data = data; } @@ -25,4 +27,9 @@ public void setData(Long data) { public int getType() { return Entity.DATA_TYPE_LONG; } + + @Override + public String toString() { + return data + "l"; + } } diff --git a/src/main/java/cn/nukkit/entity/data/NBTEntityData.java b/src/main/java/cn/nukkit/entity/data/NBTEntityData.java index 14f5931996d..57507721754 100644 --- a/src/main/java/cn/nukkit/entity/data/NBTEntityData.java +++ b/src/main/java/cn/nukkit/entity/data/NBTEntityData.java @@ -28,4 +28,9 @@ public void setData(CompoundTag tag) { public int getType() { return Entity.DATA_TYPE_NBT; } + + @Override + public String toString() { + return tag.toString(); + } } diff --git a/src/main/java/cn/nukkit/entity/data/ShortEntityData.java b/src/main/java/cn/nukkit/entity/data/ShortEntityData.java index 0d7ec96758d..9d21779a658 100644 --- a/src/main/java/cn/nukkit/entity/data/ShortEntityData.java +++ b/src/main/java/cn/nukkit/entity/data/ShortEntityData.java @@ -13,10 +13,12 @@ public ShortEntityData(int id, int data) { this.data = data; } + @Override public Integer getData() { return data; } + @Override public void setData(Integer data) { if (data == null) { this.data = 0; @@ -29,4 +31,9 @@ public void setData(Integer data) { public int getType() { return Entity.DATA_TYPE_SHORT; } + + @Override + public String toString() { + return data + "s"; + } } diff --git a/src/main/java/cn/nukkit/entity/data/Skin.java b/src/main/java/cn/nukkit/entity/data/Skin.java index d0fecd599f5..60272e9aae9 100644 --- a/src/main/java/cn/nukkit/entity/data/Skin.java +++ b/src/main/java/cn/nukkit/entity/data/Skin.java @@ -4,9 +4,10 @@ import cn.nukkit.nbt.stream.FastByteArrayOutputStream; import cn.nukkit.utils.*; import com.google.common.base.Preconditions; +import com.nimbusds.jose.shaded.json.JSONObject; +import com.nimbusds.jose.shaded.json.JSONValue; +import lombok.EqualsAndHashCode; import lombok.ToString; -import net.minidev.json.JSONObject; -import net.minidev.json.JSONValue; import java.awt.*; import java.awt.image.BufferedImage; @@ -20,6 +21,7 @@ * @author MagicDroidX (Nukkit Project) */ @ToString(exclude = {"geometryData", "animationData"}) +@EqualsAndHashCode(exclude = {"fullSkinId", "trusted"}) public class Skin { private static final int PIXEL_SIZE = 4; @@ -45,10 +47,12 @@ public class Skin { private boolean premium; private boolean persona; private boolean capeOnClassic; + private boolean primaryUser = true; private String capeId; private String skinColor = "#0"; private String armSize = "wide"; private boolean trusted = false; + private String geometryDataEngineVersion = ""; public boolean isValid() { return isValidSkin() && isValidResourcePatch(); @@ -235,6 +239,26 @@ public void setCapeOnClassic(boolean capeOnClassic) { this.capeOnClassic = capeOnClassic; } + @Since("1.5.2.0-PN") + public void setPrimaryUser(boolean primaryUser) { + this.primaryUser = primaryUser; + } + + @Since("1.5.2.0-PN") + public boolean isPrimaryUser() { + return primaryUser; + } + + @Since("1.5.2.0-PN") + public void setGeometryDataEngineVersion(String geometryDataEngineVersion) { + this.geometryDataEngineVersion = geometryDataEngineVersion; + } + + @Since("1.5.2.0-PN") + public String getGeometryDataEngineVersion() { + return geometryDataEngineVersion; + } + public boolean isTrusted() { return trusted; } diff --git a/src/main/java/cn/nukkit/entity/data/StringEntityData.java b/src/main/java/cn/nukkit/entity/data/StringEntityData.java index 0385acdcb6d..a8a4feb88fd 100644 --- a/src/main/java/cn/nukkit/entity/data/StringEntityData.java +++ b/src/main/java/cn/nukkit/entity/data/StringEntityData.java @@ -13,10 +13,12 @@ public StringEntityData(int id, String data) { this.data = data; } + @Override public String getData() { return data; } + @Override public void setData(String data) { this.data = data; } diff --git a/src/main/java/cn/nukkit/entity/data/Vector3fEntityData.java b/src/main/java/cn/nukkit/entity/data/Vector3fEntityData.java index 07a9cde4fd5..7bdb91e5a66 100644 --- a/src/main/java/cn/nukkit/entity/data/Vector3fEntityData.java +++ b/src/main/java/cn/nukkit/entity/data/Vector3fEntityData.java @@ -40,4 +40,9 @@ public void setData(Vector3f data) { public int getType() { return Entity.DATA_TYPE_VECTOR3F; } + + @Override + public String toString() { + return "(" + x + ", " + y + ", " + z + ")"; + } } diff --git a/src/main/java/cn/nukkit/entity/item/EntityAreaEffectCloud.java b/src/main/java/cn/nukkit/entity/item/EntityAreaEffectCloud.java index 8b6172f3047..4d5ea81bc0d 100644 --- a/src/main/java/cn/nukkit/entity/item/EntityAreaEffectCloud.java +++ b/src/main/java/cn/nukkit/entity/item/EntityAreaEffectCloud.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.item; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.Entity; import cn.nukkit.entity.EntityLiving; import cn.nukkit.entity.data.FloatEntityData; @@ -19,49 +21,60 @@ import java.util.ArrayList; import java.util.List; +@PowerNukkitOnly public class EntityAreaEffectCloud extends Entity { - public static final int NETWORK_ID = 95; - - protected int reapplicationDelay; - protected int durationOnUse; - protected float initialRadius; - protected float radiusOnUse; - protected int nextApply; - public List cloudEffects; + + @PowerNukkitOnly public static final int NETWORK_ID = 95; + + @PowerNukkitOnly protected int reapplicationDelay; + @PowerNukkitOnly protected int durationOnUse; + @PowerNukkitOnly protected float initialRadius; + @PowerNukkitOnly protected float radiusOnUse; + @PowerNukkitOnly protected int nextApply; + @PowerNukkitOnly public List cloudEffects; private int lastAge; - + + @PowerNukkitOnly public EntityAreaEffectCloud(FullChunk chunk, CompoundTag nbt) { super(chunk, nbt); } - + + @PowerNukkitOnly public int getWaitTime() { return this.getDataPropertyInt(DATA_AREA_EFFECT_CLOUD_WAITING); } - + + @PowerNukkitOnly public void setWaitTime(int waitTime) { setWaitTime(waitTime, true); } - + + @PowerNukkitOnly public void setWaitTime(int waitTime, boolean send) { this.setDataProperty(new IntEntityData(DATA_AREA_EFFECT_CLOUD_WAITING, waitTime), send); } - + + @PowerNukkitOnly public int getPotionId() { return this.getDataPropertyShort(DATA_POTION_AUX_VALUE); } - + + @PowerNukkitOnly public void setPotionId(int potionId) { setPotionId(potionId, true); } - + + @PowerNukkitOnly public void setPotionId(int potionId, boolean send) { this.setDataProperty(new ShortEntityData(DATA_POTION_AUX_VALUE, potionId & 0xFFFF), send); } - + + @PowerNukkitOnly public void recalculatePotionColor() { recalculatePotionColor(true); } - + + @PowerNukkitOnly public void recalculatePotionColor(boolean send) { int a; int r; @@ -92,103 +105,128 @@ public void recalculatePotionColor(boolean send) { setPotionColor(a, r, g, b, send); } - + + @PowerNukkitOnly public int getPotionColor() { return this.getDataPropertyInt(DATA_POTION_COLOR); } - + + @PowerNukkitOnly public void setPotionColor(int alpha, int red, int green, int blue, boolean send) { setPotionColor(((alpha & 0xff) << 24) | ((red & 0xff) << 16) | ((green & 0xff) << 8) | (blue & 0xff), send); } - + + @PowerNukkitOnly public void setPotionColor(int argp) { setPotionColor(argp, true); } - + + @PowerNukkitOnly public void setPotionColor(int argp, boolean send) { this.setDataProperty(new IntEntityData(DATA_POTION_COLOR, argp), send); } - + + @PowerNukkitOnly public int getPickupCount() { return this.getDataPropertyInt(DATA_PICKUP_COUNT); } - + + @PowerNukkitOnly public void setPickupCount(int pickupCount) { setPickupCount(pickupCount, true); } - + + @PowerNukkitOnly public void setPickupCount(int pickupCount, boolean send) { this.setDataProperty(new IntEntityData(DATA_PICKUP_COUNT, pickupCount), send); - } - + } + + @PowerNukkitOnly public float getRadiusChangeOnPickup() { return this.getDataPropertyFloat(DATA_CHANGE_ON_PICKUP); } - + + @PowerNukkitOnly public void setRadiusChangeOnPickup(float radiusChangeOnPickup) { setRadiusChangeOnPickup(radiusChangeOnPickup, true); } - + + @PowerNukkitOnly public void setRadiusChangeOnPickup(float radiusChangeOnPickup, boolean send) { this.setDataProperty(new FloatEntityData(DATA_CHANGE_ON_PICKUP, radiusChangeOnPickup), send); } - + + @PowerNukkitOnly public float getRadiusPerTick() { return this.getDataPropertyFloat(DATA_CHANGE_RATE); } - + + @PowerNukkitOnly public void setRadiusPerTick(float radiusPerTick) { setRadiusPerTick(radiusPerTick, true); } - + + @PowerNukkitOnly public void setRadiusPerTick(float radiusPerTick, boolean send) { this.setDataProperty(new FloatEntityData(DATA_CHANGE_RATE, radiusPerTick), send); } - + + @PowerNukkitOnly public long getSpawnTime() { return this.getDataPropertyInt(DATA_SPAWN_TIME); } - + + @PowerNukkitOnly public void setSpawnTime(long spawnTime) { setSpawnTime(spawnTime, true); } - + + @PowerNukkitOnly public void setSpawnTime(long spawnTime, boolean send) { this.setDataProperty(new LongEntityData(DATA_SPAWN_TIME, spawnTime), send); } - + + @PowerNukkitOnly public int getDuration() { return this.getDataPropertyInt(DATA_DURATION); } - + + @PowerNukkitOnly public void setDuration(int duration) { setDuration(duration, true); } - + + @PowerNukkitOnly public void setDuration(int duration, boolean send) { this.setDataProperty(new IntEntityData(DATA_DURATION, duration), send); } - + + @PowerNukkitOnly public float getRadius() { return this.getDataPropertyFloat(DATA_AREA_EFFECT_CLOUD_RADIUS); } - + + @PowerNukkitOnly public void setRadius(float radius) { setRadius(radius, true); } - + + @PowerNukkitOnly public void setRadius(float radius, boolean send) { this.setDataProperty(new FloatEntityData(DATA_AREA_EFFECT_CLOUD_RADIUS, radius), send); } - + + @PowerNukkitOnly public int getParticleId() { return this.getDataPropertyInt(DATA_AREA_EFFECT_CLOUD_PARTICLE_ID); } - + + @PowerNukkitOnly public void setParticleId(int particleId) { setParticleId(particleId, true); } - + + @PowerNukkitOnly public void setParticleId(int particleId, boolean send) { this.setDataProperty(new IntEntityData(DATA_AREA_EFFECT_CLOUD_PARTICLE_ID, particleId), send); } @@ -407,4 +445,11 @@ protected float getDrag() { public int getNetworkId() { return NETWORK_ID; } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Area Effect Cloud"; + } } diff --git a/src/main/java/cn/nukkit/entity/item/EntityArmorStand.java b/src/main/java/cn/nukkit/entity/item/EntityArmorStand.java index 8ab3acdd9ad..fbc56d80280 100644 --- a/src/main/java/cn/nukkit/entity/item/EntityArmorStand.java +++ b/src/main/java/cn/nukkit/entity/item/EntityArmorStand.java @@ -29,7 +29,6 @@ import cn.nukkit.network.protocol.SetEntityDataPacket; import cn.nukkit.potion.Effect; -import javax.annotation.Nonnull; import java.util.Collection; @PowerNukkitOnly @@ -438,10 +437,11 @@ public boolean attack(EntityDamageEvent source) { return true; } - @Nonnull + @Since("1.5.1.0-PN") + @PowerNukkitOnly @Override - public String getName() { - return this.hasCustomName() ? this.getNameTag() : "Armor Stand"; + public String getOriginalName() { + return "Armor Stand"; } @Override diff --git a/src/main/java/cn/nukkit/entity/item/EntityBoat.java b/src/main/java/cn/nukkit/entity/item/EntityBoat.java index 9e9ad88b6a9..02afadd3207 100644 --- a/src/main/java/cn/nukkit/entity/item/EntityBoat.java +++ b/src/main/java/cn/nukkit/entity/item/EntityBoat.java @@ -47,11 +47,6 @@ public class EntityBoat extends EntityVehicle { public static final int NETWORK_ID = 90; - @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", by = "Cloudburst Nukkit", - reason = "Was removed because it is already defined in Entity.DATA_VARIANT", - replaceWith = "Entity.DATA_VARIANT") - @PowerNukkitOnly public static final int DATA_WOOD_ID = 20; - public static final Vector3f RIDER_PLAYER_OFFSET = new Vector3f(0, 1.02001f, 0); public static final Vector3f RIDER_OFFSET = new Vector3f(0, -0.2f, 0); @@ -68,9 +63,9 @@ public class EntityBoat extends EntityVehicle { protected boolean sinking = true; private int ticksInWater; private final Set ignoreCollision = new HashSet<>(2); - + @Deprecated - @DeprecationDetails(since = "1.4.0.0-PN", by = "PowerNukkit", + @DeprecationDetails(since = "1.4.0.0-PN", by = "PowerNukkit", reason = "Unreliable direct field access", replaceWith = "getVariant(), setVariant(int)") @Since("1.4.0.0-PN") public int woodID; @@ -346,6 +341,7 @@ private boolean computeBuoyancy(double waterDiff) { return hasUpdated; } + @Override public void updatePassengers() { updatePassengers(false); } @@ -454,8 +450,8 @@ public boolean mountEntity(Entity entity, byte mode) { entity.setDataProperty(new ByteEntityData(DATA_RIDER_ROTATION_LOCKED, 1)); entity.setDataProperty(new FloatEntityData(DATA_RIDER_MAX_ROTATION, 90)); - entity.setDataProperty(new FloatEntityData(DATA_RIDER_ROTATION_OFFSET, -90)); entity.setDataProperty(new FloatEntityData(DATA_RIDER_MIN_ROTATION, this.passengers.indexOf(entity) == 1 ? -90 : 1)); + entity.setDataProperty(new FloatEntityData(DATA_RIDER_ROTATION_OFFSET, -90)); entity.setRotation(yaw, entity.pitch); entity.updateMovement(); } @@ -581,4 +577,16 @@ public void setVariant(int variant) { this.woodID = variant; this.dataProperties.putInt(DATA_VARIANT, variant); } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Boat"; + } + + public void onInput(double x, double y, double z, double yaw) { + this.setPositionAndRotation(this.temporalVector.setComponents(x, y - this.getBaseOffset(), z), yaw % 360, 0); + } } diff --git a/src/main/java/cn/nukkit/entity/item/EntityEndCrystal.java b/src/main/java/cn/nukkit/entity/item/EntityEndCrystal.java index ab187e07155..65d7faaaa94 100644 --- a/src/main/java/cn/nukkit/entity/item/EntityEndCrystal.java +++ b/src/main/java/cn/nukkit/entity/item/EntityEndCrystal.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.item; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.Entity; import cn.nukkit.entity.EntityExplosive; import cn.nukkit.event.entity.EntityDamageEvent; @@ -107,4 +109,12 @@ public boolean showBase() { public void setShowBase(boolean value) { this.setDataFlag(DATA_FLAGS, DATA_FLAG_SHOWBASE, value); } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Ender Crystal"; + } } diff --git a/src/main/java/cn/nukkit/entity/item/EntityExpBottle.java b/src/main/java/cn/nukkit/entity/item/EntityExpBottle.java index d732c8d797d..88273cfe9ff 100644 --- a/src/main/java/cn/nukkit/entity/item/EntityExpBottle.java +++ b/src/main/java/cn/nukkit/entity/item/EntityExpBottle.java @@ -1,6 +1,7 @@ package cn.nukkit.entity.item; -import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.Entity; import cn.nukkit.entity.projectile.EntityProjectile; import cn.nukkit.level.Sound; @@ -98,9 +99,17 @@ public void dropXp() { this.getLevel().dropExpOrb(this, ThreadLocalRandom.current().nextInt(3, 12)); } - @PowerNukkitDifference(info = "Using new method to play sounds", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override protected void addHitEffect() { this.getLevel().addSound(this, Sound.RANDOM_GLASS); } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Bottle o' Enchanting"; + } } diff --git a/src/main/java/cn/nukkit/entity/item/EntityFallingBlock.java b/src/main/java/cn/nukkit/entity/item/EntityFallingBlock.java index 52522f83a99..34645527973 100644 --- a/src/main/java/cn/nukkit/entity/item/EntityFallingBlock.java +++ b/src/main/java/cn/nukkit/entity/item/EntityFallingBlock.java @@ -1,11 +1,16 @@ package cn.nukkit.entity.item; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.block.Block; import cn.nukkit.block.BlockLava; +import cn.nukkit.block.BlockID; import cn.nukkit.block.BlockLiquid; import cn.nukkit.entity.Entity; +import cn.nukkit.entity.EntityLiving; import cn.nukkit.entity.data.IntEntityData; import cn.nukkit.event.entity.EntityBlockChangeEvent; +import cn.nukkit.event.entity.EntityDamageByBlockEvent; import cn.nukkit.event.entity.EntityDamageEvent; import cn.nukkit.event.entity.EntityDamageEvent.DamageCause; import cn.nukkit.item.Item; @@ -56,12 +61,12 @@ protected float getBaseOffset() { @Override public boolean canCollide() { - return false; + return blockId == BlockID.ANVIL; } protected int blockId; protected int damage; - protected boolean breakOnLava; + protected @PowerNukkitOnly boolean breakOnLava; public EntityFallingBlock(FullChunk chunk, CompoundTag nbt) { super(chunk, nbt); @@ -97,8 +102,9 @@ protected void initEntity() { setDataProperty(new IntEntityData(DATA_VARIANT, GlobalBlockPalette.getOrCreateRuntimeId(this.getBlock(), this.getDamage()))); } + @Override public boolean canCollideWith(Entity entity) { - return false; + return blockId == BlockID.ANVIL; } @Override @@ -189,6 +195,13 @@ public boolean onUpdate(int currentTick) { if (event.getTo().getId() == Item.ANVIL) { getLevel().addLevelEvent(block, LevelEventPacket.EVENT_SOUND_ANVIL_FALL); + + Entity[] e = level.getCollidingEntities(this.getBoundingBox(), this); + for (Entity entity : e) { + if (entity instanceof EntityLiving && fallDistance > 0) { + entity.attack(new EntityDamageByBlockEvent(event.getTo(), entity, DamageCause.FALLING_BLOCK, Math.min(40f, Math.max(0f, fallDistance * 2f)))); + } + } } } } @@ -226,4 +239,19 @@ public void saveNBT() { public boolean canBeMovedByCurrents() { return false; } + + @Override + public void resetFallDistance() { + if (!this.closed) { // For falling anvil: do not reset fall distance before dealing damage to entities + this.highestPosition = this.y; + } + } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Falling Block"; + } } diff --git a/src/main/java/cn/nukkit/entity/item/EntityFirework.java b/src/main/java/cn/nukkit/entity/item/EntityFirework.java index 8390b493a25..a5505ce87c3 100644 --- a/src/main/java/cn/nukkit/entity/item/EntityFirework.java +++ b/src/main/java/cn/nukkit/entity/item/EntityFirework.java @@ -2,6 +2,8 @@ import cn.nukkit.Server; import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.block.Block; import cn.nukkit.entity.Entity; import cn.nukkit.entity.data.ByteEntityData; @@ -183,4 +185,12 @@ public float getWidth() { public float getHeight() { return 0.25f; } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Firework Rocket"; + } } diff --git a/src/main/java/cn/nukkit/entity/item/EntityFishingHook.java b/src/main/java/cn/nukkit/entity/item/EntityFishingHook.java index 4c1b5b7c050..dca7f1b9c65 100644 --- a/src/main/java/cn/nukkit/entity/item/EntityFishingHook.java +++ b/src/main/java/cn/nukkit/entity/item/EntityFishingHook.java @@ -3,6 +3,8 @@ import cn.nukkit.Player; import cn.nukkit.Server; import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.block.Block; import cn.nukkit.entity.Entity; import cn.nukkit.entity.data.LongEntityData; @@ -14,6 +16,7 @@ import cn.nukkit.event.entity.ProjectileHitEvent; import cn.nukkit.event.player.PlayerFishEvent; import cn.nukkit.item.Item; +import cn.nukkit.item.enchantment.Enchantment; import cn.nukkit.item.randomitem.Fishing; import cn.nukkit.level.MovingObjectPosition; import cn.nukkit.level.format.FullChunk; @@ -24,9 +27,10 @@ import cn.nukkit.nbt.NBTIO; import cn.nukkit.nbt.tag.CompoundTag; import cn.nukkit.network.protocol.AddEntityPacket; +import cn.nukkit.network.protocol.DataPacket; import cn.nukkit.network.protocol.EntityEventPacket; -import java.util.Random; +import java.util.Collection; import java.util.concurrent.ThreadLocalRandom; @@ -37,15 +41,14 @@ public class EntityFishingHook extends EntityProjectile { public static final int NETWORK_ID = 77; - public static final int WAIT_CHANCE = 120; - public static final int CHANCE = 40; - - public boolean chance = false; - public int waitChance = WAIT_CHANCE * 2; + public int waitChance = 120; + public int waitTimer = 240; public boolean attracted = false; public int attractTimer = 0; public boolean caught = false; - public int coughtTimer = 0; + public int caughtTimer = 0; + @SuppressWarnings("java:S1845") + public boolean canCollide = true; public Vector3 fish = null; @@ -57,14 +60,9 @@ public EntityFishingHook(FullChunk chunk, CompoundTag nbt) { public EntityFishingHook(FullChunk chunk, CompoundTag nbt, Entity shootingEntity) { super(chunk, nbt, shootingEntity); - } - - @Override - protected void initEntity() { - super.initEntity(); // https://github.com/PowerNukkit/PowerNukkit/issues/267 - if (age > 0) { - close(); + if (this.age > 0) { + this.close(); } } @@ -98,6 +96,11 @@ public float getDrag() { return 0.04f; } + @Override + public boolean canCollide() { + return this.canCollide; + } + @Override public boolean onUpdate(int currentTick) { boolean hasUpdate = false; @@ -118,7 +121,8 @@ public boolean onUpdate(int currentTick) { return false; } - if (this.isInsideOfWater()) { + boolean inWater = this.isInsideOfWater(); + if (inWater) { this.motionX = 0; this.motionY -= getGravity() * -0.04; this.motionZ = 0; @@ -131,37 +135,41 @@ public boolean onUpdate(int currentTick) { hasUpdate = true; } - Random random = new Random(); - - if (this.isInsideOfWater()) { + if (inWater) { + if (this.waitTimer == 240) { + this.waitTimer = this.waitChance << 1; + } else if (this.waitTimer == 360) { + this.waitTimer = this.waitChance * 3; + } if (!this.attracted) { - if (this.waitChance > 0) { - --this.waitChance; + if (this.waitTimer > 0) { + --this.waitTimer; } - if (this.waitChance == 0) { + if (this.waitTimer == 0) { + ThreadLocalRandom random = ThreadLocalRandom.current(); if (random.nextInt(100) < 90) { this.attractTimer = (random.nextInt(40) + 20); this.spawnFish(); this.caught = false; this.attracted = true; } else { - this.waitChance = WAIT_CHANCE; + this.waitTimer = this.waitChance; } } } else if (!this.caught) { if (this.attractFish()) { - this.coughtTimer = (random.nextInt(20) + 30); + this.caughtTimer = (ThreadLocalRandom.current().nextInt(20) + 30); this.fishBites(); this.caught = true; } } else { - if (this.coughtTimer > 0) { - --this.coughtTimer; + if (this.caughtTimer > 0) { + --this.caughtTimer; } - if (this.coughtTimer == 0) { + if (this.caughtTimer == 0) { this.attracted = false; this.caught = false; - this.waitChance = WAIT_CHANCE * 3; + this.waitTimer = this.waitChance * 3; } } } @@ -180,22 +188,24 @@ public int getWaterHeight() { } public void fishBites() { + Collection viewers = this.getViewers().values(); + EntityEventPacket pk = new EntityEventPacket(); pk.eid = this.getId(); pk.event = EntityEventPacket.FISH_HOOK_HOOK; - Server.broadcastPacket(this.getViewers().values(), pk); + Server.broadcastPacket(viewers, pk); EntityEventPacket bubblePk = new EntityEventPacket(); bubblePk.eid = this.getId(); bubblePk.event = EntityEventPacket.FISH_HOOK_BUBBLE; - Server.broadcastPacket(this.getViewers().values(), bubblePk); + Server.broadcastPacket(viewers, bubblePk); EntityEventPacket teasePk = new EntityEventPacket(); teasePk.eid = this.getId(); teasePk.event = EntityEventPacket.FISH_HOOK_TEASE; - Server.broadcastPacket(this.getViewers().values(), teasePk); + Server.broadcastPacket(viewers, teasePk); - Random random = new Random(); + ThreadLocalRandom random = ThreadLocalRandom.current(); for (int i = 0; i < 5; i++) { this.level.addParticle(new BubbleParticle(this.setComponents( this.x + random.nextDouble() * 0.5 - 0.25, @@ -206,7 +216,7 @@ public void fishBites() { } public void spawnFish() { - Random random = new Random(); + ThreadLocalRandom random = ThreadLocalRandom.current(); this.fish = new Vector3( this.x + (random.nextDouble() * 1.2 + 1) * (random.nextBoolean() ? -1 : 1), this.getWaterHeight(), @@ -221,14 +231,11 @@ public boolean attractFish() { this.fish.y, this.fish.z + (this.z - this.fish.z) * multiply ); - if (new Random().nextInt(100) < 85) { + if (ThreadLocalRandom.current().nextInt(100) < 85) { this.level.addParticle(new WaterParticle(this.fish)); } double dist = Math.abs(Math.sqrt(this.x * this.x + this.z * this.z) - Math.sqrt(this.fish.x * this.fish.x + this.fish.z * this.fish.z)); - if (dist < 0.15) { - return true; - } - return false; + return dist < 0.15; } @PowerNukkitDifference(since = "1.4.0.0-PN", info = "May create custom EntityItem") @@ -247,8 +254,8 @@ public void reelLine() { EntityItem itemEntity = (EntityItem) Entity.createEntity(EntityItem.NETWORK_ID, this.level.getChunk((int) this.x >> 4, (int) this.z >> 4, true), Entity.getDefaultNBT( - new Vector3(this.x, this.getWaterHeight(), this.z), - event.getMotion(), ThreadLocalRandom.current().nextFloat() * 360, + new Vector3(this.x, this.getWaterHeight(), this.z), + event.getMotion(), ThreadLocalRandom.current().nextFloat() * 360, 0 ).putCompound("Item", NBTIO.putItemHelper(event.getLoot())) .putShort("Health", 5) @@ -265,7 +272,7 @@ public void reelLine() { } @Override - public void spawnTo(Player player) { + protected DataPacket createAddEntityPacket() { AddEntityPacket pk = new AddEntityPacket(); pk.entityRuntimeId = this.getId(); pk.entityUniqueId = this.getId(); @@ -284,13 +291,7 @@ public void spawnTo(Player player) { ownerId = this.shootingEntity.getId(); } pk.metadata = this.dataProperties.putLong(DATA_OWNER_EID, ownerId); - player.dataPacket(pk); - super.spawnTo(player); - } - - @Override - public boolean canCollide() { - return getDataPropertyLong(DATA_TARGET_EID) == 0L; + return pk; } @Override @@ -306,7 +307,30 @@ public void onCollideWithEntity(Entity entity) { } if (entity.attack(ev)) { - setDataProperty(new LongEntityData(DATA_TARGET_EID, entity.getId())); + this.setTarget(entity.getId()); + } + } + + @Since("1.6.0.0-PN") + public void checkLure() { + if (rod != null) { + Enchantment ench = rod.getEnchantment(Enchantment.ID_LURE); + if (ench != null) { + this.waitChance = 120 - (25 * ench.getLevel()); + } } } + + @Since("1.6.0.0-PN") + public void setTarget(long eid) { + this.setDataProperty(new LongEntityData(DATA_TARGET_EID, eid)); + this.canCollide = eid == 0; + } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Fishing Hook"; + } } diff --git a/src/main/java/cn/nukkit/entity/item/EntityItem.java b/src/main/java/cn/nukkit/entity/item/EntityItem.java index b82c62d98a7..cb52ec5eb1b 100644 --- a/src/main/java/cn/nukkit/entity/item/EntityItem.java +++ b/src/main/java/cn/nukkit/entity/item/EntityItem.java @@ -2,6 +2,8 @@ import cn.nukkit.Server; import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.block.BlockID; import cn.nukkit.entity.Entity; import cn.nukkit.event.entity.EntityDamageEvent; @@ -20,9 +22,8 @@ * @author MagicDroidX */ public class EntityItem extends Entity { - public static final int NETWORK_ID = 64; - public static final int DATA_SOURCE_ID = 17; + public static final int NETWORK_ID = 64; public EntityItem(FullChunk chunk, CompoundTag nbt) { super(chunk, nbt); @@ -288,9 +289,22 @@ public void saveNBT() { } } + @Since("1.5.1.0-PN") + @PowerNukkitOnly + @Override + public String getOriginalName() { + return "Item"; + } + @Override public String getName() { - return this.hasCustomName() ? this.getNameTag() : (this.item.hasCustomName() ? this.item.getCustomName() : this.item.getName()); + if (this.hasCustomName()) { + return getNameTag(); + } + if (item == null) { + return getOriginalName(); + } + return item.count + "x " + (this.item.hasCustomName() ? this.item.getCustomName() : this.item.getName()); } public Item getItem() { diff --git a/src/main/java/cn/nukkit/entity/item/EntityMinecartChest.java b/src/main/java/cn/nukkit/entity/item/EntityMinecartChest.java index e1e7e4d999b..71bffa1142c 100644 --- a/src/main/java/cn/nukkit/entity/item/EntityMinecartChest.java +++ b/src/main/java/cn/nukkit/entity/item/EntityMinecartChest.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.item; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.block.Block; import cn.nukkit.entity.Entity; import cn.nukkit.inventory.InventoryHolder; @@ -28,8 +30,10 @@ public EntityMinecartChest(FullChunk chunk, CompoundTag nbt) { setDisplayBlock(Block.get(Block.CHEST), false); } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return getType().getName(); } diff --git a/src/main/java/cn/nukkit/entity/item/EntityMinecartEmpty.java b/src/main/java/cn/nukkit/entity/item/EntityMinecartEmpty.java index 3b1b5c46556..57c012fb4fb 100644 --- a/src/main/java/cn/nukkit/entity/item/EntityMinecartEmpty.java +++ b/src/main/java/cn/nukkit/entity/item/EntityMinecartEmpty.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.item; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.Entity; import cn.nukkit.entity.EntityLiving; import cn.nukkit.entity.passive.EntityWaterAnimal; @@ -25,8 +27,10 @@ public EntityMinecartEmpty(FullChunk chunk, CompoundTag nbt) { super(chunk, nbt); } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return getType().getName(); } diff --git a/src/main/java/cn/nukkit/entity/item/EntityMinecartHopper.java b/src/main/java/cn/nukkit/entity/item/EntityMinecartHopper.java index 6a76cd09aee..b2ab7955545 100644 --- a/src/main/java/cn/nukkit/entity/item/EntityMinecartHopper.java +++ b/src/main/java/cn/nukkit/entity/item/EntityMinecartHopper.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.item; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.block.Block; import cn.nukkit.entity.Entity; import cn.nukkit.inventory.InventoryHolder; @@ -24,8 +26,10 @@ public EntityMinecartHopper(FullChunk chunk, CompoundTag nbt) { setDisplayBlock(Block.get(Block.HOPPER_BLOCK), false); } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return getType().getName(); } diff --git a/src/main/java/cn/nukkit/entity/item/EntityMinecartTNT.java b/src/main/java/cn/nukkit/entity/item/EntityMinecartTNT.java index 04aa51112d0..81fc4cb2f90 100644 --- a/src/main/java/cn/nukkit/entity/item/EntityMinecartTNT.java +++ b/src/main/java/cn/nukkit/entity/item/EntityMinecartTNT.java @@ -2,6 +2,8 @@ import cn.nukkit.Player; import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.block.Block; import cn.nukkit.block.BlockID; import cn.nukkit.entity.Entity; @@ -117,8 +119,10 @@ public void dropItem() { level.dropItem(this, new ItemMinecartTNT()); } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return getType().getName(); } diff --git a/src/main/java/cn/nukkit/entity/item/EntityPainting.java b/src/main/java/cn/nukkit/entity/item/EntityPainting.java index fd2fb9004ad..dbe31b23522 100644 --- a/src/main/java/cn/nukkit/entity/item/EntityPainting.java +++ b/src/main/java/cn/nukkit/entity/item/EntityPainting.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.item; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.blockentity.BlockEntityPistonArm; import cn.nukkit.entity.Entity; import cn.nukkit.entity.EntityHanging; @@ -133,6 +135,7 @@ public void saveNBT() { this.namedTag.putString("Motive", this.motive.title); } + @PowerNukkitOnly @Override public void onPushByPiston(BlockEntityPistonArm piston) { if (this.level.getGameRules().getBoolean(GameRule.DO_ENTITY_DROPS)) { @@ -196,4 +199,12 @@ public enum Motive { this.height = height; } } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Painting"; + } } diff --git a/src/main/java/cn/nukkit/entity/item/EntityPotion.java b/src/main/java/cn/nukkit/entity/item/EntityPotion.java index 99e5b513698..543379f6826 100644 --- a/src/main/java/cn/nukkit/entity/item/EntityPotion.java +++ b/src/main/java/cn/nukkit/entity/item/EntityPotion.java @@ -1,6 +1,7 @@ package cn.nukkit.entity.item; -import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.Entity; import cn.nukkit.entity.projectile.EntityProjectile; import cn.nukkit.event.potion.PotionCollideEvent; @@ -89,7 +90,7 @@ public void onCollideWithEntity(Entity entity) { this.splash(entity); } - @PowerNukkitDifference(info = "Using new method to play sounds", since = "1.4.0.0-PN") + @PowerNukkitOnly protected void splash(Entity collidedWith) { Potion potion = Potion.getPotion(this.potionId); PotionCollideEvent event = new PotionCollideEvent(potion, this); @@ -162,4 +163,12 @@ public boolean onUpdate(int currentTick) { this.timing.stopTiming(); return hasUpdate; } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Potion"; + } } diff --git a/src/main/java/cn/nukkit/entity/item/EntityPotionLingering.java b/src/main/java/cn/nukkit/entity/item/EntityPotionLingering.java index 12ac555c364..8521c7e50f6 100644 --- a/src/main/java/cn/nukkit/entity/item/EntityPotionLingering.java +++ b/src/main/java/cn/nukkit/entity/item/EntityPotionLingering.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.item; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.Entity; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -9,14 +11,18 @@ import cn.nukkit.potion.Effect; import cn.nukkit.potion.Potion; +@PowerNukkitOnly public class EntityPotionLingering extends EntityPotion { - + + @PowerNukkitOnly public static final int NETWORK_ID = 101; - + + @PowerNukkitOnly public EntityPotionLingering(FullChunk chunk, CompoundTag nbt) { super(chunk, nbt); } - + + @PowerNukkitOnly public EntityPotionLingering(FullChunk chunk, CompoundTag nbt, Entity shootingEntity) { super(chunk, nbt, shootingEntity); } @@ -27,6 +33,7 @@ protected void initEntity() { setDataFlag(DATA_FLAGS, DATA_FLAG_LINGER, true); } + @PowerNukkitOnly @Override protected void splash(Entity collidedWith) { super.splash(collidedWith); @@ -53,4 +60,12 @@ protected void splash(Entity collidedWith) { entity.spawnToAll(); } } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Lingering Potion"; + } } diff --git a/src/main/java/cn/nukkit/entity/item/EntityPrimedTNT.java b/src/main/java/cn/nukkit/entity/item/EntityPrimedTNT.java index 1ad7df10780..15a615671ab 100644 --- a/src/main/java/cn/nukkit/entity/item/EntityPrimedTNT.java +++ b/src/main/java/cn/nukkit/entity/item/EntityPrimedTNT.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.item; import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.Entity; import cn.nukkit.entity.EntityExplosive; import cn.nukkit.entity.data.IntEntityData; @@ -78,6 +80,7 @@ public boolean attack(EntityDamageEvent source) { return source.getCause() == DamageCause.VOID && super.attack(source); } + @Override @PowerNukkitDifference(info = "Using new method to play sounds", since = "1.4.0.0-PN") protected void initEntity() { super.initEntity(); @@ -95,15 +98,18 @@ protected void initEntity() { } + @Override public boolean canCollideWith(Entity entity) { return false; } + @Override public void saveNBT() { super.saveNBT(); namedTag.putByte("Fuse", fuse); } + @Override public boolean onUpdate(int currentTick) { if (closed) { @@ -161,6 +167,7 @@ public boolean onUpdate(int currentTick) { return hasUpdate || fuse >= 0 || Math.abs(motionX) > 0.00001 || Math.abs(motionY) > 0.00001 || Math.abs(motionZ) > 0.00001; } + @Override public void explode() { EntityExplosionPrimeEvent event = new EntityExplosionPrimeEvent(this, 4); server.getPluginManager().callEvent(event); @@ -178,4 +185,12 @@ public void explode() { public Entity getSource() { return source; } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Block of TNT"; + } } diff --git a/src/main/java/cn/nukkit/entity/item/EntityXPOrb.java b/src/main/java/cn/nukkit/entity/item/EntityXPOrb.java index 94bbb987fbd..fc8b5ba4e05 100644 --- a/src/main/java/cn/nukkit/entity/item/EntityXPOrb.java +++ b/src/main/java/cn/nukkit/entity/item/EntityXPOrb.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.item; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.Entity; import cn.nukkit.event.entity.EntityDamageEvent; import cn.nukkit.event.entity.EntityDamageEvent.DamageCause; @@ -264,4 +266,12 @@ public static List splitIntoOrbSizes(int amount) { return result; } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Experience Orb"; + } } diff --git a/src/main/java/cn/nukkit/entity/mob/EntityBlaze.java b/src/main/java/cn/nukkit/entity/mob/EntityBlaze.java index 0b258344e6e..065e6e4af47 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityBlaze.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityBlaze.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -36,11 +38,14 @@ public float getHeight() { return 1.8f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Blaze"; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityCaveSpider.java b/src/main/java/cn/nukkit/entity/mob/EntityCaveSpider.java index a9e77083bb4..2affa521617 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityCaveSpider.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityCaveSpider.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.EntityArthropod; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -37,11 +39,14 @@ public float getHeight() { return 0.5f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { - return "CaveSpider"; + public String getOriginalName() { + return "Cave Spider"; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityCreeper.java b/src/main/java/cn/nukkit/entity/mob/EntityCreeper.java index 52bf242f46c..dc1ad16e59c 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityCreeper.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityCreeper.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.Entity; import cn.nukkit.entity.data.ByteEntityData; import cn.nukkit.entity.weather.EntityLightningStrike; @@ -67,6 +69,7 @@ public void setPowered(boolean powered) { } } + @Override public void onStruckByLightning(Entity entity) { this.setPowered(true); } @@ -81,8 +84,10 @@ protected void initEntity() { this.setMaxHealth(20); } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Creeper"; } @@ -94,6 +99,7 @@ public Item[] getDrops() { return Item.EMPTY_ARRAY; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityDrowned.java b/src/main/java/cn/nukkit/entity/mob/EntityDrowned.java index 50ea237121a..b9b093cf33f 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityDrowned.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityDrowned.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.EntitySmite; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; @@ -38,8 +40,10 @@ public float getHeight() { return 1.9f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Drowned"; } @@ -48,11 +52,13 @@ public Item[] getDrops() { return new Item[]{Item.get(Item.ROTTEN_FLESH)}; } + @PowerNukkitOnly @Override public boolean isUndead() { return true; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityElderGuardian.java b/src/main/java/cn/nukkit/entity/mob/EntityElderGuardian.java index a34343ecf58..6dab4e23621 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityElderGuardian.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityElderGuardian.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -37,11 +39,14 @@ public float getHeight() { return 1.99f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Elder Guardian"; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityEnderDragon.java b/src/main/java/cn/nukkit/entity/mob/EntityEnderDragon.java index 9bcd0b49e76..cf02386d963 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityEnderDragon.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityEnderDragon.java @@ -2,6 +2,7 @@ import cn.nukkit.Player; import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -52,8 +53,10 @@ public boolean applyNameTag(Item item) { return false; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { - return "EnderDragon"; + public String getOriginalName() { + return "Ender Dragon"; } } diff --git a/src/main/java/cn/nukkit/entity/mob/EntityEnderman.java b/src/main/java/cn/nukkit/entity/mob/EntityEnderman.java index c9a449d7266..27b8a9b3b85 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityEnderman.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityEnderman.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -36,11 +38,14 @@ public float getHeight() { return 2.9f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Enderman"; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return this.getDataPropertyBoolean(DATA_FLAG_ANGRY); diff --git a/src/main/java/cn/nukkit/entity/mob/EntityEndermite.java b/src/main/java/cn/nukkit/entity/mob/EntityEndermite.java index 8b57d709ce1..a4eca36fde6 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityEndermite.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityEndermite.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.EntityArthropod; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -37,11 +39,14 @@ public float getHeight() { return 0.3f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Endermite"; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityEvoker.java b/src/main/java/cn/nukkit/entity/mob/EntityEvoker.java index 36785c37c1c..d4f0c2055db 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityEvoker.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityEvoker.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -36,11 +38,14 @@ public float getHeight() { return 1.9f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Evoker"; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityGhast.java b/src/main/java/cn/nukkit/entity/mob/EntityGhast.java index e2c159c8f2c..b7cd44009d5 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityGhast.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityGhast.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.mob; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -35,8 +37,10 @@ public float getHeight() { return 4; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Ghast"; } } diff --git a/src/main/java/cn/nukkit/entity/mob/EntityGuardian.java b/src/main/java/cn/nukkit/entity/mob/EntityGuardian.java index e00caa67e67..3ce38363a5b 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityGuardian.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityGuardian.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -26,8 +28,10 @@ public void initEntity() { this.setMaxHealth(30); } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Guardian"; } @@ -41,6 +45,7 @@ public float getHeight() { return 0.85f; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityHoglin.java b/src/main/java/cn/nukkit/entity/mob/EntityHoglin.java index dc4eb16ab36..3213b93f2b3 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityHoglin.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityHoglin.java @@ -47,11 +47,14 @@ public float getHeight() { return 0.9f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Hoglin"; } + @PowerNukkitOnly @Override public boolean isBaby() { return this.getDataFlag(DATA_FLAGS, DATA_FLAG_BABY); diff --git a/src/main/java/cn/nukkit/entity/mob/EntityHusk.java b/src/main/java/cn/nukkit/entity/mob/EntityHusk.java index 3c27c89302f..6a0a4238ae4 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityHusk.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityHusk.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.EntitySmite; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -37,16 +39,20 @@ public float getHeight() { return 1.9f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Husk"; } + @PowerNukkitOnly @Override public boolean isUndead() { return true; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityIronGolem.java b/src/main/java/cn/nukkit/entity/mob/EntityIronGolem.java index 92f23d7a7d3..a18081cb63c 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityIronGolem.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityIronGolem.java @@ -26,7 +26,6 @@ import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; -import javax.annotation.Nonnull; import java.util.concurrent.ThreadLocalRandom; /** @@ -51,9 +50,10 @@ public int getNetworkId() { return NETWORK_ID; } - @Nonnull + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Iron Golem"; } diff --git a/src/main/java/cn/nukkit/entity/mob/EntityMagmaCube.java b/src/main/java/cn/nukkit/entity/mob/EntityMagmaCube.java index 14e85f22c72..522a383117d 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityMagmaCube.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityMagmaCube.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.mob; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -35,8 +37,10 @@ public float getHeight() { return 2.04f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Magma Cube"; } } diff --git a/src/main/java/cn/nukkit/entity/mob/EntityPhantom.java b/src/main/java/cn/nukkit/entity/mob/EntityPhantom.java index 820e46f435e..71b7be08c6e 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityPhantom.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityPhantom.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.EntitySmite; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; @@ -38,8 +40,10 @@ public float getHeight() { return 0.5f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Phantom"; } @@ -48,11 +52,13 @@ public Item[] getDrops() { return new Item[]{Item.get(470)}; } + @PowerNukkitOnly @Override public boolean isUndead() { return true; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityPiglin.java b/src/main/java/cn/nukkit/entity/mob/EntityPiglin.java index 6e2f1e81c3e..0e554406679 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityPiglin.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityPiglin.java @@ -1,6 +1,7 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.entity.Entity; import cn.nukkit.entity.EntityAgeable; @@ -40,16 +41,20 @@ public float getHeight() { return 1.9f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Piglin"; } + @PowerNukkitOnly @Override public boolean isBaby() { return this.getDataFlag(DATA_FLAGS, Entity.DATA_FLAG_BABY); } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return !this.isBaby()/*TODO: Should this check player's golden armor?*/; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityPiglinBrute.java b/src/main/java/cn/nukkit/entity/mob/EntityPiglinBrute.java index 0cfa8101738..5e8ff2d7561 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityPiglinBrute.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityPiglinBrute.java @@ -45,13 +45,16 @@ public float getHeight() { return 1.9f; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Piglin Brute"; } } diff --git a/src/main/java/cn/nukkit/entity/mob/EntityPillager.java b/src/main/java/cn/nukkit/entity/mob/EntityPillager.java index c05402f8203..6c169d2424e 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityPillager.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityPillager.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -33,11 +35,14 @@ public float getHeight() { return 1.9f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Pillager"; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityRavager.java b/src/main/java/cn/nukkit/entity/mob/EntityRavager.java index 39c14973e5a..848d4861568 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityRavager.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityRavager.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -33,11 +35,14 @@ public float getWidth() { return 1.2f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Ravager"; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityShulker.java b/src/main/java/cn/nukkit/entity/mob/EntityShulker.java index 02e176c1d38..e1ae3596206 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityShulker.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityShulker.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.mob; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -35,8 +37,10 @@ public float getHeight() { return 1f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Shulker"; } } diff --git a/src/main/java/cn/nukkit/entity/mob/EntitySilverfish.java b/src/main/java/cn/nukkit/entity/mob/EntitySilverfish.java index 8713c5949a1..2817468138b 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntitySilverfish.java +++ b/src/main/java/cn/nukkit/entity/mob/EntitySilverfish.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.EntityArthropod; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -21,8 +23,10 @@ public EntitySilverfish(FullChunk chunk, CompoundTag nbt) { super(chunk, nbt); } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Silverfish"; } @@ -42,6 +46,7 @@ public void initEntity() { this.setMaxHealth(8); } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntitySkeleton.java b/src/main/java/cn/nukkit/entity/mob/EntitySkeleton.java index 32aaeb241a7..e14d6765203 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntitySkeleton.java +++ b/src/main/java/cn/nukkit/entity/mob/EntitySkeleton.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.EntitySmite; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; @@ -38,8 +40,10 @@ public float getHeight() { return 1.9f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Skeleton"; } @@ -48,11 +52,13 @@ public Item[] getDrops() { return new Item[]{Item.get(Item.BONE, Item.ARROW)}; } + @PowerNukkitOnly @Override public boolean isUndead() { return true; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntitySlime.java b/src/main/java/cn/nukkit/entity/mob/EntitySlime.java index 34ba44764b2..9539c34cc7f 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntitySlime.java +++ b/src/main/java/cn/nukkit/entity/mob/EntitySlime.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.mob; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -36,8 +38,10 @@ public float getHeight() { return 2.04f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Slime"; } diff --git a/src/main/java/cn/nukkit/entity/mob/EntitySnowGolem.java b/src/main/java/cn/nukkit/entity/mob/EntitySnowGolem.java index 2512d9f7c20..33e921e91b2 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntitySnowGolem.java +++ b/src/main/java/cn/nukkit/entity/mob/EntitySnowGolem.java @@ -1,5 +1,6 @@ package cn.nukkit.entity.mob; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -19,8 +20,10 @@ public int getNetworkId() { return NETWORK_ID; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Snow Golem"; } diff --git a/src/main/java/cn/nukkit/entity/mob/EntitySpider.java b/src/main/java/cn/nukkit/entity/mob/EntitySpider.java index 537f8d02239..b6f50dd80d7 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntitySpider.java +++ b/src/main/java/cn/nukkit/entity/mob/EntitySpider.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.EntityArthropod; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; @@ -38,8 +40,10 @@ public float getHeight() { return 0.9f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Spider"; } @@ -48,6 +52,7 @@ public Item[] getDrops() { return new Item[]{Item.get(Item.STRING, Item.SPIDER_EYE)}; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityStray.java b/src/main/java/cn/nukkit/entity/mob/EntityStray.java index ff7aecb53f8..dd73a7233cf 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityStray.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityStray.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.EntitySmite; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; @@ -38,8 +40,10 @@ public float getHeight() { return 1.9f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Stray"; } @@ -48,11 +52,13 @@ public Item[] getDrops() { return new Item[]{Item.get(Item.BONE, Item.ARROW)}; } + @PowerNukkitOnly @Override public boolean isUndead() { return true; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityVex.java b/src/main/java/cn/nukkit/entity/mob/EntityVex.java index 6d479124e58..0ba5ee8690a 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityVex.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityVex.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -36,11 +38,14 @@ public float getHeight() { return 0.8f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Vex"; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityVindicator.java b/src/main/java/cn/nukkit/entity/mob/EntityVindicator.java index 03d9ef0b7a1..3936b523919 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityVindicator.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityVindicator.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -37,8 +39,10 @@ public float getHeight() { return 1.9f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Vindicator"; } @@ -47,6 +51,7 @@ public Item[] getDrops() { return new Item[]{Item.get(Item.IRON_AXE)}; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityWitch.java b/src/main/java/cn/nukkit/entity/mob/EntityWitch.java index de7766d4a9c..62878d383a7 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityWitch.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityWitch.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -36,11 +38,14 @@ public float getHeight() { return 1.9f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Witch"; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityWither.java b/src/main/java/cn/nukkit/entity/mob/EntityWither.java index 398db9985dd..5a02b1fb7e9 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityWither.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityWither.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.EntitySmite; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -37,16 +39,20 @@ protected void initEntity() { this.setMaxHealth(600); } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Wither"; } + @PowerNukkitOnly @Override public boolean isUndead() { return true; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityWitherSkeleton.java b/src/main/java/cn/nukkit/entity/mob/EntityWitherSkeleton.java index d0f64679493..c829a39f9a0 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityWitherSkeleton.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityWitherSkeleton.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.EntitySmite; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -36,16 +38,20 @@ public float getHeight() { return 2.01f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { - return "WitherSkeleton"; + public String getOriginalName() { + return "Wither Skeleton"; } + @PowerNukkitOnly @Override public boolean isUndead() { return true; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityZoglin.java b/src/main/java/cn/nukkit/entity/mob/EntityZoglin.java index 0541572d860..2bd7f4de2dc 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityZoglin.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityZoglin.java @@ -48,21 +48,26 @@ public float getHeight() { return 0.9f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Zoglin"; } + @PowerNukkitOnly @Override public boolean isUndead() { return true; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; } + @PowerNukkitOnly @Override public boolean isBaby() { return this.getDataFlag(DATA_FLAGS, DATA_FLAG_BABY); diff --git a/src/main/java/cn/nukkit/entity/mob/EntityZombie.java b/src/main/java/cn/nukkit/entity/mob/EntityZombie.java index bfc7e4a8d6b..a250ca3f01f 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityZombie.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityZombie.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.EntitySmite; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -38,16 +40,20 @@ public float getHeight() { return 1.9f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Zombie"; } + @PowerNukkitOnly @Override public boolean isUndead() { return true; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityZombiePigman.java b/src/main/java/cn/nukkit/entity/mob/EntityZombiePigman.java index 0a34f6e67e9..f1e23b9e68b 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityZombiePigman.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityZombiePigman.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.EntitySmite; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -37,16 +39,20 @@ public float getHeight() { return 1.9f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { - return "ZombiePigman"; + public String getOriginalName() { + return "Zombified Piglin"; } + @PowerNukkitOnly @Override public boolean isUndead() { return true; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return this.getDataPropertyBoolean(DATA_FLAG_ANGRY); diff --git a/src/main/java/cn/nukkit/entity/mob/EntityZombieVillager.java b/src/main/java/cn/nukkit/entity/mob/EntityZombieVillager.java index 3382217fe71..dab9f05fb56 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityZombieVillager.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityZombieVillager.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.mob; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.EntitySmite; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -34,16 +36,20 @@ public float getHeight() { return 1.9f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Zombie Villager"; } + @PowerNukkitOnly @Override public boolean isUndead() { return true; } + @PowerNukkitOnly @Override public boolean isPreventingSleep(Player player) { return true; diff --git a/src/main/java/cn/nukkit/entity/mob/EntityZombieVillagerV1.java b/src/main/java/cn/nukkit/entity/mob/EntityZombieVillagerV1.java index bf06c34da1b..5b41fbb01ad 100644 --- a/src/main/java/cn/nukkit/entity/mob/EntityZombieVillagerV1.java +++ b/src/main/java/cn/nukkit/entity/mob/EntityZombieVillagerV1.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.mob; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.EntitySmite; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -36,11 +38,14 @@ public float getHeight() { return 1.9f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Zombie Villager"; } + @PowerNukkitOnly @Override public boolean isUndead() { return true; diff --git a/src/main/java/cn/nukkit/entity/passive/EntityBat.java b/src/main/java/cn/nukkit/entity/passive/EntityBat.java index de801a1efe8..2618bc8bf24 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityBat.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityBat.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -34,4 +36,12 @@ public void initEntity() { super.initEntity(); this.setMaxHealth(6); } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Bat"; + } } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityBee.java b/src/main/java/cn/nukkit/entity/passive/EntityBee.java index bd05e784183..9a08794ef3e 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityBee.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityBee.java @@ -1,6 +1,7 @@ package cn.nukkit.entity.passive; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.block.Block; import cn.nukkit.block.BlockBeehive; @@ -49,21 +50,25 @@ public float getHeight() { return 0.5f; } + @PowerNukkitOnly @Since("1.1.1.0-PN") public boolean getHasNectar() { return false; } + @PowerNukkitOnly @Since("1.1.1.0-PN") public void setHasNectar(boolean hasNectar) { } + @PowerNukkitOnly @Since("1.1.1.0-PN") public boolean isAngry() { return false; } + @PowerNukkitOnly @Since("1.1.1.0-PN") public void setAngry(boolean angry) { @@ -106,18 +111,29 @@ protected void initEntity() { this.setMaxHealth(10); } + @PowerNukkitOnly @Since("1.1.1.0-PN") public void nectarDelivered(BlockEntityBeehive blockEntityBeehive) { } + @PowerNukkitOnly @Since("1.1.1.0-PN") public void leftBeehive(BlockEntityBeehive blockEntityBeehive) { } + @PowerNukkitOnly @Since("1.1.1.0-PN") public void setAngry(Player player) { } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Bee"; + } } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityCat.java b/src/main/java/cn/nukkit/entity/passive/EntityCat.java index 6381ea60561..aa9eadd0295 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityCat.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityCat.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -37,4 +39,12 @@ public void initEntity() { super.initEntity(); this.setMaxHealth(10); } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Cat"; + } } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityChicken.java b/src/main/java/cn/nukkit/entity/passive/EntityChicken.java index 3dd62f09871..44b7ff949dc 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityChicken.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityChicken.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -31,8 +33,10 @@ public float getHeight() { return 0.8f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Chicken"; } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityCod.java b/src/main/java/cn/nukkit/entity/passive/EntityCod.java index e4a09151d35..a73ad5c72ff 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityCod.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityCod.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -19,7 +21,10 @@ public int getNetworkId() { return NETWORK_ID; } - public String getName() { + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { return "Cod"; } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityCow.java b/src/main/java/cn/nukkit/entity/passive/EntityCow.java index c1a77a9c8d4..9a4d8c1ac7f 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityCow.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityCow.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -31,8 +33,10 @@ public float getHeight() { return 1.3f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Cow"; } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityDolphin.java b/src/main/java/cn/nukkit/entity/passive/EntityDolphin.java index 7a9b1269758..54f41179c9b 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityDolphin.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityDolphin.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -20,7 +22,10 @@ public int getNetworkId() { return NETWORK_ID; } - public String getName() { + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { return "Dolphin"; } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityDonkey.java b/src/main/java/cn/nukkit/entity/passive/EntityDonkey.java index b27b0c7f68c..612391f7cf9 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityDonkey.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityDonkey.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -46,4 +48,12 @@ public void initEntity() { public Item[] getDrops() { return new Item[]{Item.get(Item.LEATHER)}; } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Donkey"; + } } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityFox.java b/src/main/java/cn/nukkit/entity/passive/EntityFox.java index 872a1c4b5b9..2956d891b89 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityFox.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityFox.java @@ -1,5 +1,6 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -40,8 +41,10 @@ protected void initEntity() { this.setMaxHealth(20); } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Fox"; } } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityHorse.java b/src/main/java/cn/nukkit/entity/passive/EntityHorse.java index af3461880fc..3279cc6f8e3 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityHorse.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityHorse.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -46,4 +48,12 @@ public void initEntity() { public Item[] getDrops() { return new Item[]{Item.get(Item.LEATHER)}; } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Horse"; + } } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityLlama.java b/src/main/java/cn/nukkit/entity/passive/EntityLlama.java index 6536a79ee0c..71ea229972d 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityLlama.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityLlama.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -48,4 +50,12 @@ public void initEntity() { super.initEntity(); this.setMaxHealth(15); } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Llama"; + } } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityMooshroom.java b/src/main/java/cn/nukkit/entity/passive/EntityMooshroom.java index 4a4b982c401..ced896fefa7 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityMooshroom.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityMooshroom.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -31,8 +33,10 @@ public float getHeight() { return 1.3f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Mooshroom"; } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityMule.java b/src/main/java/cn/nukkit/entity/passive/EntityMule.java index ae138004025..dd1cca7cb55 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityMule.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityMule.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -46,4 +48,12 @@ public void initEntity() { super.initEntity(); this.setMaxHealth(15); } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Mule"; + } } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityNPCEntity.java b/src/main/java/cn/nukkit/entity/passive/EntityNPCEntity.java index 55abc3d242c..5c5236c9641 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityNPCEntity.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityNPCEntity.java @@ -49,8 +49,10 @@ public String getInteractButtonText() { return "action.interact.edit"; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "NPC"; } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityOcelot.java b/src/main/java/cn/nukkit/entity/passive/EntityOcelot.java index 04977a6c425..8a01c864f0e 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityOcelot.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityOcelot.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -31,8 +33,10 @@ public float getHeight() { return 0.7f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Ocelot"; } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityPanda.java b/src/main/java/cn/nukkit/entity/passive/EntityPanda.java index fd34ddd055a..ecd747c3bb3 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityPanda.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityPanda.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -31,4 +33,12 @@ public void initEntity() { super.initEntity(); this.setMaxHealth(20); } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Panda"; + } } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityParrot.java b/src/main/java/cn/nukkit/entity/passive/EntityParrot.java index 955329a59b8..1bfd2a3d610 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityParrot.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityParrot.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -20,7 +22,10 @@ public int getNetworkId() { return NETWORK_ID; } - public String getName() { + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { return "Parrot"; } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityPig.java b/src/main/java/cn/nukkit/entity/passive/EntityPig.java index 85b6da5b9df..11c6d01c9bb 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityPig.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityPig.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -37,8 +39,10 @@ public void initEntity() { this.setMaxHealth(10); } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Pig"; } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityPolarBear.java b/src/main/java/cn/nukkit/entity/passive/EntityPolarBear.java index 21f29c0458d..fb91711f944 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityPolarBear.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityPolarBear.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -46,4 +48,12 @@ public void initEntity() { public Item[] getDrops() { return new Item[]{Item.get(Item.RAW_FISH), Item.get(Item.RAW_SALMON)}; } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Polar Bear"; + } } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityPufferfish.java b/src/main/java/cn/nukkit/entity/passive/EntityPufferfish.java index 1a30aceec5e..e9423f6279a 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityPufferfish.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityPufferfish.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -19,7 +21,10 @@ public int getNetworkId() { return NETWORK_ID; } - public String getName() { + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { return "Pufferfish"; } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityRabbit.java b/src/main/java/cn/nukkit/entity/passive/EntityRabbit.java index 394b34c6b18..210c0d40b9e 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityRabbit.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityRabbit.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -31,8 +33,10 @@ public float getHeight() { return 0.67f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Rabbit"; } diff --git a/src/main/java/cn/nukkit/entity/passive/EntitySalmon.java b/src/main/java/cn/nukkit/entity/passive/EntitySalmon.java index d29dc648e21..8926d7a7fbd 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntitySalmon.java +++ b/src/main/java/cn/nukkit/entity/passive/EntitySalmon.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -19,7 +21,10 @@ public int getNetworkId() { return NETWORK_ID; } - public String getName() { + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { return "Salmon"; } diff --git a/src/main/java/cn/nukkit/entity/passive/EntitySheep.java b/src/main/java/cn/nukkit/entity/passive/EntitySheep.java index b0ff618e885..a9e79eaec3b 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntitySheep.java +++ b/src/main/java/cn/nukkit/entity/passive/EntitySheep.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.passive; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.data.ByteEntityData; import cn.nukkit.event.entity.EntityDamageByEntityEvent; import cn.nukkit.item.Item; @@ -42,8 +44,10 @@ public float getHeight() { return 1.3f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Sheep"; } diff --git a/src/main/java/cn/nukkit/entity/passive/EntitySkeletonHorse.java b/src/main/java/cn/nukkit/entity/passive/EntitySkeletonHorse.java index 0b11656e64c..25f9c2d5476 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntitySkeletonHorse.java +++ b/src/main/java/cn/nukkit/entity/passive/EntitySkeletonHorse.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.EntitySmite; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; @@ -42,8 +44,17 @@ public Item[] getDrops() { return new Item[]{Item.get(Item.BONE)}; } + @PowerNukkitOnly @Override public boolean isUndead() { return true; } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Skeleton Horse"; + } } diff --git a/src/main/java/cn/nukkit/entity/passive/EntitySquid.java b/src/main/java/cn/nukkit/entity/passive/EntitySquid.java index c1ce19d9bed..6dab217e4f1 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntitySquid.java +++ b/src/main/java/cn/nukkit/entity/passive/EntitySquid.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.item.Item; import cn.nukkit.item.MinecraftItemID; import cn.nukkit.level.format.FullChunk; @@ -41,4 +43,12 @@ public void initEntity() { public Item[] getDrops() { return new Item[]{MinecraftItemID.INK_SAC.get(1)}; } + + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Squid"; + } } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityStrider.java b/src/main/java/cn/nukkit/entity/passive/EntityStrider.java index 001da949c9b..88ce05a70a7 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityStrider.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityStrider.java @@ -1,5 +1,6 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -37,8 +38,10 @@ public float getHeight() { return 1.7f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Strider"; } } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityTameable.java b/src/main/java/cn/nukkit/entity/passive/EntityTameable.java index 9499c2a220e..3d355d25426 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityTameable.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityTameable.java @@ -74,11 +74,6 @@ public Player getOwner() { return getServer().getPlayer(getOwnerName()); } - @Override - public String getName() { - return getNameTag(); - } - public boolean isTamed() { return (getDataPropertyByte(DATA_TAMED_FLAG) & 4) != 0; } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityTropicalFish.java b/src/main/java/cn/nukkit/entity/passive/EntityTropicalFish.java index 8c6aa42b97a..79aca0eb7e2 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityTropicalFish.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityTropicalFish.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -19,7 +21,10 @@ public int getNetworkId() { return NETWORK_ID; } - public String getName() { + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { return "Tropical Fish"; } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityTurtle.java b/src/main/java/cn/nukkit/entity/passive/EntityTurtle.java index 880a2eea793..23f9c862710 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityTurtle.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityTurtle.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.format.FullChunk; import cn.nukkit.math.Vector3; import cn.nukkit.nbt.tag.CompoundTag; @@ -20,7 +22,10 @@ public int getNetworkId() { return NETWORK_ID; } - public String getName() { + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { return "Turtle"; } @@ -46,10 +51,12 @@ public void initEntity() { this.setMaxHealth(30); } + @PowerNukkitOnly public void setBreedingAge(int ticks) { } + @PowerNukkitOnly public void setHomePos(Vector3 pos) { } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityVillager.java b/src/main/java/cn/nukkit/entity/passive/EntityVillager.java index f07cae39843..8f074780f80 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityVillager.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityVillager.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.EntityAgeable; import cn.nukkit.entity.EntityCreature; import cn.nukkit.level.format.FullChunk; @@ -34,8 +36,10 @@ public float getHeight() { return 1.9f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Villager"; } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityVillagerV1.java b/src/main/java/cn/nukkit/entity/passive/EntityVillagerV1.java index 33aca7df386..707d64a843c 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityVillagerV1.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityVillagerV1.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.Entity; import cn.nukkit.entity.EntityAgeable; import cn.nukkit.entity.EntityCreature; @@ -40,8 +42,10 @@ public float getHeight() { return 1.9f; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Villager"; } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityWanderingTrader.java b/src/main/java/cn/nukkit/entity/passive/EntityWanderingTrader.java index 9b00daf6db1..c4042c112d8 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityWanderingTrader.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityWanderingTrader.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.EntityCreature; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -21,9 +23,11 @@ public float getWidth() { public float getHeight() { return 1.9f; } - + + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Wandering Trader"; } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityWolf.java b/src/main/java/cn/nukkit/entity/passive/EntityWolf.java index 5c2c6fb6763..a5e88685290 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityWolf.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityWolf.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; import cn.nukkit.nbt.tag.CompoundTag; @@ -24,9 +26,11 @@ public float getWidth() { public float getHeight() { return 0.8f; } - + + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { + public String getOriginalName() { return "Wolf"; } diff --git a/src/main/java/cn/nukkit/entity/passive/EntityZombieHorse.java b/src/main/java/cn/nukkit/entity/passive/EntityZombieHorse.java index 40a0183a784..eb635579b74 100644 --- a/src/main/java/cn/nukkit/entity/passive/EntityZombieHorse.java +++ b/src/main/java/cn/nukkit/entity/passive/EntityZombieHorse.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.passive; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.EntitySmite; import cn.nukkit.item.Item; import cn.nukkit.level.format.FullChunk; @@ -42,8 +44,16 @@ public Item[] getDrops() { return new Item[]{Item.get(Item.ROTTEN_FLESH, 1, 1)}; } + @PowerNukkitOnly @Override public boolean isUndead() { return true; } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Zombie Horse"; + } } diff --git a/src/main/java/cn/nukkit/entity/projectile/EntityArrow.java b/src/main/java/cn/nukkit/entity/projectile/EntityArrow.java index 7f67bab01ad..f5688a31678 100644 --- a/src/main/java/cn/nukkit/entity/projectile/EntityArrow.java +++ b/src/main/java/cn/nukkit/entity/projectile/EntityArrow.java @@ -15,13 +15,8 @@ * @author MagicDroidX (Nukkit Project) */ public class EntityArrow extends EntityProjectile { - public static final int NETWORK_ID = 80; - - public static final int DATA_SOURCE_ID = 17; - public static final int PICKUP_NONE = 0; - public static final int PICKUP_ANY = 1; - public static final int PICKUP_CREATIVE = 2; + public static final int NETWORK_ID = 80; protected int pickupMode; @@ -65,7 +60,7 @@ protected void updateMotion() { } float drag = 1 - this.getDrag() * 20; - + motionY -= getGravity() * 2; if (motionY < 0) { motionY *= drag / 1.5; @@ -84,13 +79,13 @@ public EntityArrow(FullChunk chunk, CompoundTag nbt, Entity shootingEntity) { public EntityArrow(FullChunk chunk, CompoundTag nbt, Entity shootingEntity, boolean critical) { super(chunk, nbt, shootingEntity); - closeOnCollide = false; this.setCritical(critical); } @Override protected void initEntity() { super.initEntity(); + closeOnCollide = false; this.damage = namedTag.contains("damage") ? namedTag.getDouble("damage") : 2; this.pickupMode = namedTag.contains("pickup") ? namedTag.getByte("pickup") : PICKUP_ANY; @@ -143,6 +138,12 @@ public boolean onUpdate(int currentTick) { hasUpdate = true; } + if (this.level.isRaining() && this.fireTicks > 0 && this.level.canBlockSeeSky(this)) { + extinguish(); + + hasUpdate = true; + } + this.timing.stopTiming(); return hasUpdate; @@ -164,6 +165,7 @@ protected void afterCollisionWithEntity(Entity entity) { } } + @PowerNukkitOnly @Override protected void addHitEffect() { this.level.addSound(this, Sound.RANDOM_BOWHIT); @@ -172,7 +174,7 @@ protected void addHitEffect() { packet.event = EntityEventPacket.ARROW_SHAKE; packet.data = 7; // TODO Magic value. I have no idea why we have to set it to 7 here... Server.broadcastPacket(this.hasSpawned.values(), packet); - + onGround = true; } @@ -190,4 +192,11 @@ public int getPickupMode() { public void setPickupMode(int pickupMode) { this.pickupMode = pickupMode; } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Arrow"; + } } diff --git a/src/main/java/cn/nukkit/entity/projectile/EntityEgg.java b/src/main/java/cn/nukkit/entity/projectile/EntityEgg.java index 2e33c328632..62c0280b2af 100644 --- a/src/main/java/cn/nukkit/entity/projectile/EntityEgg.java +++ b/src/main/java/cn/nukkit/entity/projectile/EntityEgg.java @@ -1,5 +1,7 @@ package cn.nukkit.entity.projectile; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.Entity; import cn.nukkit.item.ItemEgg; import cn.nukkit.level.format.FullChunk; @@ -12,6 +14,7 @@ * @author MagicDroidX (Nukkit Project) */ public class EntityEgg extends EntityProjectile { + public static final int NETWORK_ID = 82; @Override @@ -67,7 +70,8 @@ public boolean onUpdate(int currentTick) { return hasUpdate; } - + + @PowerNukkitOnly @Override protected void addHitEffect() { int particles = ThreadLocalRandom.current().nextInt(10) + 5; @@ -76,4 +80,11 @@ protected void addHitEffect() { level.addParticle(new ItemBreakParticle(this, egg)); } } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Egg"; + } } diff --git a/src/main/java/cn/nukkit/entity/projectile/EntityEnderPearl.java b/src/main/java/cn/nukkit/entity/projectile/EntityEnderPearl.java index 8d59b5c78f5..78f3b5d5d97 100644 --- a/src/main/java/cn/nukkit/entity/projectile/EntityEnderPearl.java +++ b/src/main/java/cn/nukkit/entity/projectile/EntityEnderPearl.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.projectile; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.block.Block; import cn.nukkit.entity.Entity; import cn.nukkit.event.entity.EntityDamageByEntityEvent; @@ -13,6 +15,7 @@ import cn.nukkit.network.protocol.LevelEventPacket; public class EntityEnderPearl extends EntityProjectile { + public static final int NETWORK_ID = 87; @Override @@ -106,4 +109,11 @@ private void teleport() { this.level.addLevelEvent(this, LevelEventPacket.EVENT_PARTICLE_ENDERMAN_TELEPORT); this.level.addLevelEvent(this.shootingEntity.add(0.5, 0.5, 0.5), LevelEventPacket.EVENT_SOUND_PORTAL); } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Ender Pearl"; + } } diff --git a/src/main/java/cn/nukkit/entity/projectile/EntityProjectile.java b/src/main/java/cn/nukkit/entity/projectile/EntityProjectile.java index 45d940e0535..bbad2aa473a 100644 --- a/src/main/java/cn/nukkit/entity/projectile/EntityProjectile.java +++ b/src/main/java/cn/nukkit/entity/projectile/EntityProjectile.java @@ -1,5 +1,6 @@ package cn.nukkit.entity.projectile; +import cn.nukkit.api.DeprecationDetails; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.Player; @@ -8,7 +9,6 @@ import cn.nukkit.entity.EntityLiving; import cn.nukkit.entity.data.LongEntityData; import cn.nukkit.entity.item.EntityEndCrystal; -import cn.nukkit.event.block.BellRingEvent; import cn.nukkit.event.entity.*; import cn.nukkit.event.entity.EntityDamageEvent.DamageCause; import cn.nukkit.level.MovingObjectPosition; @@ -29,13 +29,19 @@ public abstract class EntityProjectile extends Entity { public static final int DATA_SHOOTER_ID = 17; + @Since("1.6.0.0-PN") public static final int PICKUP_NONE = 0; + @Since("1.6.0.0-PN") public static final int PICKUP_ANY = 1; + @Since("1.6.0.0-PN") public static final int PICKUP_CREATIVE = 2; + + public Entity shootingEntity; + + /** + * It's inverted from {@link #getHasAge()} because of the poor architecture chosen by the original devs + * on the entity construction and initialization. It's impossible to set it to true before + * the initialization of the child classes. + */ + private boolean noAge; - public Entity shootingEntity = null; - - @PowerNukkitOnly - @Since("1.4.0.0-PN") - public boolean hasAge = true; - protected double getDamage() { return namedTag.contains("damage") ? namedTag.getDouble("damage") : getBaseDamage(); } @@ -44,11 +50,13 @@ protected double getBaseDamage() { return 0; } - public boolean hadCollision = false; + public boolean hadCollision; - public boolean closeOnCollide = true; + public boolean closeOnCollide; - protected double damage = 0; + @Deprecated + @DeprecationDetails(since = "1.6.0.0-PN", by = "PowerNukkit", reason = "Redundant and unused", replaceWith = "getDamage()") + protected double damage; public EntityProjectile(FullChunk chunk, CompoundTag nbt) { this(chunk, nbt, null); @@ -61,6 +69,8 @@ public EntityProjectile(FullChunk chunk, CompoundTag nbt, Entity shootingEntity) this.setDataProperty(new LongEntityData(DATA_SHOOTER_ID, shootingEntity.getId())); } } + + @PowerNukkitOnly("Allows to modify the damage based on the entity being damaged") @Since("1.4.0.0-PN") @@ -72,6 +82,7 @@ public int getResultDamage() { return NukkitMath.ceilDouble(Math.sqrt(this.motionX * this.motionX + this.motionY * this.motionY + this.motionZ * this.motionZ) * getDamage()); } + @Override public boolean attack(EntityDamageEvent source) { return source.getCause() == DamageCause.VOID && super.attack(source); } @@ -98,7 +109,7 @@ public void onCollideWithEntity(Entity entity) { if (this.fireTicks > 0) { EntityCombustByEntityEvent event = new EntityCombustByEntityEvent(this, entity, 5); - this.server.getPluginManager().callEvent(ev); + this.server.getPluginManager().callEvent(event); if (!event.isCancelled()) { entity.setOnFire(event.getDuration()); } @@ -109,20 +120,21 @@ public void onCollideWithEntity(Entity entity) { this.close(); } } - + @PowerNukkitOnly @Since("1.4.0.0-PN") protected void afterCollisionWithEntity(Entity entity) { - + } @Override protected void initEntity() { + this.closeOnCollide = true; super.initEntity(); this.setMaxHealth(1); this.setHealth(1); - if (this.namedTag.contains("Age") && this.hasAge) { + if (this.namedTag.contains("Age") && !this.noAge) { this.age = this.namedTag.getShort("Age"); } } @@ -135,7 +147,7 @@ public boolean canCollideWith(Entity entity) { @Override public void saveNBT() { super.saveNBT(); - if (this.hasAge) { + if (!this.noAge) { this.namedTag.putShort("Age", this.age); } } @@ -147,7 +159,7 @@ protected void updateMotion() { this.motionX *= 1 - this.getDrag(); this.motionZ *= 1 - this.getDrag(); } - + @Override public boolean onUpdate(int currentTick) { if (this.closed) { @@ -245,12 +257,14 @@ public boolean onUpdate(int currentTick) { return hasUpdate; } + @PowerNukkitOnly public void updateRotation() { double f = Math.sqrt((this.motionX * this.motionX) + (this.motionZ * this.motionZ)); this.yaw = Math.atan2(this.motionX, this.motionZ) * 180 / Math.PI; this.pitch = Math.atan2(this.motionY, f) * 180 / Math.PI; } + @PowerNukkitOnly public void inaccurate(float modifier) { Random rand = ThreadLocalRandom.current(); @@ -277,16 +291,34 @@ protected boolean onCollideWithBlock(Position position, Vector3 motion, Block co protected void addHitEffect() { } - + @PowerNukkitOnly @Since("1.4.0.0-PN") + @Deprecated + @DeprecationDetails( + by = "PowerNukkit", since = "1.6.0.0-PN", reason = "Bad method name", replaceWith = "getHasAge", + toBeRemovedAt = "1.7.0.0-PN") public boolean hasAge() { - return hasAge; + return getHasAge(); } - + @PowerNukkitOnly @Since("1.4.0.0-PN") + @Deprecated + @DeprecationDetails( + by = "PowerNukkit", since = "1.6.0.0-PN", reason = "Bad method name", replaceWith = "setHasAge", + toBeRemovedAt = "1.7.0.0-PN") public void setAge(boolean hasAge) { - this.hasAge = hasAge; + setHasAge(hasAge); + } + + @PowerNukkitOnly + @Since("1.4.0.0-PN") + public void setHasAge(boolean hasAge) { + this.noAge = !hasAge; + } + + public boolean getHasAge() { + return !this.noAge; } } diff --git a/src/main/java/cn/nukkit/entity/projectile/EntitySnowball.java b/src/main/java/cn/nukkit/entity/projectile/EntitySnowball.java index 27efc491eee..4700d5209f8 100644 --- a/src/main/java/cn/nukkit/entity/projectile/EntitySnowball.java +++ b/src/main/java/cn/nukkit/entity/projectile/EntitySnowball.java @@ -2,6 +2,7 @@ import cn.nukkit.Player; import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.Entity; import cn.nukkit.entity.mob.EntityBlaze; import cn.nukkit.level.Level; @@ -19,6 +20,7 @@ * @author MagicDroidX (Nukkit Project) */ public class EntitySnowball extends EntityProjectile { + public static final int NETWORK_ID = 81; private static final byte[] particleCounts = new byte[24]; private static int particleIndex = 0; @@ -100,6 +102,7 @@ public int getResultDamage(@Nullable Entity entity) { return entity instanceof EntityBlaze ? 3 : super.getResultDamage(entity); } + @PowerNukkitOnly @Override protected void addHitEffect() { int particles = nextParticleCount(); @@ -114,4 +117,11 @@ protected void addHitEffect() { Level level = this.level; level.getServer().batchPackets(level.getChunkPlayers(chunkX, chunkZ).values().toArray(Player.EMPTY_ARRAY), allPackets); } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Snowball"; + } } diff --git a/src/main/java/cn/nukkit/entity/projectile/EntityThrownTrident.java b/src/main/java/cn/nukkit/entity/projectile/EntityThrownTrident.java index 03c20f6b137..f53b09fea28 100644 --- a/src/main/java/cn/nukkit/entity/projectile/EntityThrownTrident.java +++ b/src/main/java/cn/nukkit/entity/projectile/EntityThrownTrident.java @@ -1,6 +1,7 @@ package cn.nukkit.entity.projectile; import cn.nukkit.Player; +import cn.nukkit.api.DeprecationDetails; import cn.nukkit.api.PowerNukkitDifference; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; @@ -39,62 +40,46 @@ public class EntityThrownTrident extends EntityProjectile { public static final int NETWORK_ID = 73; + private static final String TAG_PICKUP = "pickup"; + private static final String TAG_TRIDENT = "Trident"; + private static final String TAG_FAVORED_SLOT = "favoredSlot"; + private static final String TAG_CREATIVE = "isCreative"; + private static final String TAG_PLAYER = "player"; + private static final String NAME_TRIDENT = "Trident"; - public static final int DATA_SOURCE_ID = 17; - - // NBT data protected Item trident; - - @PowerNukkitOnly - @Since("1.4.0.0-PN") + private Vector3 collisionPos; - - @PowerNukkitOnly - @Since("1.4.0.0-PN") + private BlockVector3 stuckToBlockPos; - - @PowerNukkitOnly - @Since("1.4.0.0-PN") + private int favoredSlot; - - @PowerNukkitOnly - @Since("1.4.0.0-PN") - private boolean isCreative; - - @PowerNukkitOnly - @Since("1.4.0.0-PN") + private boolean player; - + // Enchantment - @PowerNukkitOnly - @Since("1.4.0.0-PN") private int loyaltyLevel; - - @PowerNukkitOnly - @Since("1.4.0.0-PN") + private boolean hasChanneling; - - @PowerNukkitOnly - @Since("1.4.0.0-PN") + private int riptideLevel; - - @PowerNukkitOnly - @Since("1.4.0.0-PN") + private int impalingLevel; - + // Default Values + @PowerNukkitOnly protected float gravity = 0.04f; - - protected float drag = 0.01f; - + @PowerNukkitOnly - @Since("1.4.0.0-PN") + protected float drag = 0.01f; + private static final Vector3 defaultCollisionPos = new Vector3(0, 0, 0); - - @PowerNukkitOnly - @Since("1.4.0.0-PN") + private static final BlockVector3 defaultStuckToBlockPos = new BlockVector3(0, 0, 0); - + + @Since("1.6.0.0-PN") protected int pickupMode; + @Since("1.6.0.0-PN") public boolean alreadyCollided; + @Override public int getNetworkId() { return NETWORK_ID; @@ -117,41 +102,55 @@ public float getHeight() { @Override public float getGravity() { - return 0.04f; + return 0.05f; } @Override public float getDrag() { return 0.01f; } - + public EntityThrownTrident(FullChunk chunk, CompoundTag nbt) { this(chunk, nbt, null); } public EntityThrownTrident(FullChunk chunk, CompoundTag nbt, Entity shootingEntity) { - this(chunk, nbt, shootingEntity, false); + super(chunk, nbt, shootingEntity); } + @Deprecated public EntityThrownTrident(FullChunk chunk, CompoundTag nbt, Entity shootingEntity, boolean critical) { - super(chunk, nbt, shootingEntity); + this(chunk, nbt, shootingEntity); } - + + @PowerNukkitOnly + @Since("1.5.1.0-PN") @Override - public String getName() { - return "Trident"; + public String getOriginalName() { + return NAME_TRIDENT; } - + @Override protected void initEntity() { + super.setHasAge(false); super.initEntity(); - + this.closeOnCollide = false; - - this.hasAge = false; - - if (namedTag.contains("Trident")) { - this.trident = NBTIO.getItemHelper(namedTag.getCompound("Trident")); + + this.pickupMode = namedTag.contains(TAG_PICKUP) ? namedTag.getByte(TAG_PICKUP) : PICKUP_ANY; + this.damage = namedTag.contains("damage") ? namedTag.getDouble("damage") : 8; + this.favoredSlot = namedTag.contains(TAG_FAVORED_SLOT) ? namedTag.getInt(TAG_FAVORED_SLOT) : -1; + this.player = !namedTag.contains(TAG_PLAYER) || namedTag.getBoolean(TAG_PLAYER); + + if (namedTag.contains(TAG_CREATIVE)) { + if (pickupMode == PICKUP_ANY && namedTag.getBoolean(TAG_CREATIVE)) { + pickupMode = PICKUP_CREATIVE; + } + namedTag.remove(TAG_CREATIVE); + } + + if (namedTag.contains(TAG_TRIDENT)) { + this.trident = NBTIO.getItemHelper(namedTag.getCompound(TAG_TRIDENT)); this.loyaltyLevel = this.trident.getEnchantmentLevel(Enchantment.ID_TRIDENT_LOYALTY); this.hasChanneling = this.trident.hasEnchantment(Enchantment.ID_TRIDENT_CHANNELING); this.riptideLevel = this.trident.getEnchantmentLevel(Enchantment.ID_TRIDENT_RIPTIDE); @@ -163,43 +162,19 @@ protected void initEntity() { this.riptideLevel = 0; this.impalingLevel = 0; } - - if (namedTag.contains("damage")) { - this.damage = namedTag.getDouble("damage"); - } else { - this.damage = 8; - } - + if (namedTag.contains("CollisionPos")) { ListTag collisionPosList = this.namedTag.getList("CollisionPos", DoubleTag.class); collisionPos = new Vector3(collisionPosList.get(0).data, collisionPosList.get(1).data, collisionPosList.get(2).data); } else { - collisionPos = this.defaultCollisionPos.clone(); + collisionPos = defaultCollisionPos.clone(); } - + if (namedTag.contains("StuckToBlockPos")) { ListTag stuckToBlockPosList = this.namedTag.getList("StuckToBlockPos", IntTag.class); stuckToBlockPos = new BlockVector3(stuckToBlockPosList.get(0).data, stuckToBlockPosList.get(1).data, stuckToBlockPosList.get(2).data); } else { - stuckToBlockPos = this.defaultStuckToBlockPos.clone(); - } - - if (namedTag.contains("favoredSlot")) { - this.favoredSlot = namedTag.getInt("favoredSlot"); - } else { - this.favoredSlot = -1; - } - - if (namedTag.contains("isCreative")) { - this.isCreative = namedTag.getBoolean("isCreative"); - } else { - this.isCreative = false; - } - - if (namedTag.contains("player")) { - this.player = namedTag.getBoolean("player"); - } else { - this.player = true; + stuckToBlockPos = defaultStuckToBlockPos.clone(); } } @@ -207,7 +182,8 @@ protected void initEntity() { public void saveNBT() { super.saveNBT(); - this.namedTag.put("Trident", NBTIO.putItemHelper(this.trident)); + this.namedTag.put(TAG_TRIDENT, NBTIO.putItemHelper(this.trident)); + this.namedTag.putByte(TAG_PICKUP, this.pickupMode); this.namedTag.putList(new ListTag("CollisionPos") .add(new DoubleTag("0", this.collisionPos.x)) .add(new DoubleTag("1", this.collisionPos.y)) @@ -218,9 +194,8 @@ public void saveNBT() { .add(new IntTag("1", this.stuckToBlockPos.y)) .add(new IntTag("2", this.stuckToBlockPos.z)) ); - this.namedTag.putInt("favoredSlot", this.favoredSlot); - this.namedTag.putBoolean("isCreative", this.isCreative); - this.namedTag.putBoolean("player", this.player); + this.namedTag.putInt(TAG_FAVORED_SLOT, this.favoredSlot); + this.namedTag.putBoolean(TAG_PLAYER, this.player); } public Item getItem() { @@ -235,14 +210,17 @@ public void setItem(Item item) { this.impalingLevel = this.trident.getEnchantmentLevel(Enchantment.ID_TRIDENT_IMPALING); } + @PowerNukkitOnly public void setCritical() { this.setCritical(true); } + @PowerNukkitOnly public void setCritical(boolean value) { this.setDataFlag(DATA_FLAGS, DATA_FLAG_CRITICAL, value); } + @PowerNukkitOnly public boolean isCritical() { return this.getDataFlag(DATA_FLAGS, DATA_FLAG_CRITICAL); } @@ -281,7 +259,7 @@ public boolean onUpdate(int currentTick) { if (this.onGround || this.hadCollision) { this.setCritical(false); } - + if (this.noClip) { if (this.canReturnToShooter()) { Entity shooter = this.shootingEntity; @@ -296,7 +274,7 @@ public boolean onUpdate(int currentTick) { this.close(); } } - + this.timing.stopTiming(); return hasUpdate; @@ -328,13 +306,18 @@ public void onCollideWithEntity(Entity entity) { if (this.noClip) { return; } - + + if (this.alreadyCollided) { + this.move(this.motionX, this.motionY, this.motionZ); + return; + } + this.server.getPluginManager().callEvent(new ProjectileHitEvent(this, MovingObjectPosition.fromEntity(entity))); float damage = this.getResultDamage(); if (this.impalingLevel > 0 && (entity.isTouchingWater() || (entity.getLevel().isRaining() && entity.getLevel().canBlockSeeSky(entity)))) { damage = damage + (2.5f * (float) this.impalingLevel); } - + EntityDamageEvent ev; if (this.shootingEntity == null) { ev = new EntityDamageByEntityEvent(this, entity, DamageCause.PROJECTILE, damage); @@ -346,7 +329,7 @@ public void onCollideWithEntity(Entity entity) { this.hadCollision = true; this.setCollisionPos(this); this.setMotion(new Vector3(this.getMotion().getX() * -0.01, this.getMotion().getY() * -0.1, this.getMotion().getZ() * -0.01)); - + if (this.hasChanneling) { if (this.level.isThundering() && this.level.canBlockSeeSky(this)) { Position pos = this.getPosition(); @@ -355,7 +338,7 @@ public void onCollideWithEntity(Entity entity) { this.getLevel().addSound(this, Sound.ITEM_TRIDENT_THUNDER); } } - + if (this.canReturnToShooter()) { this.getLevel().addSound(this, Sound.ITEM_TRIDENT_RETURN); this.setNoClip(true); @@ -364,19 +347,30 @@ public void onCollideWithEntity(Entity entity) { } } + @PowerNukkitOnly public Entity create(Object type, Position source, Object... args) { FullChunk chunk = source.getLevel().getChunk((int) source.x >> 4, (int) source.z >> 4); if (chunk == null) return null; CompoundTag nbt = Entity.getDefaultNBT( - source.add(0.5, 0, 0.5), - null, + source.add(0.5, 0, 0.5), + null, new Random().nextFloat() * 360, 0 ); return Entity.createEntity(type.toString(), chunk, nbt, args); } - + + @Since("1.6.0.0-PN") + public int getPickupMode() { + return this.pickupMode; + } + + @Since("1.6.0.0-PN") + public void setPickupMode(int pickupMode) { + this.pickupMode = pickupMode; + } + @PowerNukkitOnly @Since("1.4.0.0-PN") @Override @@ -384,7 +378,7 @@ protected void onCollideWithBlock(Position position, Vector3 motion) { if (this.noClip) { return; } - + for (Block collisionBlock : level.getCollisionBlocks(getBoundingBox().grow(0.1, 0.1, 0.1))) { this.setStuckToBlockPos(new BlockVector3(collisionBlock.getFloorX(), collisionBlock.getFloorY(), collisionBlock.getFloorZ())); if (this.canReturnToShooter()) { @@ -396,73 +390,80 @@ protected void onCollideWithBlock(Position position, Vector3 motion) { onCollideWithBlock(position, motion, collisionBlock); } } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public Vector3 getCollisionPos() { return collisionPos; } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public void setCollisionPos(Vector3 collisionPos) { this.collisionPos = collisionPos; } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public BlockVector3 getStuckToBlockPos() { return stuckToBlockPos; } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public void setStuckToBlockPos(BlockVector3 stuckToBlockPos) { this.stuckToBlockPos = stuckToBlockPos; } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public int getFavoredSlot() { return favoredSlot; } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public void setFavoredSlot(int favoredSlot) { this.favoredSlot = favoredSlot; } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public boolean isCreative() { - return isCreative; + return getPickupMode() == EntityProjectile.PICKUP_CREATIVE; } - + @PowerNukkitOnly @Since("1.4.0.0-PN") + @Deprecated + @DeprecationDetails(since = "1.6.0.0-PN", by = "PowerNukkit", replaceWith = "setPickupMode(EntityProjectile.PICKUP_)", + reason = "Nukkit added this API in 3-states, NONE, ANY, and CREATIVE") public void setCreative(boolean isCreative) { - this.isCreative = isCreative; + if (isCreative) { + setPickupMode(EntityProjectile.PICKUP_CREATIVE); + } else if (getPickupMode() == EntityProjectile.PICKUP_CREATIVE) { + setPickupMode(EntityProjectile.PICKUP_ANY); + } } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public boolean isPlayer() { return player; } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public void setPlayer(boolean player) { this.player = player; } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public int getLoyaltyLevel() { return loyaltyLevel; } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public void setLoyaltyLevel(int loyaltyLevel) { @@ -473,13 +474,13 @@ public void setLoyaltyLevel(int loyaltyLevel) { // TODO: this.trident.removeEnchantment(Enchantment.ID_TRIDENT_LOYALTY); } } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public boolean hasChanneling() { return hasChanneling; } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public void setChanneling(boolean hasChanneling) { @@ -490,13 +491,13 @@ public void setChanneling(boolean hasChanneling) { // TODO: this.trident.removeEnchantment(Enchantment.ID_TRIDENT_CHANNELING); } } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public int getRiptideLevel() { return riptideLevel; } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public void setRiptideLevel(int riptideLevel) { @@ -507,13 +508,13 @@ public void setRiptideLevel(int riptideLevel) { // TODO: this.trident.removeEnchantment(Enchantment.ID_TRIDENT_RIPTIDE); } } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public int getImpalingLevel() { return impalingLevel; } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public void setImpalingLevel(int impalingLevel) { @@ -524,13 +525,13 @@ public void setImpalingLevel(int impalingLevel) { // TODO: this.trident.removeEnchantment(Enchantment.ID_TRIDENT_IMPALING); } } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public boolean getTridentRope() { return this.getDataFlag(DATA_FLAGS, DATA_FLAG_SHOW_TRIDENT_ROPE); } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public void setTridentRope(boolean tridentRope) { @@ -541,18 +542,18 @@ public void setTridentRope(boolean tridentRope) { } this.setDataFlag(DATA_FLAGS, DATA_FLAG_SHOW_TRIDENT_ROPE, tridentRope); } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public boolean canReturnToShooter() { if (this.loyaltyLevel <= 0) { return false; } - + if (this.getCollisionPos().equals(this.defaultCollisionPos) && this.getStuckToBlockPos().equals(this.defaultStuckToBlockPos)) { return false; } - + Entity shooter = this.shootingEntity; if (shooter != null) { if (shooter.isAlive() && shooter instanceof Player) { diff --git a/src/main/java/cn/nukkit/entity/weather/EntityLightning.java b/src/main/java/cn/nukkit/entity/weather/EntityLightning.java index 439c49801d7..a4cd3eea757 100644 --- a/src/main/java/cn/nukkit/entity/weather/EntityLightning.java +++ b/src/main/java/cn/nukkit/entity/weather/EntityLightning.java @@ -1,6 +1,8 @@ package cn.nukkit.entity.weather; import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.block.Block; import cn.nukkit.block.BlockFire; import cn.nukkit.block.BlockID; @@ -71,10 +73,12 @@ protected void initEntity() { } } + @Override public boolean isEffect() { return this.isEffect; } + @Override public void setEffect(boolean e) { this.isEffect = e; } @@ -150,4 +154,10 @@ public boolean onUpdate(int currentTick) { } + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Override + public String getOriginalName() { + return "Lightning Bolt"; + } } diff --git a/src/main/java/cn/nukkit/event/block/AnvilDamageEvent.java b/src/main/java/cn/nukkit/event/block/AnvilDamageEvent.java index 08e5324da49..6278dc5b29f 100644 --- a/src/main/java/cn/nukkit/event/block/AnvilDamageEvent.java +++ b/src/main/java/cn/nukkit/event/block/AnvilDamageEvent.java @@ -2,26 +2,22 @@ import cn.nukkit.Player; import cn.nukkit.api.DeprecationDetails; -import cn.nukkit.api.PowerNukkitDifference; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.block.Block; +import cn.nukkit.block.BlockAnvil; +import cn.nukkit.blockproperty.value.AnvilDamage; +import cn.nukkit.blockstate.BlockState; import cn.nukkit.event.Cancellable; import cn.nukkit.event.HandlerList; import cn.nukkit.inventory.transaction.CraftingTransaction; -import lombok.RequiredArgsConstructor; +import com.google.common.base.Preconditions; import javax.annotation.Nonnull; import javax.annotation.Nullable; -@PowerNukkitDifference(info = "Extends BlockFadeEvent instead of BlockEvent only in PowerNukkit") -@Deprecated @DeprecationDetails(since = "1.4.0.0-PN", - reason = "This is only a warning, this event will change in 1.5.0.0-PN, " + - "it will no longer extend BlockFadeEvent and the cause enum will be renamed!", - toBeRemovedAt = "The class will have a breaking change in 1.5.0.0-PN" -) @Since("1.1.1.0-PN") -public class AnvilDamageEvent extends BlockFadeEvent implements Cancellable { +public class AnvilDamageEvent extends BlockEvent implements Cancellable { private static final HandlerList handlers = new HandlerList(); @@ -29,120 +25,140 @@ public class AnvilDamageEvent extends BlockFadeEvent implements Cancellable { public static HandlerList getHandlers() { return handlers; } - + + @Nullable private final Player player; + + @Nullable private final CraftingTransaction transaction; + + @Nonnull private final DamageCause cause; + @Nonnull + private final BlockState oldState; + + @Nonnull + private BlockState newState; + @Since("1.4.0.0-PN") - public AnvilDamageEvent(Block block, int oldDamage, int newDamage, DamageCause cause, Player player) { - this(adjustBlock(block, oldDamage), adjustBlock(block, newDamage), player, null, cause); + public AnvilDamageEvent(@Nonnull Block block, int oldDamage, int newDamage, @Nonnull DamageCause cause, @Nullable Player player) { + this(adjustBlock(block, oldDamage), block.getCurrentState().withData(newDamage), player, null, cause); } @PowerNukkitOnly @Since("1.4.0.0-PN") - public AnvilDamageEvent(Block block, Block newState, Player player, @Nullable CraftingTransaction transaction, DamageCause cause) { - super(block, newState); + public AnvilDamageEvent(@Nonnull Block block, @Nonnull Block newState, @Nullable Player player, @Nullable CraftingTransaction transaction, @Nonnull DamageCause cause) { + this(block, newState.getCurrentState(), player, transaction, cause); + } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + public AnvilDamageEvent(@Nonnull Block block, @Nonnull BlockState newState, @Nullable Player player, @Nullable CraftingTransaction transaction, @Nonnull DamageCause cause) { + super(Preconditions.checkNotNull(block, "block").clone()); + this.oldState = block.getCurrentState(); this.player = player; this.transaction = transaction; - this.cause = cause; + this.cause = Preconditions.checkNotNull(cause, "cause"); + this.newState = Preconditions.checkNotNull(newState, "newState"); } @PowerNukkitOnly @Since("1.1.1.0-PN") - public AnvilDamageEvent(Block block, Block newState, Player player, CraftingTransaction transaction, Cause cause) { - this(block, newState, player, transaction, convert(cause)); - } - - - @Since("1.1.1.0-PN") - public Player getPlayer() { - return player; - } - - - @PowerNukkitOnly - @Since("1.1.1.0-PN") + @Nullable public CraftingTransaction getTransaction() { return transaction; } @PowerNukkitOnly @Since("1.4.0.0-PN") + @Nonnull public DamageCause getDamageCause() { return cause; } - + @Deprecated + @DeprecationDetails(since = "1.6.0.0-PN", by = "PowerNukkit", reason = "Unstable use of raw block state data", replaceWith = "getOldAnvilDamage or getOldBlockState") @Since("1.4.0.0-PN") public int getOldDamage() { - return getBlock().getDamage(); + if (!block.getProperties().contains(BlockAnvil.DAMAGE)) { + return 0; + } + return block.getIntValue(BlockAnvil.DAMAGE); + } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + @Nullable + public AnvilDamage getOldAnvilDamage() { + if (oldState.getProperties().contains(BlockAnvil.DAMAGE)) { + return oldState.getPropertyValue(BlockAnvil.DAMAGE); + } + return null; } + @PowerNukkitOnly + @Since("1.6.0.0-PN") + @Nonnull + public BlockState getOldBlockState() { + return oldState; + } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + @Nonnull + public BlockState getNewBlockState() { + return newState; + } + + @PowerNukkitOnly("Used to be inherited from BlockFadeEvent") + @Since("1.1.1.0-PN") + @Nonnull + public Block getNewState() { + return newState.getBlockRepairing(block); + } + + @Deprecated + @DeprecationDetails(since = "1.6.0.0-PN", by = "PowerNukkit", reason = "Unstable use of raw block state data", replaceWith = "getNewAnvilDamage or getNewBlockState") @Since("1.4.0.0-PN") public int getNewDamage() { - return getNewState().getDamage(); + BlockState newBlockState = getNewBlockState(); + return newBlockState.getProperties().contains(BlockAnvil.DAMAGE)? newBlockState.getIntValue(BlockAnvil.DAMAGE) : 0; + } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + public void setNewBlockState(@Nonnull BlockState state) { + this.newState = Preconditions.checkNotNull(state); } + @Deprecated + @DeprecationDetails(since = "1.6.0.0-PN", by = "PowerNukkit", reason = "Unstable use of raw block state data", + replaceWith = "setNewBlockState example: setNewBlockState(BlockState.of(BlockID.ANVIL).withProperty(BlockAnvil.DAMAGE, AnvilDamage.VERY_DAMAGED))") @Since("1.4.0.0-PN") public void setNewDamage(int newDamage) { - getNewState().setDamage(newDamage); + BlockState newBlockState = getNewBlockState(); + if (newBlockState.getProperties().contains(BlockAnvil.DAMAGE)) { + this.setNewBlockState(newBlockState.withProperty(BlockAnvil.DAMAGE, BlockAnvil.DAMAGE.getValueForMeta(newDamage))); + } } @PowerNukkitOnly - @Since("1.1.1.0-PN") - @Deprecated @DeprecationDetails( - since = "1.4.0.0-PN", by = "PowerNukkit", - reason = "NukkitX added the class and made getCause() return an enum with a different name.", - replaceWith = "getDamageCause()", - toBeRemovedAt = "1.6.0.0-PN" - ) - public Cause getCause() { - return convert(cause); + @Since("1.6.0.0-PN") + public void setNewState(@Nonnull Block block) { + this.newState = block.getCurrentState(); + } + + @Since("1.6.0.0-PN") + @Nonnull + public DamageCause getCause() { + return this.cause; } - @PowerNukkitOnly @Since("1.1.1.0-PN") - @Deprecated @DeprecationDetails( - since = "1.4.0.0-PN", by = "PowerNukkit", - reason = "NukkitX added the class but with a different enum for the damage cause", - replaceWith = "DamageCause", - toBeRemovedAt = "1.6.0.0-PN" - ) - @RequiredArgsConstructor - public enum Cause { - @PowerNukkitOnly - @Since("1.1.1.0-PN") - @Deprecated @DeprecationDetails( - since = "1.4.0.0-PN", by = "PowerNukkit", - reason = "NukkitX added the class but with a different enum for the damage cause", - replaceWith = "DamageCause.USE", - toBeRemovedAt = "1.6.0.0-PN" - ) - USE, - - @PowerNukkitOnly - @Since("1.1.1.0-PN") - @Deprecated @DeprecationDetails( - since = "1.4.0.0-PN", by = "PowerNukkit", - reason = "NukkitX added the class but with a different enum for the damage cause", - replaceWith = "DamageCause.FALL", - toBeRemovedAt = "1.6.0.0-PN" - ) - IMPACT; - - @PowerNukkitOnly - @Since("1.4.0.0-PN") - @Deprecated @DeprecationDetails( - since = "1.4.0.0-PN", by = "PowerNukkit", - reason = "This is method is only a temporary helper, it will also be removed in future", - replaceWith = "Direct usage of DamageCause", - toBeRemovedAt = "1.6.0.0-PN" - ) - @Nonnull - public DamageCause getDamageCause() { - return DamageCause.valueOf(name()); - } + @Nullable + public Player getPlayer() { + return this.player; } @Since("1.4.0.0-PN") @@ -152,30 +168,8 @@ public enum DamageCause { } private static Block adjustBlock(Block block, int damage) { - Block adjusted = block.clone(); - adjusted.setDamage(damage); + Block adjusted = Preconditions.checkNotNull(block, "block").clone(); + adjusted.setDataStorage(damage); return adjusted; } - - private static DamageCause convert(Cause cause) { - switch (cause) { - case USE: - return DamageCause.USE; - case IMPACT: - return DamageCause.FALL; - default: - return null; - } - } - - private static Cause convert(DamageCause cause) { - switch (cause) { - case USE: - return Cause.USE; - case FALL: - return Cause.IMPACT; - default: - return null; - } - } } diff --git a/src/main/java/cn/nukkit/event/block/BellRingEvent.java b/src/main/java/cn/nukkit/event/block/BellRingEvent.java index 18f2bc67d86..29fad42d1a6 100644 --- a/src/main/java/cn/nukkit/event/block/BellRingEvent.java +++ b/src/main/java/cn/nukkit/event/block/BellRingEvent.java @@ -1,14 +1,17 @@ package cn.nukkit.event.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockBell; import cn.nukkit.entity.Entity; import cn.nukkit.event.Cancellable; import cn.nukkit.event.HandlerList; +@PowerNukkitOnly public class BellRingEvent extends BlockEvent implements Cancellable { private static final HandlerList handlers = new HandlerList(); + @PowerNukkitOnly public static HandlerList getHandlers() { return handlers; } @@ -16,6 +19,7 @@ public static HandlerList getHandlers() { private final RingCause cause; private final Entity entity; + @PowerNukkitOnly public BellRingEvent(BlockBell bell, RingCause cause, Entity entity) { super(bell); this.cause = cause; @@ -27,20 +31,23 @@ public BlockBell getBlock() { return (BlockBell) super.getBlock(); } + @PowerNukkitOnly public Entity getEntity() { return entity; } + @PowerNukkitOnly public RingCause getCause() { return cause; } + @PowerNukkitOnly public enum RingCause { - HUMAN_INTERACTION, - REDSTONE, - PROJECTILE, - DROPPED_ITEM, - UNKNOWN + @PowerNukkitOnly HUMAN_INTERACTION, + @PowerNukkitOnly REDSTONE, + @PowerNukkitOnly PROJECTILE, + @PowerNukkitOnly DROPPED_ITEM, + @PowerNukkitOnly UNKNOWN } } diff --git a/src/main/java/cn/nukkit/event/block/BlockHarvestEvent.java b/src/main/java/cn/nukkit/event/block/BlockHarvestEvent.java index e214f069251..f661d1a8759 100644 --- a/src/main/java/cn/nukkit/event/block/BlockHarvestEvent.java +++ b/src/main/java/cn/nukkit/event/block/BlockHarvestEvent.java @@ -1,10 +1,12 @@ package cn.nukkit.event.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.event.Cancellable; import cn.nukkit.event.HandlerList; import cn.nukkit.item.Item; +@PowerNukkitOnly public class BlockHarvestEvent extends BlockEvent implements Cancellable { private static final HandlerList handlers = new HandlerList(); @@ -12,28 +14,34 @@ public class BlockHarvestEvent extends BlockEvent implements Cancellable { private Block newState; private Item[] drops; + @PowerNukkitOnly public BlockHarvestEvent(Block block, Block newState, Item[] drops) { super(block); this.newState = newState; this.drops = drops; } + @PowerNukkitOnly public Block getNewState() { return newState; } + @PowerNukkitOnly public void setNewState(Block newState) { this.newState = newState; } + @PowerNukkitOnly public Item[] getDrops() { return drops; } + @PowerNukkitOnly public void setDrops(Item[] drops) { this.drops = drops; } + @PowerNukkitOnly public static HandlerList getHandlers() { return handlers; } diff --git a/src/main/java/cn/nukkit/event/block/BlockPistonEvent.java b/src/main/java/cn/nukkit/event/block/BlockPistonEvent.java index 2d1cc3debd7..5121587560e 100644 --- a/src/main/java/cn/nukkit/event/block/BlockPistonEvent.java +++ b/src/main/java/cn/nukkit/event/block/BlockPistonEvent.java @@ -1,5 +1,6 @@ package cn.nukkit.event.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.block.BlockPistonBase; import cn.nukkit.event.Cancellable; @@ -9,10 +10,12 @@ import java.util.ArrayList; import java.util.List; +@PowerNukkitOnly public class BlockPistonEvent extends BlockEvent implements Cancellable { private static final HandlerList handlers = new HandlerList(); + @PowerNukkitOnly public static HandlerList getHandlers() { return handlers; } @@ -22,6 +25,7 @@ public static HandlerList getHandlers() { private final List destroyedBlocks; private final boolean extending; + @PowerNukkitOnly public BlockPistonEvent(BlockPistonBase piston, BlockFace direction, List blocks, List destroyedBlocks, boolean extending) { super(piston); this.direction = direction; @@ -30,18 +34,22 @@ public BlockPistonEvent(BlockPistonBase piston, BlockFace direction, List this.extending = extending; } + @PowerNukkitOnly public BlockFace getDirection() { return direction; } + @PowerNukkitOnly public List getBlocks() { return new ArrayList<>(blocks); } + @PowerNukkitOnly public List getDestroyedBlocks() { return destroyedBlocks; } + @PowerNukkitOnly public boolean isExtending() { return extending; } diff --git a/src/main/java/cn/nukkit/event/block/ComposterEmptyEvent.java b/src/main/java/cn/nukkit/event/block/ComposterEmptyEvent.java index c6614169ba2..80120a5b67d 100644 --- a/src/main/java/cn/nukkit/event/block/ComposterEmptyEvent.java +++ b/src/main/java/cn/nukkit/event/block/ComposterEmptyEvent.java @@ -1,14 +1,14 @@ package cn.nukkit.event.block; import cn.nukkit.Player; -import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.event.Cancellable; import cn.nukkit.event.HandlerList; import cn.nukkit.item.Item; import cn.nukkit.math.Vector3; -@PowerNukkitDifference(info = "The player and the item are null when they are empty by a hopper pulling the item", since = "1.4.0.0-PN") +@PowerNukkitOnly public class ComposterEmptyEvent extends BlockEvent implements Cancellable { private static final HandlerList handlers = new HandlerList(); @@ -19,6 +19,7 @@ public class ComposterEmptyEvent extends BlockEvent implements Cancellable { private int newLevel; private Vector3 motion; + @PowerNukkitOnly public ComposterEmptyEvent(Block block, Player player, Item itemUsed, Item drop, int newLevel) { super(block); this.player = player; @@ -27,14 +28,17 @@ public ComposterEmptyEvent(Block block, Player player, Item itemUsed, Item drop, this.newLevel = Math.max(0, Math.min(newLevel, 8)); } + @PowerNukkitOnly public Player getPlayer() { return player; } + @PowerNukkitOnly public Item getDrop() { return drop.clone(); } + @PowerNukkitOnly public void setDrop(Item drop) { if (drop == null) { drop = Item.get(Item.AIR); @@ -44,30 +48,37 @@ public void setDrop(Item drop) { this.drop = drop; } + @PowerNukkitOnly public Item getItemUsed() { return itemUsed; } + @PowerNukkitOnly public void setItemUsed(Item itemUsed) { this.itemUsed = itemUsed; } + @PowerNukkitOnly public int getNewLevel() { return newLevel; } + @PowerNukkitOnly public void setNewLevel(int newLevel) { this.newLevel = Math.max(0, Math.min(newLevel, 8)); } + @PowerNukkitOnly public Vector3 getMotion() { return motion; } + @PowerNukkitOnly public void setMotion(Vector3 motion) { this.motion = motion; } + @PowerNukkitOnly public static HandlerList getHandlers() { return handlers; } diff --git a/src/main/java/cn/nukkit/event/block/ComposterFillEvent.java b/src/main/java/cn/nukkit/event/block/ComposterFillEvent.java index f8879c3a35e..4fd733749a1 100644 --- a/src/main/java/cn/nukkit/event/block/ComposterFillEvent.java +++ b/src/main/java/cn/nukkit/event/block/ComposterFillEvent.java @@ -1,13 +1,13 @@ package cn.nukkit.event.block; import cn.nukkit.Player; -import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.event.Cancellable; import cn.nukkit.event.HandlerList; import cn.nukkit.item.Item; -@PowerNukkitDifference(info = "Player is null when is filled by a hopper pushing the item", since = "1.4.0.0-PN") +@PowerNukkitOnly public class ComposterFillEvent extends BlockEvent implements Cancellable { private static final HandlerList handlers = new HandlerList(); @@ -17,6 +17,7 @@ public class ComposterFillEvent extends BlockEvent implements Cancellable { private final int chance; private boolean success; + @PowerNukkitOnly public ComposterFillEvent(Block block, Player player, Item item, int chance, boolean success) { super(block); this.player = player; @@ -25,26 +26,32 @@ public ComposterFillEvent(Block block, Player player, Item item, int chance, boo this.success = success; } + @PowerNukkitOnly public Player getPlayer() { return player; } + @PowerNukkitOnly public Item getItem() { return item; } + @PowerNukkitOnly public int getChance() { return chance; } + @PowerNukkitOnly public boolean isSuccess() { return success; } + @PowerNukkitOnly public void setSuccess(boolean success) { this.success = success; } + @PowerNukkitOnly public static HandlerList getHandlers() { return handlers; } diff --git a/src/main/java/cn/nukkit/event/block/ConduitActivateEvent.java b/src/main/java/cn/nukkit/event/block/ConduitActivateEvent.java index c65368f37d1..d4f58789d9a 100644 --- a/src/main/java/cn/nukkit/event/block/ConduitActivateEvent.java +++ b/src/main/java/cn/nukkit/event/block/ConduitActivateEvent.java @@ -1,16 +1,20 @@ package cn.nukkit.event.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.event.HandlerList; +@PowerNukkitOnly public class ConduitActivateEvent extends BlockEvent { private static final HandlerList handlers = new HandlerList(); + @PowerNukkitOnly public ConduitActivateEvent(Block block) { super(block); } + @PowerNukkitOnly public static HandlerList getHandlers() { return handlers; } diff --git a/src/main/java/cn/nukkit/event/block/ConduitDeactivateEvent.java b/src/main/java/cn/nukkit/event/block/ConduitDeactivateEvent.java index 47d7e5392dd..5b18a12d7cc 100644 --- a/src/main/java/cn/nukkit/event/block/ConduitDeactivateEvent.java +++ b/src/main/java/cn/nukkit/event/block/ConduitDeactivateEvent.java @@ -1,16 +1,20 @@ package cn.nukkit.event.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.event.HandlerList; +@PowerNukkitOnly public class ConduitDeactivateEvent extends BlockEvent { private static final HandlerList handlers = new HandlerList(); + @PowerNukkitOnly public ConduitDeactivateEvent(Block block) { super(block); } + @PowerNukkitOnly public static HandlerList getHandlers() { return handlers; } diff --git a/src/main/java/cn/nukkit/event/block/LecternDropBookEvent.java b/src/main/java/cn/nukkit/event/block/LecternDropBookEvent.java index 097ae605ed3..a9405b45d78 100644 --- a/src/main/java/cn/nukkit/event/block/LecternDropBookEvent.java +++ b/src/main/java/cn/nukkit/event/block/LecternDropBookEvent.java @@ -1,11 +1,13 @@ package cn.nukkit.event.block; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.blockentity.BlockEntityLectern; import cn.nukkit.event.Cancellable; import cn.nukkit.event.HandlerList; import cn.nukkit.item.Item; +@PowerNukkitOnly public class LecternDropBookEvent extends BlockEvent implements Cancellable { private static final HandlerList handlers = new HandlerList(); @@ -13,6 +15,7 @@ public class LecternDropBookEvent extends BlockEvent implements Cancellable { private final BlockEntityLectern lectern; private Item book; + @PowerNukkitOnly public LecternDropBookEvent(Player player, BlockEntityLectern lectern, Item book) { super(lectern.getBlock()); this.player = player; @@ -20,22 +23,27 @@ public LecternDropBookEvent(Player player, BlockEntityLectern lectern, Item book this.book = book; } + @PowerNukkitOnly public static HandlerList getHandlers() { return handlers; } + @PowerNukkitOnly public BlockEntityLectern getLectern() { return lectern; } + @PowerNukkitOnly public Player getPlayer() { return player; } + @PowerNukkitOnly public Item getBook() { return book.clone(); } + @PowerNukkitOnly public void setBook(Item book) { this.book = book; } diff --git a/src/main/java/cn/nukkit/event/block/LecternPageChangeEvent.java b/src/main/java/cn/nukkit/event/block/LecternPageChangeEvent.java index fe625129cf9..af0b8d50723 100644 --- a/src/main/java/cn/nukkit/event/block/LecternPageChangeEvent.java +++ b/src/main/java/cn/nukkit/event/block/LecternPageChangeEvent.java @@ -1,10 +1,12 @@ package cn.nukkit.event.block; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.blockentity.BlockEntityLectern; import cn.nukkit.event.Cancellable; import cn.nukkit.event.HandlerList; +@PowerNukkitOnly public class LecternPageChangeEvent extends BlockEvent implements Cancellable { private static final HandlerList handlers = new HandlerList(); @@ -12,6 +14,7 @@ public class LecternPageChangeEvent extends BlockEvent implements Cancellable { private final BlockEntityLectern lectern; private int newRawPage; + @PowerNukkitOnly public LecternPageChangeEvent(Player player, BlockEntityLectern lectern, int newPage) { super(lectern.getBlock()); this.player = player; @@ -19,42 +22,52 @@ public LecternPageChangeEvent(Player player, BlockEntityLectern lectern, int new this.newRawPage = newPage; } + @PowerNukkitOnly public static HandlerList getHandlers() { return handlers; } + @PowerNukkitOnly public BlockEntityLectern getLectern() { return lectern; } + @PowerNukkitOnly public int getLeftPage() { return (newRawPage * 2) + 1; } + @PowerNukkitOnly public int getRightPage() { return getLeftPage() + 1; } + @PowerNukkitOnly public void setLeftPage(int newLeftPage) { this.newRawPage = (newLeftPage - 1) / 2; } + @PowerNukkitOnly public void setRightPage(int newRightPage) { this.setLeftPage(newRightPage - 1); } + @PowerNukkitOnly public int getNewRawPage() { return newRawPage; } + @PowerNukkitOnly public void setNewRawPage(int newRawPage) { this.newRawPage = newRawPage; } + @PowerNukkitOnly public int getMaxPage() { return lectern.getTotalPages(); } + @PowerNukkitOnly public Player getPlayer() { return player; } diff --git a/src/main/java/cn/nukkit/event/block/LecternPlaceBookEvent.java b/src/main/java/cn/nukkit/event/block/LecternPlaceBookEvent.java index 565a3fe03fc..6458cfd676e 100644 --- a/src/main/java/cn/nukkit/event/block/LecternPlaceBookEvent.java +++ b/src/main/java/cn/nukkit/event/block/LecternPlaceBookEvent.java @@ -1,11 +1,13 @@ package cn.nukkit.event.block; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.blockentity.BlockEntityLectern; import cn.nukkit.event.Cancellable; import cn.nukkit.event.HandlerList; import cn.nukkit.item.Item; +@PowerNukkitOnly public class LecternPlaceBookEvent extends BlockEvent implements Cancellable { private static final HandlerList handlers = new HandlerList(); @@ -13,6 +15,7 @@ public class LecternPlaceBookEvent extends BlockEvent implements Cancellable { private final BlockEntityLectern lectern; private Item book; + @PowerNukkitOnly public LecternPlaceBookEvent(Player player, BlockEntityLectern lectern, Item book) { super(lectern.getBlock()); this.player = player; @@ -20,22 +23,27 @@ public LecternPlaceBookEvent(Player player, BlockEntityLectern lectern, Item boo this.book = book; } + @PowerNukkitOnly public static HandlerList getHandlers() { return handlers; } + @PowerNukkitOnly public BlockEntityLectern getLectern() { return lectern; } + @PowerNukkitOnly public Player getPlayer() { return player; } + @PowerNukkitOnly public Item getBook() { return book.clone(); } + @PowerNukkitOnly public void setBook(Item book) { this.book = book; } diff --git a/src/main/java/cn/nukkit/event/block/TurtleEggHatchEvent.java b/src/main/java/cn/nukkit/event/block/TurtleEggHatchEvent.java index 7b9eb36cd34..5655edec85f 100644 --- a/src/main/java/cn/nukkit/event/block/TurtleEggHatchEvent.java +++ b/src/main/java/cn/nukkit/event/block/TurtleEggHatchEvent.java @@ -1,11 +1,13 @@ package cn.nukkit.event.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.block.BlockAir; import cn.nukkit.block.BlockTurtleEgg; import cn.nukkit.event.Cancellable; import cn.nukkit.event.HandlerList; +@PowerNukkitOnly public class TurtleEggHatchEvent extends BlockEvent implements Cancellable { private static final HandlerList handlers = new HandlerList(); @@ -14,12 +16,14 @@ public class TurtleEggHatchEvent extends BlockEvent implements Cancellable { private Block newState; private boolean recalculateOnFailure = true; + @PowerNukkitOnly public TurtleEggHatchEvent(BlockTurtleEgg turtleEgg, int eggsHatching, Block newState) { super(turtleEgg); this.eggsHatching = eggsHatching; this.newState = newState; } + @PowerNukkitOnly public void recalculateNewState() { BlockTurtleEgg turtleEgg = getBlock(); int eggCount = turtleEgg.getEggCount(); @@ -33,10 +37,12 @@ public void recalculateNewState() { } } + @PowerNukkitOnly public Block getNewState() { return newState; } + @PowerNukkitOnly public void setNewState(Block newState) { this.newState = newState; } @@ -46,22 +52,27 @@ public BlockTurtleEgg getBlock() { return (BlockTurtleEgg) super.getBlock(); } + @PowerNukkitOnly public int getEggsHatching() { return eggsHatching; } + @PowerNukkitOnly public void setEggsHatching(int eggsHatching) { this.eggsHatching = eggsHatching; } + @PowerNukkitOnly public boolean isRecalculateOnFailure() { return recalculateOnFailure; } + @PowerNukkitOnly public void setRecalculateOnFailure(boolean recalculateOnFailure) { this.recalculateOnFailure = recalculateOnFailure; } + @PowerNukkitOnly public static HandlerList getHandlers() { return handlers; } diff --git a/src/main/java/cn/nukkit/event/block/WaterFrostEvent.java b/src/main/java/cn/nukkit/event/block/WaterFrostEvent.java index 568361c7803..70966baf66d 100644 --- a/src/main/java/cn/nukkit/event/block/WaterFrostEvent.java +++ b/src/main/java/cn/nukkit/event/block/WaterFrostEvent.java @@ -1,25 +1,31 @@ package cn.nukkit.event.block; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.entity.Entity; import cn.nukkit.event.Cancellable; import cn.nukkit.event.HandlerList; +@PowerNukkitOnly public class WaterFrostEvent extends BlockEvent implements Cancellable { private static final HandlerList handlers = new HandlerList(); + @PowerNukkitOnly public static HandlerList getHandlers() { return handlers; } - + + @PowerNukkitOnly protected final Entity entity; + @PowerNukkitOnly public WaterFrostEvent(Block block, Entity entity) { super(block); this.entity = entity; } - + + @PowerNukkitOnly public Entity getEntity() { return entity; } diff --git a/src/main/java/cn/nukkit/event/blockstate/BlockStateRepairFinishEvent.java b/src/main/java/cn/nukkit/event/blockstate/BlockStateRepairFinishEvent.java index d98777aa44e..76a14e89094 100644 --- a/src/main/java/cn/nukkit/event/blockstate/BlockStateRepairFinishEvent.java +++ b/src/main/java/cn/nukkit/event/blockstate/BlockStateRepairFinishEvent.java @@ -39,6 +39,7 @@ public List getAllRepairs() { return allRepairs; } + @PowerNukkitOnly @Nonnull public Block getResult() { return result; diff --git a/src/main/java/cn/nukkit/event/entity/CreatureSpawnEvent.java b/src/main/java/cn/nukkit/event/entity/CreatureSpawnEvent.java index c2efc1a3207..2e6529acf14 100644 --- a/src/main/java/cn/nukkit/event/entity/CreatureSpawnEvent.java +++ b/src/main/java/cn/nukkit/event/entity/CreatureSpawnEvent.java @@ -1,5 +1,6 @@ package cn.nukkit.event.entity; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.entity.Entity; import cn.nukkit.event.Cancellable; import cn.nukkit.event.Event; @@ -27,6 +28,7 @@ public CreatureSpawnEvent(int networkId, Position position, CompoundTag nbt, Spa this.compoundTag = nbt; } + @PowerNukkitOnly public CreatureSpawnEvent(int networkId, Position position, SpawnReason reason) { this.reason = reason; this.entityNetworkId = networkId; diff --git a/src/main/java/cn/nukkit/event/entity/EntityDamageByEntityEvent.java b/src/main/java/cn/nukkit/event/entity/EntityDamageByEntityEvent.java index 269a4836770..0fd4f467b3d 100644 --- a/src/main/java/cn/nukkit/event/entity/EntityDamageByEntityEvent.java +++ b/src/main/java/cn/nukkit/event/entity/EntityDamageByEntityEvent.java @@ -1,8 +1,12 @@ package cn.nukkit.event.entity; +import cn.nukkit.api.Since; import cn.nukkit.entity.Entity; +import cn.nukkit.item.enchantment.Enchantment; import cn.nukkit.potion.Effect; +import javax.annotation.Nonnull; +import javax.annotation.Nullable; import java.util.Map; /** @@ -10,29 +14,47 @@ */ public class EntityDamageByEntityEvent extends EntityDamageEvent { + @Nonnull private final Entity damager; private float knockBack; - public EntityDamageByEntityEvent(Entity damager, Entity entity, DamageCause cause, float damage) { + @Nullable + private Enchantment[] enchantments; + + public EntityDamageByEntityEvent(@Nonnull Entity damager, @Nonnull Entity entity, @Nonnull DamageCause cause, float damage) { this(damager, entity, cause, damage, 0.3f); } - public EntityDamageByEntityEvent(Entity damager, Entity entity, DamageCause cause, Map modifiers) { + public EntityDamageByEntityEvent(@Nonnull Entity damager, @Nonnull Entity entity, @Nonnull DamageCause cause, Map modifiers) { this(damager, entity, cause, modifiers, 0.3f); } - public EntityDamageByEntityEvent(Entity damager, Entity entity, DamageCause cause, float damage, float knockBack) { + public EntityDamageByEntityEvent(@Nonnull Entity damager, @Nonnull Entity entity, @Nonnull DamageCause cause, float damage, float knockBack) { super(entity, cause, damage); this.damager = damager; this.knockBack = knockBack; this.addAttackerModifiers(damager); } - public EntityDamageByEntityEvent(Entity damager, Entity entity, DamageCause cause, Map modifiers, float knockBack) { + public EntityDamageByEntityEvent(@Nonnull Entity damager, @Nonnull Entity entity, @Nonnull DamageCause cause, @Nonnull Map modifiers, float knockBack) { + this(damager, entity, cause, modifiers, knockBack, null); + } + + @Since("1.6.0.0-PN") + public EntityDamageByEntityEvent(@Nonnull Entity damager, @Nonnull Entity entity, @Nonnull DamageCause cause, @Nonnull Map modifiers, float knockBack, @Nullable Enchantment[] enchantments) { super(entity, cause, modifiers); + if (enchantments != null) { + enchantments = enchantments.length == 0 ? Enchantment.EMPTY_ARRAY : enchantments.clone(); + for (Enchantment enchantment : enchantments) { + if (enchantment != null) { + addSideEffects(enchantment.getAttackSideEffects(damager, entity)); + } + } + } this.damager = damager; this.knockBack = knockBack; + this.enchantments = enchantments; this.addAttackerModifiers(damager); } @@ -46,6 +68,7 @@ protected void addAttackerModifiers(Entity damager) { } } + @Nonnull public Entity getDamager() { return damager; } @@ -57,4 +80,13 @@ public float getKnockBack() { public void setKnockBack(float knockBack) { this.knockBack = knockBack; } + + @Since("1.6.0.0-PN") + @Nullable + public Enchantment[] getWeaponEnchantments() { + if (enchantments == null) { + return null; + } + return enchantments.length > 0? enchantments.clone() : Enchantment.EMPTY_ARRAY; + } } diff --git a/src/main/java/cn/nukkit/event/entity/EntityDamageEvent.java b/src/main/java/cn/nukkit/event/entity/EntityDamageEvent.java index 755555c8f32..4ca95ee2058 100644 --- a/src/main/java/cn/nukkit/event/entity/EntityDamageEvent.java +++ b/src/main/java/cn/nukkit/event/entity/EntityDamageEvent.java @@ -1,14 +1,18 @@ package cn.nukkit.event.entity; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.entity.Entity; import cn.nukkit.event.Cancellable; import cn.nukkit.event.HandlerList; +import cn.nukkit.item.enchantment.sideeffect.SideEffect; import cn.nukkit.potion.Effect; import cn.nukkit.utils.EventException; import com.google.common.collect.ImmutableMap; -import java.util.EnumMap; -import java.util.Map; +import javax.annotation.Nonnull; +import java.util.*; +import java.util.stream.Stream; /** * @author MagicDroidX (Nukkit Project) @@ -26,12 +30,16 @@ public static HandlerList getHandlers() { private final Map modifiers; private final Map originals; + private SideEffect[] sideEffects = SideEffect.EMPTY_ARRAY; + + private static Map createDamageModifierMap(float baseDamage) { + Map modifiers = new EnumMap<>(DamageModifier.class); + modifiers.put(DamageModifier.BASE, baseDamage); + return modifiers; + } + public EntityDamageEvent(Entity entity, DamageCause cause, float damage) { - this(entity, cause, new EnumMap(DamageModifier.class) { - { - put(DamageModifier.BASE, damage); - } - }); + this(entity, cause, createDamageModifierMap(damage)); } public EntityDamageEvent(Entity entity, DamageCause cause, Map modifiers) { @@ -45,8 +53,8 @@ public EntityDamageEvent(Entity entity, DamageCause cause, Map sideEffects) { + this.setSideEffects(sideEffects.toArray(SideEffect.EMPTY_ARRAY)); + } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public void addSideEffects(@Nonnull SideEffect... sideEffects) { + Stream safeStream = Arrays.stream(sideEffects) + .filter(Objects::nonNull) + .map(SideEffect::cloneSideEffect); + + this.sideEffects = Stream.concat(Arrays.stream(this.sideEffects), safeStream).toArray(SideEffect[]::new); + } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public void addSideEffects(@Nonnull Collection sideEffects) { + this.addSideEffects(sideEffects.toArray(SideEffect.EMPTY_ARRAY)); + } + public boolean canBeReducedByArmor() { switch (this.cause) { case FIRE_TICK: @@ -223,6 +277,48 @@ public enum DamageCause { /** * Damage caused by hunger */ - HUNGER + HUNGER, + /** + * Damage caused by Wither + */ + @PowerNukkitOnly + @Since("1.5.2.0-PN") + WITHER, + /** + * Damage caused by thorns + */ + @PowerNukkitOnly + @Since("1.5.2.0-PN") + THORNS, + /** + * Damage caused by falling block + */ + @PowerNukkitOnly + @Since("1.5.2.0-PN") + FALLING_BLOCK, + /** + * Damage caused by flying into wall + */ + @PowerNukkitOnly + @Since("1.5.2.0-PN") + FLYING_INTO_WALL, + /** + * Damage caused when an entity steps on a hot block, like {@link cn.nukkit.block.BlockID#MAGMA} + */ + @PowerNukkitOnly + @Since("1.5.2.0-PN") + HOT_FLOOR, + /** + * Damage caused by fireworks + */ + @PowerNukkitOnly + @Since("1.5.2.0-PN") + FIREWORKS, + /** + * Damage caused by temperature + */ + @PowerNukkitOnly + @Since("1.5.2.0-PN") + FREEZING, } } diff --git a/src/main/java/cn/nukkit/event/entity/EntityExplodeEvent.java b/src/main/java/cn/nukkit/event/entity/EntityExplodeEvent.java index a3f7d11b609..38909860459 100644 --- a/src/main/java/cn/nukkit/event/entity/EntityExplodeEvent.java +++ b/src/main/java/cn/nukkit/event/entity/EntityExplodeEvent.java @@ -25,6 +25,7 @@ public static HandlerList getHandlers() { protected final Position position; protected List blocks; + @PowerNukkitOnly protected Set ignitions; protected double yield; diff --git a/src/main/java/cn/nukkit/event/entity/EntityMoveByPistonEvent.java b/src/main/java/cn/nukkit/event/entity/EntityMoveByPistonEvent.java index c97048f7ec9..31d19360692 100644 --- a/src/main/java/cn/nukkit/event/entity/EntityMoveByPistonEvent.java +++ b/src/main/java/cn/nukkit/event/entity/EntityMoveByPistonEvent.java @@ -1,10 +1,13 @@ package cn.nukkit.event.entity; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.entity.Entity; import cn.nukkit.event.Cancellable; import cn.nukkit.math.Vector3; +@PowerNukkitOnly public class EntityMoveByPistonEvent extends EntityMotionEvent implements Cancellable { + @PowerNukkitOnly public EntityMoveByPistonEvent(Entity entity, Vector3 pos) { super(entity, pos); } diff --git a/src/main/java/cn/nukkit/event/entity/ProjectileLaunchEvent.java b/src/main/java/cn/nukkit/event/entity/ProjectileLaunchEvent.java index 8b9b08c6036..7539c9d38e7 100644 --- a/src/main/java/cn/nukkit/event/entity/ProjectileLaunchEvent.java +++ b/src/main/java/cn/nukkit/event/entity/ProjectileLaunchEvent.java @@ -16,6 +16,7 @@ public ProjectileLaunchEvent(EntityProjectile entity) { this.entity = entity; } + @Override public EntityProjectile getEntity() { return (EntityProjectile) this.entity; } diff --git a/src/main/java/cn/nukkit/event/inventory/CampfireSmeltEvent.java b/src/main/java/cn/nukkit/event/inventory/CampfireSmeltEvent.java index ea03a7888ef..07563ecf826 100644 --- a/src/main/java/cn/nukkit/event/inventory/CampfireSmeltEvent.java +++ b/src/main/java/cn/nukkit/event/inventory/CampfireSmeltEvent.java @@ -1,5 +1,6 @@ package cn.nukkit.event.inventory; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.blockentity.BlockEntityCampfire; import cn.nukkit.event.Cancellable; import cn.nukkit.event.HandlerList; @@ -9,10 +10,12 @@ /** * @author MagicDroidX (Nukkit Project) */ +@PowerNukkitOnly public class CampfireSmeltEvent extends BlockEvent implements Cancellable { private static final HandlerList handlers = new HandlerList(); + @PowerNukkitOnly public static HandlerList getHandlers() { return handlers; } @@ -22,6 +25,7 @@ public static HandlerList getHandlers() { private Item result; private boolean keepItem; + @PowerNukkitOnly public CampfireSmeltEvent(BlockEntityCampfire campfire, Item source, Item result) { super(campfire.getBlock()); this.source = source.clone(); @@ -30,26 +34,32 @@ public CampfireSmeltEvent(BlockEntityCampfire campfire, Item source, Item result this.campfire = campfire; } + @PowerNukkitOnly public BlockEntityCampfire getCampfire() { return campfire; } + @PowerNukkitOnly public Item getSource() { return source; } + @PowerNukkitOnly public Item getResult() { return result; } + @PowerNukkitOnly public void setResult(Item result) { this.result = result; } + @PowerNukkitOnly public boolean getKeepItem() { return keepItem; } + @PowerNukkitOnly public void setKeepItem(boolean keepItem) { this.keepItem = keepItem; } diff --git a/src/main/java/cn/nukkit/event/inventory/CraftItemEvent.java b/src/main/java/cn/nukkit/event/inventory/CraftItemEvent.java index d724e7c5107..28b1abf45b1 100644 --- a/src/main/java/cn/nukkit/event/inventory/CraftItemEvent.java +++ b/src/main/java/cn/nukkit/event/inventory/CraftItemEvent.java @@ -32,7 +32,7 @@ public CraftItemEvent(CraftingTransaction transaction) { this.player = transaction.getSource(); this.input = transaction.getInputList().toArray(Item.EMPTY_ARRAY); - this.recipe = transaction.getRecipe(); + this.recipe = transaction.getTransactionRecipe(); } public CraftItemEvent(Player player, Item[] input, Recipe recipe) { diff --git a/src/main/java/cn/nukkit/event/inventory/EnchantItemEvent.java b/src/main/java/cn/nukkit/event/inventory/EnchantItemEvent.java index 411c7b2db87..9605cd10d6a 100644 --- a/src/main/java/cn/nukkit/event/inventory/EnchantItemEvent.java +++ b/src/main/java/cn/nukkit/event/inventory/EnchantItemEvent.java @@ -6,11 +6,7 @@ import cn.nukkit.event.HandlerList; import cn.nukkit.inventory.EnchantInventory; import cn.nukkit.item.Item; -import lombok.Getter; -import lombok.Setter; -@Getter -@Setter @Since("1.3.1.0-PN") public class EnchantItemEvent extends InventoryEvent implements Cancellable { private static final HandlerList handlers = new HandlerList(); @@ -32,4 +28,44 @@ public EnchantItemEvent(EnchantInventory inventory, Item oldItem, Item newItem, this.xpCost = cost; this.enchanter = p; } + + @Since("1.3.1.0-PN") + public Item getOldItem() { + return oldItem; + } + + @Since("1.3.1.0-PN") + public void setOldItem(Item oldItem) { + this.oldItem = oldItem; + } + + @Since("1.3.1.0-PN") + public Item getNewItem() { + return newItem; + } + + @Since("1.3.1.0-PN") + public void setNewItem(Item newItem) { + this.newItem = newItem; + } + + @Since("1.3.1.0-PN") + public int getXpCost() { + return xpCost; + } + + @Since("1.3.1.0-PN") + public void setXpCost(int xpCost) { + this.xpCost = xpCost; + } + + @Since("1.3.1.0-PN") + public Player getEnchanter() { + return enchanter; + } + + @Since("1.3.1.0-PN") + public void setEnchanter(Player enchanter) { + this.enchanter = enchanter; + } } diff --git a/src/main/java/cn/nukkit/event/player/PlayerBucketEmptyEvent.java b/src/main/java/cn/nukkit/event/player/PlayerBucketEmptyEvent.java index e2487ab265d..69b2a337760 100644 --- a/src/main/java/cn/nukkit/event/player/PlayerBucketEmptyEvent.java +++ b/src/main/java/cn/nukkit/event/player/PlayerBucketEmptyEvent.java @@ -1,6 +1,7 @@ package cn.nukkit.event.player; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.event.HandlerList; import cn.nukkit.item.Item; @@ -13,6 +14,7 @@ public static HandlerList getHandlers() { return handlers; } + @PowerNukkitOnly public PlayerBucketEmptyEvent(Player who, Block blockClicked, BlockFace blockFace, Block liquid, Item bucket, Item itemInHand) { super(who, blockClicked, blockFace, liquid, bucket, itemInHand); } diff --git a/src/main/java/cn/nukkit/event/player/PlayerBucketEvent.java b/src/main/java/cn/nukkit/event/player/PlayerBucketEvent.java index 22a5f434f44..652644b59da 100644 --- a/src/main/java/cn/nukkit/event/player/PlayerBucketEvent.java +++ b/src/main/java/cn/nukkit/event/player/PlayerBucketEvent.java @@ -1,6 +1,7 @@ package cn.nukkit.event.player; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.event.Cancellable; import cn.nukkit.item.Item; @@ -18,7 +19,7 @@ abstract class PlayerBucketEvent extends PlayerEvent implements Cancellable { private Item item; - + @PowerNukkitOnly public PlayerBucketEvent(Player who, Block blockClicked, BlockFace blockFace, Block liquid, Item bucket, Item itemInHand) { this.player = who; this.blockClicked = blockClicked; diff --git a/src/main/java/cn/nukkit/event/player/PlayerBucketFillEvent.java b/src/main/java/cn/nukkit/event/player/PlayerBucketFillEvent.java index 1a327f420e6..4c6e5135fdc 100644 --- a/src/main/java/cn/nukkit/event/player/PlayerBucketFillEvent.java +++ b/src/main/java/cn/nukkit/event/player/PlayerBucketFillEvent.java @@ -1,6 +1,7 @@ package cn.nukkit.event.player; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.event.HandlerList; import cn.nukkit.item.Item; @@ -13,6 +14,7 @@ public static HandlerList getHandlers() { return handlers; } + @PowerNukkitOnly public PlayerBucketFillEvent(Player who, Block blockClicked, BlockFace blockFace, Block liquid, Item bucket, Item itemInHand) { super(who, blockClicked, blockFace, liquid, bucket, itemInHand); } diff --git a/src/main/java/cn/nukkit/event/vehicle/VehicleDamageByEntityEvent.java b/src/main/java/cn/nukkit/event/vehicle/VehicleDamageByEntityEvent.java index c928e70e1b6..6413d9234c0 100644 --- a/src/main/java/cn/nukkit/event/vehicle/VehicleDamageByEntityEvent.java +++ b/src/main/java/cn/nukkit/event/vehicle/VehicleDamageByEntityEvent.java @@ -1,5 +1,6 @@ package cn.nukkit.event.vehicle; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.entity.Entity; import cn.nukkit.entity.item.EntityVehicle; import cn.nukkit.event.Cancellable; @@ -11,6 +12,7 @@ * @author TrainmasterHD * @since 09.09.2019 */ +@PowerNukkitOnly public final class VehicleDamageByEntityEvent extends VehicleDamageEvent implements Cancellable { private static final HandlerList handlers = new HandlerList(); @@ -24,13 +26,14 @@ public final class VehicleDamageByEntityEvent extends VehicleDamageEvent impleme * @param attacker the attacking vehicle * @param damage the caused damage on the vehicle */ - + @PowerNukkitOnly public VehicleDamageByEntityEvent(final EntityVehicle vehicle, final Entity attacker, final double damage) { super(vehicle, damage); this.attacker = attacker; } + @PowerNukkitOnly public static HandlerList getHandlers() { return handlers; } @@ -40,7 +43,7 @@ public static HandlerList getHandlers() { * * @return attacking entity */ - + @PowerNukkitOnly public Entity getAttacker() { return attacker; } diff --git a/src/main/java/cn/nukkit/event/vehicle/VehicleDamageEvent.java b/src/main/java/cn/nukkit/event/vehicle/VehicleDamageEvent.java index fffdabb2c5d..cecceebc478 100644 --- a/src/main/java/cn/nukkit/event/vehicle/VehicleDamageEvent.java +++ b/src/main/java/cn/nukkit/event/vehicle/VehicleDamageEvent.java @@ -1,5 +1,6 @@ package cn.nukkit.event.vehicle; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.entity.item.EntityVehicle; import cn.nukkit.event.Cancellable; import cn.nukkit.event.HandlerList; @@ -20,6 +21,7 @@ public class VehicleDamageEvent extends VehicleEvent implements Cancellable { * @param damage the caused damage on the vehicle */ + @PowerNukkitOnly public VehicleDamageEvent(final EntityVehicle vehicle, final double damage) { super(vehicle); diff --git a/src/main/java/cn/nukkit/event/vehicle/VehicleDestroyByEntityEvent.java b/src/main/java/cn/nukkit/event/vehicle/VehicleDestroyByEntityEvent.java index 436c14e314f..3f0bd8de12f 100644 --- a/src/main/java/cn/nukkit/event/vehicle/VehicleDestroyByEntityEvent.java +++ b/src/main/java/cn/nukkit/event/vehicle/VehicleDestroyByEntityEvent.java @@ -1,5 +1,6 @@ package cn.nukkit.event.vehicle; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.entity.Entity; import cn.nukkit.event.Cancellable; import cn.nukkit.event.HandlerList; @@ -10,6 +11,7 @@ * @author TrainmasterHD * @since 09.09.2019 */ +@PowerNukkitOnly public final class VehicleDestroyByEntityEvent extends VehicleDestroyEvent implements Cancellable { private static final HandlerList HANDLER_LIST = new HandlerList(); @@ -22,13 +24,14 @@ public final class VehicleDestroyByEntityEvent extends VehicleDestroyEvent imple * @param vehicle the destroyed vehicle * @param destroyer the destroying entity */ - + @PowerNukkitOnly public VehicleDestroyByEntityEvent(final Entity vehicle, final Entity destroyer) { super(vehicle); this.destroyer = destroyer; } + @PowerNukkitOnly public static HandlerList getHandlers() { return HANDLER_LIST; } @@ -38,7 +41,7 @@ public static HandlerList getHandlers() { * * @return destroying entity */ - + @PowerNukkitOnly public Entity getDestroyer() { return destroyer; } diff --git a/src/main/java/cn/nukkit/event/vehicle/VehicleDestroyEvent.java b/src/main/java/cn/nukkit/event/vehicle/VehicleDestroyEvent.java index 6b866b79e2c..ddd9cda5e53 100644 --- a/src/main/java/cn/nukkit/event/vehicle/VehicleDestroyEvent.java +++ b/src/main/java/cn/nukkit/event/vehicle/VehicleDestroyEvent.java @@ -1,5 +1,6 @@ package cn.nukkit.event.vehicle; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.entity.Entity; import cn.nukkit.event.Cancellable; import cn.nukkit.event.HandlerList; @@ -17,6 +18,7 @@ public class VehicleDestroyEvent extends VehicleEvent implements Cancellable { * @param vehicle the destroyed vehicle */ + @PowerNukkitOnly public VehicleDestroyEvent(final Entity vehicle) { super(vehicle); } diff --git a/src/main/java/cn/nukkit/form/window/FormWindowCustom.java b/src/main/java/cn/nukkit/form/window/FormWindowCustom.java index 1a0880329f6..6c7ca263a65 100644 --- a/src/main/java/cn/nukkit/form/window/FormWindowCustom.java +++ b/src/main/java/cn/nukkit/form/window/FormWindowCustom.java @@ -65,10 +65,12 @@ public void setIcon(ElementButtonImageData icon) { this.icon = icon; } + @Override public FormResponseCustom getResponse() { return response; } + @Override public void setResponse(String data) { if (data.equals("null")) { this.closed = true; diff --git a/src/main/java/cn/nukkit/form/window/FormWindowModal.java b/src/main/java/cn/nukkit/form/window/FormWindowModal.java index 9eb7e95c2ce..7aaa4aa7a72 100644 --- a/src/main/java/cn/nukkit/form/window/FormWindowModal.java +++ b/src/main/java/cn/nukkit/form/window/FormWindowModal.java @@ -51,10 +51,12 @@ public void setButton2(String button2) { this.button2 = button2; } + @Override public FormResponseModal getResponse() { return response; } + @Override public void setResponse(String data) { if (data.equals("null")) { closed = true; diff --git a/src/main/java/cn/nukkit/form/window/FormWindowSimple.java b/src/main/java/cn/nukkit/form/window/FormWindowSimple.java index 0b7ff67ef2e..7c5ca39b7aa 100644 --- a/src/main/java/cn/nukkit/form/window/FormWindowSimple.java +++ b/src/main/java/cn/nukkit/form/window/FormWindowSimple.java @@ -49,10 +49,12 @@ public void addButton(ElementButton button) { this.buttons.add(button); } + @Override public FormResponseSimple getResponse() { return response; } + @Override public void setResponse(String data) { if (data.equals("null")) { this.closed = true; diff --git a/src/main/java/cn/nukkit/inventory/AnvilInventory.java b/src/main/java/cn/nukkit/inventory/AnvilInventory.java index 9d7418f8fd0..c25f1c9c67a 100644 --- a/src/main/java/cn/nukkit/inventory/AnvilInventory.java +++ b/src/main/java/cn/nukkit/inventory/AnvilInventory.java @@ -4,7 +4,6 @@ import cn.nukkit.api.DeprecationDetails; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; -import cn.nukkit.block.Block; import cn.nukkit.block.BlockID; import cn.nukkit.item.Item; import cn.nukkit.item.ItemID; @@ -59,6 +58,7 @@ public void onSlotChange(int index, Item before, boolean send) { @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", by = "PowerNukkit", reason = "Experimenting the new implementation by Nukkit") + @PowerNukkitOnly public void updateResult() { Item target = getFirstItem(); Item sacrifice = getSecondItem(); diff --git a/src/main/java/cn/nukkit/inventory/BarrelInventory.java b/src/main/java/cn/nukkit/inventory/BarrelInventory.java index c9c3dfae9f2..bd080d42133 100644 --- a/src/main/java/cn/nukkit/inventory/BarrelInventory.java +++ b/src/main/java/cn/nukkit/inventory/BarrelInventory.java @@ -1,14 +1,17 @@ package cn.nukkit.inventory; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.block.BlockBarrel; import cn.nukkit.blockentity.BlockEntityBarrel; import cn.nukkit.level.Level; import cn.nukkit.level.Sound; +@PowerNukkitOnly public class BarrelInventory extends ContainerInventory { + @PowerNukkitOnly public BarrelInventory(BlockEntityBarrel barrel) { super(barrel, InventoryType.BARREL); } diff --git a/src/main/java/cn/nukkit/inventory/BaseInventory.java b/src/main/java/cn/nukkit/inventory/BaseInventory.java index e5ba0d467aa..2b357b328be 100644 --- a/src/main/java/cn/nukkit/inventory/BaseInventory.java +++ b/src/main/java/cn/nukkit/inventory/BaseInventory.java @@ -2,6 +2,7 @@ import cn.nukkit.Player; import cn.nukkit.Server; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.block.BlockID; import cn.nukkit.blockentity.BlockEntity; @@ -579,6 +580,7 @@ public void sendSlot(int index, Collection players) { this.sendSlot(index, players.toArray(Player.EMPTY_ARRAY)); } + @PowerNukkitOnly @Override public void addListener(InventoryListener listener) { if (this.listeners == null) { @@ -588,6 +590,7 @@ public void addListener(InventoryListener listener) { this.listeners.add(listener); } + @PowerNukkitOnly @Override public void removeListener(InventoryListener listener) { if (this.listeners != null) { diff --git a/src/main/java/cn/nukkit/inventory/BlastFurnaceRecipe.java b/src/main/java/cn/nukkit/inventory/BlastFurnaceRecipe.java index a7ac6b7c0fd..251651b469b 100644 --- a/src/main/java/cn/nukkit/inventory/BlastFurnaceRecipe.java +++ b/src/main/java/cn/nukkit/inventory/BlastFurnaceRecipe.java @@ -1,22 +1,27 @@ package cn.nukkit.inventory; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; +@PowerNukkitOnly public class BlastFurnaceRecipe implements SmeltingRecipe { private final Item output; private Item ingredient; + @PowerNukkitOnly public BlastFurnaceRecipe(Item result, Item ingredient) { this.output = result.clone(); this.ingredient = ingredient.clone(); } + @PowerNukkitOnly public void setInput(Item item) { this.ingredient = item.clone(); } + @PowerNukkitOnly @Override public Item getInput() { return this.ingredient.clone(); diff --git a/src/main/java/cn/nukkit/inventory/CampfireInventory.java b/src/main/java/cn/nukkit/inventory/CampfireInventory.java index 8eb4f1c4168..1910344490c 100644 --- a/src/main/java/cn/nukkit/inventory/CampfireInventory.java +++ b/src/main/java/cn/nukkit/inventory/CampfireInventory.java @@ -1,14 +1,18 @@ package cn.nukkit.inventory; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.blockentity.BlockEntityCampfire; import cn.nukkit.item.Item; +@PowerNukkitOnly public class CampfireInventory extends ContainerInventory { + @PowerNukkitOnly public CampfireInventory(BlockEntityCampfire campfire) { super(campfire, InventoryType.CAMPFIRE); } + @PowerNukkitOnly public CampfireInventory(BlockEntityCampfire furnace, InventoryType inventoryType) { super(furnace, inventoryType); } diff --git a/src/main/java/cn/nukkit/inventory/CampfireRecipe.java b/src/main/java/cn/nukkit/inventory/CampfireRecipe.java index 235ec906c7a..cd51e046280 100644 --- a/src/main/java/cn/nukkit/inventory/CampfireRecipe.java +++ b/src/main/java/cn/nukkit/inventory/CampfireRecipe.java @@ -1,22 +1,27 @@ package cn.nukkit.inventory; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; +@PowerNukkitOnly public class CampfireRecipe implements SmeltingRecipe { private final Item output; private Item ingredient; + @PowerNukkitOnly public CampfireRecipe(Item result, Item ingredient) { this.output = result.clone(); this.ingredient = ingredient.clone(); } + @PowerNukkitOnly public void setInput(Item item) { this.ingredient = item.clone(); } + @PowerNukkitOnly @Override public Item getInput() { return this.ingredient.clone(); diff --git a/src/main/java/cn/nukkit/inventory/CartographyRecipe.java b/src/main/java/cn/nukkit/inventory/CartographyRecipe.java index 1ba2d41e7ad..a038cb5ecb4 100644 --- a/src/main/java/cn/nukkit/inventory/CartographyRecipe.java +++ b/src/main/java/cn/nukkit/inventory/CartographyRecipe.java @@ -1,14 +1,18 @@ package cn.nukkit.inventory; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import java.util.Collection; +@PowerNukkitOnly public class CartographyRecipe extends ShapelessRecipe { + @PowerNukkitOnly public CartographyRecipe(Item result, Collection ingredients) { super(result, ingredients); } - + + @PowerNukkitOnly public CartographyRecipe(String recipeId, int priority, Item result, Collection ingredients) { super(recipeId, priority, result, ingredients); } diff --git a/src/main/java/cn/nukkit/inventory/CraftingManager.java b/src/main/java/cn/nukkit/inventory/CraftingManager.java index a7b1ac6bc2e..6098b7afa00 100644 --- a/src/main/java/cn/nukkit/inventory/CraftingManager.java +++ b/src/main/java/cn/nukkit/inventory/CraftingManager.java @@ -5,6 +5,7 @@ import cn.nukkit.api.Since; import cn.nukkit.block.BlockID; import cn.nukkit.block.BlockUnknown; +import cn.nukkit.blockproperty.UnknownRuntimeIdException; import cn.nukkit.blockproperty.exception.BlockPropertyNotFoundException; import cn.nukkit.blockstate.BlockState; import cn.nukkit.blockstate.BlockStateRegistry; @@ -27,8 +28,11 @@ import javax.annotation.Nonnull; import javax.annotation.Nullable; import java.io.File; +import java.io.IOException; import java.io.InputStream; +import java.io.UncheckedIOException; import java.util.*; +import java.util.stream.Stream; import java.util.zip.Deflater; /** @@ -41,25 +45,31 @@ public class CraftingManager { @Since("1.5.0.0-PN") public static DataPacket packet = null; - - + + protected final Map> shapedRecipes = new Int2ObjectOpenHashMap<>(); public final Map furnaceRecipes = new Int2ObjectOpenHashMap<>(); + @PowerNukkitOnly public final Map blastFurnaceRecipes = new Int2ObjectOpenHashMap<>(); + @PowerNukkitOnly public final Map smokerRecipes = new Int2ObjectOpenHashMap<>(); + @PowerNukkitOnly public final Map campfireRecipes = new Int2ObjectOpenHashMap<>(); - @Since("1.4.0.0-PN") public final Map multiRecipes = new HashMap<>(); + @Since("1.4.0.0-PN") + public final Map multiRecipes = new HashMap<>(); public final Map brewingRecipes = new Int2ObjectOpenHashMap<>(); public final Map containerRecipes = new Int2ObjectOpenHashMap<>(); + @PowerNukkitOnly public final Map stonecutterRecipes = new Int2ObjectOpenHashMap<>(); private static int RECIPE_COUNT = 0; protected final Map> shapelessRecipes = new Int2ObjectOpenHashMap<>(); + @PowerNukkitOnly protected final Map> cartographyRecipes = new Int2ObjectOpenHashMap<>(); - + private final Int2ObjectOpenHashMap> smithingRecipes = new Int2ObjectOpenHashMap<>(); public static final Comparator recipeComparator = (i1, i2) -> { @@ -73,7 +83,7 @@ public class CraftingManager { return -1; } else return Integer.compare(i1.getCount(), i2.getCount()); }; - + @PowerNukkitOnly @Since("1.4.0.0-PN") public static DataPacket getCraftingPacket() { @@ -81,15 +91,13 @@ public static DataPacket getCraftingPacket() { } public CraftingManager() { - InputStream recipesStream = Server.class.getClassLoader().getResourceAsStream("recipes.json"); - if (recipesStream == null) { - throw new AssertionError("Unable to find recipes.json"); + Config recipesConfig = new Config(Config.JSON); + try (InputStream recipesStream = Server.class.getClassLoader().getResourceAsStream("recipes.json")) { + recipesConfig.load(Objects.requireNonNull(recipesStream, "Unable to find recipes.json")); + } catch (IOException e) { + throw new UncheckedIOException(e); } - registerSmithingRecipes(); - - Config recipesConfig = new Config(Config.JSON); - recipesConfig.load(recipesStream); this.loadRecipes(recipesConfig); String path = Server.getInstance().getDataPath() + "custom_recipes.json"; @@ -103,27 +111,6 @@ public CraftingManager() { log.info("Loaded {} recipes.", this.recipes.size()); } - - private void registerSmithingRecipes() { - Item ingot = Item.get(ItemID.NETHERITE_INGOT); - Int2IntMap ids = new Int2IntOpenHashMap(); - ids.put(ItemID.DIAMOND_HELMET, ItemID.NETHERITE_HELMET); - ids.put(ItemID.DIAMOND_CHESTPLATE, ItemID.NETHERITE_CHESTPLATE); - ids.put(ItemID.DIAMOND_LEGGINGS, ItemID.NETHERITE_LEGGINGS); - ids.put(ItemID.DIAMOND_BOOTS, ItemID.NETHERITE_BOOTS); - ids.put(ItemID.DIAMOND_SWORD, ItemID.NETHERITE_SWORD); - ids.put(ItemID.DIAMOND_PICKAXE, ItemID.NETHERITE_PICKAXE); - ids.put(ItemID.DIAMOND_HOE, ItemID.NETHERITE_HOE); - ids.put(ItemID.DIAMOND_SHOVEL, ItemID.NETHERITE_SHOVEL); - ids.put(ItemID.DIAMOND_AXE, ItemID.NETHERITE_AXE); - ids.int2IntEntrySet().forEach(e-> - new SmithingRecipe( - Item.get(e.getIntKey()).createFuzzyCraftingRecipe(), - ingot, - Item.get(e.getIntValue()) - ).registerToCraftingManager(this) - ); - } @SuppressWarnings("unchecked") private void loadRecipes(Config config) { @@ -132,11 +119,18 @@ private void loadRecipes(Config config) { toNextRecipe: for (Map recipe : recipes) { try { - switch (Utils.toInt(recipe.get("type"))) { + int type = Utils.toInt(recipe.get("type")); + switch (type) { case 0: + case 5: String craftingBlock = (String) recipe.get("block"); - if (!"crafting_table".equals(craftingBlock) && !"stonecutter".equals(craftingBlock) && !"cartography_table".equalsIgnoreCase(craftingBlock)) { - // Ignore other recipes than crafting table, stonecutter and cartography table + if (type == 5) { + craftingBlock = "shulker_box"; + } + if (!"crafting_table".equals(craftingBlock) && !"stonecutter".equals(craftingBlock) + && !"cartography_table".equalsIgnoreCase(craftingBlock) && !"shulker_box".equalsIgnoreCase(craftingBlock) + && !"smithing_table".equalsIgnoreCase(craftingBlock)) { + // Ignore other recipes than crafting table, stonecutter, smithing table and cartography table continue; } // TODO: handle multiple result items @@ -167,12 +161,18 @@ private void loadRecipes(Config config) { case "crafting_table": this.registerRecipe(new ShapelessRecipe(recipeId, priority, result, sorted)); break; + case "shulker_box": + this.registerRecipe(new ShulkerBoxRecipe(recipeId, priority, result, sorted)); + break; case "stonecutter": this.registerRecipe(new StonecutterRecipe(recipeId, priority, result, sorted.get(0))); break; case "cartography_table": this.registerRecipe(new CartographyRecipe(recipeId, priority, result, sorted)); break; + case "smithing_table": + this.registerRecipe(new SmithingRecipe(recipeId, priority, sorted, result)); + break; } break; case 1: @@ -277,9 +277,9 @@ private void loadRecipes(Config config) { int toPotionMeta = ((Number) potionMix.get("outputMeta")).intValue(); registerBrewingRecipe(new BrewingRecipe( - Item.fromString(fromPotionId+":"+fromPotionMeta), - Item.fromString(ingredient+":"+ingredientMeta), - Item.fromString(toPotionId+":"+toPotionMeta) + Item.fromString(fromPotionId + ":" + fromPotionMeta), + Item.fromString(ingredient + ":" + ingredientMeta), + Item.fromString(toPotionId + ":" + toPotionMeta) )); } @@ -292,7 +292,7 @@ private void loadRecipes(Config config) { registerContainerRecipe(new ContainerRecipe(Item.fromString(fromItemId), Item.fromString(ingredient), Item.fromString(toItemId))); } - + // Allow to rename without crafting registerCartographyRecipe(new CartographyRecipe(Item.get(ItemID.EMPTY_MAP), Collections.singletonList(Item.get(ItemID.EMPTY_MAP)))); registerCartographyRecipe(new CartographyRecipe(Item.get(ItemID.EMPTY_MAP, 2), Collections.singletonList(Item.get(ItemID.EMPTY_MAP, 2)))); @@ -304,15 +304,62 @@ private void loadRecipes(Config config) { private Item parseRecipeItem(Map data) { String nbt = (String) data.get("nbt_b64"); + boolean fuzzy = data.containsKey("fuzzy") && Boolean.parseBoolean(data.get("fuzzy").toString()); byte[] nbtBytes = nbt != null ? Base64.getDecoder().decode(nbt) : EmptyArrays.EMPTY_BYTES; - int count = data.containsKey("count")? ((Number)data.get("count")).intValue() : 1; - Integer legacyId = null; - if (data.containsKey("legacyId")) { - legacyId = Utils.toInt(data.get("legacyId")); - } + int count = data.containsKey("count") ? ((Number) data.get("count")).intValue() : 1; Item item; + if (data.containsKey("blockState")) { + String blockStateId = data.get("blockState").toString(); + // TODO Remove this when the support is added to these blocks + if (Stream.of( + "minecraft:candle", + "minecraft:cracked_deepslate_bricks", + "minecraft:cracked_deepslate_tiles", + "minecraft:smooth_basalt", + "minecraft:moss_block", + "minecraft:deepslate", + "minecraft:copper", + "minecraft:raw_", + "minecraft:pointed_dripstone" + ).anyMatch(blockStateId::startsWith)) { + return Item.get(BlockID.AIR); + } + if (Stream.of( + "copper", "deepslate", "deepslate_slab", + "copper_slab", "copper_stairs" + ).anyMatch(blockStateId.split(";", 2)[0]::endsWith)) { + return Item.get(BlockID.AIR); + } + try { + BlockState state = BlockState.of(blockStateId); + item = state.asItemBlock(count); + item.setCompoundTag(nbtBytes); + if (fuzzy) { + item = item.createFuzzyCraftingRecipe(); + } + return item; + } catch (BlockPropertyNotFoundException | UnknownRuntimeIdException e) { + int runtimeId = BlockStateRegistry.getKnownRuntimeIdByBlockStateId(blockStateId); + if (runtimeId == -1) { + log.warn("Unsupported block found in recipes.json: {}", blockStateId); + return Item.get(BlockID.AIR); + } + int blockId = BlockStateRegistry.getBlockIdByRuntimeId(runtimeId); + BlockState defaultBlockState = BlockState.of(blockId); + if (defaultBlockState.getProperties().equals(BlockUnknown.PROPERTIES)) { + log.warn("Unsupported block found in recipes.json: {}", blockStateId); + return Item.get(BlockID.AIR); + } + log.error("Failed to load a recipe with {}", blockStateId, e); + return Item.get(BlockID.AIR); + } catch (Exception e) { + log.error("Failed to load the block state {}", blockStateId, e); + return Item.getBlock(BlockID.AIR); + } + } + if (data.containsKey("blockRuntimeId")) { int blockRuntimeId = Utils.toInt(data.get("blockRuntimeId")); try { @@ -325,12 +372,19 @@ private Item parseRecipeItem(Map data) { } item = state.asItemBlock(count); item.setCompoundTag(nbtBytes); + if (fuzzy) { + item = item.createFuzzyCraftingRecipe(); + } return item; } catch (BlockPropertyNotFoundException e) { log.debug("Failed to load the block runtime id {}", blockRuntimeId, e); } } + Integer legacyId = null; + if (data.containsKey("legacyId")) { + legacyId = Utils.toInt(data.get("legacyId")); + } if (legacyId != null && legacyId > 255) { try { int fullId = RuntimeItems.getRuntimeMapping().getLegacyFullId(legacyId); @@ -340,7 +394,6 @@ private Item parseRecipeItem(Map data) { meta = RuntimeItems.getData(fullId); } - boolean fuzzy = false; if (data.containsKey("damage")) { int damage = Utils.toInt(data.get("damage")); if (damage == Short.MAX_VALUE) { @@ -366,7 +419,8 @@ private Item parseRecipeItem(Map data) { if (data.containsKey("damage")) { int meta = Utils.toInt(data.get("damage")); if (meta == Short.MAX_VALUE) { - item = Item.fromString(id).createFuzzyCraftingRecipe(); + item = Item.fromString(id); + fuzzy = true; } else { item = Item.fromString(id + ":" + meta); } @@ -375,6 +429,10 @@ private Item parseRecipeItem(Map data) { } item.setCount(count); item.setCompoundTag(nbtBytes); + if (fuzzy) { + item = item.createFuzzyCraftingRecipe(); + } + return item; } @@ -389,7 +447,7 @@ public void rebuildPacket() { pk.addShapelessRecipe((ShapelessRecipe) recipe); } } - + for (Map map : cartographyRecipes.values()) { for (CartographyRecipe recipe : map.values()) { pk.addCartographyRecipe(recipe); @@ -447,18 +505,21 @@ public FurnaceRecipe matchFurnaceRecipe(Item input) { return recipe; } + @PowerNukkitOnly public CampfireRecipe matchCampfireRecipe(Item input) { CampfireRecipe recipe = this.campfireRecipes.get(getItemHash(input)); if (recipe == null) recipe = this.campfireRecipes.get(getItemHash(input.getId(), 0)); return recipe; } + @PowerNukkitOnly public BlastFurnaceRecipe matchBlastFurnaceRecipe(Item input) { BlastFurnaceRecipe recipe = this.blastFurnaceRecipes.get(getItemHash(input)); if (recipe == null) recipe = this.blastFurnaceRecipes.get(getItemHash(input.getId(), 0)); return recipe; } + @PowerNukkitOnly public SmokerRecipe matchSmokerRecipe(Item input) { SmokerRecipe recipe = this.smokerRecipes.get(getItemHash(input)); if (recipe == null) recipe = this.smokerRecipes.get(getItemHash(input.getId(), 0)); @@ -477,6 +538,7 @@ private static int getFullItemHash(Item item) { return 31 * getItemHash(item) + item.getCount(); } + @PowerNukkitOnly public void registerStonecutterRecipe(StonecutterRecipe recipe) { this.stonecutterRecipes.put(getItemHash(recipe.getResult()), recipe); } @@ -486,17 +548,19 @@ public void registerFurnaceRecipe(FurnaceRecipe recipe) { this.furnaceRecipes.put(getItemHash(input), recipe); } - + @PowerNukkitOnly public void registerBlastFurnaceRecipe(BlastFurnaceRecipe recipe) { Item input = recipe.getInput(); this.blastFurnaceRecipes.put(getItemHash(input), recipe); } + @PowerNukkitOnly public void registerSmokerRecipe(SmokerRecipe recipe) { Item input = recipe.getInput(); this.smokerRecipes.put(getItemHash(input), recipe); } + @PowerNukkitOnly public void registerCampfireRecipe(CampfireRecipe recipe) { Item input = recipe.getInput(); this.campfireRecipes.put(getItemHash(input), recipe); @@ -532,19 +596,20 @@ public void registerRecipe(Recipe recipe) { recipe.registerToCraftingManager(this); } - + + @PowerNukkitOnly public void registerCartographyRecipe(CartographyRecipe recipe) { List list = recipe.getIngredientList(); list.sort(recipeComparator); - + UUID hash = getMultiItemHash(list); - + int resultHash = getItemHash(recipe.getResult()); Map map = cartographyRecipes.computeIfAbsent(resultHash, k -> new HashMap<>()); - + map.put(hash, recipe); } - + public void registerShapelessRecipe(ShapelessRecipe recipe) { List list = recipe.getIngredientsAggregate(); @@ -555,7 +620,7 @@ public void registerShapelessRecipe(ShapelessRecipe recipe) { map.put(hash, recipe); } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public void registerSmithingRecipe(@Nonnull SmithingRecipe recipe) { @@ -585,14 +650,14 @@ public SmithingRecipe matchSmithingRecipe(Item equipment, Item ingredient) { public SmithingRecipe matchSmithingRecipe(@Nonnull List inputList) { inputList.sort(recipeComparator); UUID inputHash = getMultiItemHash(inputList); - - return smithingRecipes.values().stream().flatMap(map-> map.entrySet().stream()) - .filter(entry-> entry.getKey().equals(inputHash)) + + return smithingRecipes.values().stream().flatMap(map -> map.entrySet().stream()) + .filter(entry -> entry.getKey().equals(inputHash)) .map(Map.Entry::getValue) - .findFirst().orElseGet(()-> - smithingRecipes.values().stream().flatMap(map-> map.values().stream()) - .filter(recipe -> recipe.matchItems(inputList)) - .findFirst().orElse(null) + .findFirst().orElseGet(() -> + smithingRecipes.values().stream().flatMap(map -> map.values().stream()) + .filter(recipe -> recipe.matchItems(inputList)) + .findFirst().orElse(null) ); } @@ -613,7 +678,7 @@ public SmithingRecipe matchSmithingRecipe(@Nonnull List inputList, @Nonnul if (!this.smithingRecipes.containsKey(outputHash)) { return null; } - + inputList.sort(recipeComparator); UUID inputHash = getMultiItemHash(inputList); @@ -673,37 +738,39 @@ public ContainerRecipe matchContainerRecipe(Item input, Item potion) { return this.containerRecipes.get(getContainerHash(input.getId(), potion.getId())); } + @PowerNukkitOnly public StonecutterRecipe matchStonecutterRecipe(Item output) { return this.stonecutterRecipes.get(getItemHash(output)); } + @PowerNukkitOnly public CartographyRecipe matchCartographyRecipe(List inputList, Item primaryOutput, List extraOutputList) { int outputHash = getItemHash(primaryOutput); - + if (cartographyRecipes.containsKey(outputHash)) { inputList.sort(recipeComparator); - + UUID inputHash = getMultiItemHash(inputList); - + Map recipes = cartographyRecipes.get(outputHash); - + if (recipes == null) { return null; } - + CartographyRecipe recipe = recipes.get(inputHash); - + if (recipe != null && recipe.matchItems(inputList, extraOutputList) || matchItemsAccumulation(recipe, inputList, primaryOutput, extraOutputList)) { return recipe; } - + for (CartographyRecipe cartographyRecipe : recipes.values()) { if (cartographyRecipe.matchItems(inputList, extraOutputList) || matchItemsAccumulation(cartographyRecipe, inputList, primaryOutput, extraOutputList)) { return cartographyRecipe; } } } - + return null; } diff --git a/src/main/java/cn/nukkit/inventory/DispenserInventory.java b/src/main/java/cn/nukkit/inventory/DispenserInventory.java index 88eb5fd8fb7..bd818ac5326 100644 --- a/src/main/java/cn/nukkit/inventory/DispenserInventory.java +++ b/src/main/java/cn/nukkit/inventory/DispenserInventory.java @@ -1,11 +1,12 @@ package cn.nukkit.inventory; -import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.blockentity.BlockEntityDispenser; -@PowerNukkitDifference(since = "1.4.0.0-PN", info = "Extends EjectableInventory only in PowerNukkit") +@PowerNukkitOnly public class DispenserInventory extends EjectableInventory { + @PowerNukkitOnly public DispenserInventory(BlockEntityDispenser blockEntity) { super(blockEntity, InventoryType.DISPENSER); } diff --git a/src/main/java/cn/nukkit/inventory/DropperInventory.java b/src/main/java/cn/nukkit/inventory/DropperInventory.java index cffd2a5e9c4..c20de0ee271 100644 --- a/src/main/java/cn/nukkit/inventory/DropperInventory.java +++ b/src/main/java/cn/nukkit/inventory/DropperInventory.java @@ -1,11 +1,12 @@ package cn.nukkit.inventory; -import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.blockentity.BlockEntityDropper; -@PowerNukkitDifference(since = "1.4.0.0-PN", info = "Extends EjectableInventory only in PowerNukkit") +@PowerNukkitOnly public class DropperInventory extends EjectableInventory { + @PowerNukkitOnly public DropperInventory(BlockEntityDropper blockEntity) { super(blockEntity, InventoryType.DROPPER); } diff --git a/src/main/java/cn/nukkit/inventory/Fuel.java b/src/main/java/cn/nukkit/inventory/Fuel.java index 42c3f5db879..b32608d397d 100644 --- a/src/main/java/cn/nukkit/inventory/Fuel.java +++ b/src/main/java/cn/nukkit/inventory/Fuel.java @@ -42,7 +42,7 @@ public abstract class Fuel { addItem(ItemID.BUCKET, (short) 20000); addBlock(BlockID.LADDER, (short) 300); addItem(ItemID.BOW, (short) 200); - addItem(ItemID.BOWL, (short) 200); + addItem(ItemID.BOWL, (short) 100); addBlock(BlockID.WOOD2, (short) 300); addBlock(BlockID.WOODEN_PRESSURE_PLATE, (short) 300); addBlock(BlockID.ACACIA_WOOD_STAIRS, (short) 300); @@ -75,6 +75,7 @@ public abstract class Fuel { addItem(ItemID.DARK_OAK_SIGN, (short) 200); addItem(ItemID.JUNGLE_SIGN, (short) 200); addBlock(BlockID.DRIED_KELP_BLOCK, (short) 4000); + addItem(ItemID.CROSSBOW, (short) 200); } private static void addItem(int itemID, short fuelDuration) { diff --git a/src/main/java/cn/nukkit/inventory/FurnaceInventory.java b/src/main/java/cn/nukkit/inventory/FurnaceInventory.java index 6b2106a92c9..7fe61e2d200 100644 --- a/src/main/java/cn/nukkit/inventory/FurnaceInventory.java +++ b/src/main/java/cn/nukkit/inventory/FurnaceInventory.java @@ -1,5 +1,6 @@ package cn.nukkit.inventory; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.blockentity.BlockEntityFurnace; import cn.nukkit.item.Item; @@ -12,6 +13,7 @@ public FurnaceInventory(BlockEntityFurnace furnace) { super(furnace, InventoryType.FURNACE); } + @PowerNukkitOnly public FurnaceInventory(BlockEntityFurnace furnace, InventoryType inventoryType) { super(furnace, inventoryType); } diff --git a/src/main/java/cn/nukkit/inventory/GrindstoneInventory.java b/src/main/java/cn/nukkit/inventory/GrindstoneInventory.java index 8675221260f..9b1d2d8d120 100644 --- a/src/main/java/cn/nukkit/inventory/GrindstoneInventory.java +++ b/src/main/java/cn/nukkit/inventory/GrindstoneInventory.java @@ -128,6 +128,7 @@ public void onSlotChange(int index, Item before, boolean send) { } } + @PowerNukkitOnly public boolean updateResult(boolean send) { Item firstItem = getFirstItem(); Item secondItem = getSecondItem(); diff --git a/src/main/java/cn/nukkit/inventory/Inventory.java b/src/main/java/cn/nukkit/inventory/Inventory.java index 512abe3e9f9..c9b099cfe4c 100644 --- a/src/main/java/cn/nukkit/inventory/Inventory.java +++ b/src/main/java/cn/nukkit/inventory/Inventory.java @@ -1,6 +1,7 @@ package cn.nukkit.inventory; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import java.util.Collection; @@ -98,7 +99,9 @@ default boolean clear(int index) { void onSlotChange(int index, Item before, boolean send); + @PowerNukkitOnly void addListener(InventoryListener listener); + @PowerNukkitOnly void removeListener(InventoryListener listener); } diff --git a/src/main/java/cn/nukkit/inventory/InventoryListener.java b/src/main/java/cn/nukkit/inventory/InventoryListener.java index 889b24bfc26..15c78503c89 100644 --- a/src/main/java/cn/nukkit/inventory/InventoryListener.java +++ b/src/main/java/cn/nukkit/inventory/InventoryListener.java @@ -1,8 +1,11 @@ package cn.nukkit.inventory; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; +@PowerNukkitOnly public interface InventoryListener { + @PowerNukkitOnly void onInventoryChanged(Inventory inventory, Item oldItem, int slot); } diff --git a/src/main/java/cn/nukkit/inventory/PlayerUIInventory.java b/src/main/java/cn/nukkit/inventory/PlayerUIInventory.java index bebd5a67649..703ea8b5702 100644 --- a/src/main/java/cn/nukkit/inventory/PlayerUIInventory.java +++ b/src/main/java/cn/nukkit/inventory/PlayerUIInventory.java @@ -1,6 +1,7 @@ package cn.nukkit.inventory; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import cn.nukkit.network.protocol.InventorySlotPacket; import cn.nukkit.network.protocol.types.ContainerIds; @@ -101,7 +102,8 @@ public void onSlotChange(int index, Item before, boolean send) { super.onSlotChange(index, before, send); } } - + + @PowerNukkitOnly public void onSlotChangeBase(int index, Item before, boolean send) { super.onSlotChange(index, before, send); } diff --git a/src/main/java/cn/nukkit/inventory/RecipeType.java b/src/main/java/cn/nukkit/inventory/RecipeType.java index b76d97c0fc3..27a983fd400 100644 --- a/src/main/java/cn/nukkit/inventory/RecipeType.java +++ b/src/main/java/cn/nukkit/inventory/RecipeType.java @@ -21,7 +21,7 @@ public enum RecipeType { @PowerNukkitOnly STONECUTTER(0), @PowerNukkitOnly CARTOGRAPHY(0), @PowerNukkitOnly REPAIR(-1), - @PowerNukkitOnly @Since("1.4.0.0-PN") SMITHING(-1) + @PowerNukkitOnly @Since("1.4.0.0-PN") SMITHING(0) ; @PowerNukkitOnly public final int networkType; diff --git a/src/main/java/cn/nukkit/inventory/RepairRecipe.java b/src/main/java/cn/nukkit/inventory/RepairRecipe.java index adc882f8846..b9147e2a435 100644 --- a/src/main/java/cn/nukkit/inventory/RepairRecipe.java +++ b/src/main/java/cn/nukkit/inventory/RepairRecipe.java @@ -1,17 +1,20 @@ package cn.nukkit.inventory; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import java.util.ArrayList; import java.util.Collection; import java.util.List; +@PowerNukkitOnly public class RepairRecipe implements Recipe { private final Item result; private final List ingredients; private final InventoryType inventoryType; - + + @PowerNukkitOnly public RepairRecipe(InventoryType inventoryType, Item result, Collection ingredients) { this.inventoryType = inventoryType; this.result = result.clone(); @@ -29,7 +32,8 @@ public RepairRecipe(InventoryType inventoryType, Item result, Collection i public Item getResult() { return result.clone(); } - + + @PowerNukkitOnly public List getIngredientList() { List ingredients = new ArrayList<>(); for (Item ingredient : this.ingredients) { @@ -48,7 +52,8 @@ public void registerToCraftingManager(CraftingManager manager) { public RecipeType getType() { return RecipeType.REPAIR; } - + + @PowerNukkitOnly public InventoryType getInventoryType() { return inventoryType; } diff --git a/src/main/java/cn/nukkit/inventory/ShapedRecipe.java b/src/main/java/cn/nukkit/inventory/ShapedRecipe.java index 0241d57364f..04cf82ce2ac 100644 --- a/src/main/java/cn/nukkit/inventory/ShapedRecipe.java +++ b/src/main/java/cn/nukkit/inventory/ShapedRecipe.java @@ -212,6 +212,7 @@ public int getPriority() { return this.priority; } + @Override public boolean matchItems(List inputList, List extraOutputList, int multiplier) { List haveInputs = new ArrayList<>(); for (Item item : inputList) { diff --git a/src/main/java/cn/nukkit/inventory/ShapelessRecipe.java b/src/main/java/cn/nukkit/inventory/ShapelessRecipe.java index b9b2eeec1a3..489e04ab321 100644 --- a/src/main/java/cn/nukkit/inventory/ShapelessRecipe.java +++ b/src/main/java/cn/nukkit/inventory/ShapelessRecipe.java @@ -128,6 +128,7 @@ public int getPriority() { return this.priority; } + @Override public boolean matchItems(List inputList, List extraOutputList, int multiplier) { List haveInputs = new ArrayList<>(); for (Item item : inputList) { diff --git a/src/main/java/cn/nukkit/inventory/ShulkerBoxRecipe.java b/src/main/java/cn/nukkit/inventory/ShulkerBoxRecipe.java new file mode 100644 index 00000000000..6f523f5482f --- /dev/null +++ b/src/main/java/cn/nukkit/inventory/ShulkerBoxRecipe.java @@ -0,0 +1,32 @@ +package cn.nukkit.inventory; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.item.Item; + +import java.util.Collection; + +/** + * @author joserobjr + * @since 2021-09-25 + */ +@PowerNukkitOnly +@Since("1.5.2.0-PN") +public class ShulkerBoxRecipe extends ShapelessRecipe { + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public ShulkerBoxRecipe(Item result, Collection ingredients) { + super(result, ingredients); + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public ShulkerBoxRecipe(String recipeId, int priority, Item result, Collection ingredients) { + super(recipeId, priority, result, ingredients); + } + + @Override + public RecipeType getType() { + return RecipeType.SHULKER_BOX; + } +} diff --git a/src/main/java/cn/nukkit/inventory/SmeltingRecipe.java b/src/main/java/cn/nukkit/inventory/SmeltingRecipe.java index d0a96b4a023..051bbb15795 100644 --- a/src/main/java/cn/nukkit/inventory/SmeltingRecipe.java +++ b/src/main/java/cn/nukkit/inventory/SmeltingRecipe.java @@ -1,7 +1,10 @@ package cn.nukkit.inventory; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; +@PowerNukkitOnly public interface SmeltingRecipe extends Recipe { + @PowerNukkitOnly Item getInput(); } diff --git a/src/main/java/cn/nukkit/inventory/SmithingRecipe.java b/src/main/java/cn/nukkit/inventory/SmithingRecipe.java index 2247014087f..ce5fbad2da2 100644 --- a/src/main/java/cn/nukkit/inventory/SmithingRecipe.java +++ b/src/main/java/cn/nukkit/inventory/SmithingRecipe.java @@ -24,6 +24,7 @@ import lombok.ToString; import java.util.ArrayList; +import java.util.Collection; import java.util.Collections; import java.util.List; @@ -36,7 +37,7 @@ @PowerNukkitOnly @Since("1.4.0.0-PN") @ToString -public class SmithingRecipe implements Recipe { +public class SmithingRecipe extends ShapelessRecipe { private final Item equipment; private final Item ingredient; private final Item result; @@ -45,9 +46,10 @@ public class SmithingRecipe implements Recipe { @PowerNukkitOnly @Since("1.4.0.0-PN") - public SmithingRecipe(Item equipment, Item ingredient, Item result) { - this.equipment = equipment; - this.ingredient = ingredient; + public SmithingRecipe(String recipeId, int priority, Collection ingredients, Item result) { + super(recipeId, priority, result, ingredients); + this.equipment = (Item) ingredients.toArray()[0]; + this.ingredient = (Item) ingredients.toArray()[1]; this.result = result; ArrayList aggregation = new ArrayList<>(2); diff --git a/src/main/java/cn/nukkit/inventory/SmokerRecipe.java b/src/main/java/cn/nukkit/inventory/SmokerRecipe.java index c8284a4a354..97fee15e3af 100644 --- a/src/main/java/cn/nukkit/inventory/SmokerRecipe.java +++ b/src/main/java/cn/nukkit/inventory/SmokerRecipe.java @@ -1,22 +1,27 @@ package cn.nukkit.inventory; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; +@PowerNukkitOnly public class SmokerRecipe implements SmeltingRecipe { private final Item output; private Item ingredient; + @PowerNukkitOnly public SmokerRecipe(Item result, Item ingredient) { this.output = result.clone(); this.ingredient = ingredient.clone(); } + @PowerNukkitOnly public void setInput(Item item) { this.ingredient = item.clone(); } + @PowerNukkitOnly @Override public Item getInput() { return this.ingredient.clone(); diff --git a/src/main/java/cn/nukkit/inventory/StonecutterInventory.java b/src/main/java/cn/nukkit/inventory/StonecutterInventory.java index 2184abf08f6..46bd73cea30 100644 --- a/src/main/java/cn/nukkit/inventory/StonecutterInventory.java +++ b/src/main/java/cn/nukkit/inventory/StonecutterInventory.java @@ -1,10 +1,13 @@ package cn.nukkit.inventory; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import cn.nukkit.level.Position; +@PowerNukkitOnly public class StonecutterInventory extends FakeBlockUIComponent { + @PowerNukkitOnly public StonecutterInventory(PlayerUIInventory playerUI, Position position) { super(playerUI, InventoryType.STONECUTTER, 3, position); } diff --git a/src/main/java/cn/nukkit/inventory/StonecutterRecipe.java b/src/main/java/cn/nukkit/inventory/StonecutterRecipe.java index da6c6b67970..f082b40a74e 100644 --- a/src/main/java/cn/nukkit/inventory/StonecutterRecipe.java +++ b/src/main/java/cn/nukkit/inventory/StonecutterRecipe.java @@ -1,10 +1,12 @@ package cn.nukkit.inventory; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import lombok.ToString; import java.util.UUID; +@PowerNukkitOnly @ToString public class StonecutterRecipe implements Recipe { @@ -18,10 +20,12 @@ public class StonecutterRecipe implements Recipe { private final int priority; + @PowerNukkitOnly public StonecutterRecipe(Item result, Item ingredient) { this(null, 10, result, ingredient); } + @PowerNukkitOnly public StonecutterRecipe(String recipeId, int priority, Item result, Item ingredient) { this.recipeId = recipeId; this.priority = priority; @@ -37,14 +41,17 @@ public Item getResult() { return this.output.clone(); } + @PowerNukkitOnly public String getRecipeId() { return this.recipeId; } + @PowerNukkitOnly public UUID getId() { return new UUID(least, most); } + @PowerNukkitOnly public void setId(UUID uuid) { this.least = uuid.getLeastSignificantBits(); this.most = uuid.getMostSignificantBits(); @@ -54,6 +61,7 @@ public void setId(UUID uuid) { } } + @PowerNukkitOnly public Item getIngredient() { return ingredient.clone(); } @@ -68,6 +76,7 @@ public RecipeType getType() { return RecipeType.STONECUTTER; } + @PowerNukkitOnly public int getPriority() { return this.priority; } diff --git a/src/main/java/cn/nukkit/inventory/transaction/CraftingTransaction.java b/src/main/java/cn/nukkit/inventory/transaction/CraftingTransaction.java index b18d4783c0a..1cf88ed25a4 100644 --- a/src/main/java/cn/nukkit/inventory/transaction/CraftingTransaction.java +++ b/src/main/java/cn/nukkit/inventory/transaction/CraftingTransaction.java @@ -1,6 +1,7 @@ package cn.nukkit.inventory.transaction; import cn.nukkit.Player; +import cn.nukkit.api.DeprecationDetails; import cn.nukkit.api.PowerNukkitDifference; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; @@ -12,6 +13,7 @@ import cn.nukkit.inventory.transaction.action.TakeLevelAction; import cn.nukkit.item.Item; +import javax.annotation.Nullable; import java.util.ArrayList; import java.util.List; import java.util.concurrent.ThreadLocalRandom; @@ -29,8 +31,16 @@ public class CraftingTransaction extends InventoryTransaction { protected Item primaryOutput; - protected Recipe recipe; + @Deprecated + @DeprecationDetails(since = "1.6.0.0-PN", reason = "When the recipe is not a CraftingRecipe, this is set to null instead of the recipe", + by = "PowerNukkit", replaceWith = "getTransactionRecipe()") + @Nullable + @Since("1.6.0.0-PN") + protected CraftingRecipe recipe; + private Recipe transactionRecipe; + + @PowerNukkitOnly protected int craftingType; private boolean readyToExecute; @@ -94,19 +104,38 @@ public void setPrimaryOutput(Item item) { } } - public Recipe getRecipe() { + @Deprecated + @DeprecationDetails(since = "1.6.0.0-PN", reason = "When the recipe is not a CraftingRecipe, returns null instead of the recipe", + by = "PowerNukkit", replaceWith = "getTransactionRecipe()") + @Since("1.6.0.0-PN") + @Nullable + public CraftingRecipe getRecipe() { return recipe; } + @PowerNukkitOnly + @Since("1.6.0.0-PN") + public Recipe getTransactionRecipe() { + return transactionRecipe; + } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + protected void setTransactionRecipe(Recipe recipe) { + this.transactionRecipe = recipe; + this.recipe = (recipe instanceof CraftingRecipe)? (CraftingRecipe) recipe: null; + } + + @Override public boolean canExecute() { CraftingManager craftingManager = source.getServer().getCraftingManager(); Inventory inventory; switch (craftingType) { case Player.CRAFTING_STONECUTTER: - recipe = craftingManager.matchStonecutterRecipe(this.primaryOutput); + setTransactionRecipe(craftingManager.matchStonecutterRecipe(this.primaryOutput)); break; case Player.CRAFTING_CARTOGRAPHY: - recipe = craftingManager.matchCartographyRecipe(inputs, this.primaryOutput, this.secondaryOutputs); + setTransactionRecipe(craftingManager.matchCartographyRecipe(inputs, this.primaryOutput, this.secondaryOutputs)); break; case Player.CRAFTING_SMITHING: inventory = source.getWindowById(Player.SMITHING_WINDOW_ID); @@ -115,7 +144,7 @@ public boolean canExecute() { SmithingInventory smithingInventory = (SmithingInventory) inventory; SmithingRecipe smithingRecipe = smithingInventory.matchRecipe(); if (smithingRecipe != null && this.primaryOutput.equals(smithingRecipe.getFinalResult(smithingInventory.getEquipment()), true, true)) { - recipe = smithingRecipe; + setTransactionRecipe(smithingRecipe); } } @@ -130,7 +159,7 @@ public boolean canExecute() { TakeLevelAction takeLevel = new TakeLevelAction(anvil.getLevelCost()); addAction(takeLevel); if (takeLevel.isValid(source)) { - recipe = new RepairRecipe(InventoryType.ANVIL, this.primaryOutput, this.inputs); + setTransactionRecipe(new RepairRecipe(InventoryType.ANVIL, this.primaryOutput, this.inputs)); PlayerUIInventory uiInventory = source.getUIInventory(); actions.add(new DamageAnvilAction(anvil, !source.isCreative() && ThreadLocalRandom.current().nextFloat() < 0.12F, this)); actions.stream() @@ -147,7 +176,7 @@ public boolean canExecute() { } } } - if (recipe == null) { + if (getTransactionRecipe() == null) { source.sendExperienceLevel(); } source.getUIInventory().setItem(AnvilInventory.RESULT, Item.get(0), false); @@ -158,19 +187,20 @@ public boolean canExecute() { GrindstoneInventory grindstone = (GrindstoneInventory) inventory; addInventory(grindstone); if (grindstone.updateResult(false) && this.primaryOutput.equals(grindstone.getResult(), true, true)) { - recipe = new RepairRecipe(InventoryType.GRINDSTONE, this.primaryOutput, this.inputs); + setTransactionRecipe(new RepairRecipe(InventoryType.GRINDSTONE, this.primaryOutput, this.inputs)); grindstone.setResult(Item.get(0), false); } } break; default: - recipe = craftingManager.matchRecipe(inputs, this.primaryOutput, this.secondaryOutputs); + setTransactionRecipe(craftingManager.matchRecipe(inputs, this.primaryOutput, this.secondaryOutputs)); break; } - return this.recipe != null && super.canExecute(); + return this.getTransactionRecipe() != null && super.canExecute(); } + @Override protected boolean callExecuteEvent() { CraftItemEvent ev; @@ -178,11 +208,13 @@ protected boolean callExecuteEvent() { return !ev.isCancelled(); } + @Override @PowerNukkitDifference(since = "1.4.0.0-PN", info = "No longer closes the inventory") protected void sendInventories() { super.sendInventories(); } + @Override public boolean execute() { if (super.execute()) { switch (this.primaryOutput.getId()) { diff --git a/src/main/java/cn/nukkit/inventory/transaction/EnchantTransaction.java b/src/main/java/cn/nukkit/inventory/transaction/EnchantTransaction.java index a45385d0107..fe230613883 100644 --- a/src/main/java/cn/nukkit/inventory/transaction/EnchantTransaction.java +++ b/src/main/java/cn/nukkit/inventory/transaction/EnchantTransaction.java @@ -10,13 +10,9 @@ import cn.nukkit.item.Item; import cn.nukkit.item.ItemDye; import cn.nukkit.network.protocol.types.NetworkInventoryAction; -import lombok.Getter; -import lombok.Setter; import java.util.List; -@Getter -@Setter @Since("1.3.1.0-PN") public class EnchantTransaction extends InventoryTransaction { private Item inputItem; @@ -113,4 +109,34 @@ public boolean checkForEnchantPart(List actions) { } return false; } + + @Since("1.3.1.0-PN") + public Item getInputItem() { + return inputItem; + } + + @Since("1.3.1.0-PN") + public void setInputItem(Item inputItem) { + this.inputItem = inputItem; + } + + @Since("1.3.1.0-PN") + public Item getOutputItem() { + return outputItem; + } + + @Since("1.3.1.0-PN") + public void setOutputItem(Item outputItem) { + this.outputItem = outputItem; + } + + @Since("1.3.1.0-PN") + public int getCost() { + return cost; + } + + @Since("1.3.1.0-PN") + public void setCost(int cost) { + this.cost = cost; + } } diff --git a/src/main/java/cn/nukkit/inventory/transaction/InventoryTransaction.java b/src/main/java/cn/nukkit/inventory/transaction/InventoryTransaction.java index ce166042b4b..7e9a179c9ac 100644 --- a/src/main/java/cn/nukkit/inventory/transaction/InventoryTransaction.java +++ b/src/main/java/cn/nukkit/inventory/transaction/InventoryTransaction.java @@ -6,7 +6,6 @@ import cn.nukkit.event.inventory.InventoryClickEvent; import cn.nukkit.event.inventory.InventoryTransactionEvent; import cn.nukkit.inventory.Inventory; -import cn.nukkit.inventory.PlayerInventory; import cn.nukkit.inventory.transaction.action.InventoryAction; import cn.nukkit.inventory.transaction.action.SlotChangeAction; import cn.nukkit.inventory.transaction.action.TakeLevelAction; diff --git a/src/main/java/cn/nukkit/inventory/transaction/RepairItemTransaction.java b/src/main/java/cn/nukkit/inventory/transaction/RepairItemTransaction.java index 898dc72a116..5e2374a9ab0 100644 --- a/src/main/java/cn/nukkit/inventory/transaction/RepairItemTransaction.java +++ b/src/main/java/cn/nukkit/inventory/transaction/RepairItemTransaction.java @@ -3,6 +3,10 @@ import cn.nukkit.Player; import cn.nukkit.api.Since; import cn.nukkit.block.Block; +import cn.nukkit.block.BlockAnvil; +import cn.nukkit.block.BlockID; +import cn.nukkit.blockproperty.value.AnvilDamage; +import cn.nukkit.blockstate.BlockState; import cn.nukkit.event.block.AnvilDamageEvent; import cn.nukkit.event.block.AnvilDamageEvent.DamageCause; import cn.nukkit.event.inventory.RepairItemEvent; @@ -86,17 +90,15 @@ public boolean execute() { ev.setCancelled(oldDamage == newDamage); this.source.getServer().getPluginManager().callEvent(ev); if (!ev.isCancelled()) { - newDamage = ev.getNewDamage(); - if (newDamage > 2) { + BlockState newState = ev.getNewBlockState(); + if (newState.getBlockId() == BlockID.AIR + || newState.getBlockId() == BlockID.ANVIL && newState.getPropertyValue(BlockAnvil.DAMAGE).equals(AnvilDamage.BROKEN)) { this.source.level.setBlock(block, Block.get(Block.AIR), true); this.source.level.addLevelEvent(block, LevelEventPacket.EVENT_SOUND_ANVIL_BREAK); } else { - if (newDamage < 0) { - newDamage = 0; - } - if (newDamage != oldDamage) { - block.setDamage((newDamage << 2) | (block.getDamage() & 0x3)); - this.source.level.setBlock(block, block, true); + if (!newState.equals(ev.getOldBlockState())) { + Block newBlock = newState.getBlockRepairing(block); + this.source.level.setBlock(block, newBlock, true); } this.source.level.addLevelEvent(block, LevelEventPacket.EVENT_SOUND_ANVIL_USE); } diff --git a/src/main/java/cn/nukkit/inventory/transaction/action/CraftingTakeResultAction.java b/src/main/java/cn/nukkit/inventory/transaction/action/CraftingTakeResultAction.java index 0a4f7f78e1e..a0d0c186158 100644 --- a/src/main/java/cn/nukkit/inventory/transaction/action/CraftingTakeResultAction.java +++ b/src/main/java/cn/nukkit/inventory/transaction/action/CraftingTakeResultAction.java @@ -16,6 +16,7 @@ public CraftingTakeResultAction(Item sourceItem, Item targetItem) { super(sourceItem, targetItem); } + @Override public void onAddToTransaction(InventoryTransaction transaction) { if (transaction instanceof CraftingTransaction) { ((CraftingTransaction) transaction).setPrimaryOutput(this.getSourceItem()); diff --git a/src/main/java/cn/nukkit/inventory/transaction/action/CreativeInventoryAction.java b/src/main/java/cn/nukkit/inventory/transaction/action/CreativeInventoryAction.java index 595f6465efc..c9122aa8971 100644 --- a/src/main/java/cn/nukkit/inventory/transaction/action/CreativeInventoryAction.java +++ b/src/main/java/cn/nukkit/inventory/transaction/action/CreativeInventoryAction.java @@ -30,6 +30,7 @@ public CreativeInventoryAction(Item source, Item target, int action) { * @param source player * @return valid */ + @Override public boolean isValid(Player source) { return source.isCreative() && (this.actionType == TYPE_DELETE_ITEM || Item.getCreativeItemIndex(this.sourceItem) != -1); @@ -50,14 +51,17 @@ public int getActionType() { * @param source playere * @return successfully executed */ + @Override public boolean execute(Player source) { return true; } + @Override public void onExecuteSuccess(Player source) { } + @Override public void onExecuteFail(Player source) { } diff --git a/src/main/java/cn/nukkit/inventory/transaction/action/DamageAnvilAction.java b/src/main/java/cn/nukkit/inventory/transaction/action/DamageAnvilAction.java index c027b985a73..1a9117cd86d 100644 --- a/src/main/java/cn/nukkit/inventory/transaction/action/DamageAnvilAction.java +++ b/src/main/java/cn/nukkit/inventory/transaction/action/DamageAnvilAction.java @@ -1,6 +1,7 @@ package cn.nukkit.inventory.transaction.action; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.block.BlockAnvil; import cn.nukkit.block.BlockID; @@ -11,13 +12,15 @@ import cn.nukkit.level.Sound; import lombok.ToString; +@PowerNukkitOnly @ToString(callSuper = true) public class DamageAnvilAction extends InventoryAction { private final AnvilInventory anvil; private boolean shouldDamage; private CraftingTransaction transaction; - + + @PowerNukkitOnly public DamageAnvilAction(AnvilInventory anvil, boolean shouldDamage, CraftingTransaction transaction) { super(Item.get(0), Item.get(0)); this.anvil = anvil; @@ -43,7 +46,7 @@ public boolean execute(Player source) { } else { newState.setDamage(newState.getDamage() & (Block.DATA_MASK ^ 0b1100) | (damage << 2)); } - AnvilDamageEvent ev = new AnvilDamageEvent(levelBlock, newState, source, transaction, AnvilDamageEvent.Cause.USE); + AnvilDamageEvent ev = new AnvilDamageEvent(levelBlock, newState, source, transaction, AnvilDamageEvent.DamageCause.USE); ev.setCancelled(!shouldDamage); source.getServer().getPluginManager().callEvent(ev); if (ev.isCancelled()) { diff --git a/src/main/java/cn/nukkit/inventory/transaction/action/DropItemAction.java b/src/main/java/cn/nukkit/inventory/transaction/action/DropItemAction.java index 0beaeec6b20..9b61237387a 100644 --- a/src/main/java/cn/nukkit/inventory/transaction/action/DropItemAction.java +++ b/src/main/java/cn/nukkit/inventory/transaction/action/DropItemAction.java @@ -19,6 +19,7 @@ public DropItemAction(Item source, Item target) { * Verifies that the source item of a drop-item action must be air. This is not strictly necessary, just a sanity * check. */ + @Override public boolean isValid(Player source) { return this.sourceItem.isNull(); } @@ -33,14 +34,17 @@ public boolean onPreExecute(Player source) { /** * Drops the target item in front of the player. */ + @Override public boolean execute(Player source) { return source.dropItem(this.targetItem); } + @Override public void onExecuteSuccess(Player source) { } + @Override public void onExecuteFail(Player source) { } diff --git a/src/main/java/cn/nukkit/inventory/transaction/action/EnchantingAction.java b/src/main/java/cn/nukkit/inventory/transaction/action/EnchantingAction.java index c3c1c3ff1dd..ad16934b53b 100644 --- a/src/main/java/cn/nukkit/inventory/transaction/action/EnchantingAction.java +++ b/src/main/java/cn/nukkit/inventory/transaction/action/EnchantingAction.java @@ -1,15 +1,15 @@ package cn.nukkit.inventory.transaction.action; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitDifference; import cn.nukkit.api.Since; import cn.nukkit.item.Item; -import lombok.Getter; import lombok.ToString; @Since("1.3.1.0-PN") @ToString(callSuper = true) -public class EnchantingAction extends InventoryAction { - @Getter @Since("1.3.1.0-PN") +@PowerNukkitDifference(extendsOnlyInPowerNukkit = NoOpIventoryAction.class, insteadOf = InventoryAction.class) +public class EnchantingAction extends NoOpIventoryAction { private int type; @Since("1.3.1.0-PN") @@ -23,17 +23,8 @@ public boolean isValid(Player source) { return source.getWindowById(Player.ENCHANT_WINDOW_ID) != null; } - @Override - public boolean execute(Player source) { - return true; - } - - @Override - public void onExecuteSuccess(Player source) { - } - - @Override - public void onExecuteFail(Player source) { - + @Since("1.3.1.0-PN") + public int getType() { + return type; } } diff --git a/src/main/java/cn/nukkit/inventory/transaction/action/NoOpIventoryAction.java b/src/main/java/cn/nukkit/inventory/transaction/action/NoOpIventoryAction.java new file mode 100644 index 00000000000..632734b66b0 --- /dev/null +++ b/src/main/java/cn/nukkit/inventory/transaction/action/NoOpIventoryAction.java @@ -0,0 +1,35 @@ +package cn.nukkit.inventory.transaction.action; + +import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.item.Item; + +/** + * @author joserobjr + * @since 2021-12-11 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +public abstract class NoOpIventoryAction extends InventoryAction { + @PowerNukkitOnly + @Since("1.6.0.0-PN") + protected NoOpIventoryAction(Item sourceItem, Item targetItem) { + super(sourceItem, targetItem); + } + + @Override + public boolean execute(Player source) { + return true; + } + + @Override + public void onExecuteSuccess(Player source) { + // Does nothing + } + + @Override + public void onExecuteFail(Player source) { + // Does nothing + } +} diff --git a/src/main/java/cn/nukkit/inventory/transaction/action/RepairItemAction.java b/src/main/java/cn/nukkit/inventory/transaction/action/RepairItemAction.java index 1fb3f4a8f26..7c6cd48a14c 100644 --- a/src/main/java/cn/nukkit/inventory/transaction/action/RepairItemAction.java +++ b/src/main/java/cn/nukkit/inventory/transaction/action/RepairItemAction.java @@ -1,11 +1,15 @@ package cn.nukkit.inventory.transaction.action; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitDifference; import cn.nukkit.api.Since; import cn.nukkit.item.Item; +import lombok.ToString; @Since("1.4.0.0-PN") -public class RepairItemAction extends InventoryAction { +@ToString(callSuper = true) +@PowerNukkitDifference(extendsOnlyInPowerNukkit = NoOpIventoryAction.class, insteadOf = InventoryAction.class) +public class RepairItemAction extends NoOpIventoryAction { private int type; @@ -20,21 +24,6 @@ public boolean isValid(Player source) { return source.getWindowById(Player.ANVIL_WINDOW_ID) != null; } - @Override - public boolean execute(Player source) { - return true; - } - - @Override - public void onExecuteSuccess(Player source) { - - } - - @Override - public void onExecuteFail(Player source) { - - } - @Since("1.4.0.0-PN") public int getType() { return this.type; diff --git a/src/main/java/cn/nukkit/inventory/transaction/action/SlotChangeAction.java b/src/main/java/cn/nukkit/inventory/transaction/action/SlotChangeAction.java index 15ed52a0f87..92277d1fbd8 100644 --- a/src/main/java/cn/nukkit/inventory/transaction/action/SlotChangeAction.java +++ b/src/main/java/cn/nukkit/inventory/transaction/action/SlotChangeAction.java @@ -4,7 +4,6 @@ import cn.nukkit.inventory.Inventory; import cn.nukkit.inventory.transaction.InventoryTransaction; import cn.nukkit.item.Item; -import lombok.ToString; import java.util.HashSet; import java.util.Set; @@ -12,7 +11,6 @@ /** * @author CreeperFace */ -@ToString(callSuper = true) public class SlotChangeAction extends InventoryAction { protected Inventory inventory; @@ -48,6 +46,7 @@ public int getSlot() { * @param source player * @return valid */ + @Override public boolean isValid(Player source) { Item check = inventory.getItem(this.inventorySlot); @@ -60,6 +59,7 @@ public boolean isValid(Player source) { * @param source player * @return successfully executed */ + @Override public boolean execute(Player source) { return this.inventory.setItem(this.inventorySlot, this.targetItem, false); } @@ -69,6 +69,7 @@ public boolean execute(Player source) { * * @param source player */ + @Override public void onExecuteSuccess(Player source) { Set viewers = new HashSet<>(this.inventory.getViewers()); viewers.remove(source); @@ -81,6 +82,7 @@ public void onExecuteSuccess(Player source) { * * @param source player */ + @Override public void onExecuteFail(Player source) { this.inventory.sendSlot(this.inventorySlot, source); } diff --git a/src/main/java/cn/nukkit/inventory/transaction/action/TakeLevelAction.java b/src/main/java/cn/nukkit/inventory/transaction/action/TakeLevelAction.java index 8bb17dee89d..757a2e03901 100644 --- a/src/main/java/cn/nukkit/inventory/transaction/action/TakeLevelAction.java +++ b/src/main/java/cn/nukkit/inventory/transaction/action/TakeLevelAction.java @@ -1,19 +1,23 @@ package cn.nukkit.inventory.transaction.action; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import lombok.ToString; +@PowerNukkitOnly @ToString(callSuper = true) public class TakeLevelAction extends InventoryAction { private final int levels; - + + @PowerNukkitOnly public TakeLevelAction(int levels) { super(Item.get(0), Item.get(0)); this.levels = levels; } - + + @PowerNukkitOnly public int getLevels() { return levels; } diff --git a/src/main/java/cn/nukkit/item/Item.java b/src/main/java/cn/nukkit/item/Item.java index e1e97f434e7..b6af8542441 100644 --- a/src/main/java/cn/nukkit/item/Item.java +++ b/src/main/java/cn/nukkit/item/Item.java @@ -3,17 +3,20 @@ import cn.nukkit.Player; import cn.nukkit.Server; import cn.nukkit.api.*; -import cn.nukkit.api.Since; import cn.nukkit.block.Block; import cn.nukkit.block.BlockID; +import cn.nukkit.block.BlockUnknown; import cn.nukkit.blockproperty.UnknownRuntimeIdException; +import cn.nukkit.blockproperty.exception.BlockPropertyNotFoundException; import cn.nukkit.blockproperty.exception.InvalidBlockPropertyMetaException; import cn.nukkit.blockstate.BlockState; import cn.nukkit.blockstate.BlockStateRegistry; import cn.nukkit.blockstate.exception.InvalidBlockStateException; import cn.nukkit.entity.Entity; import cn.nukkit.inventory.Fuel; +import cn.nukkit.item.RuntimeItemMapping.RuntimeEntry; import cn.nukkit.item.enchantment.Enchantment; +import cn.nukkit.item.enchantment.sideeffect.SideEffect; import cn.nukkit.level.Level; import cn.nukkit.math.BlockFace; import cn.nukkit.math.Vector3; @@ -28,6 +31,7 @@ import lombok.SneakyThrows; import lombok.extern.log4j.Log4j2; +import javax.annotation.Nonnull; import java.io.IOException; import java.io.InputStream; import java.io.UncheckedIOException; @@ -48,7 +52,7 @@ public class Item implements Cloneable, BlockID, ItemID { @PowerNukkitOnly @Since("1.4.0.0-PN") public static final Item[] EMPTY_ARRAY = new Item[0]; - + /** * Groups: *

    @@ -65,7 +69,7 @@ public class Item implements Cloneable, BlockID, ItemID { protected static String UNKNOWN_STR = "Unknown"; public static Class[] list = null; - + private static Map itemIds = Arrays.stream(ItemID.class.getDeclaredFields()) .filter(field-> field.getModifiers() == (Modifier.PUBLIC | Modifier.STATIC | Modifier.FINAL)) .filter(field -> field.getType().equals(int.class)) @@ -223,7 +227,7 @@ public static void init() { list[SIGN] = ItemSign.class; //323 list[WOODEN_DOOR] = ItemDoorWood.class; //324 list[BUCKET] = ItemBucket.class; //325 - + list[MINECART] = ItemMinecart.class; //328 list[SADDLE] = ItemSaddle.class; //329 list[IRON_DOOR] = ItemDoorIron.class; //330 @@ -232,7 +236,6 @@ public static void init() { list[BOAT] = ItemBoat.class; //333 list[LEATHER] = ItemLeather.class; //334 list[KELP] = ItemKelp.class; //335 - list[BRICK] = ItemBrick.class; //336 list[CLAY] = ItemClay.class; //337 list[SUGARCANE] = ItemSugarcane.class; //338 @@ -299,7 +302,7 @@ public static void init() { list[NETHER_STAR] = ItemNetherStar.class; //399 list[PUMPKIN_PIE] = ItemPumpkinPie.class; //400 list[FIREWORKS] = ItemFirework.class; //401 - + list[FIREWORKSCHARGE] = ItemFireworkStar.class; //402 list[ENCHANTED_BOOK] = ItemBookEnchanted.class; //403 list[COMPARATOR] = ItemRedstoneComparator.class; //404 list[NETHER_BRICK] = ItemNetherBrick.class; //405 @@ -339,16 +342,14 @@ public static void init() { list[LINGERING_POTION] = ItemPotionLingering.class; //441 list[ELYTRA] = ItemElytra.class; //444 - list[SHULKER_SHELL] = ItemShulkerShell.class; //445 list[BANNER] = ItemBanner.class; //446 list[TOTEM] = ItemTotem.class; //450 - + list[IRON_NUGGET] = ItemNuggetIron.class; //452 - - list[TRIDENT] = ItemTrident.class; //455 + list[TRIDENT] = ItemTrident.class; //455 list[BEETROOT] = ItemBeetroot.class; //457 list[BEETROOT_SEEDS] = ItemSeedsBeetroot.class; //458 list[BEETROOT_SOUP] = ItemBeetrootSoup.class; //459 @@ -357,11 +358,12 @@ public static void init() { list[PUFFERFISH] = ItemPufferfish.class; //462 list[COOKED_SALMON] = ItemSalmonCooked.class; //463 list[DRIED_KELP] = ItemDriedKelp.class; //464 - + list[NAUTILUS_SHELL] = ItemNautilusShell.class; //465 list[GOLDEN_APPLE_ENCHANTED] = ItemAppleGoldEnchanted.class; //466 - + list[HEART_OF_THE_SEA] = ItemHeartOfTheSea.class; //467 + list[SCUTE] = ItemScute.class; //468 list[TURTLE_SHELL] = ItemTurtleShell.class; //469 - + list[PHANTOM_MEMBRANE] = ItemPhantomMembrane.class; //470 list[CROSSBOW] = ItemCrossbow.class; //471 list[SPRUCE_SIGN] = ItemSpruceSign.class; //472 list[BIRCH_SIGN] = ItemBirchSign.class; //473 @@ -391,7 +393,7 @@ public static void init() { list[HONEYCOMB] = ItemHoneycomb.class; //736 list[HONEY_BOTTLE] = ItemHoneyBottle.class; //737 - + list[LODESTONECOMPASS] = ItemCompassLodestone.class; //741; list[NETHERITE_INGOT] = ItemIngotNetherite.class; //742 list[NETHERITE_SWORD] = ItemSwordNetherite.class; //743 @@ -413,8 +415,10 @@ public static void init() { list[RECORD_PIGSTEP] = ItemRecordPigstep.class; //759 list[NETHER_SPROUTS] = ItemNetherSprouts.class; //760 + list[SPYGLASS] = ItemSpyglass.class; //772 + list[SOUL_CAMPFIRE] = ItemCampfireSoul.class; //801 - + for (int i = 0; i < 256; ++i) { if (Block.list[i] != null) { list[i] = Block.list[i]; @@ -476,6 +480,50 @@ private static Item loadCreativeItemEntry(Map data) { String nbt = (String) data.get("nbt_b64"); byte[] nbtBytes = nbt != null ? Base64.getDecoder().decode(nbt) : EmptyArrays.EMPTY_BYTES; + if (data.containsKey("blockState")) { + String blockStateId = data.get("blockState").toString(); + // TODO Remove this when the support is added to these blocks + if (Stream.of( + "minecraft:candle", + "minecraft:deepslate", + "minecraft:cracked_deepslate_bricks", + "minecraft:cracked_deepslate_tiles", + "minecraft:smooth_basalt" + ).anyMatch(blockStateId::startsWith)) { + return null; + } + try { + // TODO Remove this when the support is added to these blocks + String[] stateParts = blockStateId.split(";", 2); + Integer blockId = BlockStateRegistry.getBlockId(stateParts[0]); + if (blockId != null && blockId > BlockID.QUARTZ_BRICKS) { + return Item.getBlock(BlockID.AIR); + } + + BlockState state = BlockState.of(blockStateId); + Item item = state.asItemBlock(); + item.setCompoundTag(nbtBytes); + return item; + } catch (BlockPropertyNotFoundException | UnknownRuntimeIdException e) { + int runtimeId = BlockStateRegistry.getKnownRuntimeIdByBlockStateId(blockStateId); + if (runtimeId == -1) { + log.warn("Unsupported block found in creativeitems.json: {}", blockStateId); + return null; + } + int blockId = BlockStateRegistry.getBlockIdByRuntimeId(runtimeId); + BlockState defaultBlockState = BlockState.of(blockId); + if (defaultBlockState.getProperties().equals(BlockUnknown.PROPERTIES)) { + log.warn("Unsupported block found in creativeitems.json: {}", blockStateId); + return null; + } + log.error("Failed to load the creative item with {}", blockStateId, e); + return null; + } catch (Exception e) { + log.error("Failed to load the creative item {}", blockStateId, e); + return null; + } + } + String id = data.get("id").toString(); Item item = null; if (data.containsKey("damage")) { @@ -550,18 +598,22 @@ public static int getCreativeItemIndex(Item item) { return -1; } + @PowerNukkitOnly public static Item getBlock(int id) { return getBlock(id, 0); } + @PowerNukkitOnly public static Item getBlock(int id, Integer meta) { return getBlock(id, meta, 1); } + @PowerNukkitOnly public static Item getBlock(int id, Integer meta, int count) { return getBlock(id, meta, count, EmptyArrays.EMPTY_BYTES); } + @PowerNukkitOnly public static Item getBlock(int id, Integer meta, int count, byte[] tags) { if (id > 255) { id = 255 - id; @@ -617,7 +669,7 @@ public static Item get(int id, Integer meta, int count, byte[] tags) { } catch (UnknownRuntimeIdException e) { log.warn("Attempted to get an illegal item block {}:{} ({}), the runtime id was unknown and the meta was changed to 0", id, meta, blockId, e); - item = BlockState.of(id).asItemBlock(count); + item = BlockState.of(blockId).asItemBlock(count); } } } else if (c == null) { @@ -633,10 +685,10 @@ public static Item get(int id, Integer meta, int count, byte[] tags) { if (tags.length != 0) { item.setCompoundTag(tags); } - + return item; } catch (Exception e) { - log.error("Error getting the item {}:{}{}! Returning an unsafe item stack!", + log.error("Error getting the item {}:{}{}! Returning an unsafe item stack!", id, meta, id < 0? " ("+(255 - id)+")":"", e); return new Item(id, meta, count).setCompoundTag(tags); } @@ -649,7 +701,7 @@ public static Item fromString(String str) { if (!matcher.matches()) { return get(AIR); } - + String name = matcher.group(2); OptionalInt meta = OptionalInt.empty(); String metaGroup; @@ -690,7 +742,7 @@ public static Item fromString(String str) { int id = Integer.parseInt(numericIdGroup); return get(id, meta.orElse(0)); } - + if (name == null) { return get(AIR); } @@ -876,15 +928,6 @@ public boolean hasEnchantments() { return false; } - /** - * Convenience method to check if the item stack has positive level on a specific enchantment by it's id. - * @param id The enchantment ID from {@link Enchantment} constants. - */ - @PowerNukkitOnly - @Since("1.4.0.0-PN") - public boolean hasEnchantment(int id) { - return getEnchantmentLevel(id) > 0; - } /** * Find the enchantment level by the enchantment id. @@ -903,7 +946,7 @@ public int getEnchantmentLevel(int id) { return entry.getShort("lvl"); } } - + return 0; } @@ -990,6 +1033,26 @@ public Enchantment[] getEnchantments() { return enchantments.toArray(Enchantment.EMPTY_ARRAY); } + /** + * Convenience method to check if the item stack has positive level on a specific enchantment by it's id. + * @param id The enchantment ID from {@link Enchantment} constants. + */ + @Since("1.4.0.0-PN") + public boolean hasEnchantment(int id) { + return this.getEnchantmentLevel(id) > 0; + } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Nonnull + public SideEffect[] getAttackSideEffects(@Nonnull Entity attacker, @Nonnull Entity entity) { + return Arrays.stream(getEnchantments()) + .flatMap(enchantment -> Arrays.stream(enchantment.getAttackSideEffects(attacker, entity))) + .filter(Objects::nonNull) + .toArray(SideEffect[]::new) + ; + } + @Since("1.4.0.0-PN") public int getRepairCost() { if (this.hasCompoundTag()) { @@ -1237,11 +1300,6 @@ public final int getNetworkFullId() throws UnknownNetworkIdException { } } - @Since("1.4.0.0-PN") - public final int getNetworkId() throws UnknownNetworkIdException { - return RuntimeItems.getNetworkId(getNetworkFullId()); - } - @PowerNukkitOnly @Since("1.4.0.0-PN") public String getNamespaceId() { @@ -1250,7 +1308,7 @@ public String getNamespaceId() { RuntimeItems.getNetworkId(runtimeMapping.getNetworkFullId(this)) ); } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public int getBlockId() { @@ -1272,7 +1330,7 @@ public void setDamage(Integer meta) { this.hasMeta = false; } } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public Item createFuzzyCraftingRecipe() { @@ -1388,19 +1446,21 @@ public boolean isUnbreakable() { public boolean isLavaResistant() { return false; } - + public boolean onUse(Player player, int ticksUsed) { return false; } + /** + * Allows the item to execute code when the player releases the item after long clicking it. + * @param player The player who released the click button + * @param ticksUsed How many ticks the item was held. + * @return If an inventory contents update should be sent to the player + */ public boolean onRelease(Player player, int ticksUsed) { return false; } - @PowerNukkitOnly - @Since("1.4.0.0-PN") - public boolean damageWhenBreaking() { return true; } - @Override final public String toString() { return "Item " + this.name + " (" + this.id + ":" + (!this.hasMeta ? "?" : this.meta) + ")x" + this.count + (this.hasCompoundTag() ? " tags:0x" + Binary.bytesToHexString(this.getCompoundTag()) : ""); @@ -1492,6 +1552,8 @@ public final boolean equalsExact(Item other) { * Same as {@link #equals(Item, boolean)} but the enchantment order of the items does not affect the result. * @since 1.2.1.0-PN */ + @PowerNukkitOnly + @Since("1.2.1.0-PN") public final boolean equalsIgnoringEnchantmentOrder(Item item, boolean checkDamage) { if (!this.equals(item, checkDamage, false)) { return false; @@ -1567,4 +1629,14 @@ public Item clone() { } } + @Since("1.6.0.0-PN") + public final RuntimeEntry getRuntimeEntry() { + //TODO Implement + throw new UnsupportedOperationException(); + } + + @Since("1.4.0.0-PN") + public final int getNetworkId() throws UnknownNetworkIdException { + return RuntimeItems.getNetworkId(getNetworkFullId()); + } } diff --git a/src/main/java/cn/nukkit/item/ItemAcaciaSign.java b/src/main/java/cn/nukkit/item/ItemAcaciaSign.java index 4040026a888..fc29c1a818e 100644 --- a/src/main/java/cn/nukkit/item/ItemAcaciaSign.java +++ b/src/main/java/cn/nukkit/item/ItemAcaciaSign.java @@ -1,17 +1,22 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockAcaciaSignPost; +@PowerNukkitOnly public class ItemAcaciaSign extends ItemSign { + @PowerNukkitOnly public ItemAcaciaSign() { this(0, 1); } + @PowerNukkitOnly public ItemAcaciaSign(Integer meta) { this(meta, 1); } + @PowerNukkitOnly public ItemAcaciaSign(Integer meta, int count) { super(ACACIA_SIGN, meta, count, "Acacia Sign", new BlockAcaciaSignPost()); } diff --git a/src/main/java/cn/nukkit/item/ItemArmor.java b/src/main/java/cn/nukkit/item/ItemArmor.java index 9bd7254c170..87ba82924ac 100644 --- a/src/main/java/cn/nukkit/item/ItemArmor.java +++ b/src/main/java/cn/nukkit/item/ItemArmor.java @@ -1,7 +1,6 @@ package cn.nukkit.item; import cn.nukkit.Player; -import cn.nukkit.api.DeprecationDetails; import cn.nukkit.api.PowerNukkitDifference; import cn.nukkit.api.Since; import cn.nukkit.level.Sound; @@ -9,6 +8,8 @@ import cn.nukkit.nbt.tag.ByteTag; import cn.nukkit.nbt.tag.Tag; +import static cn.nukkit.utils.Utils.dynamic; + /** * @author MagicDroidX (Nukkit Project) */ @@ -21,13 +22,7 @@ abstract public class ItemArmor extends Item implements ItemDurable { public static final int TIER_DIAMOND = 5; @Since("1.4.0.0-PN") public static final int TIER_NETHERITE = 6; - @Deprecated - @DeprecationDetails(since = "1.4.0.0-PN", - reason = "The value of this 'constant' is unstable, it may change if new tiers gets added. Refrain from using it. " + - "Changes in this value will not be considered as an API breaking change and will not affect code that " + - "is already compiled." - ) - public static final int TIER_OTHER = 1000; + public static final int TIER_OTHER = dynamic(1000); public ItemArmor(int id) { super(id); @@ -83,7 +78,8 @@ public boolean onClickAir(Player player, Vector3 directionVector) { } if (equip) { player.getInventory().setItem(player.getInventory().getHeldItemIndex(), oldSlotItem); - switch (this.getTier()) { + final int tier = this.getTier(); + switch (tier) { case TIER_CHAIN: player.getLevel().addSound(player, Sound.ARMOR_EQUIP_CHAIN); break; @@ -102,7 +98,6 @@ public boolean onClickAir(Player player, Vector3 directionVector) { case TIER_NETHERITE: player.getLevel().addSound(player, Sound.ARMOR_EQUIP_NETHERITE); break; - case TIER_OTHER: default: player.getLevel().addSound(player, Sound.ARMOR_EQUIP_GENERIC); } diff --git a/src/main/java/cn/nukkit/item/ItemArmorStand.java b/src/main/java/cn/nukkit/item/ItemArmorStand.java index fa66588519c..e8b50dcf4c1 100644 --- a/src/main/java/cn/nukkit/item/ItemArmorStand.java +++ b/src/main/java/cn/nukkit/item/ItemArmorStand.java @@ -18,23 +18,19 @@ import static cn.nukkit.math.CompassRoseDirection.Precision.PRIMARY_INTER_CARDINAL; -@PowerNukkitOnly @Since("1.4.0.0-PN") public class ItemArmorStand extends Item { - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemArmorStand() { this(0); } - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemArmorStand(Integer meta) { this(meta, 1); } - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemArmorStand(Integer meta, int count) { super(ARMOR_STAND, meta, count, "Armor Stand"); diff --git a/src/main/java/cn/nukkit/item/ItemArrow.java b/src/main/java/cn/nukkit/item/ItemArrow.java index ba63bfe1659..8f6cdc5a32b 100644 --- a/src/main/java/cn/nukkit/item/ItemArrow.java +++ b/src/main/java/cn/nukkit/item/ItemArrow.java @@ -1,10 +1,19 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.potion.Potion; +import cn.nukkit.utils.ServerException; + +import javax.annotation.Nullable; + /** * @author MagicDroidX (Nukkit Project) */ public class ItemArrow extends Item { + private static final String GENERIC_NAME = "Arrow"; + public ItemArrow() { this(0, 1); } @@ -14,7 +23,52 @@ public ItemArrow(Integer meta) { } public ItemArrow(Integer meta, int count) { - super(ARROW, meta, count, "Arrow"); + super(ARROW, meta, count, GENERIC_NAME); + updateName(); + } + + @Override + public void setDamage(Integer meta) { + super.setDamage(meta); + updateName(); } + private void updateName() { + final int type = getDamage(); + if (type <= 0) { + name = GENERIC_NAME; + return; + } + + final int potionId = type - 1; + switch (potionId) { + case Potion.WATER: + name = "Arrow of Splashing"; + return; + case Potion.MUNDANE: + case Potion.MUNDANE_II: + case Potion.THICK: + case Potion.AWKWARD: + name = "Tipped Arrow"; + return; + default: + name = ItemPotion.buildName(potionId, GENERIC_NAME, false); + } + } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + @Nullable + public Potion getTippedArrowPotion() { + final int damage = getDamage(); + if (damage > 0) { + try { + return Potion.getPotion(damage - 1); + } catch (ServerException ignored) { + // Not found + return null; + } + } + return null; + } } diff --git a/src/main/java/cn/nukkit/item/ItemAxeGold.java b/src/main/java/cn/nukkit/item/ItemAxeGold.java index 0d80331684b..373ba31df46 100644 --- a/src/main/java/cn/nukkit/item/ItemAxeGold.java +++ b/src/main/java/cn/nukkit/item/ItemAxeGold.java @@ -14,7 +14,7 @@ public ItemAxeGold(Integer meta) { } public ItemAxeGold(Integer meta, int count) { - super(GOLD_AXE, meta, count, "Gold Axe"); + super(GOLD_AXE, meta, count, "Golden Axe"); } @Override diff --git a/src/main/java/cn/nukkit/item/ItemAxeNetherite.java b/src/main/java/cn/nukkit/item/ItemAxeNetherite.java index f9d632e5871..24cd75b02f5 100644 --- a/src/main/java/cn/nukkit/item/ItemAxeNetherite.java +++ b/src/main/java/cn/nukkit/item/ItemAxeNetherite.java @@ -1,5 +1,6 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; @Since("1.4.0.0-PN") @@ -40,6 +41,7 @@ public int getAttackDamage() { return 8; } + @PowerNukkitOnly @Override public boolean isLavaResistant() { return true; diff --git a/src/main/java/cn/nukkit/item/ItemBanner.java b/src/main/java/cn/nukkit/item/ItemBanner.java index 40e54c4f48f..fcef40eb8f8 100644 --- a/src/main/java/cn/nukkit/item/ItemBanner.java +++ b/src/main/java/cn/nukkit/item/ItemBanner.java @@ -9,6 +9,9 @@ import cn.nukkit.utils.BannerPattern; import cn.nukkit.utils.DyeColor; +import javax.annotation.Nonnull; +import java.util.Objects; + /** * @author PetteriM1 */ @@ -25,6 +28,17 @@ public ItemBanner(Integer meta) { public ItemBanner(Integer meta, int count) { super(BANNER, meta, count, "Banner"); this.block = Block.get(Block.STANDING_BANNER); + updateName(); + } + + @Override + public void setDamage(Integer meta) { + super.setDamage(meta); + updateName(); + } + + private void updateName() { + name = getBaseDyeColor().getName() + " Banner"; } @Override @@ -36,10 +50,17 @@ public int getBaseColor() { return this.getDamage() & 0x0f; } - public void setBaseColor(DyeColor color) { + public void setBaseColor(@Nonnull DyeColor color) { this.setDamage(color.getDyeData() & 0x0f); } + @PowerNukkitOnly + @Since("1.6.0.0-PN") + @Nonnull + public DyeColor getBaseDyeColor() { + return Objects.requireNonNull(DyeColor.getByDyeData(getBaseColor())); + } + public int getType() { return this.getNamedTag().getInt("Type"); } diff --git a/src/main/java/cn/nukkit/item/ItemBannerPattern.java b/src/main/java/cn/nukkit/item/ItemBannerPattern.java index 4b7ab52e132..2b85d1a6bb2 100644 --- a/src/main/java/cn/nukkit/item/ItemBannerPattern.java +++ b/src/main/java/cn/nukkit/item/ItemBannerPattern.java @@ -5,7 +5,6 @@ import cn.nukkit.utils.BannerPattern; @Since("1.2.1.0-PN") -@PowerNukkitOnly public class ItemBannerPattern extends Item { @PowerNukkitOnly public static final int PATTERN_CREEPER_CHARGE = 0; @@ -26,16 +25,17 @@ public class ItemBannerPattern extends Item { public static final int PATTERN_BORDURE_INDENTED = 5; @PowerNukkitOnly + @Since("1.6.0.0-PN") + public static final int PATTERN_SNOUT = 6; + public ItemBannerPattern() { this(0, 1); } - @PowerNukkitOnly public ItemBannerPattern(Integer meta) { this(meta, 1); } - @PowerNukkitOnly public ItemBannerPattern(Integer meta, int count) { super(BANNER_PATTERN, meta, count, "Bone"); updateName(); @@ -72,14 +72,16 @@ public BannerPattern.Type getPatternType() { case PATTERN_THING: return BannerPattern.Type.PATTERN_MOJANG; case PATTERN_FIELD_MASONED: return BannerPattern.Type.PATTERN_BRICK; case PATTERN_BORDURE_INDENTED: return BannerPattern.Type.PATTERN_CURLY_BORDER; + case PATTERN_SNOUT: return BannerPattern.Type.PATTERN_SNOUT; } } + @PowerNukkitOnly protected void updateName() { if (getId() != BANNER_PATTERN) { return; } - switch (super.meta % 6) { + switch (super.meta) { case PATTERN_CREEPER_CHARGE: name = "Creeper Charge Banner Pattern"; return; @@ -96,7 +98,10 @@ protected void updateName() { name = "Field Banner Pattern"; return; case PATTERN_BORDURE_INDENTED: - name = "Bordure Idented Banner Pattern"; + name = "Bordure Indented Banner Pattern"; + return; + case PATTERN_SNOUT: + name = "Snout Banner Pattern"; return; default: name = "Banner Pattern"; diff --git a/src/main/java/cn/nukkit/item/ItemBed.java b/src/main/java/cn/nukkit/item/ItemBed.java index 93595eb9056..8cb8dba0cc4 100644 --- a/src/main/java/cn/nukkit/item/ItemBed.java +++ b/src/main/java/cn/nukkit/item/ItemBed.java @@ -18,8 +18,19 @@ public ItemBed(Integer meta) { } public ItemBed(Integer meta, int count) { - super(BED, meta, count, DyeColor.getByWoolData(meta).getName() + " Bed"); + super(BED, meta, count, "Bed"); this.block = Block.get(BlockID.BED_BLOCK); + updateName(); + } + + @Override + public void setDamage(Integer meta) { + super.setDamage(meta); + updateName(); + } + + private void updateName() { + name = DyeColor.getByWoolData(meta).getName() + " Bed"; } @Override diff --git a/src/main/java/cn/nukkit/item/ItemBirchSign.java b/src/main/java/cn/nukkit/item/ItemBirchSign.java index 9f21864b020..a0b8ff9a243 100644 --- a/src/main/java/cn/nukkit/item/ItemBirchSign.java +++ b/src/main/java/cn/nukkit/item/ItemBirchSign.java @@ -1,16 +1,21 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockBirchSignPost; +@PowerNukkitOnly public class ItemBirchSign extends ItemSign { + @PowerNukkitOnly public ItemBirchSign() { this(0, 1); } + @PowerNukkitOnly public ItemBirchSign(Integer meta) { this(meta, 1); } + @PowerNukkitOnly public ItemBirchSign(Integer meta, int count) { super(BIRCH_SIGN, meta, count, "Birch Sign", new BlockBirchSignPost()); } diff --git a/src/main/java/cn/nukkit/item/ItemBlock.java b/src/main/java/cn/nukkit/item/ItemBlock.java index d771cfc6cfd..78b6d178ec3 100644 --- a/src/main/java/cn/nukkit/item/ItemBlock.java +++ b/src/main/java/cn/nukkit/item/ItemBlock.java @@ -1,5 +1,6 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.block.BlockUnknown; import cn.nukkit.blockstate.BlockState; @@ -24,6 +25,7 @@ public ItemBlock(Block block, Integer meta, int count) { this.block = block; } + @Override public void setDamage(Integer meta) { int blockMeta; if (meta != null) { @@ -65,10 +67,12 @@ public ItemBlock clone() { return block; } + @Override public Block getBlock() { return this.block; } + @PowerNukkitOnly @Override public boolean isLavaResistant() { return block.isLavaResistant(); diff --git a/src/main/java/cn/nukkit/item/ItemBoat.java b/src/main/java/cn/nukkit/item/ItemBoat.java index 256b07d9898..a7c6a649519 100644 --- a/src/main/java/cn/nukkit/item/ItemBoat.java +++ b/src/main/java/cn/nukkit/item/ItemBoat.java @@ -14,8 +14,6 @@ import cn.nukkit.nbt.tag.FloatTag; import cn.nukkit.nbt.tag.ListTag; -import java.util.OptionalInt; - /** * @author yescallop * @since 2016/2/13 @@ -31,27 +29,44 @@ public ItemBoat(Integer meta) { } public ItemBoat(Integer meta, int count) { - super(BOAT, meta, count, "Boat"); + this(BOAT, meta, count, "Boat"); } @PowerNukkitOnly @Since("1.4.0.0-PN") protected ItemBoat(int id, Integer meta, int count, String name) { super(id, meta, count, name); + adjustName(); } @Override - public int getDamage() { - return super.getDamage(); + public void setDamage(Integer meta) { + super.setDamage(meta); + adjustName(); } - - @PowerNukkitOnly - @Since("1.4.0.0-PN") - public OptionalInt getLegacyBoatDamage() { - if (getId() == BOAT) { - return OptionalInt.of(super.getDamage()); - } else { - return OptionalInt.empty(); + + private void adjustName() { + switch (getDamage()) { + case 0: + name = "Oak Boat"; + return; + case 1: + name = "Spruce Boat"; + return; + case 2: + name = "Birch Boat"; + return; + case 3: + name = "Jungle Boat"; + return; + case 4: + name = "Acacia Boat"; + return; + case 5: + name = "Dark Oak Boat"; + return; + default: + name = "Boat"; } } @@ -76,7 +91,7 @@ public boolean onActivate(Level level, Player player, Block block, Block target, .putList(new ListTag("Rotation") .add(new FloatTag("", (float) ((player.yaw + 90f) % 360))) .add(new FloatTag("", 0))) - .putInt("Variant", getLegacyBoatDamage().orElse(0)) + .putInt("Variant", getDamage()) ); if (boat == null) { diff --git a/src/main/java/cn/nukkit/item/ItemBootsGold.java b/src/main/java/cn/nukkit/item/ItemBootsGold.java index a7b5553a940..fcbcdc83e75 100644 --- a/src/main/java/cn/nukkit/item/ItemBootsGold.java +++ b/src/main/java/cn/nukkit/item/ItemBootsGold.java @@ -14,7 +14,7 @@ public ItemBootsGold(Integer meta) { } public ItemBootsGold(Integer meta, int count) { - super(GOLD_BOOTS, meta, count, "Gold Boots"); + super(GOLD_BOOTS, meta, count, "Golden Boots"); } @Override diff --git a/src/main/java/cn/nukkit/item/ItemBootsNetherite.java b/src/main/java/cn/nukkit/item/ItemBootsNetherite.java index e3c6f3aff89..3361ef54af5 100644 --- a/src/main/java/cn/nukkit/item/ItemBootsNetherite.java +++ b/src/main/java/cn/nukkit/item/ItemBootsNetherite.java @@ -1,5 +1,6 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; @Since("1.4.0.0-PN") @@ -45,6 +46,7 @@ public int getToughness() { return 3; } + @PowerNukkitOnly @Override public boolean isLavaResistant() { return true; diff --git a/src/main/java/cn/nukkit/item/ItemBow.java b/src/main/java/cn/nukkit/item/ItemBow.java index f2dd086063b..4db6ed992a4 100644 --- a/src/main/java/cn/nukkit/item/ItemBow.java +++ b/src/main/java/cn/nukkit/item/ItemBow.java @@ -71,7 +71,7 @@ public boolean onRelease(Player player, int ticksUsed) { Enchantment bowDamage = this.getEnchantment(Enchantment.ID_BOW_POWER); if (bowDamage != null && bowDamage.getLevel() > 0) { - damage += 0.25 * (bowDamage.getLevel() + 1); + damage += (double) bowDamage.getLevel() * 0.5 + 0.5; } Enchantment flameEnchant = this.getEnchantment(Enchantment.ID_BOW_FLAME); @@ -118,7 +118,7 @@ public boolean onRelease(Player player, int ticksUsed) { boolean infinity = infinityEnchant != null && infinityEnchant.getLevel() > 0; EntityProjectile projectile; if (infinity && (projectile = entityShootBowEvent.getProjectile()) instanceof EntityArrow) { - ((EntityArrow) projectile).setPickupMode(EntityArrow.PICKUP_CREATIVE); + ((EntityArrow) projectile).setPickupMode(EntityProjectile.PICKUP_CREATIVE); } if (player.isAdventure() || player.isSurvival()) { if (!infinity) { diff --git a/src/main/java/cn/nukkit/item/ItemCampfire.java b/src/main/java/cn/nukkit/item/ItemCampfire.java index ba287a7ce75..0a0a653aa5b 100644 --- a/src/main/java/cn/nukkit/item/ItemCampfire.java +++ b/src/main/java/cn/nukkit/item/ItemCampfire.java @@ -1,17 +1,22 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockCampfire; +@PowerNukkitOnly public class ItemCampfire extends Item { + @PowerNukkitOnly public ItemCampfire() { this(0, 1); } + @PowerNukkitOnly public ItemCampfire(Integer meta) { this(meta, 1); } + @PowerNukkitOnly public ItemCampfire(Integer meta, int count) { super(CAMPFIRE, meta, count, "Campfire"); this.block = new BlockCampfire(); diff --git a/src/main/java/cn/nukkit/item/ItemCarrotOnAStick.java b/src/main/java/cn/nukkit/item/ItemCarrotOnAStick.java index 85f1c7f0c37..9e6737fb300 100644 --- a/src/main/java/cn/nukkit/item/ItemCarrotOnAStick.java +++ b/src/main/java/cn/nukkit/item/ItemCarrotOnAStick.java @@ -15,7 +15,12 @@ public ItemCarrotOnAStick(Integer meta) { } public ItemCarrotOnAStick(Integer meta, int count) { - super(CARROT_ON_A_STICK, meta, count, "Carrot on a stick"); + super(CARROT_ON_A_STICK, meta, count, "Carrot on a Stick"); + } + + @Override + public int getMaxDurability() { + return ItemTool.DURABILITY_CARROT_ON_A_STICK; } @Override @@ -24,8 +29,13 @@ public int getMaxStackSize() { } @Override - public int getMaxDurability() { - return 25; + public boolean noDamageOnAttack() { + return true; + } + + @Override + public boolean noDamageOnBreak() { + return true; } } diff --git a/src/main/java/cn/nukkit/item/ItemChestplateChain.java b/src/main/java/cn/nukkit/item/ItemChestplateChain.java index ce0f5778ef3..c6e4c70b563 100644 --- a/src/main/java/cn/nukkit/item/ItemChestplateChain.java +++ b/src/main/java/cn/nukkit/item/ItemChestplateChain.java @@ -14,7 +14,7 @@ public ItemChestplateChain(Integer meta) { } public ItemChestplateChain(Integer meta, int count) { - super(CHAIN_CHESTPLATE, meta, count, "Chain Chestplate"); + super(CHAIN_CHESTPLATE, meta, count, "Chainmail Chestplate"); } @Override diff --git a/src/main/java/cn/nukkit/item/ItemChestplateGold.java b/src/main/java/cn/nukkit/item/ItemChestplateGold.java index dbbac37d3bd..11b27ca31ac 100644 --- a/src/main/java/cn/nukkit/item/ItemChestplateGold.java +++ b/src/main/java/cn/nukkit/item/ItemChestplateGold.java @@ -14,7 +14,7 @@ public ItemChestplateGold(Integer meta) { } public ItemChestplateGold(Integer meta, int count) { - super(GOLD_CHESTPLATE, meta, count, "Gold Chestplate"); + super(GOLD_CHESTPLATE, meta, count, "Golden Chestplate"); } @Override diff --git a/src/main/java/cn/nukkit/item/ItemChestplateNetherite.java b/src/main/java/cn/nukkit/item/ItemChestplateNetherite.java index 6af802dfa09..0b29a33e5c1 100644 --- a/src/main/java/cn/nukkit/item/ItemChestplateNetherite.java +++ b/src/main/java/cn/nukkit/item/ItemChestplateNetherite.java @@ -1,5 +1,6 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; @Since("1.4.0.0-PN") @@ -45,6 +46,7 @@ public int getToughness() { return 3; } + @PowerNukkitOnly @Override public boolean isLavaResistant() { return true; diff --git a/src/main/java/cn/nukkit/item/ItemChorusFruitPopped.java b/src/main/java/cn/nukkit/item/ItemChorusFruitPopped.java index de4da6f50b4..25218b5f5e8 100644 --- a/src/main/java/cn/nukkit/item/ItemChorusFruitPopped.java +++ b/src/main/java/cn/nukkit/item/ItemChorusFruitPopped.java @@ -1,24 +1,21 @@ package cn.nukkit.item; -import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; -@PowerNukkitOnly @Since("1.4.0.0-PN") public class ItemChorusFruitPopped extends Item { - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemChorusFruitPopped() { this(0, 1); } - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemChorusFruitPopped(Integer meta) { this(meta, 1); } + @Since("1.4.0.0-PN") public ItemChorusFruitPopped(Integer meta, int count) { super(POPPED_CHORUS_FRUIT, meta, count, "Popped Chorus Fruit"); } diff --git a/src/main/java/cn/nukkit/item/ItemClay.java b/src/main/java/cn/nukkit/item/ItemClay.java index 1510e25a15c..4fe3893afae 100644 --- a/src/main/java/cn/nukkit/item/ItemClay.java +++ b/src/main/java/cn/nukkit/item/ItemClay.java @@ -14,6 +14,6 @@ public ItemClay(Integer meta) { } public ItemClay(Integer meta, int count) { - super(CLAY, meta, count, "Clay"); + super(CLAY, meta, count, "Clay Ball"); } } diff --git a/src/main/java/cn/nukkit/item/ItemClownfish.java b/src/main/java/cn/nukkit/item/ItemClownfish.java index 1c08ae370e3..654ca68f80a 100644 --- a/src/main/java/cn/nukkit/item/ItemClownfish.java +++ b/src/main/java/cn/nukkit/item/ItemClownfish.java @@ -15,6 +15,6 @@ public ItemClownfish(Integer meta) { } public ItemClownfish(Integer meta, int count) { - super(CLOWNFISH, meta, count, "Clownfish"); + super(CLOWNFISH, meta, count, "Tropical Fish"); } } diff --git a/src/main/java/cn/nukkit/item/ItemDarkOakSign.java b/src/main/java/cn/nukkit/item/ItemDarkOakSign.java index 72fec903807..205ccd87754 100644 --- a/src/main/java/cn/nukkit/item/ItemDarkOakSign.java +++ b/src/main/java/cn/nukkit/item/ItemDarkOakSign.java @@ -1,17 +1,22 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockDarkOakSignPost; +@PowerNukkitOnly public class ItemDarkOakSign extends ItemSign { + @PowerNukkitOnly public ItemDarkOakSign() { this(0, 1); } + @PowerNukkitOnly public ItemDarkOakSign(Integer meta) { this(meta, 1); } + @PowerNukkitOnly public ItemDarkOakSign(Integer meta, int count) { super(DARKOAK_SIGN, meta, count, "Dark Oak Sign", new BlockDarkOakSignPost()); } diff --git a/src/main/java/cn/nukkit/item/ItemDragonBreath.java b/src/main/java/cn/nukkit/item/ItemDragonBreath.java index cad3937ae33..890b39f4f2c 100644 --- a/src/main/java/cn/nukkit/item/ItemDragonBreath.java +++ b/src/main/java/cn/nukkit/item/ItemDragonBreath.java @@ -1,25 +1,20 @@ package cn.nukkit.item; -import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; -@PowerNukkitOnly @Since("1.4.0.0-PN") public class ItemDragonBreath extends Item { - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemDragonBreath() { this(0, 1); } - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemDragonBreath(Integer meta) { this(meta, 1); } - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemDragonBreath(Integer meta, int count) { super(DRAGON_BREATH, meta, count, "Dragon's Breath"); diff --git a/src/main/java/cn/nukkit/item/ItemEdible.java b/src/main/java/cn/nukkit/item/ItemEdible.java index e850b55ef76..9ea6bdc1d69 100644 --- a/src/main/java/cn/nukkit/item/ItemEdible.java +++ b/src/main/java/cn/nukkit/item/ItemEdible.java @@ -3,12 +3,15 @@ import cn.nukkit.Player; import cn.nukkit.event.player.PlayerItemConsumeEvent; import cn.nukkit.item.food.Food; +import cn.nukkit.level.Sound; import cn.nukkit.math.Vector3; +import cn.nukkit.network.protocol.CompletedUsingItemPacket; /** * @author MagicDroidX (Nukkit Project) */ public abstract class ItemEdible extends Item { + public ItemEdible(int id, Integer meta, int count, String name) { super(id, meta, count, name); } @@ -36,19 +39,36 @@ public boolean onClickAir(Player player, Vector3 directionVector) { @Override public boolean onUse(Player player, int ticksUsed) { + if (player.isSpectator()) { + player.getInventory().sendContents(player); + return false; + } + + Food food = Food.getByRelative(this); + + if (food == null || ticksUsed < food.getEatingTick()) { + return false; + } + PlayerItemConsumeEvent consumeEvent = new PlayerItemConsumeEvent(player, this); - + player.getServer().getPluginManager().callEvent(consumeEvent); if (consumeEvent.isCancelled()) { player.getInventory().sendContents(player); return false; } - - Food food = Food.getByRelative(this); - if ((player.isAdventure() || player.isSurvival()) && food != null && food.eatenBy(player)) { - --this.count; - player.getInventory().setItemInHand(this); + + if (food.eatenBy(player)) { + player.completeUsingItem(this.getNetworkId(), CompletedUsingItemPacket.ACTION_EAT); + + if (player.isAdventure() || player.isSurvival()) { + --this.count; + player.getInventory().setItemInHand(this); + + player.getLevel().addSound(player, Sound.RANDOM_BURP); + } } + return true; } } diff --git a/src/main/java/cn/nukkit/item/ItemElytra.java b/src/main/java/cn/nukkit/item/ItemElytra.java index d5215ebcd0e..520a5dcfe2c 100644 --- a/src/main/java/cn/nukkit/item/ItemElytra.java +++ b/src/main/java/cn/nukkit/item/ItemElytra.java @@ -19,7 +19,7 @@ public ItemElytra(Integer meta, int count) { @Override public int getMaxDurability() { - return 431; + return 433; } @Override diff --git a/src/main/java/cn/nukkit/item/ItemEmptyMap.java b/src/main/java/cn/nukkit/item/ItemEmptyMap.java index af7483735c7..64668bb8dbd 100644 --- a/src/main/java/cn/nukkit/item/ItemEmptyMap.java +++ b/src/main/java/cn/nukkit/item/ItemEmptyMap.java @@ -1,7 +1,7 @@ package cn.nukkit.item; public class ItemEmptyMap extends Item { - + public ItemEmptyMap() { this(0, 1); } @@ -12,9 +12,20 @@ public ItemEmptyMap(Integer meta) { public ItemEmptyMap(Integer meta, int count) { super(EMPTY_MAP, meta, count, "Empty Map"); - if (meta == 2) { - this.name = "Empty Locator Map"; + updateName(); + } + + @Override + public void setDamage(Integer meta) { + super.setDamage(meta); + updateName(); + } + + private void updateName() { + if (getDamage() == 2) { + name = "Empty Locator Map"; + } else { + name = "Empty Map"; } } - } diff --git a/src/main/java/cn/nukkit/item/ItemEnderPearl.java b/src/main/java/cn/nukkit/item/ItemEnderPearl.java index 927818beeed..8016b135bf2 100644 --- a/src/main/java/cn/nukkit/item/ItemEnderPearl.java +++ b/src/main/java/cn/nukkit/item/ItemEnderPearl.java @@ -1,6 +1,7 @@ package cn.nukkit.item; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.entity.Entity; import cn.nukkit.entity.projectile.EntityEnderPearl; @@ -33,6 +34,7 @@ public float getThrowForce() { return 1.5f; } + @PowerNukkitOnly @Override protected Entity correctProjectile(Player player, Entity projectile) { if (projectile instanceof EntityEnderPearl) { diff --git a/src/main/java/cn/nukkit/item/ItemFireCharge.java b/src/main/java/cn/nukkit/item/ItemFireCharge.java index 7970061c530..1482cee2f88 100644 --- a/src/main/java/cn/nukkit/item/ItemFireCharge.java +++ b/src/main/java/cn/nukkit/item/ItemFireCharge.java @@ -6,13 +6,10 @@ import cn.nukkit.block.BlockID; import cn.nukkit.event.block.BlockIgniteEvent; import cn.nukkit.level.Level; -import cn.nukkit.level.Sound; -import cn.nukkit.Player; import cn.nukkit.math.BlockFace; +import cn.nukkit.network.protocol.LevelEventPacket; import java.util.concurrent.ThreadLocalRandom; -import cn.nukkit.event.block.BlockIgniteEvent; -import cn.nukkit.network.protocol.LevelEventPacket; /** * @author PetteriM1 diff --git a/src/main/java/cn/nukkit/item/ItemFirework.java b/src/main/java/cn/nukkit/item/ItemFirework.java index 0958bccb834..de971a2c567 100644 --- a/src/main/java/cn/nukkit/item/ItemFirework.java +++ b/src/main/java/cn/nukkit/item/ItemFirework.java @@ -33,7 +33,7 @@ public ItemFirework(Integer meta) { @PowerNukkitDifference(info = "Will not add compound tag automatically") public ItemFirework(Integer meta, int count) { - super(FIREWORKS, meta, count, "Fireworks"); + super(FIREWORKS, meta, count, "Firework Rocket"); } @Override diff --git a/src/main/java/cn/nukkit/item/ItemFireworkStar.java b/src/main/java/cn/nukkit/item/ItemFireworkStar.java new file mode 100644 index 00000000000..dbcf0e27f6f --- /dev/null +++ b/src/main/java/cn/nukkit/item/ItemFireworkStar.java @@ -0,0 +1,22 @@ +package cn.nukkit.item; + +import cn.nukkit.api.Since; + +@Since("1.6.0.0-PN") +public class ItemFireworkStar extends Item { + + @Since("1.6.0.0-PN") + public ItemFireworkStar() { + this(0, 1); + } + + @Since("1.6.0.0-PN") + public ItemFireworkStar(Integer meta) { + this(meta, 1); + } + + @Since("1.6.0.0-PN") + public ItemFireworkStar(Integer meta, int count) { + super(FIREWORKSCHARGE, meta, count, "Firework Star"); + } +} diff --git a/src/main/java/cn/nukkit/item/ItemFish.java b/src/main/java/cn/nukkit/item/ItemFish.java index e401a1d71ae..8e1cd8d51f9 100644 --- a/src/main/java/cn/nukkit/item/ItemFish.java +++ b/src/main/java/cn/nukkit/item/ItemFish.java @@ -14,7 +14,7 @@ public ItemFish(Integer meta) { } public ItemFish(Integer meta, int count) { - super(RAW_FISH, meta, count, "Raw Fish"); + super(RAW_FISH, meta, count, "Cod"); } protected ItemFish(int id, Integer meta, int count, String name) { diff --git a/src/main/java/cn/nukkit/item/ItemFishCooked.java b/src/main/java/cn/nukkit/item/ItemFishCooked.java index 9fb0d9eaff5..21edd0a459e 100644 --- a/src/main/java/cn/nukkit/item/ItemFishCooked.java +++ b/src/main/java/cn/nukkit/item/ItemFishCooked.java @@ -14,7 +14,7 @@ public ItemFishCooked(Integer meta) { } public ItemFishCooked(Integer meta, int count) { - super(COOKED_FISH, meta, count, "Cooked Fish"); + super(COOKED_FISH, meta, count, "Cooked Cod"); } } diff --git a/src/main/java/cn/nukkit/item/ItemFishingRod.java b/src/main/java/cn/nukkit/item/ItemFishingRod.java index 52d082f3f44..e3bfa8e8794 100644 --- a/src/main/java/cn/nukkit/item/ItemFishingRod.java +++ b/src/main/java/cn/nukkit/item/ItemFishingRod.java @@ -26,11 +26,6 @@ public int getEnchantAbility() { return 1; } - @Override - public int getMaxStackSize() { - return 1; - } - @Override public boolean onClickAir(Player player, Vector3 directionVector) { if (player.fishing != null) { @@ -48,7 +43,12 @@ public int getMaxDurability() { } @Override - public boolean damageWhenBreaking() { - return false; + public boolean noDamageOnAttack() { + return true; + } + + @Override + public boolean noDamageOnBreak() { + return true; } } diff --git a/src/main/java/cn/nukkit/item/ItemHeartOfTheSea.java b/src/main/java/cn/nukkit/item/ItemHeartOfTheSea.java new file mode 100644 index 00000000000..cfe5eb2094b --- /dev/null +++ b/src/main/java/cn/nukkit/item/ItemHeartOfTheSea.java @@ -0,0 +1,22 @@ +package cn.nukkit.item; + +import cn.nukkit.api.Since; + +@Since("1.6.0.0-PN") +public class ItemHeartOfTheSea extends Item { + + @Since("1.6.0.0-PN") + public ItemHeartOfTheSea() { + this(0, 1); + } + + @Since("1.6.0.0-PN") + public ItemHeartOfTheSea(Integer meta) { + this(meta, 1); + } + + @Since("1.6.0.0-PN") + public ItemHeartOfTheSea(Integer meta, int count) { + super(HEART_OF_THE_SEA, meta, count, "Heart Of The Sea"); + } +} diff --git a/src/main/java/cn/nukkit/item/ItemHelmetGold.java b/src/main/java/cn/nukkit/item/ItemHelmetGold.java index 4499770b205..e530cbf8650 100644 --- a/src/main/java/cn/nukkit/item/ItemHelmetGold.java +++ b/src/main/java/cn/nukkit/item/ItemHelmetGold.java @@ -14,7 +14,7 @@ public ItemHelmetGold(Integer meta) { } public ItemHelmetGold(Integer meta, int count) { - super(GOLD_HELMET, meta, count, "Gold Helmet"); + super(GOLD_HELMET, meta, count, "Golden Helmet"); } @Override diff --git a/src/main/java/cn/nukkit/item/ItemHelmetNetherite.java b/src/main/java/cn/nukkit/item/ItemHelmetNetherite.java index 59f2f3b9f17..293533e8d6d 100644 --- a/src/main/java/cn/nukkit/item/ItemHelmetNetherite.java +++ b/src/main/java/cn/nukkit/item/ItemHelmetNetherite.java @@ -1,5 +1,6 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; @Since("1.4.0.0-PN") @@ -45,6 +46,7 @@ public int getToughness() { return 3; } + @PowerNukkitOnly @Override public boolean isLavaResistant() { return true; diff --git a/src/main/java/cn/nukkit/item/ItemHoeGold.java b/src/main/java/cn/nukkit/item/ItemHoeGold.java index 716b7c22f0f..45a082c5616 100644 --- a/src/main/java/cn/nukkit/item/ItemHoeGold.java +++ b/src/main/java/cn/nukkit/item/ItemHoeGold.java @@ -14,7 +14,7 @@ public ItemHoeGold(Integer meta) { } public ItemHoeGold(Integer meta, int count) { - super(GOLD_HOE, meta, count, "Gold Hoe"); + super(GOLD_HOE, meta, count, "Golden Hoe"); } @Override diff --git a/src/main/java/cn/nukkit/item/ItemHoeNetherite.java b/src/main/java/cn/nukkit/item/ItemHoeNetherite.java index 5faca0659e1..d2e68441536 100644 --- a/src/main/java/cn/nukkit/item/ItemHoeNetherite.java +++ b/src/main/java/cn/nukkit/item/ItemHoeNetherite.java @@ -1,5 +1,6 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; @Since("1.4.0.0-PN") @@ -39,7 +40,8 @@ public int getTier() { public int getMaxDurability() { return ItemTool.DURABILITY_NETHERITE; } - + + @PowerNukkitOnly @Override public boolean isLavaResistant() { return true; diff --git a/src/main/java/cn/nukkit/item/ItemHorseArmorGold.java b/src/main/java/cn/nukkit/item/ItemHorseArmorGold.java index 5cb642ee643..0263c64ad98 100644 --- a/src/main/java/cn/nukkit/item/ItemHorseArmorGold.java +++ b/src/main/java/cn/nukkit/item/ItemHorseArmorGold.java @@ -10,7 +10,7 @@ public ItemHorseArmorGold(Integer meta) { } public ItemHorseArmorGold(Integer meta, int count) { - super(GOLD_HORSE_ARMOR, meta, count, "Gold Horse Armor"); + super(GOLD_HORSE_ARMOR, meta, count, "Golden Horse Armor"); } @Override diff --git a/src/main/java/cn/nukkit/item/ItemID.java b/src/main/java/cn/nukkit/item/ItemID.java index 511ce8b97cc..5e8ca65a1c6 100644 --- a/src/main/java/cn/nukkit/item/ItemID.java +++ b/src/main/java/cn/nukkit/item/ItemID.java @@ -202,7 +202,7 @@ public interface ItemID { int DARK_OAK_DOOR = 431; int CHORUS_FRUIT = 432; int POPPED_CHORUS_FRUIT = 433; - @Since("1.2.1.0-PN") @PowerNukkitOnly int BANNER_PATTERN = 434; + @Since("1.2.1.0-PN") int BANNER_PATTERN = 434; int DRAGON_BREATH = 437; int SPLASH_POTION = 438; @@ -214,7 +214,7 @@ public interface ItemID { int SHULKER_SHELL = 445; int BANNER = 446; int TOTEM = 450; - + int IRON_NUGGET = 452; int TRIDENT = 455; @@ -260,8 +260,8 @@ public interface ItemID { @PowerNukkitOnly int CAMPFIRE = 720; - @PowerNukkitOnly int SUSPICIOUS_STEW = 734; - + int SUSPICIOUS_STEW = 734; + int HONEYCOMB = 736; int HONEY_BOTTLE = 737; @@ -287,8 +287,10 @@ public interface ItemID { @Since("1.4.0.0-PN") int RECORD_PIGSTEP = 759; @Since("1.4.0.0-PN") @PowerNukkitOnly int NETHER_SPROUTS = 760; + @Since("1.6.0.0-PN") int SPYGLASS = 772; + @Since("1.4.0.0-PN") @PowerNukkitOnly int SOUL_CAMPFIRE = 801; //@PowerNukkitOnly int DEBUG_STICK = 802+; - + } diff --git a/src/main/java/cn/nukkit/item/ItemIngotNetherite.java b/src/main/java/cn/nukkit/item/ItemIngotNetherite.java index 6427e231794..d3b65d89055 100644 --- a/src/main/java/cn/nukkit/item/ItemIngotNetherite.java +++ b/src/main/java/cn/nukkit/item/ItemIngotNetherite.java @@ -1,5 +1,6 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; @Since("1.4.0.0-PN") @@ -19,6 +20,7 @@ public ItemIngotNetherite(Integer meta, int count) { super(NETHERITE_INGOT, 0, count, "Netherite Ingot"); } + @PowerNukkitOnly @Override public boolean isLavaResistant() { return true; diff --git a/src/main/java/cn/nukkit/item/ItemJungleSign.java b/src/main/java/cn/nukkit/item/ItemJungleSign.java index 9e0859871a0..8e2d152f363 100644 --- a/src/main/java/cn/nukkit/item/ItemJungleSign.java +++ b/src/main/java/cn/nukkit/item/ItemJungleSign.java @@ -1,17 +1,22 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockJungleSignPost; +@PowerNukkitOnly public class ItemJungleSign extends ItemSign { + @PowerNukkitOnly public ItemJungleSign() { this(0, 1); } + @PowerNukkitOnly public ItemJungleSign(Integer meta) { this(meta, 1); } + @PowerNukkitOnly public ItemJungleSign(Integer meta, int count) { super(JUNGLE_SIGN, meta, count, "Jungle Sign", new BlockJungleSignPost()); } diff --git a/src/main/java/cn/nukkit/item/ItemKelp.java b/src/main/java/cn/nukkit/item/ItemKelp.java index 781a9688245..c6e896ba700 100644 --- a/src/main/java/cn/nukkit/item/ItemKelp.java +++ b/src/main/java/cn/nukkit/item/ItemKelp.java @@ -1,17 +1,22 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockKelp; +@PowerNukkitOnly public class ItemKelp extends Item { - + + @PowerNukkitOnly public ItemKelp() { this(0, 1); } - + + @PowerNukkitOnly public ItemKelp(Integer meta) { this(meta, 1); } - + + @PowerNukkitOnly public ItemKelp(Integer meta, int count) { super(KELP, meta, count, "Kelp"); this.block = new BlockKelp(); diff --git a/src/main/java/cn/nukkit/item/ItemLead.java b/src/main/java/cn/nukkit/item/ItemLead.java index 1bc326c4f70..5482fdfa64a 100644 --- a/src/main/java/cn/nukkit/item/ItemLead.java +++ b/src/main/java/cn/nukkit/item/ItemLead.java @@ -1,25 +1,20 @@ package cn.nukkit.item; -import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; -@PowerNukkitOnly @Since("1.4.0.0-PN") public class ItemLead extends Item { - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemLead() { this(0, 1); } - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemLead(Integer meta) { this(meta, 1); } - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemLead(Integer meta, int count) { super(LEAD, meta, count, "Lead"); diff --git a/src/main/java/cn/nukkit/item/ItemLeggingsChain.java b/src/main/java/cn/nukkit/item/ItemLeggingsChain.java index 4127e17e0f6..d4a92283372 100644 --- a/src/main/java/cn/nukkit/item/ItemLeggingsChain.java +++ b/src/main/java/cn/nukkit/item/ItemLeggingsChain.java @@ -14,7 +14,7 @@ public ItemLeggingsChain(Integer meta) { } public ItemLeggingsChain(Integer meta, int count) { - super(CHAIN_LEGGINGS, meta, count, "Chain Leggings"); + super(CHAIN_LEGGINGS, meta, count, "Chainmail Leggings"); } @Override diff --git a/src/main/java/cn/nukkit/item/ItemLeggingsGold.java b/src/main/java/cn/nukkit/item/ItemLeggingsGold.java index ffd00cc0614..bc30e41d8b5 100644 --- a/src/main/java/cn/nukkit/item/ItemLeggingsGold.java +++ b/src/main/java/cn/nukkit/item/ItemLeggingsGold.java @@ -14,7 +14,7 @@ public ItemLeggingsGold(Integer meta) { } public ItemLeggingsGold(Integer meta, int count) { - super(GOLD_LEGGINGS, meta, count, "Gold Leggings"); + super(GOLD_LEGGINGS, meta, count, "Golden Leggings"); } @Override diff --git a/src/main/java/cn/nukkit/item/ItemLeggingsNetherite.java b/src/main/java/cn/nukkit/item/ItemLeggingsNetherite.java index 691cb6883ec..0ac8bc01cca 100644 --- a/src/main/java/cn/nukkit/item/ItemLeggingsNetherite.java +++ b/src/main/java/cn/nukkit/item/ItemLeggingsNetherite.java @@ -1,6 +1,7 @@ package cn.nukkit.item; import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; @Since("1.4.0.0-PN") @@ -47,6 +48,7 @@ public int getToughness() { return 3; } + @PowerNukkitOnly @Override public boolean isLavaResistant() { return true; diff --git a/src/main/java/cn/nukkit/item/ItemMap.java b/src/main/java/cn/nukkit/item/ItemMap.java index db0dc744f5e..d6f11085e76 100644 --- a/src/main/java/cn/nukkit/item/ItemMap.java +++ b/src/main/java/cn/nukkit/item/ItemMap.java @@ -35,12 +35,7 @@ public ItemMap(Integer meta) { public ItemMap(Integer meta, int count) { super(MAP, meta, count, "Map"); - switch (meta) { - case 3: this.name = "Ocean Explorer Map"; break; - case 4: this.name = "Woodland Explorer Map"; break; - case 5: this.name = "Treasure Map"; break; - } - + updateName(); if (!hasCompoundTag() || !getNamedTag().contains("map_uuid")) { CompoundTag tag = new CompoundTag(); tag.putLong("map_uuid", mapCount++); @@ -48,6 +43,21 @@ public ItemMap(Integer meta, int count) { } } + @Override + public void setDamage(Integer meta) { + super.setDamage(meta); + updateName(); + } + + private void updateName() { + switch (meta) { + case 3: this.name = "Ocean Explorer Map"; break; + case 4: this.name = "Woodland Explorer Map"; break; + case 5: this.name = "Treasure Map"; break; + default: this.name = "Map"; break; + } + } + public void setImage(File file) throws IOException { setImage(ImageIO.read(file)); } diff --git a/src/main/java/cn/nukkit/item/ItemMelon.java b/src/main/java/cn/nukkit/item/ItemMelon.java index 1cd107bfae3..6fb7619b9c7 100644 --- a/src/main/java/cn/nukkit/item/ItemMelon.java +++ b/src/main/java/cn/nukkit/item/ItemMelon.java @@ -14,6 +14,6 @@ public ItemMelon(Integer meta) { } public ItemMelon(Integer meta, int count) { - super(MELON, meta, count, "Melon"); + super(MELON, meta, count, "Melon Slice"); } } diff --git a/src/main/java/cn/nukkit/item/ItemMelonGlistering.java b/src/main/java/cn/nukkit/item/ItemMelonGlistering.java index 9581bcdb0c8..c40c062bb6c 100644 --- a/src/main/java/cn/nukkit/item/ItemMelonGlistering.java +++ b/src/main/java/cn/nukkit/item/ItemMelonGlistering.java @@ -15,6 +15,6 @@ public ItemMelonGlistering(Integer meta) { } public ItemMelonGlistering(Integer meta, int count) { - super(GLISTERING_MELON, meta, count, "Glistering Melon"); + super(GLISTERING_MELON, meta, count, "Glistering Melon Slice"); } } diff --git a/src/main/java/cn/nukkit/item/ItemNautilusShell.java b/src/main/java/cn/nukkit/item/ItemNautilusShell.java new file mode 100644 index 00000000000..98efdf35042 --- /dev/null +++ b/src/main/java/cn/nukkit/item/ItemNautilusShell.java @@ -0,0 +1,22 @@ +package cn.nukkit.item; + +import cn.nukkit.api.Since; + +@Since("1.6.0.0-PN") +public class ItemNautilusShell extends Item { + + @Since("1.6.0.0-PN") + public ItemNautilusShell() { + this(0, 1); + } + + @Since("1.6.0.0-PN") + public ItemNautilusShell(Integer meta) { + this(meta, 1); + } + + @Since("1.6.0.0-PN") + public ItemNautilusShell(Integer meta, int count) { + super(NAUTILUS_SHELL, meta, count, "Nautilus Shell"); + } +} diff --git a/src/main/java/cn/nukkit/item/ItemNuggetIron.java b/src/main/java/cn/nukkit/item/ItemNuggetIron.java index 540840b679b..c264eee8171 100644 --- a/src/main/java/cn/nukkit/item/ItemNuggetIron.java +++ b/src/main/java/cn/nukkit/item/ItemNuggetIron.java @@ -1,28 +1,23 @@ package cn.nukkit.item; -import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; /** * @author good777LUCKY */ -@PowerNukkitOnly @Since("1.4.0.0-PN") public class ItemNuggetIron extends Item { - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemNuggetIron() { this(0, 1); } - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemNuggetIron(Integer meta) { this(meta, 1); } - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemNuggetIron(Integer meta, int count) { super(IRON_NUGGET, meta, count, "Iron Nugget"); diff --git a/src/main/java/cn/nukkit/item/ItemPhantomMembrane.java b/src/main/java/cn/nukkit/item/ItemPhantomMembrane.java new file mode 100644 index 00000000000..8b72b2137c5 --- /dev/null +++ b/src/main/java/cn/nukkit/item/ItemPhantomMembrane.java @@ -0,0 +1,22 @@ +package cn.nukkit.item; + +import cn.nukkit.api.Since; + +@Since("1.6.0.0-PN") +public class ItemPhantomMembrane extends Item { + + @Since("1.6.0.0-PN") + public ItemPhantomMembrane() { + this(0, 1); + } + + @Since("1.6.0.0-PN") + public ItemPhantomMembrane(Integer meta) { + this(meta, 1); + } + + @Since("1.6.0.0-PN") + public ItemPhantomMembrane(Integer meta, int count) { + super(PHANTOM_MEMBRANE, meta, count, "Phantom Membrane"); + } +} diff --git a/src/main/java/cn/nukkit/item/ItemPickaxeGold.java b/src/main/java/cn/nukkit/item/ItemPickaxeGold.java index 9cccee8ac4a..62b9b1e8baf 100644 --- a/src/main/java/cn/nukkit/item/ItemPickaxeGold.java +++ b/src/main/java/cn/nukkit/item/ItemPickaxeGold.java @@ -14,7 +14,7 @@ public ItemPickaxeGold(Integer meta) { } public ItemPickaxeGold(Integer meta, int count) { - super(GOLD_PICKAXE, meta, count, "Gold Pickaxe"); + super(GOLD_PICKAXE, meta, count, "Golden Pickaxe"); } @Override diff --git a/src/main/java/cn/nukkit/item/ItemPickaxeNetherite.java b/src/main/java/cn/nukkit/item/ItemPickaxeNetherite.java index bff545100d9..9966a9213fc 100644 --- a/src/main/java/cn/nukkit/item/ItemPickaxeNetherite.java +++ b/src/main/java/cn/nukkit/item/ItemPickaxeNetherite.java @@ -1,5 +1,6 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; @Since("1.4.0.0-PN") @@ -40,6 +41,7 @@ public int getAttackDamage() { return 6; } + @PowerNukkitOnly @Override public boolean isLavaResistant() { return true; diff --git a/src/main/java/cn/nukkit/item/ItemPotion.java b/src/main/java/cn/nukkit/item/ItemPotion.java index 70d9bb6d6b9..95e431e143c 100644 --- a/src/main/java/cn/nukkit/item/ItemPotion.java +++ b/src/main/java/cn/nukkit/item/ItemPotion.java @@ -1,9 +1,15 @@ package cn.nukkit.item; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.event.player.PlayerItemConsumeEvent; import cn.nukkit.math.Vector3; import cn.nukkit.potion.Potion; +import cn.nukkit.utils.ServerException; + +import javax.annotation.Nullable; +import java.util.Objects; public class ItemPotion extends Item { @@ -55,6 +61,62 @@ public ItemPotion(Integer meta) { public ItemPotion(Integer meta, int count) { super(POTION, meta, count, "Potion"); + updateName(); + } + + @Override + public void setDamage(Integer meta) { + super.setDamage(meta); + updateName(); + } + + private void updateName() { + int potionId = getDamage(); + if (potionId == Potion.WATER) { + name = buildName(potionId, "Bottle", true); + } else { + name = buildName(potionId, "Potion", true); + } + } + + static String buildName(int potionId, String type, boolean includeLevel) { + switch (potionId) { + case Potion.WATER: + return "Water " + type; + case Potion.MUNDANE: + case Potion.MUNDANE_II: + return "Mundane " + type; + case Potion.THICK: + return "Thick " + type; + case Potion.AWKWARD: + return "Awkward " + type; + case Potion.TURTLE_MASTER: + case Potion.TURTLE_MASTER_II: + case Potion.TURTLE_MASTER_LONG: { + String name = type + " of the Turtle Master"; + if (!includeLevel) { + return name; + } + Potion potion = Objects.requireNonNull(getPotion(potionId)); + if (potion.getLevel() <= 1) { + return name; + } + return name + " " + potion.getRomanLevel(); + } + default: { + Potion potion = getPotion(potionId); + String finalName = potion != null ? potion.getPotionTypeName() : ""; + if (finalName.isEmpty()) { + finalName = type; + } else { + finalName = type + " of " + finalName; + } + if (includeLevel && potion != null && potion.getLevel() > 1) { + finalName += " " + potion.getRomanLevel(); + } + return finalName; + } + } } @Override @@ -87,4 +149,19 @@ public boolean onUse(Player player, int ticksUsed) { } return true; } -} \ No newline at end of file + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + @Nullable + public Potion getPotion() { + return getPotion(getDamage()); + } + + static Potion getPotion(int damage) { + try { + return Potion.getPotion(damage); + } catch (ServerException ignored) { + return null; + } + } +} diff --git a/src/main/java/cn/nukkit/item/ItemPotionLingering.java b/src/main/java/cn/nukkit/item/ItemPotionLingering.java index a31695bcc17..c35520dda41 100644 --- a/src/main/java/cn/nukkit/item/ItemPotionLingering.java +++ b/src/main/java/cn/nukkit/item/ItemPotionLingering.java @@ -1,6 +1,8 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.nbt.tag.CompoundTag; +import cn.nukkit.potion.Potion; public class ItemPotionLingering extends ProjectileItem { @@ -14,6 +16,22 @@ public ItemPotionLingering(Integer meta) { public ItemPotionLingering(Integer meta, int count) { super(LINGERING_POTION, meta, count, "Lingering Potion"); + updateName(); + } + + @Override + public void setDamage(Integer meta) { + super.setDamage(meta); + updateName(); + } + + private void updateName() { + int potionId = getDamage(); + if (potionId == Potion.WATER) { + name = "Lingering Water Bottle"; + } else { + name = ItemPotion.buildName(potionId, "Lingering Potion", true); + } } @Override @@ -25,17 +43,22 @@ public int getMaxStackSize() { public boolean canBeActivated() { return true; } - + + @PowerNukkitOnly + @Override public String getProjectileEntityType() { return "LingeringPotion"; } - + + @PowerNukkitOnly @Override public float getThrowForce() { return 0.5f; } - + + @PowerNukkitOnly + @Override protected void correctNBT(CompoundTag nbt) { nbt.putInt("PotionId", this.meta); diff --git a/src/main/java/cn/nukkit/item/ItemPotionSplash.java b/src/main/java/cn/nukkit/item/ItemPotionSplash.java index 383f1686c6a..454ab04eb7c 100644 --- a/src/main/java/cn/nukkit/item/ItemPotionSplash.java +++ b/src/main/java/cn/nukkit/item/ItemPotionSplash.java @@ -1,6 +1,9 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.nbt.tag.CompoundTag; +import cn.nukkit.potion.Potion; /** * @author xtypr @@ -8,12 +11,34 @@ */ public class ItemPotionSplash extends ProjectileItem { + @PowerNukkitOnly + @Since("1.6.0.0-PN") + public ItemPotionSplash() { + this(0, 1); + } + public ItemPotionSplash(Integer meta) { this(meta, 1); } public ItemPotionSplash(Integer meta, int count) { super(SPLASH_POTION, meta, count, "Splash Potion"); + updateName(); + } + + @Override + public void setDamage(Integer meta) { + super.setDamage(meta); + updateName(); + } + + private void updateName() { + int potionId = getDamage(); + if (potionId == Potion.WATER) { + name = "Splash Water Bottle"; + } else { + name = ItemPotion.buildName(potionId, "Splash Potion", true); + } } @Override diff --git a/src/main/java/cn/nukkit/item/ItemRabbitHide.java b/src/main/java/cn/nukkit/item/ItemRabbitHide.java index 36144b65f94..13824e2a7dd 100644 --- a/src/main/java/cn/nukkit/item/ItemRabbitHide.java +++ b/src/main/java/cn/nukkit/item/ItemRabbitHide.java @@ -1,25 +1,20 @@ package cn.nukkit.item; -import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; -@PowerNukkitOnly @Since("1.4.0.0-PN") public class ItemRabbitHide extends Item { - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemRabbitHide() { this(0, 1); } - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemRabbitHide(Integer meta) { this(meta, 1); } - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemRabbitHide(Integer meta, int count) { super(RABBIT_HIDE, meta, count, "Rabbit Hide"); diff --git a/src/main/java/cn/nukkit/item/ItemRecord11.java b/src/main/java/cn/nukkit/item/ItemRecord11.java index 56f3b8f7a50..523a13bc89f 100644 --- a/src/main/java/cn/nukkit/item/ItemRecord11.java +++ b/src/main/java/cn/nukkit/item/ItemRecord11.java @@ -15,6 +15,7 @@ public ItemRecord11(Integer meta) { public ItemRecord11(Integer meta, int count) { super(RECORD_11, meta, count); + name = "Music Disc 11"; } @Override diff --git a/src/main/java/cn/nukkit/item/ItemRecord13.java b/src/main/java/cn/nukkit/item/ItemRecord13.java index 173e8b029fb..50a8454dd47 100644 --- a/src/main/java/cn/nukkit/item/ItemRecord13.java +++ b/src/main/java/cn/nukkit/item/ItemRecord13.java @@ -15,6 +15,7 @@ public ItemRecord13(Integer meta) { public ItemRecord13(Integer meta, int count) { super(RECORD_13, meta, count); + name = "Music Disc 13"; } @Override diff --git a/src/main/java/cn/nukkit/item/ItemRecordBlocks.java b/src/main/java/cn/nukkit/item/ItemRecordBlocks.java index 00be58db636..6c15a82b757 100644 --- a/src/main/java/cn/nukkit/item/ItemRecordBlocks.java +++ b/src/main/java/cn/nukkit/item/ItemRecordBlocks.java @@ -15,6 +15,7 @@ public ItemRecordBlocks(Integer meta) { public ItemRecordBlocks(Integer meta, int count) { super(RECORD_BLOCKS, meta, count); + name = "Music Disc Blocks"; } @Override diff --git a/src/main/java/cn/nukkit/item/ItemRecordCat.java b/src/main/java/cn/nukkit/item/ItemRecordCat.java index 8f4eef89fb9..8d76cb96e03 100644 --- a/src/main/java/cn/nukkit/item/ItemRecordCat.java +++ b/src/main/java/cn/nukkit/item/ItemRecordCat.java @@ -15,6 +15,7 @@ public ItemRecordCat(Integer meta) { public ItemRecordCat(Integer meta, int count) { super(RECORD_CAT, meta, count); + name = "Music Disc Cat"; } @Override diff --git a/src/main/java/cn/nukkit/item/ItemRecordChirp.java b/src/main/java/cn/nukkit/item/ItemRecordChirp.java index 82bd15366a9..65ea24053b0 100644 --- a/src/main/java/cn/nukkit/item/ItemRecordChirp.java +++ b/src/main/java/cn/nukkit/item/ItemRecordChirp.java @@ -15,6 +15,7 @@ public ItemRecordChirp(Integer meta) { public ItemRecordChirp(Integer meta, int count) { super(RECORD_CHIRP, meta, count); + name = "Music Disc Chirp"; } @Override diff --git a/src/main/java/cn/nukkit/item/ItemRecordFar.java b/src/main/java/cn/nukkit/item/ItemRecordFar.java index 9f8d1a29c1c..d72a44448e6 100644 --- a/src/main/java/cn/nukkit/item/ItemRecordFar.java +++ b/src/main/java/cn/nukkit/item/ItemRecordFar.java @@ -15,6 +15,7 @@ public ItemRecordFar(Integer meta) { public ItemRecordFar(Integer meta, int count) { super(RECORD_FAR, meta, count); + name = "Music Disc Far"; } @Override diff --git a/src/main/java/cn/nukkit/item/ItemRecordMall.java b/src/main/java/cn/nukkit/item/ItemRecordMall.java index aa49939e6b6..398a794c572 100644 --- a/src/main/java/cn/nukkit/item/ItemRecordMall.java +++ b/src/main/java/cn/nukkit/item/ItemRecordMall.java @@ -15,6 +15,7 @@ public ItemRecordMall(Integer meta) { public ItemRecordMall(Integer meta, int count) { super(RECORD_MALL, meta, count); + name = "Music Disc Mall"; } @Override diff --git a/src/main/java/cn/nukkit/item/ItemRecordMellohi.java b/src/main/java/cn/nukkit/item/ItemRecordMellohi.java index 9c5119d950b..ab09d4418ba 100644 --- a/src/main/java/cn/nukkit/item/ItemRecordMellohi.java +++ b/src/main/java/cn/nukkit/item/ItemRecordMellohi.java @@ -15,6 +15,7 @@ public ItemRecordMellohi(Integer meta) { public ItemRecordMellohi(Integer meta, int count) { super(RECORD_MELLOHI, meta, count); + name = "Music Disc Mellohi"; } @Override diff --git a/src/main/java/cn/nukkit/item/ItemRecordPigstep.java b/src/main/java/cn/nukkit/item/ItemRecordPigstep.java index 4cf113a5362..8abb9921715 100644 --- a/src/main/java/cn/nukkit/item/ItemRecordPigstep.java +++ b/src/main/java/cn/nukkit/item/ItemRecordPigstep.java @@ -21,6 +21,7 @@ public ItemRecordPigstep(Integer meta) { @Since("1.4.0.0-PN") public ItemRecordPigstep(Integer meta, int count) { super(RECORD_PIGSTEP, meta, count); + name = "Music Disc Pigstep"; } @Override diff --git a/src/main/java/cn/nukkit/item/ItemRecordStal.java b/src/main/java/cn/nukkit/item/ItemRecordStal.java index ec3b623f8d2..f9e50374262 100644 --- a/src/main/java/cn/nukkit/item/ItemRecordStal.java +++ b/src/main/java/cn/nukkit/item/ItemRecordStal.java @@ -15,6 +15,7 @@ public ItemRecordStal(Integer meta) { public ItemRecordStal(Integer meta, int count) { super(RECORD_STAL, meta, count); + name = "Music Disc Stal"; } @Override diff --git a/src/main/java/cn/nukkit/item/ItemRecordStrad.java b/src/main/java/cn/nukkit/item/ItemRecordStrad.java index 2edf6eb9b6c..a62b1186871 100644 --- a/src/main/java/cn/nukkit/item/ItemRecordStrad.java +++ b/src/main/java/cn/nukkit/item/ItemRecordStrad.java @@ -15,6 +15,7 @@ public ItemRecordStrad(Integer meta) { public ItemRecordStrad(Integer meta, int count) { super(RECORD_STRAD, meta, count); + name = "Music Disc Strad"; } @Override diff --git a/src/main/java/cn/nukkit/item/ItemRecordWait.java b/src/main/java/cn/nukkit/item/ItemRecordWait.java index 8816d6d8e2e..1756d4c0a8f 100644 --- a/src/main/java/cn/nukkit/item/ItemRecordWait.java +++ b/src/main/java/cn/nukkit/item/ItemRecordWait.java @@ -15,6 +15,7 @@ public ItemRecordWait(Integer meta) { public ItemRecordWait(Integer meta, int count) { super(RECORD_WAIT, meta, count); + name = "Music Disc Wait"; } @Override diff --git a/src/main/java/cn/nukkit/item/ItemRecordWard.java b/src/main/java/cn/nukkit/item/ItemRecordWard.java index 0d65d8fb8df..b271be461dc 100644 --- a/src/main/java/cn/nukkit/item/ItemRecordWard.java +++ b/src/main/java/cn/nukkit/item/ItemRecordWard.java @@ -15,6 +15,7 @@ public ItemRecordWard(Integer meta) { public ItemRecordWard(Integer meta, int count) { super(RECORD_WARD, meta, count); + name = "Music Disc Ward"; } @Override diff --git a/src/main/java/cn/nukkit/item/ItemRedstone.java b/src/main/java/cn/nukkit/item/ItemRedstone.java index df9d7130a63..b35824d1cf1 100644 --- a/src/main/java/cn/nukkit/item/ItemRedstone.java +++ b/src/main/java/cn/nukkit/item/ItemRedstone.java @@ -17,7 +17,7 @@ public ItemRedstone(Integer meta) { } public ItemRedstone(Integer meta, int count) { - super(REDSTONE, meta, count, "Redstone"); + super(REDSTONE, meta, count, "Redstone Dust"); this.block = Block.get(BlockID.REDSTONE_WIRE); } diff --git a/src/main/java/cn/nukkit/item/ItemScrapNetherite.java b/src/main/java/cn/nukkit/item/ItemScrapNetherite.java index 41131d63c35..a9a044567f8 100644 --- a/src/main/java/cn/nukkit/item/ItemScrapNetherite.java +++ b/src/main/java/cn/nukkit/item/ItemScrapNetherite.java @@ -1,5 +1,6 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; @Since("1.4.0.0-PN") @@ -20,6 +21,7 @@ public ItemScrapNetherite(Integer meta, int count) { super(NETHERITE_SCRAP, 0, count, "Netherite Scrap"); } + @PowerNukkitOnly @Override public boolean isLavaResistant() { return true; diff --git a/src/main/java/cn/nukkit/item/ItemScute.java b/src/main/java/cn/nukkit/item/ItemScute.java new file mode 100644 index 00000000000..10c8ee4a964 --- /dev/null +++ b/src/main/java/cn/nukkit/item/ItemScute.java @@ -0,0 +1,22 @@ +package cn.nukkit.item; + +import cn.nukkit.api.Since; + +@Since("1.6.0.0-PN") +public class ItemScute extends Item { + + @Since("1.6.0.0-PN") + public ItemScute() { + this(0, 1); + } + + @Since("1.6.0.0-PN") + public ItemScute(Integer meta) { + this(meta, 1); + } + + @Since("1.6.0.0-PN") + public ItemScute(Integer meta, int count) { + super(SCUTE, meta, count, "Scute"); + } +} diff --git a/src/main/java/cn/nukkit/item/ItemShield.java b/src/main/java/cn/nukkit/item/ItemShield.java index 68221020f49..9de765fbe5c 100644 --- a/src/main/java/cn/nukkit/item/ItemShield.java +++ b/src/main/java/cn/nukkit/item/ItemShield.java @@ -24,6 +24,6 @@ public int getMaxStackSize() { @Override public int getMaxDurability() { - return 336; + return DURABILITY_SHIELD; } } diff --git a/src/main/java/cn/nukkit/item/ItemShovelGold.java b/src/main/java/cn/nukkit/item/ItemShovelGold.java index 40ef032e44f..1e3abbdfbf4 100644 --- a/src/main/java/cn/nukkit/item/ItemShovelGold.java +++ b/src/main/java/cn/nukkit/item/ItemShovelGold.java @@ -14,7 +14,7 @@ public ItemShovelGold(Integer meta) { } public ItemShovelGold(Integer meta, int count) { - super(GOLD_SHOVEL, meta, count, "Gold Shovel"); + super(GOLD_SHOVEL, meta, count, "Golden Shovel"); } @Override diff --git a/src/main/java/cn/nukkit/item/ItemShovelNetherite.java b/src/main/java/cn/nukkit/item/ItemShovelNetherite.java index be5c6934766..04a0e65a28b 100644 --- a/src/main/java/cn/nukkit/item/ItemShovelNetherite.java +++ b/src/main/java/cn/nukkit/item/ItemShovelNetherite.java @@ -1,5 +1,6 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; @Since("1.4.0.0-PN") @@ -40,6 +41,7 @@ public int getAttackDamage() { return 5; } + @PowerNukkitOnly @Override public boolean isLavaResistant() { return true; diff --git a/src/main/java/cn/nukkit/item/ItemSign.java b/src/main/java/cn/nukkit/item/ItemSign.java index b984b5c53a6..b0005a0370a 100644 --- a/src/main/java/cn/nukkit/item/ItemSign.java +++ b/src/main/java/cn/nukkit/item/ItemSign.java @@ -1,5 +1,6 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.block.BlockID; import cn.nukkit.block.BlockSignPost; @@ -17,13 +18,14 @@ public ItemSign(Integer meta) { this(meta, 1); } + @PowerNukkitOnly protected ItemSign(int id, Integer meta, int count, String name, BlockSignPost block) { super(id, meta, count, name); this.block = block; } public ItemSign(Integer meta, int count) { - super(SIGN, 0, count, "Sign"); + super(SIGN, 0, count, "Oak Sign"); this.block = Block.get(BlockID.SIGN_POST); } diff --git a/src/main/java/cn/nukkit/item/ItemSkull.java b/src/main/java/cn/nukkit/item/ItemSkull.java index 96a57e4a29a..744112d751e 100644 --- a/src/main/java/cn/nukkit/item/ItemSkull.java +++ b/src/main/java/cn/nukkit/item/ItemSkull.java @@ -23,8 +23,19 @@ public ItemSkull(Integer meta) { } public ItemSkull(Integer meta, int count) { - super(SKULL, meta, count, getItemSkullName(meta)); + super(SKULL, meta, count, "Skull"); this.block = Block.get(Block.SKULL_BLOCK); + updateName(); + } + + @Override + public void setDamage(Integer meta) { + super.setDamage(meta); + updateName(); + } + + private void updateName() { + name = getItemSkullName(getDamage()); } public static String getItemSkullName(int meta) { diff --git a/src/main/java/cn/nukkit/item/ItemSpawnEgg.java b/src/main/java/cn/nukkit/item/ItemSpawnEgg.java index 3f6de6fe43f..e0c6e4ceb32 100644 --- a/src/main/java/cn/nukkit/item/ItemSpawnEgg.java +++ b/src/main/java/cn/nukkit/item/ItemSpawnEgg.java @@ -15,6 +15,7 @@ import cn.nukkit.nbt.tag.FloatTag; import cn.nukkit.nbt.tag.ListTag; +import javax.annotation.Nullable; import java.util.Random; /** @@ -31,7 +32,8 @@ public ItemSpawnEgg(Integer meta) { } public ItemSpawnEgg(Integer meta, int count) { - super(SPAWN_EGG, meta, count, "Spawn EntityEgg"); + this(SPAWN_EGG, meta, count, "Spawn Egg"); + updateName(); } @PowerNukkitOnly @@ -40,6 +42,23 @@ protected ItemSpawnEgg(int id, Integer meta, int count, String name) { super(id, meta, count, name); } + @Override + public void setDamage(Integer meta) { + super.setDamage(meta); + updateName(); + } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + protected void updateName() { + String entityName = getEntityName(); + if (entityName == null) { + name = "Spawn Egg"; + } else { + name = entityName + " Spawn Egg"; + } + } + @Override public boolean canBeActivated() { return true; @@ -95,15 +114,29 @@ public boolean onActivate(Level level, Player player, Block block, Block target, return false; } - @Since("1.4.0.0-PN") - @PowerNukkitOnly - public Item getLegacySpawnEgg() { - return Item.get(SPAWN_EGG, getEntityNetworkId(), getCount(), getCompoundTag()); - } - @PowerNukkitOnly @Since("1.4.0.0-PN") public int getEntityNetworkId() { return this.meta; } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + @Nullable + public String getEntityName() { + String saveId = Entity.getSaveId(getEntityNetworkId()); + if (saveId == null) { + return null; + } + switch (saveId) { + case "VillagerV1": + return "Villager"; + case "ZombieVillagerV1": + return "Zombie Villager"; + case "NPC": + return "NPC"; + default: + return String.join(" ", saveId.split("(?=\\p{Lu})")); + } + } } diff --git a/src/main/java/cn/nukkit/item/ItemSpruceSign.java b/src/main/java/cn/nukkit/item/ItemSpruceSign.java index c640f425b74..fd48e639ba3 100644 --- a/src/main/java/cn/nukkit/item/ItemSpruceSign.java +++ b/src/main/java/cn/nukkit/item/ItemSpruceSign.java @@ -1,16 +1,21 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.BlockSpruceSignPost; +@PowerNukkitOnly public class ItemSpruceSign extends ItemSign { + @PowerNukkitOnly public ItemSpruceSign() { this(0, 1); } + @PowerNukkitOnly public ItemSpruceSign(Integer meta) { this(meta, 1); } + @PowerNukkitOnly public ItemSpruceSign(Integer meta, int count) { super(SPRUCE_SIGN, meta, count, "Spruce Sign", new BlockSpruceSignPost()); } diff --git a/src/main/java/cn/nukkit/item/ItemSpyglass.java b/src/main/java/cn/nukkit/item/ItemSpyglass.java new file mode 100644 index 00000000000..dcaf61fc08b --- /dev/null +++ b/src/main/java/cn/nukkit/item/ItemSpyglass.java @@ -0,0 +1,30 @@ +package cn.nukkit.item; + +import cn.nukkit.api.Since; + +/** + * @author LT_Name + */ +@Since("1.6.0.0-PN") +public class ItemSpyglass extends Item { + + @Since("1.6.0.0-PN") + public ItemSpyglass() { + this(0, 1); + } + + @Since("1.6.0.0-PN") + public ItemSpyglass(Integer meta) { + this(meta, 1); + } + + @Since("1.6.0.0-PN") + public ItemSpyglass(Integer meta, int count) { + super(SPYGLASS, meta, count, "Spyglass"); + } + + @Override + public int getMaxStackSize() { + return 1; + } +} diff --git a/src/main/java/cn/nukkit/item/ItemString.java b/src/main/java/cn/nukkit/item/ItemString.java index 5620ec50cb9..4ac82ec9e6e 100644 --- a/src/main/java/cn/nukkit/item/ItemString.java +++ b/src/main/java/cn/nukkit/item/ItemString.java @@ -18,6 +18,6 @@ public ItemString(Integer meta) { public ItemString(Integer meta, int count) { super(STRING, meta, count, "String"); - this.block = Block.get(BlockID.TRIPWIRE); + this.block = Block.get(BlockID.TRIP_WIRE); } } diff --git a/src/main/java/cn/nukkit/item/ItemSuspiciousStew.java b/src/main/java/cn/nukkit/item/ItemSuspiciousStew.java index c752f9f71bd..8ad9d10be4f 100644 --- a/src/main/java/cn/nukkit/item/ItemSuspiciousStew.java +++ b/src/main/java/cn/nukkit/item/ItemSuspiciousStew.java @@ -18,5 +18,4 @@ public ItemSuspiciousStew(Integer meta, int count) { public int getMaxStackSize() { return 1; } - } diff --git a/src/main/java/cn/nukkit/item/ItemSwordGold.java b/src/main/java/cn/nukkit/item/ItemSwordGold.java index b262f73a8a1..6c66e3300ee 100644 --- a/src/main/java/cn/nukkit/item/ItemSwordGold.java +++ b/src/main/java/cn/nukkit/item/ItemSwordGold.java @@ -14,7 +14,7 @@ public ItemSwordGold(Integer meta) { } public ItemSwordGold(Integer meta, int count) { - super(GOLD_SWORD, meta, count, "Gold Sword"); + super(GOLD_SWORD, meta, count, "Golden Sword"); } @Override diff --git a/src/main/java/cn/nukkit/item/ItemSwordNetherite.java b/src/main/java/cn/nukkit/item/ItemSwordNetherite.java index ec2ab642b4b..ecef2daf365 100644 --- a/src/main/java/cn/nukkit/item/ItemSwordNetherite.java +++ b/src/main/java/cn/nukkit/item/ItemSwordNetherite.java @@ -1,5 +1,6 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; @Since("1.4.0.0-PN") @@ -40,6 +41,7 @@ public int getAttackDamage() { return 8; } + @PowerNukkitOnly @Override public boolean isLavaResistant() { return true; diff --git a/src/main/java/cn/nukkit/item/ItemTool.java b/src/main/java/cn/nukkit/item/ItemTool.java index 6d1a5fff6cf..84af777983e 100644 --- a/src/main/java/cn/nukkit/item/ItemTool.java +++ b/src/main/java/cn/nukkit/item/ItemTool.java @@ -32,7 +32,7 @@ public abstract class ItemTool extends Item implements ItemDurable { public static final int TYPE_AXE = 4; public static final int TYPE_SHEARS = 5; @Since("1.4.0.0-PN") public static final int TYPE_HOE = 6; - + /** * Same breaking speed independent of the tool. */ @@ -49,9 +49,12 @@ public abstract class ItemTool extends Item implements ItemDurable { public static final int DURABILITY_SHEARS = dynamic(239); public static final int DURABILITY_BOW = dynamic(385); public static final int DURABILITY_TRIDENT = dynamic(251); - public static final int DURABILITY_FISHING_ROD = dynamic(65); - @Since("1.4.0.0-PN") public static final int DURABILITY_CROSSBOW = dynamic(465); - + public static final int DURABILITY_FISHING_ROD = dynamic(384); + @Since("1.4.0.0-PN") public static final int DURABILITY_CROSSBOW = dynamic(464); + @Since("1.6.0.0-PN") public static final int DURABILITY_CARROT_ON_A_STICK = dynamic(26); + @Since("1.6.0.0-PN") public static final int DURABILITY_WARPED_FUNGUS_ON_A_STICK = dynamic(101); + @Since("1.6.0.0-PN") @PowerNukkitOnly public static final int DURABILITY_SHIELD = dynamic(337); + @PowerNukkitOnly @Since("1.4.0.0-PN") @Nonnull @@ -103,7 +106,7 @@ public int getMaxStackSize() { @Override public boolean useOn(Block block) { - if (this.isUnbreakable() || isDurable() || !damageWhenBreaking()) { + if (this.isUnbreakable() || isDurable() || noDamageOnBreak()) { return true; } @@ -130,7 +133,7 @@ public boolean useOn(Block block) { @Override public boolean useOn(Entity entity) { - if (this.isUnbreakable() || isDurable() || !damageWhenBreaking()) { + if (this.isUnbreakable() || isDurable() || noDamageOnAttack()) { return true; } @@ -190,16 +193,7 @@ public boolean isShears() { @Override public boolean isTool() { - switch (this.id) { - case FLINT_STEEL: - case SHEARS: - case BOW: - case CROSSBOW: - case SHIELD: - return true; - default: - return this.isPickaxe() || this.isAxe() || this.isShovel() || this.isSword() || this.isHoe(); - } + return true; } @Override @@ -216,11 +210,28 @@ public int getEnchantAbility() { case TIER_IRON: return 14; } - + if (tier == TIER_NETHERITE) { return 15; } return 0; } + /** + * No damage to item when it's used to attack entities + * @return whether the item should take damage when used to attack entities + */ + @Since("1.6.0.0-PN") + public boolean noDamageOnAttack() { + return false; + } + + /** + * No damage to item when it's used to break blocks + * @return whether the item should take damage when used to break blocks + */ + @Since("1.6.0.0-PN") + public boolean noDamageOnBreak() { + return false; + } } diff --git a/src/main/java/cn/nukkit/item/ItemTotem.java b/src/main/java/cn/nukkit/item/ItemTotem.java index bc9397bd18d..8208a244c5b 100644 --- a/src/main/java/cn/nukkit/item/ItemTotem.java +++ b/src/main/java/cn/nukkit/item/ItemTotem.java @@ -1,7 +1,10 @@ package cn.nukkit.item; +import cn.nukkit.api.PowerNukkitOnly; + public class ItemTotem extends Item { + @PowerNukkitOnly public ItemTotem() { this(0, 1); } diff --git a/src/main/java/cn/nukkit/item/ItemTrident.java b/src/main/java/cn/nukkit/item/ItemTrident.java index 780594d3b41..da10838fb70 100644 --- a/src/main/java/cn/nukkit/item/ItemTrident.java +++ b/src/main/java/cn/nukkit/item/ItemTrident.java @@ -3,7 +3,6 @@ import cn.nukkit.Player; import cn.nukkit.Server; import cn.nukkit.api.PowerNukkitDifference; -import cn.nukkit.entity.Entity; import cn.nukkit.entity.projectile.EntityProjectile; import cn.nukkit.entity.projectile.EntityThrownTrident; import cn.nukkit.event.entity.EntityShootBowEvent; @@ -37,12 +36,7 @@ public ItemTrident(Integer meta, int count) { public int getMaxDurability() { return ItemTool.DURABILITY_TRIDENT; } - - @Override - public boolean isSword() { - return true; - } - + @Override public int getAttackDamage() { return 9; @@ -55,11 +49,12 @@ public boolean onClickAir(Player player, Vector3 directionVector) { @PowerNukkitDifference(info = "Using new method to play sounds", since = "1.4.0.0-PN") @Override + @SuppressWarnings("java:S3516") public boolean onRelease(Player player, int ticksUsed) { - if (this.getEnchantmentLevel(Enchantment.ID_TRIDENT_RIPTIDE) > 0) { + if (this.hasEnchantment(Enchantment.ID_TRIDENT_RIPTIDE)) { return true; } - + this.useOn(player); CompoundTag nbt = new CompoundTag() @@ -75,23 +70,18 @@ public boolean onRelease(Player player, int ticksUsed) { .add(new FloatTag("", (player.yaw > 180 ? 360 : 0) - (float) player.yaw)) .add(new FloatTag("", (float) -player.pitch))); - double p = (double) ticksUsed / 20; - - double f = Math.min((p * p + p * 2) / 3, 1) * 2; - EntityThrownTrident trident = (EntityThrownTrident) Entity.createEntity("ThrownTrident", player.chunk, nbt, player, f == 2); + EntityThrownTrident trident = new EntityThrownTrident(player.chunk, nbt, player); + trident.setItem(this); - if (trident == null) { - return false; - } + double p = (double) ticksUsed / 20; + double f = Math.min((p * p + p * 2) / 3, 1) * 2.5; - trident.setItem(this); - if (player.isCreative()) { - trident.setCreative(true); + trident.setPickupMode(EntityProjectile.PICKUP_CREATIVE); } - + trident.setFavoredSlot(player.getInventory().getHeldItemIndex()); - + EntityShootBowEvent entityShootBowEvent = new EntityShootBowEvent(player, this, trident, f); if (f < 0.1 || ticksUsed < 5) { @@ -100,21 +90,19 @@ public boolean onRelease(Player player, int ticksUsed) { Server.getInstance().getPluginManager().callEvent(entityShootBowEvent); if (entityShootBowEvent.isCancelled()) { - entityShootBowEvent.getProjectile().kill(); + entityShootBowEvent.getProjectile().close(); } else { entityShootBowEvent.getProjectile().setMotion(entityShootBowEvent.getProjectile().getMotion().multiply(entityShootBowEvent.getForce())); - if (entityShootBowEvent.getProjectile() instanceof EntityProjectile) { - ProjectileLaunchEvent ev = new ProjectileLaunchEvent(entityShootBowEvent.getProjectile()); - Server.getInstance().getPluginManager().callEvent(ev); - if (ev.isCancelled()) { - entityShootBowEvent.getProjectile().kill(); - } else { - entityShootBowEvent.getProjectile().spawnToAll(); + ProjectileLaunchEvent ev = new ProjectileLaunchEvent(entityShootBowEvent.getProjectile()); + Server.getInstance().getPluginManager().callEvent(ev); + if (ev.isCancelled()) { + entityShootBowEvent.getProjectile().close(); + } else { + entityShootBowEvent.getProjectile().spawnToAll(); player.getLevel().addSound(player, Sound.ITEM_TRIDENT_THROW); - if (!player.isCreative()) { - this.count--; - player.getInventory().setItemInHand(this); - } + if (!player.isCreative()) { + this.count--; + player.getInventory().setItemInHand(this); } } } diff --git a/src/main/java/cn/nukkit/item/ItemWarpedFungusOnAStick.java b/src/main/java/cn/nukkit/item/ItemWarpedFungusOnAStick.java index 88909384b5d..50a8a5da679 100644 --- a/src/main/java/cn/nukkit/item/ItemWarpedFungusOnAStick.java +++ b/src/main/java/cn/nukkit/item/ItemWarpedFungusOnAStick.java @@ -18,29 +18,24 @@ package cn.nukkit.item; -import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; /** * @author joserobjr * @since 2021-02-16 */ -@PowerNukkitOnly @Since("1.4.0.0-PN") public class ItemWarpedFungusOnAStick extends ItemTool { - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemWarpedFungusOnAStick() { this(0, 1); } - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemWarpedFungusOnAStick(Integer meta) { this(meta, 1); } - @PowerNukkitOnly @Since("1.4.0.0-PN") public ItemWarpedFungusOnAStick(Integer meta, int count) { super(WARPED_FUNGUS_ON_A_STICK, meta, count, "Warped Fungus on a Stick"); @@ -53,11 +48,11 @@ public int getMaxStackSize() { @Override public int getMaxDurability() { - return 100; + return ItemTool.DURABILITY_WARPED_FUNGUS_ON_A_STICK; } @Override - public boolean damageWhenBreaking() { - return false; + public boolean noDamageOnBreak() { + return true; } } diff --git a/src/main/java/cn/nukkit/item/MinecraftItemID.java b/src/main/java/cn/nukkit/item/MinecraftItemID.java index 8a43dbef25c..1d2e9a2b5a1 100644 --- a/src/main/java/cn/nukkit/item/MinecraftItemID.java +++ b/src/main/java/cn/nukkit/item/MinecraftItemID.java @@ -953,7 +953,8 @@ public enum MinecraftItemID { @PowerNukkitOnly @Since("1.4.0.0-PN") WATER_BUCKET, @PowerNukkitOnly @Since("1.4.0.0-PN") LIGHT_GRAY_DYE, @PowerNukkitOnly @Since("1.4.0.0-PN") CHARCOAL, - @PowerNukkitOnly @Since("1.4.0.0-PN") AGENT_SPAWN_EGG(false, false, true) + @PowerNukkitOnly @Since("1.4.0.0-PN") AGENT_SPAWN_EGG(false, false, true), + @PowerNukkitOnly @Since("1.6.0.0-PN") SPYGLASS ; private static final Map namespacedIdMap = Arrays.stream(values()) .flatMap(id-> diff --git a/src/main/java/cn/nukkit/item/PNAlphaItemID.java b/src/main/java/cn/nukkit/item/PNAlphaItemID.java index 28eac648cfa..1b7a5f43f5a 100644 --- a/src/main/java/cn/nukkit/item/PNAlphaItemID.java +++ b/src/main/java/cn/nukkit/item/PNAlphaItemID.java @@ -24,7 +24,6 @@ import cn.nukkit.api.Since; import it.unimi.dsi.fastutil.ints.Int2ObjectMap; import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap; -import lombok.Getter; import lombok.RequiredArgsConstructor; /** @@ -39,7 +38,6 @@ "This interface was created to map item ids which were used in v1.4.0.0-PN-ALPHA.1, v1.4.0.0-PN-ALPHA.2 and v1.4.0.0-PN-ALPHA.1 " + "and will no longer be used because Nukkit took an other way and we will follow it to keep plugin compatibility in future.") @RequiredArgsConstructor -@Getter public enum PNAlphaItemID { @Since("1.4.0.0-PN") @PowerNukkitOnly COD_BUCKET(802, MinecraftItemID.COD_BUCKET), @Since("1.4.0.0-PN") @PowerNukkitOnly GHAST_SPAWN_EGG(803, MinecraftItemID.GHAST_SPAWN_EGG), @@ -163,4 +161,16 @@ public enum PNAlphaItemID { public static PNAlphaItemID getBadAlphaId(int id) { return byId.get(id); } + + @PowerNukkitOnly + @Since("1.4.0.0-PN") + public int getBadItemId() { + return badItemId; + } + + @PowerNukkitOnly + @Since("1.4.0.0-PN") + public MinecraftItemID getMinecraftItemId() { + return minecraftItemId; + } } diff --git a/src/main/java/cn/nukkit/item/ProjectileItem.java b/src/main/java/cn/nukkit/item/ProjectileItem.java index 7c903fa35ab..3eb7326f536 100644 --- a/src/main/java/cn/nukkit/item/ProjectileItem.java +++ b/src/main/java/cn/nukkit/item/ProjectileItem.java @@ -1,6 +1,7 @@ package cn.nukkit.item; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.entity.Entity; import cn.nukkit.entity.projectile.EntityEnderPearl; import cn.nukkit.entity.projectile.EntityProjectile; @@ -25,6 +26,7 @@ public ProjectileItem(int id, Integer meta, int count, String name) { abstract public float getThrowForce(); + @Override public boolean onClickAir(Player player, Vector3 directionVector) { CompoundTag nbt = new CompoundTag() .putList(new ListTag("Pos") @@ -73,10 +75,12 @@ public boolean onClickAir(Player player, Vector3 directionVector) { return true; } + @PowerNukkitOnly protected void addThrowSound(Player player) { player.getLevel().addLevelSoundEvent(player, LevelSoundEventPacketV2.SOUND_THROW, -1, "minecraft:player", false, false); } + @PowerNukkitOnly protected Entity correctProjectile(Player player, Entity projectile) { return projectile; } diff --git a/src/main/java/cn/nukkit/item/RuntimeItemMapping.java b/src/main/java/cn/nukkit/item/RuntimeItemMapping.java index 664c05ae7f9..bc0a30fc3a2 100644 --- a/src/main/java/cn/nukkit/item/RuntimeItemMapping.java +++ b/src/main/java/cn/nukkit/item/RuntimeItemMapping.java @@ -6,6 +6,9 @@ import it.unimi.dsi.fastutil.ints.Int2IntMap; import it.unimi.dsi.fastutil.ints.Int2ObjectMap; import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap; +import lombok.Data; +import lombok.Getter; +import lombok.RequiredArgsConstructor; import javax.annotation.Nonnull; import javax.annotation.Nullable; @@ -37,6 +40,7 @@ public class RuntimeItemMapping { private final Int2ObjectMap networkNamespaceMap; @Since("1.4.0.0-PN") + @PowerNukkitOnly public RuntimeItemMapping(byte[] itemDataPalette, Int2IntMap legacyNetworkMap, Int2IntMap networkLegacyMap) { this.itemDataPalette = itemDataPalette; this.legacyNetworkMap = legacyNetworkMap; @@ -70,6 +74,7 @@ public RuntimeItemMapping( * @return The network id * @throws IllegalArgumentException If the mapping of the full id to the network id is unknown */ + @PowerNukkitOnly @Since("1.4.0.0-PN") public int getNetworkFullId(Item item) { int fullId = RuntimeItems.getFullId(item.getId(), item.hasMeta() ? item.getDamage() : -1); @@ -93,6 +98,7 @@ public int getNetworkFullId(Item item) { * @return The full id * @throws IllegalArgumentException If the mapping of the full id to the network id is unknown */ + @PowerNukkitOnly @Since("1.4.0.0-PN") public int getLegacyFullId(int networkId) { int fullId = networkLegacyMap.get(networkId); @@ -102,6 +108,7 @@ public int getLegacyFullId(int networkId) { return fullId; } + @PowerNukkitOnly @Since("1.4.0.0-PN") public byte[] getItemDataPalette() { return this.itemDataPalette; @@ -154,4 +161,28 @@ public Item getItemByNamespaceId(@Nonnull String namespaceId, int amount) { return item; } } + + @Data + @Getter(onMethod = @__(@Since("1.6.0.0-PN"))) + @RequiredArgsConstructor(onConstructor = @__(@Since("1.6.0.0-PN"))) + @Since("1.6.0.0-PN") + public static class LegacyEntry { + private final int legacyId; + private final boolean hasDamage; + private final int damage; + + public int getDamage() { + return this.hasDamage ? this.damage : 0; + } + } + + @Data + @Getter(onMethod = @__(@Since("1.6.0.0-PN"))) + @RequiredArgsConstructor(onConstructor = @__(@Since("1.6.0.0-PN"))) + @Since("1.6.0.0-PN") + public static class RuntimeEntry { + private final String identifier; + private final int runtimeId; + private final boolean hasDamage; + } } diff --git a/src/main/java/cn/nukkit/item/RuntimeItems.java b/src/main/java/cn/nukkit/item/RuntimeItems.java index 2f770ebaf0a..661ae1eec5a 100644 --- a/src/main/java/cn/nukkit/item/RuntimeItems.java +++ b/src/main/java/cn/nukkit/item/RuntimeItems.java @@ -15,8 +15,10 @@ import lombok.experimental.UtilityClass; import lombok.extern.log4j.Log4j2; +import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; +import java.io.UncheckedIOException; import java.lang.reflect.Type; import java.nio.charset.StandardCharsets; import java.util.ArrayList; @@ -38,13 +40,17 @@ public class RuntimeItems { static { log.debug("Loading runtime items..."); - InputStream stream = Server.class.getClassLoader().getResourceAsStream("runtime_item_ids.json"); - if (stream == null) { - throw new AssertionError("Unable to load runtime_item_ids.json"); - } + Collection entries; + try(InputStream stream = Server.class.getClassLoader().getResourceAsStream("runtime_item_ids.json")) { + if (stream == null) { + throw new AssertionError("Unable to load runtime_item_ids.json"); + } - InputStreamReader reader = new InputStreamReader(stream, StandardCharsets.UTF_8); - Collection entries = GSON.fromJson(reader, ENTRY_TYPE); + InputStreamReader reader = new InputStreamReader(stream, StandardCharsets.UTF_8); + entries = GSON.fromJson(reader, ENTRY_TYPE); + } catch (IOException e) { + throw new UncheckedIOException(e); + } BinaryStream paletteBuffer = new BinaryStream(); paletteBuffer.putUnsignedVarInt(entries.size()); @@ -78,31 +84,37 @@ public class RuntimeItems { namespaceNetworkMap, networkNamespaceMap); } + @PowerNukkitOnly @Since("1.4.0.0-PN") public static RuntimeItemMapping getRuntimeMapping() { return itemPalette; } + @PowerNukkitOnly @Since("1.4.0.0-PN") public static int getId(int fullId) { return (short) (fullId >> 16); } + @PowerNukkitOnly @Since("1.4.0.0-PN") public static int getData(int fullId) { return ((fullId >> 1) & 0x7fff); } + @PowerNukkitOnly @Since("1.4.0.0-PN") public static int getFullId(int id, int data) { return (((short) id) << 16) | ((data & 0x7fff) << 1); } + @PowerNukkitOnly @Since("1.4.0.0-PN") public static int getNetworkId(int networkFullId) { return networkFullId >> 1; } + @PowerNukkitOnly @Since("1.4.0.0-PN") public static boolean hasData(int id) { return (id & 0x1) != 0; diff --git a/src/main/java/cn/nukkit/item/enchantment/Enchantment.java b/src/main/java/cn/nukkit/item/enchantment/Enchantment.java index ade48707aaa..c7e1025da35 100644 --- a/src/main/java/cn/nukkit/item/enchantment/Enchantment.java +++ b/src/main/java/cn/nukkit/item/enchantment/Enchantment.java @@ -21,6 +21,7 @@ import cn.nukkit.item.enchantment.loot.EnchantmentLootFishing; import cn.nukkit.item.enchantment.loot.EnchantmentLootWeapon; import cn.nukkit.item.enchantment.protection.*; +import cn.nukkit.item.enchantment.sideeffect.SideEffect; import cn.nukkit.item.enchantment.trident.EnchantmentTridentChanneling; import cn.nukkit.item.enchantment.trident.EnchantmentTridentImpaling; import cn.nukkit.item.enchantment.trident.EnchantmentTridentLoyalty; @@ -368,6 +369,11 @@ public void doPostAttack(Entity attacker, Entity entity) { } + @Since("1.6.0.0-PN") + public void doAttack(Entity attacker, Entity entity) { + + } + public void doPostHurt(Entity attacker, Entity entity) { } @@ -418,6 +424,13 @@ public boolean isMajor() { return false; } + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Nonnull + public SideEffect[] getAttackSideEffects(@Nonnull Entity attacker, @Nonnull Entity entity) { + return SideEffect.EMPTY_ARRAY; + } + @Override protected Enchantment clone() { try { diff --git a/src/main/java/cn/nukkit/item/enchantment/EnchantmentDurability.java b/src/main/java/cn/nukkit/item/enchantment/EnchantmentDurability.java index b6983767232..16e73107cf8 100644 --- a/src/main/java/cn/nukkit/item/enchantment/EnchantmentDurability.java +++ b/src/main/java/cn/nukkit/item/enchantment/EnchantmentDurability.java @@ -1,5 +1,6 @@ package cn.nukkit.item.enchantment; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; import java.util.Random; @@ -35,7 +36,8 @@ public boolean canEnchant(Item item) { public static boolean negateDamage(Item item, int level, Random random) { return !(item.isArmor() && random.nextFloat() < 0.6f) && random.nextInt(level + 1) > 0; } - + + @PowerNukkitOnly @Override public boolean isItemAcceptable(Item item) { if (!item.isNull() && item.getMaxDurability() != -1 && !item.isUnbreakable()) { diff --git a/src/main/java/cn/nukkit/item/enchantment/EnchantmentEfficiency.java b/src/main/java/cn/nukkit/item/enchantment/EnchantmentEfficiency.java index 363f8f216e8..a6db0f4f599 100644 --- a/src/main/java/cn/nukkit/item/enchantment/EnchantmentEfficiency.java +++ b/src/main/java/cn/nukkit/item/enchantment/EnchantmentEfficiency.java @@ -1,5 +1,6 @@ package cn.nukkit.item.enchantment; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; /** @@ -29,7 +30,8 @@ public int getMaxLevel() { public boolean canEnchant(Item item) { return item.isShears() || super.canEnchant(item); } - + + @PowerNukkitOnly @Override public boolean isItemAcceptable(Item item) { if (item.isShears()) { diff --git a/src/main/java/cn/nukkit/item/enchantment/EnchantmentFireAspect.java b/src/main/java/cn/nukkit/item/enchantment/EnchantmentFireAspect.java index 2ffa06f89fc..b98258e0a50 100644 --- a/src/main/java/cn/nukkit/item/enchantment/EnchantmentFireAspect.java +++ b/src/main/java/cn/nukkit/item/enchantment/EnchantmentFireAspect.java @@ -1,8 +1,14 @@ package cn.nukkit.item.enchantment; -import cn.nukkit.Server; +import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.Player; import cn.nukkit.entity.Entity; -import cn.nukkit.event.entity.EntityCombustByEntityEvent; +import cn.nukkit.item.enchantment.sideeffect.SideEffect; +import cn.nukkit.item.enchantment.sideeffect.SideEffectCombust; + +import javax.annotation.Nonnull; /** * @author MagicDroidX (Nukkit Project) @@ -27,15 +33,22 @@ public int getMaxLevel() { return 2; } + @PowerNukkitDifference(since = "1.5.1.0-PN", info = "The entity combustion code was moved to SideEffectCombust, obtained by getAttackSideEffects(Entity, Entity)") @Override public void doPostAttack(Entity attacker, Entity entity) { - int duration = Math.max(entity.fireTicks / 20, getLevel() * 4); - - EntityCombustByEntityEvent ev = new EntityCombustByEntityEvent(attacker, entity, duration); - Server.getInstance().getPluginManager().callEvent(ev); + super.doPostAttack(attacker, entity); + } - if (!ev.isCancelled()) { - entity.setOnFire(ev.getDuration()); + @PowerNukkitOnly + @Since("1.5.1.0-PN") + @Nonnull + @Override + public SideEffect[] getAttackSideEffects(@Nonnull Entity attacker, @Nonnull Entity entity) { + if (entity instanceof Player && ((Player) entity).isCreative()) { + return SideEffect.EMPTY_ARRAY; } + return new SideEffect[]{ + new SideEffectCombust(Math.max(entity.fireTicks / 20, getLevel() << 2)) + }; } } diff --git a/src/main/java/cn/nukkit/item/enchantment/EnchantmentSilkTouch.java b/src/main/java/cn/nukkit/item/enchantment/EnchantmentSilkTouch.java index f1fa6e45d91..e10023c6dad 100644 --- a/src/main/java/cn/nukkit/item/enchantment/EnchantmentSilkTouch.java +++ b/src/main/java/cn/nukkit/item/enchantment/EnchantmentSilkTouch.java @@ -1,5 +1,6 @@ package cn.nukkit.item.enchantment; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.Item; /** @@ -29,8 +30,8 @@ public boolean checkCompatibility(Enchantment enchantment) { public boolean canEnchant(Item item) { return item.isShears() || super.canEnchant(item); } - - + + @PowerNukkitOnly @Override public boolean isItemAcceptable(Item item) { if (item.isShears()) { diff --git a/src/main/java/cn/nukkit/item/enchantment/EnchantmentThorns.java b/src/main/java/cn/nukkit/item/enchantment/EnchantmentThorns.java index 4277a2df082..fa5bd2a66f3 100644 --- a/src/main/java/cn/nukkit/item/enchantment/EnchantmentThorns.java +++ b/src/main/java/cn/nukkit/item/enchantment/EnchantmentThorns.java @@ -1,5 +1,6 @@ package cn.nukkit.item.enchantment; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.entity.Entity; import cn.nukkit.entity.EntityHumanType; import cn.nukkit.event.entity.EntityDamageByEntityEvent; @@ -63,6 +64,7 @@ public boolean canEnchant(@Nonnull Item item) { return !(item instanceof ItemElytra) && super.canEnchant(item); } + @PowerNukkitOnly @Override public boolean isItemAcceptable(Item item) { if (item instanceof ItemArmor) { diff --git a/src/main/java/cn/nukkit/item/enchantment/damage/EnchantmentDamage.java b/src/main/java/cn/nukkit/item/enchantment/damage/EnchantmentDamage.java index de41500194c..84bc2cee517 100644 --- a/src/main/java/cn/nukkit/item/enchantment/damage/EnchantmentDamage.java +++ b/src/main/java/cn/nukkit/item/enchantment/damage/EnchantmentDamage.java @@ -59,6 +59,7 @@ public boolean isMajor() { return true; } + @PowerNukkitOnly @Override public boolean isItemAcceptable(Item item) { if (item.isAxe()) { diff --git a/src/main/java/cn/nukkit/item/enchantment/damage/EnchantmentDamageAll.java b/src/main/java/cn/nukkit/item/enchantment/damage/EnchantmentDamageAll.java index 653ec457dbb..528916c4dbd 100644 --- a/src/main/java/cn/nukkit/item/enchantment/damage/EnchantmentDamageAll.java +++ b/src/main/java/cn/nukkit/item/enchantment/damage/EnchantmentDamageAll.java @@ -28,10 +28,11 @@ public int getMaxEnchantableLevel() { @Override public double getDamageBonus(Entity entity) { - if (this.getLevel() <= 0) { + int level = getLevel(); + if (level <= 0) { return 0; } - return 0.5 + getLevel() * 0.5; + return level * 1.25; } } diff --git a/src/main/java/cn/nukkit/item/enchantment/sideeffect/SideEffect.java b/src/main/java/cn/nukkit/item/enchantment/sideeffect/SideEffect.java new file mode 100644 index 00000000000..3174733ff60 --- /dev/null +++ b/src/main/java/cn/nukkit/item/enchantment/sideeffect/SideEffect.java @@ -0,0 +1,33 @@ +package cn.nukkit.item.enchantment.sideeffect; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.entity.Entity; +import cn.nukkit.event.entity.EntityDamageEvent; + +import javax.annotation.Nonnull; +import javax.annotation.Nullable; + +@PowerNukkitOnly +@Since("1.5.1.0-PN") +public interface SideEffect extends Cloneable { + @PowerNukkitOnly + SideEffect[] EMPTY_ARRAY = new SideEffect[0]; + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + default void doPreHealthChange(@Nonnull Entity entity, @Nonnull EntityDamageEvent source, @Nullable Entity attacker) { + // Does nothing + } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + default void doPostAttack(@Nonnull Entity entity, @Nonnull EntityDamageEvent source, @Nullable Entity attacker) { + // Does nothing + } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + @Nonnull + SideEffect cloneSideEffect(); +} diff --git a/src/main/java/cn/nukkit/item/enchantment/sideeffect/SideEffectCombust.java b/src/main/java/cn/nukkit/item/enchantment/sideeffect/SideEffectCombust.java new file mode 100644 index 00000000000..5a32ecc6304 --- /dev/null +++ b/src/main/java/cn/nukkit/item/enchantment/sideeffect/SideEffectCombust.java @@ -0,0 +1,69 @@ +package cn.nukkit.item.enchantment.sideeffect; + +import cn.nukkit.Server; +import cn.nukkit.api.DeprecationDetails; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.entity.Entity; +import cn.nukkit.event.entity.EntityCombustByEntityEvent; +import cn.nukkit.event.entity.EntityDamageEvent; +import lombok.SneakyThrows; + +import javax.annotation.Nonnull; +import javax.annotation.Nullable; + +@PowerNukkitOnly +@Since("1.5.1.0-PN") +public class SideEffectCombust implements SideEffect { + private int duration; + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public SideEffectCombust(int duration) { + this.duration = duration; + } + + @Since("1.5.1.0-PN") + @PowerNukkitOnly + @Override + public void doPreHealthChange(@Nonnull Entity entity, @Nonnull EntityDamageEvent event, @Nullable Entity attacker) { + EntityCombustByEntityEvent ev = new EntityCombustByEntityEvent(attacker, entity, duration); + Server.getInstance().getPluginManager().callEvent(ev); + + if (!ev.isCancelled()) { + entity.setOnFire(ev.getDuration()); + } + } + + @Since("1.5.1.0-PN") + @PowerNukkitOnly + public int getDuration() { + return duration; + } + + @Since("1.5.1.0-PN") + @PowerNukkitOnly + public void setDuration(int duration) { + this.duration = duration; + } + + @Deprecated + @DeprecationDetails(since = "1.6.0.0-PN", reason = "clone have problems when defined in an interface", by = "PowerNukkit", + replaceWith = "cloneSideEffect") + @Since("1.5.1.0-PN") + @SneakyThrows + @Override + @Nonnull + public SideEffect clone() { + return (SideEffect) super.clone(); + } + + @Since("1.6.0.0-PN") + @PowerNukkitOnly + @SneakyThrows + @Override + @Nonnull + public SideEffect cloneSideEffect() { + return (SideEffect) super.clone(); + } +} diff --git a/src/main/java/cn/nukkit/item/food/Food.java b/src/main/java/cn/nukkit/item/food/Food.java index 0c8cf27ba5a..c8d64e2df6e 100644 --- a/src/main/java/cn/nukkit/item/food/Food.java +++ b/src/main/java/cn/nukkit/item/food/Food.java @@ -82,9 +82,9 @@ public abstract class Food { public static final Food pufferfish = registerDefaultFood(new FoodEffective(1, 0.2F) .addEffect(Effect.getEffect(Effect.HUNGER).setAmplifier(2).setDuration(15 * 20)) .addEffect(Effect.getEffect(Effect.NAUSEA).setAmplifier(1).setDuration(15 * 20)) - .addEffect(Effect.getEffect(Effect.POISON).setAmplifier(4).setDuration(60 * 20)) + .addEffect(Effect.getEffect(Effect.POISON).setAmplifier(3).setDuration(60 * 20)) .addRelative(Item.PUFFERFISH)); - public static final Food dried_kelp = registerDefaultFood(new FoodNormal(1, 0.6F).addRelative(Item.DRIED_KELP)); + public static final Food dried_kelp = registerDefaultFood(new FoodNormal(1, 0.6F).addRelative(Item.DRIED_KELP).setEatingTick(16)); public static final Food sweet_berries = registerDefaultFood(new FoodNormal(2, 0.4F).addRelative(Item.SWEET_BERRIES)); @PowerNukkitOnly @@ -214,7 +214,24 @@ public Food setRestoreSaturation(float restoreSaturation) { this.restoreSaturation = restoreSaturation; return this; } - + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + protected int eatingTick = 31; + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public int getEatingTick() { + return eatingTick; + } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public Food setEatingTick(int eatingTick) { + this.eatingTick = eatingTick; + return this; + } + static class NodeIDMeta { final int id; final int meta; @@ -233,5 +250,4 @@ static class NodeIDMetaPlugin extends NodeIDMeta { this.plugin = plugin; } } - } diff --git a/src/main/java/cn/nukkit/item/food/FoodEffectiveInBow.java b/src/main/java/cn/nukkit/item/food/FoodEffectiveInBow.java index 801ffed2711..4ec8ec670be 100644 --- a/src/main/java/cn/nukkit/item/food/FoodEffectiveInBow.java +++ b/src/main/java/cn/nukkit/item/food/FoodEffectiveInBow.java @@ -1,9 +1,12 @@ package cn.nukkit.item.food; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.item.ItemBowl; +@PowerNukkitOnly public class FoodEffectiveInBow extends FoodEffective { + @PowerNukkitOnly public FoodEffectiveInBow(int restoreFood, float restoreSaturation) { super(restoreFood, restoreSaturation); } diff --git a/src/main/java/cn/nukkit/item/food/FoodHoney.java b/src/main/java/cn/nukkit/item/food/FoodHoney.java index 3bb622aca9c..0a61feb938e 100644 --- a/src/main/java/cn/nukkit/item/food/FoodHoney.java +++ b/src/main/java/cn/nukkit/item/food/FoodHoney.java @@ -7,6 +7,7 @@ @PowerNukkitOnly public class FoodHoney extends Food { + @PowerNukkitOnly public FoodHoney(int restoreFood, float restoreSaturation) { this.setRestoreFood(restoreFood); this.setRestoreSaturation(restoreSaturation); diff --git a/src/main/java/cn/nukkit/item/randomitem/ConstantItemSelector.java b/src/main/java/cn/nukkit/item/randomitem/ConstantItemSelector.java index 608c07b8a30..cf33851bea5 100644 --- a/src/main/java/cn/nukkit/item/randomitem/ConstantItemSelector.java +++ b/src/main/java/cn/nukkit/item/randomitem/ConstantItemSelector.java @@ -31,6 +31,7 @@ public Item getItem() { return item; } + @Override public Object select() { return getItem(); } diff --git a/src/main/java/cn/nukkit/item/randomitem/Fishing.java b/src/main/java/cn/nukkit/item/randomitem/Fishing.java index 2d7ede58b01..10f7b4e3d72 100644 --- a/src/main/java/cn/nukkit/item/randomitem/Fishing.java +++ b/src/main/java/cn/nukkit/item/randomitem/Fishing.java @@ -1,6 +1,9 @@ package cn.nukkit.item.randomitem; +import cn.nukkit.api.Since; +import cn.nukkit.block.BlockID; import cn.nukkit.item.Item; +import cn.nukkit.item.ItemID; import cn.nukkit.item.enchantment.Enchantment; import cn.nukkit.math.NukkitMath; import cn.nukkit.potion.Potion; @@ -18,35 +21,33 @@ public final class Fishing { public static final Selector FISHES = putSelector(new Selector(ROOT_FISHING), 0.85F); public static final Selector TREASURES = putSelector(new Selector(ROOT_FISHING), 0.05F); public static final Selector JUNKS = putSelector(new Selector(ROOT_FISHING), 0.1F); - public static final Selector FISH = putSelector(new ConstantItemSelector(Item.RAW_FISH, FISHES), 0.6F); - public static final Selector SALMON = putSelector(new ConstantItemSelector(Item.RAW_SALMON, FISHES), 0.25F); - public static final Selector CLOWNFISH = putSelector(new ConstantItemSelector(Item.CLOWNFISH, FISHES), 0.02F); - public static final Selector PUFFERFISH = putSelector(new ConstantItemSelector(Item.PUFFERFISH, FISHES), 0.13F); - public static final Selector TREASURE_BOW = putSelector(new ConstantItemSelector(Item.BOW, TREASURES), 0.1667F); - public static final Selector TREASURE_ENCHANTED_BOOK = putSelector(new ConstantItemSelector(Item.ENCHANTED_BOOK, TREASURES), 0.1667F); - public static final Selector TREASURE_FISHING_ROD = putSelector(new ConstantItemSelector(Item.FISHING_ROD, TREASURES), 0.1667F); - public static final Selector TREASURE_NAME_TAG = putSelector(new ConstantItemSelector(Item.NAME_TAG, TREASURES), 0.1667F); - public static final Selector TREASURE_SADDLE = putSelector(new ConstantItemSelector(Item.SADDLE, TREASURES), 0.1667F); - public static final Selector JUNK_BOWL = putSelector(new ConstantItemSelector(Item.BOWL, JUNKS), 0.12F); - public static final Selector JUNK_FISHING_ROD = putSelector(new ConstantItemSelector(Item.FISHING_ROD, JUNKS), 0.024F); - public static final Selector JUNK_LEATHER = putSelector(new ConstantItemSelector(Item.LEATHER, JUNKS), 0.12F); - public static final Selector JUNK_LEATHER_BOOTS = putSelector(new ConstantItemSelector(Item.LEATHER_BOOTS, JUNKS), 0.12F); - public static final Selector JUNK_ROTTEN_FLESH = putSelector(new ConstantItemSelector(Item.ROTTEN_FLESH, JUNKS), 0.12F); - public static final Selector JUNK_STICK = putSelector(new ConstantItemSelector(Item.STICK, JUNKS), 0.06F); - public static final Selector JUNK_STRING_ITEM = putSelector(new ConstantItemSelector(Item.STRING, JUNKS), 0.06F); - public static final Selector JUNK_WATTER_BOTTLE = putSelector(new ConstantItemSelector(Item.POTION, Potion.NO_EFFECTS, JUNKS), 0.12F); - public static final Selector JUNK_BONE = putSelector(new ConstantItemSelector(Item.BONE, JUNKS), 0.12F); - public static final Selector JUNK_TRIPWIRE_HOOK = putSelector(new ConstantItemSelector(Item.TRIPWIRE_HOOK, JUNKS), 0.12F); + public static final Selector FISH = putSelector(new ConstantItemSelector(ItemID.RAW_FISH, FISHES), 0.6F); + public static final Selector SALMON = putSelector(new ConstantItemSelector(ItemID.RAW_SALMON, FISHES), 0.25F); + public static final Selector CLOWNFISH = putSelector(new ConstantItemSelector(ItemID.CLOWNFISH, FISHES), 0.02F); + public static final Selector PUFFERFISH = putSelector(new ConstantItemSelector(ItemID.PUFFERFISH, FISHES), 0.13F); + public static final Selector TREASURE_BOW = putSelector(new ConstantItemSelector(ItemID.BOW, TREASURES), 0.1667F); + public static final Selector TREASURE_ENCHANTED_BOOK = putSelector(new ConstantItemSelector(ItemID.ENCHANTED_BOOK, TREASURES), 0.1667F); + @Since("1.6.0.0-PN") public static final Selector TREASURE_FISHING_ROD = putSelector(new ConstantItemSelector(ItemID.FISHING_ROD, TREASURES), 0.1667F); + @Since("1.6.0.0-PN") public static final Selector TREASURE_NAME_TAG = putSelector(new ConstantItemSelector(ItemID.NAME_TAG, TREASURES), 0.1667F); + @Since("1.6.0.0-PN") public static final Selector TREASURE_SADDLE = putSelector(new ConstantItemSelector(ItemID.SADDLE, TREASURES), 0.1667F); + @Since("1.6.0.0-PN") public static final Selector TREASURE_NAUTILUS_SHELL = putSelector(new ConstantItemSelector(ItemID.NAUTILUS_SHELL, TREASURES), 0.1667F); + public static final Selector JUNK_BOWL = putSelector(new ConstantItemSelector(ItemID.BOWL, JUNKS), 0.12F); + public static final Selector JUNK_FISHING_ROD = putSelector(new ConstantItemSelector(ItemID.FISHING_ROD, JUNKS), 0.024F); + public static final Selector JUNK_LEATHER = putSelector(new ConstantItemSelector(ItemID.LEATHER, JUNKS), 0.12F); + public static final Selector JUNK_LEATHER_BOOTS = putSelector(new ConstantItemSelector(ItemID.LEATHER_BOOTS, JUNKS), 0.12F); + public static final Selector JUNK_ROTTEN_FLESH = putSelector(new ConstantItemSelector(ItemID.ROTTEN_FLESH, JUNKS), 0.12F); + public static final Selector JUNK_STICK = putSelector(new ConstantItemSelector(ItemID.STICK, JUNKS), 0.06F); + public static final Selector JUNK_STRING_ITEM = putSelector(new ConstantItemSelector(ItemID.STRING, JUNKS), 0.06F); + public static final Selector JUNK_WATTER_BOTTLE = putSelector(new ConstantItemSelector(ItemID.POTION, Potion.NO_EFFECTS, JUNKS), 0.12F); + public static final Selector JUNK_BONE = putSelector(new ConstantItemSelector(ItemID.BONE, JUNKS), 0.12F); + public static final Selector JUNK_TRIPWIRE_HOOK = putSelector(new ConstantItemSelector(Item.getBlock(BlockID.TRIPWIRE_HOOK), JUNKS), 0.12F); public static Item getFishingResult(Item rod) { int fortuneLevel = 0; int lureLevel = 0; if (rod != null) { - if (rod.getEnchantment(Enchantment.ID_FORTUNE_FISHING) != null) { - fortuneLevel = rod.getEnchantment(Enchantment.ID_FORTUNE_FISHING).getLevel(); - } else if (rod.getEnchantment(Enchantment.ID_LURE) != null) { - lureLevel = rod.getEnchantment(Enchantment.ID_LURE).getLevel(); - } + fortuneLevel = rod.getEnchantmentLevel(Enchantment.ID_FORTUNE_FISHING); + lureLevel = rod.getEnchantmentLevel(Enchantment.ID_LURE); } return getFishingResult(fortuneLevel, lureLevel); } @@ -59,7 +60,6 @@ public static Item getFishingResult(int fortuneLevel, int lureLevel) { putSelector(TREASURES, treasureChance); putSelector(JUNKS, junkChance); Object result = selectFrom(ROOT_FISHING); - if (result instanceof Item) return (Item) result; - return null; + return (Item) result; } } diff --git a/src/main/java/cn/nukkit/level/DimensionData.java b/src/main/java/cn/nukkit/level/DimensionData.java new file mode 100644 index 00000000000..e000acf37d9 --- /dev/null +++ b/src/main/java/cn/nukkit/level/DimensionData.java @@ -0,0 +1,31 @@ +package cn.nukkit.level; + +import cn.nukkit.api.Since; +import lombok.Data; +import lombok.Getter; + +@Since("1.6.0.0-PN") +@Data +public class DimensionData { + @Getter(onMethod = @__(@Since("1.6.0.0-PN"))) + private final int dimensionId; + @Getter(onMethod = @__(@Since("1.6.0.0-PN"))) + private final int minHeight; + @Getter(onMethod = @__(@Since("1.6.0.0-PN"))) + private final int maxHeight; + @Getter(onMethod = @__(@Since("1.6.0.0-PN"))) + private final int height; + + @Since("1.6.0.0-PN") + public DimensionData(int dimensionId, int minHeight, int maxHeight) { + this.dimensionId = dimensionId; + this.minHeight = minHeight; + this.maxHeight = maxHeight; + + int height = maxHeight - minHeight; + if (minHeight <= 0 && maxHeight > 0) { + height += 1; // 0 y coordinate counts too + } + this.height = height; + } +} diff --git a/src/main/java/cn/nukkit/level/DimensionEnum.java b/src/main/java/cn/nukkit/level/DimensionEnum.java new file mode 100644 index 00000000000..f5f2ef8afb4 --- /dev/null +++ b/src/main/java/cn/nukkit/level/DimensionEnum.java @@ -0,0 +1,36 @@ +package cn.nukkit.level; + +import cn.nukkit.api.Since; + +@Since("1.6.0.0-PN") +public enum DimensionEnum { + @Since("1.6.0.0-PN") + OVERWORLD(new DimensionData(Level.DIMENSION_OVERWORLD, -64, 319)), + + @Since("1.6.0.0-PN") + NETHER(new DimensionData(Level.DIMENSION_NETHER, 0, 127)), + + @Since("1.6.0.0-PN") + END(new DimensionData(Level.DIMENSION_THE_END, 0, 255)); + + private final DimensionData dimensionData; + + DimensionEnum(DimensionData dimensionData) { + this.dimensionData = dimensionData; + } + + @Since("1.6.0.0-PN") + public DimensionData getDimensionData() { + return this.dimensionData; + } + + @Since("1.6.0.0-PN") + public static DimensionData getDataFromId(int dimension) { + for (DimensionEnum value : values()) { + if (value.getDimensionData().getDimensionId() == dimension) { + return value.getDimensionData(); + } + } + return null; + } +} diff --git a/src/main/java/cn/nukkit/level/GameRule.java b/src/main/java/cn/nukkit/level/GameRule.java index c4a4c23d67e..7ec23c26951 100644 --- a/src/main/java/cn/nukkit/level/GameRule.java +++ b/src/main/java/cn/nukkit/level/GameRule.java @@ -1,15 +1,19 @@ package cn.nukkit.level; +import cn.nukkit.api.DeprecationDetails; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import java.util.Optional; public enum GameRule { + + COMMAND_BLOCKS_ENABLED("commandBlocksEnabled"), COMMAND_BLOCK_OUTPUT("commandBlockOutput"), DO_DAYLIGHT_CYCLE("doDaylightCycle"), DO_ENTITY_DROPS("doEntityDrops"), DO_FIRE_TICK("doFireTick"), + DO_INSOMNIA("doInsomnia"), DO_IMMEDIATE_RESPAWN("doImmediateRespawn"), DO_MOB_LOOT("doMobLoot"), DO_MOB_SPAWNING("doMobSpawning"), @@ -18,24 +22,33 @@ public enum GameRule { DROWNING_DAMAGE("drowningDamage"), FALL_DAMAGE("fallDamage"), FIRE_DAMAGE("fireDamage"), + @Since("1.5.1.0-PN") FREEZE_DAMAGE("freezeDamage"), + FUNCTION_COMMAND_LIMIT("functionCommandLimit"), KEEP_INVENTORY("keepInventory"), + MAX_COMMAND_CHAIN_LENGTH("maxCommandChainLength"), MOB_GRIEFING("mobGriefing"), NATURAL_REGENERATION("naturalRegeneration"), PVP("pvp"), RANDOM_TICK_SPEED("randomTickSpeed"), SEND_COMMAND_FEEDBACK("sendCommandFeedback"), SHOW_COORDINATES("showCoordinates"), - TNT_EXPLODES("tntExplodes"), - SHOW_DEATH_MESSAGE("showDeathMessages"), - EXPERIMENTAL_GAMEPLAY("experimentalGameplay"), - MAX_COMMAND_CHAIN_LENGTH("maxCommandChainLength"), - DO_INSOMNIA("doInsomnia"), - COMMAND_BLOCKS_ENABLED("commandBlocksEnabled"), - FUNCTION_COMMAND_LIMIT("functionCommandLimit"), + @Since("1.5.1.0-PN") SHOW_DEATH_MESSAGES("showDeathMessages"), + + @Deprecated + @PowerNukkitOnly("Renamed to SHOW_DEATH_MESSAGE by NukkitX") + @DeprecationDetails(since = "1.5.1.0-PN", + reason = "Added by upstream with a different name", + replaceWith = "SHOW_DEATH_MESSAGES") + @SuppressWarnings("DeprecatedIsStillUsed") + SHOW_DEATH_MESSAGE(SHOW_DEATH_MESSAGES.name, true), + SPAWN_RADIUS("spawnRadius"), + TNT_EXPLODES("tntExplodes"), + @PowerNukkitOnly EXPERIMENTAL_GAMEPLAY("experimentalGameplay"), SHOW_TAGS("showTags"); private final String name; + private final boolean deprecated; @PowerNukkitOnly @Since("1.4.0.0-PN") @@ -43,6 +56,12 @@ public enum GameRule { GameRule(String name) { this.name = name; + this.deprecated = false; + } + + GameRule(String name, boolean deprecated) { + this.name = name; + this.deprecated = deprecated; } public static Optional parseString(String gameRuleString) { @@ -71,4 +90,10 @@ public static String[] getNames() { public String getName() { return name; } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public boolean isDeprecated() { + return deprecated; + } } diff --git a/src/main/java/cn/nukkit/level/GameRules.java b/src/main/java/cn/nukkit/level/GameRules.java index e4566e35729..ae120706331 100644 --- a/src/main/java/cn/nukkit/level/GameRules.java +++ b/src/main/java/cn/nukkit/level/GameRules.java @@ -25,10 +25,12 @@ private GameRules() { public static GameRules getDefault() { GameRules gameRules = new GameRules(); + gameRules.gameRules.put(COMMAND_BLOCKS_ENABLED, new Value<>(Type.BOOLEAN, true)); gameRules.gameRules.put(COMMAND_BLOCK_OUTPUT, new Value<>(Type.BOOLEAN, true)); gameRules.gameRules.put(DO_DAYLIGHT_CYCLE, new Value<>(Type.BOOLEAN, true)); gameRules.gameRules.put(DO_ENTITY_DROPS, new Value<>(Type.BOOLEAN, true)); gameRules.gameRules.put(DO_FIRE_TICK, new Value<>(Type.BOOLEAN, true)); + gameRules.gameRules.put(DO_INSOMNIA, new Value<>(Type.BOOLEAN, true)); gameRules.gameRules.put(DO_IMMEDIATE_RESPAWN, new Value<>(Type.BOOLEAN, false)); gameRules.gameRules.put(DO_MOB_LOOT, new Value<>(Type.BOOLEAN, true)); gameRules.gameRules.put(DO_MOB_SPAWNING, new Value<>(Type.BOOLEAN, true)); @@ -37,22 +39,25 @@ public static GameRules getDefault() { gameRules.gameRules.put(DROWNING_DAMAGE, new Value<>(Type.BOOLEAN, true)); gameRules.gameRules.put(FALL_DAMAGE, new Value<>(Type.BOOLEAN, true)); gameRules.gameRules.put(FIRE_DAMAGE, new Value<>(Type.BOOLEAN, true)); + gameRules.gameRules.put(FREEZE_DAMAGE, new Value<>(Type.BOOLEAN, true)); + gameRules.gameRules.put(FUNCTION_COMMAND_LIMIT, new Value<>(Type.INTEGER, 10000)); gameRules.gameRules.put(KEEP_INVENTORY, new Value<>(Type.BOOLEAN, false)); + gameRules.gameRules.put(MAX_COMMAND_CHAIN_LENGTH, new Value<>(Type.INTEGER, 65536)); gameRules.gameRules.put(MOB_GRIEFING, new Value<>(Type.BOOLEAN, true)); gameRules.gameRules.put(NATURAL_REGENERATION, new Value<>(Type.BOOLEAN, true)); gameRules.gameRules.put(PVP, new Value<>(Type.BOOLEAN, true)); gameRules.gameRules.put(RANDOM_TICK_SPEED, new Value<>(Type.INTEGER, 3)); gameRules.gameRules.put(SEND_COMMAND_FEEDBACK, new Value<>(Type.BOOLEAN, true)); gameRules.gameRules.put(SHOW_COORDINATES, new Value<>(Type.BOOLEAN, false)); - gameRules.gameRules.put(TNT_EXPLODES, new Value<>(Type.BOOLEAN, true)); - gameRules.gameRules.put(SHOW_DEATH_MESSAGE, new Value<>(Type.BOOLEAN, true)); - gameRules.gameRules.put(EXPERIMENTAL_GAMEPLAY, new Value<>(Type.BOOLEAN, false)); - gameRules.gameRules.put(MAX_COMMAND_CHAIN_LENGTH, new Value<>(Type.INTEGER, 131070)); - gameRules.gameRules.put(DO_INSOMNIA, new Value<>(Type.BOOLEAN, true)); - gameRules.gameRules.put(COMMAND_BLOCKS_ENABLED, new Value<>(Type.BOOLEAN, true)); - gameRules.gameRules.put(FUNCTION_COMMAND_LIMIT, new Value<>(Type.INTEGER, 20000)); + gameRules.gameRules.put(SHOW_DEATH_MESSAGES, new Value<>(Type.BOOLEAN, true)); + + @SuppressWarnings("deprecation") GameRule deprecated = SHOW_DEATH_MESSAGE; + gameRules.gameRules.put(deprecated, gameRules.gameRules.get(SHOW_DEATH_MESSAGES)); + gameRules.gameRules.put(SPAWN_RADIUS, new Value<>(Type.INTEGER, 5)); + gameRules.gameRules.put(TNT_EXPLODES, new Value<>(Type.BOOLEAN, true)); gameRules.gameRules.put(SHOW_TAGS, new Value<>(Type.BOOLEAN, true)); + gameRules.gameRules.put(EXPERIMENTAL_GAMEPLAY, new Value<>(Type.BOOLEAN, false)); return gameRules; } diff --git a/src/main/java/cn/nukkit/level/GlobalBlockPalette.java b/src/main/java/cn/nukkit/level/GlobalBlockPalette.java index 773c6a5d95e..4e675f89a2c 100644 --- a/src/main/java/cn/nukkit/level/GlobalBlockPalette.java +++ b/src/main/java/cn/nukkit/level/GlobalBlockPalette.java @@ -1,6 +1,8 @@ package cn.nukkit.level; import cn.nukkit.api.DeprecationDetails; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.block.Block; import cn.nukkit.blockstate.BlockStateRegistry; import lombok.extern.log4j.Log4j2; @@ -11,6 +13,7 @@ public class GlobalBlockPalette { @Deprecated @DeprecationDetails(reason = "Public mutable array", replaceWith = "BlockStateRegistry.getBlockPaletteBytes() or BlockStateRegistry.copyBlockPaletteBytes()", since = "1.4.0.0-PN") + @PowerNukkitOnly public static final byte[] BLOCK_PALETTE = BlockStateRegistry.getBlockPaletteBytes(); @Deprecated @@ -27,7 +30,14 @@ public static int getOrCreateRuntimeId(int legacyId) { @Deprecated @DeprecationDetails(reason = "Moved to BlockStateRegistry", replaceWith = "BlockStateRegistry.getPersistenceName(int)", since = "1.3.0.0-PN") + @PowerNukkitOnly public static String getName(int blockId) { return BlockStateRegistry.getPersistenceName(blockId); } + + @Since("1.6.0.0-PN") + public static int getLegacyFullId(int runtimeId) { + //TODO Implement + throw new UnsupportedOperationException(); + } } diff --git a/src/main/java/cn/nukkit/level/Level.java b/src/main/java/cn/nukkit/level/Level.java index 9a8d7b1fa4a..754e4ee624e 100644 --- a/src/main/java/cn/nukkit/level/Level.java +++ b/src/main/java/cn/nukkit/level/Level.java @@ -88,6 +88,10 @@ public class Level implements ChunkManager, Metadatable { @Since("1.4.0.0-PN") public static final Level[] EMPTY_ARRAY = new Level[0]; + static { + Timings.init(); + } + private static int levelIdCounter = 1; private static int chunkLoaderCounter = 1; @SuppressWarnings({"java:S1444", "java:S3008"}) @@ -100,7 +104,7 @@ public class Level implements ChunkManager, Metadatable { public static final int BLOCK_UPDATE_TOUCH = 5; public static final int BLOCK_UPDATE_REDSTONE = 6; public static final int BLOCK_UPDATE_TICK = 7; - + @PowerNukkitOnly @Since("1.4.0.0-PN") public static final int BLOCK_UPDATE_MOVED = dynamic(1_000_000); @@ -161,7 +165,7 @@ public class Level implements ChunkManager, Metadatable { randomTickBlocks[BlockID.WARPED_NYLIUM] = true; randomTickBlocks[BlockID.TWISTING_VINES] = true; } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public static boolean canRandomTick(int blockId) { @@ -206,6 +210,7 @@ public static void setCanRandomTick(int blockId, boolean newValue) { private float time; public boolean stopTime; + private int nextTimeSendTick; public float skyLightSubtracted; @@ -294,7 +299,7 @@ public Generator init() { private long levelCurrentTick = 0; - private int dimension; + private DimensionData dimensionData; public GameRules gameRules; @@ -317,14 +322,18 @@ public Level(Server server, String name, String path, Class usesChunkSection, (lvl, p)-> provider); } - @PowerNukkitOnly("Makes easier to create tests") - @Since("1.4.0.0-PN") + /** + * Easier constructor to create PowerNukkit tests. + */ + @Since("1.4.0.0-PN") Level(Server server, String name, String path, BooleanSupplier usesChunkSection, BiFunction provider) { this.levelId = levelIdCounter++; this.blockMetadata = new BlockMetadataStore(this); @@ -443,7 +452,7 @@ public void setTickRate(int tickRate) { public void initLevel() { Generator generator = generators.get(); - this.dimension = generator.getDimension(); + this.dimensionData = generator.getDimensionData(); this.gameRules = this.requireProvider().getGamerules(); log.info("Preparing start region for level \"{}\"", this.getFolderName()); @@ -500,7 +509,7 @@ public void close() { } levelProvider.close(); } - + this.provider = null; this.blockMetadata = null; this.temporalPosition = null; @@ -538,11 +547,13 @@ public void addSound(Vector3 pos, Sound sound, float volume, float pitch, Player Server.broadcastPacket(players, packet); } } - + + @PowerNukkitOnly public void addLevelEvent(int type, int data) { addLevelEvent(type, data, null); } - + + @PowerNukkitOnly public void addLevelEvent(int type, int data, Vector3 pos) { if (pos == null) { addLevelEvent(type, data, 0, 0, 0); @@ -550,7 +561,8 @@ public void addLevelEvent(int type, int data, Vector3 pos) { addLevelEvent(type, data, (float) pos.x, (float) pos.y, (float) pos.z); } } - + + @PowerNukkitOnly public void addLevelEvent(int type, int data, float x, float y, float z) { LevelEventPacket packet = new LevelEventPacket(); packet.evid = type; @@ -558,7 +570,7 @@ public void addLevelEvent(int type, int data, float x, float y, float z) { packet.y = y; packet.z = z; packet.data = data; - + this.addChunkPacket(NukkitMath.floorFloat(x) >> 4, NukkitMath.floorFloat(z) >> 4, packet); } @@ -664,11 +676,11 @@ public void addParticle(Particle particle, Collection players) { } public void addParticleEffect(Vector3 pos, ParticleEffect particleEffect) { - this.addParticleEffect(pos, particleEffect, -1, this.dimension, (Player[]) null); + this.addParticleEffect(pos, particleEffect, -1, this.getDimension(), (Player[]) null); } public void addParticleEffect(Vector3 pos, ParticleEffect particleEffect, long uniqueEntityId) { - this.addParticleEffect(pos, particleEffect, uniqueEntityId, this.dimension, (Player[]) null); + this.addParticleEffect(pos, particleEffect, uniqueEntityId, this.getDimension(), (Player[]) null); } public void addParticleEffect(Vector3 pos, ParticleEffect particleEffect, long uniqueEntityId, int dimensionId) { @@ -726,7 +738,7 @@ public boolean unload(boolean force) { TextFormat.GREEN + this.getName() + TextFormat.WHITE)); Level defaultLevel = this.server.getDefaultLevel(); - for (Player player : new ArrayList<>(this.getPlayers().values())) { + for (Player player : this.getPlayers().values().toArray(Player.EMPTY_ARRAY)) { if (this == defaultLevel || defaultLevel == null) { player.close(player.getLeaveMessage(), "Forced default level unload"); } else { @@ -843,7 +855,7 @@ public void sendTime(Player... players) { } public void sendTime() { - sendTime(this.players.values().toArray(Player.EMPTY_ARRAY)); + this.sendTime(this.players.values().toArray(Player.EMPTY_ARRAY)); } public GameRules getGameRules() { @@ -852,18 +864,18 @@ public GameRules getGameRules() { public void doTick(int currentTick) { this.timings.doTick.startTiming(); - + requireProvider(); updateBlockLight(lightQueue); this.checkTime(); - - if (currentTick % 1200 == 0) { // Send time to client every 60 seconds to make sure it stay in sync + if (currentTick >= nextTimeSendTick) { // Send time to client every 30 seconds to make sure it this.sendTime(); + nextTimeSendTick = currentTick + 30 * 20; } // Tick Weather - if (this.dimension != DIMENSION_NETHER && this.dimension != DIMENSION_THE_END && gameRules.getBoolean(GameRule.DO_WEATHER_CYCLE)) { + if (this.getDimension() != DIMENSION_NETHER && this.getDimension() != DIMENSION_THE_END && gameRules.getBoolean(GameRule.DO_WEATHER_CYCLE)) { this.rainTime--; if (this.rainTime <= 0) { if (!this.setRaining(!this.raining)) { @@ -1347,7 +1359,7 @@ public void updateComparatorOutputLevelSelective(Vector3 v, boolean observer) { if (this.isChunkLoaded((int) temporalVector.x >> 4, (int) temporalVector.z >> 4)) { Block block1 = this.getBlock(temporalVector); - + if (block1.getId() == BlockID.OBSERVER) { if (observer) { block1.onNeighborChange(face.getOpposite()); @@ -1363,11 +1375,11 @@ public void updateComparatorOutputLevelSelective(Vector3 v, boolean observer) { } } } - + if (!observer) { return; } - + for (BlockFace face : Plane.VERTICAL) { Block block1 = this.getBlock(temporalVector.setComponentsAdding(v, face)); @@ -1438,7 +1450,7 @@ public Set getPendingBlockUpdates(FullChunk chunk) { public Set getPendingBlockUpdates(AxisAlignedBB boundingBox) { return updateQueue.getPendingBlockUpdates(boundingBox); } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public List scanBlocks(@Nonnull AxisAlignedBB bb, @Nonnull BiPredicate condition) { @@ -1457,15 +1469,17 @@ public List scanBlocks(@Nonnull AxisAlignedBB bb, @Nonnull BiPredicate block.getId() != 0); } - + + @PowerNukkitOnly public Block[] getCollisionBlocks(AxisAlignedBB bb, boolean targetFirst, boolean ignoreCollidesCheck, Predicate condition) { int minX = NukkitMath.floorDouble(bb.getMinX()); int minY = NukkitMath.floorDouble(bb.getMinY()); @@ -1610,14 +1624,17 @@ public int calculateSkylightSubtracted(float tickDiff) { return (int)(light * 11.0F); } + @PowerNukkitOnly public float getRainStrength(float tickDiff) { return isRaining() ? 1 : 0; // TODO: real implementation } + @PowerNukkitOnly public float getThunderStrength(float tickDiff) { return isThundering() ? 1 : 0; // TODO: real implementation } + @PowerNukkitOnly public float getCelestialAngle(float tickDiff) { return calculateCelestialAngle(getTime(), tickDiff); } @@ -1651,6 +1668,7 @@ public int getFullBlock(int x, int y, int z) { @Deprecated @DeprecationDetails(reason ="The meta is limited to 32 bits", since = "1.3.0.0-PN") + @PowerNukkitOnly public int getFullBlock(int x, int y, int z, int layer) { return this.getChunk(x >> 4, z >> 4, false).getFullBlock(x & 0x0f, y & 0xff, z & 0x0f, layer); } @@ -1660,7 +1678,7 @@ public int getFullBlock(int x, int y, int z, int layer) { public int getBlockRuntimeId(int x, int y, int z) { return getBlockRuntimeId(x, y, z, 0); } - + @PowerNukkitOnly @Since("1.3.0.0-PN") public int getBlockRuntimeId(int x, int y, int z, int layer) { @@ -1671,6 +1689,7 @@ public synchronized Block getBlock(Vector3 pos) { return getBlock(pos, 0); } + @PowerNukkitOnly public synchronized Block getBlock(Vector3 pos, int layer) { return this.getBlock(pos.getFloorX(), pos.getFloorY(), pos.getFloorZ(), layer); } @@ -1679,6 +1698,7 @@ public synchronized Block getBlock(Vector3 pos, boolean load) { return getBlock(pos, 0, load); } + @PowerNukkitOnly public synchronized Block getBlock(Vector3 pos, int layer, boolean load) { return this.getBlock(pos.getFloorX(), pos.getFloorY(), pos.getFloorZ(), layer, load); } @@ -1687,6 +1707,7 @@ public synchronized Block getBlock(int x, int y, int z) { return getBlock(x, y, z, 0); } + @PowerNukkitOnly public synchronized Block getBlock(int x, int y, int z, int layer) { return getBlock(x, y, z, layer, true); } @@ -1695,7 +1716,7 @@ public synchronized Block getBlock(int x, int y, int z, boolean load) { return getBlock(x, y, z, 0, load); } - @PowerNukkitDifference(since = "1.4.0.0-PN", info = "Will automatically repair broken block states") + @PowerNukkitOnly public synchronized Block getBlock(int x, int y, int z, int layer, boolean load) { BlockState fullState; if (y >= 0 && y < 256) { @@ -1726,10 +1747,10 @@ public synchronized Block getBlock(int x, int y, int z, int layer, boolean load) } } Block block = fullState.getBlockRepairing(this, x, y, z, layer); - setBlock(x, y, z, layer, block, false, false); // Update set to false to fix PowerNukkit#650 + setBlock(x, y, z, layer, block, false, false); // Update set to false to fix PowerNukkit#650 return block; } - + public void updateAllLight(Vector3 pos) { this.updateBlockSkyLight((int) pos.x, (int) pos.y, (int) pos.z); this.addLightUpdate((int) pos.x, (int) pos.y, (int) pos.z); @@ -1749,7 +1770,7 @@ public void updateBlockSkyLight(int x, int y, int z) { if (yPlusOne == oldHeightMap) { // Block changed directly beneath the heightmap. Check if a block was removed or changed to a different light-filter newHeightMap = chunk.recalculateHeightMapColumn(x & 0x0f, z & 0x0f); } else if (yPlusOne > oldHeightMap) { // Block changed above the heightmap - if (Block.lightFilter[sourceId] > 1 || Block.diffusesSkyLight[sourceId]) { + if (Block.getLightFilter(sourceId) > 1 || Block.diffusesSkyLight(sourceId)) { chunk.setHeightMap(x & 0xf, y & 0xf, yPlusOne); newHeightMap = yPlusOne; } else { // Block changed which has no effect on direct sky light, for example placing or removing glass. @@ -1768,13 +1789,14 @@ public void updateBlockSkyLight(int x, int y, int z) { setBlockSkyLightAt(x, i, z, 15); } } else { // No heightmap change, block changed "underground" - setBlockSkyLightAt(x, y, z, Math.max(0, getHighestAdjacentBlockSkyLight(x, y, z) - Block.lightFilter[sourceId])); + setBlockSkyLightAt(x, y, z, Math.max(0, getHighestAdjacentBlockSkyLight(x, y, z) - Block.getLightFilter(sourceId))); } } /** * Returns the highest block skylight level available in the positions adjacent to the specified block coordinates. */ + @PowerNukkitOnly public int getHighestAdjacentBlockSkyLight(int x, int y, int z) { int[] lightLevels = new int[] { getBlockSkyLightAt(x + 1, y, z), @@ -1872,7 +1894,7 @@ public void updateBlockLight(Map> map) { int z = Hash.hashBlockZ(node); int lightLevel = this.getBlockLightAt(x, y, z) - - Block.lightFilter[this.getBlockIdAt(x, y, z)]; + - Block.getLightFilter(this.getBlockIdAt(x, y, z)); if (lightLevel >= 1) { this.computeSpreadBlockLight(x - 1, y, z, lightLevel, lightPropagationQueue, visited); @@ -1943,6 +1965,7 @@ public synchronized void setBlockFullIdAt(int x, int y, int z, int fullId) { @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public synchronized void setBlockFullIdAt(int x, int y, int z, int layer, int fullId) { setBlock(x, y, z, layer, Block.fullList[fullId], false, false); @@ -1952,6 +1975,7 @@ public synchronized boolean setBlock(Vector3 pos, Block block) { return setBlock(pos, 0, block); } + @PowerNukkitOnly public synchronized boolean setBlock(Vector3 pos, int layer, Block block) { return this.setBlock(pos, layer, block, false); } @@ -1960,6 +1984,7 @@ public synchronized boolean setBlock(Vector3 pos, Block block, boolean direct) { return this.setBlock(pos, 0, block, direct); } + @PowerNukkitOnly public synchronized boolean setBlock(Vector3 pos, int layer, Block block, boolean direct) { return this.setBlock(pos, layer, block, direct, true); } @@ -1968,6 +1993,7 @@ public synchronized boolean setBlock(Vector3 pos, Block block, boolean direct, b return setBlock(pos, 0, block, direct, update); } + @PowerNukkitOnly public synchronized boolean setBlock(Vector3 pos, int layer, Block block, boolean direct, boolean update) { return setBlock(pos.getFloorX(), pos.getFloorY(), pos.getFloorZ(), layer, block, direct, update); } @@ -1976,6 +2002,7 @@ public synchronized boolean setBlock(int x, int y, int z, Block block, boolean d return setBlock(x, y, z, 0, block, direct, update); } + @PowerNukkitOnly public synchronized boolean setBlock(int x, int y, int z, int layer, Block block, boolean direct, boolean update) { if (y < 0 || y >= 256 || layer < 0 || layer > this.requireProvider().getMaximumLayer()) { return false; @@ -1991,9 +2018,9 @@ public synchronized boolean setBlock(int x, int y, int z, int layer, Block block block.z = z; block.level = this; block.layer = layer; - + Block blockPrevious = statePrevious.getBlockRepairing(this, x, y, z, layer); - + int cx = x >> 4; int cz = z >> 4; long index = Level.chunkHash(cx, cz); @@ -2172,7 +2199,8 @@ public Item useBreakOn(Vector3 vector, Item item, Player player, boolean createP public Item useBreakOn(Vector3 vector, BlockFace face, Item item, Player player, boolean createParticles) { return useBreakOn(vector, face, item, player, createParticles, false); } - + + @PowerNukkitOnly public Item useBreakOn(Vector3 vector, BlockFace face, Item item, Player player, boolean createParticles, boolean setBlockDestroy) { if (vector instanceof Block) { return useBreakOn(vector, ((Block) vector).layer, face, item, player, createParticles, setBlockDestroy); @@ -2181,28 +2209,29 @@ public Item useBreakOn(Vector3 vector, BlockFace face, Item item, Player player, } } + @PowerNukkitOnly public Item useBreakOn(Vector3 vector, int layer, BlockFace face, Item item, Player player, boolean createParticles, boolean setBlockDestroy) { if (player != null && player.getGamemode() > 2) { return null; } - + Block target = this.getBlock(vector, layer); if (player != null && !target.isBlockChangeAllowed(player)) { return null; } - + Item[] drops; int dropExp = target.getDropExp(); if (item == null) { item = new ItemBlock(Block.get(BlockID.AIR), 0, 0); } - + if (!target.isBreakable(vector, layer, face, item, player, setBlockDestroy)) { return null; } - + boolean mustDrop = target.mustDrop(vector, layer, face, item, player); boolean mustSilkTouch = target.mustSilkTouch(vector, layer, face, item, player); boolean isSilkTouch = mustSilkTouch || item.getEnchantment(Enchantment.ID_SILK_TOUCH) != null; @@ -2307,7 +2336,7 @@ public Item useBreakOn(Vector3 vector, int layer, BlockFace face, Item item, Pla if (blockEntity != null) { blockEntity.onBreak(isSilkTouch); blockEntity.close(); - + this.updateComparatorOutputLevel(target); } } @@ -2323,7 +2352,7 @@ public Item useBreakOn(Vector3 vector, int layer, BlockFace face, Item item, Pla } if (this.gameRules.getBoolean(GameRule.DO_TILE_DROPS)) { - + if (!isSilkTouch && (mustDrop || player != null && (player.isSurvival() || setBlockDestroy)) && dropExp > 0 && drops.length != 0) { this.dropExpOrb(vector.add(0.5, 0.5, 0.5), dropExp); } @@ -2363,7 +2392,7 @@ public List dropExpOrbAndGetEntities(Vector3 source, int exp) { public List dropExpOrbAndGetEntities(Vector3 source, int exp, Vector3 motion) { return dropExpOrbAndGetEntities(source, exp, motion, 10); } - + @PowerNukkitOnly @Since("1.4.0.0-PN") public List dropExpOrbAndGetEntities(Vector3 source, int exp, Vector3 motion, int delay) { @@ -2488,7 +2517,7 @@ public Item useItemOn(Vector3 vector, Item item, BlockFace face, float fx, float Entity[] entities = this.getCollidingEntities(hand.getBoundingBox()); int realCount = 0; for (Entity e : entities) { - if (e instanceof EntityArrow + if (e instanceof EntityArrow || e instanceof EntityItem || (e instanceof Player && ((Player) e).isSpectator()) || player == e @@ -2517,7 +2546,7 @@ public Item useItemOn(Vector3 vector, Item item, BlockFace face, float fx, float if (!block.isBlockChangeAllowed(player)) { return null; } - + BlockPlaceEvent event = new BlockPlaceEvent(player, hand, block, target, item); if (player.getGamemode() == 2) { Tag tag = item.getNamedTagEntry("CanPlaceOn"); @@ -2712,6 +2741,7 @@ public BlockEntity getBlockEntity(Vector3 pos) { return getBlockEntity(pos.asBlockVector3()); } + @PowerNukkitOnly public BlockEntity getBlockEntity(BlockVector3 pos) { FullChunk chunk = this.getChunk(pos.x >> 4, pos.z >> 4, false); @@ -2746,6 +2776,7 @@ public Map getChunkBlockEntities(int X, int Z) { return (chunk = this.getChunk(X, Z)) != null ? chunk.getBlockEntities() : Collections.emptyMap(); } + @PowerNukkitOnly @Override public BlockState getBlockStateAt(int x, int y, int z, int layer) { return getChunk(x >> 4, z >> 4, true).getBlockStateAt(x & 0x0f, y & 0xff, z & 0x0f, layer); @@ -2756,6 +2787,7 @@ public int getBlockIdAt(int x, int y, int z) { return getBlockIdAt(x, y, z, 0); } + @PowerNukkitOnly @Override public synchronized int getBlockIdAt(int x, int y, int z, int layer) { return this.getChunk(x >> 4, z >> 4, true).getBlockId(x & 0x0f, y & 0xff, z & 0x0f, layer); @@ -2766,6 +2798,7 @@ public void setBlockIdAt(int x, int y, int z, int id) { setBlockIdAt(x, y, z, 0, id); } + @PowerNukkitOnly @Override public synchronized void setBlockIdAt(int x, int y, int z, int layer, int id) { this.getChunk(x >> 4, z >> 4, true).setBlockId(x & 0x0f, y & 0xff, z & 0x0f, layer, id & 0xfff); @@ -2785,11 +2818,13 @@ public synchronized void setBlockAt(int x, int y, int z, int id, int data) { @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public synchronized boolean setBlockAtLayer(int x, int y, int z, int layer, int id, int data) { return setBlockStateAt(x, y, z, layer, BlockState.of(id, data)); } - + + @Override @PowerNukkitOnly @Since("1.4.0.0-PN") public synchronized boolean setBlockStateAt(int x, int y, int z, int layer, BlockState state) { @@ -2822,6 +2857,7 @@ public synchronized void setBlockExtraDataAt(int x, int y, int z, int id, int da @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public synchronized int getBlockDataAt(int x, int y, int z, int layer) { return this.getChunk(x >> 4, z >> 4, true).getBlockData(x & 0x0f, y & 0xff, z & 0x0f, layer); @@ -2836,6 +2872,7 @@ public void setBlockDataAt(int x, int y, int z, int data) { @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public synchronized void setBlockDataAt(int x, int y, int z, int layer, int data) { this.getChunk(x >> 4, z >> 4, true).setBlockData(x & 0x0f, y & 0xff, z & 0x0f, layer, data); @@ -3055,6 +3092,7 @@ public Position getSpawnLocation() { return Position.fromObject(this.requireProvider().getSpawn(), this); } + @PowerNukkitOnly public Position getFuzzySpawnLocation() { Position spawn = getSpawnLocation(); int radius = gameRules.getInteger(GameRule.SPAWN_RADIUS); @@ -3249,7 +3287,7 @@ private synchronized BaseFullChunk forceLoadChunk(long index, int x, int z, bool this.timings.syncChunkLoadTimer.stopTiming(); return chunk; } - + chunk.backwardCompatibilityUpdate(this); chunk.initChunk(); @@ -3718,6 +3756,10 @@ public void addPlayerMovement(Entity entity, double x, double y, double z, doubl pk.yaw = (float) yaw; pk.headYaw = (float) headYaw; pk.pitch = (float) pitch; + if (entity.riding != null) { + pk.ridingEid = entity.riding.getId(); + pk.mode = MovePlayerPacket.MODE_PITCH; + } Server.broadcastPacket(entity.getViewers().values(), pk); } @@ -3858,8 +3900,13 @@ public void sendWeather(Collection players) { this.sendWeather(players.toArray(Player.EMPTY_ARRAY)); } + @Since("1.6.0.0-PN") + public DimensionData getDimensionData() { + return this.dimensionData; + } + public int getDimension() { - return dimension; + return this.dimensionData.getDimensionId(); } public boolean canBlockSeeSky(Vector3 pos) { @@ -3989,6 +4036,7 @@ public int getUpdateLCG() { @PowerNukkitDifference(info = "Using new method to play sounds", since = "1.4.0.0-PN") public boolean createPortal(Block target) { + if (this.getDimension() == DIMENSION_THE_END) return false; int maxPortalSize = 23; final int targX = target.getFloorX(); final int targY = target.getFloorY(); @@ -4209,7 +4257,7 @@ public boolean createPortal(Block target) { public String toString() { return "Level{" + "folderName='" + folderName + '\'' + - ", dimension=" + dimension + + ", dimension=" + getDimension() + '}'; } @@ -4220,7 +4268,7 @@ private static class QueuedUpdate { private Block block; private BlockFace neighbor; } - + // private static void orderGetRidings(Entity entity, LongSet set) { // if (entity.riding != null) { // if(!set.add(entity.riding.getId())) { diff --git a/src/main/java/cn/nukkit/level/ListChunkManager.java b/src/main/java/cn/nukkit/level/ListChunkManager.java index db947f3c785..92bba16f253 100644 --- a/src/main/java/cn/nukkit/level/ListChunkManager.java +++ b/src/main/java/cn/nukkit/level/ListChunkManager.java @@ -35,7 +35,8 @@ private Optional findBlockAt(int x, int y, int z, int layer) { && block.layer == layer ).findAny(); } - + + @PowerNukkitOnly @Override public int getBlockIdAt(int x, int y, int z, int layer) { return findBlockAt(x, y, z, layer).map(Block::getId).orElseGet(() -> this.parent.getBlockIdAt(x, y, z, layer)); @@ -46,6 +47,7 @@ public void setBlockFullIdAt(int x, int y, int z, int fullId) { setBlockFullIdAt(x, y, z, 0, fullId); } + @PowerNukkitOnly @Override public void setBlockFullIdAt(int x, int y, int z, int layer, int fullId) { this.blocks.removeIf(block -> block.getFloorX() == x && block.getFloorY() == y && block.getFloorZ() == z && block.layer == layer); @@ -57,6 +59,7 @@ public void setBlockIdAt(int x, int y, int z, int id) { setBlockIdAt(x, y, z, 0, id); } + @PowerNukkitOnly @Override public void setBlockIdAt(int x, int y, int z, int layer, int id) { Optional optionalBlock = this.blocks.stream().filter(block -> block.getFloorX() == x && block.getFloorY() == y && block.getFloorZ() == z && block.layer == layer).findAny(); @@ -71,6 +74,7 @@ public void setBlockAt(int x, int y, int z, int id, int data) { this.blocks.add(Block.get(id, data, new Position(x, y, z), 0)); } + @PowerNukkitOnly @Override public boolean setBlockAtLayer(int x, int y, int z, int layer, int id, int data) { boolean removed = this.blocks.removeIf(block -> block.getFloorX() == x && block.getFloorY() == y && block.getFloorZ() == z && block.layer == layer); @@ -99,6 +103,7 @@ public int getBlockDataAt(int x, int y, int z) { return getBlockIdAt(x, y, z, 0); } + @PowerNukkitOnly @Override public int getBlockDataAt(int x, int y, int z, int layer) { Optional optionalBlock = this.blocks.stream().filter(block -> block.getFloorX() == x && block.getFloorY() == y && block.getFloorZ() == z && block.layer == layer).findAny(); @@ -109,7 +114,8 @@ public int getBlockDataAt(int x, int y, int z, int layer) { public void setBlockDataAt(int x, int y, int z, int data) { setBlockIdAt(x, y, z, 0, data); } - + + @PowerNukkitOnly @Override public void setBlockDataAt(int x, int y, int z, int layer, int data) { Optional optionalBlock = this.blocks.stream().filter(block -> block.getFloorX() == x && block.getFloorY() == y && block.getFloorZ() == z && block.layer == layer).findAny(); diff --git a/src/main/java/cn/nukkit/level/Location.java b/src/main/java/cn/nukkit/level/Location.java index 76b599e62cd..6b7ef3a87cd 100644 --- a/src/main/java/cn/nukkit/level/Location.java +++ b/src/main/java/cn/nukkit/level/Location.java @@ -1,5 +1,7 @@ package cn.nukkit.level; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.math.Vector3; import cn.nukkit.utils.LevelException; @@ -12,6 +14,7 @@ public class Location extends Position { public double yaw; public double pitch; + @Since("1.6.0.0-PN") public double headYaw; public Location() { this(0); @@ -25,14 +28,14 @@ public Location(double x, double y) { this(x, y, 0); } - public Location(double x, double y, double z, Level level) { - this(x, y, z, 0, 0, level); - } - public Location(double x, double y, double z) { this(x, y, z, 0); } + public Location(double x, double y, double z, Level level) { + this(x, y, z, 0, 0, level); + } + public Location(double x, double y, double z, double yaw) { this(x, y, z, yaw, 0); } @@ -42,11 +45,22 @@ public Location(double x, double y, double z, double yaw, double pitch) { } public Location(double x, double y, double z, double yaw, double pitch, Level level) { + this(x, y, z, yaw, pitch, 0, level); + } + + @Since("1.6.0.0-PN") + public Location(double x, double y, double z, double yaw, double pitch, double headYaw) { + this(x, y, z, yaw, pitch, headYaw, null); + } + + @Since("1.6.0.0-PN") + public Location(double x, double y, double z, double yaw, double pitch, double headYaw, Level level) { this.x = x; this.y = y; this.z = z; this.yaw = yaw; this.pitch = pitch; + this.headYaw = headYaw; this.level = level; } @@ -66,6 +80,14 @@ public static Location fromObject(Vector3 pos, Level level, double yaw, double p return new Location(pos.x, pos.y, pos.z, yaw, pitch, (level == null) ? ((pos instanceof Position) ? ((Position) pos).level : null) : level); } + @Since("1.6.0.0-PN") + public static Location fromObject(Vector3 pos, Level level, double yaw, double pitch, double headYaw) { + if (level == null && pos instanceof Position) { + level = ((Position) pos).level; + } + return new Location(pos.x, pos.y, pos.z, yaw, pitch, headYaw, level); + } + public double getYaw() { return this.yaw; } @@ -74,11 +96,18 @@ public double getPitch() { return this.pitch; } + @Since("1.6.0.0-PN") + public double getHeadYaw() { + return this.headYaw; + } + + @PowerNukkitOnly public Location setYaw(double yaw) { this.yaw = yaw; return this; } + @PowerNukkitOnly public Location setPitch(double pitch) { this.pitch = pitch; return this; @@ -86,13 +115,13 @@ public Location setPitch(double pitch) { @Override public String toString() { - return "Location (level=" + (this.isValid() ? this.getLevel().getName() : "null") + ", x=" + this.x + ", y=" + this.y + ", z=" + this.z + ", yaw=" + this.yaw + ", pitch=" + this.pitch + ")"; + return "Location (level=" + (this.isValid() ? this.getLevel().getName() : "null") + ", x=" + this.x + ", y=" + this.y + ", z=" + this.z + ", yaw=" + this.yaw + ", pitch=" + this.pitch + ", headYaw=" + this.headYaw + ")"; } @Nonnull @Override public Location getLocation() { - if (this.isValid()) return new Location(this.x, this.y, this.z, this.yaw, this.pitch, this.level); + if (this.isValid()) return new Location(this.x, this.y, this.z, this.yaw, this.pitch, this.headYaw, this.level); else throw new LevelException("Undefined Level reference"); } @@ -108,12 +137,12 @@ public Location add(double x, double y) { @Override public Location add(double x, double y, double z) { - return new Location(this.x + x, this.y + y, this.z + z, this.yaw, this.pitch, this.level); + return new Location(this.x + x, this.y + y, this.z + z, this.yaw, this.pitch, this.headYaw, this.level); } @Override public Location add(Vector3 x) { - return new Location(this.x + x.getX(), this.y + x.getY(), this.z + x.getZ(), this.yaw, this.pitch, this.level); + return new Location(this.x + x.getX(), this.y + x.getY(), this.z + x.getZ(), this.yaw, this.pitch, this.headYaw, this.level); } @Override @@ -143,32 +172,32 @@ public Location subtract(Vector3 x) { @Override public Location multiply(double number) { - return new Location(this.x * number, this.y * number, this.z * number, this.yaw, this.pitch, this.level); + return new Location(this.x * number, this.y * number, this.z * number, this.yaw, this.pitch, this.headYaw, this.level); } @Override public Location divide(double number) { - return new Location(this.x / number, this.y / number, this.z / number, this.yaw, this.pitch, this.level); + return new Location(this.x / number, this.y / number, this.z / number, this.yaw, this.pitch, this.headYaw, this.level); } @Override public Location ceil() { - return new Location((int) Math.ceil(this.x), (int) Math.ceil(this.y), (int) Math.ceil(this.z), this.yaw, this.pitch, this.level); + return new Location((int) Math.ceil(this.x), (int) Math.ceil(this.y), (int) Math.ceil(this.z), this.yaw, this.pitch, this.headYaw, this.level); } @Override public Location floor() { - return new Location(this.getFloorX(), this.getFloorY(), this.getFloorZ(), this.yaw, this.pitch, this.level); + return new Location(this.getFloorX(), this.getFloorY(), this.getFloorZ(), this.yaw, this.pitch, this.headYaw, this.level); } @Override public Location round() { - return new Location(Math.round(this.x), Math.round(this.y), Math.round(this.z), this.yaw, this.pitch, this.level); + return new Location(Math.round(this.x), Math.round(this.y), Math.round(this.z), this.yaw, this.pitch, this.headYaw, this.level); } @Override public Location abs() { - return new Location((int) Math.abs(this.x), (int) Math.abs(this.y), (int) Math.abs(this.z), this.yaw, this.pitch, this.level); + return new Location((int) Math.abs(this.x), (int) Math.abs(this.y), (int) Math.abs(this.z), this.yaw, this.pitch, this.headYaw, this.level); } public Vector3 getDirectionVector() { diff --git a/src/main/java/cn/nukkit/level/ParticleEffect.java b/src/main/java/cn/nukkit/level/ParticleEffect.java index b9a9c539dfe..dfdabca9cf7 100644 --- a/src/main/java/cn/nukkit/level/ParticleEffect.java +++ b/src/main/java/cn/nukkit/level/ParticleEffect.java @@ -23,6 +23,7 @@ public enum ParticleEffect { CAMERA_SHOOT_EXPLOSION("minecraft:camera_shoot_explosion"), CAMPFIRE_SMOKE("minecraft:campfire_smoke_particle"), CAMPFIRE_SMOKE_TALL("minecraft:campfire_tall_smoke_particle"), + @Since("1.6.0.0-PN") CANDLE_FLAME("minecraft:candle_flame_particle"), CAULDRONSPELL("minecraft:cauldron_spell_emitter"), CAULDRON_BUBBLE("minecraft:cauldron_bubble_particle"), CAULDRON_SPLASH("minecraft:cauldron_splash_particle"), @@ -32,6 +33,7 @@ public enum ParticleEffect { CONDUIT_ATTACK("minecraft:conduit_attack_emitter"), CRITICAL_HIT("minecraft:critical_hit_emitter"), @Since("1.3.0.0-PN") CROP_GROWTH("minecraft:crop_growth_emitter"), + @Since("1.6.0.0-PN") CROP_GROWTH_AREA("minecraft:crop_growth_area_emitter"), DOLPHIN_MOVE("minecraft:dolphin_move_particle"), DRAGON_BREATH_FIRE("minecraft:dragon_breath_fire"), DRAGON_BREATH_LINGERING("minecraft:dragon_breath_lingering"), @@ -39,6 +41,9 @@ public enum ParticleEffect { DRAGON_DEATH_EXPLOSION("minecraft:dragon_death_explosion_emitter"), DRAGON_DESTROY_BLOCK("minecraft:dragon_destroy_block"), DRAGON_DYING_EXPLOSION("minecraft:dragon_dying_explosion"), + @Since("1.6.0.0-PN") DRIPSTONE_LAVA_DRIP("minecraft:stalactite_lava_drip_particle"), + @Since("1.6.0.0-PN") DRIPSTONE_WATER_DRIP("minecraft:stalactite_water_drip_particle"), + @Since("1.6.0.0-PN") ELECTRIC_SPARK("minecraft:electric_spark_particle"), ENCHANTING_TABLE_PARTICLE("minecraft:enchanting_table_particle"), ENDROD("minecraft:endrod"), END_CHEST("minecraft:end_chest"), @@ -64,6 +69,7 @@ public enum ParticleEffect { FALLING_DUST_TOP_SNOW("minecraft:falling_dust_top_snow_particle"), FISH_HOOK("minecraft:fish_hook_particle"), FISH_POS("minecraft:fish_pos_particle"), + @Since("1.6.0.0-PN") GLOW("minecraft:glow_particle"), GUARDIAN_ATTACK("minecraft:guardian_attack_particle"), GUARDIAN_WATER_MOVE("minecraft:guardian_water_move_particle"), HEART("minecraft:heart_particle"), @@ -103,10 +109,13 @@ public enum ParticleEffect { RISING_BORDER_DUST("minecraft:rising_border_dust_particle"), SHULKER_BULLET("minecraft:shulker_bullet"), SILVERFISH_GRIEF("minecraft:silverfish_grief_emitter"), + @Since("1.6.0.0-PN") SNOWFLAKE("minecraft:snowflake_particle"), @Since("1.3.0.0-PN") SOUL("minecraft:soul_particle"), SPARKLER("minecraft:sparkler_emitter"), SPLASHPOTIONSPELL("minecraft:splash_spell_emitter"), SPONGE_ABSORB_BUBBLE("minecraft:sponge_absorb_water_particle"), + @Since("1.6.0.0-PN") SPORE_BLOSSOM_AMBIENT_BLOCK_ACTOR("minecraft:spore_blossom_ambient_particle"), + @Since("1.6.0.0-PN") SPORE_BLOSSOM_SHOWER("minecraft:spore_blossom_shower_particle"), SQUID_FLEE("minecraft:squid_flee_particle"), SQUID_INK_BUBBLE("minecraft:squid_ink_bubble"), SQUID_MOVE("minecraft:squid_move_particle"), @@ -123,6 +132,7 @@ public enum ParticleEffect { WATER_SPASH_MANUAL("minecraft:water_splash_particle_manual"), WATER_SPLASH("minecraft:water_splash_particle"), WATER_WAKE("minecraft:water_wake_particle"), + @Since("1.6.0.0-PN") WAX("minecraft:wax_particle"), WITHER_BOSS_INVULNERABLE("minecraft:wither_boss_invulnerable"); private final String identifier; diff --git a/src/main/java/cn/nukkit/level/Position.java b/src/main/java/cn/nukkit/level/Position.java index a51d9a0218b..e87b8730b3b 100644 --- a/src/main/java/cn/nukkit/level/Position.java +++ b/src/main/java/cn/nukkit/level/Position.java @@ -74,10 +74,12 @@ public boolean setWeak() { return false; } + @Override public Position getSide(BlockFace face) { return this.getSide(face, 1); } + @Override public Position getSide(BlockFace face, int step) { return Position.fromObject(super.getSide(face, step), getValidLevel()); } @@ -136,6 +138,7 @@ public Block getLevelBlock() { return getValidLevel().getBlock(this); } + @PowerNukkitOnly public Block getLevelBlockAtLayer(int layer) { return getValidLevel().getBlock(this, layer); } diff --git a/src/main/java/cn/nukkit/level/Sound.java b/src/main/java/cn/nukkit/level/Sound.java index 228ede388aa..a5ba990e452 100644 --- a/src/main/java/cn/nukkit/level/Sound.java +++ b/src/main/java/cn/nukkit/level/Sound.java @@ -1,7 +1,5 @@ package cn.nukkit.level; -import cn.nukkit.api.DeprecationDetails; -import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; /** @@ -11,6 +9,7 @@ public enum Sound { @Since("1.4.0.0-PN") AMBIENT_BASALT_DELTAS_ADDITIONS("ambient.basalt_deltas.additions"), @Since("1.4.0.0-PN") AMBIENT_BASALT_DELTAS_LOOP("ambient.basalt_deltas.loop"), AMBIENT_BASALT_DELTAS_MOOD("ambient.basalt_deltas.mood"), + @Since("1.6.0.0-PN") AMBIENT_CANDLE("ambient.candle"), AMBIENT_CAVE("ambient.cave"), @Since("1.4.0.0-PN") AMBIENT_CRIMSON_FOREST_ADDITIONS("ambient.crimson_forest.additions"), @Since("1.4.0.0-PN") AMBIENT_CRIMSON_FOREST_LOOP("ambient.crimson_forest.loop"), @@ -54,10 +53,12 @@ public enum Sound { BLOCK_BEEHIVE_WORK("block.beehive.work"), BLOCK_BELL_HIT("block.bell.hit"), BLOCK_BLASTFURNACE_FIRE_CRACKLE("block.blastfurnace.fire_crackle"), + @Since("1.6.0.0-PN") BLOCK_BOWHIT("block.bowhit"), BLOCK_CAMPFIRE_CRACKLE("block.campfire.crackle"), BLOCK_CARTOGRAPHY_TABLE_USE("block.cartography_table.use"), BLOCK_CHORUSFLOWER_DEATH("block.chorusflower.death"), BLOCK_CHORUSFLOWER_GROW("block.chorusflower.grow"), + @Since("1.6.0.0-PN") BLOCK_CLICK("block.click"), BLOCK_COMPOSTER_EMPTY("block.composter.empty"), BLOCK_COMPOSTER_FILL("block.composter.fill"), BLOCK_COMPOSTER_FILL_SUCCESS("block.composter.fill_success"), @@ -94,6 +95,20 @@ public enum Sound { BLOCK_TURTLE_EGG_CRACK("block.turtle_egg.crack"), BLOCK_TURTLE_EGG_DROP("block.turtle_egg.drop"), BOTTLE_DRAGONBREATH("bottle.dragonbreath"), + @Since("1.6.0.0-PN") BREAK_AMETHYST_BLOCK("break.amethyst_block"), + @Since("1.6.0.0-PN") BREAK_AMETHYST_CLUSTER("break.amethyst_cluster"), + @Since("1.6.0.0-PN") BREAK_AZALEA("break.azalea"), + @Since("1.6.0.0-PN") BREAK_BIG_DRIPLEAF("break.big_dripleaf"), + @Since("1.6.0.0-PN") BREAK_CALCITE("break.calcite"), + @Since("1.6.0.0-PN") BREAK_DIRT_WITH_ROOTS("break.dirt_with_roots"), + @Since("1.6.0.0-PN") BREAK_DRIPSTONE_BLOCK("break.dripstone_block"), + @Since("1.6.0.0-PN") BREAK_HANGING_ROOTS("break.hanging_roots"), + @Since("1.6.0.0-PN") BREAK_LARGE_AMETHYST_BUD("break.large_amethyst_bud"), + @Since("1.6.0.0-PN") BREAK_MEDIUM_AMETHYST_BUD("break.medium_amethyst_bud"), + @Since("1.6.0.0-PN") BREAK_POINTED_DRIPSTONE("break.pointed_dripstone"), + @Since("1.6.0.0-PN") BREAK_SMALL_AMETHYST_BUD("break.small_amethyst_bud"), + @Since("1.6.0.0-PN") BREAK_SPORE_BLOSSOM("break.spore_blossom"), + @Since("1.6.0.0-PN") BREAK_TUFF("break.tuff"), BUBBLE_DOWN("bubble.down"), BUBBLE_DOWNINSIDE("bubble.downinside"), BUBBLE_POP("bubble.pop"), @@ -101,10 +116,13 @@ public enum Sound { BUBBLE_UPINSIDE("bubble.upinside"), BUCKET_EMPTY_FISH("bucket.empty_fish"), BUCKET_EMPTY_LAVA("bucket.empty_lava"), + @Since("1.6.0.0-PN") BUCKET_EMPTY_POWDER_SNOW("bucket.empty_powder_snow"), BUCKET_EMPTY_WATER("bucket.empty_water"), BUCKET_FILL_FISH("bucket.fill_fish"), BUCKET_FILL_LAVA("bucket.fill_lava"), + @Since("1.6.0.0-PN") BUCKET_FILL_POWDER_SNOW("bucket.fill_powder_snow"), BUCKET_FILL_WATER("bucket.fill_water"), + @Since("1.6.0.0-PN") CAKE_ADD_CANDLE("cake.add_candle"), CAMERA_TAKE_PICTURE("camera.take_picture"), CAULDRON_ADDDYE("cauldron.adddye"), CAULDRON_CLEANARMOR("cauldron.cleanarmor"), @@ -115,11 +133,17 @@ public enum Sound { CAULDRON_FILLWATER("cauldron.fillwater"), CAULDRON_TAKEPOTION("cauldron.takepotion"), CAULDRON_TAKEWATER("cauldron.takewater"), + @Since("1.6.0.0-PN") CAULDRON_DRIP_LAVA_POINTED_DRIPSTONE("cauldron_drip.lava.pointed_dripstone"), + @Since("1.6.0.0-PN") CAULDRON_DRIP_WATER_POINTED_DRIPSTONE("cauldron_drip.water.pointed_dripstone"), + @Since("1.6.0.0-PN") CHIME_AMETHYST_BLOCK("chime.amethyst_block"), + @Since("1.6.0.0-PN") COMPONENT_JUMP_TO_BLOCK("component.jump_to_block"), CONDUIT_ACTIVATE("conduit.activate"), CONDUIT_AMBIENT("conduit.ambient"), CONDUIT_ATTACK("conduit.attack"), CONDUIT_DEACTIVATE("conduit.deactivate"), CONDUIT_SHORT("conduit.short"), + @Since("1.6.0.0-PN") COPPER_WAX_OFF("copper.wax.off"), + @Since("1.6.0.0-PN") COPPER_WAX_ON("copper.wax.on"), CROSSBOW_LOADING_END("crossbow.loading.end"), CROSSBOW_LOADING_MIDDLE("crossbow.loading.middle"), CROSSBOW_LOADING_START("crossbow.loading.start"), @@ -130,16 +154,23 @@ public enum Sound { DAMAGE_FALLBIG("damage.fallbig"), DAMAGE_FALLSMALL("damage.fallsmall"), DIG_ANCIENT_DEBRIS("dig.ancient_debris"), + @Since("1.6.0.0-PN") DIG_AZALEA_LEAVES("dig.azalea_leaves"), DIG_BASALT("dig.basalt"), DIG_BONE_BLOCK("dig.bone_block"), + @Since("1.6.0.0-PN") DIG_CANDLE("dig.candle"), + @Since("1.6.0.0-PN") DIG_CAVE_VINES("dig.cave_vines"), DIG_CHAIN("dig.chain"), DIG_CLOTH("dig.cloth"), + @Since("1.6.0.0-PN") DIG_COPPER("dig.copper"), DIG_CORAL("dig.coral"), + @Since("1.6.0.0-PN") DIG_DEEPSLATE("dig.deepslate"), + @Since("1.6.0.0-PN") DIG_DEEPSLATE_BRICKS("dig.deepslate_bricks"), DIG_FUNGUS("dig.fungus"), DIG_GRASS("dig.grass"), DIG_GRAVEL("dig.gravel"), DIG_HONEY_BLOCK("dig.honey_block"), DIG_LODESTONE("dig.lodestone"), + @Since("1.6.0.0-PN") DIG_MOSS("dig.moss"), DIG_NETHER_BRICK("dig.nether_brick"), DIG_NETHER_GOLD_ORE("dig.nether_gold_ore"), DIG_NETHER_SPROUTS("dig.nether_sprouts"), @@ -147,6 +178,7 @@ public enum Sound { DIG_NETHERITE("dig.netherite"), DIG_NETHERRACK("dig.netherrack"), DIG_NYLIUM("dig.nylium"), + @Since("1.6.0.0-PN") DIG_POWDER_SNOW("dig.powder_snow"), DIG_ROOTS("dig.roots"), DIG_SAND("dig.sand"), DIG_SHROOMLIGHT("dig.shroomlight"), @@ -157,19 +189,36 @@ public enum Sound { DIG_STONE("dig.stone"), DIG_VINES("dig.vines"), DIG_WOOD("dig.wood"), + @Since("1.6.0.0-PN") DRIP_LAVA_POINTED_DRIPSTONE("drip.lava.pointed_dripstone"), + @Since("1.6.0.0-PN") DRIP_WATER_POINTED_DRIPSTONE("drip.water.pointed_dripstone"), ELYTRA_LOOP("elytra.loop"), ENTITY_ZOMBIE_CONVERTED_TO_DROWNED("entity.zombie.converted_to_drowned"), + @Since("1.6.0.0-PN") EXTINGUISH_CANDLE("extinguish.candle"), + @Since("1.6.0.0-PN") FALL_AMETHYST_BLOCK("fall.amethyst_block"), + @Since("1.6.0.0-PN") FALL_AMETHYST_CLUSTER("fall.amethyst_cluster"), FALL_ANCIENT_DEBRIS("fall.ancient_debris"), + @Since("1.6.0.0-PN") FALL_AZALEA("fall.azalea"), + @Since("1.6.0.0-PN") FALL_AZALEA_LEAVES("fall.azalea_leaves"), FALL_BASALT("fall.basalt"), + @Since("1.6.0.0-PN") FALL_BIG_DRIPLEAF("fall.big_dripleaf"), FALL_BONE_BLOCK("fall.bone_block"), + @Since("1.6.0.0-PN") FALL_CALCITE("fall.calcite"), + @Since("1.6.0.0-PN") FALL_CAVE_VINES("fall.cave_vines"), FALL_CHAIN("fall.chain"), FALL_CLOTH("fall.cloth"), + @Since("1.6.0.0-PN") FALL_COPPER("fall.copper"), FALL_CORAL("fall.coral"), + @Since("1.6.0.0-PN") FALL_DEEPSLATE("fall.deepslate"), + @Since("1.6.0.0-PN") FALL_DEEPSLATE_BRICKS("fall.deepslate_bricks"), + @Since("1.6.0.0-PN") FALL_DIRT_WITH_ROOTS("fall.dirt_with_roots"), + @Since("1.6.0.0-PN") FALL_DRIPSTONE_BLOCK("fall.dripstone_block"), FALL_EGG("fall.egg"), FALL_GRASS("fall.grass"), FALL_GRAVEL("fall.gravel"), + @Since("1.6.0.0-PN") FALL_HANGING_ROOTS("fall.hanging_roots"), FALL_HONEY_BLOCK("fall.honey_block"), FALL_LADDER("fall.ladder"), + @Since("1.6.0.0-PN") FALL_MOSS("fall.moss"), FALL_NETHER_BRICK("fall.nether_brick"), FALL_NETHER_GOLD_ORE("fall.nether_gold_ore"), FALL_NETHER_SPROUTS("fall.nether_sprouts"), @@ -177,6 +226,8 @@ public enum Sound { FALL_NETHERITE("fall.netherite"), FALL_NETHERRACK("fall.netherrack"), FALL_NYLIUM("fall.nylium"), + @Since("1.6.0.0-PN") FALL_POINTED_DRIPSTONE("fall.pointed_dripstone"), + @Since("1.6.0.0-PN") FALL_POWDER_SNOW("fall.powder_snow"), FALL_ROOTS("fall.roots"), FALL_SAND("fall.sand"), FALL_SHROOMLIGHT("fall.shroomlight"), @@ -184,8 +235,10 @@ public enum Sound { FALL_SNOW("fall.snow"), FALL_SOUL_SAND("fall.soul_sand"), FALL_SOUL_SOIL("fall.soul_soil"), + @Since("1.6.0.0-PN") FALL_SPORE_BLOSSOM("fall.spore_blossom"), FALL_STEM("fall.stem"), FALL_STONE("fall.stone"), + @Since("1.6.0.0-PN") FALL_TUFF("fall.tuff"), FALL_VINES("fall.vines"), FALL_WOOD("fall.wood"), FIRE_FIRE("fire.fire"), @@ -199,17 +252,32 @@ public enum Sound { GAME_PLAYER_ATTACK_STRONG("game.player.attack.strong"), GAME_PLAYER_DIE("game.player.die"), GAME_PLAYER_HURT("game.player.hurt"), + @Since("1.6.0.0-PN") HIT_AMETHYST_BLOCK("hit.amethyst_block"), + @Since("1.6.0.0-PN") HIT_AMETHYST_CLUSTER("hit.amethyst_cluster"), HIT_ANCIENT_DEBRIS("hit.ancient_debris"), HIT_ANVIL("hit.anvil"), + @Since("1.6.0.0-PN") HIT_AZALEA("hit.azalea"), + @Since("1.6.0.0-PN") HIT_AZALEA_LEAVES("hit.azalea_leaves"), HIT_BASALT("hit.basalt"), + @Since("1.6.0.0-PN") HIT_BIG_DRIPLEAF("hit.big_dripleaf"), HIT_BONE_BLOCK("hit.bone_block"), + @Since("1.6.0.0-PN") HIT_CALCITE("hit.calcite"), + @Since("1.6.0.0-PN") HIT_CANDLE("hit.candle"), + @Since("1.6.0.0-PN") HIT_CAVE_VINES("hit.cave_vines"), HIT_CHAIN("hit.chain"), HIT_CLOTH("hit.cloth"), + @Since("1.6.0.0-PN") HIT_COPPER("hit.copper"), HIT_CORAL("hit.coral"), + @Since("1.6.0.0-PN") HIT_DEEPSLATE("hit.deepslate"), + @Since("1.6.0.0-PN") HIT_DEEPSLATE_BRICKS("hit.deepslate_bricks"), + @Since("1.6.0.0-PN") HIT_DIRT_WITH_ROOTS("hit.dirt_with_roots"), + @Since("1.6.0.0-PN") HIT_DRIPSTONE_BLOCK("hit.dripstone_block"), HIT_GRASS("hit.grass"), HIT_GRAVEL("hit.gravel"), + @Since("1.6.0.0-PN") HIT_HANGING_ROOTS("hit.hanging_roots"), HIT_HONEY_BLOCK("hit.honey_block"), HIT_LADDER("hit.ladder"), + @Since("1.6.0.0-PN") HIT_MOSS("hit.moss"), HIT_NETHER_BRICK("hit.nether_brick"), HIT_NETHER_GOLD_ORE("hit.nether_gold_ore"), HIT_NETHER_SPROUTS("hit.nether_sprouts"), @@ -217,6 +285,8 @@ public enum Sound { HIT_NETHERITE("hit.netherite"), HIT_NETHERRACK("hit.netherrack"), HIT_NYLIUM("hit.nylium"), + @Since("1.6.0.0-PN") HIT_POINTED_DRIPSTONE("hit.pointed_dripstone"), + @Since("1.6.0.0-PN") HIT_POWDER_SNOW("hit.powder_snow"), HIT_ROOTS("hit.roots"), HIT_SAND("hit.sand"), HIT_SHROOMLIGHT("hit.shroomlight"), @@ -224,13 +294,18 @@ public enum Sound { HIT_SNOW("hit.snow"), HIT_SOUL_SAND("hit.soul_sand"), HIT_SOUL_SOIL("hit.soul_soil"), + @Since("1.6.0.0-PN") HIT_SPORE_BLOSSOM("hit.spore_blossom"), HIT_STEM("hit.stem"), HIT_STONE("hit.stone"), + @Since("1.6.0.0-PN") HIT_TUFF("hit.tuff"), HIT_VINES("hit.vines"), HIT_WOOD("hit.wood"), + @Since("1.6.0.0-PN") ITEM_BONE_MEAL_USE("item.bone_meal.use"), ITEM_BOOK_PAGE_TURN("item.book.page_turn"), ITEM_BOOK_PUT("item.book.put"), ITEM_SHIELD_BLOCK("item.shield.block"), + @Since("1.6.0.0-PN") ITEM_SPYGLASS_STOP_USING("item.spyglass.stop_using"), + @Since("1.6.0.0-PN") ITEM_SPYGLASS_USE("item.spyglass.use"), ITEM_TRIDENT_HIT("item.trident.hit"), ITEM_TRIDENT_HIT_GROUND("item.trident.hit_ground"), ITEM_TRIDENT_RETURN("item.trident.return"), @@ -240,14 +315,23 @@ public enum Sound { ITEM_TRIDENT_THROW("item.trident.throw"), ITEM_TRIDENT_THUNDER("item.trident.thunder"), JUMP_ANCIENT_DEBRIS("jump.ancient_debris"), + @Since("1.6.0.0-PN") JUMP_AZALEA("jump.azalea"), JUMP_BASALT("jump.basalt"), + @Since("1.6.0.0-PN") JUMP_BIG_DRIPLEAF("jump.big_dripleaf"), JUMP_BONE_BLOCK("jump.bone_block"), + @Since("1.6.0.0-PN") JUMP_CAVE_VINES("jump.cave_vines"), JUMP_CHAIN("jump.chain"), JUMP_CLOTH("jump.cloth"), JUMP_CORAL("jump.coral"), + @Since("1.6.0.0-PN") JUMP_DEEPSLATE("jump.deepslate"), + @Since("1.6.0.0-PN") JUMP_DEEPSLATE_BRICKS("jump.deepslate_bricks"), + @Since("1.6.0.0-PN") JUMP_DIRT_WITH_ROOTS("jump.dirt_with_roots"), + @Since("1.6.0.0-PN") JUMP_DRIPSTONE_BLOCK("jump.dripstone_block"), JUMP_GRASS("jump.grass"), JUMP_GRAVEL("jump.gravel"), + @Since("1.6.0.0-PN") JUMP_HANGING_ROOTS("jump.hanging_roots"), JUMP_HONEY_BLOCK("jump.honey_block"), + @Since("1.6.0.0-PN") JUMP_MOSS("jump.moss"), JUMP_NETHER_BRICK("jump.nether_brick"), JUMP_NETHER_GOLD_ORE("jump.nether_gold_ore"), JUMP_NETHER_SPROUTS("jump.nether_sprouts"), @@ -255,6 +339,7 @@ public enum Sound { JUMP_NETHERITE("jump.netherite"), JUMP_NETHERRACK("jump.netherrack"), JUMP_NYLIUM("jump.nylium"), + @Since("1.6.0.0-PN") JUMP_POINTED_DRIPSTONE("jump.pointed_dripstone"), JUMP_ROOTS("jump.roots"), JUMP_SAND("jump.sand"), JUMP_SHROOMLIGHT("jump.shroomlight"), @@ -262,19 +347,29 @@ public enum Sound { JUMP_SNOW("jump.snow"), JUMP_SOUL_SAND("jump.soul_sand"), JUMP_SOUL_SOIL("jump.soul_soil"), + @Since("1.6.0.0-PN") JUMP_SPORE_BLOSSOM("jump.spore_blossom"), JUMP_STEM("jump.stem"), JUMP_STONE("jump.stone"), JUMP_VINES("jump.vines"), JUMP_WOOD("jump.wood"), LAND_ANCIENT_DEBRIS("land.ancient_debris"), + @Since("1.6.0.0-PN") LAND_AZALEA("land.azalea"), LAND_BASALT("land.basalt"), + @Since("1.6.0.0-PN") LAND_BIG_DRIPLEAF("land.big_dripleaf"), LAND_BONE_BLOCK("land.bone_block"), + @Since("1.6.0.0-PN") LAND_CAVE_VINES("land.cave_vines"), LAND_CHAIN("land.chain"), LAND_CLOTH("land.cloth"), LAND_CORAL("land.coral"), + @Since("1.6.0.0-PN") LAND_DEEPSLATE("land.deepslate"), + @Since("1.6.0.0-PN") LAND_DEEPSLATE_BRICKS("land.deepslate_bricks"), + @Since("1.6.0.0-PN") LAND_DIRT_WITH_ROOTS("land.dirt_with_roots"), + @Since("1.6.0.0-PN") LAND_DRIPSTONE_BLOCK("land.dripstone_block"), LAND_GRASS("land.grass"), LAND_GRAVEL("land.gravel"), + @Since("1.6.0.0-PN") LAND_HANGING_ROOTS("land.hanging_roots"), LAND_HONEY_BLOCK("land.honey_block"), + @Since("1.6.0.0-PN") LAND_MOSS("land.moss"), LAND_NETHER_BRICK("land.nether_brick"), LAND_NETHER_GOLD_ORE("land.nether_gold_ore"), LAND_NETHER_SPROUTS("land.nether_sprouts"), @@ -282,6 +377,7 @@ public enum Sound { LAND_NETHERITE("land.netherite"), LAND_NETHERRACK("land.netherrack"), LAND_NYLIUM("land.nylium"), + @Since("1.6.0.0-PN") LAND_POINTED_DRIPSTONE("land.pointed_dripstone"), LAND_ROOTS("land.roots"), LAND_SAND("land.sand"), LAND_SHROOMLIGHT("land.shroomlight"), @@ -289,6 +385,7 @@ public enum Sound { LAND_SNOW("land.snow"), LAND_SOUL_SAND("land.soul_sand"), LAND_SOUL_SOIL("land.soul_soil"), + @Since("1.6.0.0-PN") LAND_SPORE_BLOSSOM("land.spore_blossom"), LAND_STEM("land.stem"), LAND_STONE("land.stone"), LAND_VINES("land.vines"), @@ -306,6 +403,13 @@ public enum Sound { MOB_ARMOR_STAND_HIT("mob.armor_stand.hit"), MOB_ARMOR_STAND_LAND("mob.armor_stand.land"), MOB_ARMOR_STAND_PLACE("mob.armor_stand.place"), + @Since("1.6.0.0-PN") MOB_AXOLOTL_ATTACK("mob.axolotl.attack"), + @Since("1.6.0.0-PN") MOB_AXOLOTL_DEATH("mob.axolotl.death"), + @Since("1.6.0.0-PN") MOB_AXOLOTL_HURT("mob.axolotl.hurt"), + @Since("1.6.0.0-PN") MOB_AXOLOTL_IDLE("mob.axolotl.idle"), + @Since("1.6.0.0-PN") MOB_AXOLOTL_IDLE_WATER("mob.axolotl.idle_water"), + @Since("1.6.0.0-PN") MOB_AXOLOTL_SPLASH("mob.axolotl.splash"), + @Since("1.6.0.0-PN") MOB_AXOLOTL_SWIM("mob.axolotl.swim"), MOB_BAT_DEATH("mob.bat.death"), MOB_BAT_HURT("mob.bat.hurt"), MOB_BAT_IDLE("mob.bat.idle"), @@ -404,6 +508,23 @@ public enum Sound { MOB_GHAST_FIREBALL("mob.ghast.fireball"), MOB_GHAST_MOAN("mob.ghast.moan"), MOB_GHAST_SCREAM("mob.ghast.scream"), + @Since("1.6.0.0-PN") MOB_GLOW_SQUID_AMBIENT("mob.glow_squid.ambient"), + @Since("1.6.0.0-PN") MOB_GLOW_SQUID_DEATH("mob.glow_squid.death"), + @Since("1.6.0.0-PN") MOB_GLOW_SQUID_HURT("mob.glow_squid.hurt"), + @Since("1.6.0.0-PN") MOB_GLOW_SQUID_INK_SQUIRT("mob.glow_squid.ink_squirt"), + @Since("1.6.0.0-PN") MOB_GOAT_AMBIENT("mob.goat.ambient"), + @Since("1.6.0.0-PN") MOB_GOAT_AMBIENT_SCREAMER("mob.goat.ambient.screamer"), + @Since("1.6.0.0-PN") MOB_GOAT_DEATH("mob.goat.death"), + @Since("1.6.0.0-PN") MOB_GOAT_DEATH_SCREAMER("mob.goat.death.screamer"), + @Since("1.6.0.0-PN") MOB_GOAT_EAT("mob.goat.eat"), + @Since("1.6.0.0-PN") MOB_GOAT_HURT("mob.goat.hurt"), + @Since("1.6.0.0-PN") MOB_GOAT_HURT_SCREAMER("mob.goat.hurt.screamer"), + @Since("1.6.0.0-PN") MOB_GOAT_MILK_SCREAMER("mob.goat.milk.screamer"), + @Since("1.6.0.0-PN") MOB_GOAT_PREPARE_RAM("mob.goat.prepare_ram"), + @Since("1.6.0.0-PN") MOB_GOAT_PREPARE_RAM_SCREAMER("mob.goat.prepare_ram.screamer"), + @Since("1.6.0.0-PN") MOB_GOAT_RAM_IMPACT("mob.goat.ram_impact"), + @Since("1.6.0.0-PN") MOB_GOAT_RAM_IMPACT_SCREAMER("mob.goat.ram_impact.screamer"), + @Since("1.6.0.0-PN") MOB_GOAT_STEP("mob.goat.step"), MOB_GUARDIAN_AMBIENT("mob.guardian.ambient"), MOB_GUARDIAN_ATTACK_LOOP("mob.guardian.attack_loop"), MOB_GUARDIAN_DEATH("mob.guardian.death"), @@ -515,6 +636,9 @@ public enum Sound { MOB_PILLAGER_DEATH("mob.pillager.death"), MOB_PILLAGER_HURT("mob.pillager.hurt"), MOB_PILLAGER_IDLE("mob.pillager.idle"), + @Since("1.6.0.0-PN") MOB_PLAYER_HURT_DROWN("mob.player.hurt_drown"), + @Since("1.6.0.0-PN") MOB_PLAYER_HURT_FREEZE("mob.player.hurt_freeze"), + @Since("1.6.0.0-PN") MOB_PLAYER_HURT_ON_FIRE("mob.player.hurt_on_fire"), MOB_POLARBEAR_DEATH("mob.polarbear.death"), MOB_POLARBEAR_HURT("mob.polarbear.hurt"), MOB_POLARBEAR_IDLE("mob.polarbear.idle"), @@ -549,6 +673,7 @@ public enum Sound { MOB_SILVERFISH_KILL("mob.silverfish.kill"), MOB_SILVERFISH_SAY("mob.silverfish.say"), MOB_SILVERFISH_STEP("mob.silverfish.step"), + @Since("1.6.0.0-PN") MOB_SKELETON_CONVERT_TO_STRAY("mob.skeleton.convert_to_stray"), MOB_SKELETON_DEATH("mob.skeleton.death"), MOB_SKELETON_HURT("mob.skeleton.hurt"), MOB_SKELETON_SAY("mob.skeleton.say"), @@ -569,6 +694,7 @@ public enum Sound { MOB_SQUID_AMBIENT("mob.squid.ambient"), MOB_SQUID_DEATH("mob.squid.death"), MOB_SQUID_HURT("mob.squid.hurt"), + @Since("1.6.0.0-PN") MOB_SQUID_INK_SQUIRT("mob.squid.ink_squirt"), MOB_STRAY_AMBIENT("mob.stray.ambient"), MOB_STRAY_DEATH("mob.stray.death"), MOB_STRAY_HURT("mob.stray.hurt"), @@ -636,19 +762,9 @@ public enum Sound { MOB_WOLF_WHINE("mob.wolf.whine"), @Since("1.4.0.0-PN") MOB_ZOGLIN_ANGRY("mob.zoglin.angry"), @Since("1.4.0.0-PN") MOB_ZOGLIN_ATTACK("mob.zoglin.attack"), - - @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", reason = "Removed from Nukkit") - @PowerNukkitOnly("Re-added for backward compatibility. Actual removal reason is unknown.") - MOB_ZOGLIN_BOOST("mob.zoglin.boost"), - MOB_ZOGLIN_DEATH("mob.zoglin.death"), @Since("1.4.0.0-PN") MOB_ZOGLIN_HURT("mob.zoglin.hurt"), @Since("1.4.0.0-PN") MOB_ZOGLIN_IDLE("mob.zoglin.idle"), - - @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", reason = "Removed from Nukkit") - @PowerNukkitOnly("Re-added for backward compatibility. Actual removal reason is unknown.") - MOB_ZOGLIN_SAY("mob.zoglin.say"), - MOB_ZOGLIN_STEP("mob.zoglin.step"), MOB_ZOMBIE_DEATH("mob.zombie.death"), MOB_ZOMBIE_HURT("mob.zombie.hurt"), @@ -666,14 +782,25 @@ public enum Sound { MOB_ZOMBIEPIG_ZPIGDEATH("mob.zombiepig.zpigdeath"), MOB_ZOMBIEPIG_ZPIGHURT("mob.zombiepig.zpighurt"), MUSIC_GAME("music.game"), + @Since("1.6.0.0-PN") MUSIC_GAME_BASALT_DELTAS("music.game.basalt_deltas"), MUSIC_GAME_CREATIVE("music.game.creative"), MUSIC_GAME_CREDITS("music.game.credits"), MUSIC_GAME_CRIMSON_FOREST("music.game.crimson_forest"), + @Since("1.6.0.0-PN") MUSIC_GAME_DRIPSTONE_CAVES("music.game.dripstone_caves"), MUSIC_GAME_END("music.game.end"), MUSIC_GAME_ENDBOSS("music.game.endboss"), + @Since("1.6.0.0-PN") MUSIC_GAME_FROZEN_PEAKS("music.game.frozen_peaks"), + @Since("1.6.0.0-PN") MUSIC_GAME_GROVE("music.game.grove"), + @Since("1.6.0.0-PN") MUSIC_GAME_JAGGED_PEAKS("music.game.jagged_peaks"), + @Since("1.6.0.0-PN") MUSIC_GAME_LUSH_CAVES("music.game.lush_caves"), + @Since("1.6.0.0-PN") MUSIC_GAME_MEADOW("music.game.meadow"), MUSIC_GAME_NETHER("music.game.nether"), MUSIC_GAME_NETHER_WASTES("music.game.nether_wastes"), + @Since("1.6.0.0-PN") MUSIC_GAME_SNOWY_SLOPES("music.game.snowy_slopes"), + @Since("1.6.0.0-PN") MUSIC_GAME_SOUL_SAND_VALLEY("music.game.soul_sand_valley"), MUSIC_GAME_SOULSAND_VALLEY("music.game.soulsand_valley"), + @Since("1.6.0.0-PN") MUSIC_GAME_STONY_PEAKS("music.game.stony_peaks"), + @Since("1.6.0.0-PN") MUSIC_GAME_WARPED_FOREST("music.game.warped_forest"), MUSIC_GAME_WATER("music.game.water"), MUSIC_MENU("music.menu"), NOTE_BANJO("note.banjo"), @@ -694,6 +821,27 @@ public enum Sound { NOTE_SNARE("note.snare"), NOTE_XYLOPHONE("note.xylophone"), PARTICLE_SOUL_ESCAPE("particle.soul_escape"), + @Since("1.6.0.0-PN") PICK_BERRIES_CAVE_VINES("pick_berries.cave_vines"), + @Since("1.6.0.0-PN") PLACE_AMETHYST_BLOCK("place.amethyst_block"), + @Since("1.6.0.0-PN") PLACE_AMETHYST_CLUSTER("place.amethyst_cluster"), + @Since("1.6.0.0-PN") PLACE_AZALEA("place.azalea"), + @Since("1.6.0.0-PN") PLACE_AZALEA_LEAVES("place.azalea_leaves"), + @Since("1.6.0.0-PN") PLACE_BIG_DRIPLEAF("place.big_dripleaf"), + @Since("1.6.0.0-PN") PLACE_CALCITE("place.calcite"), + @Since("1.6.0.0-PN") PLACE_COPPER("place.copper"), + @Since("1.6.0.0-PN") PLACE_DEEPSLATE("place.deepslate"), + @Since("1.6.0.0-PN") PLACE_DEEPSLATE_BRICKS("place.deepslate_bricks"), + @Since("1.6.0.0-PN") PLACE_DIRT_WITH_ROOTS("place.dirt_with_roots"), + @Since("1.6.0.0-PN") PLACE_DRIPSTONE_BLOCK("place.dripstone_block"), + @Since("1.6.0.0-PN") PLACE_HANGING_ROOTS("place.hanging_roots"), + @Since("1.6.0.0-PN") PLACE_LARGE_AMETHYST_BUD("place.large_amethyst_bud"), + @Since("1.6.0.0-PN") PLACE_MEDIUM_AMETHYST_BUD("place.medium_amethyst_bud"), + @Since("1.6.0.0-PN") PLACE_MOSS("place.moss"), + @Since("1.6.0.0-PN") PLACE_POINTED_DRIPSTONE("place.pointed_dripstone"), + @Since("1.6.0.0-PN") PLACE_POWDER_SNOW("place.powder_snow"), + @Since("1.6.0.0-PN") PLACE_SMALL_AMETHYST_BUD("place.small_amethyst_bud"), + @Since("1.6.0.0-PN") PLACE_SPORE_BLOSSOM("place.spore_blossom"), + @Since("1.6.0.0-PN") PLACE_TUFF("place.tuff"), PORTAL_PORTAL("portal.portal"), PORTAL_TRAVEL("portal.travel"), PORTAL_TRIGGER("portal.trigger"), @@ -740,49 +888,45 @@ public enum Sound { RECORD_FAR("record.far"), RECORD_MALL("record.mall"), RECORD_MELLOHI("record.mellohi"), + @Since("1.6.0.0-PN") RECORD_OTHERSIDE("record.otherside"), RECORD_PIGSTEP("record.pigstep"), RECORD_STAL("record.stal"), RECORD_STRAD("record.strad"), RECORD_WAIT("record.wait"), - - @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", reason = "Removed from Nukkit") - @PowerNukkitOnly("Re-added for backward compatibility. Actual removal reason is unknown.") - BLOCK_LECTERN_PLACE("block.lectern.place"), - - @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", reason = "Removed from Nukkit") - @PowerNukkitOnly("Re-added for backward compatibility. Actual removal reason is unknown.") - BLOCK_LECTERN_BREAK("block.lectern.break"), - - @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", reason = "Removed from Nukkit") - @PowerNukkitOnly("Re-added for backward compatibility. Actual removal reason is unknown.") - BLOCK_LECTERN_HIT("block.lectern.hit"), - - @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", reason = "Removed from Nukkit") - @PowerNukkitOnly("Re-added for backward compatibility. Actual removal reason is unknown.") - BLOCK_LECTERN_STEP("block.lectern.step"), - - @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", reason = "Removed from Nukkit") - @PowerNukkitOnly("Re-added for backward compatibility. Actual removal reason is unknown.") - BLOCK_LECTERN_FALL("block.lectern.fall"), - RECORD_WARD("record.ward"), RESPAWN_ANCHOR_AMBIENT("respawn_anchor.ambient"), RESPAWN_ANCHOR_CHARGE("respawn_anchor.charge"), RESPAWN_ANCHOR_DEPLETE("respawn_anchor.deplete"), RESPAWN_ANCHOR_SET_SPAWN("respawn_anchor.set_spawn"), + @Since("1.6.0.0-PN") SCRAPE("scrape"), @Since("1.4.0.0-PN") SIGN_DYE_USE("sign.dye.use"), @Since("1.4.0.0-PN") SIGN_INK_SAC_USE("sign.ink_sac.use"), SMITHING_TABLE_USE("smithing_table.use"), + @Since("1.6.0.0-PN") STEP_AMETHYST_BLOCK("step.amethyst_block"), + @Since("1.6.0.0-PN") STEP_AMETHYST_CLUSTER("step.amethyst_cluster"), STEP_ANCIENT_DEBRIS("step.ancient_debris"), + @Since("1.6.0.0-PN") STEP_AZALEA("step.azalea"), + @Since("1.6.0.0-PN") STEP_AZALEA_LEAVES("step.azalea_leaves"), STEP_BASALT("step.basalt"), + @Since("1.6.0.0-PN") STEP_BIG_DRIPLEAF("step.big_dripleaf"), STEP_BONE_BLOCK("step.bone_block"), + @Since("1.6.0.0-PN") STEP_CALCITE("step.calcite"), + @Since("1.6.0.0-PN") STEP_CANDLE("step.candle"), + @Since("1.6.0.0-PN") STEP_CAVE_VINES("step.cave_vines"), STEP_CHAIN("step.chain"), STEP_CLOTH("step.cloth"), + @Since("1.6.0.0-PN") STEP_COPPER("step.copper"), STEP_CORAL("step.coral"), + @Since("1.6.0.0-PN") STEP_DEEPSLATE("step.deepslate"), + @Since("1.6.0.0-PN") STEP_DEEPSLATE_BRICKS("step.deepslate_bricks"), + @Since("1.6.0.0-PN") STEP_DIRT_WITH_ROOTS("step.dirt_with_roots"), + @Since("1.6.0.0-PN") STEP_DRIPSTONE_BLOCK("step.dripstone_block"), STEP_GRASS("step.grass"), STEP_GRAVEL("step.gravel"), + @Since("1.6.0.0-PN") STEP_HANGING_ROOTS("step.hanging_roots"), STEP_HONEY_BLOCK("step.honey_block"), STEP_LADDER("step.ladder"), + @Since("1.6.0.0-PN") STEP_MOSS("step.moss"), STEP_NETHER_BRICK("step.nether_brick"), STEP_NETHER_GOLD_ORE("step.nether_gold_ore"), STEP_NETHER_SPROUTS("step.nether_sprouts"), @@ -790,6 +934,8 @@ public enum Sound { STEP_NETHERITE("step.netherite"), STEP_NETHERRACK("step.netherrack"), STEP_NYLIUM("step.nylium"), + @Since("1.6.0.0-PN") STEP_POINTED_DRIPSTONE("step.pointed_dripstone"), + @Since("1.6.0.0-PN") STEP_POWDER_SNOW("step.powder_snow"), STEP_ROOTS("step.roots"), STEP_SAND("step.sand"), STEP_SHROOMLIGHT("step.shroomlight"), @@ -797,12 +943,16 @@ public enum Sound { STEP_SNOW("step.snow"), STEP_SOUL_SAND("step.soul_sand"), STEP_SOUL_SOIL("step.soul_soil"), + @Since("1.6.0.0-PN") STEP_SPORE_BLOSSOM("step.spore_blossom"), STEP_STEM("step.stem"), STEP_STONE("step.stone"), + @Since("1.6.0.0-PN") STEP_TUFF("step.tuff"), STEP_VINES("step.vines"), STEP_WOOD("step.wood"), TILE_PISTON_IN("tile.piston.in"), TILE_PISTON_OUT("tile.piston.out"), + @Since("1.6.0.0-PN") TILT_DOWN_BIG_DRIPLEAF("tilt_down.big_dripleaf"), + @Since("1.6.0.0-PN") TILT_UP_BIG_DRIPLEAF("tilt_up.big_dripleaf"), UI_CARTOGRAPHY_TABLE_TAKE_RESULT("ui.cartography_table.take_result"), UI_LOOM_SELECT_PATTERN("ui.loom.select_pattern"), UI_LOOM_TAKE_RESULT("ui.loom.take_result"), @@ -810,13 +960,22 @@ public enum Sound { USE_ANCIENT_DEBRIS("use.ancient_debris"), USE_BASALT("use.basalt"), USE_BONE_BLOCK("use.bone_block"), + @Since("1.6.0.0-PN") USE_CANDLE("use.candle"), + @Since("1.6.0.0-PN") USE_CAVE_VINES("use.cave_vines"), USE_CHAIN("use.chain"), USE_CLOTH("use.cloth"), + @Since("1.6.0.0-PN") USE_COPPER("use.copper"), USE_CORAL("use.coral"), + @Since("1.6.0.0-PN") USE_DEEPSLATE("use.deepslate"), + @Since("1.6.0.0-PN") USE_DEEPSLATE_BRICKS("use.deepslate_bricks"), + @Since("1.6.0.0-PN") USE_DIRT_WITH_ROOTS("use.dirt_with_roots"), + @Since("1.6.0.0-PN") USE_DRIPSTONE_BLOCK("use.dripstone_block"), USE_GRASS("use.grass"), USE_GRAVEL("use.gravel"), + @Since("1.6.0.0-PN") USE_HANGING_ROOTS("use.hanging_roots"), USE_HONEY_BLOCK("use.honey_block"), USE_LADDER("use.ladder"), + @Since("1.6.0.0-PN") USE_MOSS("use.moss"), USE_NETHER_BRICK("use.nether_brick"), USE_NETHER_GOLD_ORE("use.nether_gold_ore"), USE_NETHER_SPROUTS("use.nether_sprouts"), @@ -824,6 +983,7 @@ public enum Sound { USE_NETHERITE("use.netherite"), USE_NETHERRACK("use.netherrack"), USE_NYLIUM("use.nylium"), + @Since("1.6.0.0-PN") USE_POINTED_DRIPSTONE("use.pointed_dripstone"), USE_ROOTS("use.roots"), USE_SAND("use.sand"), USE_SHROOMLIGHT("use.shroomlight"), @@ -831,6 +991,7 @@ public enum Sound { USE_SNOW("use.snow"), USE_SOUL_SAND("use.soul_sand"), USE_SOUL_SOIL("use.soul_soil"), + @Since("1.6.0.0-PN") USE_SPORE_BLOSSOM("use.spore_blossom"), USE_STEM("use.stem"), USE_STONE("use.stone"), USE_VINES("use.vines"), diff --git a/src/main/java/cn/nukkit/level/biome/Biome.java b/src/main/java/cn/nukkit/level/biome/Biome.java index 57b7bfa4c54..bab9a2ce88d 100644 --- a/src/main/java/cn/nukkit/level/biome/Biome.java +++ b/src/main/java/cn/nukkit/level/biome/Biome.java @@ -7,7 +7,15 @@ import cn.nukkit.level.format.FullChunk; import cn.nukkit.level.generator.populator.type.Populator; import cn.nukkit.math.NukkitRandom; - +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import it.unimi.dsi.fastutil.ints.Int2ObjectMap; +import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; + +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; @@ -15,15 +23,40 @@ * @author MagicDroidX (Nukkit Project) */ public abstract class Biome implements BlockID { + public static final int MAX_BIOMES = 256; public static final Biome[] biomes = new Biome[MAX_BIOMES]; - public static final List unorderedBiomes = new ArrayList<>(); + public static final List unorderedBiomes = new ObjectArrayList<>(); + private static final Int2ObjectMap runtimeId2Identifier = new Int2ObjectOpenHashMap<>(); private final ArrayList populators = new ArrayList<>(); private int id; private float baseHeight = 0.1f; private float heightVariation = 0.3f; + static { + try (InputStream stream = Biome.class.getClassLoader().getResourceAsStream("biome_id_map.json")) { + JsonObject json = JsonParser.parseReader(new InputStreamReader(stream)).getAsJsonObject(); + for (String identifier : json.keySet()) { + int biomeId = json.get(identifier).getAsInt(); + runtimeId2Identifier.put(biomeId, identifier); + } + } catch (NullPointerException | IOException e) { + throw new AssertionError("Unable to load biome mapping from biome_id_map.json", e); + } + } + + public static String getBiomeNameFromId(int biomeId) { + return runtimeId2Identifier.get(biomeId); + } + + public static int getBiomeIdOrCorrect(int biomeId) { + if (runtimeId2Identifier.get(biomeId) == null) { + return EnumBiome.OCEAN.id; + } + return biomeId; + } + protected static void register(int id, Biome biome) { biome.setId(id); biomes[id] = biome; diff --git a/src/main/java/cn/nukkit/level/biome/impl/beach/ColdBeachBiome.java b/src/main/java/cn/nukkit/level/biome/impl/beach/ColdBeachBiome.java index b3202b7c771..ebe993d6755 100644 --- a/src/main/java/cn/nukkit/level/biome/impl/beach/ColdBeachBiome.java +++ b/src/main/java/cn/nukkit/level/biome/impl/beach/ColdBeachBiome.java @@ -1,6 +1,6 @@ package cn.nukkit.level.biome.impl.beach; -import cn.nukkit.api.RemovedFromNewRakNet; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.level.biome.type.SandyBiome; import cn.nukkit.level.generator.populator.impl.WaterIcePopulator; @@ -15,8 +15,8 @@ public ColdBeachBiome() { } @Since("1.4.0.0-PN") + @PowerNukkitOnly @Override - @RemovedFromNewRakNet public int getCoverBlock() { if (useNewRakNetCover()) { return getCoverId(0,0) >> 4; diff --git a/src/main/java/cn/nukkit/level/biome/impl/extremehills/ExtremeHillsMBiome.java b/src/main/java/cn/nukkit/level/biome/impl/extremehills/ExtremeHillsMBiome.java index ea0a863c759..5a12def909d 100644 --- a/src/main/java/cn/nukkit/level/biome/impl/extremehills/ExtremeHillsMBiome.java +++ b/src/main/java/cn/nukkit/level/biome/impl/extremehills/ExtremeHillsMBiome.java @@ -1,6 +1,5 @@ package cn.nukkit.level.biome.impl.extremehills; -import cn.nukkit.api.NewRakNetOnly; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.blockstate.BlockState; @@ -42,13 +41,11 @@ public BlockState getSurfaceState(int x, int y, int z) { return gravelNoise.noise2D(x, z, true) < -0.75f ? STATE_GRAVEL : STATE_GRASS; } - @NewRakNetOnly @Override public int getSurfaceDepth(int x, int y, int z) { return gravelNoise.noise2D(x, z, true) < -0.75f ? 4 : 1; } - @NewRakNetOnly @Override public int getGroundDepth(int x, int y, int z) { return gravelNoise.noise2D(x, z, true) < -0.75f ? 0 : 4; diff --git a/src/main/java/cn/nukkit/level/biome/impl/extremehills/StoneBeachBiome.java b/src/main/java/cn/nukkit/level/biome/impl/extremehills/StoneBeachBiome.java index 92ac0db5b66..796d75cf0bd 100644 --- a/src/main/java/cn/nukkit/level/biome/impl/extremehills/StoneBeachBiome.java +++ b/src/main/java/cn/nukkit/level/biome/impl/extremehills/StoneBeachBiome.java @@ -1,6 +1,6 @@ package cn.nukkit.level.biome.impl.extremehills; -import cn.nukkit.api.RemovedFromNewRakNet; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.level.biome.type.CoveredBiome; @@ -17,7 +17,7 @@ public StoneBeachBiome() { this.setHeightVariation(0.8f); } - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") @Override public int getSurfaceDepth(int y) { @@ -27,7 +27,7 @@ public int getSurfaceDepth(int y) { return 0; } - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") @Override public int getSurfaceBlock(int y) { @@ -37,7 +37,7 @@ public int getSurfaceBlock(int y) { return 0; } - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") @Override public int getGroundDepth(int y) { @@ -47,7 +47,7 @@ public int getGroundDepth(int y) { return 0; } - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") @Override public int getGroundBlock(int y) { diff --git a/src/main/java/cn/nukkit/level/biome/impl/forest/FlowerForestBiome.java b/src/main/java/cn/nukkit/level/biome/impl/forest/FlowerForestBiome.java index 2a8a58f923d..93d05906858 100644 --- a/src/main/java/cn/nukkit/level/biome/impl/forest/FlowerForestBiome.java +++ b/src/main/java/cn/nukkit/level/biome/impl/forest/FlowerForestBiome.java @@ -27,6 +27,8 @@ public FlowerForestBiome(int type) { flower.addType(RED_FLOWER, BlockFlower.TYPE_WHITE_TULIP); flower.addType(RED_FLOWER, BlockFlower.TYPE_PINK_TULIP); flower.addType(RED_FLOWER, BlockFlower.TYPE_OXEYE_DAISY); + flower.addType(RED_FLOWER, BlockFlower.TYPE_CORNFLOWER); + flower.addType(RED_FLOWER, BlockFlower.TYPE_LILY_OF_THE_VALLEY); flower.addType(DOUBLE_PLANT, BlockDoublePlant.LILAC); flower.addType(DOUBLE_PLANT, BlockDoublePlant.ROSE_BUSH); flower.addType(DOUBLE_PLANT, BlockDoublePlant.PEONY); diff --git a/src/main/java/cn/nukkit/level/biome/impl/iceplains/IcePlainsBiome.java b/src/main/java/cn/nukkit/level/biome/impl/iceplains/IcePlainsBiome.java index 8235b7341e8..f1f76b28ae2 100644 --- a/src/main/java/cn/nukkit/level/biome/impl/iceplains/IcePlainsBiome.java +++ b/src/main/java/cn/nukkit/level/biome/impl/iceplains/IcePlainsBiome.java @@ -23,6 +23,7 @@ public IcePlainsBiome() { this.setHeightVariation(0.05f); } + @Override public String getName() { return "Ice Plains"; } diff --git a/src/main/java/cn/nukkit/level/biome/impl/iceplains/IcePlainsSpikesBiome.java b/src/main/java/cn/nukkit/level/biome/impl/iceplains/IcePlainsSpikesBiome.java index 929213b8b51..d52518517ab 100644 --- a/src/main/java/cn/nukkit/level/biome/impl/iceplains/IcePlainsSpikesBiome.java +++ b/src/main/java/cn/nukkit/level/biome/impl/iceplains/IcePlainsSpikesBiome.java @@ -1,6 +1,6 @@ package cn.nukkit.level.biome.impl.iceplains; -import cn.nukkit.api.RemovedFromNewRakNet; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.level.ChunkManager; import cn.nukkit.level.format.FullChunk; @@ -19,7 +19,7 @@ public IcePlainsSpikesBiome() { this.addPopulator(iceSpikes); } - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") @Override public int getSurfaceBlock(int y) { @@ -29,6 +29,7 @@ public int getSurfaceBlock(int y) { return SNOW_BLOCK; } + @Override public String getName() { return "Ice Plains Spikes"; } diff --git a/src/main/java/cn/nukkit/level/biome/impl/mesa/MesaBiome.java b/src/main/java/cn/nukkit/level/biome/impl/mesa/MesaBiome.java index b1f68b79863..29e03c9b4a2 100644 --- a/src/main/java/cn/nukkit/level/biome/impl/mesa/MesaBiome.java +++ b/src/main/java/cn/nukkit/level/biome/impl/mesa/MesaBiome.java @@ -1,6 +1,5 @@ package cn.nukkit.level.biome.impl.mesa; -import cn.nukkit.api.NewRakNetOnly; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.block.BlockSand; @@ -86,7 +85,6 @@ public void setMoundHeight(int height) { this.moundHeight = height; } - @NewRakNetOnly @Override public int getSurfaceDepth(int x, int y, int z) { return y < (71 + Math.round((redSandNoise.noise2D(x, z, true) + 1) * 1.5f)) ? 3 : y - 66; @@ -104,7 +102,6 @@ public BlockState getSurfaceState(int x, int y, int z) { } } - @NewRakNetOnly @Override public int getGroundDepth(int x, int y, int z) { return y < (71 + Math.round((redSandNoise.noise2D(x, z, true) + 1) * 1.5f)) ? 2 : 0; diff --git a/src/main/java/cn/nukkit/level/biome/impl/mesa/MesaPlateauFBiome.java b/src/main/java/cn/nukkit/level/biome/impl/mesa/MesaPlateauFBiome.java index d1bd18906d1..ddaa0926918 100644 --- a/src/main/java/cn/nukkit/level/biome/impl/mesa/MesaPlateauFBiome.java +++ b/src/main/java/cn/nukkit/level/biome/impl/mesa/MesaPlateauFBiome.java @@ -1,6 +1,6 @@ package cn.nukkit.level.biome.impl.mesa; -import cn.nukkit.api.RemovedFromNewRakNet; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.block.BlockSapling; import cn.nukkit.level.generator.populator.impl.PopulatorTree; @@ -19,8 +19,8 @@ public MesaPlateauFBiome() { } @Since("1.4.0.0-PN") + @PowerNukkitOnly @Override - @RemovedFromNewRakNet public int getCoverBlock() { if (useNewRakNetCover()) { return getCoverId(0,0) >> 4; diff --git a/src/main/java/cn/nukkit/level/biome/impl/mushroom/MushroomIslandBiome.java b/src/main/java/cn/nukkit/level/biome/impl/mushroom/MushroomIslandBiome.java index 165b71767ad..62bb35f141b 100644 --- a/src/main/java/cn/nukkit/level/biome/impl/mushroom/MushroomIslandBiome.java +++ b/src/main/java/cn/nukkit/level/biome/impl/mushroom/MushroomIslandBiome.java @@ -1,6 +1,6 @@ package cn.nukkit.level.biome.impl.mushroom; -import cn.nukkit.api.RemovedFromNewRakNet; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.block.Block; import cn.nukkit.level.biome.type.GrassyBiome; @@ -21,7 +21,7 @@ public String getName() { return "Mushroom Island"; } - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") @Override public int getSurfaceBlock(int y) { diff --git a/src/main/java/cn/nukkit/level/biome/impl/ocean/OceanBiome.java b/src/main/java/cn/nukkit/level/biome/impl/ocean/OceanBiome.java index 5cddc60c691..a8cea54b36a 100644 --- a/src/main/java/cn/nukkit/level/biome/impl/ocean/OceanBiome.java +++ b/src/main/java/cn/nukkit/level/biome/impl/ocean/OceanBiome.java @@ -1,6 +1,6 @@ package cn.nukkit.level.biome.impl.ocean; -import cn.nukkit.api.RemovedFromNewRakNet; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.level.biome.type.WateryBiome; @@ -19,7 +19,7 @@ public String getName() { return "Ocean"; } - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") @Override public int getGroundBlock(int y) { diff --git a/src/main/java/cn/nukkit/level/biome/impl/taiga/ColdTaigaBiome.java b/src/main/java/cn/nukkit/level/biome/impl/taiga/ColdTaigaBiome.java index 41c79c8eb6e..259f96639ff 100644 --- a/src/main/java/cn/nukkit/level/biome/impl/taiga/ColdTaigaBiome.java +++ b/src/main/java/cn/nukkit/level/biome/impl/taiga/ColdTaigaBiome.java @@ -1,6 +1,6 @@ package cn.nukkit.level.biome.impl.taiga; -import cn.nukkit.api.RemovedFromNewRakNet; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.level.generator.populator.impl.WaterIcePopulator; @@ -24,8 +24,8 @@ public String getName() { } @Since("1.4.0.0-PN") + @PowerNukkitOnly @Override - @RemovedFromNewRakNet public int getCoverBlock() { if (useNewRakNetCover()) { return getCoverId(0,0) >> 4; diff --git a/src/main/java/cn/nukkit/level/biome/type/CoveredBiome.java b/src/main/java/cn/nukkit/level/biome/type/CoveredBiome.java index 5dc7815e02c..0b1960bcc65 100644 --- a/src/main/java/cn/nukkit/level/biome/type/CoveredBiome.java +++ b/src/main/java/cn/nukkit/level/biome/type/CoveredBiome.java @@ -42,7 +42,7 @@ public abstract class CoveredBiome extends Biome { @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", reason = "Exposed lock object and removed from new-raknet and not used by PowerNukkit") @Since("1.4.0.0-PN") - @RemovedFromNewRakNet + @PowerNukkitOnly public final Object synchronizeCover = new Object(); /** @@ -50,7 +50,7 @@ public abstract class CoveredBiome extends Biome { * * @return cover block */ - @NewRakNetOnly + @SuppressWarnings("unused") public int getCoverId(int x, int z) { useNewRakNetCover = false; return getCoverBlock() << 4; @@ -63,7 +63,7 @@ public int getCoverId(int x, int z) { * * @implNote Removed from new-raknet branch */ - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") public int getCoverBlock() { if (useNewRakNetCover()) { @@ -92,7 +92,6 @@ public BlockState getCoverState(int x, int z) { } } - @NewRakNetOnly public int getSurfaceDepth(int x, int y, int z) { useNewRakNetSurfaceDepth = false; return getSurfaceDepth(y); @@ -109,7 +108,7 @@ public int getSurfaceDepth(int x, int y, int z) { * * @implNote Removed from new-raknet branch */ - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") public int getSurfaceDepth(int y) { if (useNewRakNetSurfaceDepth()) { @@ -119,7 +118,7 @@ public int getSurfaceDepth(int y) { } } - @NewRakNetOnly + @SuppressWarnings("unused") public int getSurfaceId(int x, int y, int z) { useNewRakNetSurface = false; return getSurfaceBlock(y) << 4 | (getSurfaceMeta(y) & 0xF); @@ -133,7 +132,7 @@ public int getSurfaceId(int x, int y, int z) { * * @implNote Removed from new-raknet branch */ - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") public int getSurfaceBlock(int y) { if (useNewRakNetSurface()) { @@ -152,7 +151,7 @@ public int getSurfaceBlock(int y) { * * @implNote Removed from new-raknet branch */ - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") public int getSurfaceMeta(int y) { if (useNewRakNetSurface()) { @@ -175,7 +174,6 @@ public BlockState getSurfaceState(int x, int y, int z) { } } - @NewRakNetOnly public int getGroundDepth(int x, int y, int z) { useNewRakNetGroundDepth = false; return getGroundDepth(y); @@ -191,7 +189,7 @@ public int getGroundDepth(int x, int y, int z) { * * @implNote Removed from new-raknet branch */ - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") public int getGroundDepth(int y) { if (useNewRakNetGroundDepth()) { @@ -201,7 +199,7 @@ public int getGroundDepth(int y) { } } - @NewRakNetOnly + @SuppressWarnings("unused") public int getGroundId(int x, int y, int z) { useNewRakNetGroundBlock = false; return getGroundBlock(y) << 4 | (getGroundMeta(y) & 0xF); @@ -215,7 +213,7 @@ public int getGroundId(int x, int y, int z) { * * @implNote Removed from new-raknet branch */ - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") public int getGroundBlock(int y) { if (useNewRakNetGround()) { @@ -232,7 +230,7 @@ public int getGroundBlock(int y) { * * @implNote Removed from new-raknet branch */ - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") public int getGroundMeta(int y) { if (useNewRakNetGround()) { @@ -262,7 +260,7 @@ public BlockState getGroundState(int x, int y, int z) { * * @implNote Removed from new-raknet branch */ - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") public int getStoneBlock() { return STONE; @@ -279,13 +277,13 @@ public int getStoneBlock() { * * @implNote Removed from new-raknet branch */ - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") + @SuppressWarnings("unused") public void preCover(int x, int z) { - + // Does nothing } - @NewRakNetOnly public void doCover(int x, int z, @Nonnull FullChunk chunk) { final int fullX = (chunk.getX() << 4) | x; final int fullZ = (chunk.getZ() << 4) | z; diff --git a/src/main/java/cn/nukkit/level/biome/type/GrassyBiome.java b/src/main/java/cn/nukkit/level/biome/type/GrassyBiome.java index 0bf0222a392..c884a16b27c 100644 --- a/src/main/java/cn/nukkit/level/biome/type/GrassyBiome.java +++ b/src/main/java/cn/nukkit/level/biome/type/GrassyBiome.java @@ -1,6 +1,6 @@ package cn.nukkit.level.biome.type; -import cn.nukkit.api.RemovedFromNewRakNet; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.block.BlockDoublePlant; import cn.nukkit.level.generator.populator.impl.PopulatorDoublePlant; @@ -20,7 +20,7 @@ public GrassyBiome() { this.addPopulator(tallGrass); } - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") @Override public int getSurfaceBlock(int y) { @@ -30,7 +30,7 @@ public int getSurfaceBlock(int y) { return GRASS; } - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") @Override public int getGroundBlock(int y) { diff --git a/src/main/java/cn/nukkit/level/biome/type/SandyBiome.java b/src/main/java/cn/nukkit/level/biome/type/SandyBiome.java index af1c20bc6cb..46e029d9c69 100644 --- a/src/main/java/cn/nukkit/level/biome/type/SandyBiome.java +++ b/src/main/java/cn/nukkit/level/biome/type/SandyBiome.java @@ -1,13 +1,13 @@ package cn.nukkit.level.biome.type; -import cn.nukkit.api.RemovedFromNewRakNet; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; /** * @author MagicDroidX (Nukkit Project) */ public abstract class SandyBiome extends CoveredBiome { - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") @Override public int getSurfaceDepth(int y) { @@ -17,7 +17,7 @@ public int getSurfaceDepth(int y) { return 3; } - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") @Override public int getSurfaceBlock(int y) { @@ -27,7 +27,7 @@ public int getSurfaceBlock(int y) { return SAND; } - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") @Override public int getGroundDepth(int y) { @@ -37,7 +37,7 @@ public int getGroundDepth(int y) { return 2; } - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") @Override public int getGroundBlock(int y) { diff --git a/src/main/java/cn/nukkit/level/biome/type/SnowyBiome.java b/src/main/java/cn/nukkit/level/biome/type/SnowyBiome.java index 039e4a2e9d1..e431e6f12c9 100644 --- a/src/main/java/cn/nukkit/level/biome/type/SnowyBiome.java +++ b/src/main/java/cn/nukkit/level/biome/type/SnowyBiome.java @@ -1,6 +1,6 @@ package cn.nukkit.level.biome.type; -import cn.nukkit.api.RemovedFromNewRakNet; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.level.generator.populator.impl.WaterIcePopulator; @@ -16,8 +16,8 @@ public SnowyBiome() { } @Since("1.4.0.0-PN") + @PowerNukkitOnly @Override - @RemovedFromNewRakNet public int getCoverBlock() { if (useNewRakNetCover()) { return getCoverId(0,0); diff --git a/src/main/java/cn/nukkit/level/biome/type/WateryBiome.java b/src/main/java/cn/nukkit/level/biome/type/WateryBiome.java index 91006ca8983..41d34c9319f 100644 --- a/src/main/java/cn/nukkit/level/biome/type/WateryBiome.java +++ b/src/main/java/cn/nukkit/level/biome/type/WateryBiome.java @@ -1,13 +1,13 @@ package cn.nukkit.level.biome.type; -import cn.nukkit.api.RemovedFromNewRakNet; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; /** * @author DaPorkchop_ (Nukkit Project) */ public abstract class WateryBiome extends CoveredBiome { - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") @Override public int getSurfaceDepth(int y) { @@ -17,7 +17,7 @@ public int getSurfaceDepth(int y) { return 0; } - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") @Override public int getSurfaceBlock(int y) { @@ -28,7 +28,7 @@ public int getSurfaceBlock(int y) { return 0; } - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") @Override public int getGroundDepth(int y) { @@ -38,7 +38,7 @@ public int getGroundDepth(int y) { return 5; } - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") @Override public int getGroundBlock(int y) { diff --git a/src/main/java/cn/nukkit/level/format/ChunkSection.java b/src/main/java/cn/nukkit/level/format/ChunkSection.java index fbfa6764a37..d3557770193 100644 --- a/src/main/java/cn/nukkit/level/format/ChunkSection.java +++ b/src/main/java/cn/nukkit/level/format/ChunkSection.java @@ -100,6 +100,7 @@ default BlockState getAndSetBlockState(int x, int y, int z, BlockState state) { @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.3.0.0-PN", replaceWith = "setBlockStateAtLayer(int x, int y, int z, int layer, BlockState state)") + @PowerNukkitOnly boolean setFullBlockId(int x, int y, int z, int layer, int fullId); @PowerNukkitOnly diff --git a/src/main/java/cn/nukkit/level/format/FullChunk.java b/src/main/java/cn/nukkit/level/format/FullChunk.java index a6a29a7fc3b..f832c17ca8e 100644 --- a/src/main/java/cn/nukkit/level/format/FullChunk.java +++ b/src/main/java/cn/nukkit/level/format/FullChunk.java @@ -172,6 +172,7 @@ default boolean setBlockState(int x, int y, int z, BlockState state) { void recalculateHeightMap(); + @PowerNukkitOnly int recalculateHeightMapColumn(int chunkX, int chunkZ); void populateSkyLight(); diff --git a/src/main/java/cn/nukkit/level/format/LevelProvider.java b/src/main/java/cn/nukkit/level/format/LevelProvider.java index e56693aee39..208d058218b 100644 --- a/src/main/java/cn/nukkit/level/format/LevelProvider.java +++ b/src/main/java/cn/nukkit/level/format/LevelProvider.java @@ -1,5 +1,6 @@ package cn.nukkit.level.format; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.level.GameRules; import cn.nukkit.level.Level; import cn.nukkit.level.format.generic.BaseFullChunk; @@ -112,7 +113,8 @@ default void doGarbageCollection(long time) { GameRules getGamerules(); void setGameRules(GameRules rules); - + + @PowerNukkitOnly default int getMaximumLayer() { return 0; } diff --git a/src/main/java/cn/nukkit/level/format/anvil/Anvil.java b/src/main/java/cn/nukkit/level/format/anvil/Anvil.java index e158aa8598b..c3ae6e016f7 100644 --- a/src/main/java/cn/nukkit/level/format/anvil/Anvil.java +++ b/src/main/java/cn/nukkit/level/format/anvil/Anvil.java @@ -1,31 +1,29 @@ package cn.nukkit.level.format.anvil; import cn.nukkit.api.PowerNukkitDifference; -import cn.nukkit.blockentity.BlockEntity; -import cn.nukkit.blockentity.BlockEntitySpawnable; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.level.Level; import cn.nukkit.level.format.FullChunk; import cn.nukkit.level.format.generic.BaseFullChunk; import cn.nukkit.level.format.generic.BaseLevelProvider; import cn.nukkit.level.format.generic.BaseRegionLoader; +import cn.nukkit.level.format.generic.serializer.NetworkChunkSerializer; import cn.nukkit.level.generator.Generator; import cn.nukkit.nbt.NBTIO; import cn.nukkit.nbt.tag.CompoundTag; import cn.nukkit.scheduler.AsyncTask; import cn.nukkit.utils.BinaryStream; import cn.nukkit.utils.ChunkException; -import cn.nukkit.utils.ThreadCache; import cn.nukkit.utils.Utils; -import io.netty.util.internal.EmptyArrays; import it.unimi.dsi.fastutil.objects.ObjectIterator; import lombok.extern.log4j.Log4j2; import java.io.*; import java.nio.ByteOrder; -import java.util.ArrayList; import java.util.HashMap; -import java.util.List; import java.util.Map; +import java.util.function.BiConsumer; import java.util.regex.Pattern; /** @@ -34,7 +32,9 @@ @Log4j2 public class Anvil extends BaseLevelProvider { public static final int VERSION = 19133; - static private final byte[] PAD_256 = new byte[256]; + private static final byte[] PAD_256 = new byte[256]; + @Since("1.6.0.0-PN") + public static final int EXTENDED_NEGATIVE_SUB_CHUNKS = 4; public Anvil(Level level, String path) throws IOException { super(level, path); @@ -122,45 +122,9 @@ public AsyncTask requestChunkTask(int x, int z) throws ChunkException { } long timestamp = chunk.getChanges(); - - byte[] blockEntities = EmptyArrays.EMPTY_BYTES; - - if (!chunk.getBlockEntities().isEmpty()) { - List tagList = new ArrayList<>(); - - for (BlockEntity blockEntity : chunk.getBlockEntities().values()) { - if (blockEntity instanceof BlockEntitySpawnable) { - tagList.add(((BlockEntitySpawnable) blockEntity).getSpawnCompound()); - } - } - - try { - blockEntities = NBTIO.write(tagList, ByteOrder.LITTLE_ENDIAN, true); - } catch (IOException e) { - throw new RuntimeException(e); - } - } - - BinaryStream stream = ThreadCache.binaryStream.get().reset(); - int count = 0; - cn.nukkit.level.format.ChunkSection[] sections = chunk.getSections(); - for (int i = sections.length - 1; i >= 0; i--) { - if (!sections[i].isEmpty()) { - count = i + 1; - break; - } - } - - for (int i = 0; i < count; i++) { - sections[i].writeTo(stream); - } - - stream.put(chunk.getBiomeIdArray()); - stream.putByte((byte) 0); // Border blocks - stream.put(blockEntities); - - this.getLevel().chunkRequestCallback(timestamp, x, z, count, stream.getBuffer()); - + BiConsumer callback = (stream, subchunks) -> + this.getLevel().chunkRequestCallback(timestamp, x, z, subchunks, stream.getBuffer()); + NetworkChunkSerializer.serialize(chunk, callback, this.level.getDimensionData()); return null; } @@ -272,7 +236,8 @@ protected synchronized BaseRegionLoader loadRegion(int x, int z) { return region; } } - + + @PowerNukkitOnly @Override public int getMaximumLayer() { return 1; diff --git a/src/main/java/cn/nukkit/level/format/anvil/Chunk.java b/src/main/java/cn/nukkit/level/format/anvil/Chunk.java index f18486b3de8..cec07cff45d 100644 --- a/src/main/java/cn/nukkit/level/format/anvil/Chunk.java +++ b/src/main/java/cn/nukkit/level/format/anvil/Chunk.java @@ -453,7 +453,7 @@ public int getBlockSkyLight(int x, int y, int z) { if (height < y) { return 15; } else if (height == y) { - return Block.transparent[getBlockId(x, y, z)] ? 15 : 0; + return Block.isTransparent(getBlockId(x, y, z)) ? 15 : 0; } else { return section.getBlockSkyLight(x, y & 0x0f, z); } diff --git a/src/main/java/cn/nukkit/level/format/anvil/ChunkSection.java b/src/main/java/cn/nukkit/level/format/anvil/ChunkSection.java index 87a9c89b1da..9265615c368 100644 --- a/src/main/java/cn/nukkit/level/format/anvil/ChunkSection.java +++ b/src/main/java/cn/nukkit/level/format/anvil/ChunkSection.java @@ -40,7 +40,10 @@ @ParametersAreNonnullByDefault public class ChunkSection implements cn.nukkit.level.format.ChunkSection { + @PowerNukkitOnly public static final int STREAM_STORAGE_VERSION = 8; + + @PowerNukkitOnly public static final int SAVE_STORAGE_VERSION = 7; private static final String STORAGE_TAG_NAME = "Storage"; @@ -119,12 +122,13 @@ private void loadStorage(int layer, CompoundTag storageTag) { } byte[] dataBytes = storageTag.getByteArray("Data"); + NibbleArray data; if (dataBytes.length == 0) { - dataBytes = EmptyChunkSection.EMPTY_DATA_ARRAY; + data = NibbleArray.EMPTY_DATA_ARRAY; } else { hasBlockIds = true; + data = new NibbleArray(dataBytes); } - NibbleArray data = new NibbleArray(dataBytes); byte[] dataExtraBytes = storageTag.getByteArray("DataExtra"); if (dataExtraBytes.length == 0) { @@ -237,6 +241,7 @@ public int getBlockId(int x, int y, int z) { return getBlockId(x, y, z, 0); } + @PowerNukkitOnly @Override public int getBlockId(int x, int y, int z, int layer) { return layerStorage.getStorageOrEmpty(layer).getBlockId(x, y, z); @@ -247,6 +252,7 @@ public void setBlockId(int x, int y, int z, int id) { setBlockId(x, y, z, 0, id); } + @PowerNukkitOnly @Override public synchronized void setBlockId(int x, int y, int z, int layer, int id) { if (id != 0) { @@ -273,6 +279,7 @@ public boolean setFullBlockId(int x, int y, int z, int fullId) { @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public synchronized boolean setFullBlockId(int x, int y, int z, int layer, int fullId) { if (fullId != 0) { @@ -295,6 +302,7 @@ public int getBlockData(int x, int y, int z) { @Deprecated @DeprecationDetails(reason = "The data is limited to 32 bits", replaceWith = "getBlockState", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public int getBlockData(int x, int y, int z, int layer) { return layerStorage.getStorageOrEmpty(layer).getBlockData(x, y, z); @@ -309,6 +317,7 @@ public void setBlockData(int x, int y, int z, int data) { @Deprecated @DeprecationDetails(reason = "The data is limited to 32 bits", replaceWith = "getBlockState", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public synchronized void setBlockData(int x, int y, int z, int layer, int data) { if (data != 0) { @@ -328,12 +337,14 @@ public int getFullBlock(int x, int y, int z) { return getFullBlock(x, y, z, 0); } + @PowerNukkitOnly @Nonnull @Override public BlockState getBlockState(int x, int y, int z, int layer) { return layerStorage.getStorageOrEmpty(layer).getBlockState(x, y, z); } + @PowerNukkitOnly @Deprecated @DeprecationDetails(reason = "The data is limited to 32 bits", replaceWith = "getBlockState", since = "1.4.0.0-PN") @Override @@ -346,6 +357,7 @@ public boolean setBlock(int x, int y, int z, int blockId) { return setBlockStateAtLayer(x, y, z, 0, BlockState.of(blockId)); } + @PowerNukkitOnly @Override public boolean setBlockAtLayer(int x, int y, int z, int layer, int blockId) { return setBlockStateAtLayer(x, y, z, layer, BlockState.of(blockId)); @@ -357,6 +369,7 @@ public Block getAndSetBlock(int x, int y, int z, Block block) { return getAndSetBlock(x, y, z, 0, block); } + @PowerNukkitOnly @Nonnull @Override public synchronized Block getAndSetBlock(int x, int y, int z, int layer, Block block) { @@ -402,17 +415,20 @@ public boolean setBlock(int x, int y, int z, int blockId, int meta) { @Deprecated @DeprecationDetails(reason = "The data is limited to 32 bits", replaceWith = "getBlockState", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public boolean setBlockAtLayer(int x, int y, int z, int layer, int blockId, int meta) { return setBlockStateAtLayer(x, y, z, layer, BlockState.of(blockId, meta)); } + @PowerNukkitOnly @Override public synchronized boolean setBlockStateAtLayer(int x, int y, int z, int layer, BlockState state) { BlockState previous = getAndSetBlockState(x, y, z, layer, state); return !state.equals(previous); } + @PowerNukkitOnly @Override public int getBlockChangeStateAbove(int x, int y, int z) { BlockStorage storage = layerStorage.getStorageOrNull(0); @@ -437,8 +453,8 @@ public int getBlockSkyLight(int x, int y, int z) { } else if (compressedLight == null) { return 15; } + this.skyLight = getSkyLightArray(); } - this.skyLight = getSkyLightArray(); int sl = this.skyLight[(y << 7) | (z << 3) | (x >> 1)] & 0xff; if ((x & 1) == 0) { return sl & 0x0f; @@ -502,19 +518,22 @@ public void setBlockLight(int x, int y, int z, int level) { @Override public byte[] getSkyLightArray() { - if (this.skyLight != null) return skyLight; - if (hasSkyLight) { - if (compressedLight != null) { - inflate(); - return this.skyLight; - } - return EmptyChunkSection.EMPTY_SKY_LIGHT_ARR; - } else { - return EmptyChunkSection.EMPTY_LIGHT_ARR; + if (skyLight != null) { + return skyLight.clone(); } + + if (!hasSkyLight) { + return new byte[EmptyChunkSection.EMPTY_LIGHT_ARR.length]; + } + + if (compressedLight != null && inflate() && skyLight != null) { + return skyLight.clone(); + } + + return EmptyChunkSection.EMPTY_SKY_LIGHT_ARR.clone(); } - private void inflate() { + private boolean inflate() { try { if (compressedLight != null && compressedLight.length != 0) { byte[] inflated = Zlib.inflate(compressedLight); @@ -535,20 +554,24 @@ private void inflate() { Arrays.fill(skyLight, (byte) 0xFF); } } + return true; } catch (IOException e) { log.error("Failed to decompress a chunk section", e); + return false; } } @Override public byte[] getLightArray() { - if (this.blockLight != null) return blockLight; - if (hasBlockLight) { - inflate(); - return this.blockLight; - } else { - return EmptyChunkSection.EMPTY_LIGHT_ARR; + if (blockLight != null) { + return blockLight.clone(); } + + if (hasBlockLight && compressedLight != null && inflate() && blockLight != null) { + return blockLight.clone(); + } + + return new byte[EmptyChunkSection.EMPTY_LIGHT_ARR.length]; } @Override @@ -652,6 +675,7 @@ private byte[] allocateBlob(List hugeList, int pos) { return blob; } + @PowerNukkitOnly @Nonnull @Override public synchronized CompoundTag toNBT() { @@ -719,8 +743,8 @@ public synchronized CompoundTag toNBT() { if (version >= SAVE_STORAGE_VERSION) { s.putList(storageList); } - s.putByteArray("BlockLight", getLightArray()); - s.putByteArray("SkyLight", getSkyLightArray()); + s.putByteArray("BlockLight", blockLight == null? getLightArray() : blockLight); + s.putByteArray("SkyLight", skyLight == null? getSkyLightArray(): skyLight); return s; } @@ -799,6 +823,7 @@ public synchronized List scanBlocks(LevelProvider provider, int offsetX, return results; } + @Override @SneakyThrows(CloneNotSupportedException.class) @Nonnull public ChunkSection copy() { @@ -812,7 +837,8 @@ public ChunkSection copy() { this.hasSkyLight ); } - + + @PowerNukkitOnly @Override public int getMaximumLayer() { return 1; @@ -832,6 +858,7 @@ public void setContentVersion(int contentVersion) { this.contentVersion = contentVersion; } + @PowerNukkitOnly @Override public boolean hasBlocks() { return layerStorage.hasBlocks(); diff --git a/src/main/java/cn/nukkit/level/format/anvil/MultiLayerStorage.java b/src/main/java/cn/nukkit/level/format/anvil/MultiLayerStorage.java index 899f13a9024..d80d8d86217 100644 --- a/src/main/java/cn/nukkit/level/format/anvil/MultiLayerStorage.java +++ b/src/main/java/cn/nukkit/level/format/anvil/MultiLayerStorage.java @@ -168,7 +168,6 @@ public boolean hasBlocks() { } @Since("1.4.0.0-PN") - @PowerNukkitOnly @SneakyThrows(CloneNotSupportedException.class) @Override public MultiLayerStorage clone() { diff --git a/src/main/java/cn/nukkit/level/format/anvil/palette/BiomePalette.java b/src/main/java/cn/nukkit/level/format/anvil/palette/BiomePalette.java index 0aa025eb075..38adcc35cf5 100644 --- a/src/main/java/cn/nukkit/level/format/anvil/palette/BiomePalette.java +++ b/src/main/java/cn/nukkit/level/format/anvil/palette/BiomePalette.java @@ -118,6 +118,7 @@ public int getIndex(int x, int z) { return (z << 4) | x; } + @Override public synchronized BiomePalette clone() { return new BiomePalette(this); } diff --git a/src/main/java/cn/nukkit/level/format/anvil/palette/BitArray256.java b/src/main/java/cn/nukkit/level/format/anvil/palette/BitArray256.java index 4a60bbfadb1..0129c10d036 100644 --- a/src/main/java/cn/nukkit/level/format/anvil/palette/BitArray256.java +++ b/src/main/java/cn/nukkit/level/format/anvil/palette/BitArray256.java @@ -85,6 +85,7 @@ public final int[] toRaw() { return toRaw(new int[256]); } + @Override public BitArray256 clone() { return new BitArray256(this); } diff --git a/src/main/java/cn/nukkit/level/format/anvil/palette/BlockDataPalette.java b/src/main/java/cn/nukkit/level/format/anvil/palette/BlockDataPalette.java index 3f8784b36ed..f9737fb6062 100644 --- a/src/main/java/cn/nukkit/level/format/anvil/palette/BlockDataPalette.java +++ b/src/main/java/cn/nukkit/level/format/anvil/palette/BlockDataPalette.java @@ -214,6 +214,7 @@ public synchronized boolean compress() { return false; } + @Override public synchronized BlockDataPalette clone() { char[] raw = getRaw(); return new BlockDataPalette(raw.clone()); diff --git a/src/main/java/cn/nukkit/level/format/anvil/palette/IntPalette.java b/src/main/java/cn/nukkit/level/format/anvil/palette/IntPalette.java index 0c22d0c362e..2bf46a86711 100644 --- a/src/main/java/cn/nukkit/level/format/anvil/palette/IntPalette.java +++ b/src/main/java/cn/nukkit/level/format/anvil/palette/IntPalette.java @@ -96,6 +96,7 @@ public int length() { return keys.length; } + @Override public IntPalette clone() { IntPalette p = new IntPalette(); p.keys = this.keys != EmptyArrays.EMPTY_INTS ? this.keys.clone() : EmptyArrays.EMPTY_INTS; diff --git a/src/main/java/cn/nukkit/level/format/anvil/util/BlockStorage.java b/src/main/java/cn/nukkit/level/format/anvil/util/BlockStorage.java index 853988b3b94..6b5eaf7fecc 100644 --- a/src/main/java/cn/nukkit/level/format/anvil/util/BlockStorage.java +++ b/src/main/java/cn/nukkit/level/format/anvil/util/BlockStorage.java @@ -49,8 +49,8 @@ public class BlockStorage { private static final int BLOCK_ID_MASK = 0x00FF; private static final int BLOCK_ID_EXTRA_MASK = 0xFF00; private static final int BLOCK_ID_FULL = BLOCK_ID_MASK | BLOCK_ID_EXTRA_MASK; - - public static final int SECTION_SIZE = 4096; + + @PowerNukkitOnly public static final int SECTION_SIZE = 4096; private static final BlockState[] EMPTY = new BlockState[SECTION_SIZE]; static { @@ -65,10 +65,9 @@ public class BlockStorage { public BlockStorage() { states = EMPTY.clone(); - palette = new PalettedBlockStorage(); + palette = PalettedBlockStorage.createFromBlockPalette(); } - @PowerNukkitOnly @Since("1.4.0.0-PN") @API(definition = INTERNAL, usage = BLEEDING) BlockStorage(BlockState[] states, byte flags, PalettedBlockStorage palette, @Nullable BitSet denyStates) { @@ -79,11 +78,22 @@ public BlockStorage() { } private static int getIndex(int x, int y, int z) { + checkArg(x, "x"); + checkArg(x, "y"); + checkArg(x, "z"); int index = (x << 8) + (z << 4) + y; // XZY = Bedrock format Preconditions.checkArgument(index >= 0 && index < SECTION_SIZE, "Invalid index"); return index; } + private static void checkArg(int pos, String arg) { + try { + Preconditions.checkElementIndex(pos, 16, arg); + } catch (IndexOutOfBoundsException e) { + throw new IllegalArgumentException(e); + } + } + @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.4.0.0-PN") @Nonnegative @@ -431,7 +441,6 @@ private byte computeFlags(byte newFlags, BlockState... states) { } @Since("1.4.0.0-PN") - @PowerNukkitOnly public BlockStorage copy() { BitSet deny = denyStates; return new BlockStorage(states.clone(), flags, palette.copy(), (BitSet) (deny != null? deny.clone() : null)); @@ -456,14 +465,17 @@ private void setFlag(byte flag, boolean value) { } } + @PowerNukkitOnly public boolean hasBlockIds() { return getFlag(FLAG_HAS_ID); } + @PowerNukkitOnly public boolean hasBlockIdExtras() { return getFlag(FLAG_HAS_ID_EXTRA); } + @PowerNukkitOnly public boolean hasBlockDataExtras() { return getFlag(FLAG_HAS_DATA_EXTRA); } diff --git a/src/main/java/cn/nukkit/level/format/anvil/util/ImmutableBlockStorage.java b/src/main/java/cn/nukkit/level/format/anvil/util/ImmutableBlockStorage.java index b0d5a341664..c37cab3b82c 100644 --- a/src/main/java/cn/nukkit/level/format/anvil/util/ImmutableBlockStorage.java +++ b/src/main/java/cn/nukkit/level/format/anvil/util/ImmutableBlockStorage.java @@ -49,6 +49,7 @@ public final class ImmutableBlockStorage extends BlockStorage { super(states.clone(), flags, palette.copy(), denyStates != null? (BitSet)denyStates.clone() : null); } + @PowerNukkitOnly @Override protected BlockState setBlockState(int index, @Nonnull BlockState state) { throw new UnsupportedOperationException("This BlockStorage is immutable"); diff --git a/src/main/java/cn/nukkit/level/format/anvil/util/NibbleArray.java b/src/main/java/cn/nukkit/level/format/anvil/util/NibbleArray.java index 45ebe670cc8..3fe97a43acb 100644 --- a/src/main/java/cn/nukkit/level/format/anvil/util/NibbleArray.java +++ b/src/main/java/cn/nukkit/level/format/anvil/util/NibbleArray.java @@ -1,9 +1,16 @@ package cn.nukkit.level.format.anvil.util; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.level.format.generic.EmptyChunkSection; import com.google.common.base.Preconditions; public class NibbleArray implements Cloneable { + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public static final NibbleArray EMPTY_DATA_ARRAY = new NibbleArray(EmptyChunkSection.EMPTY_DATA_ARRAY); + private final byte[] data; public NibbleArray(int length) { diff --git a/src/main/java/cn/nukkit/level/format/generic/BaseChunk.java b/src/main/java/cn/nukkit/level/format/generic/BaseChunk.java index a9814bccf86..41b6a29bfcd 100644 --- a/src/main/java/cn/nukkit/level/format/generic/BaseChunk.java +++ b/src/main/java/cn/nukkit/level/format/generic/BaseChunk.java @@ -185,7 +185,6 @@ public boolean setFullBlockId(int x, int y, int z, int layer, int fullId) { @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.4.0.0-PN") - @PowerNukkitOnly @Override public boolean setBlock(int x, int y, int z, int blockId, int meta) { return this.setBlockAtLayer(x, y, z, 0, blockId, meta); @@ -271,6 +270,7 @@ public int getBlockData(int x, int y, int z) { @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.4.0.0-PN") @Override + @PowerNukkitOnly public int getBlockData(int x, int y, int z, int layer) { return this.sections[y >> 4].getBlockData(x, y & 0x0f, z, layer); } @@ -284,6 +284,7 @@ public void setBlockData(int x, int y, int z, int data) { @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public void setBlockData(int x, int y, int z, int layer, int data) { int sectionY = y >> 4; @@ -395,14 +396,16 @@ public LevelProvider getProvider() { @Since("1.4.0.0-PN") @Override public boolean setBlockStateAt(int x, int y, int z, int layer, BlockState state) { - return setBlockStateAtLayer(x, y, z, layer, state); + return setBlockStateAtLayer(x & 0xF, y, z & 0XF, layer, state); } + @PowerNukkitOnly @Override public BlockState getBlockStateAt(int x, int y, int z, int layer) { - return getBlockState(x, y, z, layer); + return getBlockState(x & 0xF, y, z & 0xF, layer); } + @PowerNukkitOnly @Override public boolean isBlockChangeAllowed(int x, int y, int z) { for (ChunkSection section: sections) { @@ -436,6 +439,7 @@ public boolean isBlockChangeAllowed(int x, int y, int z) { } @Nonnull + @PowerNukkitOnly @Override public List findBorders(int x, int z) { List borders = null; @@ -455,6 +459,7 @@ public List findBorders(int x, int z) { return borders != null? borders : Collections.emptyList(); } + @PowerNukkitOnly @Override public boolean isBlockedByBorder(int x, int z) { for (ChunkSection section : sections) { diff --git a/src/main/java/cn/nukkit/level/format/generic/BaseFullChunk.java b/src/main/java/cn/nukkit/level/format/generic/BaseFullChunk.java index 11326b82493..b704b4158d2 100644 --- a/src/main/java/cn/nukkit/level/format/generic/BaseFullChunk.java +++ b/src/main/java/cn/nukkit/level/format/generic/BaseFullChunk.java @@ -2,7 +2,6 @@ import cn.nukkit.Player; import cn.nukkit.api.DeprecationDetails; -import cn.nukkit.api.PowerNukkitDifference; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.block.Block; @@ -131,6 +130,7 @@ public void backwardCompatibilityUpdate(Level level) { // Does nothing here } + @Override public void initChunk() { if (this.getProvider() != null && !this.isInit) { boolean changed = false; @@ -207,11 +207,13 @@ public void setPosition(int x, int z) { this.hash = Level.chunkHash(x, z); } + @Override public final void setX(int x) { this.x = x; this.hash = Level.chunkHash(x, getZ()); } + @Override public final void setZ(int z) { this.z = z; this.hash = Level.chunkHash(getX(), z); @@ -225,6 +227,10 @@ public LevelProvider getProvider() { @Override public void setProvider(LevelProvider provider) { this.provider = provider; + + if(provider != null) { + this.providerClass = provider.getClass(); + } } @Override @@ -257,12 +263,13 @@ public void recalculateHeightMap() { } } + @PowerNukkitOnly @Override public int recalculateHeightMapColumn(int x, int z) { int max = getHighestBlockAt(x, z, false); int y; for (y = max; y >= 0; --y) { - if (Block.lightFilter[getBlockIdAt(x, y, z)] > 1 || Block.diffusesSkyLight[getBlockIdAt(x, y, z)]) { + if (Block.getLightFilter(getBlockIdAt(x, y, z)) > 1 || Block.diffusesSkyLight(getBlockIdAt(x, y, z))) { break; } } @@ -332,14 +339,14 @@ public void populateSkyLight() { // START of checks for the next block int id = this.getBlockId(x, y, z); - if (!Block.transparent[id]) { // if we encounter an opaque block, all the blocks under it will + if (!Block.isTransparent(id)) { // if we encounter an opaque block, all the blocks under it will // have a skylight value of 0 (the block itself has a value of 15, if it's a top-most block) nextLight = 0; - } else if (Block.diffusesSkyLight[id]) { + } else if (Block.diffusesSkyLight(id)) { nextDecrease += 1; // skylight value decreases by one for each block under a block // that diffuses skylight. The block itself has a value of 15 (if it's a top-most block) } else { - nextDecrease -= Block.lightFilter[id]; // blocks under a light filtering block will have a skylight value + nextDecrease -= Block.getLightFilter(id); // blocks under a light filtering block will have a skylight value // decreased by the lightFilter value of that block. The block itself // has a value of 15 (if it's a top-most block) } @@ -567,6 +574,7 @@ public int getBlockIdAt(int x, int y, int z) { return getBlockIdAt(x, y, z, 0); } + @PowerNukkitOnly @Override public int getBlockIdAt(int x, int y, int z, int layer) { if (x >> 4 == getX() && z >> 4 == getZ()) { @@ -584,6 +592,7 @@ public void setBlockFullIdAt(int x, int y, int z, int fullId) { @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public void setBlockFullIdAt(int x, int y, int z, int layer, int fullId) { if (x >> 4 == getX() && z >> 4 == getZ()) { @@ -591,6 +600,7 @@ public void setBlockFullIdAt(int x, int y, int z, int layer, int fullId) { } } + @PowerNukkitOnly @Override public boolean setBlockAtLayer(int x, int y, int z, int layer, int blockId) { return setBlockStateAtLayer(x, y, z, layer, BlockState.of(blockId)); @@ -598,6 +608,7 @@ public boolean setBlockAtLayer(int x, int y, int z, int layer, int blockId) { @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public boolean setBlockAtLayer(int x, int y, int z, int layer, int blockId, int meta) { return setBlockStateAtLayer(x, y, z, layer, BlockState.of(blockId, meta)); @@ -608,6 +619,7 @@ public void setBlockIdAt(int x, int y, int z, int id) { setBlockIdAt(x, y, z, 0, id); } + @PowerNukkitOnly @Override public void setBlockIdAt(int x, int y, int z, int layer, int id) { if (x >> 4 == getX() && z >> 4 == getZ()) { @@ -634,7 +646,7 @@ public int getBlockDataAt(int x, int y, int z) { @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.4.0.0-PN") @Override - @PowerNukkitDifference(info = "Was returning the block id instead of the data", since = "1.4.0.0-PN") + @PowerNukkitOnly public int getBlockDataAt(int x, int y, int z, int layer) { if (x >> 4 == getX() && z >> 4 == getZ()) { return getBlockData(x & 15, y, z & 15, layer); @@ -651,6 +663,7 @@ public void setBlockDataAt(int x, int y, int z, int data) { @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public void setBlockDataAt(int x, int y, int z, int layer, int data) { if (x >> 4 == getX() && z >> 4 == getZ()) { diff --git a/src/main/java/cn/nukkit/level/format/generic/BaseLevelProvider.java b/src/main/java/cn/nukkit/level/format/generic/BaseLevelProvider.java index ea90e133c25..3a81b0ab20e 100644 --- a/src/main/java/cn/nukkit/level/format/generic/BaseLevelProvider.java +++ b/src/main/java/cn/nukkit/level/format/generic/BaseLevelProvider.java @@ -364,6 +364,7 @@ public void saveLevelData() { } } + @Override public void updateLevelName(String name) { if (!this.getName().equals(name)) { this.levelData.putString("LevelName", name); diff --git a/src/main/java/cn/nukkit/level/format/generic/EmptyChunkSection.java b/src/main/java/cn/nukkit/level/format/generic/EmptyChunkSection.java index 6f4fab1d299..4be9320b818 100644 --- a/src/main/java/cn/nukkit/level/format/generic/EmptyChunkSection.java +++ b/src/main/java/cn/nukkit/level/format/generic/EmptyChunkSection.java @@ -37,7 +37,7 @@ public class EmptyChunkSection implements ChunkSection { private static final byte[] EMPTY_2KB = new byte[2048]; public static final byte[] EMPTY_LIGHT_ARR = EMPTY_2KB; - public static final byte[] EMPTY_SKY_LIGHT_ARR = new byte[2048]; + public static final byte[] EMPTY_SKY_LIGHT_ARR = new byte[2048]; // Filled with 0xFF static { Arrays.fill(EMPTY_SKY_LIGHT_ARR, (byte) 255); } @@ -68,6 +68,7 @@ public final int getBlockId(int x, int y, int z) { return 0; } + @PowerNukkitOnly @Override public int getBlockId(int x, int y, int z, int layer) { return 0; @@ -78,18 +79,21 @@ public int getFullBlock(int x, int y, int z) { return 0; } + @PowerNukkitOnly @Nonnull @Override public BlockState getBlockState(int x, int y, int z, int layer) { return BlockState.AIR; } + @PowerNukkitOnly @Override public boolean setBlockAtLayer(int x, int y, int z, int layer, int blockId) { if (blockId != 0) throw new ChunkException(MODIFICATION_ERROR_MESSAGE); return false; } + @PowerNukkitOnly @Nonnull @Override public Block getAndSetBlock(int x, int y, int z, int layer, Block block) { @@ -113,6 +117,7 @@ public BlockState getAndSetBlockState(int x, int y, int z, int layer, BlockState return BlockState.AIR; } + @PowerNukkitOnly @Override public void setBlockId(int x, int y, int z, int layer, int id) { if (id != 0) throw new ChunkException(MODIFICATION_ERROR_MESSAGE); @@ -134,12 +139,14 @@ public boolean setBlock(int x, int y, int z, int blockId, int meta) { @Deprecated @DeprecationDetails(reason = "The data is limited to 32 bits", replaceWith = "getBlockState", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public boolean setBlockAtLayer(int x, int y, int z, int layer, int blockId, int meta) { if (blockId != 0) throw new ChunkException(MODIFICATION_ERROR_MESSAGE); return false; } + @PowerNukkitOnly @Override public boolean setBlockStateAtLayer(int x, int y, int z, int layer, BlockState state) { if (!state.equals(BlockState.AIR)) throw new ChunkException(MODIFICATION_ERROR_MESSAGE); @@ -170,6 +177,7 @@ public final int getBlockData(int x, int y, int z) { @Deprecated @DeprecationDetails(reason = "The data is limited to 32 bits", replaceWith = "getBlockState", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public int getBlockData(int x, int y, int z, int layer) { return 0; @@ -184,6 +192,7 @@ public void setBlockData(int x, int y, int z, int data) { @Deprecated @DeprecationDetails(reason = "The data is limited to 32 bits", replaceWith = "getBlockState", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public void setBlockData(int x, int y, int z, int layer, int data) { if (data != 0) throw new ChunkException(MODIFICATION_ERROR_MESSAGE); @@ -199,12 +208,14 @@ public boolean setFullBlockId(int x, int y, int z, int fullId) { @Deprecated @DeprecationDetails(reason = "The data is limited to 32 bits", replaceWith = "getBlockState", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public boolean setFullBlockId(int x, int y, int z, int layer, int fullId) { if (fullId != 0) throw new ChunkException(MODIFICATION_ERROR_MESSAGE); return false; } + @PowerNukkitOnly @Deprecated @DeprecationDetails(reason = "The data is limited to 32 bits", replaceWith = "getBlockState", since = "1.4.0.0-PN") @Override @@ -241,12 +252,14 @@ public boolean isEmpty() { public void writeTo(@Nonnull BinaryStream stream) { stream.put(EMPTY_CHUNK_DATA); } - + + @PowerNukkitOnly @Override public int getMaximumLayer() { return 0; } - + + @PowerNukkitOnly @Nonnull @Override public CompoundTag toNBT() { @@ -275,6 +288,7 @@ public void setContentVersion(int contentVersion) { } } + @PowerNukkitOnly @Override public int getBlockChangeStateAbove(int x, int y, int z) { return 0; diff --git a/src/main/java/cn/nukkit/level/format/generic/serializer/NetworkChunkSerializer.java b/src/main/java/cn/nukkit/level/format/generic/serializer/NetworkChunkSerializer.java new file mode 100644 index 00000000000..0a8478d6334 --- /dev/null +++ b/src/main/java/cn/nukkit/level/format/generic/serializer/NetworkChunkSerializer.java @@ -0,0 +1,120 @@ +package cn.nukkit.level.format.generic.serializer; + +import cn.nukkit.api.Since; +import cn.nukkit.blockentity.BlockEntity; +import cn.nukkit.blockentity.BlockEntitySpawnable; +import cn.nukkit.level.DimensionData; +import cn.nukkit.level.Level; +import cn.nukkit.level.biome.Biome; +import cn.nukkit.level.format.ChunkSection; +import cn.nukkit.level.format.generic.BaseChunk; +import cn.nukkit.level.format.generic.BaseFullChunk; +import cn.nukkit.level.util.PalettedBlockStorage; +import cn.nukkit.nbt.NBTIO; +import cn.nukkit.nbt.tag.CompoundTag; +import cn.nukkit.utils.BinaryStream; +import cn.nukkit.utils.ThreadCache; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; + +import java.io.IOException; +import java.nio.ByteOrder; +import java.util.List; +import java.util.function.BiConsumer; + +@Since("1.6.0.0-PN") +public class NetworkChunkSerializer { + + private static final int EXTENDED_NEGATIVE_SUB_CHUNKS = 4; + + private static final byte[] negativeSubChunks; + + static { + // Build up 4 SubChunks for the extended negative height + BinaryStream stream = new BinaryStream(); + for (int i = 0; i < EXTENDED_NEGATIVE_SUB_CHUNKS; i++) { + stream.putByte((byte) 8); // SubChunk version + stream.putByte((byte) 0); // 0 layers + } + negativeSubChunks = stream.getBuffer(); + } + + @Since("1.6.0.0-PN") + public static void serialize(BaseChunk chunk, BiConsumer callback, DimensionData dimensionData) { + byte[] blockEntities; + if (chunk.getBlockEntities().isEmpty()) { + blockEntities = new byte[0]; + } else { + blockEntities = serializeEntities(chunk); + } + + int subChunkCount = 0; + ChunkSection[] sections = chunk.getSections(); + for (int i = sections.length - 1; i >= 0; i--) { + if (!sections[i].isEmpty()) { + subChunkCount = i + 1; + break; + } + } + + int maxDimensionSections = dimensionData.getHeight() >> 4; + subChunkCount = Math.min(maxDimensionSections, subChunkCount); + + // In 1.18 3D biome palettes were introduced. However, current world format + // used internally doesn't support them, so we need to convert from legacy 2D + byte[] biomePalettes = convert2DBiomesTo3D(chunk, maxDimensionSections); + BinaryStream stream = ThreadCache.binaryStream.get().reset(); + + // Overworld has negative coordinates, but we currently do not support them + int writtenSections = subChunkCount; + if (dimensionData.getDimensionId() == Level.DIMENSION_OVERWORLD && subChunkCount < maxDimensionSections) { + stream.put(negativeSubChunks); + writtenSections += EXTENDED_NEGATIVE_SUB_CHUNKS; + } + + for (int i = 0; i < subChunkCount; i++) { + sections[i].writeTo(stream); + } + + stream.put(biomePalettes); + stream.putByte((byte) 0); // Border blocks + stream.put(blockEntities); + callback.accept(stream, writtenSections); + } + + private static byte[] serializeEntities(BaseChunk chunk) { + List tagList = new ObjectArrayList<>(); + for (BlockEntity blockEntity : chunk.getBlockEntities().values()) { + if (blockEntity instanceof BlockEntitySpawnable) { + tagList.add(((BlockEntitySpawnable) blockEntity).getSpawnCompound()); + } + } + + try { + return NBTIO.write(tagList, ByteOrder.LITTLE_ENDIAN, true); + } catch (IOException e) { + throw new RuntimeException(e); + } + } + + private static byte[] convert2DBiomesTo3D(BaseFullChunk chunk, int sections) { + PalettedBlockStorage palette = PalettedBlockStorage.createWithDefaultState(Biome.getBiomeIdOrCorrect(chunk.getBiomeId(0, 0))); + for (int x = 0; x < 16; x++) { + for (int z = 0; z < 16; z++) { + int biomeId = Biome.getBiomeIdOrCorrect(chunk.getBiomeId(x, z)); + for (int y = 0; y < 16; y++) { + palette.setBlock(x, y, z, biomeId); + } + } + } + + BinaryStream stream = ThreadCache.binaryStream.get().reset(); + palette.writeTo(stream); + byte[] bytes = stream.getBuffer(); + stream.reset(); + + for (int i = 0; i < sections; i++) { + stream.put(bytes); + } + return stream.getBuffer(); + } +} diff --git a/src/main/java/cn/nukkit/level/format/updater/BeehiveUpdater.java b/src/main/java/cn/nukkit/level/format/updater/BeehiveUpdater.java index 2170cc728e2..98bd7f151bb 100644 --- a/src/main/java/cn/nukkit/level/format/updater/BeehiveUpdater.java +++ b/src/main/java/cn/nukkit/level/format/updater/BeehiveUpdater.java @@ -20,6 +20,7 @@ public BeehiveUpdater(ChunkSection section, boolean updateDirection) { this.updateDirection = updateDirection; } + @PowerNukkitOnly @Override public boolean update(int offsetX, int offsetY, int offsetZ, int x, int y, int z, BlockState state) { int blockId = state.getBlockId(); diff --git a/src/main/java/cn/nukkit/level/format/updater/DoorUpdater.java b/src/main/java/cn/nukkit/level/format/updater/DoorUpdater.java index e2071b51114..79350774a92 100644 --- a/src/main/java/cn/nukkit/level/format/updater/DoorUpdater.java +++ b/src/main/java/cn/nukkit/level/format/updater/DoorUpdater.java @@ -29,6 +29,7 @@ public DoorUpdater(Chunk chunk, ChunkSection section) { this.section = section; } + @PowerNukkitOnly @Override public boolean update(int offsetX, int offsetY, int offsetZ, int x, int y, int z, BlockState state) { switch (state.getBlockId()) { diff --git a/src/main/java/cn/nukkit/level/format/updater/FrameUpdater.java b/src/main/java/cn/nukkit/level/format/updater/FrameUpdater.java index cee52a3963e..87885b4634c 100644 --- a/src/main/java/cn/nukkit/level/format/updater/FrameUpdater.java +++ b/src/main/java/cn/nukkit/level/format/updater/FrameUpdater.java @@ -21,6 +21,7 @@ public FrameUpdater(ChunkSection section) { this.section = section; } + @PowerNukkitOnly @Override public boolean update(int offsetX, int offsetY, int offsetZ, int x, int y, int z, BlockState state) { if (state.getBlockId() != BlockID.ITEM_FRAME_BLOCK) { diff --git a/src/main/java/cn/nukkit/level/format/updater/GroupedUpdaters.java b/src/main/java/cn/nukkit/level/format/updater/GroupedUpdaters.java index ac4fe8af576..33d22220764 100644 --- a/src/main/java/cn/nukkit/level/format/updater/GroupedUpdaters.java +++ b/src/main/java/cn/nukkit/level/format/updater/GroupedUpdaters.java @@ -15,6 +15,7 @@ public GroupedUpdaters(Updater... updaters) { this.updaters = updaters; } + @PowerNukkitOnly @Override public boolean update(int offsetX, int offsetY, int offsetZ, int x, int y, int z, BlockState state) { for (Updater updater : updaters) { diff --git a/src/main/java/cn/nukkit/level/format/updater/MesaBiomeUpdater.java b/src/main/java/cn/nukkit/level/format/updater/MesaBiomeUpdater.java index 6c2ffa30b79..87ce0c4a2f6 100644 --- a/src/main/java/cn/nukkit/level/format/updater/MesaBiomeUpdater.java +++ b/src/main/java/cn/nukkit/level/format/updater/MesaBiomeUpdater.java @@ -17,6 +17,7 @@ public MesaBiomeUpdater(ChunkSection section) { this.section = section; } + @PowerNukkitOnly @SuppressWarnings("deprecation") @Override public boolean update(int offsetX, int offsetY, int offsetZ, int x, int y, int z, BlockState state) { diff --git a/src/main/java/cn/nukkit/level/format/updater/NewLeafUpdater.java b/src/main/java/cn/nukkit/level/format/updater/NewLeafUpdater.java index 7f83e19c1ba..73e70056c03 100644 --- a/src/main/java/cn/nukkit/level/format/updater/NewLeafUpdater.java +++ b/src/main/java/cn/nukkit/level/format/updater/NewLeafUpdater.java @@ -18,6 +18,7 @@ public NewLeafUpdater(ChunkSection section) { this.section = section; } + @PowerNukkitOnly @Override public boolean update(int offsetX, int offsetY, int offsetZ, int x, int y, int z, BlockState state) { if (state.getBlockId() == BlockID.LEAVES2) { diff --git a/src/main/java/cn/nukkit/level/format/updater/OldWoodBarkUpdater.java b/src/main/java/cn/nukkit/level/format/updater/OldWoodBarkUpdater.java index ecf030f1dcf..ec851fbfeab 100644 --- a/src/main/java/cn/nukkit/level/format/updater/OldWoodBarkUpdater.java +++ b/src/main/java/cn/nukkit/level/format/updater/OldWoodBarkUpdater.java @@ -21,6 +21,7 @@ public OldWoodBarkUpdater(ChunkSection section, int fromLog, int increment) { this.increment = increment; } + @PowerNukkitOnly @Override public boolean update(int offsetX, int offsetY, int offsetZ, int x, int y, int z, BlockState state) { if (state.getBlockId() != fromLog) { diff --git a/src/main/java/cn/nukkit/level/format/updater/SnowLayerUpdater.java b/src/main/java/cn/nukkit/level/format/updater/SnowLayerUpdater.java index 2f57693789e..b27a4b20316 100644 --- a/src/main/java/cn/nukkit/level/format/updater/SnowLayerUpdater.java +++ b/src/main/java/cn/nukkit/level/format/updater/SnowLayerUpdater.java @@ -21,6 +21,7 @@ public SnowLayerUpdater(Level level, ChunkSection section) { this.section = section; } + @PowerNukkitOnly @Override public boolean update(int offsetX, int offsetY, int offsetZ, int x, int y, int z, BlockState state) { if (state.getBlockId() != BlockID.SNOW_LAYER) { diff --git a/src/main/java/cn/nukkit/level/format/updater/StemStrippedUpdater.java b/src/main/java/cn/nukkit/level/format/updater/StemStrippedUpdater.java index a94ab8741ae..40ad3e986f1 100644 --- a/src/main/java/cn/nukkit/level/format/updater/StemStrippedUpdater.java +++ b/src/main/java/cn/nukkit/level/format/updater/StemStrippedUpdater.java @@ -25,6 +25,7 @@ public StemStrippedUpdater(ChunkSection section) { this.section = section; } + @PowerNukkitOnly @Override public boolean update(int offsetX, int offsetY, int offsetZ, int x, int y, int z, BlockState state) { switch (state.getBlockId()) { diff --git a/src/main/java/cn/nukkit/level/format/updater/StemUpdater.java b/src/main/java/cn/nukkit/level/format/updater/StemUpdater.java index ed12755b1a7..368bce4016b 100644 --- a/src/main/java/cn/nukkit/level/format/updater/StemUpdater.java +++ b/src/main/java/cn/nukkit/level/format/updater/StemUpdater.java @@ -26,6 +26,7 @@ public StemUpdater(Level level, ChunkSection section, int stemId, int productId) this.productId = productId; } + @PowerNukkitOnly @Override public boolean update(int offsetX, int offsetY, int offsetZ, int x, int y, int z, BlockState state) { if (state.getBlockId() != stemId) { diff --git a/src/main/java/cn/nukkit/level/format/updater/WallUpdater.java b/src/main/java/cn/nukkit/level/format/updater/WallUpdater.java index 01882ad9c63..543d3cdc8a2 100644 --- a/src/main/java/cn/nukkit/level/format/updater/WallUpdater.java +++ b/src/main/java/cn/nukkit/level/format/updater/WallUpdater.java @@ -27,6 +27,7 @@ public WallUpdater(Level level, ChunkSection section) { this.section = section; } + @PowerNukkitOnly @Override public boolean update(int offsetX, int offsetY, int offsetZ, int x, int y, int z, BlockState state) { if (state.getBlockId() != BlockID.COBBLE_WALL) { diff --git a/src/main/java/cn/nukkit/level/generator/Flat.java b/src/main/java/cn/nukkit/level/generator/Flat.java index 6a6d4c72b59..b9f47d6d384 100644 --- a/src/main/java/cn/nukkit/level/generator/Flat.java +++ b/src/main/java/cn/nukkit/level/generator/Flat.java @@ -1,6 +1,5 @@ package cn.nukkit.level.generator; -import cn.nukkit.Server; import cn.nukkit.block.Block; import cn.nukkit.block.BlockID; import cn.nukkit.level.ChunkManager; diff --git a/src/main/java/cn/nukkit/level/generator/Generator.java b/src/main/java/cn/nukkit/level/generator/Generator.java index 4659e3b0e2b..4c9e9f55340 100644 --- a/src/main/java/cn/nukkit/level/generator/Generator.java +++ b/src/main/java/cn/nukkit/level/generator/Generator.java @@ -1,7 +1,10 @@ package cn.nukkit.level.generator; +import cn.nukkit.api.Since; import cn.nukkit.block.BlockID; import cn.nukkit.level.ChunkManager; +import cn.nukkit.level.DimensionData; +import cn.nukkit.level.DimensionEnum; import cn.nukkit.level.Level; import cn.nukkit.math.NukkitRandom; import cn.nukkit.math.Vector3; @@ -20,6 +23,16 @@ public abstract class Generator implements BlockID { public abstract int getId(); + @Since("1.6.0.0-PN") + public DimensionData getDimensionData() { + DimensionData dimensionData = DimensionEnum.getDataFromId(this.getDimension()); + if (dimensionData == null) { + dimensionData = DimensionEnum.OVERWORLD.getDimensionData(); + } + return dimensionData; + } + + @Deprecated public int getDimension() { return Level.DIMENSION_OVERWORLD; } diff --git a/src/main/java/cn/nukkit/level/generator/Nether.java b/src/main/java/cn/nukkit/level/generator/Nether.java index 64d7a9b08cd..5f250f433f7 100644 --- a/src/main/java/cn/nukkit/level/generator/Nether.java +++ b/src/main/java/cn/nukkit/level/generator/Nether.java @@ -154,6 +154,7 @@ public void populateChunk(int chunkX, int chunkZ) { biome.populateChunk(this.level, chunkX, chunkZ, this.nukkitRandom); } + @Override public Vector3 getSpawn() { return new Vector3(0, 64, 0); } diff --git a/src/main/java/cn/nukkit/level/generator/SimpleChunkManager.java b/src/main/java/cn/nukkit/level/generator/SimpleChunkManager.java index 8160c302ef7..75f3fc60e1f 100644 --- a/src/main/java/cn/nukkit/level/generator/SimpleChunkManager.java +++ b/src/main/java/cn/nukkit/level/generator/SimpleChunkManager.java @@ -23,6 +23,7 @@ public int getBlockIdAt(int x, int y, int z) { return getBlockIdAt(x, y, z, 0); } + @PowerNukkitOnly @Override public int getBlockIdAt(int x, int y, int z, int layer) { FullChunk chunk = this.getChunk(x >> 4, z >> 4); @@ -32,6 +33,7 @@ public int getBlockIdAt(int x, int y, int z, int layer) { return 0; } + @PowerNukkitOnly @Override public BlockState getBlockStateAt(int x, int y, int z, int layer) { FullChunk chunk = this.getChunk(x >> 4, z >> 4); @@ -46,6 +48,7 @@ public void setBlockIdAt(int x, int y, int z, int id) { setBlockIdAt(x, y, z, 0, id); } + @PowerNukkitOnly @Override public void setBlockIdAt(int x, int y, int z, int layer, int id) { FullChunk chunk = this.getChunk(x >> 4, z >> 4); @@ -63,11 +66,12 @@ public void setBlockAt(int x, int y, int z, int id, int data) { @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public boolean setBlockAtLayer(int x, int y, int z, int layer, int id, int data) { FullChunk chunk = this.getChunk(x >> 4, z >> 4); if (chunk != null) { - return chunk.setBlock(x & 0xf, y & 0xff, z & 0xf, id, data); + return chunk.setBlockAtLayer(x & 0xf, y & 0xff, z & 0xf, layer, id, data); } return false; } @@ -81,6 +85,7 @@ public void setBlockFullIdAt(int x, int y, int z, int fullId) { @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public void setBlockFullIdAt(int x, int y, int z, int layer, int fullId) { FullChunk chunk = this.getChunk(x >> 4, z >> 4); @@ -109,6 +114,7 @@ public int getBlockDataAt(int x, int y, int z) { @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public int getBlockDataAt(int x, int y, int z, int layer) { FullChunk chunk = this.getChunk(x >> 4, z >> 4); @@ -127,6 +133,7 @@ public void setBlockDataAt(int x, int y, int z, int data) { @Deprecated @DeprecationDetails(reason = "The meta is limited to 32 bits", since = "1.4.0.0-PN") + @PowerNukkitOnly @Override public void setBlockDataAt(int x, int y, int z, int layer, int data) { FullChunk chunk = this.getChunk(x >> 4, z >> 4); diff --git a/src/main/java/cn/nukkit/level/generator/object/ObjectNyliumVegetation.java b/src/main/java/cn/nukkit/level/generator/object/ObjectNyliumVegetation.java index ef3bbb47799..8a6affc3171 100644 --- a/src/main/java/cn/nukkit/level/generator/object/ObjectNyliumVegetation.java +++ b/src/main/java/cn/nukkit/level/generator/object/ObjectNyliumVegetation.java @@ -6,9 +6,11 @@ import cn.nukkit.level.ChunkManager; import cn.nukkit.math.NukkitRandom; import cn.nukkit.math.Vector3; +import lombok.experimental.UtilityClass; @PowerNukkitOnly @Since("1.4.0.0-PN") +@UtilityClass public class ObjectNyliumVegetation { @PowerNukkitOnly @Since("1.4.0.0-PN") diff --git a/src/main/java/cn/nukkit/level/generator/object/ObjectTallGrass.java b/src/main/java/cn/nukkit/level/generator/object/ObjectTallGrass.java index 9191ee519f9..1246705a489 100644 --- a/src/main/java/cn/nukkit/level/generator/object/ObjectTallGrass.java +++ b/src/main/java/cn/nukkit/level/generator/object/ObjectTallGrass.java @@ -1,5 +1,6 @@ package cn.nukkit.level.generator.object; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.level.ChunkManager; import cn.nukkit.math.NukkitRandom; @@ -48,6 +49,7 @@ public static void growGrass(ChunkManager level, Vector3 pos, NukkitRandom rando } } + @PowerNukkitOnly public static void growGrass(ChunkManager level, Vector3 pos, NukkitRandom random, int count, int radius) { int[][] arr = { {Block.DANDELION, 0}, diff --git a/src/main/java/cn/nukkit/level/generator/object/mushroom/BigMushroom.java b/src/main/java/cn/nukkit/level/generator/object/mushroom/BigMushroom.java index 19d261ef173..44634bdd0bf 100644 --- a/src/main/java/cn/nukkit/level/generator/object/mushroom/BigMushroom.java +++ b/src/main/java/cn/nukkit/level/generator/object/mushroom/BigMushroom.java @@ -37,6 +37,7 @@ public BigMushroom() { this.mushroomType = -1; } + @Override public boolean generate(ChunkManager level, NukkitRandom rand, Vector3 position) { int block = this.mushroomType; if (block < 0) { @@ -173,7 +174,7 @@ public boolean generate(ChunkManager level, NukkitRandom rand, Vector3 position) if (position.getY() >= position.getY() + i - 1 || meta != ALL_INSIDE) { Vector3 blockPos = new Vector3(l1, l2, i2); - if (!Block.solid[level.getBlockIdAt(blockPos.getFloorX(), blockPos.getFloorY(), blockPos.getFloorZ())]) { + if (!Block.isSolid(level.getBlockIdAt(blockPos.getFloorX(), blockPos.getFloorY(), blockPos.getFloorZ()))) { mushroom.setDamage(meta); this.setBlockAndNotifyAdequately(level, blockPos, mushroom); } @@ -186,7 +187,7 @@ public boolean generate(ChunkManager level, NukkitRandom rand, Vector3 position) Vector3 pos = position.up(i3); int id = level.getBlockIdAt(pos.getFloorX(), pos.getFloorY(), pos.getFloorZ()); - if (!Block.solid[id]) { + if (!Block.isSolid(id)) { mushroom.setDamage(STEM); this.setBlockAndNotifyAdequately(level, pos, mushroom); } diff --git a/src/main/java/cn/nukkit/level/generator/object/tree/ObjectJungleBigTree.java b/src/main/java/cn/nukkit/level/generator/object/tree/ObjectJungleBigTree.java index 4a4d7727c79..51b1cc91b90 100644 --- a/src/main/java/cn/nukkit/level/generator/object/tree/ObjectJungleBigTree.java +++ b/src/main/java/cn/nukkit/level/generator/object/tree/ObjectJungleBigTree.java @@ -13,6 +13,7 @@ public ObjectJungleBigTree(int baseHeightIn, int extraRandomHeight, Block woodMe super(baseHeightIn, extraRandomHeight, woodMetadata, leavesMetadata); } + @Override public boolean generate(ChunkManager level, NukkitRandom rand, Vector3 position) { int height = this.getHeight(rand); diff --git a/src/main/java/cn/nukkit/level/generator/object/tree/ObjectSavannaTree.java b/src/main/java/cn/nukkit/level/generator/object/tree/ObjectSavannaTree.java index 71226eb541f..8f8ba0e7888 100644 --- a/src/main/java/cn/nukkit/level/generator/object/tree/ObjectSavannaTree.java +++ b/src/main/java/cn/nukkit/level/generator/object/tree/ObjectSavannaTree.java @@ -13,6 +13,7 @@ public class ObjectSavannaTree extends TreeGenerator { private static final Block TRUNK = Block.get(BlockID.WOOD2, BlockWood2.ACACIA); private static final Block LEAF = Block.get(BlockID.LEAVES2, BlockLeaves2.ACACIA); + @Override public boolean generate(ChunkManager level, NukkitRandom rand, Vector3 position) { int i = rand.nextBoundedInt(3) + rand.nextBoundedInt(3) + 5; boolean flag = true; diff --git a/src/main/java/cn/nukkit/level/generator/object/tree/ObjectSpruceTree.java b/src/main/java/cn/nukkit/level/generator/object/tree/ObjectSpruceTree.java index b8bf6aeac21..e1e798e8c3c 100644 --- a/src/main/java/cn/nukkit/level/generator/object/tree/ObjectSpruceTree.java +++ b/src/main/java/cn/nukkit/level/generator/object/tree/ObjectSpruceTree.java @@ -59,7 +59,7 @@ public void placeLeaves(ChunkManager level, int topSize, int lRadius, int x, int continue; } - if (!Block.solid[level.getBlockIdAt(xx, yyy, zz)]) { + if (!Block.isSolid(level.getBlockIdAt(xx, yyy, zz))) { level.setBlockAt(xx, yyy, zz, this.getLeafBlock(), this.getType()); } } diff --git a/src/main/java/cn/nukkit/level/generator/object/tree/ObjectTree.java b/src/main/java/cn/nukkit/level/generator/object/tree/ObjectTree.java index 0ec0f53eba7..f1046dd8d96 100644 --- a/src/main/java/cn/nukkit/level/generator/object/tree/ObjectTree.java +++ b/src/main/java/cn/nukkit/level/generator/object/tree/ObjectTree.java @@ -140,7 +140,7 @@ public void placeObject(ChunkManager level, int x, int y, int z, NukkitRandom ra if (xOff == mid && zOff == mid && (yOff == 0 || random.nextBoundedInt(2) == 0)) { continue; } - if (!Block.solid[level.getBlockIdAt(xx, yy, zz)]) { + if (!Block.isSolid(level.getBlockIdAt(xx, yy, zz))) { level.setBlockAt(xx, yy, zz, this.getLeafBlock(), this.getType()); } } diff --git a/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorGroundCover.java b/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorGroundCover.java index 6e015728f88..4963e7ea075 100644 --- a/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorGroundCover.java +++ b/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorGroundCover.java @@ -1,5 +1,6 @@ package cn.nukkit.level.generator.populator.impl; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.block.Block; import cn.nukkit.block.BlockID; import cn.nukkit.level.ChunkManager; @@ -14,6 +15,7 @@ * @author DaPorkchop_ */ public class PopulatorGroundCover extends Populator { + @PowerNukkitOnly public static final int STONE = BlockID.STONE << Block.DATA_BITS; @Override diff --git a/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorGroundFire.java b/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorGroundFire.java index 9f40fffd531..9ee1b4ad492 100644 --- a/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorGroundFire.java +++ b/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorGroundFire.java @@ -25,7 +25,7 @@ protected int getBlockId(int x, int z, NukkitRandom random, FullChunk chunk) { @Override protected void placeBlock(int x, int y, int z, int id, FullChunk chunk, NukkitRandom random) { super.placeBlock(x, y, z, id, chunk, random); - chunk.setBlockLight(x, y, z, Block.light[FIRE]); + chunk.setBlockLight(x, y, z, Block.getLightLevel(FIRE)); } @Override diff --git a/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorLava.java b/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorLava.java index c2f954a9474..b8b49772bf3 100644 --- a/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorLava.java +++ b/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorLava.java @@ -36,7 +36,7 @@ public void populate(ChunkManager level, int chunkX, int chunkZ, NukkitRandom ra int y = this.getHighestWorkableBlock(chunk, x, z); if (y != -1 && chunk.getBlockId(x, y, z) == Block.AIR) { chunk.setBlock(x, y, z, Block.LAVA); - chunk.setBlockLight(x, y, z, Block.light[Block.LAVA]); + chunk.setBlockLight(x, y, z, Block.getLightLevel(Block.LAVA)); this.lavaSpread(bx + x, y, bz + z); } } diff --git a/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorOre.java b/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorOre.java index 5b8852602aa..8f02a8d036b 100644 --- a/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorOre.java +++ b/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorOre.java @@ -1,7 +1,6 @@ package cn.nukkit.level.generator.populator.impl; -import cn.nukkit.api.NewRakNetOnly; -import cn.nukkit.api.RemovedFromNewRakNet; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.block.Block; import cn.nukkit.level.ChunkManager; @@ -21,8 +20,8 @@ public class PopulatorOre extends Populator { /** * @implNote Removed from the new-raknet branch */ - @RemovedFromNewRakNet @Since("1.4.0.0-PN") + @PowerNukkitOnly public PopulatorOre() { this(Block.STONE); } @@ -30,13 +29,12 @@ public PopulatorOre() { /** * @implNote Removed from the new-raknet branch */ - @RemovedFromNewRakNet @Since("1.4.0.0-PN") + @PowerNukkitOnly public PopulatorOre(int id) { this.replaceId = id; } - @NewRakNetOnly public PopulatorOre(int replaceId, OreType[] oreTypes) { this.replaceId = replaceId; this.oreTypes = oreTypes; @@ -64,7 +62,7 @@ public void populate(ChunkManager level, int chunkX, int chunkZ, NukkitRandom ra /** * @implNote Removed from the new-raknet branch */ - @RemovedFromNewRakNet + @PowerNukkitOnly @Since("1.4.0.0-PN") public void setOreTypes(OreType[] oreTypes) { this.oreTypes = oreTypes; diff --git a/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorOreEmerald.java b/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorOreEmerald.java index 75718b38b33..9610f440e6c 100644 --- a/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorOreEmerald.java +++ b/src/main/java/cn/nukkit/level/generator/populator/impl/PopulatorOreEmerald.java @@ -18,7 +18,12 @@ public class PopulatorOreEmerald extends Populator { private static final BlockState STATE_STONE = BlockState.of(STONE); private static final BlockState STATE_EMERALD_ORE = BlockState.of(EMERALD_ORE); - + + @PowerNukkitOnly + public PopulatorOreEmerald() { + super(); + } + @Override public void populate(ChunkManager level, int chunkX, int chunkZ, NukkitRandom random, FullChunk chunk) { for (int i = 0; i < 11; i++) { diff --git a/src/main/java/cn/nukkit/level/particle/CloudParticle.java b/src/main/java/cn/nukkit/level/particle/CloudParticle.java index bbcccdbf8dd..5f826c9b157 100644 --- a/src/main/java/cn/nukkit/level/particle/CloudParticle.java +++ b/src/main/java/cn/nukkit/level/particle/CloudParticle.java @@ -1,10 +1,17 @@ package cn.nukkit.level.particle; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.math.Vector3; +@PowerNukkitOnly public class CloudParticle extends GenericParticle { + @PowerNukkitOnly public CloudParticle(Vector3 pos) { this(pos, 0); } - public CloudParticle(Vector3 pos, int scale) { super(pos, Particle.TYPE_EVAPORATION, scale); } + + @PowerNukkitOnly + public CloudParticle(Vector3 pos, int scale) { + super(pos, Particle.TYPE_EVAPORATION, scale); + } } diff --git a/src/main/java/cn/nukkit/level/particle/DustParticle.java b/src/main/java/cn/nukkit/level/particle/DustParticle.java index c0faa971776..f5682317250 100644 --- a/src/main/java/cn/nukkit/level/particle/DustParticle.java +++ b/src/main/java/cn/nukkit/level/particle/DustParticle.java @@ -18,6 +18,6 @@ public DustParticle(Vector3 pos, int r, int g, int b) { } public DustParticle(Vector3 pos, int r, int g, int b, int a) { - super(pos, Particle.TYPE_DUST, ((a & 0xff) << 24) | ((r & 0xff) << 16) | ((g & 0xff) << 8) | (b & 0xff)); + super(pos, Particle.TYPE_FALLING_DUST, ((a & 0xff) << 24) | ((r & 0xff) << 16) | ((g & 0xff) << 8) | (b & 0xff)); } } diff --git a/src/main/java/cn/nukkit/level/particle/ItemBreakParticle.java b/src/main/java/cn/nukkit/level/particle/ItemBreakParticle.java index 29a3651b3d0..4d3be2bfa4f 100644 --- a/src/main/java/cn/nukkit/level/particle/ItemBreakParticle.java +++ b/src/main/java/cn/nukkit/level/particle/ItemBreakParticle.java @@ -1,7 +1,6 @@ package cn.nukkit.level.particle; import cn.nukkit.item.Item; -import cn.nukkit.item.RuntimeItems; import cn.nukkit.math.Vector3; import cn.nukkit.network.protocol.DataPacket; import cn.nukkit.network.protocol.LevelEventPacket; @@ -16,9 +15,7 @@ public class ItemBreakParticle extends Particle { public ItemBreakParticle(Vector3 pos, Item item) { super(pos.x, pos.y, pos.z); - int networkFullId = RuntimeItems.getRuntimeMapping().getNetworkFullId(item); - int networkId = RuntimeItems.getNetworkId(networkFullId); - this.data = (networkId << 16 | item.getDamage()); + this.data = (item.getNetworkId() << 16 | item.getDamage()); } @Override diff --git a/src/main/java/cn/nukkit/level/particle/Particle.java b/src/main/java/cn/nukkit/level/particle/Particle.java index e5d94c8944a..792d742a4a7 100644 --- a/src/main/java/cn/nukkit/level/particle/Particle.java +++ b/src/main/java/cn/nukkit/level/particle/Particle.java @@ -23,83 +23,94 @@ public abstract class Particle extends Vector3 { public static final int TYPE_EXPLODE = dynamic(6); public static final int TYPE_EVAPORATION = dynamic(7); public static final int TYPE_FLAME = dynamic(8); - public static final int TYPE_LAVA = dynamic(9); - public static final int TYPE_LARGE_SMOKE = dynamic(10); - public static final int TYPE_REDSTONE = dynamic(11); - public static final int TYPE_RISING_RED_DUST = dynamic(12); - public static final int TYPE_ITEM_BREAK = dynamic(13); - public static final int TYPE_SNOWBALL_POOF = dynamic(14); - public static final int TYPE_HUGE_EXPLODE = dynamic(15); - public static final int TYPE_HUGE_EXPLODE_SEED = dynamic(16); - public static final int TYPE_MOB_FLAME = dynamic(17); - public static final int TYPE_HEART = dynamic(18); - public static final int TYPE_TERRAIN = dynamic(19); - public static final int TYPE_SUSPENDED_TOWN = dynamic(20), TYPE_TOWN_AURA = TYPE_SUSPENDED_TOWN; - public static final int TYPE_PORTAL = dynamic(21); - // 22 same as 21 - public static final int TYPE_SPLASH = dynamic(23), TYPE_WATER_SPLASH = TYPE_SPLASH; - @Since("1.4.0.0-PN") public static final int TYPE_WATER_SPLASH_MANUAL = dynamic(24); - public static final int TYPE_WATER_WAKE = dynamic(25); - public static final int TYPE_DRIP_WATER = dynamic(26); - public static final int TYPE_DRIP_LAVA = dynamic(27); - public static final int TYPE_DRIP_HONEY = dynamic(28); - @Since("1.4.0.0-PN") public static final int TYPE_STALACTITE_DRIP_WATER = dynamic(29); - @Since("1.4.0.0-PN") public static final int TYPE_STALACTITE_DRIP_LAVA = dynamic(30); - public static final int TYPE_FALLING_DUST = dynamic(31), TYPE_DUST = TYPE_FALLING_DUST; - public static final int TYPE_MOB_SPELL = dynamic(32); - public static final int TYPE_MOB_SPELL_AMBIENT = dynamic(33); - public static final int TYPE_MOB_SPELL_INSTANTANEOUS = dynamic(34); - public static final int TYPE_INK = dynamic(35); - public static final int TYPE_SLIME = dynamic(36); - public static final int TYPE_RAIN_SPLASH = dynamic(37); - public static final int TYPE_VILLAGER_ANGRY = dynamic(38); - public static final int TYPE_VILLAGER_HAPPY = dynamic(39); - public static final int TYPE_ENCHANTMENT_TABLE = dynamic(40); - public static final int TYPE_TRACKING_EMITTER = dynamic(41); - public static final int TYPE_NOTE = dynamic(42); - - @PowerNukkitOnly("Backward compatibility") - @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", by = "NukkitX", reason = "Removed from Nukkit") - public static final int TYPE_NOTE_AND_DUST = TYPE_NOTE; - - public static final int TYPE_WITCH_SPELL = dynamic(43); - public static final int TYPE_CARROT = dynamic(44); - @Since("1.4.0.0-PN") public static final int TYPE_MOB_APPEARANCE = dynamic(45); - public static final int TYPE_END_ROD = dynamic(46); - public static final int TYPE_RISING_DRAGONS_BREATH = dynamic(47); - public static final int TYPE_SPIT = dynamic(48); - public static final int TYPE_TOTEM = dynamic(49); - public static final int TYPE_FOOD = dynamic(50); - public static final int TYPE_FIREWORKS_STARTER = dynamic(51); - public static final int TYPE_FIREWORKS_SPARK = dynamic(52); - public static final int TYPE_FIREWORKS_OVERLAY = dynamic(53); - public static final int TYPE_BALLOON_GAS = dynamic(54); - public static final int TYPE_COLORED_FLAME = dynamic(55); - public static final int TYPE_SPARKLER = dynamic(56); - public static final int TYPE_CONDUIT = dynamic(57); - public static final int TYPE_BUBBLE_COLUMN_UP = dynamic(58); - public static final int TYPE_BUBBLE_COLUMN_DOWN = dynamic(59); - public static final int TYPE_SNEEZE = dynamic(60); - @Since("1.4.0.0-PN") public static final int TYPE_SHULKER_BULLET = dynamic(61); - @Since("1.4.0.0-PN") public static final int TYPE_BLEACH = dynamic(62); - public static final int TYPE_LARGE_EXPLOSION = dynamic(63); - @Since("1.4.0.0-PN") public static final int TYPE_MYCELIUM_DUST = dynamic(64); - public static final int TYPE_FALLING_RED_DUST = dynamic(65); - public static final int TYPE_CAMPFIRE_SMOKE = dynamic(66); - @Since("1.4.0.0-PN") public static final int TYPE_TALL_CAMPFIRE_SMOKE = dynamic(67); - public static final int TYPE_FALLING_DRAGONS_BREATH = dynamic(68); - public static final int TYPE_DRAGONS_BREATH = dynamic(69); - @Since("1.4.0.0-PN") public static final int TYPE_BLUE_FLAME = dynamic(70); - @Since("1.4.0.0-PN") public static final int TYPE_SOUL = dynamic(71); - @Since("1.4.0.0-PN") public static final int TYPE_OBSIDIAN_TEAR = dynamic(72); - @Since("1.4.0.0-PN") public static final int TYPE_PORTAL_REVERSE = dynamic(73); - @Since("1.4.0.0-PN") public static final int TYPE_SNOWFLAKE = dynamic(74); - @Since("1.4.0.0-PN") public static final int TYPE_VIBRATION_SIGNAL = dynamic(75); - @Since("1.4.0.0-PN") public static final int TYPE_SCULK_SENSOR_REDSTONE = dynamic(76); - @Since("1.4.0.0-PN") public static final int TYPE_SPORE_BLOSSOM_SHOWER = dynamic(77); - @Since("1.4.0.0-PN") public static final int TYPE_SPORE_BLOSSOM_AMBIENT = dynamic(78); - @Since("1.4.0.0-PN") public static final int TYPE_WAX = dynamic(79); - @Since("1.4.0.0-PN") public static final int TYPE_ELECTRIC_SPARK = dynamic(80); + @Since("1.5.2.0-PN") public static final int TYPE_CANDLE_FLAME = dynamic(9); + public static final int TYPE_LAVA = dynamic(10); + public static final int TYPE_LARGE_SMOKE = dynamic(11); + public static final int TYPE_REDSTONE = dynamic(12); + public static final int TYPE_RISING_RED_DUST = dynamic(13); + public static final int TYPE_ITEM_BREAK = dynamic(14); + public static final int TYPE_SNOWBALL_POOF = dynamic(15); + public static final int TYPE_HUGE_EXPLODE = dynamic(16); + public static final int TYPE_HUGE_EXPLODE_SEED = dynamic(17); + public static final int TYPE_MOB_FLAME = dynamic(18); + public static final int TYPE_HEART = dynamic(19); + public static final int TYPE_TERRAIN = dynamic(20); + public static final int TYPE_TOWN_AURA = dynamic(21); + + @Deprecated @DeprecationDetails(since = "1.5.2.0-PN", by = "PowerNukkit", reason = "Same as TYPE_TOWN_AURA", + replaceWith = "TYPE_TOWN_AURA") + public static final int TYPE_SUSPENDED_TOWN = TYPE_TOWN_AURA; + + public static final int TYPE_PORTAL = dynamic(22); + @PowerNukkitOnly @Since("1.5.2.0-PN") public static final int TYPE_MOB_PORTAL = dynamic(23); + public static final int TYPE_SPLASH = dynamic(24); + + @Deprecated @DeprecationDetails(since = "1.5.2.0-PN", by = "PowerNukkit", reason = "Same as TYPE_SPLASH", + replaceWith = "TYPE_SPLASH") + public static final int TYPE_WATER_SPLASH = TYPE_SPLASH; + + @Since("1.4.0.0-PN") public static final int TYPE_WATER_SPLASH_MANUAL = dynamic(25); + public static final int TYPE_WATER_WAKE = dynamic(26); + public static final int TYPE_DRIP_WATER = dynamic(27); + public static final int TYPE_DRIP_LAVA = dynamic(28); + public static final int TYPE_DRIP_HONEY = dynamic(29); + @Since("1.4.0.0-PN") public static final int TYPE_STALACTITE_DRIP_WATER = dynamic(30); + @Since("1.4.0.0-PN") public static final int TYPE_STALACTITE_DRIP_LAVA = dynamic(31); + public static final int TYPE_FALLING_DUST = dynamic(32); + + @Deprecated @DeprecationDetails(since = "1.5.2.0-PN", by = "PowerNukkit", reason = "Same as TYPE_FALLING_DUST", + replaceWith = "TYPE_FALLING_DUST") + public static final int TYPE_DUST = TYPE_FALLING_DUST; + + public static final int TYPE_MOB_SPELL = dynamic(33); + public static final int TYPE_MOB_SPELL_AMBIENT = dynamic(34); + public static final int TYPE_MOB_SPELL_INSTANTANEOUS = dynamic(35); + public static final int TYPE_INK = dynamic(36); + public static final int TYPE_SLIME = dynamic(37); + public static final int TYPE_RAIN_SPLASH = dynamic(38); + public static final int TYPE_VILLAGER_ANGRY = dynamic(39); + public static final int TYPE_VILLAGER_HAPPY = dynamic(40); + public static final int TYPE_ENCHANTMENT_TABLE = dynamic(41); + public static final int TYPE_TRACKING_EMITTER = dynamic(42); + public static final int TYPE_NOTE = dynamic(43); + public static final int TYPE_WITCH_SPELL = dynamic(44); + public static final int TYPE_CARROT = dynamic(45); + @Since("1.4.0.0-PN") public static final int TYPE_MOB_APPEARANCE = dynamic(46); + public static final int TYPE_END_ROD = dynamic(47); + public static final int TYPE_RISING_DRAGONS_BREATH = dynamic(48); + public static final int TYPE_SPIT = dynamic(49); + public static final int TYPE_TOTEM = dynamic(50); + public static final int TYPE_FOOD = dynamic(51); + public static final int TYPE_FIREWORKS_STARTER = dynamic(52); + public static final int TYPE_FIREWORKS_SPARK = dynamic(53); + public static final int TYPE_FIREWORKS_OVERLAY = dynamic(54); + public static final int TYPE_BALLOON_GAS = dynamic(55); + public static final int TYPE_COLORED_FLAME = dynamic(56); + public static final int TYPE_SPARKLER = dynamic(57); + public static final int TYPE_CONDUIT = dynamic(58); + public static final int TYPE_BUBBLE_COLUMN_UP = dynamic(59); + public static final int TYPE_BUBBLE_COLUMN_DOWN = dynamic(60); + public static final int TYPE_SNEEZE = dynamic(61); + @Since("1.4.0.0-PN") public static final int TYPE_SHULKER_BULLET = dynamic(62); + @Since("1.4.0.0-PN") public static final int TYPE_BLEACH = dynamic(63); + public static final int TYPE_LARGE_EXPLOSION = dynamic(64); + @Since("1.4.0.0-PN") public static final int TYPE_MYCELIUM_DUST = dynamic(65); + public static final int TYPE_FALLING_RED_DUST = dynamic(66); + public static final int TYPE_CAMPFIRE_SMOKE = dynamic(67); + @Since("1.4.0.0-PN") public static final int TYPE_TALL_CAMPFIRE_SMOKE = dynamic(68); + public static final int TYPE_FALLING_DRAGONS_BREATH = dynamic(69); + public static final int TYPE_DRAGONS_BREATH = dynamic(70); + @Since("1.4.0.0-PN") public static final int TYPE_BLUE_FLAME = dynamic(71); + @Since("1.4.0.0-PN") public static final int TYPE_SOUL = dynamic(72); + @Since("1.4.0.0-PN") public static final int TYPE_OBSIDIAN_TEAR = dynamic(73); + @Since("1.4.0.0-PN") public static final int TYPE_PORTAL_REVERSE = dynamic(74); + @Since("1.4.0.0-PN") public static final int TYPE_SNOWFLAKE = dynamic(75); + @Since("1.4.0.0-PN") public static final int TYPE_VIBRATION_SIGNAL = dynamic(76); + @Since("1.4.0.0-PN") public static final int TYPE_SCULK_SENSOR_REDSTONE = dynamic(77); + @Since("1.4.0.0-PN") public static final int TYPE_SPORE_BLOSSOM_SHOWER = dynamic(78); + @Since("1.4.0.0-PN") public static final int TYPE_SPORE_BLOSSOM_AMBIENT = dynamic(79); + @Since("1.4.0.0-PN") public static final int TYPE_WAX = dynamic(80); + @Since("1.4.0.0-PN") public static final int TYPE_ELECTRIC_SPARK = dynamic(81); @Since("1.4.0.0-PN") public static Integer getParticleIdByName(String name) { diff --git a/src/main/java/cn/nukkit/level/particle/SplashParticle.java b/src/main/java/cn/nukkit/level/particle/SplashParticle.java index 0193cc38b85..3aa3fe6627c 100644 --- a/src/main/java/cn/nukkit/level/particle/SplashParticle.java +++ b/src/main/java/cn/nukkit/level/particle/SplashParticle.java @@ -8,6 +8,6 @@ */ public class SplashParticle extends GenericParticle { public SplashParticle(Vector3 pos) { - super(pos, Particle.TYPE_WATER_SPLASH); + super(pos, Particle.TYPE_SPLASH); } } diff --git a/src/main/java/cn/nukkit/level/util/PalettedBlockStorage.java b/src/main/java/cn/nukkit/level/util/PalettedBlockStorage.java index 5e3ad0e62cf..ce52c7f82f6 100644 --- a/src/main/java/cn/nukkit/level/util/PalettedBlockStorage.java +++ b/src/main/java/cn/nukkit/level/util/PalettedBlockStorage.java @@ -1,6 +1,10 @@ package cn.nukkit.level.util; -import cn.nukkit.level.GlobalBlockPalette; +import cn.nukkit.api.DeprecationDetails; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.block.BlockID; +import cn.nukkit.blockstate.BlockStateRegistry; import cn.nukkit.utils.BinaryStream; import it.unimi.dsi.fastutil.ints.IntArrayList; import it.unimi.dsi.fastutil.ints.IntList; @@ -14,14 +18,53 @@ public class PalettedBlockStorage { private final IntList palette; private BitArray bitArray; + @Since("1.6.0.0-PN") + public static PalettedBlockStorage createFromBlockPalette() { + return createFromBlockPalette(BitArrayVersion.V2); + } + + @Since("1.6.0.0-PN") + public static PalettedBlockStorage createFromBlockPalette(BitArrayVersion version) { + int runtimeId = BlockStateRegistry.getRuntimeId(BlockID.AIR); + return new PalettedBlockStorage(version, runtimeId); + } + + @Since("1.6.0.0-PN") + public static PalettedBlockStorage createWithDefaultState(int defaultState) { + return createWithDefaultState(BitArrayVersion.V2, defaultState); + } + + @Since("1.6.0.0-PN") + public static PalettedBlockStorage createWithDefaultState(BitArrayVersion version, int defaultState) { + return new PalettedBlockStorage(version, defaultState); + } + + @PowerNukkitOnly("This was removed on 1.6.0.0-PN by Cloudburst Nukkit and re-added to fix plugin compatibility issue on 1.6.0.1-PN") + @Deprecated + @DeprecationDetails( + since = "1.6.0.0-PN", + reason = "Refactored by Cloudburst Nukkit to use static method instead of constructor", + replaceWith = "createFromBlockPalette()" + ) public PalettedBlockStorage() { this(BitArrayVersion.V2); } + @PowerNukkitOnly("This was removed on 1.6.0.0-PN by Cloudburst Nukkit and re-added to fix plugin compatibility issue on 1.6.0.1-PN") + @Deprecated + @DeprecationDetails( + since = "1.6.0.0-PN", + reason = "Refactored by Cloudburst Nukkit to use static method instead of constructor", + replaceWith = "createFromBlockPalette(BitArrayVersion)" + ) public PalettedBlockStorage(BitArrayVersion version) { + this(version, BlockStateRegistry.getRuntimeId(BlockID.AIR)); + } + + private PalettedBlockStorage(BitArrayVersion version, int defaultState) { this.bitArray = version.createPalette(SIZE); this.palette = new IntArrayList(16); - this.palette.add(GlobalBlockPalette.getOrCreateRuntimeId(0)); // Air is at the start of every palette. + this.palette.add(defaultState); } private PalettedBlockStorage(BitArray bitArray, IntList palette) { @@ -33,6 +76,15 @@ private int getPaletteHeader(BitArrayVersion version, boolean runtime) { return (version.getId() << 1) | (runtime ? 1 : 0); } + private int getIndex(int x, int y, int z) { + return (x << 8) | (z << 4) | y; + } + + @Since("1.6.0.0-PN") + public void setBlock(int x, int y, int z, int runtimeId) { + this.setBlock(this.getIndex(x, y, z), runtimeId); + } + public void setBlock(int index, int runtimeId) { try { int id = this.idFor(runtimeId); diff --git a/src/main/java/cn/nukkit/level/util/Pow2BitArray.java b/src/main/java/cn/nukkit/level/util/Pow2BitArray.java index 6e2c1a02965..0205697f415 100644 --- a/src/main/java/cn/nukkit/level/util/Pow2BitArray.java +++ b/src/main/java/cn/nukkit/level/util/Pow2BitArray.java @@ -36,6 +36,7 @@ public class Pow2BitArray implements BitArray { /** * Sets the entry at the given location to the given value */ + @Override public void set(int index, int value) { Preconditions.checkElementIndex(index, this.size); Preconditions.checkArgument(value >= 0 && value <= this.version.maxEntryValue, @@ -49,6 +50,7 @@ public void set(int index, int value) { /** * Gets the entry at the given index */ + @Override public int get(int index) { Preconditions.checkElementIndex(index, this.size); int bitIndex = index * this.version.bits; @@ -60,6 +62,7 @@ public int get(int index) { /** * Gets the long array that is used to store the data in this BitArray. This is useful for sending packet data. */ + @Override public int size() { return this.size; } @@ -74,6 +77,7 @@ public int[] getWords() { return this.words; } + @Override public BitArrayVersion getVersion() { return version; } diff --git a/src/main/java/cn/nukkit/math/AxisAlignedBB.java b/src/main/java/cn/nukkit/math/AxisAlignedBB.java index 7425568bda3..046e65967d5 100644 --- a/src/main/java/cn/nukkit/math/AxisAlignedBB.java +++ b/src/main/java/cn/nukkit/math/AxisAlignedBB.java @@ -92,6 +92,7 @@ default AxisAlignedBB setBB(AxisAlignedBB bb) { return this; } + @PowerNukkitOnly default AxisAlignedBB getOffsetBoundingBox(BlockFace face, double x, double y, double z) { return getOffsetBoundingBox(face.getXOffset() * x, face.getYOffset() * y, face.getZOffset() * z); } diff --git a/src/main/java/cn/nukkit/math/BlockFace.java b/src/main/java/cn/nukkit/math/BlockFace.java index 34260049184..b97a1a78f06 100644 --- a/src/main/java/cn/nukkit/math/BlockFace.java +++ b/src/main/java/cn/nukkit/math/BlockFace.java @@ -289,6 +289,7 @@ public CompassRoseDirection getCompassRoseDirection() { } } + @Override public String toString() { return name; } @@ -328,10 +329,12 @@ public String getName() { return name; } + @Override public boolean test(BlockFace face) { return face != null && face.getAxis() == this; } + @Override public String toString() { return name; } @@ -353,6 +356,7 @@ public int getOffset() { return offset; } + @Override public String toString() { return description; } @@ -380,10 +384,12 @@ public BlockFace random(NukkitRandom rand) { return faces[rand.nextBoundedInt(faces.length)]; } + @Override public boolean test(BlockFace face) { return face != null && face.getAxis().getPlane() == this; } + @Override public Iterator iterator() { return Iterators.forArray(faces); } diff --git a/src/main/java/cn/nukkit/math/BlockVector3.java b/src/main/java/cn/nukkit/math/BlockVector3.java index 2370d519b35..3651c77a16c 100644 --- a/src/main/java/cn/nukkit/math/BlockVector3.java +++ b/src/main/java/cn/nukkit/math/BlockVector3.java @@ -2,6 +2,7 @@ import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; +import lombok.SneakyThrows; public class BlockVector3 implements Cloneable { public int x; @@ -45,6 +46,24 @@ public int getZ() { return this.z; } + @Since("1.6.0.0-PN") + public BlockVector3 setX(int x) { + this.x = x; + return this; + } + + @Since("1.6.0.0-PN") + public BlockVector3 setY(int y) { + this.y = y; + return this; + } + + @Since("1.6.0.0-PN") + public BlockVector3 setZ(int z) { + this.z = z; + return this; + } + public Vector3 add(double x) { return this.add(x, 0, 0); } @@ -257,13 +276,10 @@ public String toString() { return "BlockPosition(level=" + ",x=" + this.x + ",y=" + this.y + ",z=" + this.z + ")"; } + @SneakyThrows @Override public BlockVector3 clone() { - try { - return (BlockVector3) super.clone(); - } catch (CloneNotSupportedException e) { - return null; - } + return (BlockVector3) super.clone(); } public Vector3 asVector3() { diff --git a/src/main/java/cn/nukkit/math/MathHelper.java b/src/main/java/cn/nukkit/math/MathHelper.java index 109b56506d3..536d78cc497 100644 --- a/src/main/java/cn/nukkit/math/MathHelper.java +++ b/src/main/java/cn/nukkit/math/MathHelper.java @@ -1,5 +1,7 @@ package cn.nukkit.math; +import cn.nukkit.api.PowerNukkitOnly; + import java.util.Random; public class MathHelper { @@ -92,6 +94,7 @@ public static int clamp(int check, int min, int max) { return check > max ? max : (check < min ? min : check); } + @PowerNukkitOnly public static float clamp(float num, float min, float max) { return num > max ? max : (num < min ? min : num); } diff --git a/src/main/java/cn/nukkit/math/Vector3.java b/src/main/java/cn/nukkit/math/Vector3.java index 2f3653a53de..928d69019bc 100644 --- a/src/main/java/cn/nukkit/math/Vector3.java +++ b/src/main/java/cn/nukkit/math/Vector3.java @@ -3,6 +3,7 @@ import cn.nukkit.api.DeprecationDetails; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; +import lombok.SneakyThrows; import javax.annotation.Nonnull; import javax.annotation.Nullable; @@ -46,6 +47,25 @@ public double getZ() { return this.z; } + @Since("1.6.0.0-PN") + public Vector3 setX(double x) { + this.x = x; + return this; + } + + @Since("1.6.0.0-PN") + public Vector3 setY(double y) { + this.y = y; + return this; + } + + @Since("1.6.0.0-PN") + public Vector3 setZ(double z) { + this.z = z; + return this; + } + + public int getFloorX() { return (int) Math.floor(this.x); } @@ -259,6 +279,11 @@ public double maxPlainDistance(Vector3 x) { return this.maxPlainDistance(x.x, x.z); } + /** + * Calculates the Length of this Vector + * + * @return The Length of this Vector. + */ public double length() { return Math.sqrt(this.lengthSquared()); } @@ -275,10 +300,22 @@ public Vector3 normalize() { return new Vector3(0, 0, 0); } + /** + * Scalar Product of this Vector and the Vector supplied. + * + * @param v Vector to calculate the scalar product to. + * @return Scalar Product + */ public double dot(Vector3 v) { return this.x * v.x + this.y * v.y + this.z * v.z; } + /** + * Calculates the cross product of this Vector and the given Vector + * + * @param v the vector to calculate the cross product with. + * @return a Vector at right angle to this and other + */ public Vector3 cross(Vector3 v) { return new Vector3( this.y * v.z - this.z * v.y, @@ -287,6 +324,16 @@ public Vector3 cross(Vector3 v) { ); } + /* PowerNukkit: The Angle class was removed because it had all rights reserved copyright on it. + * Calculates the angle between this and the supplied Vector. + * + * @param v the Vector to calculate the angle to. + * @return the Angle between the two Vectors. + */ + /*public Angle angleBetween(Vector3 v) { + return Angle.fromRadian(Math.acos(Math.min(Math.max(this.normalize().dot(v.normalize()), -1.0d), 1.0d))); + }*/ + /** * Returns a new vector with x value equal to the second parameter, along the line between this vector and the * passed in vector, or null if not possible. @@ -431,13 +478,10 @@ public int rawHashCode() { return super.hashCode(); } + @SneakyThrows @Override public Vector3 clone() { - try { - return (Vector3) super.clone(); - } catch (CloneNotSupportedException e) { - return null; - } + return (Vector3) super.clone(); } public Vector3f asVector3f() { diff --git a/src/main/java/cn/nukkit/math/Vector3f.java b/src/main/java/cn/nukkit/math/Vector3f.java index 5fea6bffc09..490298cae62 100644 --- a/src/main/java/cn/nukkit/math/Vector3f.java +++ b/src/main/java/cn/nukkit/math/Vector3f.java @@ -2,6 +2,7 @@ import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; +import lombok.SneakyThrows; public class Vector3f implements Cloneable { public static final int SIDE_DOWN = 0; @@ -45,6 +46,24 @@ public float getZ() { return this.z; } + @Since("1.6.0.0-PN") + public Vector3f setX(float x) { + this.x = x; + return this; + } + + @Since("1.6.0.0-PN") + public Vector3f setY(float y) { + this.y = y; + return this; + } + + @Since("1.6.0.0-PN") + public Vector3f setZ(float z) { + this.z = z; + return this; + } + public int getFloorX() { return NukkitMath.floorFloat(this.x); } @@ -207,6 +226,11 @@ public float maxPlainDistance(Vector3f x) { return this.maxPlainDistance(x.x, x.z); } + /** + * Calculates the Length of this Vector + * + * @return The Length of this Vector. + */ public double length() { return Math.sqrt(this.lengthSquared()); } @@ -223,10 +247,22 @@ public Vector3f normalize() { return new Vector3f(0, 0, 0); } + /** + * Scalar Product of this Vector and the Vector supplied. + * + * @param v Vector to calculate the scalar product to. + * @return Scalar Product + */ public float dot(Vector3f v) { return this.x * v.x + this.y * v.y + this.z * v.z; } + /** + * Calculates the cross product of this Vector and the given Vector + * + * @param v the vector to calculate the cross product with. + * @return a Vector at right angle to this and other + */ public Vector3f cross(Vector3f v) { return new Vector3f( this.y * v.z - this.z * v.y, @@ -235,9 +271,23 @@ public Vector3f cross(Vector3f v) { ); } - /* + /* PowerNukkit: The Angle class was removed because it had all rights reserved copyright on it. + * Calculates the angle between this and the supplied Vector. + * + * @param v the Vector to calculate the angle to. + * @return the Angle between the two Vectors. + */ + /*public Angle angleBetween(Vector3f v) { + return Angle.fromRadian(Math.acos(Math.min(Math.max(this.normalize().dot(v.normalize()), -1.0f), 1.0f))); + }*/ + + /** * Returns a new vector with x value equal to the second parameter, along the line between this vector and the * passed in vector, or null if not possible. + * + * @param v vector + * @param x x value + * @return intermediate vector */ public Vector3f getIntermediateWithXValue(Vector3f v, float x) { float xDiff = v.x - this.x; @@ -254,9 +304,13 @@ public Vector3f getIntermediateWithXValue(Vector3f v, float x) { } } - /* + /** * Returns a new vector with y value equal to the second parameter, along the line between this vector and the * passed in vector, or null if not possible. + * + * @param v vector + * @param y y value + * @return intermediate vector */ public Vector3f getIntermediateWithYValue(Vector3f v, float y) { float xDiff = v.x - this.x; @@ -273,9 +327,13 @@ public Vector3f getIntermediateWithYValue(Vector3f v, float y) { } } - /* + /** * Returns a new vector with z value equal to the second parameter, along the line between this vector and the * passed in vector, or null if not possible. + * + * @param v vector + * @param z z value + * @return intermediate vector */ public Vector3f getIntermediateWithZValue(Vector3f v, float z) { float xDiff = v.x - this.x; @@ -332,13 +390,10 @@ public int rawHashCode() { return super.hashCode(); } + @SneakyThrows @Override public Vector3f clone() { - try { - return (Vector3f) super.clone(); - } catch (CloneNotSupportedException e) { - return null; - } + return (Vector3f) super.clone(); } public Vector3 asVector3() { diff --git a/src/main/java/cn/nukkit/metrics/Metrics.java b/src/main/java/cn/nukkit/metrics/Metrics.java index 8bea64d9481..7751eac5eb1 100644 --- a/src/main/java/cn/nukkit/metrics/Metrics.java +++ b/src/main/java/cn/nukkit/metrics/Metrics.java @@ -5,8 +5,8 @@ import cn.nukkit.utils.MainLogger; import io.netty.util.internal.EmptyArrays; import lombok.extern.log4j.Log4j2; -import net.minidev.json.JSONArray; -import net.minidev.json.JSONObject; +import com.nimbusds.jose.shaded.json.JSONArray; +import com.nimbusds.jose.shaded.json.JSONObject; import javax.net.ssl.HttpsURLConnection; import java.io.ByteArrayOutputStream; @@ -52,7 +52,7 @@ public class Metrics { /** * Creates a new instance and starts submitting immediately. - * + * * @param name The bStats metrics identifier. * @param serverUUID The unique identifier of this server. * @param logFailedRequests If failed submissions should be logged. @@ -319,7 +319,7 @@ protected JSONObject getChartData() throws Exception { return createAdvancedChartData(callable); } } - + private static JSONObject createAdvancedChartData(final Callable> callable) throws Exception { JSONObject data = new JSONObject(); JSONObject values = new JSONObject(); @@ -539,3 +539,4 @@ protected JSONObject getChartData() throws Exception { } } + diff --git a/src/main/java/cn/nukkit/nbt/stream/FastByteArrayOutputStream.java b/src/main/java/cn/nukkit/nbt/stream/FastByteArrayOutputStream.java index 175ac8a7e09..703299a7f82 100644 --- a/src/main/java/cn/nukkit/nbt/stream/FastByteArrayOutputStream.java +++ b/src/main/java/cn/nukkit/nbt/stream/FastByteArrayOutputStream.java @@ -82,7 +82,8 @@ public FastByteArrayOutputStream reset() { return this; } - public void write( final int b ) { + @Override + public void write(final int b ) { if ( position == length ) { length++; if ( position == array.length ) array = grow( array, length ); @@ -118,7 +119,8 @@ public static byte[] grow( final byte[] array, final int length, final int prese return array; } - public void write( final byte[] b, final int off, final int len ) throws IOException { + @Override + public void write(final byte[] b, final int off, final int len ) throws IOException { if ( position + len > array.length ) array = grow( array, position + len, position ); System.arraycopy( b, off, array, position, len ); if ( position + len > length ) length = position += len; @@ -141,4 +143,4 @@ public byte[] toByteArray() { if (position == array.length) return array; return Arrays.copyOfRange(array, 0, position); } -} \ No newline at end of file +} diff --git a/src/main/java/cn/nukkit/nbt/tag/CompoundTag.java b/src/main/java/cn/nukkit/nbt/tag/CompoundTag.java index ce61165702a..4d3f50d9594 100644 --- a/src/main/java/cn/nukkit/nbt/tag/CompoundTag.java +++ b/src/main/java/cn/nukkit/nbt/tag/CompoundTag.java @@ -24,10 +24,12 @@ public CompoundTag(String name) { this(name, new HashMap<>()); } + @PowerNukkitOnly public CompoundTag(Map tags) { this("", tags); } + @PowerNukkitOnly public CompoundTag(String name, Map tags) { super(name); this.tags = tags; @@ -308,12 +310,14 @@ public boolean getBoolean(String name) { return getByte(name) != 0; } + @Override public String toString() { StringJoiner joiner = new StringJoiner(",\n\t"); tags.forEach((key, tag) -> joiner.add('\'' + key + "' : " + tag.toString().replace("\n", "\n\t"))); return "CompoundTag '" + this.getName() + "' (" + tags.size() + " entries) {\n\t" + joiner.toString() + "\n}"; } + @Override public void print(String prefix, PrintStream out) { super.print(prefix, out); out.println(prefix + "{"); @@ -329,6 +333,7 @@ public boolean isEmpty() { return tags.isEmpty(); } + @Override public CompoundTag copy() { CompoundTag tag = new CompoundTag(getName()); for (String key : tags.keySet()) { diff --git a/src/main/java/cn/nukkit/nbt/tag/ListTag.java b/src/main/java/cn/nukkit/nbt/tag/ListTag.java index bdc142ce2fa..8fe398c7bb0 100644 --- a/src/main/java/cn/nukkit/nbt/tag/ListTag.java +++ b/src/main/java/cn/nukkit/nbt/tag/ListTag.java @@ -62,6 +62,7 @@ public String toString() { return "ListTag '" + this.getName() + "' (" + list.size() + " entries of type " + Tag.getTagName(type) + ") {\n\t" + joiner.toString() + "\n}"; } + @Override public void print(String prefix, PrintStream out) { super.print(prefix, out); diff --git a/src/main/java/cn/nukkit/nbt/tag/Tag.java b/src/main/java/cn/nukkit/nbt/tag/Tag.java index 3b5a572a419..7e70c5e5854 100644 --- a/src/main/java/cn/nukkit/nbt/tag/Tag.java +++ b/src/main/java/cn/nukkit/nbt/tag/Tag.java @@ -28,6 +28,7 @@ public abstract class Tag { abstract void load(NBTInputStream dis) throws IOException; + @Override public abstract String toString(); public abstract byte getId(); diff --git a/src/main/java/cn/nukkit/network/Network.java b/src/main/java/cn/nukkit/network/Network.java index d46c1db15de..378e92822f2 100644 --- a/src/main/java/cn/nukkit/network/Network.java +++ b/src/main/java/cn/nukkit/network/Network.java @@ -4,6 +4,7 @@ import cn.nukkit.Server; import cn.nukkit.api.DeprecationDetails; import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.nbt.stream.FastByteArrayOutputStream; import cn.nukkit.network.protocol.*; @@ -223,15 +224,22 @@ public Server getServer() { } public void processBatch(BatchPacket packet, Player player) { - List packets = new ObjectArrayList<>(); try { - processBatch(packet.payload, packets); + unpackBatchedPackets(packet); } catch (ProtocolException e) { player.close("", e.getMessage()); log.error("Unable to process player packets ", e); } } + @PowerNukkitOnly + @Since("1.6.0.0-PN") + public List unpackBatchedPackets(BatchPacket packet) throws ProtocolException { + List packets = new ObjectArrayList<>(); + processBatch(packet.payload, packets); + return packets; + } + @Since("1.4.0.0-PN") public void processBatch(byte[] payload, Collection packets) throws ProtocolException { byte[] data; @@ -311,6 +319,7 @@ public void processPackets(Player player, List packets) { @DeprecationDetails(since = "1.4.0.0-PN", by = "Cloudburst Nukkit", reason = "Changed the id to int without backward compatibility", replaceWith = "getPacket(int id)") + @PowerNukkitOnly public DataPacket getPacket(byte id) { return getPacket((int) id); } @@ -469,8 +478,12 @@ private void registerPackets() { this.registerPacket(ProtocolInfo.UPDATE_PLAYER_GAME_TYPE_PACKET, UpdatePlayerGameTypePacket.class); this.registerPacket(ProtocolInfo.FILTER_TEXT_PACKET, FilterTextPacket.class); this.registerPacket(ProtocolInfo.ITEM_COMPONENT_PACKET, ItemComponentPacket.class); - this.registerPacket(ProtocolInfo.ADD_VOLUME_ENTITY, AddVolumeEntityPacket.class); - this.registerPacket(ProtocolInfo.REMOVE_VOLUME_ENTITY, RemoveVolumeEntityPacket.class); - this.registerPacket(ProtocolInfo.SYNC_ENTITY_PROPERTY, SyncEntityPropertyPacket.class); + this.registerPacket(ProtocolInfo.ADD_VOLUME_ENTITY_PACKET, AddVolumeEntityPacket.class); + this.registerPacket(ProtocolInfo.REMOVE_VOLUME_ENTITY_PACKET, RemoveVolumeEntityPacket.class); + this.registerPacket(ProtocolInfo.SYNC_ENTITY_PROPERTY_PACKET, SyncEntityPropertyPacket.class); + this.registerPacket(ProtocolInfo.TICK_SYNC_PACKET, TickSyncPacket.class); + this.registerPacket(ProtocolInfo.ANIMATE_ENTITY_PACKET, AnimateEntityPacket.class); + this.registerPacket(ProtocolInfo.NPC_DIALOGUE_PACKET, NPCDialoguePacket.class); + this.registerPacket(ProtocolInfo.SIMULATION_TYPE_PACKET, SimulationTypePacket.class); } } diff --git a/src/main/java/cn/nukkit/network/RakNetInterface.java b/src/main/java/cn/nukkit/network/RakNetInterface.java index 481f0198d70..1e3657d58e3 100644 --- a/src/main/java/cn/nukkit/network/RakNetInterface.java +++ b/src/main/java/cn/nukkit/network/RakNetInterface.java @@ -2,6 +2,8 @@ import cn.nukkit.Player; import cn.nukkit.Server; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.event.player.PlayerCreationEvent; import cn.nukkit.event.server.QueryRegenerateEvent; import cn.nukkit.network.protocol.BatchPacket; @@ -9,10 +11,13 @@ import cn.nukkit.network.protocol.ProtocolInfo; import cn.nukkit.utils.BinaryStream; import cn.nukkit.utils.Utils; + import com.google.common.base.Preconditions; import com.google.common.base.Strings; + import com.nukkitx.network.raknet.*; import com.nukkitx.network.util.DisconnectReason; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; import io.netty.channel.ChannelHandlerContext; @@ -22,8 +27,10 @@ import io.netty.util.concurrent.ScheduledFuture; import io.netty.util.internal.PlatformDependent; import it.unimi.dsi.fastutil.objects.ObjectArrayList; + import lombok.RequiredArgsConstructor; import lombok.extern.log4j.Log4j2; + import org.apache.logging.log4j.message.FormattedMessage; import java.io.IOException; @@ -254,7 +261,21 @@ public void onSessionCreation(RakNetServerSession session) { public void onUnhandledDatagram(ChannelHandlerContext ctx, DatagramPacket datagramPacket) { this.server.handlePacket(datagramPacket.sender(), datagramPacket.content()); } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + @Override + public Integer putResourcePacket(Player player, DataPacket packet) { + NukkitRakNetSession session = this.sessions.get(player.getSocketAddress()); + if (session != null) { + packet.tryEncode(); + session.sendResourcePacket(packet.clone()); + } + + return null; + } + @RequiredArgsConstructor private class NukkitRakNetSession implements RakNetSessionListener { private final RakNetServerSession raknet; @@ -365,5 +386,23 @@ private void sendPacketImmediately(DataPacket packet) { log.error("Error occured while sending a packet immediately", e); } } + + private void sendResourcePacket(DataPacket packet) { + BinaryStream batched = new BinaryStream(); + Preconditions.checkArgument(!(packet instanceof BatchPacket), "Cannot batch BatchPacket"); + Preconditions.checkState(packet.isEncoded, "Packet should have already been encoded"); + byte[] buf = packet.getBuffer(); + batched.putUnsignedVarInt(buf.length); + batched.put(buf); + try { + byte[] payload = Network.deflateRaw(batched.getBuffer(), network.getServer().networkCompressionLevel); + ByteBuf byteBuf = ByteBufAllocator.DEFAULT.ioBuffer(1 + payload.length); + byteBuf.writeByte(0xfe); + byteBuf.writeBytes(payload); + this.raknet.send(byteBuf); + } catch (Exception e) { + log.error("Error occured while sending a packet immediately", e); + } + } } } diff --git a/src/main/java/cn/nukkit/network/SourceInterface.java b/src/main/java/cn/nukkit/network/SourceInterface.java index 5d4c0be9da9..575a5bf6dc3 100644 --- a/src/main/java/cn/nukkit/network/SourceInterface.java +++ b/src/main/java/cn/nukkit/network/SourceInterface.java @@ -1,6 +1,8 @@ package cn.nukkit.network; import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.network.protocol.DataPacket; @@ -28,4 +30,8 @@ public interface SourceInterface { void shutdown(); void emergencyShutdown(); + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + Integer putResourcePacket(Player player, DataPacket packet); } diff --git a/src/main/java/cn/nukkit/network/protocol/AbstractResourcePackDataPacket.java b/src/main/java/cn/nukkit/network/protocol/AbstractResourcePackDataPacket.java new file mode 100644 index 00000000000..708b578d6df --- /dev/null +++ b/src/main/java/cn/nukkit/network/protocol/AbstractResourcePackDataPacket.java @@ -0,0 +1,54 @@ +package cn.nukkit.network.protocol; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import lombok.NoArgsConstructor; +import org.powernukkit.version.Version; + +import java.util.UUID; + +@PowerNukkitOnly +@Since("1.5.2.0-PN") +@NoArgsConstructor(onConstructor = @__(@PowerNukkitOnly)) +public abstract class AbstractResourcePackDataPacket extends DataPacket { + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public abstract Version getPackVersion(); + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public abstract void setPackVersion(Version version); + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public abstract UUID getPackId(); + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public abstract void setPackId(UUID uuid); + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + protected void decodePackInfo() { + String packInfo = this.getString(); + String[] packInfoParts = packInfo.split("_", 2); + try { + setPackId(UUID.fromString(packInfoParts[0])); + } catch (IllegalArgumentException exception) { + setPackId(null); + } + setPackVersion((packInfoParts.length > 1)? new Version(packInfoParts[1]) : null); + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + protected void encodePackInfo() { + UUID packId = getPackId(); + Version packVersion = getPackVersion(); + String packInfo = (packId != null) ? packId.toString() : new UUID(0, 0).toString(); + if (packVersion != null) { + packInfo += "_" + packVersion; + } + this.putString(packInfo); + } +} diff --git a/src/main/java/cn/nukkit/network/protocol/AddEntityPacket.java b/src/main/java/cn/nukkit/network/protocol/AddEntityPacket.java index aca438392ea..c18a41bd022 100644 --- a/src/main/java/cn/nukkit/network/protocol/AddEntityPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/AddEntityPacket.java @@ -123,13 +123,16 @@ public class AddEntityPacket extends DataPacket { .put(EntityRavager.NETWORK_ID, "minecraft:ravager") .put(EntityVillager.NETWORK_ID, "minecraft:villager_v2") .put(EntityZombieVillager.NETWORK_ID, "minecraft:zombie_villager_v2") - .put(121, "minecraft:fox") + .put(EntityFox.NETWORK_ID, "minecraft:fox") .put(EntityBee.NETWORK_ID, "minecraft:bee") .put(EntityPiglin.NETWORK_ID, "minecraft:piglin") .put(EntityHoglin.NETWORK_ID, "minecraft:hoglin") .put(EntityStrider.NETWORK_ID, "minecraft:strider") .put(EntityZoglin.NETWORK_ID, "minecraft:zoglin") .put(EntityPiglinBrute.NETWORK_ID, "minecraft:piglin_brute") + .put(128, "minecraft:goat") + .put(129, "minecraft:glow_squid") + .put(130, "minecraft:axolotl") .build(); @Override diff --git a/src/main/java/cn/nukkit/network/protocol/AddPlayerPacket.java b/src/main/java/cn/nukkit/network/protocol/AddPlayerPacket.java index 4a50b20ed2f..b129a8ca030 100644 --- a/src/main/java/cn/nukkit/network/protocol/AddPlayerPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/AddPlayerPacket.java @@ -1,5 +1,7 @@ package cn.nukkit.network.protocol; +import cn.nukkit.Server; +import cn.nukkit.api.Since; import cn.nukkit.entity.data.EntityMetadata; import cn.nukkit.item.Item; import cn.nukkit.utils.Binary; @@ -33,6 +35,7 @@ public byte pid() { public float pitch; public float yaw; public Item item; + @Since("1.6.0.0-PN") public int gameType = Server.getInstance().getGamemode(); public EntityMetadata metadata = new EntityMetadata(); //public EntityLink links = new EntityLink[0]; public String deviceId = ""; @@ -57,6 +60,7 @@ public void encode() { this.putLFloat(this.yaw); //TODO headrot this.putLFloat(this.yaw); this.putSlot(this.item); + this.putVarInt(this.gameType); this.put(Binary.writeMetadata(this.metadata)); this.putUnsignedVarInt(0); //TODO: Adventure settings this.putUnsignedVarInt(0); diff --git a/src/main/java/cn/nukkit/network/protocol/AddVolumeEntityPacket.java b/src/main/java/cn/nukkit/network/protocol/AddVolumeEntityPacket.java index fb2b4e38ec3..8947cacd6f1 100644 --- a/src/main/java/cn/nukkit/network/protocol/AddVolumeEntityPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/AddVolumeEntityPacket.java @@ -9,11 +9,16 @@ public class AddVolumeEntityPacket extends DataPacket { @PowerNukkitOnly @Since("1.5.0.0-PN") - public static final byte NETWORK_ID = ProtocolInfo.ADD_VOLUME_ENTITY; + public static final byte NETWORK_ID = ProtocolInfo.ADD_VOLUME_ENTITY_PACKET; private long id; private CompoundTag data; + @PowerNukkitOnly + @Since("1.5.0.0-PN") + public AddVolumeEntityPacket() { + // Does nothing + } @Override public byte pid() { @@ -28,6 +33,7 @@ public void decode() { @Override public void encode() { + reset(); putUnsignedVarInt(id); putTag(data); } diff --git a/src/main/java/cn/nukkit/network/protocol/AdventureSettingsPacket.java b/src/main/java/cn/nukkit/network/protocol/AdventureSettingsPacket.java index e0d19d80312..5da2d852b8e 100644 --- a/src/main/java/cn/nukkit/network/protocol/AdventureSettingsPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/AdventureSettingsPacket.java @@ -52,6 +52,7 @@ public class AdventureSettingsPacket extends DataPacket { public long entityUniqueId; //This is a little-endian long, NOT a var-long. (WTF Mojang) + @Override public void decode() { this.flags = getUnsignedVarInt(); this.commandPermission = getUnsignedVarInt(); @@ -61,6 +62,7 @@ public void decode() { this.entityUniqueId = getLLong(); } + @Override public void encode() { this.reset(); this.putUnsignedVarInt(this.flags); diff --git a/src/main/java/cn/nukkit/network/protocol/AnimateEntityPacket.java b/src/main/java/cn/nukkit/network/protocol/AnimateEntityPacket.java new file mode 100644 index 00000000000..1720e24e201 --- /dev/null +++ b/src/main/java/cn/nukkit/network/protocol/AnimateEntityPacket.java @@ -0,0 +1,131 @@ +package cn.nukkit.network.protocol; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import lombok.NoArgsConstructor; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author IWareQ + */ +@PowerNukkitOnly +@Since("1.5.1.0-PN") +@NoArgsConstructor(onConstructor = @__(@PowerNukkitOnly)) +public class AnimateEntityPacket extends DataPacket { + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public static final byte NETWORK_ID = ProtocolInfo.ANIMATE_ENTITY_PACKET; + + private String animation; + private String nextState; + private String stopExpression; + private String controller; + private float blendOutTime; + private List entityRuntimeIds = new ArrayList<>(); + + @Override + public void decode() { + this.animation = this.getString(); + this.nextState = this.getString(); + this.stopExpression = this.getString(); + this.controller = this.getString(); + this.blendOutTime = this.getLFloat(); + for (int i = 0, len = (int) this.getUnsignedVarInt(); i < len; i++) { + this.entityRuntimeIds.add(this.getEntityRuntimeId()); + } + } + + @Override + public void encode() { + this.reset(); + this.putString(this.animation); + this.putString(this.nextState); + this.putString(this.stopExpression); + this.putString(this.controller); + this.putLFloat(this.blendOutTime); + this.putUnsignedVarInt(this.entityRuntimeIds.size()); + for (long entityRuntimeId : this.entityRuntimeIds){ + this.putEntityRuntimeId(entityRuntimeId); + } + } + + @Override + public byte pid() { + return NETWORK_ID; + } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public void setAnimation(String animation) { + this.animation = animation; + } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public String getAnimation() { + return this.animation; + } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public void setNextState(String nextState) { + this.nextState = nextState; + } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public String getNextState() { + return this.nextState; + } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public void setStopExpression(String stopExpression) { + this.stopExpression = stopExpression; + } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public String getStopExpression() { + return this.stopExpression; + } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public void setController(String controller) { + this.controller = controller; + } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public String getController() { + return this.controller; + } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public void setBlendOutTime(float blendOutTime) { + this.blendOutTime = blendOutTime; + } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public float getBlendOutTime() { + return this.blendOutTime; + } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public void setEntityRuntimeIds(List entityRuntimeIds) { + this.entityRuntimeIds = entityRuntimeIds; + } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public List getEntityRuntimeIds() { + return this.entityRuntimeIds; + } +} diff --git a/src/main/java/cn/nukkit/network/protocol/AvailableCommandsPacket.java b/src/main/java/cn/nukkit/network/protocol/AvailableCommandsPacket.java index 9b8bcc3a291..5eba556ee1a 100644 --- a/src/main/java/cn/nukkit/network/protocol/AvailableCommandsPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/AvailableCommandsPacket.java @@ -136,7 +136,7 @@ public void encode() { putString(name); putString(data.description); - putByte((byte) data.flags); + putLShort(data.flags); putByte((byte) data.permission); putLInt(data.aliases == null ? -1 : enums.indexOf(data.aliases)); diff --git a/src/main/java/cn/nukkit/network/protocol/BossEventPacket.java b/src/main/java/cn/nukkit/network/protocol/BossEventPacket.java index 2f422e96557..48c0e9c749e 100644 --- a/src/main/java/cn/nukkit/network/protocol/BossEventPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/BossEventPacket.java @@ -1,5 +1,8 @@ package cn.nukkit.network.protocol; +import cn.nukkit.api.DeprecationDetails; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import lombok.ToString; /** @@ -25,9 +28,14 @@ public class BossEventPacket extends DataPacket { /* S2C: Sets title of the bar. */ public static final int TYPE_TITLE = 5; /* S2C: Not sure on this. Includes color and overlay fields, plus an unknown short. TODO: check this */ - public static final int TYPE_UNKNOWN_6 = 6; - /* S2C: Not implemented :( Intended to alter bar appearance, but these currently produce no effect on clientside whatsoever. */ + @Since("1.6.0.0-PN") public static final int TYPE_UPDATE_PROPERTIES = 6; + @PowerNukkitOnly("Renamed by cloudburst") + @Deprecated + @DeprecationDetails(by = "Cloudburst", reason = "Renamed", replaceWith = "TYPE_UPDATE_PROPERTIES", since = "1.6.0.0-PN") + public static final int TYPE_UNKNOWN_6 = TYPE_UPDATE_PROPERTIES; + /* S2C: Sets color and overlay of the bar. */ public static final int TYPE_TEXTURE = 7; + public static final int TYPE_QUERY = 8; public long bossEid; public int type; @@ -50,12 +58,13 @@ public void decode() { switch (this.type) { case TYPE_REGISTER_PLAYER: case TYPE_UNREGISTER_PLAYER: + case TYPE_QUERY: this.playerEid = this.getEntityUniqueId(); break; case TYPE_SHOW: this.title = this.getString(); this.healthPercent = this.getLFloat(); - case TYPE_UNKNOWN_6: + case TYPE_UPDATE_PROPERTIES: this.unknown = (short) this.getShort(); case TYPE_TEXTURE: this.color = (int) this.getUnsignedVarInt(); @@ -78,12 +87,13 @@ public void encode() { switch (this.type) { case TYPE_REGISTER_PLAYER: case TYPE_UNREGISTER_PLAYER: + case TYPE_QUERY: this.putEntityUniqueId(this.playerEid); break; case TYPE_SHOW: this.putString(this.title); this.putLFloat(this.healthPercent); - case TYPE_UNKNOWN_6: + case TYPE_UPDATE_PROPERTIES: this.putShort(this.unknown); case TYPE_TEXTURE: this.putUnsignedVarInt(this.color); diff --git a/src/main/java/cn/nukkit/network/protocol/CraftingDataPacket.java b/src/main/java/cn/nukkit/network/protocol/CraftingDataPacket.java index 31d40850681..2db3a3efafb 100644 --- a/src/main/java/cn/nukkit/network/protocol/CraftingDataPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/CraftingDataPacket.java @@ -1,7 +1,7 @@ package cn.nukkit.network.protocol; -import cn.nukkit.api.Since; import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.inventory.*; import cn.nukkit.item.Item; import lombok.ToString; @@ -26,6 +26,7 @@ public class CraftingDataPacket extends DataPacket { public static final String CRAFTING_TAG_CAMPFIRE = "campfire"; public static final String CRAFTING_TAG_BLAST_FURNACE = "blast_furnace"; public static final String CRAFTING_TAG_SMOKER = "smoker"; + @PowerNukkitOnly @Since("1.6.0.0-PN") public static final String CRAFTING_TAG_SMITHING_TABLE = "smithing_table"; private List entries = new ArrayList<>(); private final List brewingEntries = new ArrayList<>(); @@ -117,6 +118,8 @@ public void encode() { break; case SHAPELESS: case CARTOGRAPHY: + case SHULKER_BOX: + case SMITHING: ShapelessRecipe shapeless = (ShapelessRecipe) recipe; this.putString(shapeless.getRecipeId()); List ingredients = shapeless.getIngredientList(); @@ -127,7 +130,18 @@ public void encode() { this.putUnsignedVarInt(1); this.putSlot(shapeless.getResult(), true); this.putUUID(shapeless.getId()); - this.putString(recipe.getType() == RecipeType.CARTOGRAPHY ? CRAFTING_TAG_CARTOGRAPHY_TABLE : CRAFTING_TAG_CRAFTING_TABLE); + switch (recipe.getType()) { + case CARTOGRAPHY: + this.putString(CRAFTING_TAG_CARTOGRAPHY_TABLE); + break; + case SHAPELESS: + case SHULKER_BOX: + this.putString(CRAFTING_TAG_CRAFTING_TABLE); + break; + case SMITHING: + this.putString(CRAFTING_TAG_SMITHING_TABLE); + break; + } this.putVarInt(shapeless.getPriority()); this.putUnsignedVarInt(recipeNetworkId++); break; @@ -212,6 +226,8 @@ public void encode() { this.putVarInt(recipe.getResult().getNetworkId()); } + this.putUnsignedVarInt(0); // Material reducers size + this.putBoolean(cleanRecipes); } diff --git a/src/main/java/cn/nukkit/network/protocol/CraftingEventPacket.java b/src/main/java/cn/nukkit/network/protocol/CraftingEventPacket.java index fe0f70e2d4c..229649945ee 100644 --- a/src/main/java/cn/nukkit/network/protocol/CraftingEventPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/CraftingEventPacket.java @@ -5,6 +5,7 @@ import cn.nukkit.api.Since; import cn.nukkit.item.Item; import cn.nukkit.utils.BinaryStream; +import lombok.EqualsAndHashCode; import lombok.ToString; import java.util.UUID; @@ -13,6 +14,7 @@ * @author Nukkit Project Team */ @ToString +@EqualsAndHashCode(callSuper = false) public class CraftingEventPacket extends DataPacket { public static final byte NETWORK_ID = ProtocolInfo.CRAFTING_EVENT_PACKET; @@ -63,7 +65,7 @@ public class CraftingEventPacket extends DataPacket { @Override public void decode() { this.windowId = this.getByte(); - this.type = (int) this.getUnsignedVarInt(); + this.type = this.getVarInt(); this.id = this.getUUID(); this.input = this.getArray(Item.class, BinaryStream::getSlot); @@ -72,7 +74,12 @@ public void decode() { @Override public void encode() { + putByte((byte) (windowId & 0xFF)); + putVarInt(type); + putUUID(id); + putArray(input, this::putSlot); + putArray(output, this::putSlot); } @Override diff --git a/src/main/java/cn/nukkit/network/protocol/DataPacket.java b/src/main/java/cn/nukkit/network/protocol/DataPacket.java index 81fe8b501ea..7fc62c9ae71 100644 --- a/src/main/java/cn/nukkit/network/protocol/DataPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/DataPacket.java @@ -1,6 +1,7 @@ package cn.nukkit.network.protocol; import cn.nukkit.Server; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.network.Network; import cn.nukkit.utils.Binary; import cn.nukkit.utils.BinaryStream; @@ -10,6 +11,7 @@ * @author MagicDroidX (Nukkit Project) */ public abstract class DataPacket extends BinaryStream implements Cloneable { + @PowerNukkitOnly public static final DataPacket[] EMPTY_ARRAY = new DataPacket[0]; public volatile boolean isEncoded = false; diff --git a/src/main/java/cn/nukkit/network/protocol/HurtArmorPacket.java b/src/main/java/cn/nukkit/network/protocol/HurtArmorPacket.java index 81b84c0d29b..9d10bd9ad99 100644 --- a/src/main/java/cn/nukkit/network/protocol/HurtArmorPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/HurtArmorPacket.java @@ -1,6 +1,5 @@ package cn.nukkit.network.protocol; -import cn.nukkit.api.DeprecationDetails; import cn.nukkit.api.Since; import lombok.ToString; @@ -18,16 +17,22 @@ public class HurtArmorPacket extends DataPacket { @Since("1.3.0.0-PN") public int damage; + @Since("1.5.2.0-PN") + public long armorSlots; + @Override public void decode() { - + this.cause = getVarInt(); + this.damage = getVarInt(); + this.armorSlots = getUnsignedVarLong(); } @Override public void encode() { this.reset(); this.putVarInt(this.cause); - this.putVarInt(damage); + this.putVarInt(this.damage); + this.putUnsignedVarLong(this.armorSlots); } @Override diff --git a/src/main/java/cn/nukkit/network/protocol/ItemComponentPacket.java b/src/main/java/cn/nukkit/network/protocol/ItemComponentPacket.java index c0dcb926944..bdbc1367316 100644 --- a/src/main/java/cn/nukkit/network/protocol/ItemComponentPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/ItemComponentPacket.java @@ -5,24 +5,24 @@ import cn.nukkit.nbt.NBTIO; import cn.nukkit.nbt.tag.CompoundTag; import cn.nukkit.utils.MainLogger; +import lombok.NoArgsConstructor; +import lombok.ToString; import java.io.IOException; import java.nio.ByteOrder; -import lombok.ToString; - /** * @author GoodLucky777 */ @ToString @PowerNukkitOnly @Since("1.4.0.0-PN") +@NoArgsConstructor(onConstructor = @__(@PowerNukkitOnly)) public class ItemComponentPacket extends DataPacket { @PowerNukkitOnly @Since("1.4.0.0-PN") public static final byte NETWORK_ID = ProtocolInfo.ITEM_COMPONENT_PACKET; - @PowerNukkitOnly @Since("1.4.0.0-PN") private Entry[] entries = Entry.EMPTY_ARRAY; diff --git a/src/main/java/cn/nukkit/network/protocol/ItemStackResponsePacket.java b/src/main/java/cn/nukkit/network/protocol/ItemStackResponsePacket.java index 89f1dabc01b..c1e0c7baebf 100644 --- a/src/main/java/cn/nukkit/network/protocol/ItemStackResponsePacket.java +++ b/src/main/java/cn/nukkit/network/protocol/ItemStackResponsePacket.java @@ -2,6 +2,7 @@ import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; +import lombok.NoArgsConstructor; import lombok.ToString; /** @@ -10,6 +11,7 @@ @PowerNukkitOnly @Since("1.4.0.0-PN") @ToString +@NoArgsConstructor(onConstructor = @__(@PowerNukkitOnly)) public class ItemStackResponsePacket extends DataPacket { @PowerNukkitOnly @Since("1.4.0.0-PN") diff --git a/src/main/java/cn/nukkit/network/protocol/LevelChunkPacket.java b/src/main/java/cn/nukkit/network/protocol/LevelChunkPacket.java index 34643af62bb..682331f3fae 100644 --- a/src/main/java/cn/nukkit/network/protocol/LevelChunkPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/LevelChunkPacket.java @@ -1,5 +1,6 @@ package cn.nukkit.network.protocol; +import cn.nukkit.api.Since; import lombok.ToString; /** @@ -18,6 +19,8 @@ public byte pid() { public int chunkZ; public int subChunkCount; public boolean cacheEnabled; + @Since("1.6.0.0-PN") public boolean requestSubChunks; + @Since("1.6.0.0-PN") public int subChunkLimit; public long[] blobIds; public byte[] data; @@ -31,7 +34,15 @@ public void encode() { this.reset(); this.putVarInt(this.chunkX); this.putVarInt(this.chunkZ); - this.putUnsignedVarInt(this.subChunkCount); + if (!this.requestSubChunks) { + this.putUnsignedVarInt(this.subChunkCount); + } else if (this.subChunkLimit < 0) { + this.putUnsignedVarInt(-1); + } else { + this.putUnsignedVarInt(-2); + this.putUnsignedVarInt(this.subChunkLimit); + } + this.putBoolean(cacheEnabled); if (this.cacheEnabled) { this.putUnsignedVarInt(blobIds.length); diff --git a/src/main/java/cn/nukkit/network/protocol/LevelSoundEventPacket.java b/src/main/java/cn/nukkit/network/protocol/LevelSoundEventPacket.java index 0e0e65b01b1..18b6994c6f1 100644 --- a/src/main/java/cn/nukkit/network/protocol/LevelSoundEventPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/LevelSoundEventPacket.java @@ -1,7 +1,6 @@ package cn.nukkit.network.protocol; -import cn.nukkit.api.DeprecationDetails; -import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.math.Vector3f; import lombok.ToString; @@ -229,10 +228,12 @@ public class LevelSoundEventPacket extends DataPacket { public static final int SOUND_HURT_BABY = 219; public static final int SOUND_DEATH_BABY = 220; public static final int SOUND_STEP_BABY = 221; + @PowerNukkitOnly @Since("1.6.0.0-PN") public static final int SOUND_BABY_SPAWN = 222; public static final int SOUND_BORN = 223; public static final int SOUND_BLOCK_TURTLE_EGG_BREAK = 224; public static final int SOUND_BLOCK_TURTLE_EGG_CRACK = 225; public static final int SOUND_BLOCK_TURTLE_EGG_HATCH = 226; + @PowerNukkitOnly @Since("1.6.0.0-PN") public static final int SOUND_TURTLE_LAY_EGG = 227; public static final int SOUND_BLOCK_TURTLE_EGG_ATTACK = 228; public static final int SOUND_BEACON_ACTIVATE = 229; public static final int SOUND_BEACON_AMBIENT = 230; @@ -260,9 +261,127 @@ public class LevelSoundEventPacket extends DataPacket { public static final int SOUND_AMBIENT_AGGRESSIVE = 252; public static final int SOUND_AMBIENT_WORRIED = 253; public static final int SOUND_CANT_BREED = 254; - public static final int SOUND_UNDEFINED = 255; - + @Since("1.6.0.0-PN") public static final int SOUND_ITEM_SHIELD_BLOCK = 255; + @Since("1.6.0.0-PN") public static final int SOUND_ITEM_BOOK_PUT = 256; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_GRINDSTONE_USE = 257; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_BELL_HIT = 258; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_CAMPFIRE_CRACKLE = 259; + @Since("1.6.0.0-PN") public static final int SOUND_ROAR = 260; + @Since("1.6.0.0-PN") public static final int SOUND_STUN = 261; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_SWEET_BERRY_BUSH_HURT = 262; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_SWEET_BERRY_BUSH_PICK = 263; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_CARTOGRAPHY_TABLE_USE = 264; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_STONECUTTER_USE = 265; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_COMPOSTER_EMPTY = 266; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_COMPOSTER_FILL = 267; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_COMPOSTER_FILL_SUCCESS = 268; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_COMPOSTER_READY = 269; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_BARREL_OPEN = 270; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_BARREL_CLOSE = 271; + @Since("1.6.0.0-PN") public static final int SOUND_RAID_HORN = 272; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_LOOM_USE = 273; + @Since("1.6.0.0-PN") public static final int SOUND_AMBIENT_IN_RAID = 274; + @Since("1.6.0.0-PN") public static final int SOUND_UI_CARTOGRAPHY_TABLE_TAKE_RESULT = 275; + @Since("1.6.0.0-PN") public static final int SOUND_UI_STONECUTTER_TAKE_RESULT = 276; + @Since("1.6.0.0-PN") public static final int SOUND_UI_LOOM_TAKE_RESULT = 277; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_SMOKER_SMOKE = 278; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_BLASTFURNACE_FIRE_CRACKLE = 279; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_SMITHING_TABLE_USE = 280; + @Since("1.6.0.0-PN") public static final int SOUND_SCREECH = 281; + @Since("1.6.0.0-PN") public static final int SOUND_SLEEP = 282; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_FURNACE_LIT = 283; + @Since("1.6.0.0-PN") public static final int SOUND_CONVERT_MOOSHROOM = 284; + @Since("1.6.0.0-PN") public static final int SOUND_MILK_SUSPICIOUSLY = 285; + @Since("1.6.0.0-PN") public static final int SOUND_CELEBRATE = 286; + @Since("1.6.0.0-PN") public static final int SOUND_JUMP_PREVENT = 287; + @Since("1.6.0.0-PN") public static final int SOUND_AMBIENT_POLLINATE = 288; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_BEEHIVE_DRIP = 289; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_BEEHIVE_ENTER = 290; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_BEEHIVE_EXIT = 291; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_BEEHIVE_WORK = 292; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_BEEHIVE_SHEAR = 293; + @Since("1.6.0.0-PN") public static final int SOUND_DRINK_HONEY = 294; + @Since("1.6.0.0-PN") public static final int SOUND_AMBIENT_CAVE = 295; + @Since("1.6.0.0-PN") public static final int SOUND_RETREAT = 296; + @Since("1.6.0.0-PN") public static final int SOUND_CONVERTED_TO_ZOMBIFIED = 297; + @Since("1.6.0.0-PN") public static final int SOUND_ADMIRE = 298; + @Since("1.6.0.0-PN") public static final int SOUND_STEP_LAVA = 299; + @Since("1.6.0.0-PN") public static final int SOUND_TEMPT = 300; + @Since("1.6.0.0-PN") public static final int SOUND_PANIC = 301; + @Since("1.6.0.0-PN") public static final int SOUND_ANGRY = 302; + @Since("1.6.0.0-PN") public static final int SOUND_AMBIENT_WARPED_FOREST_MOOD = 303; + @Since("1.6.0.0-PN") public static final int SOUND_AMBIENT_SOULSAND_VALLEY_MOOD = 304; + @Since("1.6.0.0-PN") public static final int SOUND_AMBIENT_NETHER_WASTES_MOOD = 305; + @Since("1.6.0.0-PN") public static final int SOUND_RESPAWN_ANCHOR_BASALT_DELTAS_MOOD = 306; + @Since("1.6.0.0-PN") public static final int SOUND_AMBIENT_CRIMSON_FOREST_MOOD = 307; + @Since("1.6.0.0-PN") public static final int SOUND_RESPAWN_ANCHOR_CHARGE = 308; + @Since("1.6.0.0-PN") public static final int SOUND_RESPAWN_ANCHOR_DEPLETE = 309; + @Since("1.6.0.0-PN") public static final int SOUND_RESPAWN_ANCHOR_SET_SPAWN = 310; + @Since("1.6.0.0-PN") public static final int SOUND_RESPAWN_ANCHOR_AMBIENT = 311; + @Since("1.6.0.0-PN") public static final int SOUND_PARTICLE_SOUL_ESCAPE_QUIET = 312; + @Since("1.6.0.0-PN") public static final int SOUND_PARTICLE_SOUL_ESCAPE_LOUD = 313; @Since("1.4.0.0-PN") public static final int SOUND_RECORD_PIGSTEP = 314; + @Since("1.6.0.0-PN") public static final int SOUND_LODESTONE_COMPASS_LINK_COMPASS_TO_LODESTONE = 315; + @Since("1.6.0.0-PN") public static final int SOUND_SMITHING_TABLE_USE = 316; + @Since("1.6.0.0-PN") public static final int SOUND_ARMOR_EQUIP_NETHERITE = 317; + @Since("1.6.0.0-PN") public static final int SOUND_AMBIENT_WARPED_FOREST_LOOP = 318; + @Since("1.6.0.0-PN") public static final int SOUND_AMBIENT_SOULSAND_VALLEY_LOOP = 319; + @Since("1.6.0.0-PN") public static final int SOUND_AMBIENT_NETHER_WASTES_LOOP = 320; + @Since("1.6.0.0-PN") public static final int SOUND_AMBIENT_BASALT_DELTAS_LOOP = 321; + @Since("1.6.0.0-PN") public static final int SOUND_AMBIENT_CRIMSON_FOREST_LOOP = 322; + @Since("1.6.0.0-PN") public static final int SOUND_AMBIENT_WARPED_FOREST_ADDITIONS = 323; + @Since("1.6.0.0-PN") public static final int SOUND_AMBIENT_SOULSAND_VALLEY_ADDITIONS = 324; + @Since("1.6.0.0-PN") public static final int SOUND_AMBIENT_NETHER_WASTES_ADDITIONS = 325; + @Since("1.6.0.0-PN") public static final int SOUND_AMBIENT_BASALT_DELTAS_ADDITIONS = 326; + @Since("1.6.0.0-PN") public static final int SOUND_AMBIENT_CRIMSON_FOREST_ADDITIONS = 327; + @Since("1.6.0.0-PN") public static final int SOUND_SCULK_SENSOR_POWER_ON = 328; + @Since("1.6.0.0-PN") public static final int SOUND_SCULK_SENSOR_POWER_OFF = 329; + @Since("1.6.0.0-PN") public static final int SOUND_BUCKET_FILL_POWDER_SNOW = 330; + @Since("1.6.0.0-PN") public static final int SOUND_BUCKET_EMPTY_POWDER_SNOW = 331; + @Since("1.6.0.0-PN") public static final int SOUND_POINTED_DRIPSTONE_CAULDRON_DRIP_WATER = 332; + @Since("1.6.0.0-PN") public static final int SOUND_POINTED_DRIPSTONE_CAULDRON_DRIP_LAVA = 333; + @Since("1.6.0.0-PN") public static final int SOUND_POINTED_DRIPSTONE_DRIP_WATER = 334; + @Since("1.6.0.0-PN") public static final int SOUND_POINTED_DRIPSTONE_DRIP_LAVA = 335; + @Since("1.6.0.0-PN") public static final int SOUND_CAVE_VINES_PICK_BERRIES = 336; + @Since("1.6.0.0-PN") public static final int SOUND_BIG_DRIPLEAF_TILT_DOWN = 337; + @Since("1.6.0.0-PN") public static final int SOUND_BIG_DRIPLEAF_TILT_UP = 338; + @Since("1.6.0.0-PN") public static final int SOUND_COPPER_WAX_ON = 339; + @Since("1.6.0.0-PN") public static final int SOUND_COPPER_WAX_OFF = 340; + @Since("1.6.0.0-PN") public static final int SOUND_SCRAPE = 341; + @Since("1.6.0.0-PN") public static final int SOUND_PLAYER_HURT_DROWN = 342; + @Since("1.6.0.0-PN") public static final int SOUND_PLAYER_HURT_ON_FIRE = 343; + @Since("1.6.0.0-PN") public static final int SOUND_PLAYER_HURT_FREEZE = 344; + @Since("1.6.0.0-PN") public static final int SOUND_USE_SPYGLASS = 345; + @Since("1.6.0.0-PN") public static final int SOUND_STOP_USING_SPYGLASS = 346; + @Since("1.6.0.0-PN") public static final int SOUND_AMETHYST_BLOCK_CHIME = 347; + @Since("1.6.0.0-PN") public static final int SOUND_AMBIENT_SCREAMER = 348; + @Since("1.6.0.0-PN") public static final int SOUND_HURT_SCREAMER = 349; + @Since("1.6.0.0-PN") public static final int SOUND_DEATH_SCREAMER = 350; + @Since("1.6.0.0-PN") public static final int SOUND_MILK_SCREAMER = 351; + @Since("1.6.0.0-PN") public static final int SOUND_JUMP_TO_BLOCK = 352; + @Since("1.6.0.0-PN") public static final int SOUND_PRE_RAM = 353; + @Since("1.6.0.0-PN") public static final int SOUND_PRE_RAM_SCREAMER = 354; + @Since("1.6.0.0-PN") public static final int SOUND_RAM_IMPACT = 355; + @Since("1.6.0.0-PN") public static final int SOUND_RAM_IMPACT_SCREAMER = 356; + @Since("1.6.0.0-PN") public static final int SOUND_SQUID_INK_SQUIRT = 357; + @Since("1.6.0.0-PN") public static final int SOUND_GLOW_SQUID_INK_SQUIRT = 358; + @Since("1.6.0.0-PN") public static final int SOUND_CONVERT_TO_STRAY = 359; + @Since("1.6.0.0-PN") public static final int SOUND_CAKE_ADD_CANDLE = 360; + @Since("1.6.0.0-PN") public static final int SOUND_EXTINGUISH_CANDLE = 361; + @Since("1.6.0.0-PN") public static final int SOUND_AMBIENT_CANDLE = 362; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_CLICK = 363; + @Since("1.6.0.0-PN") public static final int SOUND_BLOCK_CLICK_FAIL = 364; + @Since("1.6.0.0-PN") public static final int SOUND_SCULK_CATALYST_BLOOM = 365; + @Since("1.6.0.0-PN") public static final int SOUND_SCULK_SHRIEKER_SHRIEK = 366; + @Since("1.6.0.0-PN") public static final int SOUND_WARDEN_NEARBY_CLOSE = 367; + @Since("1.6.0.0-PN") public static final int SOUND_WARDEN_NEARBY_CLOSER = 368; + @Since("1.6.0.0-PN") public static final int SOUND_WARDEN_NEARBY_CLOSEST = 369; + @Since("1.6.0.0-PN") public static final int SOUND_WARDEN_SLIGHTLY_ANGRY = 370; + @Since("1.6.0.0-PN") public static final int SOUND_RECORD_OTHERSIDE = 371; + @Since("1.6.0.0-PN") public static final int SOUND_TONGUE = 372; + @Since("1.6.0.0-PN") public static final int SOUND_CRACK_IRON_GOLEM = 373; + @Since("1.6.0.0-PN") public static final int SOUND_REPAIR_IRON_GOLEM = 374; + @Since("1.6.0.0-PN") public static final int SOUND_UNDEFINED = 375; public int sound; public float x; diff --git a/src/main/java/cn/nukkit/network/protocol/MoveEntityAbsolutePacket.java b/src/main/java/cn/nukkit/network/protocol/MoveEntityAbsolutePacket.java index b6b05c46816..d0001918371 100644 --- a/src/main/java/cn/nukkit/network/protocol/MoveEntityAbsolutePacket.java +++ b/src/main/java/cn/nukkit/network/protocol/MoveEntityAbsolutePacket.java @@ -1,5 +1,6 @@ package cn.nukkit.network.protocol; +import cn.nukkit.api.Since; import cn.nukkit.math.Vector3f; import lombok.ToString; @@ -19,6 +20,7 @@ public class MoveEntityAbsolutePacket extends DataPacket { public double pitch; public boolean onGround; public boolean teleport; + @Since("1.6.0.0-PN") public boolean forceMoveLocalEntity; @Override public byte pid() { @@ -29,8 +31,9 @@ public byte pid() { public void decode() { this.eid = this.getEntityRuntimeId(); int flags = this.getByte(); - teleport = (flags & 0x01) != 0; - onGround = (flags & 0x02) != 0; + onGround = (flags & 0x01) != 0; + teleport = (flags & 0x02) != 0; + forceMoveLocalEntity = (flags & 0x04) != 0; Vector3f v = this.getVector3f(); this.x = v.x; this.y = v.y; @@ -51,6 +54,9 @@ public void encode() { if (teleport) { flags |= 0x02; } + if (forceMoveLocalEntity) { + flags |= 0x04; + } this.putByte(flags); this.putVector3f((float) this.x, (float) this.y, (float) this.z); this.putByte((byte) (this.pitch / (360d / 256d))); diff --git a/src/main/java/cn/nukkit/network/protocol/MoveEntityDeltaPacket.java b/src/main/java/cn/nukkit/network/protocol/MoveEntityDeltaPacket.java index 9fbebea6e5c..691972aeae6 100644 --- a/src/main/java/cn/nukkit/network/protocol/MoveEntityDeltaPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/MoveEntityDeltaPacket.java @@ -1,44 +1,30 @@ package cn.nukkit.network.protocol; -import cn.nukkit.api.DeprecationDetails; -import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; -import cn.nukkit.math.NukkitMath; import lombok.ToString; @ToString public class MoveEntityDeltaPacket extends DataPacket { public static final byte NETWORK_ID = ProtocolInfo.MOVE_ENTITY_DELTA_PACKET; - public static final int FLAG_HAS_X = 0b1; - public static final int FLAG_HAS_Y = 0b10; - public static final int FLAG_HAS_Z = 0b100; - public static final int FLAG_HAS_YAW = 0b1000; - public static final int FLAG_HAS_HEAD_YAW = 0b10000; - public static final int FLAG_HAS_PITCH = 0b100000; + public static final int FLAG_HAS_X = 0B1; + public static final int FLAG_HAS_Y = 0B10; + public static final int FLAG_HAS_Z = 0B100; + public static final int FLAG_HAS_PITCH = 0B1000; + public static final int FLAG_HAS_YAW = 0B10000; + public static final int FLAG_HAS_HEAD_YAW = 0B100000; + @Since("1.6.0.0-PN") public static final int FLAG_ON_GROUND = 0B1000000; + @Since("1.6.0.0-PN") public static final int FLAG_TELEPORTING = 0B10000000; + @Since("1.6.0.0-PN") public static final int FLAG_FORCE_MOVE_LOCAL_ENTITY = 0B100000000; + @Since("1.6.0.0-PN") public long runtimeEntityId; public int flags = 0; @Since("1.4.0.0-PN") public float x = 0; @Since("1.4.0.0-PN") public float y = 0; @Since("1.4.0.0-PN") public float z = 0; - - @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", reason = "Changed to float", replaceWith = "x") - @PowerNukkitOnly("Re-added for backward-compatibility") - public int xDelta = 0; - @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", reason = "Changed to float", replaceWith = "y") - @PowerNukkitOnly("Re-added for backward-compatibility") - public int yDelta = 0; - @PowerNukkitOnly("Re-added for backward-compatibility") - @Deprecated @DeprecationDetails(since = "1.4.0.0-PN", reason = "Changed to float", replaceWith = "z") - public int zDelta = 0; - - private int xDecoded; - private int yDecoded; - private int zDecoded; - - public double yawDelta = 0; - public double headYawDelta = 0; - public double pitchDelta = 0; + @Since("1.6.0.0-PN") public float pitch = 0; + @Since("1.6.0.0-PN") public float yaw = 0; + @Since("1.6.0.0-PN") public float headYaw = 0; @Override public byte pid() { @@ -47,61 +33,71 @@ public byte pid() { @Override public void decode() { - this.flags = this.getByte(); - this.x = getCoordinate(FLAG_HAS_X); - this.y = getCoordinate(FLAG_HAS_Y); - this.z = getCoordinate(FLAG_HAS_Z); - this.yawDelta = getRotation(FLAG_HAS_YAW); - this.headYawDelta = getRotation(FLAG_HAS_HEAD_YAW); - this.pitchDelta = getRotation(FLAG_HAS_PITCH); - - this.xDelta = this.xDecoded = NukkitMath.floorFloat(x); - this.yDelta = this.yDecoded = NukkitMath.floorFloat(y); - this.zDelta = this.zDecoded = NukkitMath.floorFloat(z); + this.runtimeEntityId = this.getEntityRuntimeId(); + this.flags = this.getLShort(); + if ((this.flags & FLAG_HAS_X) != 0) { + this.x = this.getCoordinate(); + } + if ((this.flags & FLAG_HAS_Y) != 0) { + this.y = this.getCoordinate(); + } + if ((this.flags & FLAG_HAS_Z) != 0) { + this.z = this.getCoordinate(); + } + if ((this.flags & FLAG_HAS_PITCH) != 0) { + this.pitch = this.getRotation(); + } + if ((this.flags & FLAG_HAS_YAW) != 0) { + this.yaw = this.getRotation(); + } + if ((this.flags & FLAG_HAS_HEAD_YAW) != 0) { + this.headYaw = this.getRotation(); + } } @Override public void encode() { - this.putByte((byte) flags); - float x = this.x; - float y = this.y; - float z = this.z; - if (xDelta != xDecoded || yDelta != yDecoded || zDelta != zDecoded) { - x = xDelta; - y = yDelta; - z = zDelta; + this.reset(); + this.putEntityRuntimeId(this.runtimeEntityId); + this.putLShort(this.flags); + if ((this.flags & FLAG_HAS_X) != 0) { + this.putCoordinate(this.x); + } + if ((this.flags & FLAG_HAS_Y) != 0) { + this.putCoordinate(this.y); + } + if ((this.flags & FLAG_HAS_Z) != 0) { + this.putCoordinate(this.z); + } + if ((this.flags & FLAG_HAS_PITCH) != 0) { + this.putRotation(this.pitch); + } + if ((this.flags & FLAG_HAS_YAW) != 0) { + this.putRotation(this.yaw); + } + if ((this.flags & FLAG_HAS_HEAD_YAW) != 0) { + this.putRotation(this.headYaw); } - putCoordinate(FLAG_HAS_X, x); - putCoordinate(FLAG_HAS_Y, y); - putCoordinate(FLAG_HAS_Z, z); - putRotation(FLAG_HAS_YAW, this.yawDelta); - putRotation(FLAG_HAS_HEAD_YAW, this.headYawDelta); - putRotation(FLAG_HAS_PITCH, this.pitchDelta); } - private float getCoordinate(int flag) { - if ((flags & flag) != 0) { - return this.getLFloat(); - } - return 0; + private float getCoordinate() { + return this.getLFloat(); } - private double getRotation(int flag) { - if ((flags & flag) != 0) { - return this.getByte() * (360d / 256d); - } - return 0d; + private void putCoordinate(float value) { + this.putLFloat(value); } - private void putCoordinate(int flag, float value) { - if ((flags & flag) != 0) { - this.putLFloat(value); - } + private float getRotation() { + return this.getByte() * (360F / 256F); } - private void putRotation(int flag, double value) { - if ((flags & flag) != 0) { - this.putByte((byte) (value / (360d / 256d))); - } + private void putRotation(float value) { + this.putByte((byte) (value / (360F / 256F))); + } + + @Since("1.6.0.0-PN") + public boolean hasFlag(int flag) { + return (this.flags & flag) != 0; } } diff --git a/src/main/java/cn/nukkit/network/protocol/NPCDialoguePacket.java b/src/main/java/cn/nukkit/network/protocol/NPCDialoguePacket.java new file mode 100644 index 00000000000..2bb251387b2 --- /dev/null +++ b/src/main/java/cn/nukkit/network/protocol/NPCDialoguePacket.java @@ -0,0 +1,161 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2021 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package cn.nukkit.network.protocol; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; + +import javax.annotation.Nonnull; + +/** + * @author joserobjr + * @since 2021-07-06 + */ +@PowerNukkitOnly +@Since("1.5.2.0-PN") +public class NPCDialoguePacket extends DataPacket { + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public static final byte NETWORK_ID = ProtocolInfo.NPC_DIALOGUE_PACKET; + + private static final NPCDialogAction[] ACTIONS = NPCDialogAction.values(); + + private long runtimeEntityId; + private NPCDialogAction action = NPCDialogAction.OPEN; + private String dialogue = ""; + private String sceneName = ""; + private String npcName = ""; + private String actionJson = ""; + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public NPCDialoguePacket() { + // Indicates when this public constructor were accessible + } + + @Override + public byte pid() { + return NETWORK_ID; + } + + @Override + public void decode() { + runtimeEntityId = getUnsignedVarLong(); + action = ACTIONS[getVarInt()]; + dialogue = getString(); + sceneName = getString(); + npcName = getString(); + actionJson = getString(); + } + + @Override + public void encode() { + reset(); + putUnsignedVarLong(runtimeEntityId); + putVarInt(action.ordinal()); + putString(dialogue); + putString(sceneName); + putString(npcName); + putString(actionJson); + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public long getRuntimeEntityId() { + return runtimeEntityId; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setRuntimeEntityId(long runtimeEntityId) { + this.runtimeEntityId = runtimeEntityId; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + @Nonnull + public NPCDialogAction getAction() { + return action; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setAction(@Nonnull NPCDialogAction action) { + this.action = action; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + @Nonnull + public String getDialogue() { + return dialogue; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setDialogue(@Nonnull String dialogue) { + this.dialogue = dialogue; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + @Nonnull + public String getSceneName() { + return sceneName; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setSceneName(@Nonnull String sceneName) { + this.sceneName = sceneName; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + @Nonnull + public String getNpcName() { + return npcName; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setNpcName(@Nonnull String npcName) { + this.npcName = npcName; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + @Nonnull + public String getActionJson() { + return actionJson; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setActionJson(@Nonnull String actionJson) { + this.actionJson = actionJson; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public enum NPCDialogAction { + @PowerNukkitOnly @Since("1.5.2.0-PN") OPEN, + @PowerNukkitOnly @Since("1.5.2.0-PN") CLOSE + } +} diff --git a/src/main/java/cn/nukkit/network/protocol/NPCRequestPacket.java b/src/main/java/cn/nukkit/network/protocol/NPCRequestPacket.java index 1e8f891e741..075da0c65a4 100644 --- a/src/main/java/cn/nukkit/network/protocol/NPCRequestPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/NPCRequestPacket.java @@ -1,18 +1,86 @@ package cn.nukkit.network.protocol; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import lombok.ToString; @ToString public class NPCRequestPacket extends DataPacket { - @Since("1.4.0.0-PN") public long entityRuntimeId; + @Since("1.4.0.0-PN") + public long entityRuntimeId; + + @Since("1.4.0.0-PN") + public RequestType requestType; + + @Since("1.4.0.0-PN") + public String commandString; + + @Since("1.4.0.0-PN") + public int actionType; + + @Since("1.6.0.0-PN") + public String sceneName; + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public long getRequestedEntityRuntimeId() { + return entityRuntimeId; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setRequestedEntityRuntimeId(long entityRuntimeId) { + this.entityRuntimeId = entityRuntimeId; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public RequestType getRequestType() { + return requestType; + } - @Since("1.4.0.0-PN") public RequestType requestType; + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setRequestType(RequestType requestType) { + this.requestType = requestType; + } - @Since("1.4.0.0-PN") public String commandString; + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public String getCommandString() { + return commandString; + } - @Since("1.4.0.0-PN") public int actionType; + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setCommandString(String commandString) { + this.commandString = commandString; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public int getActionType() { + return actionType; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setActionType(int actionType) { + this.actionType = actionType; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public String getSceneName() { + return sceneName; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setSceneName(String sceneName) { + this.sceneName = sceneName; + } @Since("1.4.0.0-PN") public enum RequestType { @@ -33,18 +101,20 @@ public byte pid() { @Override public void decode() { - this.entityRuntimeId = this.getEntityRuntimeId(); + this.entityRuntimeId = super.getEntityRuntimeId(); this.requestType = RequestType.values()[this.getByte()]; this.commandString = this.getString(); this.actionType = this.getByte(); + this.sceneName = this.getString(); } @Override public void encode() { + this.reset(); this.putEntityRuntimeId(this.entityRuntimeId); this.putByte((byte) requestType.ordinal()); this.putString(this.commandString); this.putByte((byte) this.actionType); + this.putString(this.sceneName); } - } diff --git a/src/main/java/cn/nukkit/network/protocol/PlayerActionPacket.java b/src/main/java/cn/nukkit/network/protocol/PlayerActionPacket.java index 2107901b9b6..52dfbce295c 100644 --- a/src/main/java/cn/nukkit/network/protocol/PlayerActionPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/PlayerActionPacket.java @@ -1,5 +1,6 @@ package cn.nukkit.network.protocol; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.math.BlockVector3; import lombok.ToString; @@ -35,7 +36,7 @@ public class PlayerActionPacket extends DataPacket { public static final int ACTION_STOP_SWIMMING = 22; public static final int ACTION_START_SPIN_ATTACK = 23; public static final int ACTION_STOP_SPIN_ATTACK = 24; - public static final int ACTION_INTERACT_BLOCK = 25; + @PowerNukkitOnly public static final int ACTION_INTERACT_BLOCK = 25; public long entityId; public int action; diff --git a/src/main/java/cn/nukkit/network/protocol/PlayerEnchantOptionsPacket.java b/src/main/java/cn/nukkit/network/protocol/PlayerEnchantOptionsPacket.java index a9a0a089e46..b5709d3aaa2 100644 --- a/src/main/java/cn/nukkit/network/protocol/PlayerEnchantOptionsPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/PlayerEnchantOptionsPacket.java @@ -1,7 +1,5 @@ package cn.nukkit.network.protocol; -import cn.nukkit.api.DeprecationDetails; -import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import it.unimi.dsi.fastutil.objects.ObjectArrayList; import lombok.ToString; diff --git a/src/main/java/cn/nukkit/network/protocol/PositionTrackingDBClientRequestPacket.java b/src/main/java/cn/nukkit/network/protocol/PositionTrackingDBClientRequestPacket.java index eda91ed7f26..5773a62a24a 100644 --- a/src/main/java/cn/nukkit/network/protocol/PositionTrackingDBClientRequestPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/PositionTrackingDBClientRequestPacket.java @@ -2,6 +2,7 @@ import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; +import lombok.NoArgsConstructor; import lombok.ToString; /** @@ -10,6 +11,7 @@ @PowerNukkitOnly @Since("1.4.0.0-PN") @ToString +@NoArgsConstructor(onConstructor = @__(@PowerNukkitOnly)) public class PositionTrackingDBClientRequestPacket extends DataPacket { @PowerNukkitOnly @Since("1.4.0.0-PN") diff --git a/src/main/java/cn/nukkit/network/protocol/PositionTrackingDBServerBroadcastPacket.java b/src/main/java/cn/nukkit/network/protocol/PositionTrackingDBServerBroadcastPacket.java index afaa3fe9e7a..a65ab5b615f 100644 --- a/src/main/java/cn/nukkit/network/protocol/PositionTrackingDBServerBroadcastPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/PositionTrackingDBServerBroadcastPacket.java @@ -10,6 +10,7 @@ import cn.nukkit.nbt.tag.ListTag; import io.netty.handler.codec.EncoderException; import it.unimi.dsi.fastutil.io.FastByteArrayInputStream; +import lombok.NoArgsConstructor; import lombok.ToString; import javax.annotation.Nullable; @@ -21,12 +22,11 @@ @PowerNukkitOnly @Since("1.4.0.0-PN") @ToString +@NoArgsConstructor(onConstructor = @__(@PowerNukkitOnly)) public class PositionTrackingDBServerBroadcastPacket extends DataPacket { @PowerNukkitOnly @Since("1.4.0.0-PN") public static final byte NETWORK_ID = ProtocolInfo.POS_TRACKING_SERVER_BROADCAST_PACKET; - @PowerNukkitOnly - @Since("1.4.0.0-PN") private static final Action[] ACTIONS = Action.values(); private Action action; diff --git a/src/main/java/cn/nukkit/network/protocol/ProtocolInfo.java b/src/main/java/cn/nukkit/network/protocol/ProtocolInfo.java index fc1104ce4a3..ae12f910a39 100644 --- a/src/main/java/cn/nukkit/network/protocol/ProtocolInfo.java +++ b/src/main/java/cn/nukkit/network/protocol/ProtocolInfo.java @@ -1,5 +1,6 @@ package cn.nukkit.network.protocol; +import cn.nukkit.api.DeprecationDetails; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import com.google.common.primitives.Ints; @@ -16,12 +17,12 @@ public interface ProtocolInfo { /** * Actual Minecraft: PE protocol version */ - int CURRENT_PROTOCOL = dynamic(440); + int CURRENT_PROTOCOL = dynamic(503); List SUPPORTED_PROTOCOLS = Ints.asList(CURRENT_PROTOCOL); - String MINECRAFT_VERSION = dynamic("v1.17.0"); - String MINECRAFT_VERSION_NETWORK = dynamic("1.17.0"); + String MINECRAFT_VERSION = dynamic("v1.18.30"); + String MINECRAFT_VERSION_NETWORK = dynamic("1.18.30"); byte LOGIN_PACKET = 0x01; byte PLAY_STATUS_PACKET = 0x02; @@ -181,9 +182,14 @@ public interface ProtocolInfo { @Since("1.4.0.0-PN") byte ITEM_COMPONENT_PACKET = (byte) 0xa2; @Since("1.4.0.0-PN") byte FILTER_TEXT_PACKET = (byte) 0xa3; @Since("1.4.0.0-PN") byte CLIENTBOUND_DEBUG_RENDERER_PACKET = (byte) 0xa4; - @Since("1.5.0.0-PN") @PowerNukkitOnly byte SYNC_ENTITY_PROPERTY = (byte) 0xa5; - @Since("1.5.0.0-PN") @PowerNukkitOnly byte ADD_VOLUME_ENTITY = (byte) 0xa6; - @Since("1.5.0.0-PN") @PowerNukkitOnly byte REMOVE_VOLUME_ENTITY = (byte) 0xa7; + @Since("1.5.2.0-PN") @PowerNukkitOnly byte SYNC_ENTITY_PROPERTY_PACKET = (byte) 0xa5; + @Since("1.5.2.0-PN") @PowerNukkitOnly byte ADD_VOLUME_ENTITY_PACKET = (byte) 0xa6; + @Since("1.5.2.0-PN") @PowerNukkitOnly byte REMOVE_VOLUME_ENTITY_PACKET = (byte) 0xa7; + @Since("1.5.0.0-PN") @PowerNukkitOnly @Deprecated @DeprecationDetails(since = "1.5.2.0-PN", reason = "Incorrect naming convention", by = "PowerNukkit", replaceWith = "SYNC_ENTITY_PROPERTY_PACKET") byte SYNC_ENTITY_PROPERTY = SYNC_ENTITY_PROPERTY_PACKET; + @Since("1.5.0.0-PN") @PowerNukkitOnly @Deprecated @DeprecationDetails(since = "1.5.2.0-PN", reason = "Incorrect naming convention", by = "PowerNukkit", replaceWith = "ADD_VOLUME_ENTITY_PACKET") byte ADD_VOLUME_ENTITY = ADD_VOLUME_ENTITY_PACKET; + @Since("1.5.0.0-PN") @PowerNukkitOnly @Deprecated @DeprecationDetails(since = "1.5.2.0-PN", reason = "Incorrect naming convention", by = "PowerNukkit", replaceWith = "REMOVE_VOLUME_ENTITY_PACKET") byte REMOVE_VOLUME_ENTITY = REMOVE_VOLUME_ENTITY_PACKET; + @Since("1.5.2.0-PN") @PowerNukkitOnly byte SIMULATION_TYPE_PACKET = (byte) 0xa8; + @Since("1.5.2.0-PN") @PowerNukkitOnly byte NPC_DIALOGUE_PACKET = (byte) 0xa9; byte BATCH_PACKET = (byte) 0xff; } diff --git a/src/main/java/cn/nukkit/network/protocol/RemoveVolumeEntityPacket.java b/src/main/java/cn/nukkit/network/protocol/RemoveVolumeEntityPacket.java index 1f18fd3ddd1..30841ed9981 100644 --- a/src/main/java/cn/nukkit/network/protocol/RemoveVolumeEntityPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/RemoveVolumeEntityPacket.java @@ -8,10 +8,15 @@ public class RemoveVolumeEntityPacket extends DataPacket { @PowerNukkitOnly @Since("1.5.0.0-PN") - public static final byte NETWORK_ID = ProtocolInfo.REMOVE_VOLUME_ENTITY; + public static final byte NETWORK_ID = ProtocolInfo.REMOVE_VOLUME_ENTITY_PACKET; private long id; + @PowerNukkitOnly + @Since("1.5.0.0-PN") + public RemoveVolumeEntityPacket() { + // Does nothing + } @Override public byte pid() { @@ -25,6 +30,7 @@ public void decode() { @Override public void encode() { + reset(); putUnsignedVarInt(id); } diff --git a/src/main/java/cn/nukkit/network/protocol/ResourcePackChunkDataPacket.java b/src/main/java/cn/nukkit/network/protocol/ResourcePackChunkDataPacket.java index 72232810409..af3f5d79dab 100644 --- a/src/main/java/cn/nukkit/network/protocol/ResourcePackChunkDataPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/ResourcePackChunkDataPacket.java @@ -1,22 +1,28 @@ package cn.nukkit.network.protocol; +import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import lombok.ToString; +import org.powernukkit.version.Version; import java.util.UUID; @ToString(exclude = "data") -public class ResourcePackChunkDataPacket extends DataPacket { +@PowerNukkitDifference(extendsOnlyInPowerNukkit = AbstractResourcePackDataPacket.class, insteadOf = DataPacket.class, since = "1.5.2.0-PN") +public class ResourcePackChunkDataPacket extends AbstractResourcePackDataPacket { public static final byte NETWORK_ID = ProtocolInfo.RESOURCE_PACK_CHUNK_DATA_PACKET; public UUID packId; + private Version packVersion; public int chunkIndex; public long progress; public byte[] data; @Override public void decode() { - this.packId = UUID.fromString(this.getString()); + decodePackInfo(); this.chunkIndex = this.getLInt(); this.progress = this.getLLong(); this.data = this.getByteArray(); @@ -25,12 +31,40 @@ public void decode() { @Override public void encode() { this.reset(); - this.putString(this.packId.toString()); + encodePackInfo(); this.putLInt(this.chunkIndex); this.putLLong(this.progress); this.putByteArray(this.data); } + @Since("1.5.2.0-PN") + @PowerNukkitOnly + @Override + public Version getPackVersion() { + return packVersion; + } + + @Since("1.5.2.0-PN") + @PowerNukkitOnly + @Override + public void setPackVersion(Version packVersion) { + this.packVersion = packVersion; + } + + @Since("1.5.2.0-PN") + @PowerNukkitOnly + @Override + public UUID getPackId() { + return packId; + } + + @Since("1.5.2.0-PN") + @PowerNukkitOnly + @Override + public void setPackId(UUID packId) { + this.packId = packId; + } + @Override public byte pid() { return NETWORK_ID; diff --git a/src/main/java/cn/nukkit/network/protocol/ResourcePackChunkRequestPacket.java b/src/main/java/cn/nukkit/network/protocol/ResourcePackChunkRequestPacket.java index ebed714e1f6..7f6c322f395 100644 --- a/src/main/java/cn/nukkit/network/protocol/ResourcePackChunkRequestPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/ResourcePackChunkRequestPacket.java @@ -1,30 +1,65 @@ package cn.nukkit.network.protocol; +import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; + import lombok.ToString; +import org.powernukkit.version.Version; import java.util.UUID; @ToString -public class ResourcePackChunkRequestPacket extends DataPacket { +@PowerNukkitDifference(extendsOnlyInPowerNukkit = AbstractResourcePackDataPacket.class, insteadOf = DataPacket.class, since = "1.5.2.0-PN") +public class ResourcePackChunkRequestPacket extends AbstractResourcePackDataPacket { public static final byte NETWORK_ID = ProtocolInfo.RESOURCE_PACK_CHUNK_REQUEST_PACKET; public UUID packId; + private Version packVersion; public int chunkIndex; @Override public void decode() { - this.packId = UUID.fromString(this.getString()); + decodePackInfo(); this.chunkIndex = this.getLInt(); } @Override public void encode() { this.reset(); - this.putString(this.packId.toString()); + encodePackInfo(); this.putLInt(this.chunkIndex); } + @Since("1.5.2.0-PN") + @PowerNukkitOnly + @Override + public Version getPackVersion() { + return packVersion; + } + + @Since("1.5.2.0-PN") + @PowerNukkitOnly + @Override + public void setPackVersion(Version packVersion) { + this.packVersion = packVersion; + } + + @Since("1.5.2.0-PN") + @PowerNukkitOnly + @Override + public UUID getPackId() { + return packId; + } + + @Since("1.5.2.0-PN") + @PowerNukkitOnly + @Override + public void setPackId(UUID packId) { + this.packId = packId; + } + @Override public byte pid() { return NETWORK_ID; diff --git a/src/main/java/cn/nukkit/network/protocol/ResourcePackDataInfoPacket.java b/src/main/java/cn/nukkit/network/protocol/ResourcePackDataInfoPacket.java index d1960c9ec2c..b62a091591b 100644 --- a/src/main/java/cn/nukkit/network/protocol/ResourcePackDataInfoPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/ResourcePackDataInfoPacket.java @@ -1,11 +1,16 @@ package cn.nukkit.network.protocol; +import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import lombok.ToString; +import org.powernukkit.version.Version; import java.util.UUID; @ToString(exclude = "sha256") -public class ResourcePackDataInfoPacket extends DataPacket { +@PowerNukkitDifference(extendsOnlyInPowerNukkit = AbstractResourcePackDataPacket.class, insteadOf = DataPacket.class, since = "1.5.2.0-PN") +public class ResourcePackDataInfoPacket extends AbstractResourcePackDataPacket { public static final byte NETWORK_ID = ProtocolInfo.RESOURCE_PACK_DATA_INFO_PACKET; @@ -21,6 +26,7 @@ public class ResourcePackDataInfoPacket extends DataPacket { public static final int TYPE_COUNT = 9; public UUID packId; + private Version packVersion; public int maxChunkSize; public int chunkCount; public long compressedPackSize; @@ -30,7 +36,7 @@ public class ResourcePackDataInfoPacket extends DataPacket { @Override public void decode() { - this.packId = UUID.fromString(this.getString()); + decodePackInfo(); this.maxChunkSize = this.getLInt(); this.chunkCount = this.getLInt(); this.compressedPackSize = this.getLLong(); @@ -42,7 +48,7 @@ public void decode() { @Override public void encode() { this.reset(); - this.putString(this.packId.toString()); + encodePackInfo(); this.putLInt(this.maxChunkSize); this.putLInt(this.chunkCount); this.putLLong(this.compressedPackSize); @@ -55,4 +61,32 @@ public void encode() { public byte pid() { return NETWORK_ID; } + + @Override + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public Version getPackVersion() { + return packVersion; + } + + @Override + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setPackVersion(Version packVersion) { + this.packVersion = packVersion; + } + + @Since("1.5.2.0-PN") + @PowerNukkitOnly + @Override + public UUID getPackId() { + return packId; + } + + @Since("1.5.2.0-PN") + @PowerNukkitOnly + @Override + public void setPackId(UUID packId) { + this.packId = packId; + } } diff --git a/src/main/java/cn/nukkit/network/protocol/ResourcePacksInfoPacket.java b/src/main/java/cn/nukkit/network/protocol/ResourcePacksInfoPacket.java index 30f521fedde..1fd5ae50d34 100644 --- a/src/main/java/cn/nukkit/network/protocol/ResourcePacksInfoPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/ResourcePacksInfoPacket.java @@ -1,5 +1,7 @@ package cn.nukkit.network.protocol; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.resourcepacks.ResourcePack; import lombok.ToString; @@ -10,6 +12,7 @@ public class ResourcePacksInfoPacket extends DataPacket { public boolean mustAccept; public boolean scripting; + @Since("1.6.0.0-PN") public boolean forceServerPacks; public ResourcePack[] behaviourPackEntries = ResourcePack.EMPTY_ARRAY; public ResourcePack[] resourcePackEntries = ResourcePack.EMPTY_ARRAY; @@ -23,12 +26,12 @@ public void encode() { this.reset(); this.putBoolean(this.mustAccept); this.putBoolean(this.scripting); - - encodePacks(this.behaviourPackEntries); - encodePacks(this.resourcePackEntries); + this.putBoolean(this.forceServerPacks); + this.encodePacks(this.behaviourPackEntries, true); + this.encodePacks(this.resourcePackEntries, false); } - private void encodePacks(ResourcePack[] packs) { + private void encodePacks(ResourcePack[] packs, boolean behaviour) { this.putLShort(packs.length); for (ResourcePack entry : packs) { this.putString(entry.getPackId().toString()); @@ -36,9 +39,11 @@ private void encodePacks(ResourcePack[] packs) { this.putLLong(entry.getPackSize()); this.putString(""); // encryption key this.putString(""); // sub-pack name - this.putString(""); // content identity + this.putString(entry.getPackId().toString()); // content identity this.putBoolean(false); // scripting - this.putBoolean(false); // raytracing capable + if (!behaviour) { + this.putBoolean(false); // raytracing capable + } } } @@ -46,4 +51,64 @@ private void encodePacks(ResourcePack[] packs) { public byte pid() { return NETWORK_ID; } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public boolean isForcedToAccept() { + return mustAccept; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setForcedToAccept(boolean mustAccept) { + this.mustAccept = mustAccept; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public boolean isScriptingEnabled() { + return scripting; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setScriptingEnabled(boolean scripting) { + this.scripting = scripting; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public ResourcePack[] getBehaviourPackEntries() { + return behaviourPackEntries; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setBehaviourPackEntries(ResourcePack[] behaviourPackEntries) { + this.behaviourPackEntries = behaviourPackEntries; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public ResourcePack[] getResourcePackEntries() { + return resourcePackEntries; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setResourcePackEntries(ResourcePack[] resourcePackEntries) { + this.resourcePackEntries = resourcePackEntries; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public boolean isForcingServerPacksEnabled() { + return forceServerPacks; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setForcingServerPacksEnabled(boolean forcingServerPacksEnabled) { + this.forceServerPacks = forcingServerPacksEnabled; + } } diff --git a/src/main/java/cn/nukkit/network/protocol/SetSpawnPositionPacket.java b/src/main/java/cn/nukkit/network/protocol/SetSpawnPositionPacket.java index 3c8345c97a5..e7099c47113 100644 --- a/src/main/java/cn/nukkit/network/protocol/SetSpawnPositionPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/SetSpawnPositionPacket.java @@ -1,7 +1,5 @@ package cn.nukkit.network.protocol; -import cn.nukkit.api.DeprecationDetails; -import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import lombok.ToString; diff --git a/src/main/java/cn/nukkit/network/protocol/SetTitlePacket.java b/src/main/java/cn/nukkit/network/protocol/SetTitlePacket.java index c2242c6917d..55f4bf0d919 100644 --- a/src/main/java/cn/nukkit/network/protocol/SetTitlePacket.java +++ b/src/main/java/cn/nukkit/network/protocol/SetTitlePacket.java @@ -1,7 +1,11 @@ package cn.nukkit.network.protocol; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import lombok.ToString; +import javax.annotation.Nonnull; + /** * @author Tee7even */ @@ -9,6 +13,8 @@ public class SetTitlePacket extends DataPacket { public static final byte NETWORK_ID = ProtocolInfo.SET_TITLE_PACKET; + private static final TitleAction[] TITLE_ACTIONS = TitleAction.values(); + public static final int TYPE_CLEAR = 0; public static final int TYPE_RESET = 1; public static final int TYPE_TITLE = 2; @@ -21,6 +27,8 @@ public class SetTitlePacket extends DataPacket { public int fadeInTime = 0; public int stayTime = 0; public int fadeOutTime = 0; + @Since("1.6.0.0-PN") public String xuid = ""; + @Since("1.6.0.0-PN") public String platformOnlineId = ""; @Override public byte pid() { @@ -34,6 +42,8 @@ public void decode() { this.fadeInTime = this.getVarInt(); this.stayTime = this.getVarInt(); this.fadeOutTime = this.getVarInt(); + this.xuid = this.getString(); + this.platformOnlineId = this.getString(); } @Override @@ -44,5 +54,111 @@ public void encode() { this.putVarInt(fadeInTime); this.putVarInt(stayTime); this.putVarInt(fadeOutTime); + this.putString(xuid); + this.putString(platformOnlineId); + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + @Nonnull + public TitleAction getTitleAction() { + int currentType = this.type; + if (currentType >= 0 && currentType < TITLE_ACTIONS.length) { + return TITLE_ACTIONS[currentType]; + } + throw new UnsupportedOperationException("Bad type: "+currentType); + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setTitleAction(@Nonnull TitleAction type) { + this.type = type.ordinal(); + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + @Nonnull + public String getText() { + return text; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setText(@Nonnull String text) { + this.text = text; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public int getFadeInTime() { + return fadeInTime; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setFadeInTime(int fadeInTime) { + this.fadeInTime = fadeInTime; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public int getStayTime() { + return stayTime; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setStayTime(int stayTime) { + this.stayTime = stayTime; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public int getFadeOutTime() { + return fadeOutTime; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setFadeOutTime(int fadeOutTime) { + this.fadeOutTime = fadeOutTime; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public String getXuid() { + return xuid; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setXuid(String xuid) { + this.xuid = xuid; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public String getPlatformOnlineId() { + return platformOnlineId; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setPlatformOnlineId(String platformOnlineId) { + this.platformOnlineId = platformOnlineId; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public enum TitleAction { + @PowerNukkitOnly @Since("1.5.2.0-PN") CLEAR, + @PowerNukkitOnly @Since("1.5.2.0-PN") RESET, + @PowerNukkitOnly @Since("1.5.2.0-PN") SET_TITLE_MESSAGE, + @PowerNukkitOnly @Since("1.5.2.0-PN") SET_SUBTITLE_MESSAGE, + @PowerNukkitOnly @Since("1.5.2.0-PN") SET_ACTION_BAR_MESSAGE, + @PowerNukkitOnly @Since("1.5.2.0-PN") SET_ANIMATION_TIMES, + @PowerNukkitOnly @Since("1.5.2.0-PN") SET_TITLE_JSON, + @PowerNukkitOnly @Since("1.5.2.0-PN") SET_SUBTITLE_JSON, + @PowerNukkitOnly @Since("1.5.2.0-PN") SET_ACTIONBAR_JSON, } } diff --git a/src/main/java/cn/nukkit/network/protocol/SimulationTypePacket.java b/src/main/java/cn/nukkit/network/protocol/SimulationTypePacket.java new file mode 100644 index 00000000000..cc5be5c8a4f --- /dev/null +++ b/src/main/java/cn/nukkit/network/protocol/SimulationTypePacket.java @@ -0,0 +1,83 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2021 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package cn.nukkit.network.protocol; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; + +import javax.annotation.Nonnull; + +/** + * @author joserobjr + * @since 2021-07-06 + */ +@PowerNukkitOnly +@Since("1.5.2.0-PN") +public class SimulationTypePacket extends DataPacket { + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public static final byte NETWORK_ID = ProtocolInfo.NPC_DIALOGUE_PACKET; + + private static final SimulationType[] TYPES = SimulationType.values(); + + private SimulationType type; + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public SimulationTypePacket() { + type = SimulationType.GAME; + } + + @Override + public byte pid() { + return NETWORK_ID; + } + + @Override + public void decode() { + type = TYPES[getByte()]; + } + + @Override + public void encode() { + reset(); + putByte((byte) type.ordinal()); + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + @Nonnull + public SimulationType getSimulationType() { + return type; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setSimulationType(@Nonnull SimulationType type) { + this.type = type; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public enum SimulationType { + @PowerNukkitOnly @Since("1.5.2.0-PN") GAME, + @PowerNukkitOnly @Since("1.5.2.0-PN") EDITOR, + @PowerNukkitOnly @Since("1.5.2.0-PN") TEST + } +} diff --git a/src/main/java/cn/nukkit/network/protocol/SpawnParticleEffectPacket.java b/src/main/java/cn/nukkit/network/protocol/SpawnParticleEffectPacket.java index dfd3746517a..3f20056224e 100644 --- a/src/main/java/cn/nukkit/network/protocol/SpawnParticleEffectPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/SpawnParticleEffectPacket.java @@ -28,5 +28,6 @@ public void encode() { this.putEntityUniqueId(uniqueEntityId); this.putVector3f(this.position); this.putString(this.identifier); + this.putBoolean(false); } } diff --git a/src/main/java/cn/nukkit/network/protocol/StartGamePacket.java b/src/main/java/cn/nukkit/network/protocol/StartGamePacket.java index aee35678b90..0f0ca813515 100644 --- a/src/main/java/cn/nukkit/network/protocol/StartGamePacket.java +++ b/src/main/java/cn/nukkit/network/protocol/StartGamePacket.java @@ -96,7 +96,7 @@ public void encode() { this.putLFloat(this.yaw); this.putLFloat(this.pitch); - this.putVarInt(this.seed); + this.putLLong(this.seed); this.putLShort(0x00); // SpawnBiomeType - Default this.putString("plains"); // UserDefinedBiomeName this.putVarInt(this.dimension); @@ -136,6 +136,8 @@ public void encode() { this.putLInt(16); // Limited world width this.putLInt(16); // Limited world height this.putBoolean(false); // Nether type + this.putString(""); // EduSharedUriResource buttonName + this.putString(""); // EduSharedUriResource linkUri this.putBoolean(false); // Experimental Gameplay this.putString(this.levelId); @@ -152,5 +154,6 @@ public void encode() { this.putString(this.multiplayerCorrelationId); this.putBoolean(this.isInventoryServerAuthoritative); this.putString(""); // Server Engine + this.putLLong(0L); // BlockRegistryChecksum } } diff --git a/src/main/java/cn/nukkit/network/protocol/SyncEntityPropertyPacket.java b/src/main/java/cn/nukkit/network/protocol/SyncEntityPropertyPacket.java index 3fd59c438ad..b7a8dcf50bd 100644 --- a/src/main/java/cn/nukkit/network/protocol/SyncEntityPropertyPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/SyncEntityPropertyPacket.java @@ -9,10 +9,16 @@ public class SyncEntityPropertyPacket extends DataPacket { @PowerNukkitOnly @Since("1.5.0.0-PN") - public static final byte NETWORK_ID = ProtocolInfo.SYNC_ENTITY_PROPERTY; + public static final byte NETWORK_ID = ProtocolInfo.SYNC_ENTITY_PROPERTY_PACKET; private CompoundTag data; + @PowerNukkitOnly + @Since("1.5.0.0-PN") + public SyncEntityPropertyPacket() { + // Does nothing + } + @Override public byte pid() { return NETWORK_ID; @@ -25,6 +31,7 @@ public void decode() { @Override public void encode() { + reset(); putTag(data); } diff --git a/src/main/java/cn/nukkit/network/protocol/TextPacket.java b/src/main/java/cn/nukkit/network/protocol/TextPacket.java index a0eb44b41be..79096adca48 100644 --- a/src/main/java/cn/nukkit/network/protocol/TextPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/TextPacket.java @@ -1,7 +1,5 @@ package cn.nukkit.network.protocol; -import cn.nukkit.api.DeprecationDetails; -import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.utils.BinaryStream; import io.netty.util.internal.EmptyArrays; diff --git a/src/main/java/cn/nukkit/network/protocol/TickSyncPacket.java b/src/main/java/cn/nukkit/network/protocol/TickSyncPacket.java index 294640434a3..d2614543d88 100644 --- a/src/main/java/cn/nukkit/network/protocol/TickSyncPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/TickSyncPacket.java @@ -3,6 +3,7 @@ import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; +import lombok.NoArgsConstructor; import lombok.ToString; /** @@ -11,6 +12,7 @@ @PowerNukkitOnly @Since("1.5.0.0-PN") @ToString +@NoArgsConstructor(onConstructor = @__(@PowerNukkitOnly)) public class TickSyncPacket extends DataPacket { @PowerNukkitOnly diff --git a/src/main/java/cn/nukkit/network/protocol/UpdateAttributesPacket.java b/src/main/java/cn/nukkit/network/protocol/UpdateAttributesPacket.java index 242bc1a2c4e..ea01b0188cd 100644 --- a/src/main/java/cn/nukkit/network/protocol/UpdateAttributesPacket.java +++ b/src/main/java/cn/nukkit/network/protocol/UpdateAttributesPacket.java @@ -21,10 +21,12 @@ public byte pid() { return NETWORK_ID; } + @Override public void decode() { } + @Override public void encode() { this.reset(); diff --git a/src/main/java/cn/nukkit/network/protocol/types/EntityLink.java b/src/main/java/cn/nukkit/network/protocol/types/EntityLink.java index 8c22e0bde24..35e1ab69ec9 100644 --- a/src/main/java/cn/nukkit/network/protocol/types/EntityLink.java +++ b/src/main/java/cn/nukkit/network/protocol/types/EntityLink.java @@ -1,6 +1,5 @@ package cn.nukkit.network.protocol.types; -import cn.nukkit.api.DeprecationDetails; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; diff --git a/src/main/java/cn/nukkit/network/rcon/RCONServer.java b/src/main/java/cn/nukkit/network/rcon/RCONServer.java index 334de29d376..32b9ed3cf93 100644 --- a/src/main/java/cn/nukkit/network/rcon/RCONServer.java +++ b/src/main/java/cn/nukkit/network/rcon/RCONServer.java @@ -73,6 +73,7 @@ public void close() { this.selector.wakeup(); } + @Override public void run() { while (this.running) { try { diff --git a/src/main/java/cn/nukkit/plugin/LibraryLoader.java b/src/main/java/cn/nukkit/plugin/LibraryLoader.java index 72d53b8b27b..76eadbd7c4d 100644 --- a/src/main/java/cn/nukkit/plugin/LibraryLoader.java +++ b/src/main/java/cn/nukkit/plugin/LibraryLoader.java @@ -31,14 +31,17 @@ public static void load(String library) { throw new IllegalArgumentException(library); } load(new Library() { + @Override public String getGroupId() { return split[0]; } + @Override public String getArtifactId() { return split[1]; } + @Override public String getVersion() { return split[2]; } diff --git a/src/main/java/cn/nukkit/plugin/PluginBase.java b/src/main/java/cn/nukkit/plugin/PluginBase.java index 1c1222faec8..ecdda8a3ca5 100644 --- a/src/main/java/cn/nukkit/plugin/PluginBase.java +++ b/src/main/java/cn/nukkit/plugin/PluginBase.java @@ -51,18 +51,22 @@ abstract public class PluginBase implements Plugin { private PluginLogger logger; + @Override public void onLoad() { } + @Override public void onEnable() { } + @Override public void onDisable() { } + @Override public final boolean isEnabled() { return isEnabled; } @@ -105,14 +109,17 @@ public final void setEnabled(boolean value) { } } + @Override public final boolean isDisabled() { return !isEnabled; } + @Override public final File getDataFolder() { return dataFolder; } + @Override public final PluginDescription getDescription() { return description; } @@ -149,6 +156,7 @@ public final void init(PluginLoader loader, Server server, PluginDescription des } } + @Override public PluginLogger getLogger() { return logger; } diff --git a/src/main/java/cn/nukkit/plugin/PluginManager.java b/src/main/java/cn/nukkit/plugin/PluginManager.java index 6df7836eddb..345ed3ca801 100644 --- a/src/main/java/cn/nukkit/plugin/PluginManager.java +++ b/src/main/java/cn/nukkit/plugin/PluginManager.java @@ -7,6 +7,7 @@ import cn.nukkit.command.PluginCommand; import cn.nukkit.command.SimpleCommandMap; import cn.nukkit.event.*; +import cn.nukkit.lang.BaseLang; import cn.nukkit.permission.Permissible; import cn.nukkit.permission.Permission; import cn.nukkit.utils.PluginException; @@ -266,8 +267,9 @@ public Map loadPlugins(File dictionary, List newLoaders, if (loadedPlugins.containsKey(dependency) || this.getPlugin(dependency) != null) { dependencies.get(name).remove(dependency); } else if (!plugins.containsKey(dependency)) { - log.fatal(this.server.getLanguage().translateString("nukkit" + - ".plugin.loadError", name, "%nukkit.plugin.unknownDependency", dependency)); + BaseLang language = this.server.getLanguage(); + String cause = language.translateString("nukkit.plugin.missingDependency", dependency); + log.fatal(language.translateString("nukkit.plugin.loadError", new String[]{name, cause}, null)); break; } } diff --git a/src/main/java/cn/nukkit/plugin/PowerNukkitPlugin.java b/src/main/java/cn/nukkit/plugin/PowerNukkitPlugin.java index 32fa019de40..6d96fd6245d 100644 --- a/src/main/java/cn/nukkit/plugin/PowerNukkitPlugin.java +++ b/src/main/java/cn/nukkit/plugin/PowerNukkitPlugin.java @@ -2,10 +2,11 @@ import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; -import cn.nukkit.event.Listener; +import lombok.NoArgsConstructor; @PowerNukkitOnly @Since("1.3.0.0-PN") +@NoArgsConstructor(onConstructor = @__(@PowerNukkitOnly)) public class PowerNukkitPlugin extends PluginBase { private static final PowerNukkitPlugin INSTANCE = new PowerNukkitPlugin(); @@ -14,31 +15,4 @@ public class PowerNukkitPlugin extends PluginBase { public static PowerNukkitPlugin getInstance() { return INSTANCE; } - - @Override - public void onEnable() { - getServer().getPluginManager().registerEvents(new HotFixes(), this); - } - - /** - * These are temporary workaround to issues with great impact that wasn't fixed the right way yet. - */ - private class HotFixes implements Listener { - /* - * Hotfix from MR.CLEAN: https://discordapp.com/channels/728280425255927879/728284727748067455/734488813774307329 - */ - /*@EventHandler - public void onOpenEC(InventoryOpenEvent e) { - if (!e.isCancelled() && e.getInventory() instanceof PlayerEnderChestInventory) { - final Player p = e.getPlayer(); - - Server.getInstance().getScheduler().scheduleDelayedTask(PowerNukkitPlugin.this, () -> { - if (p != null && p.isOnline() && p.getTopWindow().isPresent() && p.getTopWindow().get() instanceof PlayerEnderChestInventory) { - PlayerEnderChestInventory ec = (PlayerEnderChestInventory) p.getTopWindow().get(); - ec.sendContents(p); - } - }, 3); - } - }*/ - } } diff --git a/src/main/java/cn/nukkit/plugin/service/RegisteredServiceProvider.java b/src/main/java/cn/nukkit/plugin/service/RegisteredServiceProvider.java index 879e12323e7..b4d5d0d131b 100644 --- a/src/main/java/cn/nukkit/plugin/service/RegisteredServiceProvider.java +++ b/src/main/java/cn/nukkit/plugin/service/RegisteredServiceProvider.java @@ -67,6 +67,7 @@ public int hashCode() { return provider.hashCode(); } + @Override public int compareTo(RegisteredServiceProvider other) { return other.priority.ordinal() - priority.ordinal(); } diff --git a/src/main/java/cn/nukkit/positiontracking/NamedPosition.java b/src/main/java/cn/nukkit/positiontracking/NamedPosition.java index b40b5515c1d..50af725aedf 100644 --- a/src/main/java/cn/nukkit/positiontracking/NamedPosition.java +++ b/src/main/java/cn/nukkit/positiontracking/NamedPosition.java @@ -39,7 +39,8 @@ public NamedPosition(double x, double y, double z) { @Since("1.4.0.0-PN") @Nonnull public abstract String getLevelName(); - + + @PowerNukkitOnly public boolean matchesNamedPosition(NamedPosition position) { return x == position.x && y == position.y && z == position.z && getLevelName().equals(position.getLevelName()); } diff --git a/src/main/java/cn/nukkit/potion/Potion.java b/src/main/java/cn/nukkit/potion/Potion.java index 41f63637ad7..e6ace021d0c 100644 --- a/src/main/java/cn/nukkit/potion/Potion.java +++ b/src/main/java/cn/nukkit/potion/Potion.java @@ -1,6 +1,9 @@ package cn.nukkit.potion; import cn.nukkit.Player; +import cn.nukkit.api.DeprecationDetails; +import cn.nukkit.api.PowerNukkitDifference; +import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.entity.Entity; import cn.nukkit.entity.EntityLiving; @@ -9,10 +12,15 @@ import cn.nukkit.event.entity.EntityRegainHealthEvent; import cn.nukkit.event.potion.PotionApplyEvent; import cn.nukkit.utils.ServerException; +import lombok.EqualsAndHashCode; + +import javax.annotation.Nonnull; /** * @author MagicDroidX (Nukkit Project) */ +@PowerNukkitDifference(since = "1.6.0.0-PN", info = "Implements equals() and hashcode() only in PowerNukkit") +@EqualsAndHashCode public class Potion implements Cloneable { public static final int NO_EFFECTS = 0; @@ -58,8 +66,14 @@ public class Potion implements Cloneable { public static final int TURTLE_MASTER_II = 39; public static final int SLOW_FALLING = 40; public static final int SLOW_FALLING_LONG = 41; - @Since("1.4.0.0-PN") public static final int SLOWNESS_LONG_II = 42; - @Since("1.4.0.0-PN") public static final int SLOWNESS_IV = 43; + @Since("1.4.0.0-PN") @PowerNukkitOnly public static final int SLOWNESS_IV = 42; + + @Since("1.4.0.0-PN") + @Deprecated + @DeprecationDetails(since = "1.6.0.0-PN", by = "PowerNukkit", reason = + "Incorrect name, there is vanilla potion with slowness long 2, the result of potion with slowness 1 + glowstone is slowness 4", + replaceWith = "SLOWNESS_IV") + public static final int SLOWNESS_LONG_II = SLOWNESS_IV; protected static Potion[] potions; @@ -108,7 +122,6 @@ public static void init() { potions[Potion.TURTLE_MASTER_II] = new Potion(Potion.TURTLE_MASTER_II, 2); potions[Potion.SLOW_FALLING] = new Potion(Potion.SLOW_FALLING); potions[Potion.SLOW_FALLING_LONG] = new Potion(Potion.SLOW_FALLING_LONG); - potions[Potion.SLOWNESS_LONG_II] = new Potion(Potion.SLOWNESS_LONG_II, 2); potions[Potion.SLOWNESS_IV] = new Potion(Potion.SLOWNESS, 4); } @@ -397,7 +410,6 @@ public static int getApplySeconds(int potionType, boolean isSplash) { case NIGHT_VISION_LONG: case STRENGTH_LONG: case WATER_BREATHING_LONG: - case SPEED_II: case SPEED_LONG: case FIRE_RESISTANCE_LONG: case LEAPING_LONG: @@ -407,6 +419,7 @@ public static int getApplySeconds(int potionType, boolean isSplash) { case WEAKNESS: case STRENGTH_II: case SLOWNESS: + case SPEED_II: return 90; case SLOWNESS_LONG: case WEAKNESS_LONG: @@ -429,4 +442,137 @@ public static int getApplySeconds(int potionType, boolean isSplash) { } } } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + @Nonnull + public String getPotionTypeName() { + switch (getId()) { + case WATER: + return "Water"; + case MUNDANE: + case MUNDANE_II: + return "Mundane"; + case THICK: + return "Thick"; + case AWKWARD: + return "Awkward"; + case NIGHT_VISION_LONG: + case NIGHT_VISION: + return "Night Vision"; + case INVISIBLE: + case INVISIBLE_LONG: + return "Invisibility"; + case LEAPING_LONG: + case LEAPING_II: + case LEAPING: + return "Leaping"; + case FIRE_RESISTANCE_LONG: + case FIRE_RESISTANCE: + return "Fire Resistance"; + case SPEED: + case SPEED_LONG: + case SPEED_II: + return "Swiftness"; + case SLOWNESS_LONG: + case SLOWNESS: + case SLOWNESS_IV: + return "Slowness"; + case WATER_BREATHING_LONG: + case WATER_BREATHING: + return "Water Breathing"; + case INSTANT_HEALTH: + case INSTANT_HEALTH_II: + return "Healing"; + case HARMING: + case HARMING_II: + return "Harming"; + case POISON: + case POISON_LONG: + case POISON_II: + return "Poison"; + case REGENERATION: + case REGENERATION_LONG: + case REGENERATION_II: + return "Regeneration"; + case STRENGTH: + case STRENGTH_LONG: + case STRENGTH_II: + return "Strength"; + case WEAKNESS: + case WEAKNESS_LONG: + return "Weakness"; + case WITHER_II: + return "Decay"; + case TURTLE_MASTER: + case TURTLE_MASTER_LONG: + case TURTLE_MASTER_II: + return "Turtle Master"; + case SLOW_FALLING: + case SLOW_FALLING_LONG: + return "Slow Falling"; + default: + return ""; + } + } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + @Nonnull + public String getName() { + String name = getPotionTypeName(); + StringBuilder finalName = new StringBuilder(255).append("Potion"); + if (!name.isEmpty()) { + int id = getId(); + if (id >= TURTLE_MASTER && id <= TURTLE_MASTER_II) { + finalName.append(" of the ").append(name); + } else if (id <= AWKWARD) { + finalName.insert(0, name + " "); + } else { + finalName.append(" of ").append(name); + } + } + + int currentLevel = getLevel(); + if (currentLevel > 1) { + finalName.append(' '); + appendRoman(finalName, currentLevel); + } + return finalName.toString(); + } + + @PowerNukkitOnly + @Since("1.6.0.0-PN") + @Nonnull + public String getRomanLevel() { + int currentLevel = getLevel(); + if (currentLevel == 0) { + return "0"; + } + + StringBuilder sb = new StringBuilder(4); + if (currentLevel < 0) { + sb.append('-'); + currentLevel *= -1; + } + + appendRoman(sb, currentLevel); + return sb.toString(); + } + + private static void appendRoman(StringBuilder sb, int num) { + int times; + String[] romans = new String[] { "I", "IV", "V", "IX", "X", "XL", "L", + "XC", "C", "CD", "D", "CM", "M" }; + int[] ints = new int[] { 1, 4, 5, 9, 10, 40, 50, 90, 100, 400, 500, + 900, 1000 }; + for (int i = ints.length - 1; i >= 0; i--) { + times = num / ints[i]; + num %= ints[i]; + while (times > 0) { + sb.append(romans[i]); + times--; + } + } + } } diff --git a/src/main/java/cn/nukkit/resourcepacks/ResourcePackManager.java b/src/main/java/cn/nukkit/resourcepacks/ResourcePackManager.java index f1be64e54d3..d5282e8b1f5 100644 --- a/src/main/java/cn/nukkit/resourcepacks/ResourcePackManager.java +++ b/src/main/java/cn/nukkit/resourcepacks/ResourcePackManager.java @@ -1,7 +1,11 @@ package cn.nukkit.resourcepacks; import cn.nukkit.Server; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; + import com.google.common.io.Files; + import lombok.extern.log4j.Log4j2; import java.io.File; @@ -9,6 +13,9 @@ @Log4j2 public class ResourcePackManager { + + private int maxChunkSize = 102400; + private final Map resourcePacksById = new HashMap<>(); private ResourcePack[] resourcePacks; @@ -59,4 +66,16 @@ public ResourcePack[] getResourceStack() { public ResourcePack getPackById(UUID id) { return this.resourcePacksById.get(id); } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public int getMaxChunkSize() { + return this.maxChunkSize; + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void setMaxChunkSize(int size) { + this.maxChunkSize = size; + } } diff --git a/src/main/java/cn/nukkit/scheduler/AsyncTask.java b/src/main/java/cn/nukkit/scheduler/AsyncTask.java index 3c05aa3547d..a22141d3af6 100644 --- a/src/main/java/cn/nukkit/scheduler/AsyncTask.java +++ b/src/main/java/cn/nukkit/scheduler/AsyncTask.java @@ -20,6 +20,7 @@ public abstract class AsyncTask implements Runnable { private int taskId; private boolean finished = false; + @Override public void run() { this.result = null; this.onRun(); diff --git a/src/main/java/cn/nukkit/scheduler/AsyncWorker.java b/src/main/java/cn/nukkit/scheduler/AsyncWorker.java index 2b44070f09c..47ecff7fd4b 100644 --- a/src/main/java/cn/nukkit/scheduler/AsyncWorker.java +++ b/src/main/java/cn/nukkit/scheduler/AsyncWorker.java @@ -32,6 +32,7 @@ public void unstack(AsyncTask task) { } } + @Override public void run() { while (true) { synchronized (stack) { diff --git a/src/main/java/cn/nukkit/utils/BinaryStream.java b/src/main/java/cn/nukkit/utils/BinaryStream.java index a0437fcdbb2..02f2c192058 100644 --- a/src/main/java/cn/nukkit/utils/BinaryStream.java +++ b/src/main/java/cn/nukkit/utils/BinaryStream.java @@ -3,12 +3,11 @@ import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; import cn.nukkit.block.Block; +import cn.nukkit.blockstate.BlockState; +import cn.nukkit.blockstate.BlockStateRegistry; import cn.nukkit.entity.Attribute; import cn.nukkit.entity.data.Skin; -import cn.nukkit.item.Item; -import cn.nukkit.item.ItemDurable; -import cn.nukkit.item.ItemID; -import cn.nukkit.item.RuntimeItems; +import cn.nukkit.item.*; import cn.nukkit.level.GameRule; import cn.nukkit.level.GameRules; import cn.nukkit.math.BlockFace; @@ -26,6 +25,8 @@ import io.netty.buffer.ByteBufAllocator; import io.netty.util.internal.EmptyArrays; import lombok.SneakyThrows; +import lombok.extern.log4j.Log4j2; +import lombok.val; import java.io.ByteArrayInputStream; import java.io.IOException; @@ -33,13 +34,17 @@ import java.nio.ByteOrder; import java.nio.charset.StandardCharsets; import java.util.*; +import java.util.function.Consumer; import java.util.function.Function; /** * @author MagicDroidX (Nukkit Project) */ +@Log4j2 public class BinaryStream { + private static final int FALLBACK_ID = 248; + public int offset; private byte[] buffer; private int count; @@ -286,10 +291,8 @@ public void putSkin(Skin skin) { this.putImage(skin.getCapeData()); this.putString(skin.getGeometryData()); + this.putString(skin.getGeometryDataEngineVersion()); this.putString(skin.getAnimationData()); - this.putBoolean(skin.isPremium()); - this.putBoolean(skin.isPersona()); - this.putBoolean(skin.isCapeOnClassic()); this.putString(skin.getCapeId()); this.putString(skin.getFullSkinId()); this.putString(skin.getArmSize()); @@ -314,6 +317,11 @@ public void putSkin(Skin skin) { this.putString(color); } } + + this.putBoolean(skin.isPremium()); + this.putBoolean(skin.isPersona()); + this.putBoolean(skin.isCapeOnClassic()); + this.putBoolean(skin.isPrimaryUser()); } public Skin getSkin() { @@ -334,10 +342,8 @@ public Skin getSkin() { skin.setCapeData(this.getImage()); skin.setGeometryData(this.getString()); + skin.setGeometryDataEngineVersion(this.getString()); skin.setAnimationData(this.getString()); - skin.setPremium(this.getBoolean()); - skin.setPersona(this.getBoolean()); - skin.setCapeOnClassic(this.getBoolean()); skin.setCapeId(this.getString()); this.getString(); // TODO: Full skin id skin.setArmSize(this.getString()); @@ -363,6 +369,11 @@ public Skin getSkin() { } skin.getTintColors().add(new PersonaPieceTint(pieceType, colors)); } + + skin.setPremium(this.getBoolean()); + skin.setPersona(this.getBoolean()); + skin.setCapeOnClassic(this.getBoolean()); + skin.setPrimaryUser(this.getBoolean()); return skin; } @@ -400,7 +411,13 @@ public Item getSlot() { getVarInt(); // netId } - getVarInt(); // blockRuntimeId + int blockRuntimeId = getVarInt(); + if (id <= 255 && id != FALLBACK_ID) { + BlockState blockStateByRuntimeId = BlockStateRegistry.getBlockStateByRuntimeId(blockRuntimeId); + if (blockStateByRuntimeId != null) { + damage = blockStateByRuntimeId.asItemBlock().getDamage(); + } + } byte[] bytes = getByteArray(); ByteBuf buf = AbstractByteBufAllocator.DEFAULT.ioBuffer(bytes.length); @@ -424,7 +441,9 @@ public Item getSlot() { if (compoundTag != null && compoundTag.getAllTags().size() > 0) { if (compoundTag.contains("Damage")) { - damage = compoundTag.getInt("Damage"); + if (id > 255) { + damage = compoundTag.getInt("Damage"); + } compoundTag.remove("Damage"); } if (compoundTag.contains("__DamageConflict__")) { @@ -454,7 +473,7 @@ public Item getSlot() { buf.release(); } - Item item = Item.get(id, damage, count, nbt); + Item item = readUnknownItem(Item.get(id, damage, count, nbt)); if (canBreak.length > 0 || canPlace.length > 0) { CompoundTag namedTag = item.getNamedTag(); @@ -484,6 +503,68 @@ public Item getSlot() { return item; } + private Item readUnknownItem(Item item) { + if (item.getId() != FALLBACK_ID || !item.hasCompoundTag()) { + return item; + } + + CompoundTag tag = item.getNamedTag(); + if (!tag.containsCompound("PowerNukkitUnknown")) { + return item; + } + + CompoundTag pnTag = tag.getCompound("PowerNukkitUnknown"); + int itemId = pnTag.getInt("OriginalItemId"); + int meta = pnTag.getInt("OriginalMeta"); + boolean hasCustomName = pnTag.getBoolean("HasCustomName"); + boolean hasCompound = pnTag.getBoolean("HasCompound"); + boolean hasDisplayTag = pnTag.getBoolean("HasDisplayTag"); + String customName = pnTag.getString("OriginalCustomName"); + + item = Item.get(itemId, meta, item.getCount()); + if (hasCompound) { + tag.remove("PowerNukkitUnknown"); + if (!hasDisplayTag) { + tag.remove("display"); + } else if (tag.containsCompound("display")) { + if (!hasCustomName) { + tag.getCompound("display").remove("Name"); + } else { + tag.getCompound("display").putString("Name", customName); + } + } + item.setNamedTag(tag); + } + + return item; + } + + private Item createFakeUnknownItem(Item item) { + boolean hasCompound = item.hasCompoundTag(); + Item fallback = Item.getBlock(FALLBACK_ID, 0, item.getCount()); + CompoundTag tag = item.getNamedTag(); + if (tag == null) { + tag = new CompoundTag(); + } + tag.putCompound("PowerNukkitUnknown", new CompoundTag() + .putInt("OriginalItemId", item.getId()) + .putInt("OriginalMeta", item.getDamage()) + .putBoolean("HasCustomName", item.hasCustomName()) + .putBoolean("HasDisplayTag", tag.contains("display")) + .putBoolean("HasCompound", hasCompound) + .putString("OriginalCustomName", item.getCustomName())); + + fallback.setNamedTag(tag); + String suffix = "" + TextFormat.RESET + TextFormat.GRAY + TextFormat.ITALIC + + " (" + item.getId() + ":" + item.getDamage() + ")"; + if (fallback.hasCustomName()) { + fallback.setCustomName(fallback.getCustomName() + suffix); + } else { + fallback.setCustomName(TextFormat.RESET + "" + TextFormat.BOLD + TextFormat.RED + "Unknown" + suffix); + } + return fallback; + } + public void putSlot(Item item) { this.putSlot(item, false); } @@ -495,7 +576,14 @@ public void putSlot(Item item, boolean instanceItem) { return; } - int networkFullId = RuntimeItems.getRuntimeMapping().getNetworkFullId(item); + int networkFullId; + try { + networkFullId = RuntimeItems.getRuntimeMapping().getNetworkFullId(item); + } catch (IllegalArgumentException e) { + log.trace(e); + item = createFakeUnknownItem(item); + networkFullId = RuntimeItems.getRuntimeMapping().getNetworkFullId(item); + } int networkId = RuntimeItems.getNetworkId(networkFullId); putVarInt(networkId); @@ -511,7 +599,7 @@ public void putSlot(Item item, boolean instanceItem) { if (!instanceItem) { putBoolean(true); // hasNetId - putVarInt(0); // netId + putVarInt(1); // netId } Block block = item.getBlockUnsafe(); @@ -725,7 +813,10 @@ public void putVector3f(float x, float y, float z) { } public void putGameRules(GameRules gameRules) { - Map rules = gameRules.getGameRules(); + // LinkedHashMap gives mutability and is faster in iteration + val rules = new LinkedHashMap<>(gameRules.getGameRules()); + rules.keySet().removeIf(GameRule::isDeprecated); + this.putUnsignedVarInt(rules.size()); rules.forEach((gameRule, value) -> { this.putString(gameRule.getName().toLowerCase()); @@ -789,6 +880,30 @@ public EntityLink getEntityLink() { ); } + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void putArray(Collection collection, Consumer writer) { + if (collection == null) { + putUnsignedVarInt(0); + return; + } + putUnsignedVarInt(collection.size()); + collection.forEach(writer); + } + + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public void putArray(T[] collection, Consumer writer) { + if (collection == null) { + putUnsignedVarInt(0); + return; + } + putUnsignedVarInt(collection.length); + for (T t : collection) { + writer.accept(t); + } + } + @SuppressWarnings("unchecked") public T[] getArray(Class clazz, Function function) { ArrayDeque deque = new ArrayDeque<>(); @@ -812,7 +927,7 @@ public CompoundTag getTag() { try { return NBTIO.read(is); } finally { - offset += is.available() - initial; + offset += initial - is.available(); } } diff --git a/src/main/java/cn/nukkit/utils/BlockColor.java b/src/main/java/cn/nukkit/utils/BlockColor.java index ec406c8fd6c..07069597df5 100644 --- a/src/main/java/cn/nukkit/utils/BlockColor.java +++ b/src/main/java/cn/nukkit/utils/BlockColor.java @@ -165,6 +165,12 @@ public int getRGB() { return (this.red << 16 | this.green << 8 | this.blue) & 0xffffff; } + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public int getARGB() { + return this.alpha << 24 | this.red << 16 | this.green << 8 | this.blue; + } + @Deprecated public static BlockColor getDyeColor(int dyeColorMeta) { return DyeColor.getByDyeData(dyeColorMeta).getColor(); diff --git a/src/main/java/cn/nukkit/utils/BossBarColor.java b/src/main/java/cn/nukkit/utils/BossBarColor.java new file mode 100644 index 00000000000..1e2a2b1a636 --- /dev/null +++ b/src/main/java/cn/nukkit/utils/BossBarColor.java @@ -0,0 +1,19 @@ +package cn.nukkit.utils; + +import cn.nukkit.api.Since; + +/** + * @author Kevims + */ +@Since("1.6.0.0-PN") +public enum BossBarColor { + + @Since("1.6.0.0-PN") PINK, + @Since("1.6.0.0-PN") BLUE, + @Since("1.6.0.0-PN") RED, + @Since("1.6.0.0-PN") GREEN, + @Since("1.6.0.0-PN") YELLOW, + @Since("1.6.0.0-PN") PURPLE, + @Since("1.6.0.0-PN") WHITE + +} diff --git a/src/main/java/cn/nukkit/utils/ClientChainData.java b/src/main/java/cn/nukkit/utils/ClientChainData.java index d43be8c1c76..62b02f604e5 100644 --- a/src/main/java/cn/nukkit/utils/ClientChainData.java +++ b/src/main/java/cn/nukkit/utils/ClientChainData.java @@ -6,14 +6,14 @@ import com.google.gson.reflect.TypeToken; import com.nimbusds.jose.JOSEException; import com.nimbusds.jose.JWSObject; -import com.nimbusds.jose.JWSVerifier; -import com.nimbusds.jose.crypto.factories.DefaultJWSVerifierFactory; -import net.minidev.json.JSONObject; +import com.nimbusds.jose.crypto.ECDSAVerifier; +import java.net.URI; import java.nio.charset.StandardCharsets; import java.security.KeyFactory; import java.security.NoSuchAlgorithmException; import java.security.PublicKey; +import java.security.interfaces.ECPublicKey; import java.security.spec.InvalidKeySpecException; import java.security.spec.X509EncodedKeySpec; import java.util.*; @@ -163,9 +163,10 @@ public int hashCode() { private UUID clientUUID; private String xuid; - private static PublicKey generateKey(String base64) throws NoSuchAlgorithmException, InvalidKeySpecException { - return KeyFactory.getInstance("EC").generatePublic(new X509EncodedKeySpec(Base64.getDecoder().decode(base64))); + private static ECPublicKey generateKey(String base64) throws NoSuchAlgorithmException, InvalidKeySpecException { + return (ECPublicKey) KeyFactory.getInstance("EC").generatePublic(new X509EncodedKeySpec(Base64.getDecoder().decode(base64))); } + private String identityPublicKey; private long clientId; @@ -258,35 +259,48 @@ private void decodeChainData() { } private boolean verifyChain(List chains) throws Exception { - - PublicKey lastKey = null; + ECPublicKey lastKey = null; boolean mojangKeyVerified = false; - for (String chain: chains) { - JWSObject jws = JWSObject.parse(chain); + Iterator iterator = chains.iterator(); + while (iterator.hasNext()) { + JWSObject jws = JWSObject.parse(iterator.next()); + + URI x5u = jws.getHeader().getX509CertURL(); + if (x5u == null) { + return false; + } + + ECPublicKey expectedKey = generateKey(x5u.toString()); + // First key is self-signed + if (lastKey == null) { + lastKey = expectedKey; + } else if (!lastKey.equals(expectedKey)) { + return false; + } + + if (!verify(lastKey, jws)) { + return false; + } - if (!mojangKeyVerified) { - // First chain should be signed using Mojang's private key. We'd be in big trouble if it leaked... - mojangKeyVerified = verify(MOJANG_PUBLIC_KEY, jws); + if (mojangKeyVerified) { + return !iterator.hasNext(); } - if (lastKey != null) { - if (!verify(lastKey, jws)) { - throw new JOSEException("Unable to verify key in chain."); - } + if (lastKey.equals(MOJANG_PUBLIC_KEY)) { + mojangKeyVerified = true; } - JSONObject payload = jws.getPayload().toJSONObject(); - String base64key = payload.getAsString("identityPublicKey"); - if (base64key == null) { + Map payload = jws.getPayload().toJSONObject(); + Object base64key = payload.get("identityPublicKey"); + if (!(base64key instanceof String)) { throw new RuntimeException("No key found"); } - lastKey = generateKey(base64key); + lastKey = generateKey((String) base64key); } return mojangKeyVerified; } - private boolean verify(PublicKey key, JWSObject object) throws JOSEException { - JWSVerifier verifier = new DefaultJWSVerifierFactory().createJWSVerifier(object.getHeader(), key); - return object.verify(verifier); + private boolean verify(ECPublicKey key, JWSObject object) throws JOSEException { + return object.verify(new ECDSAVerifier(key)); } } diff --git a/src/main/java/cn/nukkit/utils/Config.java b/src/main/java/cn/nukkit/utils/Config.java index 166d06b8bd5..5f767943980 100644 --- a/src/main/java/cn/nukkit/utils/Config.java +++ b/src/main/java/cn/nukkit/utils/Config.java @@ -1,6 +1,8 @@ package cn.nukkit.utils; import cn.nukkit.Server; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.scheduler.FileWriteTask; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -9,6 +11,8 @@ import org.yaml.snakeyaml.DumperOptions; import org.yaml.snakeyaml.Yaml; +import javax.annotation.Nonnull; +import javax.annotation.Nullable; import java.io.File; import java.io.IOException; import java.io.InputStream; @@ -184,6 +188,23 @@ public boolean load(InputStream inputStream) { return correct; } + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public boolean loadAsJson(@Nullable InputStream inputStream, @Nonnull Gson gson) { + if (inputStream == null) return false; + if (this.correct) { + String content; + try { + content = Utils.readFile(inputStream); + } catch (IOException e) { + log.error("An error occurred while loading a config from an input stream, input: {}", inputStream, e); + return false; + } + this.parseContentAsJson(content, gson); + } + return correct; + } + public boolean check() { return this.correct; } @@ -209,10 +230,27 @@ public boolean save(File file) { return save(); } + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public boolean saveAsJson(@Nonnull File file, boolean async, @Nonnull Gson gson) { + this.file = file; + return saveAsJson(async, gson); + } + public boolean save() { return this.save(false); } + @PowerNukkitOnly + @Since("1.5.2.0-PN") + public boolean saveAsJson(boolean async, @Nonnull Gson gson) { + if (!this.correct) { + return false; + } + save0(async, new StringBuilder(gson.toJson(this.config)).append('\n')); + return true; + } + public boolean save(Boolean async) { if (this.file == null) throw new IllegalStateException("Failed to save Config. File object is undefined."); if (this.correct) { @@ -237,22 +275,25 @@ public boolean save(Boolean async) { } break; } - if (async) { - Server.getInstance().getScheduler().scheduleAsyncTask(new FileWriteTask(this.file, content.toString())); - - } else { - try { - Utils.writeFile(this.file, content.toString()); - } catch (IOException e) { - log.error("Failed to save the config file {}", file, e); - } - } + save0(async, content); return true; } else { return false; } } + private void save0(boolean async, StringBuilder content) { + if (async) { + Server.getInstance().getScheduler().scheduleAsyncTask(new FileWriteTask(this.file, content.toString())); + } else { + try { + Utils.writeFile(this.file, content.toString()); + } catch (IOException e) { + log.error("Failed to save the config file {}", file, e); + } + } + } + public void set(final String key, Object value) { this.config.set(key, value); } @@ -535,6 +576,16 @@ public void removeNested(String key) { remove(key); } + private void parseContentAsJson(String content, Gson gson) { + try { + this.config = new ConfigSection(gson.fromJson(content, new TypeToken>() { + }.getType())); + } catch (Exception e) { + log.warn("Failed to parse the config file {}", file, e); + throw e; + } + } + private void parseContent(String content) { try { switch (this.type) { diff --git a/src/main/java/cn/nukkit/utils/DummyBossBar.java b/src/main/java/cn/nukkit/utils/DummyBossBar.java index 2b9b2c27faf..10a4a5da1ce 100644 --- a/src/main/java/cn/nukkit/utils/DummyBossBar.java +++ b/src/main/java/cn/nukkit/utils/DummyBossBar.java @@ -1,12 +1,14 @@ package cn.nukkit.utils; import cn.nukkit.Player; +import cn.nukkit.api.Since; import cn.nukkit.entity.Attribute; import cn.nukkit.entity.Entity; import cn.nukkit.entity.data.EntityMetadata; import cn.nukkit.entity.mob.EntityCreeper; import cn.nukkit.network.protocol.*; +import javax.annotation.Nullable; import java.util.concurrent.ThreadLocalRandom; /** @@ -19,7 +21,7 @@ public class DummyBossBar { private String text; private float length; - private BlockColor color; + private BossBarColor color; private DummyBossBar(Builder builder) { this.player = builder.player; @@ -35,7 +37,7 @@ public static class Builder { private String text = ""; private float length = 100; - private BlockColor color = null; + private BossBarColor color = null; public Builder(Player player) { this.player = player; @@ -52,15 +54,12 @@ public Builder length(float length) { return this; } - public Builder color(BlockColor color) { + @Since("1.6.0.0-PN") + public Builder color(BossBarColor color) { this.color = color; return this; } - public Builder color(int red, int green, int blue) { - return color(new BlockColor(red, green, blue)); - } - public DummyBossBar build() { return new DummyBossBar(this); } @@ -98,26 +97,18 @@ public void setLength(float length) { } } - /** - * Color is not working in the current version. We are keep waiting for client support. - * @param color the boss bar color - */ - public void setColor(BlockColor color) { - if (this.color == null || !this.color.equals(color)) { + @Since("1.6.0.0-PN") + public void setColor(@Nullable BossBarColor color) { + final BossBarColor currentColor = this.color; + if (currentColor == null || !currentColor.equals(color)) { this.color = color; this.sendSetBossBarTexture(); } } - public void setColor(int red, int green, int blue) { - this.setColor(new BlockColor(red, green, blue)); - } - - public int getMixedColor() { - return this.color.getRGB();//(this.color.getRed() << 16 | this.color.getGreen() << 8 | this.color.getBlue()) & 0xffffff; - } - - public BlockColor getColor() { + @Since("1.6.0.0-PN") + @Nullable + public BossBarColor getColor() { return this.color; } @@ -174,7 +165,7 @@ private void sendSetBossBarTexture() { BossEventPacket pk = new BossEventPacket(); pk.bossEid = this.bossBarId; pk.type = BossEventPacket.TYPE_TEXTURE; - pk.color = this.getMixedColor(); + pk.color = color != null? color.ordinal() : 0; player.dataPacket(pk); } diff --git a/src/main/java/cn/nukkit/utils/DyeColor.java b/src/main/java/cn/nukkit/utils/DyeColor.java index 51cef26c47f..a36bc75f767 100644 --- a/src/main/java/cn/nukkit/utils/DyeColor.java +++ b/src/main/java/cn/nukkit/utils/DyeColor.java @@ -10,9 +10,9 @@ public enum DyeColor { - BLACK(0, 15, 16, "Black", "Ink Sack", BlockColor.BLACK_BLOCK_COLOR, new BlockColor(0x1D1D21)), - RED(1, 14, 1, "Red", "Rose Red", BlockColor.RED_BLOCK_COLOR, new BlockColor(0xB02E26)), - GREEN(2, 13, 2, "Green", "Cactus Green", BlockColor.GREEN_BLOCK_COLOR, new BlockColor(0x5E7C16)), + BLACK(0, 15, 16, "Black", "Ink Sac", BlockColor.BLACK_BLOCK_COLOR, new BlockColor(0x1D1D21)), + RED(1, 14, 1, "Red", "Red Dye", BlockColor.RED_BLOCK_COLOR, new BlockColor(0xB02E26)), + GREEN(2, 13, 2, "Green", "Green Dye", BlockColor.GREEN_BLOCK_COLOR, new BlockColor(0x5E7C16)), BROWN(3, 12, 17, "Brown", "Cocoa Beans", BlockColor.BROWN_BLOCK_COLOR, new BlockColor(0x835432)), BLUE(4, 11, 18, "Blue", "Lapis Lazuli", BlockColor.BLUE_BLOCK_COLOR, new BlockColor(0x3C44AA)), PURPLE(5, 10, 5, "Purple", BlockColor.PURPLE_BLOCK_COLOR, new BlockColor(0x8932B8)), @@ -21,7 +21,7 @@ public enum DyeColor { GRAY(8, 7, 8, "Gray", BlockColor.GRAY_BLOCK_COLOR, new BlockColor(0x474F52)), PINK(9, 6, 9, "Pink", BlockColor.PINK_BLOCK_COLOR, new BlockColor(0xF38BAA)), LIME(10, 5, 10, "Lime", BlockColor.LIME_BLOCK_COLOR, new BlockColor(0x80C71F)), - YELLOW(11, 4, 11, "Yellow", "Dandelion Yellow", BlockColor.YELLOW_BLOCK_COLOR, new BlockColor(0xFED83D)), + YELLOW(11, 4, 11, "Yellow", "Yellow Dye", BlockColor.YELLOW_BLOCK_COLOR, new BlockColor(0xFED83D)), LIGHT_BLUE(12, 3, 12, "Light Blue", BlockColor.LIGHT_BLUE_BLOCK_COLOR, new BlockColor(0x3AB3DA)), MAGENTA(13, 2, 13, "Magenta", BlockColor.MAGENTA_BLOCK_COLOR, new BlockColor(0xC74EBD)), ORANGE(14, 1, 14, "Orange", BlockColor.ORANGE_BLOCK_COLOR, new BlockColor(0xFF9801)), diff --git a/src/main/java/cn/nukkit/utils/Hash.java b/src/main/java/cn/nukkit/utils/Hash.java index e7d43dc4c25..897d028a680 100644 --- a/src/main/java/cn/nukkit/utils/Hash.java +++ b/src/main/java/cn/nukkit/utils/Hash.java @@ -1,5 +1,7 @@ package cn.nukkit.utils; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.math.Vector3; public class Hash { @@ -20,9 +22,8 @@ public static final int hashBlockZ(long triple) { return (int) ((((triple >> 34) & 0x3FFFFFF) << 38) >> 38); } - /** - * @since 1.2.1.0-PN - */ + @PowerNukkitOnly + @Since("1.2.1.0-PN") public static long hashBlock(Vector3 blockPos) { return hashBlock(blockPos.getFloorX(), blockPos.getFloorY(), blockPos.getFloorZ()); } diff --git a/src/main/java/cn/nukkit/utils/HumanStringComparator.java b/src/main/java/cn/nukkit/utils/HumanStringComparator.java index e24ec736f35..4a6a1bcbbcb 100644 --- a/src/main/java/cn/nukkit/utils/HumanStringComparator.java +++ b/src/main/java/cn/nukkit/utils/HumanStringComparator.java @@ -2,35 +2,224 @@ import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; +import lombok.NoArgsConstructor; +import javax.annotation.Nonnull; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; +import java.util.List; @PowerNukkitOnly @Since("1.4.0.0-PN") +@NoArgsConstructor(onConstructor = @__(@PowerNukkitOnly)) public class HumanStringComparator implements Comparator { private static final HumanStringComparator INSTANCE = new HumanStringComparator(); + private static final int LEFT = -1; + private static final int RIGHT = 1; + private static final int EQUALS = 0; + private static final String SYMBOLS = "[:.;,/\\]{}|="; @Override public int compare(String o1, String o2) { + if (o1.equals(o2)) { + return EQUALS; + } + + List l1 = splitSymbols(combineNegativeSign(split(o1))); + List l2 = splitSymbols(combineNegativeSign(split(o2))); + + return compare(l1, l2); + } + + private List splitSymbols(List list) { + boolean changed = false; + List result = list; + int size = list.size(); + for (int i = size - 1; i >= 0; i--) { + String str = result.get(i); + int length = str.length(); + int lastPart = length; + for (int j = length - 1; j >= 0; j--) { + char c = str.charAt(j); + if (SYMBOLS.indexOf(c) != -1) { + if (!changed) { + result = list instanceof ArrayList? list : new ArrayList<>(list); + changed = true; + } + int indexToAddLast; + if (j > 0) { + result.set(i, str.substring(0, j)); + result.add(i + 1, Character.toString(c)); + indexToAddLast = i + 2; + } else { + result.set(i, Character.toString(c)); + indexToAddLast = i + 1; + } + if (j + 2 <= length) { + result.add(indexToAddLast, str.substring(j + 1, lastPart)); + } + lastPart = j; + } + } + } + return result; + } + + private int compare(List l1, List l2) { + int len1 = l1.size(); + int len2 = l2.size(); + int minLen = Math.min(len1, len2); + for (int i = 0; i < minLen; i++) { + String str1 = l1.get(i); + String str2 = l2.get(i); + int strLen1 = str1.length(); + int strLen2 = str2.length(); + assert strLen1 > 0; + assert strLen2 > 0; + boolean isNum1 = Character.isDigit(str1.charAt(strLen1 - 1)); + boolean isNum2 = Character.isDigit(str2.charAt(strLen2 - 1)); + if (isNum1) { + if (isNum2) { + int i1 = Integer.parseInt(str1); + int i2 = Integer.parseInt(str2); + int result = Integer.compare(i1, i2); + if (result != EQUALS) { + return result; + } + // Number with higher 0 padding goes before + result = Integer.compare(strLen1, strLen2); + if (result != EQUALS) { + return result; + } + } else { + return RIGHT; + } + } else if (isNum2) { + return LEFT; + } else { + if (strLen1 == strLen2) { + int result = str1.compareTo(str2); + if (result != EQUALS) { + return result; + } + } else { + int minStrLen = Math.min(strLen1, strLen2); + String commonPart1 = str1.substring(0, minStrLen); + String commonPart2 = str2.substring(0, minStrLen); + int result = commonPart1.compareTo(commonPart2); + if (result != EQUALS) { + return result; + } + + // Detect omitted number + if (strLen1 < strLen2) { + if (detectOmittedNumber(l1, len1, i, str2, strLen2, minStrLen, commonPart1)) { + return RIGHT; + } + } else if (detectOmittedNumber(l2, len2, i, str1, strLen1, minStrLen, commonPart2)) { + return LEFT; + } + + return Integer.compare(strLen1, strLen2); + } + } + } - String o1StringPart = o1.replaceAll("\\d", ""); - String o2StringPart = o2.replaceAll("\\d", ""); + return Integer.compare(len1, len2); + } + + private boolean detectOmittedNumber(List l1, int len1, int i, String str2, int strLen2, int minStrLen, String commonPart1) { + String combined; + String comparingWith; + String next1 = len1 > i + 1? l1.get(i + 1) : null; + int nextLen1 = next1 == null? 0 : next1.length(); + boolean isDigit1 = next1 != null && Character.isDigit(next1.charAt(nextLen1 - 1)); + String afterNext1 = isDigit1 && len1 > i + 2? l1.get(i + 2) : null; + int afterNextLen1 = afterNext1 != null? afterNext1.length() : 0; + if (afterNextLen1 > 0) { + combined = commonPart1 + afterNext1.substring(0, Math.min(afterNextLen1, strLen2 - minStrLen)); + comparingWith = str2; + return combined.equals(comparingWith); + } + return false; + } + private List combineNegativeSign(List list) { + int size = list.size(); + if (size < 2) { + return list; + } - if (o1StringPart.equalsIgnoreCase(o2StringPart)) { - return extractInt(o1) - extractInt(o2); + for (int i = size - 1; i > 0; i--) { + String str1 = list.get(i); + int strLen1 = str1.length(); + if (strLen1 > 0 && Character.isDigit(str1.charAt(strLen1 - 1))) { + String str2 = list.get(i - 1); + int strLen2 = str2.length(); + if (strLen2 > 0 && str2.charAt(strLen2 - 1) == '-') { + list.set(i, "-" + str1); + if (strLen2 == 1) { + list.remove(i - 1); + i -= 2; + } else { + list.set(i - 1, str2.substring(0, strLen2 - 1)); + i--; + } + } + } } - return o1.compareTo(o2); + + return list; } - int extractInt(String s) { - String num = s.replaceAll("\\D", ""); - // return 0 if no digits found - try { - return num.isEmpty() ? 0 : Integer.parseInt(num); - } catch (NumberFormatException e) { - return 0; + @Nonnull + private List split(String str) { + int length = str.length(); + if (length == 0) { + return Collections.emptyList(); + } else if (length == 1) { + return Collections.singletonList(str); } + + List list = null; + boolean wasDigit = false; + int start = -1; + for (int i = 0; i < length; i++) { + if (Character.isDigit(str.charAt(i))) { + if (!wasDigit && start == -1) { + start = i; + wasDigit = true; + } else if (!wasDigit) { + if (list == null) { + list = new ArrayList<>(2); + } + list.add(str.substring(start, i)); + start = i; + wasDigit = true; + } + } else { + if (wasDigit) { + if (list == null) { + list = new ArrayList<>(2); + } + list.add(str.substring(start, i)); + start = i; + wasDigit = false; + } else if (start == -1) { + start = i; + } + } + } + + String substring = str.substring(start, length); + if (list == null) { + list = Collections.singletonList(substring); + } else { + list.add(substring); + } + + return list; } @PowerNukkitOnly diff --git a/src/main/java/cn/nukkit/utils/PersonaPiece.java b/src/main/java/cn/nukkit/utils/PersonaPiece.java index 7bd7bf372d2..edf324bcf96 100644 --- a/src/main/java/cn/nukkit/utils/PersonaPiece.java +++ b/src/main/java/cn/nukkit/utils/PersonaPiece.java @@ -1,8 +1,10 @@ package cn.nukkit.utils; +import lombok.EqualsAndHashCode; import lombok.ToString; @ToString +@EqualsAndHashCode public class PersonaPiece { public final String id; public final String type; diff --git a/src/main/java/cn/nukkit/utils/PersonaPieceTint.java b/src/main/java/cn/nukkit/utils/PersonaPieceTint.java index a24088c25a4..e44eedb8276 100644 --- a/src/main/java/cn/nukkit/utils/PersonaPieceTint.java +++ b/src/main/java/cn/nukkit/utils/PersonaPieceTint.java @@ -1,11 +1,13 @@ package cn.nukkit.utils; import com.google.common.collect.ImmutableList; +import lombok.EqualsAndHashCode; import lombok.ToString; import java.util.List; @ToString +@EqualsAndHashCode public class PersonaPieceTint { public final String pieceType; public final ImmutableList colors; diff --git a/src/main/java/cn/nukkit/utils/SerializedImage.java b/src/main/java/cn/nukkit/utils/SerializedImage.java index df96d48648a..d0f34e8e9c4 100644 --- a/src/main/java/cn/nukkit/utils/SerializedImage.java +++ b/src/main/java/cn/nukkit/utils/SerializedImage.java @@ -1,6 +1,7 @@ package cn.nukkit.utils; import io.netty.util.internal.EmptyArrays; +import lombok.EqualsAndHashCode; import lombok.ToString; import java.util.Objects; @@ -8,6 +9,7 @@ import static cn.nukkit.entity.data.Skin.*; @ToString(exclude = {"data"}) +@EqualsAndHashCode public class SerializedImage { public static final SerializedImage EMPTY = new SerializedImage(0, 0, EmptyArrays.EMPTY_BYTES); diff --git a/src/main/java/cn/nukkit/utils/SkinAnimation.java b/src/main/java/cn/nukkit/utils/SkinAnimation.java index b602b6b76dd..ba78e071eb9 100644 --- a/src/main/java/cn/nukkit/utils/SkinAnimation.java +++ b/src/main/java/cn/nukkit/utils/SkinAnimation.java @@ -3,9 +3,11 @@ import cn.nukkit.api.DeprecationDetails; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; +import lombok.EqualsAndHashCode; import lombok.ToString; @ToString +@EqualsAndHashCode public class SkinAnimation { public final SerializedImage image; public final int type; diff --git a/src/main/java/cn/nukkit/utils/TerracottaColor.java b/src/main/java/cn/nukkit/utils/TerracottaColor.java index 03800a599cd..94f004da8a7 100644 --- a/src/main/java/cn/nukkit/utils/TerracottaColor.java +++ b/src/main/java/cn/nukkit/utils/TerracottaColor.java @@ -2,7 +2,7 @@ public enum TerracottaColor { - BLACK(0, 15, "Black", "Ink Sack", BlockColor.BLACK_TERRACOTA_BLOCK_COLOR), + BLACK(0, 15, "Black", "Ink Sac", BlockColor.BLACK_TERRACOTA_BLOCK_COLOR), RED(1, 14, "Red", "Rose Red", BlockColor.RED_TERRACOTA_BLOCK_COLOR), GREEN(2, 13, "Green", "Cactus Green", BlockColor.GREEN_TERRACOTA_BLOCK_COLOR), BROWN(3, 12, "Brown", "Cocoa Beans", BlockColor.BROWN_TERRACOTA_BLOCK_COLOR), diff --git a/src/main/java/cn/nukkit/utils/Utils.java b/src/main/java/cn/nukkit/utils/Utils.java index 05695fb399b..19aeb906c7c 100644 --- a/src/main/java/cn/nukkit/utils/Utils.java +++ b/src/main/java/cn/nukkit/utils/Utils.java @@ -409,6 +409,7 @@ public static T dynamic(T value) { public static void zipFolder(Path sourceFolderPath, Path zipPath) throws IOException { try (ZipOutputStream zos = new ZipOutputStream(new FileOutputStream(zipPath.toFile()))) { Files.walkFileTree(sourceFolderPath, new SimpleFileVisitor() { + @Override public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException { zos.putNextEntry(new ZipEntry(sourceFolderPath.relativize(file).toString())); Files.copy(file, zos); @@ -418,4 +419,30 @@ public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IO }); } } + + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public static boolean isInteger(String str) { + if (str == null) { + return false; + } + int length = str.length(); + if (length == 0) { + return false; + } + int i = 0; + if (str.charAt(0) == '-') { + if (length == 1) { + return false; + } + i = 1; + } + for (; i < length; i++) { + char c = str.charAt(i); + if (c < '0' || c > '9') { + return false; + } + } + return true; + } } diff --git a/src/main/java/co/aikar/timings/TimingData.java b/src/main/java/co/aikar/timings/TimingData.java index 8757d6990cf..57f1ca3a4d2 100644 --- a/src/main/java/co/aikar/timings/TimingData.java +++ b/src/main/java/co/aikar/timings/TimingData.java @@ -76,6 +76,7 @@ void reset() { this.curTickTotal = 0; } + @Override protected TimingData clone() { return new TimingData(this); } diff --git a/src/main/java/co/aikar/timings/Timings.java b/src/main/java/co/aikar/timings/Timings.java index db545cae49d..d61d963a7f8 100644 --- a/src/main/java/co/aikar/timings/Timings.java +++ b/src/main/java/co/aikar/timings/Timings.java @@ -24,6 +24,8 @@ package co.aikar.timings; import cn.nukkit.Server; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; import cn.nukkit.blockentity.BlockEntity; import cn.nukkit.command.Command; import cn.nukkit.entity.Entity; @@ -133,6 +135,15 @@ public final class Timings { permissionDefaultTimer = TimingsManager.getTiming("Default Permission Calculation"); } + /** + * Initialize the static fields. + */ + @PowerNukkitOnly + @Since("1.5.1.0-PN") + public static void init() { + // code is already executed on + } + public static boolean isTimingsEnabled() { return timingsEnabled; } diff --git a/src/main/resources/biome_definitions.dat b/src/main/resources/biome_definitions.dat index 8fe3b95a585..f40feb22dfb 100644 Binary files a/src/main/resources/biome_definitions.dat and b/src/main/resources/biome_definitions.dat differ diff --git a/src/main/resources/biome_id_map.json b/src/main/resources/biome_id_map.json new file mode 100644 index 00000000000..2ea58ae9cd6 --- /dev/null +++ b/src/main/resources/biome_id_map.json @@ -0,0 +1,85 @@ +{ + "bamboo_jungle": 48, + "bamboo_jungle_hills": 49, + "basalt_deltas": 181, + "beach": 16, + "birch_forest": 27, + "birch_forest_hills": 28, + "birch_forest_hills_mutated": 156, + "birch_forest_mutated": 155, + "cold_beach": 26, + "cold_ocean": 44, + "cold_taiga": 30, + "cold_taiga_hills": 31, + "cold_taiga_mutated": 158, + "crimson_forest": 179, + "deep_cold_ocean": 45, + "deep_frozen_ocean": 47, + "deep_lukewarm_ocean": 43, + "deep_ocean": 24, + "deep_warm_ocean": 41, + "desert": 2, + "desert_hills": 17, + "desert_mutated": 130, + "dripstone_caves": 188, + "extreme_hills": 3, + "extreme_hills_edge": 20, + "extreme_hills_mutated": 131, + "extreme_hills_plus_trees": 34, + "extreme_hills_plus_trees_mutated": 162, + "flower_forest": 132, + "forest": 4, + "forest_hills": 18, + "frozen_ocean": 46, + "frozen_peaks": 183, + "frozen_river": 11, + "grove": 185, + "hell": 8, + "ice_mountains": 13, + "ice_plains": 12, + "ice_plains_spikes": 140, + "jagged_peaks": 182, + "jungle": 21, + "jungle_edge": 23, + "jungle_edge_mutated": 151, + "jungle_hills": 22, + "jungle_mutated": 149, + "legacy_frozen_ocean": 10, + "lukewarm_ocean": 42, + "lush_caves": 187, + "meadow": 186, + "mega_taiga": 32, + "mega_taiga_hills": 33, + "mesa": 37, + "mesa_bryce": 165, + "mesa_plateau": 39, + "mesa_plateau_mutated": 167, + "mesa_plateau_stone": 38, + "mesa_plateau_stone_mutated": 166, + "mushroom_island": 14, + "mushroom_island_shore": 15, + "ocean": 0, + "plains": 1, + "redwood_taiga_hills_mutated": 161, + "redwood_taiga_mutated": 160, + "river": 7, + "roofed_forest": 29, + "roofed_forest_mutated": 157, + "savanna": 35, + "savanna_mutated": 163, + "savanna_plateau": 36, + "savanna_plateau_mutated": 164, + "snowy_slopes": 184, + "soulsand_valley": 178, + "stone_beach": 25, + "stony_peaks": 189, + "sunflower_plains": 129, + "swampland": 6, + "swampland_mutated": 134, + "taiga": 5, + "taiga_hills": 19, + "taiga_mutated": 133, + "the_end": 9, + "warm_ocean": 40, + "warped_forest": 180 +} \ No newline at end of file diff --git a/src/main/resources/block_ids.csv b/src/main/resources/block_ids.csv index 42001c8d355..bcceaba9210 100644 --- a/src/main/resources/block_ids.csv +++ b/src/main/resources/block_ids.csv @@ -32,7 +32,7 @@ 31,minecraft:tallgrass 32,minecraft:deadbush 33,minecraft:piston -34,minecraft:pistonarmcollision +34,minecraft:piston_arm_collision 35,minecraft:wool 36,minecraft:element_0 37,minecraft:yellow_flower @@ -93,7 +93,7 @@ 92,minecraft:cake 93,minecraft:unpowered_repeater 94,minecraft:powered_repeater -95,minecraft:invisiblebedrock +95,minecraft:invisible_bedrock 96,minecraft:trapdoor 97,minecraft:monster_egg 98,minecraft:stonebrick @@ -130,7 +130,7 @@ 129,minecraft:emerald_ore 130,minecraft:ender_chest 131,minecraft:tripwire_hook -132,minecraft:tripwire +132,minecraft:trip_wire 133,minecraft:emerald_block 134,minecraft:spruce_stairs 135,minecraft:birch_stairs @@ -167,7 +167,7 @@ 166,minecraft:glow_stick 167,minecraft:iron_trapdoor 168,minecraft:prismarine -169,minecraft:sealantern +169,minecraft:sea_lantern 170,minecraft:hay_block 171,minecraft:carpet 172,minecraft:hardened_clay @@ -235,7 +235,7 @@ 234,minecraft:red_glazed_terracotta 235,minecraft:black_glazed_terracotta 236,minecraft:concrete -237,minecraft:concretepowder +237,minecraft:concrete_powder 238,minecraft:chemistry_table 239,minecraft:underwater_torch 240,minecraft:chorus_plant @@ -248,7 +248,7 @@ 247,minecraft:netherreactor 248,minecraft:info_update 249,minecraft:info_update2 -250,minecraft:movingblock +250,minecraft:moving_block 251,minecraft:observer 252,minecraft:structure_block 253,minecraft:hard_glass @@ -470,7 +470,7 @@ 469,minecraft:lit_blast_furnace 470,minecraft:light_block 471,minecraft:wither_rose -472,minecraft:stickypistonarmcollision +472,minecraft:sticky_piston_arm_collision 473,minecraft:bee_nest 474,minecraft:beehive 475,minecraft:honey_block @@ -665,39 +665,40 @@ 664,minecraft:cracked_deepslate_tiles 665,minecraft:cracked_deepslate_bricks 666,minecraft:glow_lichen -667, -668, -669, -670, -671, -672, -673, -674, -675, -676, -678, -679, -680, -681, -682, -683, -684, -685, -686, -687, -688, -689, -690, -691, -692, -693, -694, -695, -696, -697, -698, -699, -700, +667,minecraft:candle +668,minecraft:white_candle +669,minecraft:orange_candle +670,minecraft:magenta_candle +671,minecraft:light_blue_candle +672,minecraft:yellow_candle +673,minecraft:lime_candle +674,minecraft:pink_candle +675,minecraft:gray_candle +676,minecraft:light_gray_candle +677,minecraft:cyan_candle +678,minecraft:purple_candle +679,minecraft:blue_candle +680,minecraft:brown_candle +681,minecraft:green_candle +682,minecraft:red_candle +683,minecraft:black_candle +684,minecraft:candle_cake +685,minecraft:white_candle_cake +686,minecraft:orange_candle_cake +687,minecraft:magenta_candle_cake +688,minecraft:light_blue_candle_cake +689,minecraft:yellow_candle_cake +690,minecraft:lime_candle_cake +691,minecraft:pink_candle_cake +692,minecraft:gray_candle_cake +693,minecraft:light_gray_candle_cake +694,minecraft:cyan_candle_cake +695,minecraft:purple_candle_cake +696,minecraft:blue_candle_cake +697,minecraft:brown_candle_cake +698,minecraft:green_candle_cake +699,minecraft:red_candle_cake +700,minecraft:black_candle_cake 701,minecraft:waxed_oxidized_copper 702,minecraft:waxed_oxidized_cut_copper 703,minecraft:waxed_oxidized_cut_copper_stairs @@ -710,32 +711,32 @@ 710, 711, 712, -713, -714, -715, -716, +713,minecraft:sculk +714,minecraft:sculk_vein +715,minecraft:sculk_catalyst +716,minecraft:sculk_shrieker 717, 718, 719, -720, -721, +720,minecraft:client_request_placeholder_block +721,minecraft:reinforced_deepslate 722, -723, -724, -725, -726, -727, -728, -729, -730, -731, -732, -733, +723,minecraft:frog_spawn +724,minecraft:pearlescent_froglight +725,minecraft:verdant_froglight +726,minecraft:ochre_froglight +727,minecraft:mangrove_leaves +728,minecraft:mud +729,minecraft:mangrove_propagule +730,minecraft:mud_bricks +731,minecraft:mangrove_propagule_hanging +732,minecraft:packed_mud +733,minecraft:mud_brick_slab +734,minecraft:mud_brick_double_slab 734, 734, -734, -735, -736, +735,minecraft:mud_brick_stairs +736,minecraft:mud_brick_wall 737, 738, 739, diff --git a/src/main/resources/canonical_block_states.nbt b/src/main/resources/canonical_block_states.nbt index 0702c05ae39..2cb1ff71059 100644 Binary files a/src/main/resources/canonical_block_states.nbt and b/src/main/resources/canonical_block_states.nbt differ diff --git a/src/main/resources/command_default.json b/src/main/resources/command_default.json deleted file mode 100644 index 99f67e9c6f8..00000000000 --- a/src/main/resources/command_default.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "aliases": [], - "description": "insert_description_here", - "overloads": { - "default": { - "input": { - "parameters": [ - { - "name": "args", - "type": "rawtext", - "optional": true - } - ] - }, - "output": {} - } - }, - "permission": "any" -} \ No newline at end of file diff --git a/src/main/resources/creative_items.json b/src/main/resources/creative_items.json new file mode 100644 index 00000000000..3cfb5cfc1c8 --- /dev/null +++ b/src/main/resources/creative_items.json @@ -0,0 +1,5209 @@ +{ + "items" : [ + { + "id" : "minecraft:planks", + "blockRuntimeId" : 5995 + }, + { + "id" : "minecraft:planks", + "blockRuntimeId" : 5996 + }, + { + "id" : "minecraft:planks", + "blockRuntimeId" : 5997 + }, + { + "id" : "minecraft:planks", + "blockRuntimeId" : 5998 + }, + { + "id" : "minecraft:planks", + "blockRuntimeId" : 5999 + }, + { + "id" : "minecraft:planks", + "blockRuntimeId" : 6000 + }, + { + "id" : "minecraft:crimson_planks", + "blockRuntimeId" : 4806 + }, + { + "id" : "minecraft:warped_planks", + "blockRuntimeId" : 928 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1187 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1188 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1189 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1190 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1191 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1192 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1199 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1194 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1195 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1193 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1196 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1200 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1197 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1198 + }, + { + "id" : "minecraft:blackstone_wall", + "blockRuntimeId" : 3919 + }, + { + "id" : "minecraft:polished_blackstone_wall", + "blockRuntimeId" : 6640 + }, + { + "id" : "minecraft:polished_blackstone_brick_wall", + "blockRuntimeId" : 978 + }, + { + "id" : "minecraft:cobbled_deepslate_wall", + "blockRuntimeId" : 8024 + }, + { + "id" : "minecraft:deepslate_tile_wall", + "blockRuntimeId" : 5027 + }, + { + "id" : "minecraft:polished_deepslate_wall", + "blockRuntimeId" : 7759 + }, + { + "id" : "minecraft:deepslate_brick_wall", + "blockRuntimeId" : 437 + }, + { + "id" : "minecraft:fence", + "blockRuntimeId" : 7306 + }, + { + "id" : "minecraft:fence", + "blockRuntimeId" : 7307 + }, + { + "id" : "minecraft:fence", + "blockRuntimeId" : 7308 + }, + { + "id" : "minecraft:fence", + "blockRuntimeId" : 7309 + }, + { + "id" : "minecraft:fence", + "blockRuntimeId" : 7310 + }, + { + "id" : "minecraft:fence", + "blockRuntimeId" : 7311 + }, + { + "id" : "minecraft:nether_brick_fence", + "blockRuntimeId" : 4238 + }, + { + "id" : "minecraft:crimson_fence", + "blockRuntimeId" : 7938 + }, + { + "id" : "minecraft:warped_fence", + "blockRuntimeId" : 5777 + }, + { + "id" : "minecraft:fence_gate", + "blockRuntimeId" : 76 + }, + { + "id" : "minecraft:spruce_fence_gate", + "blockRuntimeId" : 6475 + }, + { + "id" : "minecraft:birch_fence_gate", + "blockRuntimeId" : 3782 + }, + { + "id" : "minecraft:jungle_fence_gate", + "blockRuntimeId" : 5315 + }, + { + "id" : "minecraft:acacia_fence_gate", + "blockRuntimeId" : 7528 + }, + { + "id" : "minecraft:dark_oak_fence_gate", + "blockRuntimeId" : 4156 + }, + { + "id" : "minecraft:crimson_fence_gate", + "blockRuntimeId" : 4617 + }, + { + "id" : "minecraft:warped_fence_gate", + "blockRuntimeId" : 5349 + }, + { + "id" : "minecraft:normal_stone_stairs", + "blockRuntimeId" : 641 + }, + { + "id" : "minecraft:stone_stairs", + "blockRuntimeId" : 3713 + }, + { + "id" : "minecraft:mossy_cobblestone_stairs", + "blockRuntimeId" : 4081 + }, + { + "id" : "minecraft:oak_stairs", + "blockRuntimeId" : 287 + }, + { + "id" : "minecraft:spruce_stairs", + "blockRuntimeId" : 128 + }, + { + "id" : "minecraft:birch_stairs", + "blockRuntimeId" : 6957 + }, + { + "id" : "minecraft:jungle_stairs", + "blockRuntimeId" : 6883 + }, + { + "id" : "minecraft:acacia_stairs", + "blockRuntimeId" : 6123 + }, + { + "id" : "minecraft:dark_oak_stairs", + "blockRuntimeId" : 5019 + }, + { + "id" : "minecraft:stone_brick_stairs", + "blockRuntimeId" : 939 + }, + { + "id" : "minecraft:mossy_stone_brick_stairs", + "blockRuntimeId" : 5807 + }, + { + "id" : "minecraft:sandstone_stairs", + "blockRuntimeId" : 3592 + }, + { + "id" : "minecraft:smooth_sandstone_stairs", + "blockRuntimeId" : 3632 + }, + { + "id" : "minecraft:red_sandstone_stairs", + "blockRuntimeId" : 5300 + }, + { + "id" : "minecraft:smooth_red_sandstone_stairs", + "blockRuntimeId" : 5496 + }, + { + "id" : "minecraft:granite_stairs", + "blockRuntimeId" : 3542 + }, + { + "id" : "minecraft:polished_granite_stairs", + "blockRuntimeId" : 4139 + }, + { + "id" : "minecraft:diorite_stairs", + "blockRuntimeId" : 4339 + }, + { + "id" : "minecraft:polished_diorite_stairs", + "blockRuntimeId" : 6588 + }, + { + "id" : "minecraft:andesite_stairs", + "blockRuntimeId" : 5258 + }, + { + "id" : "minecraft:polished_andesite_stairs", + "blockRuntimeId" : 6982 + }, + { + "id" : "minecraft:brick_stairs", + "blockRuntimeId" : 6421 + }, + { + "id" : "minecraft:nether_brick_stairs", + "blockRuntimeId" : 106 + }, + { + "id" : "minecraft:red_nether_brick_stairs", + "blockRuntimeId" : 6493 + }, + { + "id" : "minecraft:end_brick_stairs", + "blockRuntimeId" : 6347 + }, + { + "id" : "minecraft:quartz_stairs", + "blockRuntimeId" : 4723 + }, + { + "id" : "minecraft:smooth_quartz_stairs", + "blockRuntimeId" : 7642 + }, + { + "id" : "minecraft:purpur_stairs", + "blockRuntimeId" : 7697 + }, + { + "id" : "minecraft:prismarine_stairs", + "blockRuntimeId" : 7205 + }, + { + "id" : "minecraft:dark_prismarine_stairs", + "blockRuntimeId" : 7372 + }, + { + "id" : "minecraft:prismarine_bricks_stairs", + "blockRuntimeId" : 206 + }, + { + "id" : "minecraft:crimson_stairs", + "blockRuntimeId" : 6245 + }, + { + "id" : "minecraft:warped_stairs", + "blockRuntimeId" : 3723 + }, + { + "id" : "minecraft:blackstone_stairs", + "blockRuntimeId" : 6973 + }, + { + "id" : "minecraft:polished_blackstone_stairs", + "blockRuntimeId" : 4245 + }, + { + "id" : "minecraft:polished_blackstone_brick_stairs", + "blockRuntimeId" : 4425 + }, + { + "id" : "minecraft:cut_copper_stairs", + "blockRuntimeId" : 4528 + }, + { + "id" : "minecraft:exposed_cut_copper_stairs", + "blockRuntimeId" : 4519 + }, + { + "id" : "minecraft:weathered_cut_copper_stairs", + "blockRuntimeId" : 4253 + }, + { + "id" : "minecraft:oxidized_cut_copper_stairs", + "blockRuntimeId" : 361 + }, + { + "id" : "minecraft:waxed_cut_copper_stairs", + "blockRuntimeId" : 403 + }, + { + "id" : "minecraft:waxed_exposed_cut_copper_stairs", + "blockRuntimeId" : 3891 + }, + { + "id" : "minecraft:waxed_weathered_cut_copper_stairs", + "blockRuntimeId" : 6091 + }, + { + "id" : "minecraft:waxed_oxidized_cut_copper_stairs", + "blockRuntimeId" : 5764 + }, + { + "id" : "minecraft:cobbled_deepslate_stairs", + "blockRuntimeId" : 147 + }, + { + "id" : "minecraft:deepslate_tile_stairs", + "blockRuntimeId" : 4609 + }, + { + "id" : "minecraft:polished_deepslate_stairs", + "blockRuntimeId" : 308 + }, + { + "id" : "minecraft:deepslate_brick_stairs", + "blockRuntimeId" : 7364 + }, + { + "id" : "minecraft:wooden_door" + }, + { + "id" : "minecraft:spruce_door" + }, + { + "id" : "minecraft:birch_door" + }, + { + "id" : "minecraft:jungle_door" + }, + { + "id" : "minecraft:acacia_door" + }, + { + "id" : "minecraft:dark_oak_door" + }, + { + "id" : "minecraft:iron_door" + }, + { + "id" : "minecraft:crimson_door" + }, + { + "id" : "minecraft:warped_door" + }, + { + "id" : "minecraft:trapdoor", + "blockRuntimeId" : 227 + }, + { + "id" : "minecraft:spruce_trapdoor", + "blockRuntimeId" : 6443 + }, + { + "id" : "minecraft:birch_trapdoor", + "blockRuntimeId" : 6524 + }, + { + "id" : "minecraft:jungle_trapdoor", + "blockRuntimeId" : 5331 + }, + { + "id" : "minecraft:acacia_trapdoor", + "blockRuntimeId" : 5539 + }, + { + "id" : "minecraft:dark_oak_trapdoor", + "blockRuntimeId" : 7444 + }, + { + "id" : "minecraft:iron_trapdoor", + "blockRuntimeId" : 335 + }, + { + "id" : "minecraft:crimson_trapdoor", + "blockRuntimeId" : 4281 + }, + { + "id" : "minecraft:warped_trapdoor", + "blockRuntimeId" : 4689 + }, + { + "id" : "minecraft:iron_bars", + "blockRuntimeId" : 4757 + }, + { + "id" : "minecraft:glass", + "blockRuntimeId" : 6088 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1140 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1148 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1147 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1155 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1152 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1154 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1141 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1144 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1145 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1153 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1149 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1143 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1151 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1150 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1142 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1146 + }, + { + "id" : "minecraft:tinted_glass", + "blockRuntimeId" : 5899 + }, + { + "id" : "minecraft:glass_pane", + "blockRuntimeId" : 5189 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4808 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4816 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4815 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4823 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4820 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4822 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4809 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4812 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4813 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4821 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4817 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4811 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4819 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4818 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4810 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4814 + }, + { + "id" : "minecraft:ladder", + "blockRuntimeId" : 8204 + }, + { + "id" : "minecraft:scaffolding", + "blockRuntimeId" : 3576 + }, + { + "id" : "minecraft:double_stone_slab", + "blockRuntimeId" : 249 + }, + { + "id" : "minecraft:double_stone_slab4", + "blockRuntimeId" : 6632 + }, + { + "id" : "minecraft:double_stone_slab", + "blockRuntimeId" : 252 + }, + { + "id" : "minecraft:double_stone_slab2", + "blockRuntimeId" : 6603 + }, + { + "id" : "minecraft:wooden_slab", + "blockRuntimeId" : 5220 + }, + { + "id" : "minecraft:wooden_slab", + "blockRuntimeId" : 5221 + }, + { + "id" : "minecraft:wooden_slab", + "blockRuntimeId" : 5222 + }, + { + "id" : "minecraft:wooden_slab", + "blockRuntimeId" : 5223 + }, + { + "id" : "minecraft:wooden_slab", + "blockRuntimeId" : 5224 + }, + { + "id" : "minecraft:wooden_slab", + "blockRuntimeId" : 5225 + }, + { + "id" : "minecraft:double_stone_slab", + "blockRuntimeId" : 254 + }, + { + "id" : "minecraft:double_stone_slab4", + "blockRuntimeId" : 6630 + }, + { + "id" : "minecraft:double_stone_slab", + "blockRuntimeId" : 250 + }, + { + "id" : "minecraft:double_stone_slab4", + "blockRuntimeId" : 6633 + }, + { + "id" : "minecraft:double_stone_slab2", + "blockRuntimeId" : 6604 + }, + { + "id" : "minecraft:double_stone_slab2", + "blockRuntimeId" : 6598 + }, + { + "id" : "minecraft:double_stone_slab4", + "blockRuntimeId" : 6634 + }, + { + "id" : "minecraft:double_stone_slab3", + "blockRuntimeId" : 6615 + }, + { + "id" : "minecraft:double_stone_slab3", + "blockRuntimeId" : 6620 + }, + { + "id" : "minecraft:double_stone_slab3", + "blockRuntimeId" : 6621 + }, + { + "id" : "minecraft:double_stone_slab3", + "blockRuntimeId" : 6618 + }, + { + "id" : "minecraft:double_stone_slab3", + "blockRuntimeId" : 6619 + }, + { + "id" : "minecraft:double_stone_slab3", + "blockRuntimeId" : 6617 + }, + { + "id" : "minecraft:double_stone_slab3", + "blockRuntimeId" : 6616 + }, + { + "id" : "minecraft:double_stone_slab", + "blockRuntimeId" : 253 + }, + { + "id" : "minecraft:double_stone_slab", + "blockRuntimeId" : 256 + }, + { + "id" : "minecraft:double_stone_slab2", + "blockRuntimeId" : 6605 + }, + { + "id" : "minecraft:double_stone_slab3", + "blockRuntimeId" : 6614 + }, + { + "id" : "minecraft:double_stone_slab", + "blockRuntimeId" : 255 + }, + { + "id" : "minecraft:double_stone_slab4", + "blockRuntimeId" : 6631 + }, + { + "id" : "minecraft:double_stone_slab2", + "blockRuntimeId" : 6599 + }, + { + "id" : "minecraft:double_stone_slab2", + "blockRuntimeId" : 6600 + }, + { + "id" : "minecraft:double_stone_slab2", + "blockRuntimeId" : 6601 + }, + { + "id" : "minecraft:double_stone_slab2", + "blockRuntimeId" : 6602 + }, + { + "id" : "minecraft:crimson_slab", + "blockRuntimeId" : 5824 + }, + { + "id" : "minecraft:warped_slab", + "blockRuntimeId" : 6375 + }, + { + "id" : "minecraft:blackstone_slab", + "blockRuntimeId" : 918 + }, + { + "id" : "minecraft:polished_blackstone_slab", + "blockRuntimeId" : 5942 + }, + { + "id" : "minecraft:polished_blackstone_brick_slab", + "blockRuntimeId" : 4175 + }, + { + "id" : "minecraft:cut_copper_slab", + "blockRuntimeId" : 5191 + }, + { + "id" : "minecraft:exposed_cut_copper_slab", + "blockRuntimeId" : 6491 + }, + { + "id" : "minecraft:weathered_cut_copper_slab", + "blockRuntimeId" : 5977 + }, + { + "id" : "minecraft:oxidized_cut_copper_slab", + "blockRuntimeId" : 5232 + }, + { + "id" : "minecraft:waxed_cut_copper_slab", + "blockRuntimeId" : 7757 + }, + { + "id" : "minecraft:waxed_exposed_cut_copper_slab", + "blockRuntimeId" : 247 + }, + { + "id" : "minecraft:waxed_weathered_cut_copper_slab", + "blockRuntimeId" : 6436 + }, + { + "id" : "minecraft:waxed_oxidized_cut_copper_slab", + "blockRuntimeId" : 716 + }, + { + "id" : "minecraft:cobbled_deepslate_slab", + "blockRuntimeId" : 7252 + }, + { + "id" : "minecraft:polished_deepslate_slab", + "blockRuntimeId" : 302 + }, + { + "id" : "minecraft:deepslate_tile_slab", + "blockRuntimeId" : 4239 + }, + { + "id" : "minecraft:deepslate_brick_slab", + "blockRuntimeId" : 3721 + }, + { + "id" : "minecraft:brick_block", + "blockRuntimeId" : 4721 + }, + { + "id" : "minecraft:chiseled_nether_bricks", + "blockRuntimeId" : 7191 + }, + { + "id" : "minecraft:cracked_nether_bricks", + "blockRuntimeId" : 4484 + }, + { + "id" : "minecraft:quartz_bricks", + "blockRuntimeId" : 6316 + }, + { + "id" : "minecraft:stonebrick", + "blockRuntimeId" : 6438 + }, + { + "id" : "minecraft:stonebrick", + "blockRuntimeId" : 6439 + }, + { + "id" : "minecraft:stonebrick", + "blockRuntimeId" : 6440 + }, + { + "id" : "minecraft:stonebrick", + "blockRuntimeId" : 6441 + }, + { + "id" : "minecraft:end_bricks", + "blockRuntimeId" : 295 + }, + { + "id" : "minecraft:prismarine", + "blockRuntimeId" : 6011 + }, + { + "id" : "minecraft:polished_blackstone_bricks", + "blockRuntimeId" : 4636 + }, + { + "id" : "minecraft:cracked_polished_blackstone_bricks", + "blockRuntimeId" : 7156 + }, + { + "id" : "minecraft:gilded_blackstone", + "blockRuntimeId" : 4518 + }, + { + "id" : "minecraft:chiseled_polished_blackstone", + "blockRuntimeId" : 5018 + }, + { + "id" : "minecraft:deepslate_tiles", + "blockRuntimeId" : 4513 + }, + { + "id" : "minecraft:cracked_deepslate_tiles", + "blockRuntimeId" : 4149 + }, + { + "id" : "minecraft:deepslate_bricks", + "blockRuntimeId" : 5414 + }, + { + "id" : "minecraft:cracked_deepslate_bricks", + "blockRuntimeId" : 5314 + }, + { + "id" : "minecraft:chiseled_deepslate", + "blockRuntimeId" : 5190 + }, + { + "id" : "minecraft:cobblestone", + "blockRuntimeId" : 3620 + }, + { + "id" : "minecraft:mossy_cobblestone", + "blockRuntimeId" : 266 + }, + { + "id" : "minecraft:cobbled_deepslate", + "blockRuntimeId" : 6544 + }, + { + "id" : "minecraft:smooth_stone", + "blockRuntimeId" : 4514 + }, + { + "id" : "minecraft:sandstone", + "blockRuntimeId" : 3658 + }, + { + "id" : "minecraft:sandstone", + "blockRuntimeId" : 3659 + }, + { + "id" : "minecraft:sandstone", + "blockRuntimeId" : 3660 + }, + { + "id" : "minecraft:sandstone", + "blockRuntimeId" : 3661 + }, + { + "id" : "minecraft:red_sandstone", + "blockRuntimeId" : 6471 + }, + { + "id" : "minecraft:red_sandstone", + "blockRuntimeId" : 6472 + }, + { + "id" : "minecraft:red_sandstone", + "blockRuntimeId" : 6473 + }, + { + "id" : "minecraft:red_sandstone", + "blockRuntimeId" : 6474 + }, + { + "id" : "minecraft:coal_block", + "blockRuntimeId" : 5348 + }, + { + "id" : "minecraft:dried_kelp_block", + "blockRuntimeId" : 7921 + }, + { + "id" : "minecraft:gold_block", + "blockRuntimeId" : 305 + }, + { + "id" : "minecraft:iron_block", + "blockRuntimeId" : 8203 + }, + { + "id" : "minecraft:copper_block", + "blockRuntimeId" : 4607 + }, + { + "id" : "minecraft:exposed_copper", + "blockRuntimeId" : 601 + }, + { + "id" : "minecraft:weathered_copper", + "blockRuntimeId" : 8188 + }, + { + "id" : "minecraft:oxidized_copper", + "blockRuntimeId" : 3558 + }, + { + "id" : "minecraft:waxed_copper", + "blockRuntimeId" : 7676 + }, + { + "id" : "minecraft:waxed_exposed_copper", + "blockRuntimeId" : 702 + }, + { + "id" : "minecraft:waxed_weathered_copper", + "blockRuntimeId" : 715 + }, + { + "id" : "minecraft:waxed_oxidized_copper", + "blockRuntimeId" : 7484 + }, + { + "id" : "minecraft:cut_copper", + "blockRuntimeId" : 4645 + }, + { + "id" : "minecraft:exposed_cut_copper", + "blockRuntimeId" : 6090 + }, + { + "id" : "minecraft:weathered_cut_copper", + "blockRuntimeId" : 7139 + }, + { + "id" : "minecraft:oxidized_cut_copper", + "blockRuntimeId" : 5428 + }, + { + "id" : "minecraft:waxed_cut_copper", + "blockRuntimeId" : 7235 + }, + { + "id" : "minecraft:waxed_exposed_cut_copper", + "blockRuntimeId" : 3814 + }, + { + "id" : "minecraft:waxed_weathered_cut_copper", + "blockRuntimeId" : 4807 + }, + { + "id" : "minecraft:waxed_oxidized_cut_copper", + "blockRuntimeId" : 214 + }, + { + "id" : "minecraft:emerald_block", + "blockRuntimeId" : 1164 + }, + { + "id" : "minecraft:diamond_block", + "blockRuntimeId" : 286 + }, + { + "id" : "minecraft:lapis_block", + "blockRuntimeId" : 4234 + }, + { + "id" : "minecraft:raw_iron_block", + "blockRuntimeId" : 8202 + }, + { + "id" : "minecraft:raw_copper_block", + "blockRuntimeId" : 5219 + }, + { + "id" : "minecraft:raw_gold_block", + "blockRuntimeId" : 371 + }, + { + "id" : "minecraft:quartz_block", + "blockRuntimeId" : 3701 + }, + { + "id" : "minecraft:quartz_block", + "blockRuntimeId" : 3703 + }, + { + "id" : "minecraft:quartz_block", + "blockRuntimeId" : 3702 + }, + { + "id" : "minecraft:quartz_block", + "blockRuntimeId" : 3704 + }, + { + "id" : "minecraft:prismarine", + "blockRuntimeId" : 6009 + }, + { + "id" : "minecraft:prismarine", + "blockRuntimeId" : 6010 + }, + { + "id" : "minecraft:slime", + "blockRuntimeId" : 4197 + }, + { + "id" : "minecraft:honey_block", + "blockRuntimeId" : 900 + }, + { + "id" : "minecraft:honeycomb_block", + "blockRuntimeId" : 4424 + }, + { + "id" : "minecraft:hay_block", + "blockRuntimeId" : 703 + }, + { + "id" : "minecraft:bone_block", + "blockRuntimeId" : 4198 + }, + { + "id" : "minecraft:nether_brick", + "blockRuntimeId" : 7214 + }, + { + "id" : "minecraft:red_nether_brick", + "blockRuntimeId" : 146 + }, + { + "id" : "minecraft:netherite_block", + "blockRuntimeId" : 3780 + }, + { + "id" : "minecraft:lodestone", + "blockRuntimeId" : 8201 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3471 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3470 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3477 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3464 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3467 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3468 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3476 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3472 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3466 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3473 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3465 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3469 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 956 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 964 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 963 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 971 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 968 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 970 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 957 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 960 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 961 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 969 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 965 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 959 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 967 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 966 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 958 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 962 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6229 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6237 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6236 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6244 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6241 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6243 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6230 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6233 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6234 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6242 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6238 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6232 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6240 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6239 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6231 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6235 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 668 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 676 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 675 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 683 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 680 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 682 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 669 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 672 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 673 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 681 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 677 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 671 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 679 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 678 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 670 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 674 + }, + { + "id" : "minecraft:clay", + "blockRuntimeId" : 7066 + }, + { + "id" : "minecraft:hardened_clay", + "blockRuntimeId" : 649 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6099 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6107 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6106 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6114 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6111 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6113 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6100 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6103 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6104 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6112 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6108 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6102 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6110 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6109 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6101 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6105 + }, + { + "id" : "minecraft:white_glazed_terracotta", + "blockRuntimeId" : 5523 + }, + { + "id" : "minecraft:silver_glazed_terracotta", + "blockRuntimeId" : 3536 + }, + { + "id" : "minecraft:gray_glazed_terracotta", + "blockRuntimeId" : 8195 + }, + { + "id" : "minecraft:black_glazed_terracotta", + "blockRuntimeId" : 5758 + }, + { + "id" : "minecraft:brown_glazed_terracotta", + "blockRuntimeId" : 3552 + }, + { + "id" : "minecraft:red_glazed_terracotta", + "blockRuntimeId" : 4150 + }, + { + "id" : "minecraft:orange_glazed_terracotta", + "blockRuntimeId" : 1156 + }, + { + "id" : "minecraft:yellow_glazed_terracotta", + "blockRuntimeId" : 921 + }, + { + "id" : "minecraft:lime_glazed_terracotta", + "blockRuntimeId" : 221 + }, + { + "id" : "minecraft:green_glazed_terracotta", + "blockRuntimeId" : 6501 + }, + { + "id" : "minecraft:cyan_glazed_terracotta", + "blockRuntimeId" : 5308 + }, + { + "id" : "minecraft:light_blue_glazed_terracotta", + "blockRuntimeId" : 5421 + }, + { + "id" : "minecraft:blue_glazed_terracotta", + "blockRuntimeId" : 5415 + }, + { + "id" : "minecraft:purple_glazed_terracotta", + "blockRuntimeId" : 6965 + }, + { + "id" : "minecraft:magenta_glazed_terracotta", + "blockRuntimeId" : 972 + }, + { + "id" : "minecraft:pink_glazed_terracotta", + "blockRuntimeId" : 6430 + }, + { + "id" : "minecraft:purpur_block", + "blockRuntimeId" : 7656 + }, + { + "id" : "minecraft:purpur_block", + "blockRuntimeId" : 7658 + }, + { + "id" : "minecraft:nether_wart_block", + "blockRuntimeId" : 4241 + }, + { + "id" : "minecraft:warped_wart_block", + "blockRuntimeId" : 5829 + }, + { + "id" : "minecraft:shroomlight", + "blockRuntimeId" : 5017 + }, + { + "id" : "minecraft:crimson_nylium", + "blockRuntimeId" : 4172 + }, + { + "id" : "minecraft:warped_nylium", + "blockRuntimeId" : 6314 + }, + { + "id" : "minecraft:basalt", + "blockRuntimeId" : 4297 + }, + { + "id" : "minecraft:polished_basalt", + "blockRuntimeId" : 24 + }, + { + "id" : "minecraft:smooth_basalt", + "blockRuntimeId" : 1162 + }, + { + "id" : "minecraft:soul_soil", + "blockRuntimeId" : 5738 + }, + { + "id" : "minecraft:dirt", + "blockRuntimeId" : 5701 + }, + { + "id" : "minecraft:dirt", + "blockRuntimeId" : 5702 + }, + { + "id" : "minecraft:farmland", + "blockRuntimeId" : 3901 + }, + { + "id" : "minecraft:grass", + "blockRuntimeId" : 6891 + }, + { + "id" : "minecraft:grass_path", + "blockRuntimeId" : 8023 + }, + { + "id" : "minecraft:podzol", + "blockRuntimeId" : 4606 + }, + { + "id" : "minecraft:mycelium", + "blockRuntimeId" : 3688 + }, + { + "id" : "minecraft:stone", + "blockRuntimeId" : 661 + }, + { + "id" : "minecraft:iron_ore", + "blockRuntimeId" : 4646 + }, + { + "id" : "minecraft:gold_ore", + "blockRuntimeId" : 920 + }, + { + "id" : "minecraft:diamond_ore", + "blockRuntimeId" : 4309 + }, + { + "id" : "minecraft:lapis_ore", + "blockRuntimeId" : 7641 + }, + { + "id" : "minecraft:redstone_ore", + "blockRuntimeId" : 4237 + }, + { + "id" : "minecraft:coal_ore", + "blockRuntimeId" : 4235 + }, + { + "id" : "minecraft:copper_ore", + "blockRuntimeId" : 3559 + }, + { + "id" : "minecraft:emerald_ore", + "blockRuntimeId" : 7289 + }, + { + "id" : "minecraft:quartz_ore", + "blockRuntimeId" : 4433 + }, + { + "id" : "minecraft:nether_gold_ore", + "blockRuntimeId" : 27 + }, + { + "id" : "minecraft:ancient_debris", + "blockRuntimeId" : 6031 + }, + { + "id" : "minecraft:deepslate_iron_ore", + "blockRuntimeId" : 7215 + }, + { + "id" : "minecraft:deepslate_gold_ore", + "blockRuntimeId" : 6030 + }, + { + "id" : "minecraft:deepslate_diamond_ore", + "blockRuntimeId" : 7980 + }, + { + "id" : "minecraft:deepslate_lapis_ore", + "blockRuntimeId" : 7204 + }, + { + "id" : "minecraft:deepslate_redstone_ore", + "blockRuntimeId" : 6507 + }, + { + "id" : "minecraft:deepslate_emerald_ore", + "blockRuntimeId" : 6315 + }, + { + "id" : "minecraft:deepslate_coal_ore", + "blockRuntimeId" : 7138 + }, + { + "id" : "minecraft:deepslate_copper_ore", + "blockRuntimeId" : 105 + }, + { + "id" : "minecraft:gravel", + "blockRuntimeId" : 8226 + }, + { + "id" : "minecraft:stone", + "blockRuntimeId" : 662 + }, + { + "id" : "minecraft:stone", + "blockRuntimeId" : 664 + }, + { + "id" : "minecraft:stone", + "blockRuntimeId" : 666 + }, + { + "id" : "minecraft:blackstone", + "blockRuntimeId" : 7527 + }, + { + "id" : "minecraft:deepslate", + "blockRuntimeId" : 267 + }, + { + "id" : "minecraft:stone", + "blockRuntimeId" : 663 + }, + { + "id" : "minecraft:stone", + "blockRuntimeId" : 665 + }, + { + "id" : "minecraft:stone", + "blockRuntimeId" : 667 + }, + { + "id" : "minecraft:polished_blackstone", + "blockRuntimeId" : 3687 + }, + { + "id" : "minecraft:polished_deepslate", + "blockRuntimeId" : 7696 + }, + { + "id" : "minecraft:sand", + "blockRuntimeId" : 4178 + }, + { + "id" : "minecraft:sand", + "blockRuntimeId" : 4179 + }, + { + "id" : "minecraft:cactus", + "blockRuntimeId" : 6940 + }, + { + "id" : "minecraft:log", + "blockRuntimeId" : 6546 + }, + { + "id" : "minecraft:stripped_oak_log", + "blockRuntimeId" : 7485 + }, + { + "id" : "minecraft:log", + "blockRuntimeId" : 6547 + }, + { + "id" : "minecraft:stripped_spruce_log", + "blockRuntimeId" : 6253 + }, + { + "id" : "minecraft:log", + "blockRuntimeId" : 6548 + }, + { + "id" : "minecraft:stripped_birch_log", + "blockRuntimeId" : 5896 + }, + { + "id" : "minecraft:log", + "blockRuntimeId" : 6549 + }, + { + "id" : "minecraft:stripped_jungle_log", + "blockRuntimeId" : 650 + }, + { + "id" : "minecraft:log2", + "blockRuntimeId" : 3835 + }, + { + "id" : "minecraft:stripped_acacia_log", + "blockRuntimeId" : 5772 + }, + { + "id" : "minecraft:log2", + "blockRuntimeId" : 3836 + }, + { + "id" : "minecraft:stripped_dark_oak_log", + "blockRuntimeId" : 216 + }, + { + "id" : "minecraft:crimson_stem", + "blockRuntimeId" : 5821 + }, + { + "id" : "minecraft:stripped_crimson_stem", + "blockRuntimeId" : 6864 + }, + { + "id" : "minecraft:warped_stem", + "blockRuntimeId" : 6377 + }, + { + "id" : "minecraft:stripped_warped_stem", + "blockRuntimeId" : 7342 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3479 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3485 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3480 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3486 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3481 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3487 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3482 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3488 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3483 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3489 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3484 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3490 + }, + { + "id" : "minecraft:crimson_hyphae", + "blockRuntimeId" : 4242 + }, + { + "id" : "minecraft:stripped_crimson_hyphae", + "blockRuntimeId" : 6390 + }, + { + "id" : "minecraft:warped_hyphae", + "blockRuntimeId" : 5826 + }, + { + "id" : "minecraft:stripped_warped_hyphae", + "blockRuntimeId" : 5529 + }, + { + "id" : "minecraft:leaves", + "blockRuntimeId" : 6014 + }, + { + "id" : "minecraft:leaves", + "blockRuntimeId" : 6015 + }, + { + "id" : "minecraft:leaves", + "blockRuntimeId" : 6016 + }, + { + "id" : "minecraft:leaves", + "blockRuntimeId" : 6017 + }, + { + "id" : "minecraft:leaves2", + "blockRuntimeId" : 4301 + }, + { + "id" : "minecraft:leaves2", + "blockRuntimeId" : 4302 + }, + { + "id" : "minecraft:azalea_leaves", + "blockRuntimeId" : 7652 + }, + { + "id" : "minecraft:azalea_leaves_flowered", + "blockRuntimeId" : 6304 + }, + { + "id" : "minecraft:sapling", + "blockRuntimeId" : 720 + }, + { + "id" : "minecraft:sapling", + "blockRuntimeId" : 721 + }, + { + "id" : "minecraft:sapling", + "blockRuntimeId" : 722 + }, + { + "id" : "minecraft:sapling", + "blockRuntimeId" : 723 + }, + { + "id" : "minecraft:sapling", + "blockRuntimeId" : 724 + }, + { + "id" : "minecraft:sapling", + "blockRuntimeId" : 725 + }, + { + "id" : "minecraft:bee_nest", + "blockRuntimeId" : 5704 + }, + { + "id" : "minecraft:wheat_seeds" + }, + { + "id" : "minecraft:pumpkin_seeds" + }, + { + "id" : "minecraft:melon_seeds" + }, + { + "id" : "minecraft:beetroot_seeds" + }, + { + "id" : "minecraft:wheat" + }, + { + "id" : "minecraft:beetroot" + }, + { + "id" : "minecraft:potato" + }, + { + "id" : "minecraft:poisonous_potato" + }, + { + "id" : "minecraft:carrot" + }, + { + "id" : "minecraft:golden_carrot" + }, + { + "id" : "minecraft:apple" + }, + { + "id" : "minecraft:golden_apple" + }, + { + "id" : "minecraft:enchanted_golden_apple" + }, + { + "id" : "minecraft:melon_block", + "blockRuntimeId" : 402 + }, + { + "id" : "minecraft:melon_slice" + }, + { + "id" : "minecraft:glistering_melon_slice" + }, + { + "id" : "minecraft:sweet_berries" + }, + { + "id" : "minecraft:glow_berries" + }, + { + "id" : "minecraft:pumpkin", + "blockRuntimeId" : 4509 + }, + { + "id" : "minecraft:carved_pumpkin", + "blockRuntimeId" : 7320 + }, + { + "id" : "minecraft:lit_pumpkin", + "blockRuntimeId" : 6559 + }, + { + "id" : "minecraft:honeycomb" + }, + { + "id" : "minecraft:tallgrass", + "blockRuntimeId" : 937 + }, + { + "id" : "minecraft:double_plant", + "blockRuntimeId" : 5405 + }, + { + "id" : "minecraft:tallgrass", + "blockRuntimeId" : 936 + }, + { + "id" : "minecraft:double_plant", + "blockRuntimeId" : 5404 + }, + { + "id" : "minecraft:nether_sprouts" + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6383 + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6381 + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6382 + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6380 + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6384 + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6388 + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6386 + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6387 + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6385 + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6389 + }, + { + "id" : "minecraft:coral_fan", + "blockRuntimeId" : 4540 + }, + { + "id" : "minecraft:coral_fan", + "blockRuntimeId" : 4538 + }, + { + "id" : "minecraft:coral_fan", + "blockRuntimeId" : 4539 + }, + { + "id" : "minecraft:coral_fan", + "blockRuntimeId" : 4537 + }, + { + "id" : "minecraft:coral_fan", + "blockRuntimeId" : 4541 + }, + { + "id" : "minecraft:coral_fan_dead", + "blockRuntimeId" : 69 + }, + { + "id" : "minecraft:coral_fan_dead", + "blockRuntimeId" : 67 + }, + { + "id" : "minecraft:coral_fan_dead", + "blockRuntimeId" : 68 + }, + { + "id" : "minecraft:coral_fan_dead", + "blockRuntimeId" : 66 + }, + { + "id" : "minecraft:coral_fan_dead", + "blockRuntimeId" : 70 + }, + { + "id" : "minecraft:kelp" + }, + { + "id" : "minecraft:seagrass", + "blockRuntimeId" : 244 + }, + { + "id" : "minecraft:crimson_roots", + "blockRuntimeId" : 7515 + }, + { + "id" : "minecraft:warped_roots", + "blockRuntimeId" : 4310 + }, + { + "id" : "minecraft:yellow_flower", + "blockRuntimeId" : 316 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3621 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3622 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3623 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3624 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3625 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3626 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3627 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3628 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3629 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3630 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3631 + }, + { + "id" : "minecraft:double_plant", + "blockRuntimeId" : 5402 + }, + { + "id" : "minecraft:double_plant", + "blockRuntimeId" : 5403 + }, + { + "id" : "minecraft:double_plant", + "blockRuntimeId" : 5406 + }, + { + "id" : "minecraft:double_plant", + "blockRuntimeId" : 5407 + }, + { + "id" : "minecraft:wither_rose", + "blockRuntimeId" : 6089 + }, + { + "id" : "minecraft:white_dye" + }, + { + "id" : "minecraft:light_gray_dye" + }, + { + "id" : "minecraft:gray_dye" + }, + { + "id" : "minecraft:black_dye" + }, + { + "id" : "minecraft:brown_dye" + }, + { + "id" : "minecraft:red_dye" + }, + { + "id" : "minecraft:orange_dye" + }, + { + "id" : "minecraft:yellow_dye" + }, + { + "id" : "minecraft:lime_dye" + }, + { + "id" : "minecraft:green_dye" + }, + { + "id" : "minecraft:cyan_dye" + }, + { + "id" : "minecraft:light_blue_dye" + }, + { + "id" : "minecraft:blue_dye" + }, + { + "id" : "minecraft:purple_dye" + }, + { + "id" : "minecraft:magenta_dye" + }, + { + "id" : "minecraft:pink_dye" + }, + { + "id" : "minecraft:ink_sac" + }, + { + "id" : "minecraft:glow_ink_sac" + }, + { + "id" : "minecraft:cocoa_beans" + }, + { + "id" : "minecraft:lapis_lazuli" + }, + { + "id" : "minecraft:bone_meal" + }, + { + "id" : "minecraft:vine", + "blockRuntimeId" : 902 + }, + { + "id" : "minecraft:weeping_vines", + "blockRuntimeId" : 5429 + }, + { + "id" : "minecraft:twisting_vines", + "blockRuntimeId" : 5641 + }, + { + "id" : "minecraft:waterlily", + "blockRuntimeId" : 1163 + }, + { + "id" : "minecraft:deadbush", + "blockRuntimeId" : 4633 + }, + { + "id" : "minecraft:bamboo", + "blockRuntimeId" : 3689 + }, + { + "id" : "minecraft:snow", + "blockRuntimeId" : 4177 + }, + { + "id" : "minecraft:ice", + "blockRuntimeId" : 6563 + }, + { + "id" : "minecraft:packed_ice", + "blockRuntimeId" : 296 + }, + { + "id" : "minecraft:blue_ice", + "blockRuntimeId" : 6981 + }, + { + "id" : "minecraft:snow_layer", + "blockRuntimeId" : 155 + }, + { + "id" : "minecraft:pointed_dripstone", + "blockRuntimeId" : 7358 + }, + { + "id" : "minecraft:dripstone_block", + "blockRuntimeId" : 901 + }, + { + "id" : "minecraft:moss_carpet", + "blockRuntimeId" : 300 + }, + { + "id" : "minecraft:moss_block", + "blockRuntimeId" : 6429 + }, + { + "id" : "minecraft:dirt_with_roots", + "blockRuntimeId" : 5347 + }, + { + "id" : "minecraft:hanging_roots", + "blockRuntimeId" : 205 + }, + { + "id" : "minecraft:big_dripleaf", + "blockRuntimeId" : 5904 + }, + { + "id" : "minecraft:small_dripleaf_block", + "blockRuntimeId" : 4268 + }, + { + "id" : "minecraft:spore_blossom", + "blockRuntimeId" : 7254 + }, + { + "id" : "minecraft:azalea", + "blockRuntimeId" : 6804 + }, + { + "id" : "minecraft:flowering_azalea", + "blockRuntimeId" : 5427 + }, + { + "id" : "minecraft:glow_lichen", + "blockRuntimeId" : 5634 + }, + { + "id" : "minecraft:amethyst_block", + "blockRuntimeId" : 304 + }, + { + "id" : "minecraft:budding_amethyst", + "blockRuntimeId" : 6956 + }, + { + "id" : "minecraft:amethyst_cluster", + "blockRuntimeId" : 7752 + }, + { + "id" : "minecraft:large_amethyst_bud", + "blockRuntimeId" : 4684 + }, + { + "id" : "minecraft:medium_amethyst_bud", + "blockRuntimeId" : 4324 + }, + { + "id" : "minecraft:small_amethyst_bud", + "blockRuntimeId" : 318 + }, + { + "id" : "minecraft:tuff", + "blockRuntimeId" : 360 + }, + { + "id" : "minecraft:calcite", + "blockRuntimeId" : 215 + }, + { + "id" : "minecraft:chicken" + }, + { + "id" : "minecraft:porkchop" + }, + { + "id" : "minecraft:beef" + }, + { + "id" : "minecraft:mutton" + }, + { + "id" : "minecraft:rabbit" + }, + { + "id" : "minecraft:cod" + }, + { + "id" : "minecraft:salmon" + }, + { + "id" : "minecraft:tropical_fish" + }, + { + "id" : "minecraft:pufferfish" + }, + { + "id" : "minecraft:brown_mushroom", + "blockRuntimeId" : 3551 + }, + { + "id" : "minecraft:red_mushroom", + "blockRuntimeId" : 4517 + }, + { + "id" : "minecraft:crimson_fungus", + "blockRuntimeId" : 7695 + }, + { + "id" : "minecraft:warped_fungus", + "blockRuntimeId" : 301 + }, + { + "id" : "minecraft:brown_mushroom_block", + "blockRuntimeId" : 7304 + }, + { + "id" : "minecraft:red_mushroom_block", + "blockRuntimeId" : 3616 + }, + { + "id" : "minecraft:brown_mushroom_block", + "blockRuntimeId" : 7305 + }, + { + "id" : "minecraft:brown_mushroom_block", + "blockRuntimeId" : 7290 + }, + { + "id" : "minecraft:egg" + }, + { + "id" : "minecraft:sugar_cane" + }, + { + "id" : "minecraft:sugar" + }, + { + "id" : "minecraft:rotten_flesh" + }, + { + "id" : "minecraft:bone" + }, + { + "id" : "minecraft:web", + "blockRuntimeId" : 6587 + }, + { + "id" : "minecraft:spider_eye" + }, + { + "id" : "minecraft:mob_spawner", + "blockRuntimeId" : 411 + }, + { + "id" : "minecraft:monster_egg", + "blockRuntimeId" : 4133 + }, + { + "id" : "minecraft:monster_egg", + "blockRuntimeId" : 4134 + }, + { + "id" : "minecraft:monster_egg", + "blockRuntimeId" : 4135 + }, + { + "id" : "minecraft:monster_egg", + "blockRuntimeId" : 4136 + }, + { + "id" : "minecraft:monster_egg", + "blockRuntimeId" : 4137 + }, + { + "id" : "minecraft:monster_egg", + "blockRuntimeId" : 4138 + }, + { + "id" : "minecraft:infested_deepslate", + "blockRuntimeId" : 4597 + }, + { + "id" : "minecraft:dragon_egg", + "blockRuntimeId" : 7213 + }, + { + "id" : "minecraft:turtle_egg", + "blockRuntimeId" : 7939 + }, + { + "id" : "minecraft:chicken_spawn_egg" + }, + { + "id" : "minecraft:bee_spawn_egg" + }, + { + "id" : "minecraft:cow_spawn_egg" + }, + { + "id" : "minecraft:pig_spawn_egg" + }, + { + "id" : "minecraft:sheep_spawn_egg" + }, + { + "id" : "minecraft:wolf_spawn_egg" + }, + { + "id" : "minecraft:polar_bear_spawn_egg" + }, + { + "id" : "minecraft:ocelot_spawn_egg" + }, + { + "id" : "minecraft:cat_spawn_egg" + }, + { + "id" : "minecraft:mooshroom_spawn_egg" + }, + { + "id" : "minecraft:bat_spawn_egg" + }, + { + "id" : "minecraft:parrot_spawn_egg" + }, + { + "id" : "minecraft:rabbit_spawn_egg" + }, + { + "id" : "minecraft:llama_spawn_egg" + }, + { + "id" : "minecraft:horse_spawn_egg" + }, + { + "id" : "minecraft:donkey_spawn_egg" + }, + { + "id" : "minecraft:mule_spawn_egg" + }, + { + "id" : "minecraft:skeleton_horse_spawn_egg" + }, + { + "id" : "minecraft:zombie_horse_spawn_egg" + }, + { + "id" : "minecraft:tropical_fish_spawn_egg" + }, + { + "id" : "minecraft:cod_spawn_egg" + }, + { + "id" : "minecraft:pufferfish_spawn_egg" + }, + { + "id" : "minecraft:salmon_spawn_egg" + }, + { + "id" : "minecraft:dolphin_spawn_egg" + }, + { + "id" : "minecraft:turtle_spawn_egg" + }, + { + "id" : "minecraft:panda_spawn_egg" + }, + { + "id" : "minecraft:fox_spawn_egg" + }, + { + "id" : "minecraft:creeper_spawn_egg" + }, + { + "id" : "minecraft:enderman_spawn_egg" + }, + { + "id" : "minecraft:silverfish_spawn_egg" + }, + { + "id" : "minecraft:skeleton_spawn_egg" + }, + { + "id" : "minecraft:wither_skeleton_spawn_egg" + }, + { + "id" : "minecraft:stray_spawn_egg" + }, + { + "id" : "minecraft:slime_spawn_egg" + }, + { + "id" : "minecraft:spider_spawn_egg" + }, + { + "id" : "minecraft:zombie_spawn_egg" + }, + { + "id" : "minecraft:zombie_pigman_spawn_egg" + }, + { + "id" : "minecraft:husk_spawn_egg" + }, + { + "id" : "minecraft:drowned_spawn_egg" + }, + { + "id" : "minecraft:squid_spawn_egg" + }, + { + "id" : "minecraft:glow_squid_spawn_egg" + }, + { + "id" : "minecraft:cave_spider_spawn_egg" + }, + { + "id" : "minecraft:witch_spawn_egg" + }, + { + "id" : "minecraft:guardian_spawn_egg" + }, + { + "id" : "minecraft:elder_guardian_spawn_egg" + }, + { + "id" : "minecraft:endermite_spawn_egg" + }, + { + "id" : "minecraft:magma_cube_spawn_egg" + }, + { + "id" : "minecraft:strider_spawn_egg" + }, + { + "id" : "minecraft:hoglin_spawn_egg" + }, + { + "id" : "minecraft:piglin_spawn_egg" + }, + { + "id" : "minecraft:zoglin_spawn_egg" + }, + { + "id" : "minecraft:piglin_brute_spawn_egg" + }, + { + "id" : "minecraft:goat_spawn_egg" + }, + { + "id" : "minecraft:axolotl_spawn_egg" + }, + { + "id" : "minecraft:ghast_spawn_egg" + }, + { + "id" : "minecraft:blaze_spawn_egg" + }, + { + "id" : "minecraft:shulker_spawn_egg" + }, + { + "id" : "minecraft:vindicator_spawn_egg" + }, + { + "id" : "minecraft:evoker_spawn_egg" + }, + { + "id" : "minecraft:vex_spawn_egg" + }, + { + "id" : "minecraft:villager_spawn_egg" + }, + { + "id" : "minecraft:wandering_trader_spawn_egg" + }, + { + "id" : "minecraft:zombie_villager_spawn_egg" + }, + { + "id" : "minecraft:phantom_spawn_egg" + }, + { + "id" : "minecraft:pillager_spawn_egg" + }, + { + "id" : "minecraft:ravager_spawn_egg" + }, + { + "id" : "minecraft:obsidian", + "blockRuntimeId" : 436 + }, + { + "id" : "minecraft:crying_obsidian", + "blockRuntimeId" : 6596 + }, + { + "id" : "minecraft:bedrock", + "blockRuntimeId" : 6971 + }, + { + "id" : "minecraft:soul_sand", + "blockRuntimeId" : 5739 + }, + { + "id" : "minecraft:netherrack", + "blockRuntimeId" : 6991 + }, + { + "id" : "minecraft:magma", + "blockRuntimeId" : 7951 + }, + { + "id" : "minecraft:nether_wart" + }, + { + "id" : "minecraft:end_stone", + "blockRuntimeId" : 3841 + }, + { + "id" : "minecraft:chorus_flower", + "blockRuntimeId" : 4462 + }, + { + "id" : "minecraft:chorus_plant", + "blockRuntimeId" : 5455 + }, + { + "id" : "minecraft:chorus_fruit" + }, + { + "id" : "minecraft:popped_chorus_fruit" + }, + { + "id" : "minecraft:sponge", + "blockRuntimeId" : 637 + }, + { + "id" : "minecraft:sponge", + "blockRuntimeId" : 638 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5193 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5194 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5195 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5196 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5197 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5198 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5199 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5200 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5201 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5202 + }, + { + "id" : "minecraft:leather_helmet" + }, + { + "id" : "minecraft:chainmail_helmet" + }, + { + "id" : "minecraft:iron_helmet" + }, + { + "id" : "minecraft:golden_helmet" + }, + { + "id" : "minecraft:diamond_helmet" + }, + { + "id" : "minecraft:netherite_helmet" + }, + { + "id" : "minecraft:leather_chestplate" + }, + { + "id" : "minecraft:chainmail_chestplate" + }, + { + "id" : "minecraft:iron_chestplate" + }, + { + "id" : "minecraft:golden_chestplate" + }, + { + "id" : "minecraft:diamond_chestplate" + }, + { + "id" : "minecraft:netherite_chestplate" + }, + { + "id" : "minecraft:leather_leggings" + }, + { + "id" : "minecraft:chainmail_leggings" + }, + { + "id" : "minecraft:iron_leggings" + }, + { + "id" : "minecraft:golden_leggings" + }, + { + "id" : "minecraft:diamond_leggings" + }, + { + "id" : "minecraft:netherite_leggings" + }, + { + "id" : "minecraft:leather_boots" + }, + { + "id" : "minecraft:chainmail_boots" + }, + { + "id" : "minecraft:iron_boots" + }, + { + "id" : "minecraft:golden_boots" + }, + { + "id" : "minecraft:diamond_boots" + }, + { + "id" : "minecraft:netherite_boots" + }, + { + "id" : "minecraft:wooden_sword" + }, + { + "id" : "minecraft:stone_sword" + }, + { + "id" : "minecraft:iron_sword" + }, + { + "id" : "minecraft:golden_sword" + }, + { + "id" : "minecraft:diamond_sword" + }, + { + "id" : "minecraft:netherite_sword" + }, + { + "id" : "minecraft:wooden_axe" + }, + { + "id" : "minecraft:stone_axe" + }, + { + "id" : "minecraft:iron_axe" + }, + { + "id" : "minecraft:golden_axe" + }, + { + "id" : "minecraft:diamond_axe" + }, + { + "id" : "minecraft:netherite_axe" + }, + { + "id" : "minecraft:wooden_pickaxe" + }, + { + "id" : "minecraft:stone_pickaxe" + }, + { + "id" : "minecraft:iron_pickaxe" + }, + { + "id" : "minecraft:golden_pickaxe" + }, + { + "id" : "minecraft:diamond_pickaxe" + }, + { + "id" : "minecraft:netherite_pickaxe" + }, + { + "id" : "minecraft:wooden_shovel" + }, + { + "id" : "minecraft:stone_shovel" + }, + { + "id" : "minecraft:iron_shovel" + }, + { + "id" : "minecraft:golden_shovel" + }, + { + "id" : "minecraft:diamond_shovel" + }, + { + "id" : "minecraft:netherite_shovel" + }, + { + "id" : "minecraft:wooden_hoe" + }, + { + "id" : "minecraft:stone_hoe" + }, + { + "id" : "minecraft:iron_hoe" + }, + { + "id" : "minecraft:golden_hoe" + }, + { + "id" : "minecraft:diamond_hoe" + }, + { + "id" : "minecraft:netherite_hoe" + }, + { + "id" : "minecraft:bow" + }, + { + "id" : "minecraft:crossbow" + }, + { + "id" : "minecraft:arrow" + }, + { + "id" : "minecraft:arrow", + "damage" : 6 + }, + { + "id" : "minecraft:arrow", + "damage" : 7 + }, + { + "id" : "minecraft:arrow", + "damage" : 8 + }, + { + "id" : "minecraft:arrow", + "damage" : 9 + }, + { + "id" : "minecraft:arrow", + "damage" : 10 + }, + { + "id" : "minecraft:arrow", + "damage" : 11 + }, + { + "id" : "minecraft:arrow", + "damage" : 12 + }, + { + "id" : "minecraft:arrow", + "damage" : 13 + }, + { + "id" : "minecraft:arrow", + "damage" : 14 + }, + { + "id" : "minecraft:arrow", + "damage" : 15 + }, + { + "id" : "minecraft:arrow", + "damage" : 16 + }, + { + "id" : "minecraft:arrow", + "damage" : 17 + }, + { + "id" : "minecraft:arrow", + "damage" : 18 + }, + { + "id" : "minecraft:arrow", + "damage" : 19 + }, + { + "id" : "minecraft:arrow", + "damage" : 20 + }, + { + "id" : "minecraft:arrow", + "damage" : 21 + }, + { + "id" : "minecraft:arrow", + "damage" : 22 + }, + { + "id" : "minecraft:arrow", + "damage" : 23 + }, + { + "id" : "minecraft:arrow", + "damage" : 24 + }, + { + "id" : "minecraft:arrow", + "damage" : 25 + }, + { + "id" : "minecraft:arrow", + "damage" : 26 + }, + { + "id" : "minecraft:arrow", + "damage" : 27 + }, + { + "id" : "minecraft:arrow", + "damage" : 28 + }, + { + "id" : "minecraft:arrow", + "damage" : 29 + }, + { + "id" : "minecraft:arrow", + "damage" : 30 + }, + { + "id" : "minecraft:arrow", + "damage" : 31 + }, + { + "id" : "minecraft:arrow", + "damage" : 32 + }, + { + "id" : "minecraft:arrow", + "damage" : 33 + }, + { + "id" : "minecraft:arrow", + "damage" : 34 + }, + { + "id" : "minecraft:arrow", + "damage" : 35 + }, + { + "id" : "minecraft:arrow", + "damage" : 36 + }, + { + "id" : "minecraft:arrow", + "damage" : 37 + }, + { + "id" : "minecraft:arrow", + "damage" : 38 + }, + { + "id" : "minecraft:arrow", + "damage" : 39 + }, + { + "id" : "minecraft:arrow", + "damage" : 40 + }, + { + "id" : "minecraft:arrow", + "damage" : 41 + }, + { + "id" : "minecraft:arrow", + "damage" : 42 + }, + { + "id" : "minecraft:arrow", + "damage" : 43 + }, + { + "id" : "minecraft:shield" + }, + { + "id" : "minecraft:cooked_chicken" + }, + { + "id" : "minecraft:cooked_porkchop" + }, + { + "id" : "minecraft:cooked_beef" + }, + { + "id" : "minecraft:cooked_mutton" + }, + { + "id" : "minecraft:cooked_rabbit" + }, + { + "id" : "minecraft:cooked_cod" + }, + { + "id" : "minecraft:cooked_salmon" + }, + { + "id" : "minecraft:bread" + }, + { + "id" : "minecraft:mushroom_stew" + }, + { + "id" : "minecraft:beetroot_soup" + }, + { + "id" : "minecraft:rabbit_stew" + }, + { + "id" : "minecraft:baked_potato" + }, + { + "id" : "minecraft:cookie" + }, + { + "id" : "minecraft:pumpkin_pie" + }, + { + "id" : "minecraft:cake" + }, + { + "id" : "minecraft:dried_kelp" + }, + { + "id" : "minecraft:fishing_rod" + }, + { + "id" : "minecraft:carrot_on_a_stick" + }, + { + "id" : "minecraft:warped_fungus_on_a_stick" + }, + { + "id" : "minecraft:snowball" + }, + { + "id" : "minecraft:shears" + }, + { + "id" : "minecraft:flint_and_steel" + }, + { + "id" : "minecraft:lead" + }, + { + "id" : "minecraft:clock" + }, + { + "id" : "minecraft:compass" + }, + { + "id" : "minecraft:empty_map" + }, + { + "id" : "minecraft:empty_map", + "damage" : 2 + }, + { + "id" : "minecraft:saddle" + }, + { + "id" : "minecraft:leather_horse_armor" + }, + { + "id" : "minecraft:iron_horse_armor" + }, + { + "id" : "minecraft:golden_horse_armor" + }, + { + "id" : "minecraft:diamond_horse_armor" + }, + { + "id" : "minecraft:trident" + }, + { + "id" : "minecraft:turtle_helmet" + }, + { + "id" : "minecraft:elytra" + }, + { + "id" : "minecraft:totem_of_undying" + }, + { + "id" : "minecraft:glass_bottle" + }, + { + "id" : "minecraft:experience_bottle" + }, + { + "id" : "minecraft:potion" + }, + { + "id" : "minecraft:potion", + "damage" : 1 + }, + { + "id" : "minecraft:potion", + "damage" : 2 + }, + { + "id" : "minecraft:potion", + "damage" : 3 + }, + { + "id" : "minecraft:potion", + "damage" : 4 + }, + { + "id" : "minecraft:potion", + "damage" : 5 + }, + { + "id" : "minecraft:potion", + "damage" : 6 + }, + { + "id" : "minecraft:potion", + "damage" : 7 + }, + { + "id" : "minecraft:potion", + "damage" : 8 + }, + { + "id" : "minecraft:potion", + "damage" : 9 + }, + { + "id" : "minecraft:potion", + "damage" : 10 + }, + { + "id" : "minecraft:potion", + "damage" : 11 + }, + { + "id" : "minecraft:potion", + "damage" : 12 + }, + { + "id" : "minecraft:potion", + "damage" : 13 + }, + { + "id" : "minecraft:potion", + "damage" : 14 + }, + { + "id" : "minecraft:potion", + "damage" : 15 + }, + { + "id" : "minecraft:potion", + "damage" : 16 + }, + { + "id" : "minecraft:potion", + "damage" : 17 + }, + { + "id" : "minecraft:potion", + "damage" : 18 + }, + { + "id" : "minecraft:potion", + "damage" : 19 + }, + { + "id" : "minecraft:potion", + "damage" : 20 + }, + { + "id" : "minecraft:potion", + "damage" : 21 + }, + { + "id" : "minecraft:potion", + "damage" : 22 + }, + { + "id" : "minecraft:potion", + "damage" : 23 + }, + { + "id" : "minecraft:potion", + "damage" : 24 + }, + { + "id" : "minecraft:potion", + "damage" : 25 + }, + { + "id" : "minecraft:potion", + "damage" : 26 + }, + { + "id" : "minecraft:potion", + "damage" : 27 + }, + { + "id" : "minecraft:potion", + "damage" : 28 + }, + { + "id" : "minecraft:potion", + "damage" : 29 + }, + { + "id" : "minecraft:potion", + "damage" : 30 + }, + { + "id" : "minecraft:potion", + "damage" : 31 + }, + { + "id" : "minecraft:potion", + "damage" : 32 + }, + { + "id" : "minecraft:potion", + "damage" : 33 + }, + { + "id" : "minecraft:potion", + "damage" : 34 + }, + { + "id" : "minecraft:potion", + "damage" : 35 + }, + { + "id" : "minecraft:potion", + "damage" : 36 + }, + { + "id" : "minecraft:potion", + "damage" : 37 + }, + { + "id" : "minecraft:potion", + "damage" : 38 + }, + { + "id" : "minecraft:potion", + "damage" : 39 + }, + { + "id" : "minecraft:potion", + "damage" : 40 + }, + { + "id" : "minecraft:potion", + "damage" : 41 + }, + { + "id" : "minecraft:potion", + "damage" : 42 + }, + { + "id" : "minecraft:splash_potion" + }, + { + "id" : "minecraft:splash_potion", + "damage" : 1 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 2 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 3 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 4 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 5 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 6 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 7 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 8 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 9 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 10 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 11 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 12 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 13 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 14 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 15 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 16 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 17 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 18 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 19 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 20 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 21 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 22 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 23 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 24 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 25 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 26 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 27 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 28 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 29 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 30 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 31 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 32 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 33 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 34 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 35 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 36 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 37 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 38 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 39 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 40 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 41 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 42 + }, + { + "id" : "minecraft:lingering_potion" + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 1 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 2 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 3 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 4 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 5 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 6 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 7 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 8 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 9 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 10 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 11 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 12 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 13 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 14 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 15 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 16 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 17 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 18 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 19 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 20 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 21 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 22 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 23 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 24 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 25 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 26 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 27 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 28 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 29 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 30 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 31 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 32 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 33 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 34 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 35 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 36 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 37 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 38 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 39 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 40 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 41 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 42 + }, + { + "id" : "minecraft:spyglass" + }, + { + "id" : "minecraft:stick" + }, + { + "id" : "minecraft:bed" + }, + { + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "id" : "minecraft:torch", + "blockRuntimeId" : 732 + }, + { + "id" : "minecraft:soul_torch", + "blockRuntimeId" : 4600 + }, + { + "id" : "minecraft:sea_pickle", + "blockRuntimeId" : 5779 + }, + { + "id" : "minecraft:lantern", + "blockRuntimeId" : 7016 + }, + { + "id" : "minecraft:soul_lantern", + "blockRuntimeId" : 5699 + }, + { + "id" : "minecraft:candle", + "blockRuntimeId" : 7345 + }, + { + "id" : "minecraft:white_candle", + "blockRuntimeId" : 5250 + }, + { + "id" : "minecraft:orange_candle", + "blockRuntimeId" : 372 + }, + { + "id" : "minecraft:magenta_candle", + "blockRuntimeId" : 428 + }, + { + "id" : "minecraft:light_blue_candle", + "blockRuntimeId" : 4501 + }, + { + "id" : "minecraft:yellow_candle", + "blockRuntimeId" : 6115 + }, + { + "id" : "minecraft:lime_candle", + "blockRuntimeId" : 6333 + }, + { + "id" : "minecraft:pink_candle", + "blockRuntimeId" : 7312 + }, + { + "id" : "minecraft:gray_candle", + "blockRuntimeId" : 947 + }, + { + "id" : "minecraft:light_gray_candle", + "blockRuntimeId" : 6147 + }, + { + "id" : "minecraft:cyan_candle", + "blockRuntimeId" : 7668 + }, + { + "id" : "minecraft:purple_candle", + "blockRuntimeId" : 6992 + }, + { + "id" : "minecraft:blue_candle" + }, + { + "id" : "minecraft:brown_candle", + "blockRuntimeId" : 5799 + }, + { + "id" : "minecraft:green_candle", + "blockRuntimeId" : 694 + }, + { + "id" : "minecraft:red_candle", + "blockRuntimeId" : 4637 + }, + { + "id" : "minecraft:black_candle", + "blockRuntimeId" : 171 + }, + { + "id" : "minecraft:crafting_table", + "blockRuntimeId" : 5778 + }, + { + "id" : "minecraft:cartography_table", + "blockRuntimeId" : 8227 + }, + { + "id" : "minecraft:fletching_table", + "blockRuntimeId" : 5757 + }, + { + "id" : "minecraft:smithing_table", + "blockRuntimeId" : 3731 + }, + { + "id" : "minecraft:beehive", + "blockRuntimeId" : 6032 + }, + { + "id" : "minecraft:campfire" + }, + { + "id" : "minecraft:soul_campfire" + }, + { + "id" : "minecraft:furnace", + "blockRuntimeId" : 7744 + }, + { + "id" : "minecraft:blast_furnace", + "blockRuntimeId" : 7509 + }, + { + "id" : "minecraft:smoker", + "blockRuntimeId" : 655 + }, + { + "id" : "minecraft:respawn_anchor", + "blockRuntimeId" : 689 + }, + { + "id" : "minecraft:brewing_stand" + }, + { + "id" : "minecraft:anvil", + "blockRuntimeId" : 6508 + }, + { + "id" : "minecraft:anvil", + "blockRuntimeId" : 6512 + }, + { + "id" : "minecraft:anvil", + "blockRuntimeId" : 6516 + }, + { + "id" : "minecraft:grindstone", + "blockRuntimeId" : 7981 + }, + { + "id" : "minecraft:enchanting_table", + "blockRuntimeId" : 6597 + }, + { + "id" : "minecraft:bookshelf", + "blockRuntimeId" : 6545 + }, + { + "id" : "minecraft:lectern", + "blockRuntimeId" : 6856 + }, + { + "id" : "minecraft:cauldron" + }, + { + "id" : "minecraft:composter", + "blockRuntimeId" : 5365 + }, + { + "id" : "minecraft:chest", + "blockRuntimeId" : 7057 + }, + { + "id" : "minecraft:trapped_chest", + "blockRuntimeId" : 5533 + }, + { + "id" : "minecraft:ender_chest", + "blockRuntimeId" : 4317 + }, + { + "id" : "minecraft:barrel", + "blockRuntimeId" : 4450 + }, + { + "id" : "minecraft:undyed_shulker_box", + "blockRuntimeId" : 3686 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5274 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5273 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5280 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5267 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5270 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5271 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5279 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5275 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5269 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5276 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5268 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5272 + }, + { + "id" : "minecraft:armor_stand" + }, + { + "id" : "minecraft:noteblock", + "blockRuntimeId" : 359 + }, + { + "id" : "minecraft:jukebox", + "blockRuntimeId" : 4830 + }, + { + "id" : "minecraft:music_disc_13" + }, + { + "id" : "minecraft:music_disc_cat" + }, + { + "id" : "minecraft:music_disc_blocks" + }, + { + "id" : "minecraft:music_disc_chirp" + }, + { + "id" : "minecraft:music_disc_far" + }, + { + "id" : "minecraft:music_disc_mall" + }, + { + "id" : "minecraft:music_disc_mellohi" + }, + { + "id" : "minecraft:music_disc_stal" + }, + { + "id" : "minecraft:music_disc_strad" + }, + { + "id" : "minecraft:music_disc_ward" + }, + { + "id" : "minecraft:music_disc_11" + }, + { + "id" : "minecraft:music_disc_wait" + }, + { + "id" : "minecraft:music_disc_otherside" + }, + { + "id" : "minecraft:music_disc_pigstep" + }, + { + "id" : "minecraft:glowstone_dust" + }, + { + "id" : "minecraft:glowstone", + "blockRuntimeId" : 3874 + }, + { + "id" : "minecraft:redstone_lamp", + "blockRuntimeId" : 265 + }, + { + "id" : "minecraft:sea_lantern", + "blockRuntimeId" : 7488 + }, + { + "id" : "minecraft:oak_sign" + }, + { + "id" : "minecraft:spruce_sign" + }, + { + "id" : "minecraft:birch_sign" + }, + { + "id" : "minecraft:jungle_sign" + }, + { + "id" : "minecraft:acacia_sign" + }, + { + "id" : "minecraft:dark_oak_sign" + }, + { + "id" : "minecraft:crimson_sign" + }, + { + "id" : "minecraft:warped_sign" + }, + { + "id" : "minecraft:painting" + }, + { + "id" : "minecraft:frame" + }, + { + "id" : "minecraft:glow_frame" + }, + { + "id" : "minecraft:honey_bottle" + }, + { + "id" : "minecraft:flower_pot" + }, + { + "id" : "minecraft:bowl" + }, + { + "id" : "minecraft:bucket" + }, + { + "id" : "minecraft:milk_bucket" + }, + { + "id" : "minecraft:water_bucket" + }, + { + "id" : "minecraft:lava_bucket" + }, + { + "id" : "minecraft:cod_bucket" + }, + { + "id" : "minecraft:salmon_bucket" + }, + { + "id" : "minecraft:tropical_fish_bucket" + }, + { + "id" : "minecraft:pufferfish_bucket" + }, + { + "id" : "minecraft:powder_snow_bucket" + }, + { + "id" : "minecraft:axolotl_bucket" + }, + { + "id" : "minecraft:skull", + "damage" : 3 + }, + { + "id" : "minecraft:skull", + "damage" : 2 + }, + { + "id" : "minecraft:skull", + "damage" : 4 + }, + { + "id" : "minecraft:skull", + "damage" : 5 + }, + { + "id" : "minecraft:skull" + }, + { + "id" : "minecraft:skull", + "damage" : 1 + }, + { + "id" : "minecraft:beacon", + "blockRuntimeId" : 145 + }, + { + "id" : "minecraft:bell", + "blockRuntimeId" : 6824 + }, + { + "id" : "minecraft:conduit", + "blockRuntimeId" : 4196 + }, + { + "id" : "minecraft:stonecutter_block", + "blockRuntimeId" : 7516 + }, + { + "id" : "minecraft:end_portal_frame", + "blockRuntimeId" : 6001 + }, + { + "id" : "minecraft:coal" + }, + { + "id" : "minecraft:charcoal" + }, + { + "id" : "minecraft:diamond" + }, + { + "id" : "minecraft:iron_nugget" + }, + { + "id" : "minecraft:raw_iron" + }, + { + "id" : "minecraft:raw_gold" + }, + { + "id" : "minecraft:raw_copper" + }, + { + "id" : "minecraft:copper_ingot" + }, + { + "id" : "minecraft:iron_ingot" + }, + { + "id" : "minecraft:netherite_scrap" + }, + { + "id" : "minecraft:netherite_ingot" + }, + { + "id" : "minecraft:gold_nugget" + }, + { + "id" : "minecraft:gold_ingot" + }, + { + "id" : "minecraft:emerald" + }, + { + "id" : "minecraft:quartz" + }, + { + "id" : "minecraft:clay_ball" + }, + { + "id" : "minecraft:brick" + }, + { + "id" : "minecraft:netherbrick" + }, + { + "id" : "minecraft:prismarine_shard" + }, + { + "id" : "minecraft:amethyst_shard" + }, + { + "id" : "minecraft:prismarine_crystals" + }, + { + "id" : "minecraft:nautilus_shell" + }, + { + "id" : "minecraft:heart_of_the_sea" + }, + { + "id" : "minecraft:scute" + }, + { + "id" : "minecraft:phantom_membrane" + }, + { + "id" : "minecraft:string" + }, + { + "id" : "minecraft:feather" + }, + { + "id" : "minecraft:flint" + }, + { + "id" : "minecraft:gunpowder" + }, + { + "id" : "minecraft:leather" + }, + { + "id" : "minecraft:rabbit_hide" + }, + { + "id" : "minecraft:rabbit_foot" + }, + { + "id" : "minecraft:fire_charge" + }, + { + "id" : "minecraft:blaze_rod" + }, + { + "id" : "minecraft:blaze_powder" + }, + { + "id" : "minecraft:magma_cream" + }, + { + "id" : "minecraft:fermented_spider_eye" + }, + { + "id" : "minecraft:dragon_breath" + }, + { + "id" : "minecraft:shulker_shell" + }, + { + "id" : "minecraft:ghast_tear" + }, + { + "id" : "minecraft:slime_ball" + }, + { + "id" : "minecraft:ender_pearl" + }, + { + "id" : "minecraft:ender_eye" + }, + { + "id" : "minecraft:nether_star" + }, + { + "id" : "minecraft:end_rod", + "blockRuntimeId" : 5815 + }, + { + "id" : "minecraft:lightning_rod", + "blockRuntimeId" : 1181 + }, + { + "id" : "minecraft:end_crystal" + }, + { + "id" : "minecraft:paper" + }, + { + "id" : "minecraft:book" + }, + { + "id" : "minecraft:writable_book" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQAAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQAAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQAAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQAAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQBAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQBAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQBAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQBAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQCAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQCAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQCAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQCAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQDAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQDAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQDAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQDAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQEAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQEAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQEAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQEAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQFAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQFAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQFAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQGAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQGAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQGAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQHAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQHAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQHAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQIAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAUAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAUAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAUAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQMAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQMAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQNAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQNAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQOAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQOAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQOAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAUAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQQAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQRAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQRAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQRAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQSAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQSAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQSAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAUAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQUAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQUAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQVAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQWAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQXAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQXAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQXAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQYAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQYAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQYAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQZAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQZAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQaAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQbAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQcAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAUAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQeAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQeAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQeAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQfAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQfAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQfAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQgAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQhAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQiAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQiAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQiAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQiAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQjAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQjAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQjAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQkAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQkAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQkAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:oak_boat" + }, + { + "id" : "minecraft:spruce_boat" + }, + { + "id" : "minecraft:birch_boat" + }, + { + "id" : "minecraft:jungle_boat" + }, + { + "id" : "minecraft:acacia_boat" + }, + { + "id" : "minecraft:dark_oak_boat" + }, + { + "id" : "minecraft:rail", + "blockRuntimeId" : 3909 + }, + { + "id" : "minecraft:golden_rail", + "blockRuntimeId" : 5282 + }, + { + "id" : "minecraft:detector_rail", + "blockRuntimeId" : 4121 + }, + { + "id" : "minecraft:activator_rail", + "blockRuntimeId" : 323 + }, + { + "id" : "minecraft:minecart" + }, + { + "id" : "minecraft:chest_minecart" + }, + { + "id" : "minecraft:hopper_minecart" + }, + { + "id" : "minecraft:tnt_minecart" + }, + { + "id" : "minecraft:redstone" + }, + { + "id" : "minecraft:redstone_block", + "blockRuntimeId" : 3781 + }, + { + "id" : "minecraft:redstone_torch", + "blockRuntimeId" : 3530 + }, + { + "id" : "minecraft:lever", + "blockRuntimeId" : 6405 + }, + { + "id" : "minecraft:wooden_button", + "blockRuntimeId" : 6356 + }, + { + "id" : "minecraft:spruce_button", + "blockRuntimeId" : 4269 + }, + { + "id" : "minecraft:birch_button", + "blockRuntimeId" : 7708 + }, + { + "id" : "minecraft:jungle_button", + "blockRuntimeId" : 116 + }, + { + "id" : "minecraft:acacia_button", + "blockRuntimeId" : 7173 + }, + { + "id" : "minecraft:dark_oak_button", + "blockRuntimeId" : 93 + }, + { + "id" : "minecraft:stone_button", + "blockRuntimeId" : 604 + }, + { + "id" : "minecraft:crimson_button", + "blockRuntimeId" : 4380 + }, + { + "id" : "minecraft:warped_button", + "blockRuntimeId" : 7192 + }, + { + "id" : "minecraft:polished_blackstone_button", + "blockRuntimeId" : 7732 + }, + { + "id" : "minecraft:tripwire_hook", + "blockRuntimeId" : 5838 + }, + { + "id" : "minecraft:wooden_pressure_plate", + "blockRuntimeId" : 8005 + }, + { + "id" : "minecraft:spruce_pressure_plate", + "blockRuntimeId" : 3764 + }, + { + "id" : "minecraft:birch_pressure_plate", + "blockRuntimeId" : 3560 + }, + { + "id" : "minecraft:jungle_pressure_plate", + "blockRuntimeId" : 3640 + }, + { + "id" : "minecraft:acacia_pressure_plate", + "blockRuntimeId" : 5203 + }, + { + "id" : "minecraft:dark_oak_pressure_plate", + "blockRuntimeId" : 5880 + }, + { + "id" : "minecraft:crimson_pressure_plate", + "blockRuntimeId" : 8210 + }, + { + "id" : "minecraft:warped_pressure_plate", + "blockRuntimeId" : 270 + }, + { + "id" : "minecraft:stone_pressure_plate", + "blockRuntimeId" : 3875 + }, + { + "id" : "minecraft:light_weighted_pressure_plate", + "blockRuntimeId" : 3670 + }, + { + "id" : "minecraft:heavy_weighted_pressure_plate", + "blockRuntimeId" : 1165 + }, + { + "id" : "minecraft:polished_blackstone_pressure_plate", + "blockRuntimeId" : 6197 + }, + { + "id" : "minecraft:observer", + "blockRuntimeId" : 3518 + }, + { + "id" : "minecraft:daylight_detector", + "blockRuntimeId" : 4180 + }, + { + "id" : "minecraft:repeater" + }, + { + "id" : "minecraft:comparator" + }, + { + "id" : "minecraft:hopper" + }, + { + "id" : "minecraft:dropper", + "blockRuntimeId" : 7327 + }, + { + "id" : "minecraft:dispenser", + "blockRuntimeId" : 7955 + }, + { + "id" : "minecraft:piston", + "blockRuntimeId" : 930 + }, + { + "id" : "minecraft:sticky_piston", + "blockRuntimeId" : 4312 + }, + { + "id" : "minecraft:tnt", + "blockRuntimeId" : 6581 + }, + { + "id" : "minecraft:name_tag" + }, + { + "id" : "minecraft:loom", + "blockRuntimeId" : 3831 + }, + { + "id" : "minecraft:banner" + }, + { + "id" : "minecraft:banner", + "damage" : 8 + }, + { + "id" : "minecraft:banner", + "damage" : 7 + }, + { + "id" : "minecraft:banner", + "damage" : 15 + }, + { + "id" : "minecraft:banner", + "damage" : 12 + }, + { + "id" : "minecraft:banner", + "damage" : 14 + }, + { + "id" : "minecraft:banner", + "damage" : 1 + }, + { + "id" : "minecraft:banner", + "damage" : 4 + }, + { + "id" : "minecraft:banner", + "damage" : 5 + }, + { + "id" : "minecraft:banner", + "damage" : 13 + }, + { + "id" : "minecraft:banner", + "damage" : 9 + }, + { + "id" : "minecraft:banner", + "damage" : 3 + }, + { + "id" : "minecraft:banner", + "damage" : 11 + }, + { + "id" : "minecraft:banner", + "damage" : 10 + }, + { + "id" : "minecraft:banner", + "damage" : 2 + }, + { + "id" : "minecraft:banner", + "damage" : 6 + }, + { + "id" : "minecraft:banner", + "damage" : 15, + "nbt_b64" : "CgAAAwQAVHlwZQEAAAAA" + }, + { + "id" : "minecraft:creeper_banner_pattern" + }, + { + "id" : "minecraft:skull_banner_pattern" + }, + { + "id" : "minecraft:flower_banner_pattern" + }, + { + "id" : "minecraft:mojang_banner_pattern" + }, + { + "id" : "minecraft:field_masoned_banner_pattern" + }, + { + "id" : "minecraft:bordure_indented_banner_pattern" + }, + { + "id" : "minecraft:piglin_banner_pattern" + }, + { + "id" : "minecraft:globe_banner_pattern" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwAAAAAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAABwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAIBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAHBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAPBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAMBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAOBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAABBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAEBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAFBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAANBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAJBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAADBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAALBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAKBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAACBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAGBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_star", + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yIR0d/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 8, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yUk9H/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 7, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yl52d/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 15, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9y8PDw/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 12, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9y2rM6/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 14, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yHYD5/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 1, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yJi6w/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 4, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yqkQ8/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 5, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yuDKJ/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 13, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yvU7H/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 9, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yqovz/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 3, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yMlSD/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 11, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yPdj+/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 10, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yH8eA/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 2, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yFnxe/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 6, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9ynJwW/wA=" + }, + { + "id" : "minecraft:chain" + }, + { + "id" : "minecraft:target", + "blockRuntimeId" : 6355 + }, + { + "id" : "minecraft:lodestone_compass" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/creativeitems.json b/src/main/resources/creativeitems.json index 913823c14ec..95896cedd6c 100644 --- a/src/main/resources/creativeitems.json +++ b/src/main/resources/creativeitems.json @@ -1,5135 +1,4519 @@ { - "items" : [ + "items": [ { - "id" : "minecraft:planks", - "blockRuntimeId" : 5640 + "blockState": "minecraft:planks" }, { - "id" : "minecraft:planks", - "blockRuntimeId" : 5641 + "blockState": "minecraft:planks;wood_type=spruce" }, { - "id" : "minecraft:planks", - "blockRuntimeId" : 5642 + "blockState": "minecraft:planks;wood_type=birch" }, { - "id" : "minecraft:planks", - "blockRuntimeId" : 5643 + "blockState": "minecraft:planks;wood_type=jungle" }, { - "id" : "minecraft:planks", - "blockRuntimeId" : 5644 + "blockState": "minecraft:planks;wood_type=acacia" }, { - "id" : "minecraft:planks", - "blockRuntimeId" : 5645 + "blockState": "minecraft:planks;wood_type=dark_oak" }, { - "id" : "minecraft:crimson_planks", - "blockRuntimeId" : 3799 + "blockState": "minecraft:crimson_planks" }, { - "id" : "minecraft:warped_planks", - "blockRuntimeId" : 7352 + "blockState": "minecraft:warped_planks" }, { - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1278 + "blockState": "minecraft:cobblestone_wall" }, { - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1279 + "blockState": "minecraft:cobblestone_wall;wall_block_type=mossy_cobblestone" }, { - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1280 + "blockState": "minecraft:cobblestone_wall;wall_block_type=granite" }, { - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1281 + "blockState": "minecraft:cobblestone_wall;wall_block_type=diorite" }, { - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1282 + "blockState": "minecraft:cobblestone_wall;wall_block_type=andesite" }, { - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1283 + "blockState": "minecraft:cobblestone_wall;wall_block_type=sandstone" }, { - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1290 + "blockState": "minecraft:cobblestone_wall;wall_block_type=red_sandstone" }, { - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1285 + "blockState": "minecraft:cobblestone_wall;wall_block_type=stone_brick" }, { - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1286 + "blockState": "minecraft:cobblestone_wall;wall_block_type=mossy_stone_brick" }, { - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1284 + "blockState": "minecraft:cobblestone_wall;wall_block_type=brick" }, { - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1287 + "blockState": "minecraft:cobblestone_wall;wall_block_type=nether_brick" }, { - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1291 + "blockState": "minecraft:cobblestone_wall;wall_block_type=red_nether_brick" }, { - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1288 + "blockState": "minecraft:cobblestone_wall;wall_block_type=end_brick" }, { - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1289 + "blockState": "minecraft:cobblestone_wall;wall_block_type=prismarine" }, { - "id" : "minecraft:blackstone_wall", - "blockRuntimeId" : 497 + "blockState": "minecraft:blackstone_wall" }, { - "id" : "minecraft:polished_blackstone_wall", - "blockRuntimeId" : 5884 + "blockState": "minecraft:polished_blackstone_wall" }, { - "id" : "minecraft:polished_blackstone_brick_wall", - "blockRuntimeId" : 5681 + "blockState": "minecraft:polished_blackstone_brick_wall" }, { - "id" : "minecraft:cobbled_deepslate_wall", - "blockRuntimeId" : 1115 + "blockState": "minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_connection_type_north=none;wall_connection_type_south=none;wall_connection_type_west=none;wall_post_bit=0" }, { - "id" : "minecraft:deepslate_tile_wall", - "blockRuntimeId" : 4247 + "blockState": "minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_connection_type_north=none;wall_connection_type_south=none;wall_connection_type_west=none;wall_post_bit=0" }, { - "id" : "minecraft:polished_deepslate_wall", - "blockRuntimeId" : 6059 + "blockState": "minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_connection_type_north=none;wall_connection_type_south=none;wall_connection_type_west=none;wall_post_bit=0" }, { - "id" : "minecraft:deepslate_brick_wall", - "blockRuntimeId" : 4064 + "blockState": "minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_connection_type_north=none;wall_connection_type_south=none;wall_connection_type_west=none;wall_post_bit=0" }, { - "id" : "minecraft:fence", - "blockRuntimeId" : 4723 + "blockState": "minecraft:fence" }, { - "id" : "minecraft:fence", - "blockRuntimeId" : 4724 + "blockState": "minecraft:fence;wood_type=spruce" }, { - "id" : "minecraft:fence", - "blockRuntimeId" : 4725 + "blockState": "minecraft:fence;wood_type=birch" }, { - "id" : "minecraft:fence", - "blockRuntimeId" : 4726 + "blockState": "minecraft:fence;wood_type=jungle" }, { - "id" : "minecraft:fence", - "blockRuntimeId" : 4727 + "blockState": "minecraft:fence;wood_type=acacia" }, { - "id" : "minecraft:fence", - "blockRuntimeId" : 4728 + "blockState": "minecraft:fence;wood_type=dark_oak" }, { - "id" : "minecraft:nether_brick_fence", - "blockRuntimeId" : 5552 + "blockState": "minecraft:nether_brick_fence" }, { - "id" : "minecraft:crimson_fence", - "blockRuntimeId" : 3777 + "blockState": "minecraft:crimson_fence" }, { - "id" : "minecraft:warped_fence", - "blockRuntimeId" : 7330 + "blockState": "minecraft:warped_fence" }, { - "id" : "minecraft:fence_gate", - "blockRuntimeId" : 4729 + "blockState": "minecraft:fence_gate" }, { - "id" : "minecraft:spruce_fence_gate", - "blockRuntimeId" : 6764 + "blockState": "minecraft:spruce_fence_gate" }, { - "id" : "minecraft:birch_fence_gate", - "blockRuntimeId" : 400 + "blockState": "minecraft:birch_fence_gate" }, { - "id" : "minecraft:jungle_fence_gate", - "blockRuntimeId" : 5158 + "blockState": "minecraft:jungle_fence_gate" }, { - "id" : "minecraft:acacia_fence_gate", - "blockRuntimeId" : 44 + "blockState": "minecraft:acacia_fence_gate" }, { - "id" : "minecraft:dark_oak_fence_gate", - "blockRuntimeId" : 3930 + "blockState": "minecraft:dark_oak_fence_gate" }, { - "id" : "minecraft:crimson_fence_gate", - "blockRuntimeId" : 3778 + "blockState": "minecraft:crimson_fence_gate" }, { - "id" : "minecraft:warped_fence_gate", - "blockRuntimeId" : 7331 + "blockState": "minecraft:warped_fence_gate" }, { - "id" : "minecraft:normal_stone_stairs", - "blockRuntimeId" : 5571 + "blockState": "minecraft:normal_stone_stairs" }, { - "id" : "minecraft:stone_stairs", - "blockRuntimeId" : 7035 + "blockState": "minecraft:stone_stairs" }, { - "id" : "minecraft:mossy_cobblestone_stairs", - "blockRuntimeId" : 5533 + "blockState": "minecraft:mossy_cobblestone_stairs" }, { - "id" : "minecraft:oak_stairs", - "blockRuntimeId" : 5580 + "blockState": "minecraft:oak_stairs" }, { - "id" : "minecraft:spruce_stairs", - "blockRuntimeId" : 6796 + "blockState": "minecraft:spruce_stairs" }, { - "id" : "minecraft:birch_stairs", - "blockRuntimeId" : 432 + "blockState": "minecraft:birch_stairs" }, { - "id" : "minecraft:jungle_stairs", - "blockRuntimeId" : 5190 + "blockState": "minecraft:jungle_stairs" }, { - "id" : "minecraft:acacia_stairs", - "blockRuntimeId" : 76 + "blockState": "minecraft:acacia_stairs" }, { - "id" : "minecraft:dark_oak_stairs", - "blockRuntimeId" : 3962 + "blockState": "minecraft:dark_oak_stairs" }, { - "id" : "minecraft:stone_brick_stairs", - "blockRuntimeId" : 6941 + "blockState": "minecraft:stone_brick_stairs" }, { - "id" : "minecraft:mossy_stone_brick_stairs", - "blockRuntimeId" : 5541 + "blockState": "minecraft:mossy_stone_brick_stairs" }, { - "id" : "minecraft:sandstone_stairs", - "blockRuntimeId" : 6533 + "blockState": "minecraft:sandstone_stairs" }, { - "id" : "minecraft:smooth_sandstone_stairs", - "blockRuntimeId" : 6657 + "blockState": "minecraft:smooth_sandstone_stairs" }, { - "id" : "minecraft:red_sandstone_stairs", - "blockRuntimeId" : 6460 + "blockState": "minecraft:red_sandstone_stairs" }, { - "id" : "minecraft:smooth_red_sandstone_stairs", - "blockRuntimeId" : 6649 + "blockState": "minecraft:smooth_red_sandstone_stairs" }, { - "id" : "minecraft:granite_stairs", - "blockRuntimeId" : 4914 + "blockState": "minecraft:granite_stairs" }, { - "id" : "minecraft:polished_granite_stairs", - "blockRuntimeId" : 6229 + "blockState": "minecraft:polished_granite_stairs" }, { - "id" : "minecraft:diorite_stairs", - "blockRuntimeId" : 4425 + "blockState": "minecraft:diorite_stairs" }, { - "id" : "minecraft:polished_diorite_stairs", - "blockRuntimeId" : 6221 + "blockState": "minecraft:polished_diorite_stairs" }, { - "id" : "minecraft:andesite_stairs", - "blockRuntimeId" : 144 + "blockState": "minecraft:andesite_stairs" }, { - "id" : "minecraft:polished_andesite_stairs", - "blockRuntimeId" : 5657 + "blockState": "minecraft:polished_andesite_stairs" }, { - "id" : "minecraft:brick_stairs", - "blockRuntimeId" : 856 + "blockState": "minecraft:brick_stairs" }, { - "id" : "minecraft:nether_brick_stairs", - "blockRuntimeId" : 5553 + "blockState": "minecraft:nether_brick_stairs" }, { - "id" : "minecraft:red_nether_brick_stairs", - "blockRuntimeId" : 6448 + "blockState": "minecraft:red_nether_brick_stairs" }, { - "id" : "minecraft:end_brick_stairs", - "blockRuntimeId" : 4669 + "blockState": "minecraft:end_brick_stairs" }, { - "id" : "minecraft:quartz_stairs", - "blockRuntimeId" : 6392 + "blockState": "minecraft:quartz_stairs" }, { - "id" : "minecraft:smooth_quartz_stairs", - "blockRuntimeId" : 6641 + "blockState": "minecraft:smooth_quartz_stairs" }, { - "id" : "minecraft:purpur_stairs", - "blockRuntimeId" : 6370 + "blockState": "minecraft:purpur_stairs" }, { - "id" : "minecraft:prismarine_stairs", - "blockRuntimeId" : 6292 + "blockState": "minecraft:prismarine_stairs" }, { - "id" : "minecraft:dark_prismarine_stairs", - "blockRuntimeId" : 3986 + "blockState": "minecraft:dark_prismarine_stairs" }, { - "id" : "minecraft:prismarine_bricks_stairs", - "blockRuntimeId" : 6284 + "blockState": "minecraft:prismarine_bricks_stairs" }, { - "id" : "minecraft:crimson_stairs", - "blockRuntimeId" : 3819 + "blockState": "minecraft:crimson_stairs" }, { - "id" : "minecraft:warped_stairs", - "blockRuntimeId" : 7372 + "blockState": "minecraft:warped_stairs" }, { - "id" : "minecraft:blackstone_stairs", - "blockRuntimeId" : 489 + "blockState": "minecraft:blackstone_stairs" }, { - "id" : "minecraft:polished_blackstone_stairs", - "blockRuntimeId" : 5876 + "blockState": "minecraft:polished_blackstone_stairs" }, { - "id" : "minecraft:polished_blackstone_brick_stairs", - "blockRuntimeId" : 5673 + "blockState": "minecraft:polished_blackstone_brick_stairs" }, { - "id" : "minecraft:cut_copper_stairs", - "blockRuntimeId" : 3872 + "blockState": "minecraft:cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" }, { - "id" : "minecraft:exposed_cut_copper_stairs", - "blockRuntimeId" : 4705 + "blockState": "minecraft:exposed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" }, { - "id" : "minecraft:weathered_cut_copper_stairs", - "blockRuntimeId" : 7499 + "blockState": "minecraft:weathered_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" }, { - "id" : "minecraft:oxidized_cut_copper_stairs", - "blockRuntimeId" : 5611 + "blockState": "minecraft:oxidized_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" }, { - "id" : "minecraft:waxed_cut_copper_stairs", - "blockRuntimeId" : 7443 + "blockState": "minecraft:waxed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" }, { - "id" : "minecraft:waxed_exposed_cut_copper_stairs", - "blockRuntimeId" : 7457 + "blockState": "minecraft:waxed_exposed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" }, { - "id" : "minecraft:waxed_weathered_cut_copper_stairs", - "blockRuntimeId" : 7485 + "blockState": "minecraft:waxed_weathered_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" }, { - "id" : "minecraft:waxed_oxidized_cut_copper_stairs", - "blockRuntimeId" : 7471 + "blockState": "minecraft:waxed_oxidized_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" }, { - "id" : "minecraft:cobbled_deepslate_stairs", - "blockRuntimeId" : 1107 + "blockState": "minecraft:cobbled_deepslate_stairs;upside_down_bit=0;weirdo_direction=0" }, { - "id" : "minecraft:deepslate_tile_stairs", - "blockRuntimeId" : 4239 + "blockState": "minecraft:deepslate_tile_stairs;upside_down_bit=0;weirdo_direction=0" }, { - "id" : "minecraft:polished_deepslate_stairs", - "blockRuntimeId" : 6051 + "blockState": "minecraft:polished_deepslate_stairs;upside_down_bit=0;weirdo_direction=0" }, { - "id" : "minecraft:deepslate_brick_stairs", - "blockRuntimeId" : 4056 + "blockState": "minecraft:deepslate_brick_stairs;upside_down_bit=0;weirdo_direction=0" }, { - "id" : "minecraft:wooden_door" + "id": "minecraft:wooden_door" }, { - "id" : "minecraft:spruce_door" + "id": "minecraft:spruce_door" }, { - "id" : "minecraft:birch_door" + "id": "minecraft:birch_door" }, { - "id" : "minecraft:jungle_door" + "id": "minecraft:jungle_door" }, { - "id" : "minecraft:acacia_door" + "id": "minecraft:acacia_door" }, { - "id" : "minecraft:dark_oak_door" + "id": "minecraft:dark_oak_door" }, { - "id" : "minecraft:iron_door" + "id": "minecraft:iron_door" }, { - "id" : "minecraft:crimson_door" + "id": "minecraft:crimson_door" }, { - "id" : "minecraft:warped_door" + "id": "minecraft:warped_door" }, { - "id" : "minecraft:trapdoor", - "blockRuntimeId" : 7117 + "blockState": "minecraft:trapdoor" }, { - "id" : "minecraft:spruce_trapdoor", - "blockRuntimeId" : 6820 + "blockState": "minecraft:spruce_trapdoor" }, { - "id" : "minecraft:birch_trapdoor", - "blockRuntimeId" : 456 + "blockState": "minecraft:birch_trapdoor" }, { - "id" : "minecraft:jungle_trapdoor", - "blockRuntimeId" : 5214 + "blockState": "minecraft:jungle_trapdoor" }, { - "id" : "minecraft:acacia_trapdoor", - "blockRuntimeId" : 100 + "blockState": "minecraft:acacia_trapdoor" }, { - "id" : "minecraft:dark_oak_trapdoor", - "blockRuntimeId" : 3970 + "blockState": "minecraft:dark_oak_trapdoor" }, { - "id" : "minecraft:iron_trapdoor", - "blockRuntimeId" : 5073 + "blockState": "minecraft:iron_trapdoor" }, { - "id" : "minecraft:crimson_trapdoor", - "blockRuntimeId" : 3846 + "blockState": "minecraft:crimson_trapdoor" }, { - "id" : "minecraft:warped_trapdoor", - "blockRuntimeId" : 7399 + "blockState": "minecraft:warped_trapdoor" }, { - "id" : "minecraft:iron_bars", - "blockRuntimeId" : 5038 + "blockState": "minecraft:iron_bars" }, { - "id" : "minecraft:glass", - "blockRuntimeId" : 4820 + "blockState": "minecraft:glass" }, { - "id" : "minecraft:stained_glass", - "blockRuntimeId" : 6842 + "blockState": "minecraft:stained_glass" }, { - "id" : "minecraft:stained_glass", - "blockRuntimeId" : 6850 + "blockState": "minecraft:stained_glass;color=silver" }, { - "id" : "minecraft:stained_glass", - "blockRuntimeId" : 6849 + "blockState": "minecraft:stained_glass;color=gray" }, { - "id" : "minecraft:stained_glass", - "blockRuntimeId" : 6857 + "blockState": "minecraft:stained_glass;color=black" }, { - "id" : "minecraft:stained_glass", - "blockRuntimeId" : 6854 + "blockState": "minecraft:stained_glass;color=brown" }, { - "id" : "minecraft:stained_glass", - "blockRuntimeId" : 6856 + "blockState": "minecraft:stained_glass;color=red" }, { - "id" : "minecraft:stained_glass", - "blockRuntimeId" : 6843 + "blockState": "minecraft:stained_glass;color=orange" }, { - "id" : "minecraft:stained_glass", - "blockRuntimeId" : 6846 + "blockState": "minecraft:stained_glass;color=yellow" }, { - "id" : "minecraft:stained_glass", - "blockRuntimeId" : 6847 + "blockState": "minecraft:stained_glass;color=lime" }, { - "id" : "minecraft:stained_glass", - "blockRuntimeId" : 6855 + "blockState": "minecraft:stained_glass;color=green" }, { - "id" : "minecraft:stained_glass", - "blockRuntimeId" : 6851 + "blockState": "minecraft:stained_glass;color=cyan" }, { - "id" : "minecraft:stained_glass", - "blockRuntimeId" : 6845 + "blockState": "minecraft:stained_glass;color=light_blue" }, { - "id" : "minecraft:stained_glass", - "blockRuntimeId" : 6853 + "blockState": "minecraft:stained_glass;color=blue" }, { - "id" : "minecraft:stained_glass", - "blockRuntimeId" : 6852 + "blockState": "minecraft:stained_glass;color=purple" }, { - "id" : "minecraft:stained_glass", - "blockRuntimeId" : 6844 + "blockState": "minecraft:stained_glass;color=magenta" }, { - "id" : "minecraft:stained_glass", - "blockRuntimeId" : 6848 + "blockState": "minecraft:stained_glass;color=pink" }, { - "id" : "minecraft:tinted_glass", - "blockRuntimeId" : 7106 + "blockState": "minecraft:tinted_glass" }, { - "id" : "minecraft:glass_pane", - "blockRuntimeId" : 4821 + "blockState": "minecraft:glass_pane" }, { - "id" : "minecraft:stained_glass_pane", - "blockRuntimeId" : 6858 + "blockState": "minecraft:stained_glass_pane" }, { - "id" : "minecraft:stained_glass_pane", - "blockRuntimeId" : 6866 + "blockState": "minecraft:stained_glass_pane;color=silver" }, { - "id" : "minecraft:stained_glass_pane", - "blockRuntimeId" : 6865 + "blockState": "minecraft:stained_glass_pane;color=gray" }, { - "id" : "minecraft:stained_glass_pane", - "blockRuntimeId" : 6873 + "blockState": "minecraft:stained_glass_pane;color=black" }, { - "id" : "minecraft:stained_glass_pane", - "blockRuntimeId" : 6870 + "blockState": "minecraft:stained_glass_pane;color=brown" }, { - "id" : "minecraft:stained_glass_pane", - "blockRuntimeId" : 6872 + "blockState": "minecraft:stained_glass_pane;color=red" }, { - "id" : "minecraft:stained_glass_pane", - "blockRuntimeId" : 6859 + "blockState": "minecraft:stained_glass_pane;color=orange" }, { - "id" : "minecraft:stained_glass_pane", - "blockRuntimeId" : 6862 + "blockState": "minecraft:stained_glass_pane;color=yellow" }, { - "id" : "minecraft:stained_glass_pane", - "blockRuntimeId" : 6863 + "blockState": "minecraft:stained_glass_pane;color=lime" }, { - "id" : "minecraft:stained_glass_pane", - "blockRuntimeId" : 6871 + "blockState": "minecraft:stained_glass_pane;color=green" }, { - "id" : "minecraft:stained_glass_pane", - "blockRuntimeId" : 6867 + "blockState": "minecraft:stained_glass_pane;color=cyan" }, { - "id" : "minecraft:stained_glass_pane", - "blockRuntimeId" : 6861 + "blockState": "minecraft:stained_glass_pane;color=light_blue" }, { - "id" : "minecraft:stained_glass_pane", - "blockRuntimeId" : 6869 + "blockState": "minecraft:stained_glass_pane;color=blue" }, { - "id" : "minecraft:stained_glass_pane", - "blockRuntimeId" : 6868 + "blockState": "minecraft:stained_glass_pane;color=purple" }, { - "id" : "minecraft:stained_glass_pane", - "blockRuntimeId" : 6860 + "blockState": "minecraft:stained_glass_pane;color=magenta" }, { - "id" : "minecraft:stained_glass_pane", - "blockRuntimeId" : 6864 + "blockState": "minecraft:stained_glass_pane;color=pink" }, { - "id" : "minecraft:ladder", - "blockRuntimeId" : 5262 + "blockState": "minecraft:ladder" }, { - "id" : "minecraft:scaffolding", - "blockRuntimeId" : 6553 + "blockState": "minecraft:scaffolding" }, { - "id" : "minecraft:double_stone_slab", - "blockRuntimeId" : 6977 + "blockState": "minecraft:stone_slab" }, { - "id" : "minecraft:double_stone_slab4", - "blockRuntimeId" : 7027 + "blockState": "minecraft:stone_slab4;stone_slab_type_4=stone" }, { - "id" : "minecraft:double_stone_slab", - "blockRuntimeId" : 6980 + "blockState": "minecraft:stone_slab;stone_slab_type=cobblestone" }, { - "id" : "minecraft:double_stone_slab2", - "blockRuntimeId" : 6998 + "blockState": "minecraft:stone_slab2;stone_slab_type_2=mossy_cobblestone" }, { - "id" : "minecraft:wooden_slab", - "blockRuntimeId" : 7647 + "blockState": "minecraft:wooden_slab" }, { - "id" : "minecraft:wooden_slab", - "blockRuntimeId" : 7648 + "blockState": "minecraft:wooden_slab;wood_type=spruce" }, { - "id" : "minecraft:wooden_slab", - "blockRuntimeId" : 7649 + "blockState": "minecraft:wooden_slab;wood_type=birch" }, { - "id" : "minecraft:wooden_slab", - "blockRuntimeId" : 7650 + "blockState": "minecraft:wooden_slab;wood_type=jungle" }, { - "id" : "minecraft:wooden_slab", - "blockRuntimeId" : 7651 + "blockState": "minecraft:wooden_slab;wood_type=acacia" }, { - "id" : "minecraft:wooden_slab", - "blockRuntimeId" : 7652 + "blockState": "minecraft:wooden_slab;wood_type=dark_oak" }, { - "id" : "minecraft:double_stone_slab", - "blockRuntimeId" : 6982 + "blockState": "minecraft:stone_slab;stone_slab_type=stone_brick" }, { - "id" : "minecraft:double_stone_slab4", - "blockRuntimeId" : 7025 + "blockState": "minecraft:stone_slab4" }, { - "id" : "minecraft:double_stone_slab", - "blockRuntimeId" : 6978 + "blockState": "minecraft:stone_slab;stone_slab_type=sandstone" }, { - "id" : "minecraft:double_stone_slab4", - "blockRuntimeId" : 7028 + "blockState": "minecraft:stone_slab4;stone_slab_type_4=cut_sandstone" }, { - "id" : "minecraft:double_stone_slab2", - "blockRuntimeId" : 6999 + "blockState": "minecraft:stone_slab2;stone_slab_type_2=smooth_sandstone" }, { - "id" : "minecraft:double_stone_slab2", - "blockRuntimeId" : 6993 + "blockState": "minecraft:stone_slab2" }, { - "id" : "minecraft:double_stone_slab4", - "blockRuntimeId" : 7029 + "blockState": "minecraft:stone_slab4;stone_slab_type_4=cut_red_sandstone" }, { - "id" : "minecraft:double_stone_slab3", - "blockRuntimeId" : 7010 + "blockState": "minecraft:stone_slab3;stone_slab_type_3=smooth_red_sandstone" }, { - "id" : "minecraft:double_stone_slab3", - "blockRuntimeId" : 7015 + "blockState": "minecraft:stone_slab3;stone_slab_type_3=granite" }, { - "id" : "minecraft:double_stone_slab3", - "blockRuntimeId" : 7016 + "blockState": "minecraft:stone_slab3;stone_slab_type_3=polished_granite" }, { - "id" : "minecraft:double_stone_slab3", - "blockRuntimeId" : 7013 + "blockState": "minecraft:stone_slab3;stone_slab_type_3=diorite" }, { - "id" : "minecraft:double_stone_slab3", - "blockRuntimeId" : 7014 + "blockState": "minecraft:stone_slab3;stone_slab_type_3=polished_diorite" }, { - "id" : "minecraft:double_stone_slab3", - "blockRuntimeId" : 7012 + "blockState": "minecraft:stone_slab3;stone_slab_type_3=andesite" }, { - "id" : "minecraft:double_stone_slab3", - "blockRuntimeId" : 7011 + "blockState": "minecraft:stone_slab3;stone_slab_type_3=polished_andesite" }, { - "id" : "minecraft:double_stone_slab", - "blockRuntimeId" : 6981 + "blockState": "minecraft:stone_slab;stone_slab_type=brick" }, { - "id" : "minecraft:double_stone_slab", - "blockRuntimeId" : 6984 + "blockState": "minecraft:stone_slab;stone_slab_type=nether_brick" }, { - "id" : "minecraft:double_stone_slab2", - "blockRuntimeId" : 7000 + "blockState": "minecraft:stone_slab2;stone_slab_type_2=red_nether_brick" }, { - "id" : "minecraft:double_stone_slab3", - "blockRuntimeId" : 7009 + "blockState": "minecraft:stone_slab3" }, { - "id" : "minecraft:double_stone_slab", - "blockRuntimeId" : 6983 + "blockState": "minecraft:stone_slab;stone_slab_type=quartz" }, { - "id" : "minecraft:double_stone_slab4", - "blockRuntimeId" : 7026 + "blockState": "minecraft:stone_slab4;stone_slab_type_4=smooth_quartz" }, { - "id" : "minecraft:double_stone_slab2", - "blockRuntimeId" : 6994 + "blockState": "minecraft:stone_slab2;stone_slab_type_2=purpur" }, { - "id" : "minecraft:double_stone_slab2", - "blockRuntimeId" : 6995 + "blockState": "minecraft:stone_slab2;stone_slab_type_2=prismarine_rough" }, { - "id" : "minecraft:double_stone_slab2", - "blockRuntimeId" : 6996 + "blockState": "minecraft:stone_slab2;stone_slab_type_2=prismarine_dark" }, { - "id" : "minecraft:double_stone_slab2", - "blockRuntimeId" : 6997 + "blockState": "minecraft:stone_slab2;stone_slab_type_2=prismarine_brick" }, { - "id" : "minecraft:crimson_slab", - "blockRuntimeId" : 3817 + "blockState": "minecraft:crimson_slab" }, { - "id" : "minecraft:warped_slab", - "blockRuntimeId" : 7370 + "blockState": "minecraft:warped_slab" }, { - "id" : "minecraft:blackstone_slab", - "blockRuntimeId" : 487 + "blockState": "minecraft:blackstone_slab" }, { - "id" : "minecraft:polished_blackstone_slab", - "blockRuntimeId" : 5874 + "blockState": "minecraft:polished_blackstone_slab" }, { - "id" : "minecraft:polished_blackstone_brick_slab", - "blockRuntimeId" : 5671 + "blockState": "minecraft:polished_blackstone_brick_slab" }, { - "id" : "minecraft:cut_copper_slab", - "blockRuntimeId" : 3870 + "blockState": "minecraft:cut_copper_slab;top_slot_bit=0" }, { - "id" : "minecraft:exposed_cut_copper_slab", - "blockRuntimeId" : 4703 + "blockState": "minecraft:exposed_cut_copper_slab;top_slot_bit=0" }, { - "id" : "minecraft:weathered_cut_copper_slab", - "blockRuntimeId" : 7497 + "blockState": "minecraft:weathered_cut_copper_slab;top_slot_bit=0" }, { - "id" : "minecraft:oxidized_cut_copper_slab", - "blockRuntimeId" : 5609 + "blockState": "minecraft:oxidized_cut_copper_slab;top_slot_bit=0" }, { - "id" : "minecraft:waxed_cut_copper_slab", - "blockRuntimeId" : 7441 + "blockState": "minecraft:waxed_cut_copper_slab;top_slot_bit=0" }, { - "id" : "minecraft:waxed_exposed_cut_copper_slab", - "blockRuntimeId" : 7455 + "blockState": "minecraft:waxed_exposed_cut_copper_slab;top_slot_bit=0" }, { - "id" : "minecraft:waxed_weathered_cut_copper_slab", - "blockRuntimeId" : 7483 + "blockState": "minecraft:waxed_weathered_cut_copper_slab;top_slot_bit=0" }, { - "id" : "minecraft:waxed_oxidized_cut_copper_slab", - "blockRuntimeId" : 7469 + "blockState": "minecraft:waxed_oxidized_cut_copper_slab;top_slot_bit=0" }, { - "id" : "minecraft:cobbled_deepslate_slab", - "blockRuntimeId" : 1105 + "blockState": "minecraft:cobbled_deepslate_slab;top_slot_bit=0" }, { - "id" : "minecraft:polished_deepslate_slab", - "blockRuntimeId" : 6049 + "blockState": "minecraft:polished_deepslate_slab;top_slot_bit=0" }, { - "id" : "minecraft:deepslate_tile_slab", - "blockRuntimeId" : 4237 + "blockState": "minecraft:deepslate_tile_slab;top_slot_bit=0" }, { - "id" : "minecraft:deepslate_brick_slab", - "blockRuntimeId" : 4054 + "blockState": "minecraft:deepslate_brick_slab;top_slot_bit=0" }, { - "id" : "minecraft:brick_block", - "blockRuntimeId" : 855 + "blockState": "minecraft:brick_block" }, { - "id" : "minecraft:chiseled_nether_bricks", - "blockRuntimeId" : 1090 + "blockState": "minecraft:chiseled_nether_bricks" }, { - "id" : "minecraft:cracked_nether_bricks", - "blockRuntimeId" : 3728 + "blockState": "minecraft:cracked_nether_bricks" }, { - "id" : "minecraft:quartz_bricks", - "blockRuntimeId" : 6390 + "blockState": "minecraft:quartz_bricks" }, { - "id" : "minecraft:stonebrick", - "blockRuntimeId" : 7043 + "blockState": "minecraft:stonebrick" }, { - "id" : "minecraft:stonebrick", - "blockRuntimeId" : 7044 + "blockState": "minecraft:stonebrick;stone_brick_type=mossy" }, { - "id" : "minecraft:stonebrick", - "blockRuntimeId" : 7045 + "blockState": "minecraft:stonebrick;stone_brick_type=cracked" }, { - "id" : "minecraft:stonebrick", - "blockRuntimeId" : 7046 + "blockState": "minecraft:stonebrick;stone_brick_type=chiseled" }, { - "id" : "minecraft:end_bricks", - "blockRuntimeId" : 4677 + "blockState": "minecraft:end_bricks" }, { - "id" : "minecraft:prismarine", - "blockRuntimeId" : 6283 + "blockState": "minecraft:prismarine;prismarine_block_type=bricks" }, { - "id" : "minecraft:polished_blackstone_bricks", - "blockRuntimeId" : 5843 + "blockState": "minecraft:polished_blackstone_bricks" }, { - "id" : "minecraft:cracked_polished_blackstone_bricks", - "blockRuntimeId" : 3729 + "blockState": "minecraft:cracked_polished_blackstone_bricks" }, { - "id" : "minecraft:gilded_blackstone", - "blockRuntimeId" : 4819 + "blockState": "minecraft:gilded_blackstone" }, { - "id" : "minecraft:chiseled_polished_blackstone", - "blockRuntimeId" : 1091 + "blockState": "minecraft:chiseled_polished_blackstone" }, { - "id" : "minecraft:deepslate_tiles", - "blockRuntimeId" : 4409 + "blockState": "minecraft:deepslate_tiles" }, { - "id" : "minecraft:cracked_deepslate_tiles", - "blockRuntimeId" : 3727 + "blockState": "minecraft:cracked_deepslate_tiles" }, { - "id" : "minecraft:deepslate_bricks", - "blockRuntimeId" : 4226 + "blockState": "minecraft:deepslate_bricks" }, { - "id" : "minecraft:cracked_deepslate_bricks", - "blockRuntimeId" : 3726 + "blockState": "minecraft:cracked_deepslate_bricks" }, { - "id" : "minecraft:chiseled_deepslate", - "blockRuntimeId" : 1089 + "blockState": "minecraft:chiseled_deepslate" }, { - "id" : "minecraft:cobblestone", - "blockRuntimeId" : 1277 + "blockState": "minecraft:cobblestone" }, { - "id" : "minecraft:mossy_cobblestone", - "blockRuntimeId" : 5532 + "blockState": "minecraft:mossy_cobblestone" }, { - "id" : "minecraft:cobbled_deepslate", - "blockRuntimeId" : 1102 + "blockState": "minecraft:cobbled_deepslate" }, { - "id" : "minecraft:smooth_stone", - "blockRuntimeId" : 6665 + "blockState": "minecraft:smooth_stone" }, { - "id" : "minecraft:sandstone", - "blockRuntimeId" : 6529 + "blockState": "minecraft:sandstone" }, { - "id" : "minecraft:sandstone", - "blockRuntimeId" : 6530 + "blockState": "minecraft:sandstone;sand_stone_type=heiroglyphs" }, { - "id" : "minecraft:sandstone", - "blockRuntimeId" : 6531 + "blockState": "minecraft:sandstone;sand_stone_type=cut" }, { - "id" : "minecraft:sandstone", - "blockRuntimeId" : 6532 + "blockState": "minecraft:sandstone;sand_stone_type=smooth" }, { - "id" : "minecraft:red_sandstone", - "blockRuntimeId" : 6456 + "blockState": "minecraft:red_sandstone" }, { - "id" : "minecraft:red_sandstone", - "blockRuntimeId" : 6457 + "blockState": "minecraft:red_sandstone;sand_stone_type=heiroglyphs" }, { - "id" : "minecraft:red_sandstone", - "blockRuntimeId" : 6458 + "blockState": "minecraft:red_sandstone;sand_stone_type=cut" }, { - "id" : "minecraft:red_sandstone", - "blockRuntimeId" : 6459 + "blockState": "minecraft:red_sandstone;sand_stone_type=smooth" }, { - "id" : "minecraft:coal_block", - "blockRuntimeId" : 1100 + "blockState": "minecraft:coal_block" }, { - "id" : "minecraft:dried_kelp_block", - "blockRuntimeId" : 4533 + "blockState": "minecraft:dried_kelp_block" }, { - "id" : "minecraft:gold_block", - "blockRuntimeId" : 4900 + "blockState": "minecraft:gold_block" }, { - "id" : "minecraft:iron_block", - "blockRuntimeId" : 5039 + "blockState": "minecraft:iron_block" }, { - "id" : "minecraft:copper_block", - "blockRuntimeId" : 3636 + "blockState": "minecraft:copper_block" }, { - "id" : "minecraft:exposed_copper", - "blockRuntimeId" : 4701 + "blockState": "minecraft:exposed_copper" }, { - "id" : "minecraft:weathered_copper", - "blockRuntimeId" : 7495 + "blockState": "minecraft:weathered_copper" }, { - "id" : "minecraft:oxidized_copper", - "blockRuntimeId" : 5607 + "blockState": "minecraft:oxidized_copper" }, { - "id" : "minecraft:waxed_copper", - "blockRuntimeId" : 7439 + "blockState": "minecraft:waxed_copper" }, { - "id" : "minecraft:waxed_exposed_copper", - "blockRuntimeId" : 7453 + "blockState": "minecraft:waxed_exposed_copper" }, { - "id" : "minecraft:waxed_weathered_copper", - "blockRuntimeId" : 7481 + "blockState": "minecraft:waxed_weathered_copper" }, { - "id" : "minecraft:waxed_oxidized_copper", - "blockRuntimeId" : 7467 + "blockState": "minecraft:waxed_oxidized_copper" }, { - "id" : "minecraft:cut_copper", - "blockRuntimeId" : 3869 + "blockState": "minecraft:cut_copper" }, { - "id" : "minecraft:exposed_cut_copper", - "blockRuntimeId" : 4702 + "blockState": "minecraft:exposed_cut_copper" }, { - "id" : "minecraft:weathered_cut_copper", - "blockRuntimeId" : 7496 + "blockState": "minecraft:weathered_cut_copper" }, { - "id" : "minecraft:oxidized_cut_copper", - "blockRuntimeId" : 5608 + "blockState": "minecraft:oxidized_cut_copper" }, { - "id" : "minecraft:waxed_cut_copper", - "blockRuntimeId" : 7440 + "blockState": "minecraft:waxed_cut_copper" }, { - "id" : "minecraft:waxed_exposed_cut_copper", - "blockRuntimeId" : 7454 + "blockState": "minecraft:waxed_exposed_cut_copper" }, { - "id" : "minecraft:waxed_weathered_cut_copper", - "blockRuntimeId" : 7482 + "blockState": "minecraft:waxed_weathered_cut_copper" }, { - "id" : "minecraft:waxed_oxidized_cut_copper", - "blockRuntimeId" : 7468 + "blockState": "minecraft:waxed_oxidized_cut_copper" }, { - "id" : "minecraft:emerald_block", - "blockRuntimeId" : 4666 + "blockState": "minecraft:emerald_block" }, { - "id" : "minecraft:diamond_block", - "blockRuntimeId" : 4423 + "blockState": "minecraft:diamond_block" }, { - "id" : "minecraft:lapis_block", - "blockRuntimeId" : 5270 + "blockState": "minecraft:lapis_block" }, { - "id" : "minecraft:raw_iron_block", - "blockRuntimeId" : 6412 + "blockState": "minecraft:raw_iron_block" }, { - "id" : "minecraft:raw_copper_block", - "blockRuntimeId" : 6410 + "blockState": "minecraft:raw_copper_block" }, { - "id" : "minecraft:raw_gold_block", - "blockRuntimeId" : 6411 + "blockState": "minecraft:raw_gold_block" }, { - "id" : "minecraft:quartz_block", - "blockRuntimeId" : 6378 + "blockState": "minecraft:quartz_block" }, { - "id" : "minecraft:quartz_block", - "blockRuntimeId" : 6380 + "blockState": "minecraft:quartz_block;chisel_type=lines" }, { - "id" : "minecraft:quartz_block", - "blockRuntimeId" : 6379 + "blockState": "minecraft:quartz_block;chisel_type=chiseled" }, { - "id" : "minecraft:quartz_block", - "blockRuntimeId" : 6381 + "blockState": "minecraft:quartz_block;chisel_type=smooth" }, { - "id" : "minecraft:prismarine", - "blockRuntimeId" : 6281 + "blockState": "minecraft:prismarine" }, { - "id" : "minecraft:prismarine", - "blockRuntimeId" : 6282 + "blockState": "minecraft:prismarine;prismarine_block_type=dark" }, { - "id" : "minecraft:slime", - "blockRuntimeId" : 6618 + "blockState": "minecraft:slime" }, { - "id" : "minecraft:honey_block", - "blockRuntimeId" : 5017 + "blockState": "minecraft:honey_block" }, { - "id" : "minecraft:honeycomb_block", - "blockRuntimeId" : 5018 + "blockState": "minecraft:honeycomb_block" }, { - "id" : "minecraft:hay_block", - "blockRuntimeId" : 4989 + "blockState": "minecraft:hay_block" }, { - "id" : "minecraft:bone_block", - "blockRuntimeId" : 672 + "blockState": "minecraft:bone_block" }, { - "id" : "minecraft:nether_brick", - "blockRuntimeId" : 5551 + "blockState": "minecraft:nether_brick" }, { - "id" : "minecraft:red_nether_brick", - "blockRuntimeId" : 6447 + "blockState": "minecraft:red_nether_brick" }, { - "id" : "minecraft:netherite_block", - "blockRuntimeId" : 5568 + "blockState": "minecraft:netherite_block" }, { - "id" : "minecraft:lodestone", - "blockRuntimeId" : 5438 + "blockState": "minecraft:lodestone" }, { - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" }, { - "id" : "minecraft:wool", - "blockRuntimeId" : 7667 + "blockState": "minecraft:wool;color=silver" }, { - "id" : "minecraft:wool", - "blockRuntimeId" : 7666 + "blockState": "minecraft:wool;color=gray" }, { - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" }, { - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" }, { - "id" : "minecraft:wool", - "blockRuntimeId" : 7673 + "blockState": "minecraft:wool;color=red" }, { - "id" : "minecraft:wool", - "blockRuntimeId" : 7660 + "blockState": "minecraft:wool;color=orange" }, { - "id" : "minecraft:wool", - "blockRuntimeId" : 7663 + "blockState": "minecraft:wool;color=yellow" }, { - "id" : "minecraft:wool", - "blockRuntimeId" : 7664 + "blockState": "minecraft:wool;color=lime" }, { - "id" : "minecraft:wool", - "blockRuntimeId" : 7672 + "blockState": "minecraft:wool;color=green" }, { - "id" : "minecraft:wool", - "blockRuntimeId" : 7668 + "blockState": "minecraft:wool;color=cyan" }, { - "id" : "minecraft:wool", - "blockRuntimeId" : 7662 + "blockState": "minecraft:wool;color=light_blue" }, { - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" }, { - "id" : "minecraft:wool", - "blockRuntimeId" : 7669 + "blockState": "minecraft:wool;color=purple" }, { - "id" : "minecraft:wool", - "blockRuntimeId" : 7661 + "blockState": "minecraft:wool;color=magenta" }, { - "id" : "minecraft:wool", - "blockRuntimeId" : 7665 + "blockState": "minecraft:wool;color=pink" }, { - "id" : "minecraft:carpet", - "blockRuntimeId" : 923 + "blockState": "minecraft:carpet" }, { - "id" : "minecraft:carpet", - "blockRuntimeId" : 931 + "blockState": "minecraft:carpet;color=silver" }, { - "id" : "minecraft:carpet", - "blockRuntimeId" : 930 + "blockState": "minecraft:carpet;color=gray" }, { - "id" : "minecraft:carpet", - "blockRuntimeId" : 938 + "blockState": "minecraft:carpet;color=black" }, { - "id" : "minecraft:carpet", - "blockRuntimeId" : 935 + "blockState": "minecraft:carpet;color=brown" }, { - "id" : "minecraft:carpet", - "blockRuntimeId" : 937 + "blockState": "minecraft:carpet;color=red" }, { - "id" : "minecraft:carpet", - "blockRuntimeId" : 924 + "blockState": "minecraft:carpet;color=orange" }, { - "id" : "minecraft:carpet", - "blockRuntimeId" : 927 + "blockState": "minecraft:carpet;color=yellow" }, { - "id" : "minecraft:carpet", - "blockRuntimeId" : 928 + "blockState": "minecraft:carpet;color=lime" }, { - "id" : "minecraft:carpet", - "blockRuntimeId" : 936 + "blockState": "minecraft:carpet;color=green" }, { - "id" : "minecraft:carpet", - "blockRuntimeId" : 932 + "blockState": "minecraft:carpet;color=cyan" }, { - "id" : "minecraft:carpet", - "blockRuntimeId" : 926 + "blockState": "minecraft:carpet;color=light_blue" }, { - "id" : "minecraft:carpet", - "blockRuntimeId" : 934 + "blockState": "minecraft:carpet;color=blue" }, { - "id" : "minecraft:carpet", - "blockRuntimeId" : 933 + "blockState": "minecraft:carpet;color=purple" }, { - "id" : "minecraft:carpet", - "blockRuntimeId" : 925 + "blockState": "minecraft:carpet;color=magenta" }, { - "id" : "minecraft:carpet", - "blockRuntimeId" : 929 + "blockState": "minecraft:carpet;color=pink" }, { - "id" : "minecraft:concrete_powder", - "blockRuntimeId" : 3619 + "blockState": "minecraft:concrete_powder" }, { - "id" : "minecraft:concrete_powder", - "blockRuntimeId" : 3627 + "blockState": "minecraft:concrete_powder;color=silver" }, { - "id" : "minecraft:concrete_powder", - "blockRuntimeId" : 3626 + "blockState": "minecraft:concrete_powder;color=gray" }, { - "id" : "minecraft:concrete_powder", - "blockRuntimeId" : 3634 + "blockState": "minecraft:concrete_powder;color=black" }, { - "id" : "minecraft:concrete_powder", - "blockRuntimeId" : 3631 + "blockState": "minecraft:concrete_powder;color=brown" }, { - "id" : "minecraft:concrete_powder", - "blockRuntimeId" : 3633 + "blockState": "minecraft:concrete_powder;color=red" }, { - "id" : "minecraft:concrete_powder", - "blockRuntimeId" : 3620 + "blockState": "minecraft:concrete_powder;color=orange" }, { - "id" : "minecraft:concrete_powder", - "blockRuntimeId" : 3623 + "blockState": "minecraft:concrete_powder;color=yellow" }, { - "id" : "minecraft:concrete_powder", - "blockRuntimeId" : 3624 + "blockState": "minecraft:concrete_powder;color=lime" }, { - "id" : "minecraft:concrete_powder", - "blockRuntimeId" : 3632 + "blockState": "minecraft:concrete_powder;color=green" }, { - "id" : "minecraft:concrete_powder", - "blockRuntimeId" : 3628 + "blockState": "minecraft:concrete_powder;color=cyan" }, { - "id" : "minecraft:concrete_powder", - "blockRuntimeId" : 3622 + "blockState": "minecraft:concrete_powder;color=light_blue" }, { - "id" : "minecraft:concrete_powder", - "blockRuntimeId" : 3630 + "blockState": "minecraft:concrete_powder;color=blue" }, { - "id" : "minecraft:concrete_powder", - "blockRuntimeId" : 3629 + "blockState": "minecraft:concrete_powder;color=purple" }, { - "id" : "minecraft:concrete_powder", - "blockRuntimeId" : 3621 + "blockState": "minecraft:concrete_powder;color=magenta" }, { - "id" : "minecraft:concrete_powder", - "blockRuntimeId" : 3625 + "blockState": "minecraft:concrete_powder;color=pink" }, { - "id" : "minecraft:concrete", - "blockRuntimeId" : 3603 + "blockState": "minecraft:concrete" }, { - "id" : "minecraft:concrete", - "blockRuntimeId" : 3611 + "blockState": "minecraft:concrete;color=silver" }, { - "id" : "minecraft:concrete", - "blockRuntimeId" : 3610 + "blockState": "minecraft:concrete;color=gray" }, { - "id" : "minecraft:concrete", - "blockRuntimeId" : 3618 + "blockState": "minecraft:concrete;color=black" }, { - "id" : "minecraft:concrete", - "blockRuntimeId" : 3615 + "blockState": "minecraft:concrete;color=brown" }, { - "id" : "minecraft:concrete", - "blockRuntimeId" : 3617 + "blockState": "minecraft:concrete;color=red" }, { - "id" : "minecraft:concrete", - "blockRuntimeId" : 3604 + "blockState": "minecraft:concrete;color=orange" }, { - "id" : "minecraft:concrete", - "blockRuntimeId" : 3607 + "blockState": "minecraft:concrete;color=yellow" }, { - "id" : "minecraft:concrete", - "blockRuntimeId" : 3608 + "blockState": "minecraft:concrete;color=lime" }, { - "id" : "minecraft:concrete", - "blockRuntimeId" : 3616 + "blockState": "minecraft:concrete;color=green" }, { - "id" : "minecraft:concrete", - "blockRuntimeId" : 3612 + "blockState": "minecraft:concrete;color=cyan" }, { - "id" : "minecraft:concrete", - "blockRuntimeId" : 3606 + "blockState": "minecraft:concrete;color=light_blue" }, { - "id" : "minecraft:concrete", - "blockRuntimeId" : 3614 + "blockState": "minecraft:concrete;color=blue" }, { - "id" : "minecraft:concrete", - "blockRuntimeId" : 3613 + "blockState": "minecraft:concrete;color=purple" }, { - "id" : "minecraft:concrete", - "blockRuntimeId" : 3605 + "blockState": "minecraft:concrete;color=magenta" }, { - "id" : "minecraft:concrete", - "blockRuntimeId" : 3609 + "blockState": "minecraft:concrete;color=pink" }, { - "id" : "minecraft:clay", - "blockRuntimeId" : 1099 + "blockState": "minecraft:clay" }, { - "id" : "minecraft:hardened_clay", - "blockRuntimeId" : 4988 + "blockState": "minecraft:hardened_clay" }, { - "id" : "minecraft:stained_hardened_clay", - "blockRuntimeId" : 6874 + "blockState": "minecraft:stained_hardened_clay" }, { - "id" : "minecraft:stained_hardened_clay", - "blockRuntimeId" : 6882 + "blockState": "minecraft:stained_hardened_clay;color=silver" }, { - "id" : "minecraft:stained_hardened_clay", - "blockRuntimeId" : 6881 + "blockState": "minecraft:stained_hardened_clay;color=gray" }, { - "id" : "minecraft:stained_hardened_clay", - "blockRuntimeId" : 6889 + "blockState": "minecraft:stained_hardened_clay;color=black" }, { - "id" : "minecraft:stained_hardened_clay", - "blockRuntimeId" : 6886 + "blockState": "minecraft:stained_hardened_clay;color=brown" }, { - "id" : "minecraft:stained_hardened_clay", - "blockRuntimeId" : 6888 + "blockState": "minecraft:stained_hardened_clay;color=red" }, { - "id" : "minecraft:stained_hardened_clay", - "blockRuntimeId" : 6875 + "blockState": "minecraft:stained_hardened_clay;color=orange" }, { - "id" : "minecraft:stained_hardened_clay", - "blockRuntimeId" : 6878 + "blockState": "minecraft:stained_hardened_clay;color=yellow" }, { - "id" : "minecraft:stained_hardened_clay", - "blockRuntimeId" : 6879 + "blockState": "minecraft:stained_hardened_clay;color=lime" }, { - "id" : "minecraft:stained_hardened_clay", - "blockRuntimeId" : 6887 + "blockState": "minecraft:stained_hardened_clay;color=green" }, { - "id" : "minecraft:stained_hardened_clay", - "blockRuntimeId" : 6883 + "blockState": "minecraft:stained_hardened_clay;color=cyan" }, { - "id" : "minecraft:stained_hardened_clay", - "blockRuntimeId" : 6877 + "blockState": "minecraft:stained_hardened_clay;color=light_blue" }, { - "id" : "minecraft:stained_hardened_clay", - "blockRuntimeId" : 6885 + "blockState": "minecraft:stained_hardened_clay;color=blue" }, { - "id" : "minecraft:stained_hardened_clay", - "blockRuntimeId" : 6884 + "blockState": "minecraft:stained_hardened_clay;color=purple" }, { - "id" : "minecraft:stained_hardened_clay", - "blockRuntimeId" : 6876 + "blockState": "minecraft:stained_hardened_clay;color=magenta" }, { - "id" : "minecraft:stained_hardened_clay", - "blockRuntimeId" : 6880 + "blockState": "minecraft:stained_hardened_clay;color=pink" }, { - "id" : "minecraft:white_glazed_terracotta", - "blockRuntimeId" : 7544 + "blockState": "minecraft:white_glazed_terracotta" }, { - "id" : "minecraft:silver_glazed_terracotta", - "blockRuntimeId" : 6600 + "blockState": "minecraft:silver_glazed_terracotta" }, { - "id" : "minecraft:gray_glazed_terracotta", - "blockRuntimeId" : 4925 + "blockState": "minecraft:gray_glazed_terracotta" }, { - "id" : "minecraft:black_glazed_terracotta", - "blockRuntimeId" : 478 + "blockState": "minecraft:black_glazed_terracotta" }, { - "id" : "minecraft:brown_glazed_terracotta", - "blockRuntimeId" : 864 + "blockState": "minecraft:brown_glazed_terracotta" }, { - "id" : "minecraft:red_glazed_terracotta", - "blockRuntimeId" : 6424 + "blockState": "minecraft:red_glazed_terracotta" }, { - "id" : "minecraft:orange_glazed_terracotta", - "blockRuntimeId" : 5601 + "blockState": "minecraft:orange_glazed_terracotta" }, { - "id" : "minecraft:yellow_glazed_terracotta", - "blockRuntimeId" : 7676 + "blockState": "minecraft:yellow_glazed_terracotta" }, { - "id" : "minecraft:lime_glazed_terracotta", - "blockRuntimeId" : 5407 + "blockState": "minecraft:lime_glazed_terracotta" }, { - "id" : "minecraft:green_glazed_terracotta", - "blockRuntimeId" : 4931 + "blockState": "minecraft:green_glazed_terracotta" }, { - "id" : "minecraft:cyan_glazed_terracotta", - "blockRuntimeId" : 3880 + "blockState": "minecraft:cyan_glazed_terracotta" }, { - "id" : "minecraft:light_blue_glazed_terracotta", - "blockRuntimeId" : 5379 + "blockState": "minecraft:light_blue_glazed_terracotta" }, { - "id" : "minecraft:blue_glazed_terracotta", - "blockRuntimeId" : 665 + "blockState": "minecraft:blue_glazed_terracotta" }, { - "id" : "minecraft:purple_glazed_terracotta", - "blockRuntimeId" : 6352 + "blockState": "minecraft:purple_glazed_terracotta" }, { - "id" : "minecraft:magenta_glazed_terracotta", - "blockRuntimeId" : 5461 + "blockState": "minecraft:magenta_glazed_terracotta" }, { - "id" : "minecraft:pink_glazed_terracotta", - "blockRuntimeId" : 5622 + "blockState": "minecraft:pink_glazed_terracotta" }, { - "id" : "minecraft:purpur_block", - "blockRuntimeId" : 6358 + "blockState": "minecraft:purpur_block" }, { - "id" : "minecraft:purpur_block", - "blockRuntimeId" : 6360 + "blockState": "minecraft:purpur_block;chisel_type=lines" }, { - "id" : "minecraft:nether_wart_block", - "blockRuntimeId" : 5567 + "blockState": "minecraft:nether_wart_block" }, { - "id" : "minecraft:warped_wart_block", - "blockRuntimeId" : 7421 + "blockState": "minecraft:warped_wart_block" }, { - "id" : "minecraft:shroomlight", - "blockRuntimeId" : 6583 + "blockState": "minecraft:shroomlight" }, { - "id" : "minecraft:crimson_nylium", - "blockRuntimeId" : 3798 + "blockState": "minecraft:crimson_nylium" }, { - "id" : "minecraft:warped_nylium", - "blockRuntimeId" : 7351 + "blockState": "minecraft:warped_nylium" }, { - "id" : "minecraft:basalt", - "blockRuntimeId" : 214 + "blockState": "minecraft:basalt" }, { - "id" : "minecraft:polished_basalt", - "blockRuntimeId" : 5665 + "blockState": "minecraft:polished_basalt" }, { - "id" : "minecraft:smooth_basalt", - "blockRuntimeId" : 6640 + "blockState": "minecraft:smooth_basalt" }, { - "id" : "minecraft:soul_soil", - "blockRuntimeId" : 6710 + "blockState": "minecraft:soul_soil" }, { - "id" : "minecraft:dirt", - "blockRuntimeId" : 4433 + "blockState": "minecraft:dirt" }, { - "id" : "minecraft:dirt", - "blockRuntimeId" : 4434 + "blockState": "minecraft:dirt;dirt_type=coarse" }, { - "id" : "minecraft:farmland", - "blockRuntimeId" : 4715 + "blockState": "minecraft:farmland" }, { - "id" : "minecraft:grass", - "blockRuntimeId" : 4922 + "blockState": "minecraft:grass" }, { - "id" : "minecraft:grass_path", - "blockRuntimeId" : 4923 + "blockState": "minecraft:grass_path" }, { - "id" : "minecraft:podzol", - "blockRuntimeId" : 5646 + "blockState": "minecraft:podzol" }, { - "id" : "minecraft:mycelium", - "blockRuntimeId" : 5550 + "blockState": "minecraft:mycelium" }, { - "id" : "minecraft:stone", - "blockRuntimeId" : 6934 + "blockState": "minecraft:stone" }, { - "id" : "minecraft:iron_ore", - "blockRuntimeId" : 5072 + "blockState": "minecraft:iron_ore" }, { - "id" : "minecraft:gold_ore", - "blockRuntimeId" : 4901 + "blockState": "minecraft:gold_ore" }, { - "id" : "minecraft:diamond_ore", - "blockRuntimeId" : 4424 + "blockState": "minecraft:diamond_ore" }, { - "id" : "minecraft:lapis_ore", - "blockRuntimeId" : 5271 + "blockState": "minecraft:lapis_ore" }, { - "id" : "minecraft:redstone_ore", - "blockRuntimeId" : 6470 + "blockState": "minecraft:redstone_ore" }, { - "id" : "minecraft:coal_ore", - "blockRuntimeId" : 1101 + "blockState": "minecraft:coal_ore" }, { - "id" : "minecraft:emerald_ore", - "blockRuntimeId" : 4667 + "blockState": "minecraft:copper_ore" }, { - "id" : "minecraft:quartz_ore", - "blockRuntimeId" : 6391 + "blockState": "minecraft:emerald_ore" }, { - "id" : "minecraft:nether_gold_ore", - "blockRuntimeId" : 5561 + "blockState": "minecraft:quartz_ore" }, { - "id" : "minecraft:ancient_debris", - "blockRuntimeId" : 143 + "blockState": "minecraft:nether_gold_ore" }, { - "id" : "minecraft:copper_ore", - "blockRuntimeId" : 3637 + "blockState": "minecraft:ancient_debris" }, { - "id" : "minecraft:deepslate_iron_ore", - "blockRuntimeId" : 4232 + "blockState": "minecraft:deepslate_iron_ore" }, { - "id" : "minecraft:deepslate_gold_ore", - "blockRuntimeId" : 4231 + "blockState": "minecraft:deepslate_gold_ore" }, { - "id" : "minecraft:deepslate_diamond_ore", - "blockRuntimeId" : 4229 + "blockState": "minecraft:deepslate_diamond_ore" }, { - "id" : "minecraft:deepslate_lapis_ore", - "blockRuntimeId" : 4233 + "blockState": "minecraft:deepslate_lapis_ore" }, { - "id" : "minecraft:deepslate_redstone_ore", - "blockRuntimeId" : 4234 + "blockState": "minecraft:deepslate_redstone_ore" }, { - "id" : "minecraft:deepslate_emerald_ore", - "blockRuntimeId" : 4230 + "blockState": "minecraft:deepslate_emerald_ore" }, { - "id" : "minecraft:deepslate_coal_ore", - "blockRuntimeId" : 4227 + "blockState": "minecraft:deepslate_coal_ore" }, { - "id" : "minecraft:deepslate_copper_ore", - "blockRuntimeId" : 4228 + "blockState": "minecraft:deepslate_copper_ore" }, { - "id" : "minecraft:gravel", - "blockRuntimeId" : 4924 + "blockState": "minecraft:gravel" }, { - "id" : "minecraft:stone", - "blockRuntimeId" : 6935 + "blockState": "minecraft:stone;stone_type=granite" }, { - "id" : "minecraft:stone", - "blockRuntimeId" : 6937 + "blockState": "minecraft:stone;stone_type=diorite" }, { - "id" : "minecraft:stone", - "blockRuntimeId" : 6939 + "blockState": "minecraft:stone;stone_type=andesite" }, { - "id" : "minecraft:blackstone", - "blockRuntimeId" : 484 + "blockState": "minecraft:blackstone" }, { - "id" : "minecraft:stone", - "blockRuntimeId" : 6936 + "blockState": "minecraft:deepslate;pillar_axis=y" }, { - "id" : "minecraft:stone", - "blockRuntimeId" : 6938 + "blockState": "minecraft:stone;stone_type=granite_smooth" }, { - "id" : "minecraft:stone", - "blockRuntimeId" : 6940 + "blockState": "minecraft:stone;stone_type=diorite_smooth" }, { - "id" : "minecraft:polished_blackstone", - "blockRuntimeId" : 5668 + "blockState": "minecraft:stone;stone_type=andesite_smooth" }, { - "id" : "minecraft:deepslate", - "blockRuntimeId" : 4049 + "blockState": "minecraft:polished_blackstone" }, { - "id" : "minecraft:polished_deepslate", - "blockRuntimeId" : 6046 + "blockState": "minecraft:polished_deepslate" }, { - "id" : "minecraft:sand", - "blockRuntimeId" : 6527 + "blockState": "minecraft:sand" }, { - "id" : "minecraft:sand", - "blockRuntimeId" : 6528 + "blockState": "minecraft:sand;sand_type=red" }, { - "id" : "minecraft:cactus", - "blockRuntimeId" : 890 + "blockState": "minecraft:cactus" }, { - "id" : "minecraft:log", - "blockRuntimeId" : 5439 + "blockState": "minecraft:log" }, { - "id" : "minecraft:stripped_oak_log", - "blockRuntimeId" : 7073 + "blockState": "minecraft:stripped_oak_log" }, { - "id" : "minecraft:log", - "blockRuntimeId" : 5440 + "blockState": "minecraft:log;old_log_type=spruce" }, { - "id" : "minecraft:stripped_spruce_log", - "blockRuntimeId" : 7076 + "blockState": "minecraft:stripped_spruce_log" }, { - "id" : "minecraft:log", - "blockRuntimeId" : 5441 + "blockState": "minecraft:log;old_log_type=birch" }, { - "id" : "minecraft:stripped_birch_log", - "blockRuntimeId" : 7058 + "blockState": "minecraft:stripped_birch_log" }, { - "id" : "minecraft:log", - "blockRuntimeId" : 5442 + "blockState": "minecraft:log;old_log_type=jungle" }, { - "id" : "minecraft:stripped_jungle_log", - "blockRuntimeId" : 7070 + "blockState": "minecraft:stripped_jungle_log" }, { - "id" : "minecraft:log2", - "blockRuntimeId" : 5451 + "blockState": "minecraft:log2" }, { - "id" : "minecraft:stripped_acacia_log", - "blockRuntimeId" : 7055 + "blockState": "minecraft:stripped_acacia_log" }, { - "id" : "minecraft:log2", - "blockRuntimeId" : 5452 + "blockState": "minecraft:log2;new_log_type=dark_oak" }, { - "id" : "minecraft:stripped_dark_oak_log", - "blockRuntimeId" : 7067 + "blockState": "minecraft:stripped_dark_oak_log" }, { - "id" : "minecraft:crimson_stem", - "blockRuntimeId" : 3843 + "blockState": "minecraft:crimson_stem" }, { - "id" : "minecraft:stripped_crimson_stem", - "blockRuntimeId" : 7064 + "blockState": "minecraft:stripped_crimson_stem" }, { - "id" : "minecraft:warped_stem", - "blockRuntimeId" : 7396 + "blockState": "minecraft:warped_stem" }, { - "id" : "minecraft:stripped_warped_stem", - "blockRuntimeId" : 7082 + "blockState": "minecraft:stripped_warped_stem" }, { - "id" : "minecraft:wood", - "blockRuntimeId" : 7551 + "blockState": "minecraft:wood" }, { - "id" : "minecraft:wood", - "blockRuntimeId" : 7557 + "blockState": "minecraft:wood;stripped_bit=1" }, { - "id" : "minecraft:wood", - "blockRuntimeId" : 7552 + "blockState": "minecraft:wood;wood_type=spruce" }, { - "id" : "minecraft:wood", - "blockRuntimeId" : 7558 + "blockState": "minecraft:wood;stripped_bit=1;wood_type=spruce" }, { - "id" : "minecraft:wood", - "blockRuntimeId" : 7553 + "blockState": "minecraft:wood;wood_type=birch" }, { - "id" : "minecraft:wood", - "blockRuntimeId" : 7559 + "blockState": "minecraft:wood;stripped_bit=1;wood_type=birch" }, { - "id" : "minecraft:wood", - "blockRuntimeId" : 7554 + "blockState": "minecraft:wood;wood_type=jungle" }, { - "id" : "minecraft:wood", - "blockRuntimeId" : 7560 + "blockState": "minecraft:wood;stripped_bit=1;wood_type=jungle" }, { - "id" : "minecraft:wood", - "blockRuntimeId" : 7555 + "blockState": "minecraft:wood;wood_type=acacia" }, { - "id" : "minecraft:wood", - "blockRuntimeId" : 7561 + "blockState": "minecraft:wood;stripped_bit=1;wood_type=acacia" }, { - "id" : "minecraft:wood", - "blockRuntimeId" : 7556 + "blockState": "minecraft:wood;wood_type=dark_oak" }, { - "id" : "minecraft:wood", - "blockRuntimeId" : 7562 + "blockState": "minecraft:wood;stripped_bit=1;wood_type=dark_oak" }, { - "id" : "minecraft:crimson_hyphae", - "blockRuntimeId" : 3795 + "blockState": "minecraft:crimson_hyphae" }, { - "id" : "minecraft:stripped_crimson_hyphae", - "blockRuntimeId" : 7061 + "blockState": "minecraft:stripped_crimson_hyphae" }, { - "id" : "minecraft:warped_hyphae", - "blockRuntimeId" : 7348 + "blockState": "minecraft:warped_hyphae" }, { - "id" : "minecraft:stripped_warped_hyphae", - "blockRuntimeId" : 7079 + "blockState": "minecraft:stripped_warped_hyphae" }, { - "id" : "minecraft:leaves", - "blockRuntimeId" : 5315 + "blockState": "minecraft:leaves" }, { - "id" : "minecraft:leaves", - "blockRuntimeId" : 5316 + "blockState": "minecraft:leaves;old_leaf_type=spruce" }, { - "id" : "minecraft:leaves", - "blockRuntimeId" : 5317 + "blockState": "minecraft:leaves;old_leaf_type=birch" }, { - "id" : "minecraft:leaves", - "blockRuntimeId" : 5318 + "blockState": "minecraft:leaves;old_leaf_type=jungle" }, { - "id" : "minecraft:leaves2", - "blockRuntimeId" : 5331 + "blockState": "minecraft:leaves2" }, { - "id" : "minecraft:leaves2", - "blockRuntimeId" : 5332 + "blockState": "minecraft:leaves2;new_leaf_type=dark_oak" }, { - "id" : "minecraft:azalea_leaves", - "blockRuntimeId" : 169 + "blockState": "minecraft:azalea_leaves;persistent_bit=0;update_bit=0" }, { - "id" : "minecraft:azalea_leaves_flowered", - "blockRuntimeId" : 173 + "blockState": "minecraft:azalea_leaves_flowered;persistent_bit=0;update_bit=0" }, { - "id" : "minecraft:sapling", - "blockRuntimeId" : 6541 + "blockState": "minecraft:sapling" }, { - "id" : "minecraft:sapling", - "blockRuntimeId" : 6542 + "blockState": "minecraft:sapling;sapling_type=spruce" }, { - "id" : "minecraft:sapling", - "blockRuntimeId" : 6543 + "blockState": "minecraft:sapling;sapling_type=birch" }, { - "id" : "minecraft:sapling", - "blockRuntimeId" : 6544 + "blockState": "minecraft:sapling;sapling_type=jungle" }, { - "id" : "minecraft:sapling", - "blockRuntimeId" : 6545 + "blockState": "minecraft:sapling;sapling_type=acacia" }, { - "id" : "minecraft:sapling", - "blockRuntimeId" : 6546 + "blockState": "minecraft:sapling;sapling_type=dark_oak" }, { - "id" : "minecraft:bee_nest", - "blockRuntimeId" : 236 + "blockState": "minecraft:bee_nest" }, { - "id" : "minecraft:wheat_seeds" + "id": "minecraft:wheat_seeds" }, { - "id" : "minecraft:pumpkin_seeds" + "id": "minecraft:pumpkin_seeds" }, { - "id" : "minecraft:melon_seeds" + "id": "minecraft:melon_seeds" }, { - "id" : "minecraft:beetroot_seeds" + "id": "minecraft:beetroot_seeds" }, { - "id" : "minecraft:wheat" + "id": "minecraft:wheat" }, { - "id" : "minecraft:beetroot" + "id": "minecraft:beetroot" }, { - "id" : "minecraft:potato" + "id": "minecraft:potato" }, { - "id" : "minecraft:poisonous_potato" + "id": "minecraft:poisonous_potato" }, { - "id" : "minecraft:carrot" + "id": "minecraft:carrot" }, { - "id" : "minecraft:golden_carrot" + "id": "minecraft:golden_carrot" }, { - "id" : "minecraft:apple" + "id": "minecraft:apple" }, { - "id" : "minecraft:golden_apple" + "id": "minecraft:golden_apple" }, { - "id" : "minecraft:enchanted_golden_apple" + "id": "minecraft:enchanted_golden_apple" }, { - "id" : "minecraft:melon_block", - "blockRuntimeId" : 5474 + "blockState": "minecraft:melon_block" }, { - "id" : "minecraft:melon_slice" + "id": "minecraft:melon_slice" }, { - "id" : "minecraft:glistering_melon_slice" + "id": "minecraft:glistering_melon_slice" }, { - "id" : "minecraft:sweet_berries" + "id": "minecraft:sweet_berries" }, { - "id" : "minecraft:glow_berries" + "id": "minecraft:glow_berries" }, { - "id" : "minecraft:pumpkin", - "blockRuntimeId" : 6300 + "blockState": "minecraft:pumpkin" }, { - "id" : "minecraft:carved_pumpkin", - "blockRuntimeId" : 948 + "blockState": "minecraft:carved_pumpkin" }, { - "id" : "minecraft:lit_pumpkin", - "blockRuntimeId" : 5426 + "blockState": "minecraft:lit_pumpkin" }, { - "id" : "minecraft:honeycomb" + "id": "minecraft:honeycomb" }, { - "id" : "minecraft:tallgrass", - "blockRuntimeId" : 7103 + "blockState": "minecraft:tallgrass;tall_grass_type=fern" }, { - "id" : "minecraft:double_plant", - "blockRuntimeId" : 4453 + "blockState": "minecraft:double_plant;double_plant_type=fern" }, { - "id" : "minecraft:tallgrass", - "blockRuntimeId" : 7102 + "blockState": "minecraft:tallgrass;tall_grass_type=tall" }, { - "id" : "minecraft:double_plant", - "blockRuntimeId" : 4452 + "blockState": "minecraft:double_plant;double_plant_type=grass" }, { - "id" : "minecraft:nether_sprouts" + "id": "minecraft:nether_sprouts" }, { - "id" : "minecraft:coral", - "blockRuntimeId" : 3641 + "blockState": "minecraft:coral;coral_color=red" }, { - "id" : "minecraft:coral", - "blockRuntimeId" : 3639 + "blockState": "minecraft:coral;coral_color=pink" }, { - "id" : "minecraft:coral", - "blockRuntimeId" : 3640 + "blockState": "minecraft:coral;coral_color=purple" }, { - "id" : "minecraft:coral", - "blockRuntimeId" : 3638 + "blockState": "minecraft:coral" }, { - "id" : "minecraft:coral", - "blockRuntimeId" : 3642 + "blockState": "minecraft:coral;coral_color=yellow" }, { - "id" : "minecraft:coral", - "blockRuntimeId" : 3646 + "blockState": "minecraft:coral;coral_color=red;dead_bit=1" }, { - "id" : "minecraft:coral", - "blockRuntimeId" : 3644 + "blockState": "minecraft:coral;coral_color=pink;dead_bit=1" }, { - "id" : "minecraft:coral", - "blockRuntimeId" : 3645 + "blockState": "minecraft:coral;coral_color=purple;dead_bit=1" }, { - "id" : "minecraft:coral", - "blockRuntimeId" : 3643 + "blockState": "minecraft:coral;dead_bit=1" }, { - "id" : "minecraft:coral", - "blockRuntimeId" : 3647 + "blockState": "minecraft:coral;coral_color=yellow;dead_bit=1" }, { - "id" : "minecraft:coral_fan", - "blockRuntimeId" : 3661 + "blockState": "minecraft:coral_fan;coral_color=red" }, { - "id" : "minecraft:coral_fan", - "blockRuntimeId" : 3659 + "blockState": "minecraft:coral_fan;coral_color=pink" }, { - "id" : "minecraft:coral_fan", - "blockRuntimeId" : 3660 + "blockState": "minecraft:coral_fan;coral_color=purple" }, { - "id" : "minecraft:coral_fan", - "blockRuntimeId" : 3658 + "blockState": "minecraft:coral_fan" }, { - "id" : "minecraft:coral_fan", - "blockRuntimeId" : 3662 + "blockState": "minecraft:coral_fan;coral_color=yellow" }, { - "id" : "minecraft:coral_fan_dead", - "blockRuntimeId" : 3671 + "blockState": "minecraft:coral_fan_dead;coral_color=red" }, { - "id" : "minecraft:coral_fan_dead", - "blockRuntimeId" : 3669 + "blockState": "minecraft:coral_fan_dead;coral_color=pink" }, { - "id" : "minecraft:coral_fan_dead", - "blockRuntimeId" : 3670 + "blockState": "minecraft:coral_fan_dead;coral_color=purple" }, { - "id" : "minecraft:coral_fan_dead", - "blockRuntimeId" : 3668 + "blockState": "minecraft:coral_fan_dead" }, { - "id" : "minecraft:coral_fan_dead", - "blockRuntimeId" : 3672 + "blockState": "minecraft:coral_fan_dead;coral_color=yellow" }, { - "id" : "minecraft:kelp" + "id": "minecraft:kelp" }, { - "id" : "minecraft:seagrass", - "blockRuntimeId" : 6579 + "blockState": "minecraft:seagrass" }, { - "id" : "minecraft:crimson_roots", - "blockRuntimeId" : 3816 + "blockState": "minecraft:crimson_roots" }, { - "id" : "minecraft:warped_roots", - "blockRuntimeId" : 7369 + "blockState": "minecraft:warped_roots" }, { - "id" : "minecraft:yellow_flower", - "blockRuntimeId" : 7675 + "blockState": "minecraft:yellow_flower" }, { - "id" : "minecraft:red_flower", - "blockRuntimeId" : 6413 + "blockState": "minecraft:red_flower" }, { - "id" : "minecraft:red_flower", - "blockRuntimeId" : 6414 + "blockState": "minecraft:red_flower;flower_type=orchid" }, { - "id" : "minecraft:red_flower", - "blockRuntimeId" : 6415 + "blockState": "minecraft:red_flower;flower_type=allium" }, { - "id" : "minecraft:red_flower", - "blockRuntimeId" : 6416 + "blockState": "minecraft:red_flower;flower_type=houstonia" }, { - "id" : "minecraft:red_flower", - "blockRuntimeId" : 6417 + "blockState": "minecraft:red_flower;flower_type=tulip_red" }, { - "id" : "minecraft:red_flower", - "blockRuntimeId" : 6418 + "blockState": "minecraft:red_flower;flower_type=tulip_orange" }, { - "id" : "minecraft:red_flower", - "blockRuntimeId" : 6419 + "blockState": "minecraft:red_flower;flower_type=tulip_white" }, { - "id" : "minecraft:red_flower", - "blockRuntimeId" : 6420 + "blockState": "minecraft:red_flower;flower_type=tulip_pink" }, { - "id" : "minecraft:red_flower", - "blockRuntimeId" : 6421 + "blockState": "minecraft:red_flower;flower_type=oxeye" }, { - "id" : "minecraft:red_flower", - "blockRuntimeId" : 6422 + "blockState": "minecraft:red_flower;flower_type=cornflower" }, { - "id" : "minecraft:red_flower", - "blockRuntimeId" : 6423 + "blockState": "minecraft:red_flower;flower_type=lily_of_the_valley" }, { - "id" : "minecraft:double_plant", - "blockRuntimeId" : 4450 + "blockState": "minecraft:double_plant" }, { - "id" : "minecraft:double_plant", - "blockRuntimeId" : 4451 + "blockState": "minecraft:double_plant;double_plant_type=syringa" }, { - "id" : "minecraft:double_plant", - "blockRuntimeId" : 4454 + "blockState": "minecraft:double_plant;double_plant_type=rose" }, { - "id" : "minecraft:double_plant", - "blockRuntimeId" : 4455 + "blockState": "minecraft:double_plant;double_plant_type=paeonia" }, { - "id" : "minecraft:wither_rose", - "blockRuntimeId" : 7550 + "blockState": "minecraft:wither_rose" }, { - "id" : "minecraft:white_dye" + "id": "minecraft:white_dye" }, { - "id" : "minecraft:light_gray_dye" + "id": "minecraft:light_gray_dye" }, { - "id" : "minecraft:gray_dye" + "id": "minecraft:gray_dye" }, { - "id" : "minecraft:black_dye" + "id": "minecraft:black_dye" }, { - "id" : "minecraft:brown_dye" + "id": "minecraft:brown_dye" }, { - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye" }, { - "id" : "minecraft:orange_dye" + "id": "minecraft:orange_dye" }, { - "id" : "minecraft:yellow_dye" + "id": "minecraft:yellow_dye" }, { - "id" : "minecraft:lime_dye" + "id": "minecraft:lime_dye" }, { - "id" : "minecraft:green_dye" + "id": "minecraft:green_dye" }, { - "id" : "minecraft:cyan_dye" + "id": "minecraft:cyan_dye" }, { - "id" : "minecraft:light_blue_dye" + "id": "minecraft:light_blue_dye" }, { - "id" : "minecraft:blue_dye" + "id": "minecraft:blue_dye" }, { - "id" : "minecraft:purple_dye" + "id": "minecraft:purple_dye" }, { - "id" : "minecraft:magenta_dye" + "id": "minecraft:magenta_dye" }, { - "id" : "minecraft:pink_dye" + "id": "minecraft:pink_dye" }, { - "id" : "minecraft:ink_sac" + "id": "minecraft:ink_sac" }, { - "id" : "minecraft:glow_ink_sac" + "id": "minecraft:glow_ink_sac" }, { - "id" : "minecraft:cocoa_beans" + "id": "minecraft:cocoa_beans" }, { - "id" : "minecraft:lapis_lazuli" + "id": "minecraft:lapis_lazuli" }, { - "id" : "minecraft:bone_meal" + "id": "minecraft:bone_meal" }, { - "id" : "minecraft:vine", - "blockRuntimeId" : 7256 + "blockState": "minecraft:vine" }, { - "id" : "minecraft:weeping_vines", - "blockRuntimeId" : 7510 + "blockState": "minecraft:weeping_vines" }, { - "id" : "minecraft:twisting_vines", - "blockRuntimeId" : 7184 + "blockState": "minecraft:twisting_vines" }, { - "id" : "minecraft:waterlily", - "blockRuntimeId" : 7438 + "blockState": "minecraft:waterlily" }, { - "id" : "minecraft:deadbush", - "blockRuntimeId" : 4048 + "blockState": "minecraft:deadbush" }, { - "id" : "minecraft:bamboo", - "blockRuntimeId" : 177 + "blockState": "minecraft:bamboo" }, { - "id" : "minecraft:snow", - "blockRuntimeId" : 6666 + "blockState": "minecraft:snow" }, { - "id" : "minecraft:ice", - "blockRuntimeId" : 5031 + "blockState": "minecraft:ice" }, { - "id" : "minecraft:packed_ice", - "blockRuntimeId" : 5621 + "blockState": "minecraft:packed_ice" }, { - "id" : "minecraft:blue_ice", - "blockRuntimeId" : 671 + "blockState": "minecraft:blue_ice" }, { - "id" : "minecraft:snow_layer", - "blockRuntimeId" : 6667 + "blockState": "minecraft:snow_layer" }, { - "id" : "minecraft:pointed_dripstone", - "blockRuntimeId" : 5652 + "blockState": "minecraft:pointed_dripstone;dripstone_thickness=tip;hanging=1" }, { - "id" : "minecraft:dripstone_block", - "blockRuntimeId" : 4534 + "blockState": "minecraft:dripstone_block" }, { - "id" : "minecraft:moss_carpet", - "blockRuntimeId" : 5531 + "blockState": "minecraft:moss_carpet" }, { - "id" : "minecraft:moss_block", - "blockRuntimeId" : 5530 + "blockState": "minecraft:moss_block" }, { - "id" : "minecraft:dirt_with_roots", - "blockRuntimeId" : 4435 + "blockState": "minecraft:dirt_with_roots" }, { - "id" : "minecraft:hanging_roots", - "blockRuntimeId" : 4953 + "blockState": "minecraft:hanging_roots" }, { - "id" : "minecraft:big_dripleaf", - "blockRuntimeId" : 328 + "blockState": "minecraft:big_dripleaf;big_dripleaf_head=1;big_dripleaf_tilt=none;direction=0" }, { - "id" : "minecraft:small_dripleaf_block", - "blockRuntimeId" : 6632 + "blockState": "minecraft:small_dripleaf_block;direction=3;upper_block_bit=1" }, { - "id" : "minecraft:spore_blossom", - "blockRuntimeId" : 6719 + "blockState": "minecraft:spore_blossom" }, { - "id" : "minecraft:azalea", - "blockRuntimeId" : 168 + "blockState": "minecraft:azalea" }, { - "id" : "minecraft:flowering_azalea", - "blockRuntimeId" : 4764 + "blockState": "minecraft:flowering_azalea" }, { - "id" : "minecraft:glow_lichen", - "blockRuntimeId" : 4897 + "blockState": "minecraft:glow_lichen;multi_face_direction_bits=63" }, { - "id" : "minecraft:amethyst_block", - "blockRuntimeId" : 136 + "blockState": "minecraft:amethyst_block" }, { - "id" : "minecraft:budding_amethyst", - "blockRuntimeId" : 889 + "blockState": "minecraft:budding_amethyst" }, { - "id" : "minecraft:amethyst_cluster", - "blockRuntimeId" : 137 + "blockState": "minecraft:amethyst_cluster;facing_direction=1" }, { - "id" : "minecraft:large_amethyst_bud", - "blockRuntimeId" : 5272 + "blockState": "minecraft:large_amethyst_bud;facing_direction=1" }, { - "id" : "minecraft:medium_amethyst_bud", - "blockRuntimeId" : 5468 + "blockState": "minecraft:medium_amethyst_bud;facing_direction=1" }, { - "id" : "minecraft:small_amethyst_bud", - "blockRuntimeId" : 6619 + "blockState": "minecraft:small_amethyst_bud;facing_direction=1" }, { - "id" : "minecraft:tuff", - "blockRuntimeId" : 7171 + "blockState": "minecraft:tuff" }, { - "id" : "minecraft:calcite", - "blockRuntimeId" : 913 + "blockState": "minecraft:calcite" }, { - "id" : "minecraft:chicken" + "id": "minecraft:chicken" }, { - "id" : "minecraft:porkchop" + "id": "minecraft:porkchop" }, { - "id" : "minecraft:beef" + "id": "minecraft:beef" }, { - "id" : "minecraft:mutton" + "id": "minecraft:mutton" }, { - "id" : "minecraft:rabbit" + "id": "minecraft:rabbit" }, { - "id" : "minecraft:cod" + "id": "minecraft:cod" }, { - "id" : "minecraft:salmon" + "id": "minecraft:salmon" }, { - "id" : "minecraft:tropical_fish" + "id": "minecraft:tropical_fish" }, { - "id" : "minecraft:pufferfish" + "id": "minecraft:pufferfish" }, { - "id" : "minecraft:brown_mushroom", - "blockRuntimeId" : 870 + "blockState": "minecraft:brown_mushroom" }, { - "id" : "minecraft:red_mushroom", - "blockRuntimeId" : 6430 + "blockState": "minecraft:red_mushroom" }, { - "id" : "minecraft:crimson_fungus", - "blockRuntimeId" : 3794 + "blockState": "minecraft:crimson_fungus" }, { - "id" : "minecraft:warped_fungus", - "blockRuntimeId" : 7347 + "blockState": "minecraft:warped_fungus" }, { - "id" : "minecraft:brown_mushroom_block", - "blockRuntimeId" : 885 + "blockState": "minecraft:brown_mushroom_block;huge_mushroom_bits=14" }, { - "id" : "minecraft:red_mushroom_block", - "blockRuntimeId" : 6445 + "blockState": "minecraft:red_mushroom_block;huge_mushroom_bits=14" }, { - "id" : "minecraft:brown_mushroom_block", - "blockRuntimeId" : 886 + "blockState": "minecraft:brown_mushroom_block;huge_mushroom_bits=15" }, { - "id" : "minecraft:brown_mushroom_block", - "blockRuntimeId" : 871 + "blockState": "minecraft:brown_mushroom_block" }, { - "id" : "minecraft:egg" + "id": "minecraft:egg" }, { - "id" : "minecraft:sugar_cane" + "id": "minecraft:sugar_cane" }, { - "id" : "minecraft:sugar" + "id": "minecraft:sugar" }, { - "id" : "minecraft:rotten_flesh" + "id": "minecraft:rotten_flesh" }, { - "id" : "minecraft:bone" + "id": "minecraft:bone" }, { - "id" : "minecraft:web", - "blockRuntimeId" : 7509 + "blockState": "minecraft:web" }, { - "id" : "minecraft:spider_eye" + "id": "minecraft:spider_eye" }, { - "id" : "minecraft:mob_spawner", - "blockRuntimeId" : 5523 + "blockState": "minecraft:mob_spawner" }, { - "id" : "minecraft:monster_egg", - "blockRuntimeId" : 5524 + "blockState": "minecraft:monster_egg" }, { - "id" : "minecraft:monster_egg", - "blockRuntimeId" : 5525 + "blockState": "minecraft:monster_egg;monster_egg_stone_type=cobblestone" }, { - "id" : "minecraft:monster_egg", - "blockRuntimeId" : 5526 + "blockState": "minecraft:monster_egg;monster_egg_stone_type=stone_brick" }, { - "id" : "minecraft:monster_egg", - "blockRuntimeId" : 5527 + "blockState": "minecraft:monster_egg;monster_egg_stone_type=mossy_stone_brick" }, { - "id" : "minecraft:monster_egg", - "blockRuntimeId" : 5528 + "blockState": "minecraft:monster_egg;monster_egg_stone_type=cracked_stone_brick" }, { - "id" : "minecraft:monster_egg", - "blockRuntimeId" : 5529 + "blockState": "minecraft:monster_egg;monster_egg_stone_type=chiseled_stone_brick" }, { - "id" : "minecraft:infested_deepslate", - "blockRuntimeId" : 5032 + "blockState": "minecraft:infested_deepslate;pillar_axis=y" }, { - "id" : "minecraft:dragon_egg", - "blockRuntimeId" : 4532 + "blockState": "minecraft:dragon_egg" }, { - "id" : "minecraft:turtle_egg", - "blockRuntimeId" : 7172 + "blockState": "minecraft:turtle_egg" }, { - "id" : "minecraft:chicken_spawn_egg" + "id": "minecraft:chicken_spawn_egg" }, { - "id" : "minecraft:bee_spawn_egg" + "id": "minecraft:bee_spawn_egg" }, { - "id" : "minecraft:cow_spawn_egg" + "id": "minecraft:cow_spawn_egg" }, { - "id" : "minecraft:pig_spawn_egg" + "id": "minecraft:pig_spawn_egg" }, { - "id" : "minecraft:sheep_spawn_egg" + "id": "minecraft:sheep_spawn_egg" }, { - "id" : "minecraft:wolf_spawn_egg" + "id": "minecraft:wolf_spawn_egg" }, { - "id" : "minecraft:polar_bear_spawn_egg" + "id": "minecraft:polar_bear_spawn_egg" }, { - "id" : "minecraft:ocelot_spawn_egg" + "id": "minecraft:ocelot_spawn_egg" }, { - "id" : "minecraft:cat_spawn_egg" + "id": "minecraft:cat_spawn_egg" }, { - "id" : "minecraft:mooshroom_spawn_egg" + "id": "minecraft:mooshroom_spawn_egg" }, { - "id" : "minecraft:bat_spawn_egg" + "id": "minecraft:bat_spawn_egg" }, { - "id" : "minecraft:parrot_spawn_egg" + "id": "minecraft:parrot_spawn_egg" }, { - "id" : "minecraft:rabbit_spawn_egg" + "id": "minecraft:rabbit_spawn_egg" }, { - "id" : "minecraft:llama_spawn_egg" + "id": "minecraft:llama_spawn_egg" }, { - "id" : "minecraft:horse_spawn_egg" + "id": "minecraft:horse_spawn_egg" }, { - "id" : "minecraft:donkey_spawn_egg" + "id": "minecraft:donkey_spawn_egg" }, { - "id" : "minecraft:mule_spawn_egg" + "id": "minecraft:mule_spawn_egg" }, { - "id" : "minecraft:skeleton_horse_spawn_egg" + "id": "minecraft:skeleton_horse_spawn_egg" }, { - "id" : "minecraft:zombie_horse_spawn_egg" + "id": "minecraft:zombie_horse_spawn_egg" }, { - "id" : "minecraft:tropical_fish_spawn_egg" + "id": "minecraft:tropical_fish_spawn_egg" }, { - "id" : "minecraft:cod_spawn_egg" + "id": "minecraft:cod_spawn_egg" }, { - "id" : "minecraft:pufferfish_spawn_egg" + "id": "minecraft:pufferfish_spawn_egg" }, { - "id" : "minecraft:salmon_spawn_egg" + "id": "minecraft:salmon_spawn_egg" }, { - "id" : "minecraft:dolphin_spawn_egg" + "id": "minecraft:dolphin_spawn_egg" }, { - "id" : "minecraft:turtle_spawn_egg" + "id": "minecraft:turtle_spawn_egg" }, { - "id" : "minecraft:panda_spawn_egg" + "id": "minecraft:panda_spawn_egg" }, { - "id" : "minecraft:fox_spawn_egg" + "id": "minecraft:fox_spawn_egg" }, { - "id" : "minecraft:creeper_spawn_egg" + "id": "minecraft:creeper_spawn_egg" }, { - "id" : "minecraft:enderman_spawn_egg" + "id": "minecraft:enderman_spawn_egg" }, { - "id" : "minecraft:silverfish_spawn_egg" + "id": "minecraft:silverfish_spawn_egg" }, { - "id" : "minecraft:skeleton_spawn_egg" + "id": "minecraft:skeleton_spawn_egg" }, { - "id" : "minecraft:wither_skeleton_spawn_egg" + "id": "minecraft:wither_skeleton_spawn_egg" }, { - "id" : "minecraft:stray_spawn_egg" + "id": "minecraft:stray_spawn_egg" }, { - "id" : "minecraft:slime_spawn_egg" + "id": "minecraft:slime_spawn_egg" }, { - "id" : "minecraft:spider_spawn_egg" + "id": "minecraft:spider_spawn_egg" }, { - "id" : "minecraft:zombie_spawn_egg" + "id": "minecraft:zombie_spawn_egg" }, { - "id" : "minecraft:zombie_pigman_spawn_egg" + "id": "minecraft:zombie_pigman_spawn_egg" }, { - "id" : "minecraft:husk_spawn_egg" + "id": "minecraft:husk_spawn_egg" }, { - "id" : "minecraft:drowned_spawn_egg" + "id": "minecraft:drowned_spawn_egg" }, { - "id" : "minecraft:squid_spawn_egg" + "id": "minecraft:squid_spawn_egg" }, { - "id" : "minecraft:glow_squid_spawn_egg" + "id": "minecraft:glow_squid_spawn_egg" }, { - "id" : "minecraft:cave_spider_spawn_egg" + "id": "minecraft:cave_spider_spawn_egg" }, { - "id" : "minecraft:witch_spawn_egg" + "id": "minecraft:witch_spawn_egg" }, { - "id" : "minecraft:guardian_spawn_egg" + "id": "minecraft:guardian_spawn_egg" }, { - "id" : "minecraft:elder_guardian_spawn_egg" + "id": "minecraft:elder_guardian_spawn_egg" }, { - "id" : "minecraft:endermite_spawn_egg" + "id": "minecraft:endermite_spawn_egg" }, { - "id" : "minecraft:magma_cube_spawn_egg" + "id": "minecraft:magma_cube_spawn_egg" }, { - "id" : "minecraft:strider_spawn_egg" + "id": "minecraft:strider_spawn_egg" }, { - "id" : "minecraft:hoglin_spawn_egg" + "id": "minecraft:hoglin_spawn_egg" }, { - "id" : "minecraft:piglin_spawn_egg" + "id": "minecraft:piglin_spawn_egg" }, { - "id" : "minecraft:zoglin_spawn_egg" + "id": "minecraft:zoglin_spawn_egg" }, { - "id" : "minecraft:piglin_brute_spawn_egg" + "id": "minecraft:piglin_brute_spawn_egg" }, { - "id" : "minecraft:goat_spawn_egg" + "id": "minecraft:goat_spawn_egg" }, { - "id" : "minecraft:axolotl_spawn_egg" + "id": "minecraft:axolotl_spawn_egg" }, { - "id" : "minecraft:ghast_spawn_egg" + "id": "minecraft:ghast_spawn_egg" }, { - "id" : "minecraft:blaze_spawn_egg" + "id": "minecraft:blaze_spawn_egg" }, { - "id" : "minecraft:shulker_spawn_egg" + "id": "minecraft:shulker_spawn_egg" }, { - "id" : "minecraft:vindicator_spawn_egg" + "id": "minecraft:vindicator_spawn_egg" }, { - "id" : "minecraft:evoker_spawn_egg" + "id": "minecraft:evoker_spawn_egg" }, { - "id" : "minecraft:vex_spawn_egg" + "id": "minecraft:vex_spawn_egg" }, { - "id" : "minecraft:villager_spawn_egg" + "id": "minecraft:villager_spawn_egg" }, { - "id" : "minecraft:wandering_trader_spawn_egg" + "id": "minecraft:wandering_trader_spawn_egg" }, { - "id" : "minecraft:zombie_villager_spawn_egg" + "id": "minecraft:zombie_villager_spawn_egg" }, { - "id" : "minecraft:phantom_spawn_egg" + "id": "minecraft:phantom_spawn_egg" }, { - "id" : "minecraft:pillager_spawn_egg" + "id": "minecraft:pillager_spawn_egg" }, { - "id" : "minecraft:ravager_spawn_egg" + "id": "minecraft:ravager_spawn_egg" }, { - "id" : "minecraft:obsidian", - "blockRuntimeId" : 5600 + "blockState": "minecraft:obsidian" }, { - "id" : "minecraft:crying_obsidian", - "blockRuntimeId" : 3868 + "blockState": "minecraft:crying_obsidian" }, { - "id" : "minecraft:bedrock", - "blockRuntimeId" : 234 + "blockState": "minecraft:bedrock" }, { - "id" : "minecraft:soul_sand", - "blockRuntimeId" : 6709 + "blockState": "minecraft:soul_sand" }, { - "id" : "minecraft:netherrack", - "blockRuntimeId" : 5569 + "blockState": "minecraft:netherrack" }, { - "id" : "minecraft:magma", - "blockRuntimeId" : 5467 + "blockState": "minecraft:magma" }, { - "id" : "minecraft:nether_wart" + "id": "minecraft:nether_wart" }, { - "id" : "minecraft:end_stone", - "blockRuntimeId" : 4694 + "blockState": "minecraft:end_stone" }, { - "id" : "minecraft:chorus_flower", - "blockRuntimeId" : 1092 + "blockState": "minecraft:chorus_flower" }, { - "id" : "minecraft:chorus_plant", - "blockRuntimeId" : 1098 + "blockState": "minecraft:chorus_plant" }, { - "id" : "minecraft:chorus_fruit" + "id": "minecraft:chorus_fruit" }, { - "id" : "minecraft:popped_chorus_fruit" + "id": "minecraft:popped_chorus_fruit" }, { - "id" : "minecraft:sponge", - "blockRuntimeId" : 6717 + "blockState": "minecraft:sponge" }, { - "id" : "minecraft:sponge", - "blockRuntimeId" : 6718 + "blockState": "minecraft:sponge;sponge_type=wet" }, { - "id" : "minecraft:coral_block", - "blockRuntimeId" : 3648 + "blockState": "minecraft:coral_block" }, { - "id" : "minecraft:coral_block", - "blockRuntimeId" : 3649 + "blockState": "minecraft:coral_block;coral_color=pink" }, { - "id" : "minecraft:coral_block", - "blockRuntimeId" : 3650 + "blockState": "minecraft:coral_block;coral_color=purple" }, { - "id" : "minecraft:coral_block", - "blockRuntimeId" : 3651 + "blockState": "minecraft:coral_block;coral_color=red" }, { - "id" : "minecraft:coral_block", - "blockRuntimeId" : 3652 + "blockState": "minecraft:coral_block;coral_color=yellow" }, { - "id" : "minecraft:coral_block", - "blockRuntimeId" : 3653 + "blockState": "minecraft:coral_block;dead_bit=1" }, { - "id" : "minecraft:coral_block", - "blockRuntimeId" : 3654 + "blockState": "minecraft:coral_block;coral_color=pink;dead_bit=1" }, { - "id" : "minecraft:coral_block", - "blockRuntimeId" : 3655 + "blockState": "minecraft:coral_block;coral_color=purple;dead_bit=1" }, { - "id" : "minecraft:coral_block", - "blockRuntimeId" : 3656 + "blockState": "minecraft:coral_block;coral_color=red;dead_bit=1" }, { - "id" : "minecraft:coral_block", - "blockRuntimeId" : 3657 + "blockState": "minecraft:coral_block;coral_color=yellow;dead_bit=1" }, { - "id" : "minecraft:leather_helmet" + "id": "minecraft:leather_helmet" }, { - "id" : "minecraft:chainmail_helmet" + "id": "minecraft:chainmail_helmet" }, { - "id" : "minecraft:iron_helmet" + "id": "minecraft:iron_helmet" }, { - "id" : "minecraft:golden_helmet" + "id": "minecraft:golden_helmet" }, { - "id" : "minecraft:diamond_helmet" + "id": "minecraft:diamond_helmet" }, { - "id" : "minecraft:netherite_helmet" + "id": "minecraft:netherite_helmet" }, { - "id" : "minecraft:leather_chestplate" + "id": "minecraft:leather_chestplate" }, { - "id" : "minecraft:chainmail_chestplate" + "id": "minecraft:chainmail_chestplate" }, { - "id" : "minecraft:iron_chestplate" + "id": "minecraft:iron_chestplate" }, { - "id" : "minecraft:golden_chestplate" + "id": "minecraft:golden_chestplate" }, { - "id" : "minecraft:diamond_chestplate" + "id": "minecraft:diamond_chestplate" }, { - "id" : "minecraft:netherite_chestplate" + "id": "minecraft:netherite_chestplate" }, { - "id" : "minecraft:leather_leggings" + "id": "minecraft:leather_leggings" }, { - "id" : "minecraft:chainmail_leggings" + "id": "minecraft:chainmail_leggings" }, { - "id" : "minecraft:iron_leggings" + "id": "minecraft:iron_leggings" }, { - "id" : "minecraft:golden_leggings" + "id": "minecraft:golden_leggings" }, { - "id" : "minecraft:diamond_leggings" + "id": "minecraft:diamond_leggings" }, { - "id" : "minecraft:netherite_leggings" + "id": "minecraft:netherite_leggings" }, { - "id" : "minecraft:leather_boots" + "id": "minecraft:leather_boots" }, { - "id" : "minecraft:chainmail_boots" + "id": "minecraft:chainmail_boots" }, { - "id" : "minecraft:iron_boots" + "id": "minecraft:iron_boots" }, { - "id" : "minecraft:golden_boots" + "id": "minecraft:golden_boots" }, { - "id" : "minecraft:diamond_boots" + "id": "minecraft:diamond_boots" }, { - "id" : "minecraft:netherite_boots" + "id": "minecraft:netherite_boots" }, { - "id" : "minecraft:wooden_sword" + "id": "minecraft:wooden_sword" }, { - "id" : "minecraft:stone_sword" + "id": "minecraft:stone_sword" }, { - "id" : "minecraft:iron_sword" + "id": "minecraft:iron_sword" }, { - "id" : "minecraft:golden_sword" + "id": "minecraft:golden_sword" }, { - "id" : "minecraft:diamond_sword" + "id": "minecraft:diamond_sword" }, { - "id" : "minecraft:netherite_sword" + "id": "minecraft:netherite_sword" }, { - "id" : "minecraft:wooden_axe" + "id": "minecraft:wooden_axe" }, { - "id" : "minecraft:stone_axe" + "id": "minecraft:stone_axe" }, { - "id" : "minecraft:iron_axe" + "id": "minecraft:iron_axe" }, { - "id" : "minecraft:golden_axe" + "id": "minecraft:golden_axe" }, { - "id" : "minecraft:diamond_axe" + "id": "minecraft:diamond_axe" }, { - "id" : "minecraft:netherite_axe" + "id": "minecraft:netherite_axe" }, { - "id" : "minecraft:wooden_pickaxe" + "id": "minecraft:wooden_pickaxe" }, { - "id" : "minecraft:stone_pickaxe" + "id": "minecraft:stone_pickaxe" }, { - "id" : "minecraft:iron_pickaxe" + "id": "minecraft:iron_pickaxe" }, { - "id" : "minecraft:golden_pickaxe" + "id": "minecraft:golden_pickaxe" }, { - "id" : "minecraft:diamond_pickaxe" + "id": "minecraft:diamond_pickaxe" }, { - "id" : "minecraft:netherite_pickaxe" + "id": "minecraft:netherite_pickaxe" }, { - "id" : "minecraft:wooden_shovel" + "id": "minecraft:wooden_shovel" }, { - "id" : "minecraft:stone_shovel" + "id": "minecraft:stone_shovel" }, { - "id" : "minecraft:iron_shovel" + "id": "minecraft:iron_shovel" }, { - "id" : "minecraft:golden_shovel" + "id": "minecraft:golden_shovel" }, { - "id" : "minecraft:diamond_shovel" + "id": "minecraft:diamond_shovel" }, { - "id" : "minecraft:netherite_shovel" + "id": "minecraft:netherite_shovel" }, { - "id" : "minecraft:wooden_hoe" + "id": "minecraft:wooden_hoe" }, { - "id" : "minecraft:stone_hoe" + "id": "minecraft:stone_hoe" }, { - "id" : "minecraft:iron_hoe" + "id": "minecraft:iron_hoe" }, { - "id" : "minecraft:golden_hoe" + "id": "minecraft:golden_hoe" }, { - "id" : "minecraft:diamond_hoe" + "id": "minecraft:diamond_hoe" }, { - "id" : "minecraft:netherite_hoe" + "id": "minecraft:netherite_hoe" }, { - "id" : "minecraft:bow" + "id": "minecraft:bow" }, { - "id" : "minecraft:crossbow" + "id": "minecraft:crossbow" }, { - "id" : "minecraft:arrow" + "id": "minecraft:arrow" }, { - "id" : "minecraft:arrow", - "damage" : 6 + "id": "minecraft:arrow", + "damage": 6 }, { - "id" : "minecraft:arrow", - "damage" : 7 + "id": "minecraft:arrow", + "damage": 7 }, { - "id" : "minecraft:arrow", - "damage" : 8 + "id": "minecraft:arrow", + "damage": 8 }, { - "id" : "minecraft:arrow", - "damage" : 9 + "id": "minecraft:arrow", + "damage": 9 }, { - "id" : "minecraft:arrow", - "damage" : 10 + "id": "minecraft:arrow", + "damage": 10 }, { - "id" : "minecraft:arrow", - "damage" : 11 + "id": "minecraft:arrow", + "damage": 11 }, { - "id" : "minecraft:arrow", - "damage" : 12 + "id": "minecraft:arrow", + "damage": 12 }, { - "id" : "minecraft:arrow", - "damage" : 13 + "id": "minecraft:arrow", + "damage": 13 }, { - "id" : "minecraft:arrow", - "damage" : 14 + "id": "minecraft:arrow", + "damage": 14 }, { - "id" : "minecraft:arrow", - "damage" : 15 + "id": "minecraft:arrow", + "damage": 15 }, { - "id" : "minecraft:arrow", - "damage" : 16 + "id": "minecraft:arrow", + "damage": 16 }, { - "id" : "minecraft:arrow", - "damage" : 17 + "id": "minecraft:arrow", + "damage": 17 }, { - "id" : "minecraft:arrow", - "damage" : 18 + "id": "minecraft:arrow", + "damage": 18 }, { - "id" : "minecraft:arrow", - "damage" : 19 + "id": "minecraft:arrow", + "damage": 19 }, { - "id" : "minecraft:arrow", - "damage" : 20 + "id": "minecraft:arrow", + "damage": 20 }, { - "id" : "minecraft:arrow", - "damage" : 21 + "id": "minecraft:arrow", + "damage": 21 }, { - "id" : "minecraft:arrow", - "damage" : 22 + "id": "minecraft:arrow", + "damage": 22 }, { - "id" : "minecraft:arrow", - "damage" : 23 + "id": "minecraft:arrow", + "damage": 23 }, { - "id" : "minecraft:arrow", - "damage" : 24 + "id": "minecraft:arrow", + "damage": 24 }, { - "id" : "minecraft:arrow", - "damage" : 25 + "id": "minecraft:arrow", + "damage": 25 }, { - "id" : "minecraft:arrow", - "damage" : 26 + "id": "minecraft:arrow", + "damage": 26 }, { - "id" : "minecraft:arrow", - "damage" : 27 + "id": "minecraft:arrow", + "damage": 27 }, { - "id" : "minecraft:arrow", - "damage" : 28 + "id": "minecraft:arrow", + "damage": 28 }, { - "id" : "minecraft:arrow", - "damage" : 29 + "id": "minecraft:arrow", + "damage": 29 }, { - "id" : "minecraft:arrow", - "damage" : 30 + "id": "minecraft:arrow", + "damage": 30 }, { - "id" : "minecraft:arrow", - "damage" : 31 + "id": "minecraft:arrow", + "damage": 31 }, { - "id" : "minecraft:arrow", - "damage" : 32 + "id": "minecraft:arrow", + "damage": 32 }, { - "id" : "minecraft:arrow", - "damage" : 33 + "id": "minecraft:arrow", + "damage": 33 }, { - "id" : "minecraft:arrow", - "damage" : 34 + "id": "minecraft:arrow", + "damage": 34 }, { - "id" : "minecraft:arrow", - "damage" : 35 + "id": "minecraft:arrow", + "damage": 35 }, { - "id" : "minecraft:arrow", - "damage" : 36 + "id": "minecraft:arrow", + "damage": 36 }, { - "id" : "minecraft:arrow", - "damage" : 37 + "id": "minecraft:arrow", + "damage": 37 }, { - "id" : "minecraft:arrow", - "damage" : 38 + "id": "minecraft:arrow", + "damage": 38 }, { - "id" : "minecraft:arrow", - "damage" : 39 + "id": "minecraft:arrow", + "damage": 39 }, { - "id" : "minecraft:arrow", - "damage" : 40 + "id": "minecraft:arrow", + "damage": 40 }, { - "id" : "minecraft:arrow", - "damage" : 41 + "id": "minecraft:arrow", + "damage": 41 }, { - "id" : "minecraft:arrow", - "damage" : 42 + "id": "minecraft:arrow", + "damage": 42 }, { - "id" : "minecraft:arrow", - "damage" : 43 + "id": "minecraft:arrow", + "damage": 43 }, { - "id" : "minecraft:shield" + "id": "minecraft:shield" }, { - "id" : "minecraft:cooked_chicken" + "id": "minecraft:cooked_chicken" }, { - "id" : "minecraft:cooked_porkchop" + "id": "minecraft:cooked_porkchop" }, { - "id" : "minecraft:cooked_beef" + "id": "minecraft:cooked_beef" }, { - "id" : "minecraft:cooked_mutton" + "id": "minecraft:cooked_mutton" }, { - "id" : "minecraft:cooked_rabbit" + "id": "minecraft:cooked_rabbit" }, { - "id" : "minecraft:cooked_cod" + "id": "minecraft:cooked_cod" }, { - "id" : "minecraft:cooked_salmon" + "id": "minecraft:cooked_salmon" }, { - "id" : "minecraft:bread" + "id": "minecraft:bread" }, { - "id" : "minecraft:mushroom_stew" + "id": "minecraft:mushroom_stew" }, { - "id" : "minecraft:beetroot_soup" + "id": "minecraft:beetroot_soup" }, { - "id" : "minecraft:rabbit_stew" + "id": "minecraft:rabbit_stew" }, { - "id" : "minecraft:baked_potato" + "id": "minecraft:baked_potato" }, { - "id" : "minecraft:cookie" + "id": "minecraft:cookie" }, { - "id" : "minecraft:pumpkin_pie" + "id": "minecraft:pumpkin_pie" }, { - "id" : "minecraft:cake" + "id": "minecraft:cake" }, { - "id" : "minecraft:dried_kelp" + "id": "minecraft:dried_kelp" }, { - "id" : "minecraft:fishing_rod" + "id": "minecraft:fishing_rod" }, { - "id" : "minecraft:carrot_on_a_stick" + "id": "minecraft:carrot_on_a_stick" }, { - "id" : "minecraft:warped_fungus_on_a_stick" + "id": "minecraft:warped_fungus_on_a_stick" }, { - "id" : "minecraft:snowball" + "id": "minecraft:snowball" }, { - "id" : "minecraft:shears" + "id": "minecraft:shears" }, { - "id" : "minecraft:flint_and_steel" + "id": "minecraft:flint_and_steel" }, { - "id" : "minecraft:lead" + "id": "minecraft:lead" }, { - "id" : "minecraft:clock" + "id": "minecraft:clock" }, { - "id" : "minecraft:compass" + "id": "minecraft:compass" }, { - "id" : "minecraft:empty_map" + "id": "minecraft:empty_map" }, { - "id" : "minecraft:empty_map", - "damage" : 2 + "id": "minecraft:empty_map", + "damage": 2 }, { - "id" : "minecraft:saddle" + "id": "minecraft:saddle" }, { - "id" : "minecraft:leather_horse_armor" + "id": "minecraft:leather_horse_armor" }, { - "id" : "minecraft:iron_horse_armor" + "id": "minecraft:iron_horse_armor" }, { - "id" : "minecraft:golden_horse_armor" + "id": "minecraft:golden_horse_armor" }, { - "id" : "minecraft:diamond_horse_armor" + "id": "minecraft:diamond_horse_armor" }, { - "id" : "minecraft:trident" + "id": "minecraft:trident" }, { - "id" : "minecraft:turtle_helmet" + "id": "minecraft:turtle_helmet" }, { - "id" : "minecraft:elytra" + "id": "minecraft:elytra" }, { - "id" : "minecraft:totem_of_undying" + "id": "minecraft:totem_of_undying" }, { - "id" : "minecraft:glass_bottle" + "id": "minecraft:glass_bottle" }, { - "id" : "minecraft:experience_bottle" + "id": "minecraft:experience_bottle" }, { - "id" : "minecraft:potion" + "id": "minecraft:potion" }, { - "id" : "minecraft:potion", - "damage" : 1 + "id": "minecraft:potion", + "damage": 1 }, { - "id" : "minecraft:potion", - "damage" : 2 + "id": "minecraft:potion", + "damage": 2 }, { - "id" : "minecraft:potion", - "damage" : 3 + "id": "minecraft:potion", + "damage": 3 }, { - "id" : "minecraft:potion", - "damage" : 4 + "id": "minecraft:potion", + "damage": 4 }, { - "id" : "minecraft:potion", - "damage" : 5 + "id": "minecraft:potion", + "damage": 5 }, { - "id" : "minecraft:potion", - "damage" : 6 + "id": "minecraft:potion", + "damage": 6 }, { - "id" : "minecraft:potion", - "damage" : 7 + "id": "minecraft:potion", + "damage": 7 }, { - "id" : "minecraft:potion", - "damage" : 8 + "id": "minecraft:potion", + "damage": 8 }, { - "id" : "minecraft:potion", - "damage" : 9 + "id": "minecraft:potion", + "damage": 9 }, { - "id" : "minecraft:potion", - "damage" : 10 + "id": "minecraft:potion", + "damage": 10 }, { - "id" : "minecraft:potion", - "damage" : 11 + "id": "minecraft:potion", + "damage": 11 }, { - "id" : "minecraft:potion", - "damage" : 12 + "id": "minecraft:potion", + "damage": 12 }, { - "id" : "minecraft:potion", - "damage" : 13 + "id": "minecraft:potion", + "damage": 13 }, { - "id" : "minecraft:potion", - "damage" : 14 + "id": "minecraft:potion", + "damage": 14 }, { - "id" : "minecraft:potion", - "damage" : 15 + "id": "minecraft:potion", + "damage": 15 }, { - "id" : "minecraft:potion", - "damage" : 16 + "id": "minecraft:potion", + "damage": 16 }, { - "id" : "minecraft:potion", - "damage" : 17 + "id": "minecraft:potion", + "damage": 17 }, { - "id" : "minecraft:potion", - "damage" : 18 + "id": "minecraft:potion", + "damage": 18 }, { - "id" : "minecraft:potion", - "damage" : 19 + "id": "minecraft:potion", + "damage": 19 }, { - "id" : "minecraft:potion", - "damage" : 20 + "id": "minecraft:potion", + "damage": 20 }, { - "id" : "minecraft:potion", - "damage" : 21 + "id": "minecraft:potion", + "damage": 21 }, { - "id" : "minecraft:potion", - "damage" : 22 + "id": "minecraft:potion", + "damage": 22 }, { - "id" : "minecraft:potion", - "damage" : 23 + "id": "minecraft:potion", + "damage": 23 }, { - "id" : "minecraft:potion", - "damage" : 24 + "id": "minecraft:potion", + "damage": 24 }, { - "id" : "minecraft:potion", - "damage" : 25 + "id": "minecraft:potion", + "damage": 25 }, { - "id" : "minecraft:potion", - "damage" : 26 + "id": "minecraft:potion", + "damage": 26 }, { - "id" : "minecraft:potion", - "damage" : 27 + "id": "minecraft:potion", + "damage": 27 }, { - "id" : "minecraft:potion", - "damage" : 28 + "id": "minecraft:potion", + "damage": 28 }, { - "id" : "minecraft:potion", - "damage" : 29 + "id": "minecraft:potion", + "damage": 29 }, { - "id" : "minecraft:potion", - "damage" : 30 + "id": "minecraft:potion", + "damage": 30 }, { - "id" : "minecraft:potion", - "damage" : 31 + "id": "minecraft:potion", + "damage": 31 }, { - "id" : "minecraft:potion", - "damage" : 32 + "id": "minecraft:potion", + "damage": 32 }, { - "id" : "minecraft:potion", - "damage" : 33 + "id": "minecraft:potion", + "damage": 33 }, { - "id" : "minecraft:potion", - "damage" : 34 + "id": "minecraft:potion", + "damage": 34 }, { - "id" : "minecraft:potion", - "damage" : 35 + "id": "minecraft:potion", + "damage": 35 }, { - "id" : "minecraft:potion", - "damage" : 36 + "id": "minecraft:potion", + "damage": 36 }, { - "id" : "minecraft:potion", - "damage" : 37 + "id": "minecraft:potion", + "damage": 37 }, { - "id" : "minecraft:potion", - "damage" : 38 + "id": "minecraft:potion", + "damage": 38 }, { - "id" : "minecraft:potion", - "damage" : 39 + "id": "minecraft:potion", + "damage": 39 }, { - "id" : "minecraft:potion", - "damage" : 40 + "id": "minecraft:potion", + "damage": 40 }, { - "id" : "minecraft:potion", - "damage" : 41 + "id": "minecraft:potion", + "damage": 41 }, { - "id" : "minecraft:potion", - "damage" : 42 + "id": "minecraft:potion", + "damage": 42 }, { - "id" : "minecraft:splash_potion" + "id": "minecraft:splash_potion" }, { - "id" : "minecraft:splash_potion", - "damage" : 1 + "id": "minecraft:splash_potion", + "damage": 1 }, { - "id" : "minecraft:splash_potion", - "damage" : 2 + "id": "minecraft:splash_potion", + "damage": 2 }, { - "id" : "minecraft:splash_potion", - "damage" : 3 + "id": "minecraft:splash_potion", + "damage": 3 }, { - "id" : "minecraft:splash_potion", - "damage" : 4 + "id": "minecraft:splash_potion", + "damage": 4 }, { - "id" : "minecraft:splash_potion", - "damage" : 5 + "id": "minecraft:splash_potion", + "damage": 5 }, { - "id" : "minecraft:splash_potion", - "damage" : 6 + "id": "minecraft:splash_potion", + "damage": 6 }, { - "id" : "minecraft:splash_potion", - "damage" : 7 + "id": "minecraft:splash_potion", + "damage": 7 }, { - "id" : "minecraft:splash_potion", - "damage" : 8 + "id": "minecraft:splash_potion", + "damage": 8 }, { - "id" : "minecraft:splash_potion", - "damage" : 9 + "id": "minecraft:splash_potion", + "damage": 9 }, { - "id" : "minecraft:splash_potion", - "damage" : 10 + "id": "minecraft:splash_potion", + "damage": 10 }, { - "id" : "minecraft:splash_potion", - "damage" : 11 + "id": "minecraft:splash_potion", + "damage": 11 }, { - "id" : "minecraft:splash_potion", - "damage" : 12 + "id": "minecraft:splash_potion", + "damage": 12 }, { - "id" : "minecraft:splash_potion", - "damage" : 13 + "id": "minecraft:splash_potion", + "damage": 13 }, { - "id" : "minecraft:splash_potion", - "damage" : 14 + "id": "minecraft:splash_potion", + "damage": 14 }, { - "id" : "minecraft:splash_potion", - "damage" : 15 + "id": "minecraft:splash_potion", + "damage": 15 }, { - "id" : "minecraft:splash_potion", - "damage" : 16 + "id": "minecraft:splash_potion", + "damage": 16 }, { - "id" : "minecraft:splash_potion", - "damage" : 17 + "id": "minecraft:splash_potion", + "damage": 17 }, { - "id" : "minecraft:splash_potion", - "damage" : 18 + "id": "minecraft:splash_potion", + "damage": 18 }, { - "id" : "minecraft:splash_potion", - "damage" : 19 + "id": "minecraft:splash_potion", + "damage": 19 }, { - "id" : "minecraft:splash_potion", - "damage" : 20 + "id": "minecraft:splash_potion", + "damage": 20 }, { - "id" : "minecraft:splash_potion", - "damage" : 21 + "id": "minecraft:splash_potion", + "damage": 21 }, { - "id" : "minecraft:splash_potion", - "damage" : 22 + "id": "minecraft:splash_potion", + "damage": 22 }, { - "id" : "minecraft:splash_potion", - "damage" : 23 + "id": "minecraft:splash_potion", + "damage": 23 }, { - "id" : "minecraft:splash_potion", - "damage" : 24 + "id": "minecraft:splash_potion", + "damage": 24 }, { - "id" : "minecraft:splash_potion", - "damage" : 25 + "id": "minecraft:splash_potion", + "damage": 25 }, { - "id" : "minecraft:splash_potion", - "damage" : 26 + "id": "minecraft:splash_potion", + "damage": 26 }, { - "id" : "minecraft:splash_potion", - "damage" : 27 + "id": "minecraft:splash_potion", + "damage": 27 }, { - "id" : "minecraft:splash_potion", - "damage" : 28 + "id": "minecraft:splash_potion", + "damage": 28 }, { - "id" : "minecraft:splash_potion", - "damage" : 29 + "id": "minecraft:splash_potion", + "damage": 29 }, { - "id" : "minecraft:splash_potion", - "damage" : 30 + "id": "minecraft:splash_potion", + "damage": 30 }, { - "id" : "minecraft:splash_potion", - "damage" : 31 + "id": "minecraft:splash_potion", + "damage": 31 }, { - "id" : "minecraft:splash_potion", - "damage" : 32 + "id": "minecraft:splash_potion", + "damage": 32 }, { - "id" : "minecraft:splash_potion", - "damage" : 33 + "id": "minecraft:splash_potion", + "damage": 33 }, { - "id" : "minecraft:splash_potion", - "damage" : 34 + "id": "minecraft:splash_potion", + "damage": 34 }, { - "id" : "minecraft:splash_potion", - "damage" : 35 + "id": "minecraft:splash_potion", + "damage": 35 }, { - "id" : "minecraft:splash_potion", - "damage" : 36 + "id": "minecraft:splash_potion", + "damage": 36 }, { - "id" : "minecraft:splash_potion", - "damage" : 37 + "id": "minecraft:splash_potion", + "damage": 37 }, { - "id" : "minecraft:splash_potion", - "damage" : 38 + "id": "minecraft:splash_potion", + "damage": 38 }, { - "id" : "minecraft:splash_potion", - "damage" : 39 + "id": "minecraft:splash_potion", + "damage": 39 }, { - "id" : "minecraft:splash_potion", - "damage" : 40 + "id": "minecraft:splash_potion", + "damage": 40 }, { - "id" : "minecraft:splash_potion", - "damage" : 41 + "id": "minecraft:splash_potion", + "damage": 41 }, { - "id" : "minecraft:splash_potion", - "damage" : 42 + "id": "minecraft:splash_potion", + "damage": 42 }, { - "id" : "minecraft:lingering_potion" + "id": "minecraft:lingering_potion" }, { - "id" : "minecraft:lingering_potion", - "damage" : 1 + "id": "minecraft:lingering_potion", + "damage": 1 }, { - "id" : "minecraft:lingering_potion", - "damage" : 2 + "id": "minecraft:lingering_potion", + "damage": 2 }, { - "id" : "minecraft:lingering_potion", - "damage" : 3 + "id": "minecraft:lingering_potion", + "damage": 3 }, { - "id" : "minecraft:lingering_potion", - "damage" : 4 + "id": "minecraft:lingering_potion", + "damage": 4 }, { - "id" : "minecraft:lingering_potion", - "damage" : 5 + "id": "minecraft:lingering_potion", + "damage": 5 }, { - "id" : "minecraft:lingering_potion", - "damage" : 6 + "id": "minecraft:lingering_potion", + "damage": 6 }, { - "id" : "minecraft:lingering_potion", - "damage" : 7 + "id": "minecraft:lingering_potion", + "damage": 7 }, { - "id" : "minecraft:lingering_potion", - "damage" : 8 + "id": "minecraft:lingering_potion", + "damage": 8 }, { - "id" : "minecraft:lingering_potion", - "damage" : 9 + "id": "minecraft:lingering_potion", + "damage": 9 }, { - "id" : "minecraft:lingering_potion", - "damage" : 10 + "id": "minecraft:lingering_potion", + "damage": 10 }, { - "id" : "minecraft:lingering_potion", - "damage" : 11 + "id": "minecraft:lingering_potion", + "damage": 11 }, { - "id" : "minecraft:lingering_potion", - "damage" : 12 + "id": "minecraft:lingering_potion", + "damage": 12 }, { - "id" : "minecraft:lingering_potion", - "damage" : 13 + "id": "minecraft:lingering_potion", + "damage": 13 }, { - "id" : "minecraft:lingering_potion", - "damage" : 14 + "id": "minecraft:lingering_potion", + "damage": 14 }, { - "id" : "minecraft:lingering_potion", - "damage" : 15 + "id": "minecraft:lingering_potion", + "damage": 15 }, { - "id" : "minecraft:lingering_potion", - "damage" : 16 + "id": "minecraft:lingering_potion", + "damage": 16 }, { - "id" : "minecraft:lingering_potion", - "damage" : 17 + "id": "minecraft:lingering_potion", + "damage": 17 }, { - "id" : "minecraft:lingering_potion", - "damage" : 18 + "id": "minecraft:lingering_potion", + "damage": 18 }, { - "id" : "minecraft:lingering_potion", - "damage" : 19 + "id": "minecraft:lingering_potion", + "damage": 19 }, { - "id" : "minecraft:lingering_potion", - "damage" : 20 + "id": "minecraft:lingering_potion", + "damage": 20 }, { - "id" : "minecraft:lingering_potion", - "damage" : 21 + "id": "minecraft:lingering_potion", + "damage": 21 }, { - "id" : "minecraft:lingering_potion", - "damage" : 22 + "id": "minecraft:lingering_potion", + "damage": 22 }, { - "id" : "minecraft:lingering_potion", - "damage" : 23 + "id": "minecraft:lingering_potion", + "damage": 23 }, { - "id" : "minecraft:lingering_potion", - "damage" : 24 + "id": "minecraft:lingering_potion", + "damage": 24 }, { - "id" : "minecraft:lingering_potion", - "damage" : 25 + "id": "minecraft:lingering_potion", + "damage": 25 }, { - "id" : "minecraft:lingering_potion", - "damage" : 26 + "id": "minecraft:lingering_potion", + "damage": 26 }, { - "id" : "minecraft:lingering_potion", - "damage" : 27 + "id": "minecraft:lingering_potion", + "damage": 27 }, { - "id" : "minecraft:lingering_potion", - "damage" : 28 + "id": "minecraft:lingering_potion", + "damage": 28 }, { - "id" : "minecraft:lingering_potion", - "damage" : 29 + "id": "minecraft:lingering_potion", + "damage": 29 }, { - "id" : "minecraft:lingering_potion", - "damage" : 30 + "id": "minecraft:lingering_potion", + "damage": 30 }, { - "id" : "minecraft:lingering_potion", - "damage" : 31 + "id": "minecraft:lingering_potion", + "damage": 31 }, { - "id" : "minecraft:lingering_potion", - "damage" : 32 + "id": "minecraft:lingering_potion", + "damage": 32 }, { - "id" : "minecraft:lingering_potion", - "damage" : 33 + "id": "minecraft:lingering_potion", + "damage": 33 }, { - "id" : "minecraft:lingering_potion", - "damage" : 34 + "id": "minecraft:lingering_potion", + "damage": 34 }, { - "id" : "minecraft:lingering_potion", - "damage" : 35 + "id": "minecraft:lingering_potion", + "damage": 35 }, { - "id" : "minecraft:lingering_potion", - "damage" : 36 + "id": "minecraft:lingering_potion", + "damage": 36 }, { - "id" : "minecraft:lingering_potion", - "damage" : 37 + "id": "minecraft:lingering_potion", + "damage": 37 }, { - "id" : "minecraft:lingering_potion", - "damage" : 38 + "id": "minecraft:lingering_potion", + "damage": 38 }, { - "id" : "minecraft:lingering_potion", - "damage" : 39 + "id": "minecraft:lingering_potion", + "damage": 39 }, { - "id" : "minecraft:lingering_potion", - "damage" : 40 + "id": "minecraft:lingering_potion", + "damage": 40 }, { - "id" : "minecraft:lingering_potion", - "damage" : 41 + "id": "minecraft:lingering_potion", + "damage": 41 }, { - "id" : "minecraft:lingering_potion", - "damage" : 42 + "id": "minecraft:lingering_potion", + "damage": 42 }, { - "id" : "minecraft:spyglass" + "id": "minecraft:spyglass" }, { - "id" : "minecraft:stick" + "id": "minecraft:stick" }, { - "id" : "minecraft:bed" + "id": "minecraft:bed" }, { - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 }, { - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 }, { - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 }, { - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "id" : "minecraft:torch", - "blockRuntimeId" : 7111 + "blockState": "minecraft:torch" }, { - "id" : "minecraft:soul_torch", - "blockRuntimeId" : 6711 + "blockState": "minecraft:soul_torch" }, { - "id" : "minecraft:sea_pickle", - "blockRuntimeId" : 6571 + "blockState": "minecraft:sea_pickle" }, { - "id" : "minecraft:lantern", - "blockRuntimeId" : 5268 + "blockState": "minecraft:lantern" }, { - "id" : "minecraft:soul_lantern", - "blockRuntimeId" : 6707 + "blockState": "minecraft:soul_lantern" }, { - "id" : "minecraft:crafting_table", - "blockRuntimeId" : 3730 + "blockState": "minecraft:candle;candles=0;lit=0" }, { - "id" : "minecraft:cartography_table", - "blockRuntimeId" : 947 + "blockState": "minecraft:white_candle;candles=0;lit=0" }, { - "id" : "minecraft:fletching_table", - "blockRuntimeId" : 4761 + "blockState": "minecraft:orange_candle;candles=0;lit=0" }, { - "id" : "minecraft:smithing_table", - "blockRuntimeId" : 6633 + "blockState": "minecraft:magenta_candle;candles=0;lit=0" }, { - "id" : "minecraft:beehive", - "blockRuntimeId" : 260 + "blockState": "minecraft:light_blue_candle;candles=0;lit=0" }, { - "id" : "minecraft:campfire" + "blockState": "minecraft:yellow_candle;candles=0;lit=0" }, { - "id" : "minecraft:soul_campfire" + "blockState": "minecraft:lime_candle;candles=0;lit=0" }, { - "id" : "minecraft:furnace", - "blockRuntimeId" : 4813 + "blockState": "minecraft:pink_candle;candles=0;lit=0" }, { - "id" : "minecraft:blast_furnace", - "blockRuntimeId" : 659 + "blockState": "minecraft:gray_candle;candles=0;lit=0" }, { - "id" : "minecraft:smoker", - "blockRuntimeId" : 6634 + "blockState": "minecraft:light_gray_candle;candles=0;lit=0" }, { - "id" : "minecraft:respawn_anchor", - "blockRuntimeId" : 6522 + "blockState": "minecraft:cyan_candle;candles=0;lit=0" }, { - "id" : "minecraft:brewing_stand" + "blockState": "minecraft:purple_candle;candles=0;lit=0" }, { - "id" : "minecraft:anvil", - "blockRuntimeId" : 152 + "blockState": "minecraft:blue_candle" }, { - "id" : "minecraft:anvil", - "blockRuntimeId" : 156 + "blockState": "minecraft:brown_candle;candles=0;lit=0" }, { - "id" : "minecraft:anvil", - "blockRuntimeId" : 160 + "blockState": "minecraft:green_candle;candles=0;lit=0" }, { - "id" : "minecraft:grindstone", - "blockRuntimeId" : 4937 + "blockState": "minecraft:red_candle;candles=0;lit=0" }, { - "id" : "minecraft:enchanting_table", - "blockRuntimeId" : 4668 + "blockState": "minecraft:black_candle;candles=0;lit=0" }, { - "id" : "minecraft:bookshelf", - "blockRuntimeId" : 684 + "blockState": "minecraft:crafting_table" }, { - "id" : "minecraft:lectern", - "blockRuntimeId" : 5339 + "blockState": "minecraft:cartography_table" }, { - "id" : "minecraft:cauldron" + "blockState": "minecraft:fletching_table" }, { - "id" : "minecraft:composter", - "blockRuntimeId" : 3594 + "blockState": "minecraft:smithing_table" }, { - "id" : "minecraft:chest", - "blockRuntimeId" : 1083 + "blockState": "minecraft:beehive" }, { - "id" : "minecraft:trapped_chest", - "blockRuntimeId" : 7133 + "id": "minecraft:campfire" }, { - "id" : "minecraft:ender_chest", - "blockRuntimeId" : 4695 + "id": "minecraft:soul_campfire" }, { - "id" : "minecraft:barrel", - "blockRuntimeId" : 201 + "blockState": "minecraft:furnace" }, { - "id" : "minecraft:undyed_shulker_box", - "blockRuntimeId" : 7216 + "blockState": "minecraft:blast_furnace" }, { - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:smoker" }, { - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6592 + "blockState": "minecraft:respawn_anchor" }, { - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6591 + "id": "minecraft:brewing_stand" }, { - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:anvil" }, { - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:anvil;damage=slightly_damaged" }, { - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6598 + "blockState": "minecraft:anvil;damage=very_damaged" }, { - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6585 + "blockState": "minecraft:grindstone" }, { - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6588 + "blockState": "minecraft:enchanting_table" }, { - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6589 + "blockState": "minecraft:bookshelf" }, { - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6597 + "blockState": "minecraft:lectern" }, { - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6593 + "id": "minecraft:cauldron" }, { - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6587 + "blockState": "minecraft:composter" }, { - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:chest" }, { - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6594 + "blockState": "minecraft:trapped_chest" }, { - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6586 + "blockState": "minecraft:ender_chest" }, { - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6590 + "blockState": "minecraft:barrel" }, { - "id" : "minecraft:armor_stand" + "blockState": "minecraft:undyed_shulker_box" }, { - "id" : "minecraft:noteblock", - "blockRuntimeId" : 5579 + "blockState": "minecraft:shulker_box" }, { - "id" : "minecraft:jukebox", - "blockRuntimeId" : 5113 + "blockState": "minecraft:shulker_box;color=silver" }, { - "id" : "minecraft:music_disc_13" + "blockState": "minecraft:shulker_box;color=gray" }, { - "id" : "minecraft:music_disc_cat" + "blockState": "minecraft:shulker_box;color=black" }, { - "id" : "minecraft:music_disc_blocks" + "blockState": "minecraft:shulker_box;color=brown" }, { - "id" : "minecraft:music_disc_chirp" + "blockState": "minecraft:shulker_box;color=red" }, { - "id" : "minecraft:music_disc_far" + "blockState": "minecraft:shulker_box;color=orange" }, { - "id" : "minecraft:music_disc_mall" + "blockState": "minecraft:shulker_box;color=yellow" }, { - "id" : "minecraft:music_disc_mellohi" + "blockState": "minecraft:shulker_box;color=lime" }, { - "id" : "minecraft:music_disc_stal" + "blockState": "minecraft:shulker_box;color=green" }, { - "id" : "minecraft:music_disc_strad" + "blockState": "minecraft:shulker_box;color=cyan" }, { - "id" : "minecraft:music_disc_ward" + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "id" : "minecraft:music_disc_11" + "blockState": "minecraft:shulker_box;color=blue" }, { - "id" : "minecraft:music_disc_wait" + "blockState": "minecraft:shulker_box;color=purple" }, { - "id" : "minecraft:music_disc_pigstep" + "blockState": "minecraft:shulker_box;color=magenta" }, { - "id" : "minecraft:glowstone_dust" + "blockState": "minecraft:shulker_box;color=pink" }, { - "id" : "minecraft:glowstone", - "blockRuntimeId" : 4899 + "id": "minecraft:armor_stand" }, { - "id" : "minecraft:redstone_lamp", - "blockRuntimeId" : 6469 + "blockState": "minecraft:noteblock" }, { - "id" : "minecraft:sealantern", - "blockRuntimeId" : 6582 + "blockState": "minecraft:jukebox" }, { - "id" : "minecraft:oak_sign" + "id": "minecraft:music_disc_13" }, { - "id" : "minecraft:spruce_sign" + "id": "minecraft:music_disc_cat" }, { - "id" : "minecraft:birch_sign" + "id": "minecraft:music_disc_blocks" }, { - "id" : "minecraft:jungle_sign" + "id": "minecraft:music_disc_chirp" }, { - "id" : "minecraft:acacia_sign" + "id": "minecraft:music_disc_far" }, { - "id" : "minecraft:dark_oak_sign" + "id": "minecraft:music_disc_mall" }, { - "id" : "minecraft:crimson_sign" + "id": "minecraft:music_disc_mellohi" }, { - "id" : "minecraft:warped_sign" + "id": "minecraft:music_disc_stal" }, { - "id" : "minecraft:painting" + "id": "minecraft:music_disc_strad" }, { - "id" : "minecraft:frame" + "id": "minecraft:music_disc_ward" }, { - "id" : "minecraft:honey_bottle" + "id": "minecraft:music_disc_11" }, { - "id" : "minecraft:flower_pot" + "id": "minecraft:music_disc_wait" }, { - "id" : "minecraft:bowl" + "id": "minecraft:music_disc_otherside" }, { - "id" : "minecraft:bucket" + "id": "minecraft:music_disc_pigstep" }, { - "id" : "minecraft:milk_bucket" + "id": "minecraft:glowstone_dust" }, { - "id" : "minecraft:water_bucket" + "blockState": "minecraft:glowstone" }, { - "id" : "minecraft:lava_bucket" + "blockState": "minecraft:redstone_lamp" }, { - "id" : "minecraft:cod_bucket" + "blockState": "minecraft:sea_lantern" }, { - "id" : "minecraft:salmon_bucket" + "id": "minecraft:oak_sign" }, { - "id" : "minecraft:tropical_fish_bucket" + "id": "minecraft:spruce_sign" }, { - "id" : "minecraft:pufferfish_bucket" + "id": "minecraft:birch_sign" }, { - "id" : "minecraft:powder_snow_bucket" + "id": "minecraft:jungle_sign" }, { - "id" : "minecraft:axolotl_bucket" + "id": "minecraft:acacia_sign" }, { - "id" : "minecraft:glow_frame" + "id": "minecraft:dark_oak_sign" }, { - "id" : "minecraft:skull", - "damage" : 3 + "id": "minecraft:crimson_sign" }, { - "id" : "minecraft:skull", - "damage" : 2 + "id": "minecraft:warped_sign" }, { - "id" : "minecraft:skull", - "damage" : 4 + "id": "minecraft:painting" }, { - "id" : "minecraft:skull", - "damage" : 5 + "id": "minecraft:frame" }, { - "id" : "minecraft:skull" + "blockState": "minecraft:glow_frame" }, { - "id" : "minecraft:skull", - "damage" : 1 + "id": "minecraft:honey_bottle" }, { - "id" : "minecraft:beacon", - "blockRuntimeId" : 217 + "id": "minecraft:flower_pot" }, { - "id" : "minecraft:bell", - "blockRuntimeId" : 292 + "id": "minecraft:bowl" }, { - "id" : "minecraft:conduit", - "blockRuntimeId" : 3635 + "id": "minecraft:bucket" }, { - "id" : "minecraft:stonecutter_block", - "blockRuntimeId" : 7049 + "id": "minecraft:milk_bucket" }, { - "id" : "minecraft:end_portal_frame", - "blockRuntimeId" : 4680 + "id": "minecraft:water_bucket" }, { - "id" : "minecraft:coal" + "id": "minecraft:lava_bucket" }, { - "id" : "minecraft:charcoal" + "id": "minecraft:cod_bucket" }, { - "id" : "minecraft:diamond" + "id": "minecraft:salmon_bucket" }, { - "id" : "minecraft:iron_nugget" + "id": "minecraft:tropical_fish_bucket" }, { - "id" : "minecraft:raw_iron" + "id": "minecraft:pufferfish_bucket" }, { - "id" : "minecraft:raw_gold" + "id": "minecraft:powder_snow_bucket" }, { - "id" : "minecraft:raw_copper" + "id": "minecraft:axolotl_bucket" }, { - "id" : "minecraft:copper_ingot" + "id": "minecraft:skull", + "damage": 3 }, { - "id" : "minecraft:iron_ingot" + "id": "minecraft:skull", + "damage": 2 }, { - "id" : "minecraft:netherite_scrap" + "id": "minecraft:skull", + "damage": 4 }, { - "id" : "minecraft:netherite_ingot" + "id": "minecraft:skull", + "damage": 5 }, { - "id" : "minecraft:gold_nugget" + "id": "minecraft:skull" }, { - "id" : "minecraft:gold_ingot" + "id": "minecraft:skull", + "damage": 1 }, { - "id" : "minecraft:emerald" + "blockState": "minecraft:beacon" }, { - "id" : "minecraft:quartz" + "blockState": "minecraft:bell" }, { - "id" : "minecraft:clay_ball" + "blockState": "minecraft:conduit" }, { - "id" : "minecraft:brick" + "blockState": "minecraft:stonecutter_block" }, { - "id" : "minecraft:netherbrick" + "blockState": "minecraft:end_portal_frame" }, { - "id" : "minecraft:prismarine_shard" + "id": "minecraft:coal" }, { - "id" : "minecraft:amethyst_shard" + "id": "minecraft:charcoal" }, { - "id" : "minecraft:prismarine_crystals" + "id": "minecraft:diamond" }, { - "id" : "minecraft:nautilus_shell" + "id": "minecraft:iron_nugget" }, { - "id" : "minecraft:heart_of_the_sea" + "id": "minecraft:raw_iron" }, { - "id" : "minecraft:scute" + "id": "minecraft:raw_gold" }, { - "id" : "minecraft:phantom_membrane" + "id": "minecraft:raw_copper" }, { - "id" : "minecraft:string" + "id": "minecraft:copper_ingot" }, { - "id" : "minecraft:feather" + "id": "minecraft:iron_ingot" }, { - "id" : "minecraft:flint" + "id": "minecraft:netherite_scrap" }, { - "id" : "minecraft:gunpowder" + "id": "minecraft:netherite_ingot" }, { - "id" : "minecraft:leather" + "id": "minecraft:gold_nugget" }, { - "id" : "minecraft:rabbit_hide" + "id": "minecraft:gold_ingot" }, { - "id" : "minecraft:rabbit_foot" + "id": "minecraft:emerald" }, { - "id" : "minecraft:fire_charge" + "id": "minecraft:quartz" }, { - "id" : "minecraft:blaze_rod" + "id": "minecraft:clay_ball" }, { - "id" : "minecraft:blaze_powder" + "id": "minecraft:brick" }, { - "id" : "minecraft:magma_cream" + "id": "minecraft:netherbrick" }, { - "id" : "minecraft:fermented_spider_eye" + "id": "minecraft:prismarine_shard" }, { - "id" : "minecraft:dragon_breath" + "id": "minecraft:amethyst_shard" }, { - "id" : "minecraft:shulker_shell" + "id": "minecraft:prismarine_crystals" }, { - "id" : "minecraft:ghast_tear" + "id": "minecraft:nautilus_shell" }, { - "id" : "minecraft:slime_ball" + "id": "minecraft:heart_of_the_sea" }, { - "id" : "minecraft:ender_pearl" + "id": "minecraft:scute" }, { - "id" : "minecraft:ender_eye" + "id": "minecraft:phantom_membrane" }, { - "id" : "minecraft:nether_star" + "id": "minecraft:string" }, { - "id" : "minecraft:end_rod", - "blockRuntimeId" : 4688 + "id": "minecraft:feather" }, { - "id" : "minecraft:lightning_rod", - "blockRuntimeId" : 5401 + "id": "minecraft:flint" }, { - "id" : "minecraft:end_crystal" + "id": "minecraft:gunpowder" }, { - "id" : "minecraft:paper" + "id": "minecraft:leather" }, { - "id" : "minecraft:book" + "id": "minecraft:rabbit_hide" }, { - "id" : "minecraft:writable_book" + "id": "minecraft:rabbit_foot" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQAAAIDAGx2bAEAAAA=" + "id": "minecraft:fire_charge" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQAAAIDAGx2bAIAAAA=" + "id": "minecraft:blaze_rod" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQAAAIDAGx2bAMAAAA=" + "id": "minecraft:blaze_powder" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQAAAIDAGx2bAQAAAA=" + "id": "minecraft:magma_cream" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQBAAIDAGx2bAEAAAA=" + "id": "minecraft:fermented_spider_eye" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQBAAIDAGx2bAIAAAA=" + "id": "minecraft:dragon_breath" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQBAAIDAGx2bAMAAAA=" + "id": "minecraft:shulker_shell" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQBAAIDAGx2bAQAAAA=" + "id": "minecraft:ghast_tear" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQCAAIDAGx2bAEAAAA=" + "id": "minecraft:slime_ball" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQCAAIDAGx2bAIAAAA=" + "id": "minecraft:ender_pearl" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQCAAIDAGx2bAMAAAA=" + "id": "minecraft:ender_eye" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQCAAIDAGx2bAQAAAA=" + "id": "minecraft:nether_star" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQDAAIDAGx2bAEAAAA=" + "blockState": "minecraft:end_rod" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQDAAIDAGx2bAIAAAA=" + "blockState": "minecraft:lightning_rod;facing_direction=0" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQDAAIDAGx2bAMAAAA=" + "id": "minecraft:end_crystal" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQDAAIDAGx2bAQAAAA=" + "id": "minecraft:paper" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQEAAIDAGx2bAEAAAA=" + "id": "minecraft:book" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQEAAIDAGx2bAIAAAA=" + "id": "minecraft:writable_book" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQEAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQAAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQEAAIDAGx2bAQAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQAAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQFAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQAAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQFAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQAAAIDAGx2bAQAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQFAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQBAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQGAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQBAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQGAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQBAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQGAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQBAAIDAGx2bAQAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQHAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQCAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQHAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQCAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQHAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQCAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQIAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQCAAIDAGx2bAQAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQDAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQDAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQDAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAQAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQDAAIDAGx2bAQAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAUAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQEAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQEAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQEAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQEAAIDAGx2bAQAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAQAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQFAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAUAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQFAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQFAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQGAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQGAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAQAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQGAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAUAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQHAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQMAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQHAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQMAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQHAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQNAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQIAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQNAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQOAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQOAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQOAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAQAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAUAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAQAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAUAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAQAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQQAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAUAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQRAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQRAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQRAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQSAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAQAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQSAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAUAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQSAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQMAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQMAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQNAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQNAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAQAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQOAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAUAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQOAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQUAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQOAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQUAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQVAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQWAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQXAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAQAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQXAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAUAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQXAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQQAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQYAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQRAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQYAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQRAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQYAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQRAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQZAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQSAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQZAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQSAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQaAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQSAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQbAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQcAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAQAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAUAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAQAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQUAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAUAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQUAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQeAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQVAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQeAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQWAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQeAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQXAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQfAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQXAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQfAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQXAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQfAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQYAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQgAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQYAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQhAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQYAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQiAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQZAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQiAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQZAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQiAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQaAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQiAAIDAGx2bAQAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQbAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQjAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQcAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQjAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQjAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQkAAIDAGx2bAEAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQkAAIDAGx2bAIAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAQAAAA=" }, { - "id" : "minecraft:enchanted_book", - "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQkAAIDAGx2bAMAAAA=" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAUAAAA=" }, { - "id" : "minecraft:oak_boat" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQeAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:spruce_boat" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQeAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:birch_boat" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQeAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:jungle_boat" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQfAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:acacia_boat" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQfAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:dark_oak_boat" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQfAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:rail", - "blockRuntimeId" : 6400 + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQgAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:golden_rail", - "blockRuntimeId" : 4902 + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQhAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:detector_rail", - "blockRuntimeId" : 4411 + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQiAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:activator_rail", - "blockRuntimeId" : 122 + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQiAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:minecart" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQiAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:chest_minecart" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQiAAIDAGx2bAQAAAA=" }, { - "id" : "minecraft:hopper_minecart" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQjAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:tnt_minecart" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQjAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:redstone" + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQjAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:redstone_block", - "blockRuntimeId" : 6468 + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQkAAIDAGx2bAEAAAA=" }, { - "id" : "minecraft:redstone_torch", - "blockRuntimeId" : 6471 + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQkAAIDAGx2bAIAAAA=" }, { - "id" : "minecraft:lever", - "blockRuntimeId" : 5347 + "id": "minecraft:enchanted_book", + "nbt_b64": "CgAACQQAZW5jaAoBAAAAAgIAaWQkAAIDAGx2bAMAAAA=" }, { - "id" : "minecraft:wooden_button", - "blockRuntimeId" : 7587 + "id": "minecraft:oak_boat" }, { - "id" : "minecraft:spruce_button", - "blockRuntimeId" : 6720 + "id": "minecraft:spruce_boat" }, { - "id" : "minecraft:birch_button", - "blockRuntimeId" : 356 + "id": "minecraft:birch_boat" }, { - "id" : "minecraft:jungle_button", - "blockRuntimeId" : 5114 + "id": "minecraft:jungle_boat" }, { - "id" : "minecraft:acacia_button" + "id": "minecraft:acacia_boat" }, { - "id" : "minecraft:dark_oak_button", - "blockRuntimeId" : 3886 + "id": "minecraft:dark_oak_boat" }, { - "id" : "minecraft:stone_button", - "blockRuntimeId" : 6949 + "blockState": "minecraft:rail" }, { - "id" : "minecraft:crimson_button", - "blockRuntimeId" : 3731 + "blockState": "minecraft:golden_rail" }, { - "id" : "minecraft:warped_button", - "blockRuntimeId" : 7284 + "blockState": "minecraft:detector_rail" }, { - "id" : "minecraft:polished_blackstone_button", - "blockRuntimeId" : 5844 + "blockState": "minecraft:activator_rail" }, { - "id" : "minecraft:tripwire_hook", - "blockRuntimeId" : 7155 + "id": "minecraft:minecart" }, { - "id" : "minecraft:wooden_pressure_plate", - "blockRuntimeId" : 7631 + "id": "minecraft:chest_minecart" }, { - "id" : "minecraft:spruce_pressure_plate", - "blockRuntimeId" : 6780 + "id": "minecraft:hopper_minecart" }, { - "id" : "minecraft:birch_pressure_plate", - "blockRuntimeId" : 416 + "id": "minecraft:tnt_minecart" }, { - "id" : "minecraft:jungle_pressure_plate", - "blockRuntimeId" : 5174 + "id": "minecraft:redstone" }, { - "id" : "minecraft:acacia_pressure_plate", - "blockRuntimeId" : 60 + "blockState": "minecraft:redstone_block" }, { - "id" : "minecraft:dark_oak_pressure_plate", - "blockRuntimeId" : 3946 + "blockState": "minecraft:redstone_torch" }, { - "id" : "minecraft:crimson_pressure_plate", - "blockRuntimeId" : 3800 + "blockState": "minecraft:lever" }, { - "id" : "minecraft:warped_pressure_plate", - "blockRuntimeId" : 7353 + "blockState": "minecraft:wooden_button" }, { - "id" : "minecraft:stone_pressure_plate", - "blockRuntimeId" : 6961 + "blockState": "minecraft:spruce_button" }, { - "id" : "minecraft:light_weighted_pressure_plate", - "blockRuntimeId" : 5385 + "blockState": "minecraft:birch_button" }, { - "id" : "minecraft:heavy_weighted_pressure_plate", - "blockRuntimeId" : 5001 + "blockState": "minecraft:jungle_button" }, { - "id" : "minecraft:polished_blackstone_pressure_plate", - "blockRuntimeId" : 5858 + "blockState": "minecraft:acacia_button" }, { - "id" : "minecraft:observer", - "blockRuntimeId" : 5588 + "blockState": "minecraft:dark_oak_button" }, { - "id" : "minecraft:daylight_detector", - "blockRuntimeId" : 4016 + "blockState": "minecraft:stone_button" }, { - "id" : "minecraft:repeater" + "blockState": "minecraft:crimson_button" }, { - "id" : "minecraft:comparator" + "blockState": "minecraft:warped_button" }, { - "id" : "minecraft:hopper" + "blockState": "minecraft:polished_blackstone_button" }, { - "id" : "minecraft:dropper", - "blockRuntimeId" : 4538 + "blockState": "minecraft:tripwire_hook" }, { - "id" : "minecraft:dispenser", - "blockRuntimeId" : 4439 + "blockState": "minecraft:wooden_pressure_plate" }, { - "id" : "minecraft:piston", - "blockRuntimeId" : 5629 + "blockState": "minecraft:spruce_pressure_plate" }, { - "id" : "minecraft:sticky_piston", - "blockRuntimeId" : 6923 + "blockState": "minecraft:birch_pressure_plate" }, { - "id" : "minecraft:tnt", - "blockRuntimeId" : 7107 + "blockState": "minecraft:jungle_pressure_plate" }, { - "id" : "minecraft:name_tag" + "blockState": "minecraft:acacia_pressure_plate" }, { - "id" : "minecraft:loom", - "blockRuntimeId" : 5457 + "blockState": "minecraft:dark_oak_pressure_plate" }, { - "id" : "minecraft:banner" + "blockState": "minecraft:crimson_pressure_plate" }, { - "id" : "minecraft:banner", - "damage" : 8 + "blockState": "minecraft:warped_pressure_plate" }, { - "id" : "minecraft:banner", - "damage" : 7 + "blockState": "minecraft:stone_pressure_plate" }, { - "id" : "minecraft:banner", - "damage" : 15 + "blockState": "minecraft:light_weighted_pressure_plate" }, { - "id" : "minecraft:banner", - "damage" : 12 + "blockState": "minecraft:heavy_weighted_pressure_plate" }, { - "id" : "minecraft:banner", - "damage" : 14 + "blockState": "minecraft:polished_blackstone_pressure_plate" }, { - "id" : "minecraft:banner", - "damage" : 1 + "blockState": "minecraft:observer" }, { - "id" : "minecraft:banner", - "damage" : 4 + "blockState": "minecraft:daylight_detector" }, { - "id" : "minecraft:banner", - "damage" : 5 + "id": "minecraft:repeater" }, { - "id" : "minecraft:banner", - "damage" : 13 + "id": "minecraft:comparator" }, { - "id" : "minecraft:banner", - "damage" : 9 + "id": "minecraft:hopper" }, { - "id" : "minecraft:banner", - "damage" : 3 + "blockState": "minecraft:dropper;facing_direction=3" }, { - "id" : "minecraft:banner", - "damage" : 11 + "blockState": "minecraft:dispenser;facing_direction=3" }, { - "id" : "minecraft:banner", - "damage" : 10 + "blockState": "minecraft:piston;facing_direction=1" }, { - "id" : "minecraft:banner", - "damage" : 2 + "blockState": "minecraft:sticky_piston;facing_direction=1" }, { - "id" : "minecraft:banner", - "damage" : 6 + "blockState": "minecraft:tnt" }, { - "id" : "minecraft:banner", - "damage" : 15, - "nbt_b64" : "CgAAAwQAVHlwZQEAAAAA" + "id": "minecraft:name_tag" }, { - "id" : "minecraft:creeper_banner_pattern" + "blockState": "minecraft:loom" }, { - "id" : "minecraft:skull_banner_pattern" + "id": "minecraft:banner" }, { - "id" : "minecraft:flower_banner_pattern" + "id": "minecraft:banner", + "damage": 8 }, { - "id" : "minecraft:mojang_banner_pattern" + "id": "minecraft:banner", + "damage": 7 }, { - "id" : "minecraft:field_masoned_banner_pattern" + "id": "minecraft:banner", + "damage": 15 }, { - "id" : "minecraft:bordure_indented_banner_pattern" + "id": "minecraft:banner", + "damage": 12 }, { - "id" : "minecraft:piglin_banner_pattern" + "id": "minecraft:banner", + "damage": 14 }, { - "id" : "minecraft:firework_rocket", - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwAAAAAAAQYARmxpZ2h0AQAA" + "id": "minecraft:banner", + "damage": 1 }, { - "id" : "minecraft:firework_rocket", - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAABwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:banner", + "damage": 4 }, { - "id" : "minecraft:firework_rocket", - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAIBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:banner", + "damage": 5 }, { - "id" : "minecraft:firework_rocket", - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAHBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:banner", + "damage": 13 }, { - "id" : "minecraft:firework_rocket", - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAPBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:banner", + "damage": 9 }, { - "id" : "minecraft:firework_rocket", - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAMBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:banner", + "damage": 3 }, { - "id" : "minecraft:firework_rocket", - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAOBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:banner", + "damage": 11 }, { - "id" : "minecraft:firework_rocket", - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAABBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:banner", + "damage": 10 }, { - "id" : "minecraft:firework_rocket", - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAEBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:banner", + "damage": 2 }, { - "id" : "minecraft:firework_rocket", - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAFBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:banner", + "damage": 6 }, { - "id" : "minecraft:firework_rocket", - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAANBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:banner", + "nbt_b64": "CgAAAwQAVHlwZQEAAAAA", + "damage": 15 }, { - "id" : "minecraft:firework_rocket", - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAJBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:creeper_banner_pattern" }, { - "id" : "minecraft:firework_rocket", - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAADBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:skull_banner_pattern" }, { - "id" : "minecraft:firework_rocket", - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAALBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:flower_banner_pattern" }, { - "id" : "minecraft:firework_rocket", - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAKBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:mojang_banner_pattern" }, { - "id" : "minecraft:firework_rocket", - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAACBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:field_masoned_banner_pattern" }, { - "id" : "minecraft:firework_rocket", - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAGBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:bordure_indented_banner_pattern" }, { - "id" : "minecraft:firework_star", - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yIR0d/wA=" + "id": "minecraft:piglin_banner_pattern" }, { - "id" : "minecraft:firework_star", - "damage" : 8, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yUk9H/wA=" + "id": "minecraft:globe_banner_pattern" }, { - "id" : "minecraft:firework_star", - "damage" : 7, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yl52d/wA=" + "id": "minecraft:firework_rocket", + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwAAAAAAAQYARmxpZ2h0AQAA" }, { - "id" : "minecraft:firework_star", - "damage" : 15, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9y8PDw/wA=" + "id": "minecraft:firework_rocket", + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAABwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" }, { - "id" : "minecraft:firework_star", - "damage" : 12, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9y2rM6/wA=" + "id": "minecraft:firework_rocket", + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAIBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" }, { - "id" : "minecraft:firework_star", - "damage" : 14, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yHYD5/wA=" + "id": "minecraft:firework_rocket", + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAHBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" }, { - "id" : "minecraft:firework_star", - "damage" : 1, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yJi6w/wA=" + "id": "minecraft:firework_rocket", + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAPBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" }, { - "id" : "minecraft:firework_star", - "damage" : 4, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yqkQ8/wA=" + "id": "minecraft:firework_rocket", + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAMBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" }, { - "id" : "minecraft:firework_star", - "damage" : 5, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yuDKJ/wA=" + "id": "minecraft:firework_rocket", + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAOBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" }, { - "id" : "minecraft:firework_star", - "damage" : 13, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yvU7H/wA=" + "id": "minecraft:firework_rocket", + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAABBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" }, { - "id" : "minecraft:firework_star", - "damage" : 9, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yqovz/wA=" + "id": "minecraft:firework_rocket", + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAEBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" }, { - "id" : "minecraft:firework_star", - "damage" : 3, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yMlSD/wA=" + "id": "minecraft:firework_rocket", + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAFBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" }, { - "id" : "minecraft:firework_star", - "damage" : 11, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yPdj+/wA=" + "id": "minecraft:firework_rocket", + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAANBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" }, { - "id" : "minecraft:firework_star", - "damage" : 10, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yH8eA/wA=" + "id": "minecraft:firework_rocket", + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAJBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" }, { - "id" : "minecraft:firework_star", - "damage" : 2, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yFnxe/wA=" + "id": "minecraft:firework_rocket", + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAADBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" }, { - "id" : "minecraft:firework_star", - "damage" : 6, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9ynJwW/wA=" + "id": "minecraft:firework_rocket", + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAALBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" }, { - "id" : "minecraft:chain" + "id": "minecraft:firework_rocket", + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAKBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" }, { - "id" : "minecraft:target", - "blockRuntimeId" : 7105 + "id": "minecraft:firework_rocket", + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAACBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" }, { - "id" : "minecraft:lodestone_compass" + "id": "minecraft:firework_rocket", + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAGBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yIR0d/wA=" + }, + { + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yUk9H/wA=", + "damage": 8 + }, + { + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yl52d/wA=", + "damage": 7 + }, + { + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9y8PDw/wA=", + "damage": 15 + }, + { + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9y2rM6/wA=", + "damage": 12 + }, + { + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yHYD5/wA=", + "damage": 14 + }, + { + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yJi6w/wA=", + "damage": 1 + }, + { + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yqkQ8/wA=", + "damage": 4 + }, + { + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yuDKJ/wA=", + "damage": 5 + }, + { + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yvU7H/wA=", + "damage": 13 + }, + { + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yqovz/wA=", + "damage": 9 + }, + { + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yMlSD/wA=", + "damage": 3 + }, + { + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yPdj+/wA=", + "damage": 11 + }, + { + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yH8eA/wA=", + "damage": 10 + }, + { + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yFnxe/wA=", + "damage": 2 + }, + { + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9ynJwW/wA=", + "damage": 6 + }, + { + "id": "minecraft:chain" + }, + { + "blockState": "minecraft:target" + }, + { + "id": "minecraft:lodestone_compass" } ] } diff --git a/src/main/resources/entity_identifiers.dat b/src/main/resources/entity_identifiers.dat index b9da310f500..dcea7672750 100644 Binary files a/src/main/resources/entity_identifiers.dat and b/src/main/resources/entity_identifiers.dat differ diff --git a/src/main/resources/item_mappings.json b/src/main/resources/item_mappings.json new file mode 100644 index 00000000000..614aa3b589b --- /dev/null +++ b/src/main/resources/item_mappings.json @@ -0,0 +1,127 @@ +{ + "minecraft:banner_pattern": { + "0": "minecraft:creeper_banner_pattern", + "1": "minecraft:skull_banner_pattern", + "2": "minecraft:flower_banner_pattern", + "3": "minecraft:mojang_banner_pattern", + "4": "minecraft:field_masoned_banner_pattern", + "5": "minecraft:bordure_indented_banner_pattern", + "6": "minecraft:piglin_banner_pattern" + }, + "minecraft:boat": { + "0": "minecraft:oak_boat", + "1": "minecraft:spruce_boat", + "2": "minecraft:birch_boat", + "3": "minecraft:jungle_boat", + "4": "minecraft:acacia_boat", + "5": "minecraft:dark_oak_boat" + }, + "minecraft:bucket": { + "0": "minecraft:bucket", + "1": "minecraft:milk_bucket", + "2": "minecraft:cod_bucket", + "3": "minecraft:salmon_bucket", + "4": "minecraft:tropical_fish_bucket", + "5": "minecraft:pufferfish_bucket", + "8": "minecraft:water_bucket", + "10": "minecraft:lava_bucket" + }, + "minecraft:coal": { + "1": "minecraft:charcoal" + }, + "minecraft:dye": { + "0": "minecraft:ink_sac", + "1": "minecraft:red_dye", + "2": "minecraft:green_dye", + "3": "minecraft:cocoa_beans", + "4": "minecraft:lapis_lazuli", + "5": "minecraft:purple_dye", + "6": "minecraft:cyan_dye", + "7": "minecraft:light_gray_dye", + "8": "minecraft:gray_dye", + "9": "minecraft:pink_dye", + "10": "minecraft:lime_dye", + "11": "minecraft:yellow_dye", + "12": "minecraft:light_blue_dye", + "13": "minecraft:magenta_dye", + "14": "minecraft:orange_dye", + "15": "minecraft:bone_meal", + "16": "minecraft:black_dye", + "17": "minecraft:brown_dye", + "18": "minecraft:blue_dye", + "19": "minecraft:white_dye" + }, + "minecraft:spawn_egg": { + "0": "", + "10": "minecraft:chicken_spawn_egg", + "11": "minecraft:cow_spawn_egg", + "12": "minecraft:pig_spawn_egg", + "13": "minecraft:sheep_spawn_egg", + "14": "minecraft:wolf_spawn_egg", + "15": "minecraft:villager_spawn_egg", + "16": "minecraft:mooshroom_spawn_egg", + "17": "minecraft:squid_spawn_egg", + "18": "minecraft:rabbit_spawn_egg", + "19": "minecraft:bat_spawn_egg", + "22": "minecraft:ocelot_spawn_egg", + "23": "minecraft:horse_spawn_egg", + "24": "minecraft:donkey_spawn_egg", + "25": "minecraft:mule_spawn_egg", + "26": "minecraft:skeleton_horse_spawn_egg", + "27": "minecraft:zombie_horse_spawn_egg", + "28": "minecraft:polar_bear_spawn_egg", + "29": "minecraft:llama_spawn_egg", + "30": "minecraft:parrot_spawn_egg", + "31": "minecraft:dolphin_spawn_egg", + "32": "minecraft:zombie_spawn_egg", + "33": "minecraft:creeper_spawn_egg", + "34": "minecraft:skeleton_spawn_egg", + "35": "minecraft:spider_spawn_egg", + "36": "minecraft:zombie_pigman_spawn_egg", + "37": "minecraft:slime_spawn_egg", + "38": "minecraft:enderman_spawn_egg", + "39": "minecraft:silverfish_spawn_egg", + "40": "minecraft:cave_spider_spawn_egg", + "41": "minecraft:ghast_spawn_egg", + "42": "minecraft:magma_cube_spawn_egg", + "43": "minecraft:blaze_spawn_egg", + "44": "minecraft:zombie_villager_spawn_egg", + "45": "minecraft:witch_spawn_egg", + "46": "minecraft:stray_spawn_egg", + "47": "minecraft:husk_spawn_egg", + "48": "minecraft:wither_skeleton_spawn_egg", + "49": "minecraft:guardian_spawn_egg", + "50": "minecraft:elder_guardian_spawn_egg", + "51": "minecraft:npc_spawn_egg", + "54": "minecraft:shulker_spawn_egg", + "55": "minecraft:endermite_spawn_egg", + "56": "minecraft:agent_spawn_egg", + "57": "minecraft:vindicator_spawn_egg", + "58": "minecraft:phantom_spawn_egg", + "59": "minecraft:ravager_spawn_egg", + "74": "minecraft:turtle_spawn_egg", + "75": "minecraft:cat_spawn_egg", + "104": "minecraft:evoker_spawn_egg", + "105": "minecraft:vex_spawn_egg", + "108": "minecraft:pufferfish_spawn_egg", + "109": "minecraft:salmon_spawn_egg", + "110": "minecraft:drowned_spawn_egg", + "111": "minecraft:tropical_fish_spawn_egg", + "112": "minecraft:cod_spawn_egg", + "113": "minecraft:panda_spawn_egg", + "114": "minecraft:pillager_spawn_egg", + "115": "minecraft:villager_spawn_egg", + "116": "minecraft:zombie_villager_spawn_egg", + "118": "minecraft:wandering_trader_spawn_egg", + "121": "minecraft:fox_spawn_egg", + "122": "minecraft:bee_spawn_egg", + "123": "minecraft:piglin_spawn_egg", + "124": "minecraft:hoglin_spawn_egg", + "125": "minecraft:strider_spawn_egg", + "126": "minecraft:zoglin_spawn_egg", + "127": "minecraft:piglin_brute_spawn_egg", + "128": "minecraft:goat_spawn_egg", + "129": "minecraft:glow_squid_spawn_egg", + "130": "minecraft:axolotl_spawn_egg" + } +} \ No newline at end of file diff --git a/src/main/resources/lang b/src/main/resources/lang index feb3be3d1b1..b3c7b5c8d7b 160000 --- a/src/main/resources/lang +++ b/src/main/resources/lang @@ -1 +1 @@ -Subproject commit feb3be3d1b17b23171c1d28d977aedbbdccef326 +Subproject commit b3c7b5c8d7bc760805205e6b8cc270211b4ce022 diff --git a/src/main/resources/legacy_item_ids.json b/src/main/resources/legacy_item_ids.json new file mode 100644 index 00000000000..cd116b4ff8e --- /dev/null +++ b/src/main/resources/legacy_item_ids.json @@ -0,0 +1,810 @@ +{ + "minecraft:quartz_bricks": -304, + "minecraft:cracked_nether_bricks": -303, + "minecraft:chiseled_nether_bricks": -302, + "minecraft:stripped_warped_hyphae": -301, + "minecraft:stripped_crimson_hyphae": -300, + "minecraft:crimson_hyphae": -299, + "minecraft:warped_hyphae": -298, + "minecraft:polished_blackstone_wall": -297, + "minecraft:polished_blackstone_button": -296, + "minecraft:polished_blackstone_pressure_plate": -295, + "minecraft:polished_blackstone_double_slab": -294, + "minecraft:polished_blackstone_slab": -293, + "minecraft:polished_blackstone_stairs": -292, + "minecraft:polished_blackstone": -291, + "minecraft:item.soul_campfire": -290, + "minecraft:crying_obsidian": -289, + "minecraft:nether_gold_ore": -288, + "minecraft:twisting_vines": -287, + "minecraft:item.chain": -286, + "minecraft:polished_blackstone_brick_double_slab": -285, + "minecraft:polished_blackstone_brick_slab": -284, + "minecraft:blackstone_double_slab": -283, + "minecraft:blackstone_slab": -282, + "minecraft:gilded_blackstone": -281, + "minecraft:cracked_polished_blackstone_bricks": -280, + "minecraft:chiseled_polished_blackstone": -279, + "minecraft:polished_blackstone_brick_wall": -278, + "minecraft:blackstone_wall": -277, + "minecraft:blackstone_stairs": -276, + "minecraft:polished_blackstone_brick_stairs": -275, + "minecraft:polished_blackstone_bricks": -274, + "minecraft:blackstone": -273, + "minecraft:respawn_anchor": -272, + "minecraft:ancient_debris": -271, + "minecraft:netherite_block": -270, + "minecraft:soul_lantern": -269, + "minecraft:soul_torch": -268, + "minecraft:warped_double_slab": -267, + "minecraft:crimson_double_slab": -266, + "minecraft:warped_slab": -265, + "minecraft:crimson_slab": -264, + "minecraft:warped_pressure_plate": -263, + "minecraft:crimson_pressure_plate": -262, + "minecraft:warped_button": -261, + "minecraft:crimson_button": -260, + "minecraft:warped_fence_gate": -259, + "minecraft:crimson_fence_gate": -258, + "minecraft:warped_fence": -257, + "minecraft:crimson_fence": -256, + "minecraft:warped_stairs": -255, + "minecraft:crimson_stairs": -254, + "minecraft:warped_wall_sign": -253, + "minecraft:crimson_wall_sign": -252, + "minecraft:warped_standing_sign": -251, + "minecraft:crimson_standing_sign": -250, + "minecraft:warped_trapdoor": -247, + "minecraft:crimson_trapdoor": -246, + "minecraft:item.warped_door": -245, + "minecraft:item.crimson_door": -244, + "minecraft:warped_planks": -243, + "minecraft:crimson_planks": -242, + "minecraft:stripped_warped_stem": -241, + "minecraft:stripped_crimson_stem": -240, + "minecraft:target": -239, + "minecraft:item.nether_sprouts": -238, + "minecraft:soul_fire": -237, + "minecraft:soul_soil": -236, + "minecraft:polished_basalt": -235, + "minecraft:basalt": -234, + "minecraft:warped_nylium": -233, + "minecraft:crimson_nylium": -232, + "minecraft:weeping_vines": -231, + "minecraft:shroomlight": -230, + "minecraft:warped_fungus": -229, + "minecraft:crimson_fungus": -228, + "minecraft:warped_wart_block": -227, + "minecraft:warped_stem": -226, + "minecraft:crimson_stem": -225, + "minecraft:warped_roots": -224, + "minecraft:crimson_roots": -223, + "minecraft:lodestone": -222, + "minecraft:honeycomb_block": -221, + "minecraft:honey_block": -220, + "minecraft:beehive": -219, + "minecraft:bee_nest": -218, + "minecraft:stickypistonarmcollision": -217, + "minecraft:wither_rose": -216, + "minecraft:light_block": -215, + "minecraft:lit_blast_furnace": -214, + "minecraft:composter": -213, + "minecraft:wood": -212, + "minecraft:jigsaw": -211, + "minecraft:lava_cauldron": -210, + "minecraft:item.campfire": -209, + "minecraft:lantern": -208, + "minecraft:sweet_berry_bush": -207, + "minecraft:bell": -206, + "minecraft:loom": -204, + "minecraft:barrel": -203, + "minecraft:smithing_table": -202, + "minecraft:fletching_table": -201, + "minecraft:cartography_table": -200, + "minecraft:lit_smoker": -199, + "minecraft:smoker": -198, + "minecraft:stonecutter_block": -197, + "minecraft:blast_furnace": -196, + "minecraft:grindstone": -195, + "minecraft:lectern": -194, + "minecraft:darkoak_wall_sign": -193, + "minecraft:darkoak_standing_sign": -192, + "minecraft:acacia_wall_sign": -191, + "minecraft:acacia_standing_sign": -190, + "minecraft:jungle_wall_sign": -189, + "minecraft:jungle_standing_sign": -188, + "minecraft:birch_wall_sign": -187, + "minecraft:birch_standing_sign": -186, + "minecraft:smooth_quartz_stairs": -185, + "minecraft:red_nether_brick_stairs": -184, + "minecraft:smooth_stone": -183, + "minecraft:spruce_wall_sign": -182, + "minecraft:spruce_standing_sign": -181, + "minecraft:normal_stone_stairs": -180, + "minecraft:mossy_cobblestone_stairs": -179, + "minecraft:end_brick_stairs": -178, + "minecraft:smooth_sandstone_stairs": -177, + "minecraft:smooth_red_sandstone_stairs": -176, + "minecraft:mossy_stone_brick_stairs": -175, + "minecraft:polished_andesite_stairs": -174, + "minecraft:polished_diorite_stairs": -173, + "minecraft:polished_granite_stairs": -172, + "minecraft:andesite_stairs": -171, + "minecraft:diorite_stairs": -170, + "minecraft:granite_stairs": -169, + "minecraft:real_double_stone_slab4": -168, + "minecraft:real_double_stone_slab3": -167, + "minecraft:double_stone_slab4": -166, + "minecraft:scaffolding": -165, + "minecraft:bamboo_sapling": -164, + "minecraft:bamboo": -163, + "minecraft:double_stone_slab3": -162, + "minecraft:barrier": -161, + "minecraft:bubble_column": -160, + "minecraft:turtle_egg": -159, + "minecraft:air": -158, + "minecraft:conduit": -157, + "minecraft:sea_pickle": -156, + "minecraft:carved_pumpkin": -155, + "minecraft:spruce_pressure_plate": -154, + "minecraft:jungle_pressure_plate": -153, + "minecraft:dark_oak_pressure_plate": -152, + "minecraft:birch_pressure_plate": -151, + "minecraft:acacia_pressure_plate": -150, + "minecraft:spruce_trapdoor": -149, + "minecraft:jungle_trapdoor": -148, + "minecraft:dark_oak_trapdoor": -147, + "minecraft:birch_trapdoor": -146, + "minecraft:acacia_trapdoor": -145, + "minecraft:spruce_button": -144, + "minecraft:jungle_button": -143, + "minecraft:dark_oak_button": -142, + "minecraft:birch_button": -141, + "minecraft:acacia_button": -140, + "minecraft:dried_kelp_block": -139, + "minecraft:item.kelp": -138, + "minecraft:coral_fan_hang3": -137, + "minecraft:coral_fan_hang2": -136, + "minecraft:coral_fan_hang": -135, + "minecraft:coral_fan_dead": -134, + "minecraft:coral_fan": -133, + "minecraft:coral_block": -132, + "minecraft:coral": -131, + "minecraft:seagrass": -130, + "minecraft:element_118": -129, + "minecraft:element_117": -128, + "minecraft:element_116": -127, + "minecraft:element_115": -126, + "minecraft:element_114": -125, + "minecraft:element_113": -124, + "minecraft:element_112": -123, + "minecraft:element_111": -122, + "minecraft:element_110": -121, + "minecraft:element_109": -120, + "minecraft:element_108": -119, + "minecraft:element_107": -118, + "minecraft:element_106": -117, + "minecraft:element_105": -116, + "minecraft:element_104": -115, + "minecraft:element_103": -114, + "minecraft:element_102": -113, + "minecraft:element_101": -112, + "minecraft:element_100": -111, + "minecraft:element_99": -110, + "minecraft:element_98": -109, + "minecraft:element_97": -108, + "minecraft:element_96": -107, + "minecraft:element_95": -106, + "minecraft:element_94": -105, + "minecraft:element_93": -104, + "minecraft:element_92": -103, + "minecraft:element_91": -102, + "minecraft:element_90": -101, + "minecraft:element_89": -100, + "minecraft:element_88": -99, + "minecraft:element_87": -98, + "minecraft:element_86": -97, + "minecraft:element_85": -96, + "minecraft:element_84": -95, + "minecraft:element_83": -94, + "minecraft:element_82": -93, + "minecraft:element_81": -92, + "minecraft:element_80": -91, + "minecraft:element_79": -90, + "minecraft:element_78": -89, + "minecraft:element_77": -88, + "minecraft:element_76": -87, + "minecraft:element_75": -86, + "minecraft:element_74": -85, + "minecraft:element_73": -84, + "minecraft:element_72": -83, + "minecraft:element_71": -82, + "minecraft:element_70": -81, + "minecraft:element_69": -80, + "minecraft:element_68": -79, + "minecraft:element_67": -78, + "minecraft:element_66": -77, + "minecraft:element_65": -76, + "minecraft:element_64": -75, + "minecraft:element_63": -74, + "minecraft:element_62": -73, + "minecraft:element_61": -72, + "minecraft:element_60": -71, + "minecraft:element_59": -70, + "minecraft:element_58": -69, + "minecraft:element_57": -68, + "minecraft:element_56": -67, + "minecraft:element_55": -66, + "minecraft:element_54": -65, + "minecraft:element_53": -64, + "minecraft:element_52": -63, + "minecraft:element_51": -62, + "minecraft:element_50": -61, + "minecraft:element_49": -60, + "minecraft:element_48": -59, + "minecraft:element_47": -58, + "minecraft:element_46": -57, + "minecraft:element_45": -56, + "minecraft:element_44": -55, + "minecraft:element_43": -54, + "minecraft:element_42": -53, + "minecraft:element_41": -52, + "minecraft:element_40": -51, + "minecraft:element_39": -50, + "minecraft:element_38": -49, + "minecraft:element_37": -48, + "minecraft:element_36": -47, + "minecraft:element_35": -46, + "minecraft:element_34": -45, + "minecraft:element_33": -44, + "minecraft:element_32": -43, + "minecraft:element_31": -42, + "minecraft:element_30": -41, + "minecraft:element_29": -40, + "minecraft:element_28": -39, + "minecraft:element_27": -38, + "minecraft:element_26": -37, + "minecraft:element_25": -36, + "minecraft:element_24": -35, + "minecraft:element_23": -34, + "minecraft:element_22": -33, + "minecraft:element_21": -32, + "minecraft:element_20": -31, + "minecraft:element_19": -30, + "minecraft:element_18": -29, + "minecraft:element_17": -28, + "minecraft:element_16": -27, + "minecraft:element_15": -26, + "minecraft:element_14": -25, + "minecraft:element_13": -24, + "minecraft:element_12": -23, + "minecraft:element_11": -22, + "minecraft:element_10": -21, + "minecraft:element_9": -20, + "minecraft:element_8": -19, + "minecraft:element_7": -18, + "minecraft:element_6": -17, + "minecraft:element_5": -16, + "minecraft:element_4": -15, + "minecraft:element_3": -14, + "minecraft:element_2": -13, + "minecraft:element_1": -12, + "minecraft:blue_ice": -11, + "minecraft:stripped_oak_log": -10, + "minecraft:stripped_dark_oak_log": -9, + "minecraft:stripped_acacia_log": -8, + "minecraft:stripped_jungle_log": -7, + "minecraft:stripped_birch_log": -6, + "minecraft:stripped_spruce_log": -5, + "minecraft:prismarine_bricks_stairs": -4, + "minecraft:dark_prismarine_stairs": -3, + "minecraft:prismarine_stairs": -2, + "minecraft:stone": 1, + "minecraft:grass": 2, + "minecraft:dirt": 3, + "minecraft:cobblestone": 4, + "minecraft:planks": 5, + "minecraft:sapling": 6, + "minecraft:bedrock": 7, + "minecraft:flowing_water": 8, + "minecraft:water": 9, + "minecraft:flowing_lava": 10, + "minecraft:lava": 11, + "minecraft:sand": 12, + "minecraft:gravel": 13, + "minecraft:gold_ore": 14, + "minecraft:iron_ore": 15, + "minecraft:coal_ore": 16, + "minecraft:log": 17, + "minecraft:leaves": 18, + "minecraft:sponge": 19, + "minecraft:glass": 20, + "minecraft:lapis_ore": 21, + "minecraft:lapis_block": 22, + "minecraft:dispenser": 23, + "minecraft:sandstone": 24, + "minecraft:noteblock": 25, + "minecraft:item.bed": 26, + "minecraft:golden_rail": 27, + "minecraft:detector_rail": 28, + "minecraft:sticky_piston": 29, + "minecraft:web": 30, + "minecraft:tallgrass": 31, + "minecraft:deadbush": 32, + "minecraft:piston": 33, + "minecraft:pistonarmcollision": 34, + "minecraft:wool": 35, + "minecraft:element_0": 36, + "minecraft:yellow_flower": 37, + "minecraft:red_flower": 38, + "minecraft:brown_mushroom": 39, + "minecraft:red_mushroom": 40, + "minecraft:gold_block": 41, + "minecraft:iron_block": 42, + "minecraft:real_double_stone_slab": 43, + "minecraft:double_stone_slab": 44, + "minecraft:brick_block": 45, + "minecraft:tnt": 46, + "minecraft:bookshelf": 47, + "minecraft:mossy_cobblestone": 48, + "minecraft:obsidian": 49, + "minecraft:torch": 50, + "minecraft:fire": 51, + "minecraft:mob_spawner": 52, + "minecraft:oak_stairs": 53, + "minecraft:chest": 54, + "minecraft:redstone_wire": 55, + "minecraft:diamond_ore": 56, + "minecraft:diamond_block": 57, + "minecraft:crafting_table": 58, + "minecraft:item.wheat": 59, + "minecraft:farmland": 60, + "minecraft:furnace": 61, + "minecraft:lit_furnace": 62, + "minecraft:standing_sign": 63, + "minecraft:item.wooden_door": 64, + "minecraft:ladder": 65, + "minecraft:rail": 66, + "minecraft:stone_stairs": 67, + "minecraft:wall_sign": 68, + "minecraft:lever": 69, + "minecraft:stone_pressure_plate": 70, + "minecraft:item.iron_door": 71, + "minecraft:wooden_pressure_plate": 72, + "minecraft:redstone_ore": 73, + "minecraft:lit_redstone_ore": 74, + "minecraft:unlit_redstone_torch": 75, + "minecraft:redstone_torch": 76, + "minecraft:stone_button": 77, + "minecraft:snow_layer": 78, + "minecraft:ice": 79, + "minecraft:snow": 80, + "minecraft:cactus": 81, + "minecraft:clay": 82, + "minecraft:item.reeds": 83, + "minecraft:jukebox": 84, + "minecraft:fence": 85, + "minecraft:pumpkin": 86, + "minecraft:netherrack": 87, + "minecraft:soul_sand": 88, + "minecraft:glowstone": 89, + "minecraft:portal": 90, + "minecraft:lit_pumpkin": 91, + "minecraft:item.cake": 92, + "minecraft:unpowered_repeater": 93, + "minecraft:powered_repeater": 94, + "minecraft:invisiblebedrock": 95, + "minecraft:trapdoor": 96, + "minecraft:monster_egg": 97, + "minecraft:stonebrick": 98, + "minecraft:brown_mushroom_block": 99, + "minecraft:red_mushroom_block": 100, + "minecraft:iron_bars": 101, + "minecraft:glass_pane": 102, + "minecraft:melon_block": 103, + "minecraft:pumpkin_stem": 104, + "minecraft:melon_stem": 105, + "minecraft:vine": 106, + "minecraft:fence_gate": 107, + "minecraft:brick_stairs": 108, + "minecraft:stone_brick_stairs": 109, + "minecraft:mycelium": 110, + "minecraft:waterlily": 111, + "minecraft:nether_brick": 112, + "minecraft:nether_brick_fence": 113, + "minecraft:nether_brick_stairs": 114, + "minecraft:item.nether_wart": 115, + "minecraft:enchanting_table": 116, + "minecraft:brewingstandblock": 117, + "minecraft:item.cauldron": 118, + "minecraft:end_portal": 119, + "minecraft:end_portal_frame": 120, + "minecraft:end_stone": 121, + "minecraft:dragon_egg": 122, + "minecraft:redstone_lamp": 123, + "minecraft:lit_redstone_lamp": 124, + "minecraft:dropper": 125, + "minecraft:activator_rail": 126, + "minecraft:cocoa": 127, + "minecraft:sandstone_stairs": 128, + "minecraft:emerald_ore": 129, + "minecraft:ender_chest": 130, + "minecraft:tripwire_hook": 131, + "minecraft:tripwire": 132, + "minecraft:emerald_block": 133, + "minecraft:spruce_stairs": 134, + "minecraft:birch_stairs": 135, + "minecraft:jungle_stairs": 136, + "minecraft:command_block": 137, + "minecraft:beacon": 138, + "minecraft:cobblestone_wall": 139, + "minecraft:item.flower_pot": 140, + "minecraft:carrots": 141, + "minecraft:potatoes": 142, + "minecraft:wooden_button": 143, + "minecraft:item.skull": 144, + "minecraft:anvil": 145, + "minecraft:trapped_chest": 146, + "minecraft:light_weighted_pressure_plate": 147, + "minecraft:heavy_weighted_pressure_plate": 148, + "minecraft:unpowered_comparator": 149, + "minecraft:powered_comparator": 150, + "minecraft:daylight_detector": 151, + "minecraft:redstone_block": 152, + "minecraft:quartz_ore": 153, + "minecraft:item.hopper": 154, + "minecraft:quartz_block": 155, + "minecraft:quartz_stairs": 156, + "minecraft:double_wooden_slab": 157, + "minecraft:wooden_slab": 158, + "minecraft:stained_hardened_clay": 159, + "minecraft:stained_glass_pane": 160, + "minecraft:leaves2": 161, + "minecraft:log2": 162, + "minecraft:acacia_stairs": 163, + "minecraft:dark_oak_stairs": 164, + "minecraft:slime": 165, + "minecraft:glow_stick": 166, + "minecraft:iron_trapdoor": 167, + "minecraft:prismarine": 168, + "minecraft:sea_lantern": 169, + "minecraft:hay_block": 170, + "minecraft:carpet": 171, + "minecraft:hardened_clay": 172, + "minecraft:coal_block": 173, + "minecraft:packed_ice": 174, + "minecraft:double_plant": 175, + "minecraft:standing_banner": 176, + "minecraft:wall_banner": 177, + "minecraft:daylight_detector_inverted": 178, + "minecraft:red_sandstone": 179, + "minecraft:red_sandstone_stairs": 180, + "minecraft:real_double_stone_slab2": 181, + "minecraft:double_stone_slab2": 182, + "minecraft:spruce_fence_gate": 183, + "minecraft:birch_fence_gate": 184, + "minecraft:jungle_fence_gate": 185, + "minecraft:dark_oak_fence_gate": 186, + "minecraft:acacia_fence_gate": 187, + "minecraft:repeating_command_block": 188, + "minecraft:chain_command_block": 189, + "minecraft:hard_glass_pane": 190, + "minecraft:hard_stained_glass_pane": 191, + "minecraft:chemical_heat": 192, + "minecraft:item.spruce_door": 193, + "minecraft:item.birch_door": 194, + "minecraft:item.jungle_door": 195, + "minecraft:item.acacia_door": 196, + "minecraft:item.dark_oak_door": 197, + "minecraft:grass_path": 198, + "minecraft:item.frame": 199, + "minecraft:chorus_flower": 200, + "minecraft:purpur_block": 201, + "minecraft:colored_torch_rg": 202, + "minecraft:purpur_stairs": 203, + "minecraft:colored_torch_bp": 204, + "minecraft:undyed_shulker_box": 205, + "minecraft:end_bricks": 206, + "minecraft:frosted_ice": 207, + "minecraft:end_rod": 208, + "minecraft:end_gateway": 209, + "minecraft:allow": 210, + "minecraft:deny": 211, + "minecraft:border_block": 212, + "minecraft:magma": 213, + "minecraft:nether_wart_block": 214, + "minecraft:red_nether_brick": 215, + "minecraft:bone_block": 216, + "minecraft:structure_void": 217, + "minecraft:shulker_box": 218, + "minecraft:purple_glazed_terracotta": 219, + "minecraft:white_glazed_terracotta": 220, + "minecraft:orange_glazed_terracotta": 221, + "minecraft:magenta_glazed_terracotta": 222, + "minecraft:light_blue_glazed_terracotta": 223, + "minecraft:yellow_glazed_terracotta": 224, + "minecraft:lime_glazed_terracotta": 225, + "minecraft:pink_glazed_terracotta": 226, + "minecraft:gray_glazed_terracotta": 227, + "minecraft:silver_glazed_terracotta": 228, + "minecraft:cyan_glazed_terracotta": 229, + "minecraft:blue_glazed_terracotta": 231, + "minecraft:brown_glazed_terracotta": 232, + "minecraft:green_glazed_terracotta": 233, + "minecraft:red_glazed_terracotta": 234, + "minecraft:black_glazed_terracotta": 235, + "minecraft:concrete": 236, + "minecraft:concrete_powder": 237, + "minecraft:chemistry_table": 238, + "minecraft:underwater_torch": 239, + "minecraft:chorus_plant": 240, + "minecraft:stained_glass": 241, + "minecraft:item.camera": 242, + "minecraft:podzol": 243, + "minecraft:item.beetroot": 244, + "minecraft:stonecutter": 245, + "minecraft:glowingobsidian": 246, + "minecraft:netherreactor": 247, + "minecraft:info_update": 248, + "minecraft:info_update2": 249, + "minecraft:movingblock": 250, + "minecraft:observer": 251, + "minecraft:structure_block": 252, + "minecraft:hard_glass": 253, + "minecraft:hard_stained_glass": 254, + "minecraft:reserved6": 255, + "minecraft:iron_shovel": 256, + "minecraft:iron_pickaxe": 257, + "minecraft:iron_axe": 258, + "minecraft:flint_and_steel": 259, + "minecraft:apple": 260, + "minecraft:bow": 261, + "minecraft:arrow": 262, + "minecraft:coal": 263, + "minecraft:diamond": 264, + "minecraft:iron_ingot": 265, + "minecraft:gold_ingot": 266, + "minecraft:iron_sword": 267, + "minecraft:wooden_sword": 268, + "minecraft:wooden_shovel": 269, + "minecraft:wooden_pickaxe": 270, + "minecraft:wooden_axe": 271, + "minecraft:stone_sword": 272, + "minecraft:stone_shovel": 273, + "minecraft:stone_pickaxe": 274, + "minecraft:stone_axe": 275, + "minecraft:diamond_sword": 276, + "minecraft:diamond_shovel": 277, + "minecraft:diamond_pickaxe": 278, + "minecraft:diamond_axe": 279, + "minecraft:stick": 280, + "minecraft:bowl": 281, + "minecraft:mushroom_stew": 282, + "minecraft:golden_sword": 283, + "minecraft:golden_shovel": 284, + "minecraft:golden_pickaxe": 285, + "minecraft:golden_axe": 286, + "minecraft:string": 287, + "minecraft:feather": 288, + "minecraft:gunpowder": 289, + "minecraft:wooden_hoe": 290, + "minecraft:stone_hoe": 291, + "minecraft:iron_hoe": 292, + "minecraft:diamond_hoe": 293, + "minecraft:golden_hoe": 294, + "minecraft:wheat_seeds": 295, + "minecraft:wheat": 296, + "minecraft:bread": 297, + "minecraft:leather_helmet": 298, + "minecraft:leather_chestplate": 299, + "minecraft:leather_leggings": 300, + "minecraft:leather_boots": 301, + "minecraft:chainmail_helmet": 302, + "minecraft:chainmail_chestplate": 303, + "minecraft:chainmail_leggings": 304, + "minecraft:chainmail_boots": 305, + "minecraft:iron_helmet": 306, + "minecraft:iron_chestplate": 307, + "minecraft:iron_leggings": 308, + "minecraft:iron_boots": 309, + "minecraft:diamond_helmet": 310, + "minecraft:diamond_chestplate": 311, + "minecraft:diamond_leggings": 312, + "minecraft:diamond_boots": 313, + "minecraft:golden_helmet": 314, + "minecraft:golden_chestplate": 315, + "minecraft:golden_leggings": 316, + "minecraft:golden_boots": 317, + "minecraft:flint": 318, + "minecraft:porkchop": 319, + "minecraft:cooked_porkchop": 320, + "minecraft:painting": 321, + "minecraft:golden_apple": 322, + "minecraft:wooden_door": 324, + "minecraft:bucket": 325, + "minecraft:minecart": 328, + "minecraft:saddle": 329, + "minecraft:iron_door": 330, + "minecraft:redstone": 331, + "minecraft:snowball": 332, + "minecraft:boat": 333, + "minecraft:leather": 334, + "minecraft:kelp": 335, + "minecraft:brick": 336, + "minecraft:clay_ball": 337, + "minecraft:paper": 339, + "minecraft:book": 340, + "minecraft:slime_ball": 341, + "minecraft:chest_minecart": 342, + "minecraft:egg": 344, + "minecraft:compass": 345, + "minecraft:fishing_rod": 346, + "minecraft:clock": 347, + "minecraft:glowstone_dust": 348, + "minecraft:dye": 351, + "minecraft:bone": 352, + "minecraft:sugar": 353, + "minecraft:cake": 354, + "minecraft:bed": 355, + "minecraft:repeater": 356, + "minecraft:cookie": 357, + "minecraft:shears": 359, + "minecraft:pumpkin_seeds": 361, + "minecraft:melon_seeds": 362, + "minecraft:beef": 363, + "minecraft:cooked_beef": 364, + "minecraft:chicken": 365, + "minecraft:cooked_chicken": 366, + "minecraft:rotten_flesh": 367, + "minecraft:ender_pearl": 368, + "minecraft:blaze_rod": 369, + "minecraft:ghast_tear": 370, + "minecraft:gold_nugget": 371, + "minecraft:nether_wart": 372, + "minecraft:potion": 373, + "minecraft:glass_bottle": 374, + "minecraft:spider_eye": 375, + "minecraft:fermented_spider_eye": 376, + "minecraft:blaze_powder": 377, + "minecraft:magma_cream": 378, + "minecraft:brewing_stand": 379, + "minecraft:cauldron": 380, + "minecraft:ender_eye": 381, + "minecraft:spawn_egg": 383, + "minecraft:experience_bottle": 384, + "minecraft:writable_book": 386, + "minecraft:written_book": 387, + "minecraft:emerald": 388, + "minecraft:frame": 389, + "minecraft:flower_pot": 390, + "minecraft:carrot": 391, + "minecraft:potato": 392, + "minecraft:baked_potato": 393, + "minecraft:poisonous_potato": 394, + "minecraft:golden_carrot": 396, + "minecraft:skull": 397, + "minecraft:pumpkin_pie": 400, + "minecraft:enchanted_book": 403, + "minecraft:comparator": 404, + "minecraft:netherbrick": 405, + "minecraft:quartz": 406, + "minecraft:tnt_minecart": 407, + "minecraft:hopper_minecart": 408, + "minecraft:prismarine_shard": 409, + "minecraft:hopper": 410, + "minecraft:rabbit": 411, + "minecraft:cooked_rabbit": 412, + "minecraft:rabbit_stew": 413, + "minecraft:rabbit_foot": 414, + "minecraft:rabbit_hide": 415, + "minecraft:lead": 420, + "minecraft:name_tag": 421, + "minecraft:prismarine_crystals": 422, + "minecraft:armor_stand": 425, + "minecraft:end_crystal": 426, + "minecraft:spruce_door": 427, + "minecraft:birch_door": 428, + "minecraft:jungle_door": 429, + "minecraft:acacia_door": 430, + "minecraft:dark_oak_door": 431, + "minecraft:chorus_fruit": 432, + "minecraft:banner_pattern": 434, + "minecraft:dragon_breath": 437, + "minecraft:splash_potion": 438, + "minecraft:lingering_potion": 441, + "minecraft:sparkler": 442, + "minecraft:command_block_minecart": 443, + "minecraft:elytra": 444, + "minecraft:shulker_shell": 445, + "minecraft:banner": 446, + "minecraft:medicine": 447, + "minecraft:balloon": 448, + "minecraft:rapid_fertilizer": 449, + "minecraft:bleach": 451, + "minecraft:iron_nugget": 452, + "minecraft:ice_bomb": 453, + "minecraft:trident": 455, + "minecraft:beetroot": 457, + "minecraft:beetroot_seeds": 458, + "minecraft:beetroot_soup": 459, + "minecraft:salmon": 460, + "minecraft:pufferfish": 462, + "minecraft:cooked_salmon": 463, + "minecraft:dried_kelp": 464, + "minecraft:nautilus_shell": 465, + "minecraft:heart_of_the_sea": 467, + "minecraft:turtle_helmet": 469, + "minecraft:phantom_membrane": 470, + "minecraft:crossbow": 471, + "minecraft:spruce_sign": 472, + "minecraft:birch_sign": 473, + "minecraft:jungle_sign": 474, + "minecraft:acacia_sign": 475, + "minecraft:sweet_berries": 477, + "minecraft:camera": 498, + "minecraft:compound": 499, + "minecraft:shield": 513, + "minecraft:campfire": 720, + "minecraft:suspicious_stew": 734, + "minecraft:honeycomb": 736, + "minecraft:honey_bottle": 737, + "minecraft:netherite_ingot": 742, + "minecraft:netherite_sword": 743, + "minecraft:netherite_shovel": 744, + "minecraft:netherite_pickaxe": 745, + "minecraft:netherite_axe": 746, + "minecraft:netherite_hoe": 747, + "minecraft:netherite_helmet": 748, + "minecraft:netherite_chestplate": 749, + "minecraft:netherite_leggings": 750, + "minecraft:netherite_boots": 751, + "minecraft:netherite_scrap": 752, + "minecraft:crimson_sign": 753, + "minecraft:warped_sign": 754, + "minecraft:crimson_door": 755, + "minecraft:warped_door": 756, + "minecraft:warped_fungus_on_a_stick": 757, + "minecraft:chain": 758, + "minecraft:nether_sprouts": 760, + "minecraft:soul_campfire": 801, + "minecraft:enchanted_golden_apple": 466, + "minecraft:carrot_on_a_stick": 398, + "minecraft:popped_chorus_fruit": 433, + "minecraft:tropical_fish": 461, + "minecraft:cooked_cod": 350, + "minecraft:dark_oak_sign": 476, + "minecraft:empty_map": 395, + "minecraft:fire_charge": 385, + "minecraft:firework_rocket": 401, + "minecraft:firework_star": 402, + "minecraft:cod": 349, + "minecraft:diamond_horse_armor": 419, + "minecraft:golden_horse_armor": 418, + "minecraft:iron_horse_armor": 417, + "minecraft:leather_horse_armor": 416, + "minecraft:lodestone_compass": 741, + "minecraft:filled_map": 358, + "minecraft:melon_slice": 360, + "minecraft:cooked_mutton": 424, + "minecraft:mutton": 423, + "minecraft:nether_star": 399, + "minecraft:music_disc_11": 510, + "minecraft:music_disc_13": 500, + "minecraft:music_disc_blocks": 502, + "minecraft:music_disc_cat": 501, + "minecraft:music_disc_chirp": 503, + "minecraft:music_disc_far": 504, + "minecraft:music_disc_mall": 505, + "minecraft:music_disc_mellohi": 506, + "minecraft:music_disc_pigstep": 759, + "minecraft:music_disc_stal": 507, + "minecraft:music_disc_strad": 508, + "minecraft:music_disc_wait": 511, + "minecraft:music_disc_ward": 509, + "minecraft:sugar_cane": 338, + "minecraft:oak_sign": 323, + "minecraft:glistering_melon_slice": 382, + "minecraft:totem_of_undying": 450, + "minecraft:scute": 468, + "minecraft:spyglass": 772 +} \ No newline at end of file diff --git a/src/main/resources/recipes.json b/src/main/resources/recipes.json index 6f5a2cd5a35..c9b864af2ec 100644 --- a/src/main/resources/recipes.json +++ b/src/main/resources/recipes.json @@ -1,58789 +1,51037 @@ { - "version" : 440, - "recipes" : [ + "version": 503, + "recipes": [ { - "type" : 4, - "uuid" : "442d85ed-8272-4543-a6f1-418f90ded05d" + "id": "minecraft:smithingtable_diamond_axe_to_netherite_axe", + "type": 0, + "input": [ + { + "id": "minecraft:diamond_axe", + "fuzzy": true + }, + { + "id": "minecraft:netherite_ingot", + "fuzzy": true + } + ], + "output": [ + { + "id": "minecraft:netherite_axe" + } + ], + "block": "smithing_table", + "priority": 2 + }, + { + "id": "minecraft:smithingtable_diamond_boots_to_netherite_boots", + "type": 0, + "input": [ + { + "id": "minecraft:diamond_boots", + "fuzzy": true + }, + { + "id": "minecraft:netherite_ingot", + "fuzzy": true + } + ], + "output": [ + { + "id": "minecraft:netherite_boots" + } + ], + "block": "smithing_table", + "priority": 2 + }, + { + "id": "minecraft:smithingtable_diamond_chestplate_to_netherite_chestplate", + "type": 0, + "input": [ + { + "id": "minecraft:diamond_chestplate", + "fuzzy": true + }, + { + "id": "minecraft:netherite_ingot", + "fuzzy": true + } + ], + "output": [ + { + "id": "minecraft:netherite_chestplate" + } + ], + "block": "smithing_table", + "priority": 2 + }, + { + "id": "minecraft:smithingtable_diamond_helmet_to_netherite_helmet", + "type": 0, + "input": [ + { + "id": "minecraft:diamond_helmet", + "fuzzy": true + }, + { + "id": "minecraft:netherite_ingot", + "fuzzy": true + } + ], + "output": [ + { + "id": "minecraft:netherite_helmet" + } + ], + "block": "smithing_table", + "priority": 2 }, { - "type" : 4, - "uuid" : "8b36268c-1829-483c-a0f1-993b7156a8f2" + "id": "minecraft:smithingtable_diamond_hoe_to_netherite_hoe", + "type": 0, + "input": [ + { + "id": "minecraft:diamond_hoe", + "fuzzy": true + }, + { + "id": "minecraft:netherite_ingot", + "fuzzy": true + } + ], + "output": [ + { + "id": "minecraft:netherite_hoe" + } + ], + "block": "smithing_table", + "priority": 2 }, { - "type" : 4, - "uuid" : "602234e4-cac1-4353-8bb7-b1ebff70024b" + "id": "minecraft:smithingtable_diamond_leggings_to_netherite_leggings", + "type": 0, + "input": [ + { + "id": "minecraft:diamond_leggings", + "fuzzy": true + }, + { + "id": "minecraft:netherite_ingot", + "fuzzy": true + } + ], + "output": [ + { + "id": "minecraft:netherite_leggings" + } + ], + "block": "smithing_table", + "priority": 2 + }, + { + "id": "minecraft:smithingtable_diamond_pickaxe_to_netherite_pickaxe", + "type": 0, + "input": [ + { + "id": "minecraft:diamond_pickaxe", + "fuzzy": true + }, + { + "id": "minecraft:netherite_ingot", + "fuzzy": true + } + ], + "output": [ + { + "id": "minecraft:netherite_pickaxe" + } + ], + "block": "smithing_table", + "priority": 2 }, { - "id" : "minecraft:cartography_table_locator_map", - "type" : 0, - "input" : [ + "id": "minecraft:smithingtable_diamond_shovel_to_netherite_shovel", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:diamond_shovel", + "fuzzy": true }, { - "legacyId" : 391, - "id" : "minecraft:compass", - "damage" : 32767 + "id": "minecraft:netherite_ingot", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 515, - "id" : "minecraft:empty_map", - "damage" : 2 + "id": "minecraft:netherite_shovel" } ], - "block" : "cartography_table", - "priority" : 0 + "block": "smithing_table", + "priority": 2 }, { - "id" : "minecraft:cartography_table_map", - "type" : 0, - "input" : [ + "id": "minecraft:smithingtable_diamond_sword_to_netherite_sword", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:diamond_sword", + "fuzzy": true + }, + { + "id": "minecraft:netherite_ingot", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 515, - "id" : "minecraft:empty_map" + "id": "minecraft:netherite_sword" } ], - "block" : "cartography_table", - "priority" : 0 + "block": "smithing_table", + "priority": 2 }, { - "type" : 4, - "uuid" : "98c84b38-1085-46bd-b1ce-dd38c159e6cc" + "type": 4, + "uuid": "442d85ed-8272-4543-a6f1-418f90ded05d" }, { - "id" : "minecraft:chiseled_deepslate_from_cobbled_deepslate_stonecutting", - "type" : 0, - "input" : [ + "type": 4, + "uuid": "8b36268c-1829-483c-a0f1-993b7156a8f2" + }, + { + "type": 4, + "uuid": "602234e4-cac1-4353-8bb7-b1ebff70024b" + }, + { + "id": "minecraft:cartography_table_locator_map", + "type": 0, + "input": [ + { + "id": "minecraft:paper", + "fuzzy": true + }, { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate" + "id": "minecraft:compass", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : -395, - "id" : "minecraft:chiseled_deepslate", - "blockRuntimeId" : 1089 + "id": "minecraft:empty_map", + "damage": 2 } ], - "block" : "stonecutter", - "priority" : 0 + "block": "cartography_table", + "priority": 0 }, { - "id" : "minecraft:cobbled_deepslate_slab_from_cobbled_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:cartography_table_map", + "type": 0, + "input": [ { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate" + "id": "minecraft:paper", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : -380, - "id" : "minecraft:cobbled_deepslate_slab", - "count" : 2, - "blockRuntimeId" : 1105 + "id": "minecraft:empty_map" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "cartography_table", + "priority": 0 }, { - "id" : "minecraft:cobbled_deepslate_stairs_from_cobbled_deepslate_stonecutting", - "type" : 0, - "input" : [ + "type": 4, + "uuid": "98c84b38-1085-46bd-b1ce-dd38c159e6cc" + }, + { + "id": "minecraft:chiseled_deepslate_from_cobbled_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate" + "blockState": "minecraft:cobbled_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -381, - "id" : "minecraft:cobbled_deepslate_stairs", - "blockRuntimeId" : 1107 + "blockState": "minecraft:chiseled_deepslate" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:cobbled_deepslate_wall_from_cobbled_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:cobbled_deepslate_slab_from_cobbled_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate" + "blockState": "minecraft:cobbled_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -382, - "id" : "minecraft:cobbled_deepslate_wall", - "blockRuntimeId" : 1115 + "count": 2, + "blockState": "minecraft:cobbled_deepslate_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_brick_slab_from_cobbled_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:cobbled_deepslate_stairs_from_cobbled_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate" + "blockState": "minecraft:cobbled_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -392, - "id" : "minecraft:deepslate_brick_slab", - "count" : 2, - "blockRuntimeId" : 4054 + "blockState": "minecraft:cobbled_deepslate_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_brick_slab_from_deepslate_bricks_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:cobbled_deepslate_wall_from_cobbled_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -391, - "id" : "minecraft:deepslate_bricks" + "blockState": "minecraft:cobbled_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -392, - "id" : "minecraft:deepslate_brick_slab", - "count" : 2, - "blockRuntimeId" : 4054 + "blockState": "minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_connection_type_north=none;wall_connection_type_south=none;wall_connection_type_west=none;wall_post_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_brick_slab_from_polished_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_brick_slab_from_cobbled_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -383, - "id" : "minecraft:polished_deepslate" + "blockState": "minecraft:cobbled_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -392, - "id" : "minecraft:deepslate_brick_slab", - "count" : 2, - "blockRuntimeId" : 4054 + "count": 2, + "blockState": "minecraft:deepslate_brick_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_brick_stairs_from_cobbled_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_brick_slab_from_deepslate_bricks_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate" + "blockState": "minecraft:deepslate_bricks" } ], - "output" : [ + "output": [ { - "legacyId" : -393, - "id" : "minecraft:deepslate_brick_stairs", - "blockRuntimeId" : 4056 + "count": 2, + "blockState": "minecraft:deepslate_brick_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_brick_stairs_from_deepslate_bricks_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_brick_slab_from_polished_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -391, - "id" : "minecraft:deepslate_bricks" + "blockState": "minecraft:polished_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -393, - "id" : "minecraft:deepslate_brick_stairs", - "blockRuntimeId" : 4056 + "count": 2, + "blockState": "minecraft:deepslate_brick_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_brick_stairs_from_polished_deepslate_stonecut", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_brick_stairs_from_cobbled_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -383, - "id" : "minecraft:polished_deepslate" + "blockState": "minecraft:cobbled_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -393, - "id" : "minecraft:deepslate_brick_stairs", - "blockRuntimeId" : 4056 + "blockState": "minecraft:deepslate_brick_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_brick_wall_from_cobbled_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_brick_stairs_from_deepslate_bricks_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate" + "blockState": "minecraft:deepslate_bricks" } ], - "output" : [ + "output": [ { - "legacyId" : -394, - "id" : "minecraft:deepslate_brick_wall", - "blockRuntimeId" : 4064 + "blockState": "minecraft:deepslate_brick_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_brick_wall_from_deepslate_bricks_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_brick_stairs_from_polished_deepslate_stonecut", + "type": 0, + "input": [ { - "legacyId" : -391, - "id" : "minecraft:deepslate_bricks" + "blockState": "minecraft:polished_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -394, - "id" : "minecraft:deepslate_brick_wall", - "blockRuntimeId" : 4064 + "blockState": "minecraft:deepslate_brick_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_brick_wall_from_polished_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_brick_wall_from_cobbled_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -383, - "id" : "minecraft:polished_deepslate" + "blockState": "minecraft:cobbled_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -394, - "id" : "minecraft:deepslate_brick_wall", - "blockRuntimeId" : 4064 + "blockState": "minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_connection_type_north=none;wall_connection_type_south=none;wall_connection_type_west=none;wall_post_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_bricks_from_cobbled_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_brick_wall_from_deepslate_bricks_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate" + "blockState": "minecraft:deepslate_bricks" } ], - "output" : [ + "output": [ { - "legacyId" : -391, - "id" : "minecraft:deepslate_bricks", - "blockRuntimeId" : 4226 + "blockState": "minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_connection_type_north=none;wall_connection_type_south=none;wall_connection_type_west=none;wall_post_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_bricks_from_polished_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_brick_wall_from_polished_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -383, - "id" : "minecraft:polished_deepslate" + "blockState": "minecraft:polished_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -391, - "id" : "minecraft:deepslate_bricks", - "blockRuntimeId" : 4226 + "blockState": "minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_connection_type_north=none;wall_connection_type_south=none;wall_connection_type_west=none;wall_post_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_tile_slab_from_cobbled_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_bricks_from_cobbled_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate" + "blockState": "minecraft:cobbled_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -388, - "id" : "minecraft:deepslate_tile_slab", - "count" : 2, - "blockRuntimeId" : 4237 + "blockState": "minecraft:deepslate_bricks" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_tile_slab_from_deepslate_bricks_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_bricks_from_polished_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -391, - "id" : "minecraft:deepslate_bricks" + "blockState": "minecraft:polished_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -388, - "id" : "minecraft:deepslate_tile_slab", - "count" : 2, - "blockRuntimeId" : 4237 + "blockState": "minecraft:deepslate_bricks" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_tile_slab_from_deepslate_tiles_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_tile_slab_from_cobbled_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -387, - "id" : "minecraft:deepslate_tiles" + "blockState": "minecraft:cobbled_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -388, - "id" : "minecraft:deepslate_tile_slab", - "count" : 2, - "blockRuntimeId" : 4237 + "count": 2, + "blockState": "minecraft:deepslate_tile_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_tile_slab_from_polished_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_tile_slab_from_deepslate_bricks_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -383, - "id" : "minecraft:polished_deepslate" + "blockState": "minecraft:deepslate_bricks" } ], - "output" : [ + "output": [ { - "legacyId" : -388, - "id" : "minecraft:deepslate_tile_slab", - "count" : 2, - "blockRuntimeId" : 4237 + "count": 2, + "blockState": "minecraft:deepslate_tile_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_tile_stairs_from_cobbled_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_tile_slab_from_deepslate_tiles_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate" + "blockState": "minecraft:deepslate_tiles" } ], - "output" : [ + "output": [ { - "legacyId" : -389, - "id" : "minecraft:deepslate_tile_stairs", - "blockRuntimeId" : 4239 + "count": 2, + "blockState": "minecraft:deepslate_tile_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_tile_stairs_from_deepslate_bricks_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_tile_slab_from_polished_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -391, - "id" : "minecraft:deepslate_bricks" + "blockState": "minecraft:polished_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -389, - "id" : "minecraft:deepslate_tile_stairs", - "blockRuntimeId" : 4239 + "count": 2, + "blockState": "minecraft:deepslate_tile_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_tile_stairs_from_deepslate_tiles_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_tile_stairs_from_cobbled_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -387, - "id" : "minecraft:deepslate_tiles" + "blockState": "minecraft:cobbled_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -389, - "id" : "minecraft:deepslate_tile_stairs", - "blockRuntimeId" : 4239 + "blockState": "minecraft:deepslate_tile_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_tile_stairs_from_polished_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_tile_stairs_from_deepslate_bricks_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -383, - "id" : "minecraft:polished_deepslate" + "blockState": "minecraft:deepslate_bricks" } ], - "output" : [ + "output": [ { - "legacyId" : -389, - "id" : "minecraft:deepslate_tile_stairs", - "blockRuntimeId" : 4239 + "blockState": "minecraft:deepslate_tile_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_tile_wall_from_cobbled_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_tile_stairs_from_deepslate_tiles_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate" + "blockState": "minecraft:deepslate_tiles" } ], - "output" : [ + "output": [ { - "legacyId" : -390, - "id" : "minecraft:deepslate_tile_wall", - "blockRuntimeId" : 4247 + "blockState": "minecraft:deepslate_tile_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_tile_wall_from_deepslate_bricks_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_tile_stairs_from_polished_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -391, - "id" : "minecraft:deepslate_bricks" + "blockState": "minecraft:polished_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -390, - "id" : "minecraft:deepslate_tile_wall", - "blockRuntimeId" : 4247 + "blockState": "minecraft:deepslate_tile_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_tile_wall_from_deepslate_tiles_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_tile_wall_from_cobbled_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -387, - "id" : "minecraft:deepslate_tiles" + "blockState": "minecraft:cobbled_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -390, - "id" : "minecraft:deepslate_tile_wall", - "blockRuntimeId" : 4247 + "blockState": "minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_connection_type_north=none;wall_connection_type_south=none;wall_connection_type_west=none;wall_post_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_tile_wall_from_polished_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_tile_wall_from_deepslate_bricks_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -383, - "id" : "minecraft:polished_deepslate" + "blockState": "minecraft:deepslate_bricks" } ], - "output" : [ + "output": [ { - "legacyId" : -390, - "id" : "minecraft:deepslate_tile_wall", - "blockRuntimeId" : 4247 + "blockState": "minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_connection_type_north=none;wall_connection_type_south=none;wall_connection_type_west=none;wall_post_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_tiles_from_cobbled_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_tile_wall_from_deepslate_tiles_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate" + "blockState": "minecraft:deepslate_tiles" } ], - "output" : [ + "output": [ { - "legacyId" : -387, - "id" : "minecraft:deepslate_tiles", - "blockRuntimeId" : 4409 + "blockState": "minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_connection_type_north=none;wall_connection_type_south=none;wall_connection_type_west=none;wall_post_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_tiles_from_deepslate_bricks_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_tile_wall_from_polished_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -391, - "id" : "minecraft:deepslate_bricks" + "blockState": "minecraft:polished_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -387, - "id" : "minecraft:deepslate_tiles", - "blockRuntimeId" : 4409 + "blockState": "minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_connection_type_north=none;wall_connection_type_south=none;wall_connection_type_west=none;wall_post_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:deepslate_tiles_from_polished_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_tiles_from_cobbled_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -383, - "id" : "minecraft:polished_deepslate" + "blockState": "minecraft:cobbled_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -387, - "id" : "minecraft:deepslate_tiles", - "blockRuntimeId" : 4409 + "blockState": "minecraft:deepslate_tiles" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:polished_deepslate_from_cobbled_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_tiles_from_deepslate_bricks_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate" + "blockState": "minecraft:deepslate_bricks" } ], - "output" : [ + "output": [ { - "legacyId" : -383, - "id" : "minecraft:polished_deepslate", - "blockRuntimeId" : 6046 + "blockState": "minecraft:deepslate_tiles" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:polished_deepslate_slab_from_cobbled_deepslate_stonecut", - "type" : 0, - "input" : [ + "id": "minecraft:deepslate_tiles_from_polished_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate" + "blockState": "minecraft:polished_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -384, - "id" : "minecraft:polished_deepslate_slab", - "count" : 2, - "blockRuntimeId" : 6049 + "blockState": "minecraft:deepslate_tiles" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:polished_deepslate_slab_from_polished_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:polished_deepslate_from_cobbled_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -383, - "id" : "minecraft:polished_deepslate" + "blockState": "minecraft:cobbled_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -384, - "id" : "minecraft:polished_deepslate_slab", - "count" : 2, - "blockRuntimeId" : 6049 + "blockState": "minecraft:polished_deepslate" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:polished_deepslate_stairs_from_cobbled_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:polished_deepslate_slab_from_cobbled_deepslate_stonecut", + "type": 0, + "input": [ { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate" + "blockState": "minecraft:cobbled_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -385, - "id" : "minecraft:polished_deepslate_stairs", - "blockRuntimeId" : 6051 + "count": 2, + "blockState": "minecraft:polished_deepslate_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:polished_deepslate_stairs_from_polished_deepslate_stonecutting", - "type" : 0, - "input" : [ + "id": "minecraft:polished_deepslate_slab_from_polished_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -383, - "id" : "minecraft:polished_deepslate" + "blockState": "minecraft:polished_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -385, - "id" : "minecraft:polished_deepslate_stairs", - "blockRuntimeId" : 6051 + "count": 2, + "blockState": "minecraft:polished_deepslate_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:polished_deepslate_wall_from_cobbled_deepslate_stonecut", - "type" : 0, - "input" : [ + "id": "minecraft:polished_deepslate_stairs_from_cobbled_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate" + "blockState": "minecraft:cobbled_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -386, - "id" : "minecraft:polished_deepslate_wall", - "blockRuntimeId" : 6059 + "blockState": "minecraft:polished_deepslate_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:polished_deepslate_wall_from_polished_deepslate_stonecut", - "type" : 0, - "input" : [ + "id": "minecraft:polished_deepslate_stairs_from_polished_deepslate_stonecutting", + "type": 0, + "input": [ { - "legacyId" : -383, - "id" : "minecraft:polished_deepslate" + "blockState": "minecraft:polished_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -386, - "id" : "minecraft:polished_deepslate_wall", - "blockRuntimeId" : 6059 + "blockState": "minecraft:polished_deepslate_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_andesite_slab", - "type" : 0, - "input" : [ + "id": "minecraft:polished_deepslate_wall_from_cobbled_deepslate_stonecut", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 5 + "blockState": "minecraft:cobbled_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 2, - "blockRuntimeId" : 7012 + "blockState": "minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_connection_type_north=none;wall_connection_type_south=none;wall_connection_type_west=none;wall_post_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_andesite_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:polished_deepslate_wall_from_polished_deepslate_stonecut", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 5 + "blockState": "minecraft:polished_deepslate" } ], - "output" : [ + "output": [ { - "legacyId" : -171, - "id" : "minecraft:andesite_stairs", - "blockRuntimeId" : 144 + "blockState": "minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_connection_type_north=none;wall_connection_type_south=none;wall_connection_type_west=none;wall_post_bit=0" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_andesite_wall", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_andesite_slab", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 5 + "blockState": "minecraft:stone;stone_type=andesite" } ], - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1282 + "count": 2, + "blockState": "minecraft:stone_slab3;stone_slab_type_3=andesite" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_blackstone_slab_from_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_andesite_stairs", + "type": 0, + "input": [ { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "blockState": "minecraft:stone;stone_type=andesite" } ], - "output" : [ + "output": [ { - "legacyId" : -282, - "id" : "minecraft:blackstone_slab", - "count" : 2, - "blockRuntimeId" : 487 + "blockState": "minecraft:andesite_stairs" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_blackstone_stairs_from_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_andesite_wall", + "type": 0, + "input": [ { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "blockState": "minecraft:stone;stone_type=andesite" } ], - "output" : [ + "output": [ { - "legacyId" : -276, - "id" : "minecraft:blackstone_stairs", - "blockRuntimeId" : 489 + "blockState": "minecraft:cobblestone_wall;wall_block_type=andesite" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_blackstone_wall_from_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_blackstone_slab_from_blackstone", + "type": 0, + "input": [ { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : -277, - "id" : "minecraft:blackstone_wall", - "blockRuntimeId" : 497 + "count": 2, + "blockState": "minecraft:blackstone_slab" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_brick_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_blackstone_stairs_from_blackstone", + "type": 0, + "input": [ { - "legacyId" : 45, - "id" : "minecraft:brick_block" + "fuzzy": true, + "blockState": "minecraft:blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "count" : 2, - "blockRuntimeId" : 6981 + "blockState": "minecraft:blackstone_stairs" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_brick_slab_from_polished_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_blackstone_wall_from_blackstone", + "type": 0, + "input": [ { - "legacyId" : -291, - "id" : "minecraft:polished_blackstone", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : -284, - "id" : "minecraft:polished_blackstone_brick_slab", - "count" : 2, - "blockRuntimeId" : 5671 + "blockState": "minecraft:blackstone_wall" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_brick_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_brick_slab", + "type": 0, + "input": [ { - "legacyId" : 45, - "id" : "minecraft:brick_block" + "blockState": "minecraft:brick_block" } ], - "output" : [ + "output": [ { - "legacyId" : 108, - "id" : "minecraft:brick_stairs", - "blockRuntimeId" : 856 + "count": 2, + "blockState": "minecraft:stone_slab;stone_slab_type=brick" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_brick_stairs_from_polished_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_brick_slab_from_polished_blackstone", + "type": 0, + "input": [ { - "legacyId" : -291, - "id" : "minecraft:polished_blackstone", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:polished_blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : -275, - "id" : "minecraft:polished_blackstone_brick_stairs", - "blockRuntimeId" : 5673 + "count": 2, + "blockState": "minecraft:polished_blackstone_brick_slab" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_brick_wall", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_brick_stairs", + "type": 0, + "input": [ { - "legacyId" : 45, - "id" : "minecraft:brick_block" + "blockState": "minecraft:brick_block" } ], - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1284 + "blockState": "minecraft:brick_stairs" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_brick_wall_from_polished_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_brick_stairs_from_polished_blackstone", + "type": 0, + "input": [ { - "legacyId" : -291, - "id" : "minecraft:polished_blackstone", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:polished_blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : -278, - "id" : "minecraft:polished_blackstone_brick_wall", - "blockRuntimeId" : 5681 + "blockState": "minecraft:polished_blackstone_brick_stairs" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_bricks_from_polished_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_brick_wall", + "type": 0, + "input": [ { - "legacyId" : -291, - "id" : "minecraft:polished_blackstone", - "damage" : 32767 + "blockState": "minecraft:brick_block" } ], - "output" : [ + "output": [ { - "legacyId" : -274, - "id" : "minecraft:polished_blackstone_bricks", - "blockRuntimeId" : 5843 + "blockState": "minecraft:cobblestone_wall;wall_block_type=brick" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_chiseled_from_polished_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_brick_wall_from_polished_blackstone", + "type": 0, + "input": [ { - "legacyId" : -291, - "id" : "minecraft:polished_blackstone", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:polished_blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : -279, - "id" : "minecraft:chiseled_polished_blackstone", - "blockRuntimeId" : 1091 + "blockState": "minecraft:polished_blackstone_brick_wall" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_chiseled_nether_bricks_from_nether_brick", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_bricks_from_polished_blackstone", + "type": 0, + "input": [ { - "legacyId" : 112, - "id" : "minecraft:nether_brick", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:polished_blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : -302, - "id" : "minecraft:chiseled_nether_bricks", - "blockRuntimeId" : 1090 + "blockState": "minecraft:polished_blackstone_bricks" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_chiseled_polished_from_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_chiseled_from_polished_blackstone", + "type": 0, + "input": [ { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:polished_blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : -279, - "id" : "minecraft:chiseled_polished_blackstone", - "blockRuntimeId" : 1091 + "blockState": "minecraft:chiseled_polished_blackstone" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_cobbledouble_stone_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_chiseled_nether_bricks_from_nether_brick", + "type": 0, + "input": [ { - "legacyId" : 4, - "id" : "minecraft:cobblestone" + "fuzzy": true, + "blockState": "minecraft:nether_brick" } ], - "output" : [ + "output": [ { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "count" : 2, - "blockRuntimeId" : 6980 + "blockState": "minecraft:chiseled_nether_bricks" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_cobblestone_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_chiseled_polished_from_blackstone", + "type": 0, + "input": [ { - "legacyId" : 4, - "id" : "minecraft:cobblestone" + "fuzzy": true, + "blockState": "minecraft:blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : 67, - "id" : "minecraft:stone_stairs", - "blockRuntimeId" : 7035 + "blockState": "minecraft:chiseled_polished_blackstone" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_cobblestone_wall", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_cobbledouble_stone_slab", + "type": 0, + "input": [ { - "legacyId" : 4, - "id" : "minecraft:cobblestone" + "blockState": "minecraft:cobblestone" } ], - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1278 + "count": 2, + "blockState": "minecraft:stone_slab;stone_slab_type=cobblestone" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_copper_block_to_cut_copper", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_cobblestone_stairs", + "type": 0, + "input": [ { - "legacyId" : -340, - "id" : "minecraft:copper_block", - "damage" : 32767 + "blockState": "minecraft:cobblestone" } ], - "output" : [ + "output": [ { - "legacyId" : -347, - "id" : "minecraft:cut_copper", - "blockRuntimeId" : 3869 + "blockState": "minecraft:stone_stairs" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_copper_block_to_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_cobblestone_wall", + "type": 0, + "input": [ { - "legacyId" : -340, - "id" : "minecraft:copper_block", - "damage" : 32767 + "blockState": "minecraft:cobblestone" } ], - "output" : [ + "output": [ { - "legacyId" : -361, - "id" : "minecraft:cut_copper_slab", - "count" : 2, - "blockRuntimeId" : 3870 + "blockState": "minecraft:cobblestone_wall" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_copper_block_to_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_copper_block_to_cut_copper", + "type": 0, + "input": [ { - "legacyId" : -340, - "id" : "minecraft:copper_block", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:copper_block" } ], - "output" : [ + "output": [ { - "legacyId" : -354, - "id" : "minecraft:cut_copper_stairs", - "blockRuntimeId" : 3872 + "count": 4, + "blockState": "minecraft:cut_copper" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_cut_copper_to_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_copper_block_to_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : -347, - "id" : "minecraft:cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:copper_block" } ], - "output" : [ + "output": [ { - "legacyId" : -361, - "id" : "minecraft:cut_copper_slab", - "count" : 2, - "blockRuntimeId" : 3870 + "count": 8, + "blockState": "minecraft:cut_copper_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_cut_copper_to_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_copper_block_to_cut_copper_stairs", + "type": 0, + "input": [ { - "legacyId" : -347, - "id" : "minecraft:cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:copper_block" } ], - "output" : [ + "output": [ { - "legacyId" : -354, - "id" : "minecraft:cut_copper_stairs", - "blockRuntimeId" : 3872 + "count": 4, + "blockState": "minecraft:cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_dark_prismarine_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_cut_copper_to_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : 168, - "id" : "minecraft:prismarine", - "damage" : 1 + "fuzzy": true, + "blockState": "minecraft:cut_copper" } ], - "output" : [ + "output": [ { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "count" : 2, - "blockRuntimeId" : 6996 + "count": 2, + "blockState": "minecraft:cut_copper_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_dark_prismarine_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_cut_copper_to_cut_copper_stairs", + "type": 0, + "input": [ { - "legacyId" : 168, - "id" : "minecraft:prismarine", - "damage" : 1 + "fuzzy": true, + "blockState": "minecraft:cut_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -3, - "id" : "minecraft:dark_prismarine_stairs", - "blockRuntimeId" : 3986 + "blockState": "minecraft:cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_diorite_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_dark_prismarine_slab", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 3 + "blockState": "minecraft:prismarine;prismarine_block_type=dark" } ], - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 2, - "blockRuntimeId" : 7013 + "count": 2, + "blockState": "minecraft:stone_slab2;stone_slab_type_2=prismarine_dark" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_diorite_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_dark_prismarine_stairs", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 3 + "blockState": "minecraft:prismarine;prismarine_block_type=dark" } ], - "output" : [ + "output": [ { - "legacyId" : -170, - "id" : "minecraft:diorite_stairs", - "blockRuntimeId" : 4425 + "blockState": "minecraft:dark_prismarine_stairs" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_diorite_wall", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_diorite_slab", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 3 + "blockState": "minecraft:stone;stone_type=diorite" } ], - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1281 + "count": 2, + "blockState": "minecraft:stone_slab3;stone_slab_type_3=diorite" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_double_stone_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_diorite_stairs", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone" + "blockState": "minecraft:stone;stone_type=diorite" } ], - "output" : [ + "output": [ { - "legacyId" : -166, - "id" : "minecraft:double_stone_slab4", - "count" : 2, - "blockRuntimeId" : 7027 + "blockState": "minecraft:diorite_stairs" } ], - "block" : "stonecutter", - "priority" : 5 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_endbrick_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_diorite_wall", + "type": 0, + "input": [ { - "legacyId" : 121, - "id" : "minecraft:end_stone" + "blockState": "minecraft:stone;stone_type=diorite" } ], - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 2, - "blockRuntimeId" : 7009 + "blockState": "minecraft:cobblestone_wall;wall_block_type=diorite" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_endbrick_slab2", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_double_stone_slab", + "type": 0, + "input": [ { - "legacyId" : 206, - "id" : "minecraft:end_bricks" + "blockState": "minecraft:stone" } ], - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 2, - "blockRuntimeId" : 7009 + "count": 2, + "blockState": "minecraft:stone_slab4;stone_slab_type_4=stone" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 5 }, { - "id" : "minecraft:stonecutter_endbrick_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_endbrick_slab", + "type": 0, + "input": [ { - "legacyId" : 121, - "id" : "minecraft:end_stone" + "blockState": "minecraft:end_stone" } ], - "output" : [ + "output": [ { - "legacyId" : -178, - "id" : "minecraft:end_brick_stairs", - "blockRuntimeId" : 4669 + "count": 2, + "blockState": "minecraft:stone_slab3" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_endbrick_stairs2", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_endbrick_slab2", + "type": 0, + "input": [ { - "legacyId" : 206, - "id" : "minecraft:end_bricks" + "blockState": "minecraft:end_bricks" } ], - "output" : [ + "output": [ { - "legacyId" : -178, - "id" : "minecraft:end_brick_stairs", - "blockRuntimeId" : 4669 + "count": 2, + "blockState": "minecraft:stone_slab3" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_endbrick_wall", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_endbrick_stairs", + "type": 0, + "input": [ { - "legacyId" : 121, - "id" : "minecraft:end_stone" + "blockState": "minecraft:end_stone" } ], - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1288 + "blockState": "minecraft:end_brick_stairs" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_endbrick_wall2", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_endbrick_stairs2", + "type": 0, + "input": [ { - "legacyId" : 206, - "id" : "minecraft:end_bricks" + "blockState": "minecraft:end_bricks" } ], - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1288 + "blockState": "minecraft:end_brick_stairs" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_endbricks", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_endbrick_wall", + "type": 0, + "input": [ { - "legacyId" : 121, - "id" : "minecraft:end_stone" + "blockState": "minecraft:end_stone" } ], - "output" : [ + "output": [ { - "legacyId" : 206, - "id" : "minecraft:end_bricks", - "blockRuntimeId" : 4677 + "blockState": "minecraft:cobblestone_wall;wall_block_type=end_brick" } ], - "block" : "stonecutter", - "priority" : 3 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_exposed_copper_to_cut_copper", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_endbrick_wall2", + "type": 0, + "input": [ { - "legacyId" : -341, - "id" : "minecraft:exposed_copper", - "damage" : 32767 + "blockState": "minecraft:end_bricks" } ], - "output" : [ + "output": [ { - "legacyId" : -348, - "id" : "minecraft:exposed_cut_copper", - "blockRuntimeId" : 4702 + "blockState": "minecraft:cobblestone_wall;wall_block_type=end_brick" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_exposed_copper_to_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_endbricks", + "type": 0, + "input": [ { - "legacyId" : -341, - "id" : "minecraft:exposed_copper", - "damage" : 32767 + "blockState": "minecraft:end_stone" } ], - "output" : [ + "output": [ { - "legacyId" : -355, - "id" : "minecraft:exposed_cut_copper_stairs", - "blockRuntimeId" : 4705 + "blockState": "minecraft:end_bricks" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 3 }, { - "id" : "minecraft:stonecutter_exposed_copper_to_exposed_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_exposed_copper_to_cut_copper", + "type": 0, + "input": [ { - "legacyId" : -341, - "id" : "minecraft:exposed_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:exposed_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -362, - "id" : "minecraft:exposed_cut_copper_slab", - "count" : 2, - "blockRuntimeId" : 4703 + "count": 4, + "blockState": "minecraft:exposed_cut_copper" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_exposed_cut_copper_to_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_exposed_copper_to_cut_copper_stairs", + "type": 0, + "input": [ { - "legacyId" : -348, - "id" : "minecraft:exposed_cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:exposed_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -362, - "id" : "minecraft:exposed_cut_copper_slab", - "count" : 2, - "blockRuntimeId" : 4703 + "count": 4, + "blockState": "minecraft:exposed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_exposed_cut_copper_to_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_exposed_copper_to_exposed_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : -348, - "id" : "minecraft:exposed_cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:exposed_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -355, - "id" : "minecraft:exposed_cut_copper_stairs", - "blockRuntimeId" : 4705 + "count": 8, + "blockState": "minecraft:exposed_cut_copper_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_granite_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_exposed_cut_copper_to_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 1 + "fuzzy": true, + "blockState": "minecraft:exposed_cut_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 2, - "blockRuntimeId" : 7015 + "count": 2, + "blockState": "minecraft:exposed_cut_copper_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_granite_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_exposed_cut_copper_to_cut_copper_stairs", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 1 + "fuzzy": true, + "blockState": "minecraft:exposed_cut_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -169, - "id" : "minecraft:granite_stairs", - "blockRuntimeId" : 4914 + "blockState": "minecraft:exposed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_granite_wall", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_granite_slab", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 1 + "blockState": "minecraft:stone;stone_type=granite" } ], - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1280 + "count": 2, + "blockState": "minecraft:stone_slab3;stone_slab_type_3=granite" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_mossy_cobbledouble_stone_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_granite_stairs", + "type": 0, + "input": [ { - "legacyId" : 48, - "id" : "minecraft:mossy_cobblestone" + "blockState": "minecraft:stone;stone_type=granite" } ], - "output" : [ + "output": [ { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "count" : 2, - "blockRuntimeId" : 6998 + "blockState": "minecraft:granite_stairs" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_mossy_cobblestone_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_granite_wall", + "type": 0, + "input": [ { - "legacyId" : 48, - "id" : "minecraft:mossy_cobblestone" + "blockState": "minecraft:stone;stone_type=granite" } ], - "output" : [ + "output": [ { - "legacyId" : -179, - "id" : "minecraft:mossy_cobblestone_stairs", - "blockRuntimeId" : 5533 + "blockState": "minecraft:cobblestone_wall;wall_block_type=granite" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_mossy_cobblestone_wall", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_mossy_cobbledouble_stone_slab", + "type": 0, + "input": [ { - "legacyId" : 48, - "id" : "minecraft:mossy_cobblestone" + "blockState": "minecraft:mossy_cobblestone" } ], - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1279 + "count": 2, + "blockState": "minecraft:stone_slab2;stone_slab_type_2=mossy_cobblestone" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_mossy_stonebrick_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_mossy_cobblestone_stairs", + "type": 0, + "input": [ { - "legacyId" : 98, - "id" : "minecraft:stonebrick", - "damage" : 1 + "blockState": "minecraft:mossy_cobblestone" } ], - "output" : [ + "output": [ { - "legacyId" : -166, - "id" : "minecraft:double_stone_slab4", - "count" : 2, - "blockRuntimeId" : 7025 + "blockState": "minecraft:mossy_cobblestone_stairs" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_mossy_stonebrick_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_mossy_cobblestone_wall", + "type": 0, + "input": [ { - "legacyId" : 98, - "id" : "minecraft:stonebrick", - "damage" : 1 + "blockState": "minecraft:mossy_cobblestone" } ], - "output" : [ + "output": [ { - "legacyId" : -175, - "id" : "minecraft:mossy_stone_brick_stairs", - "blockRuntimeId" : 5541 + "blockState": "minecraft:cobblestone_wall;wall_block_type=mossy_cobblestone" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_mossy_stonebrick_wall", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_mossy_stonebrick_slab", + "type": 0, + "input": [ { - "legacyId" : 98, - "id" : "minecraft:stonebrick", - "damage" : 1 + "blockState": "minecraft:stonebrick;stone_brick_type=mossy" } ], - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1286 + "count": 2, + "blockState": "minecraft:stone_slab4" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_nether_brick_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_mossy_stonebrick_stairs", + "type": 0, + "input": [ { - "legacyId" : 112, - "id" : "minecraft:nether_brick" + "blockState": "minecraft:stonebrick;stone_brick_type=mossy" } ], - "output" : [ + "output": [ { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "count" : 2, - "blockRuntimeId" : 6984 + "blockState": "minecraft:mossy_stone_brick_stairs" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_nether_brick_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_mossy_stonebrick_wall", + "type": 0, + "input": [ { - "legacyId" : 112, - "id" : "minecraft:nether_brick" + "blockState": "minecraft:stonebrick;stone_brick_type=mossy" } ], - "output" : [ + "output": [ { - "legacyId" : 114, - "id" : "minecraft:nether_brick_stairs", - "blockRuntimeId" : 5553 + "blockState": "minecraft:cobblestone_wall;wall_block_type=mossy_stone_brick" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_nether_brick_wall", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_nether_brick_slab", + "type": 0, + "input": [ { - "legacyId" : 112, - "id" : "minecraft:nether_brick" + "blockState": "minecraft:nether_brick" } ], - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1287 + "count": 2, + "blockState": "minecraft:stone_slab;stone_slab_type=nether_brick" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_oxidized_copper_to_cut_copper", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_nether_brick_stairs", + "type": 0, + "input": [ { - "legacyId" : -343, - "id" : "minecraft:oxidized_copper", - "damage" : 32767 + "blockState": "minecraft:nether_brick" } ], - "output" : [ + "output": [ { - "legacyId" : -350, - "id" : "minecraft:oxidized_cut_copper", - "blockRuntimeId" : 5608 + "blockState": "minecraft:nether_brick_stairs" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_oxidized_copper_to_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_nether_brick_wall", + "type": 0, + "input": [ { - "legacyId" : -343, - "id" : "minecraft:oxidized_copper", - "damage" : 32767 + "blockState": "minecraft:nether_brick" } ], - "output" : [ + "output": [ { - "legacyId" : -364, - "id" : "minecraft:oxidized_cut_copper_slab", - "count" : 2, - "blockRuntimeId" : 5609 + "blockState": "minecraft:cobblestone_wall;wall_block_type=nether_brick" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_oxidized_copper_to_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_oxidized_copper_to_cut_copper", + "type": 0, + "input": [ { - "legacyId" : -343, - "id" : "minecraft:oxidized_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:oxidized_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -357, - "id" : "minecraft:oxidized_cut_copper_stairs", - "blockRuntimeId" : 5611 + "count": 4, + "blockState": "minecraft:oxidized_cut_copper" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_oxidized_cut_copper_to_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_oxidized_copper_to_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : -350, - "id" : "minecraft:oxidized_cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:oxidized_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -364, - "id" : "minecraft:oxidized_cut_copper_slab", - "count" : 2, - "blockRuntimeId" : 5609 + "count": 8, + "blockState": "minecraft:oxidized_cut_copper_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_oxidized_cut_copper_to_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_oxidized_copper_to_cut_copper_stairs", + "type": 0, + "input": [ { - "legacyId" : -350, - "id" : "minecraft:oxidized_cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:oxidized_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -357, - "id" : "minecraft:oxidized_cut_copper_stairs", - "blockRuntimeId" : 5611 + "count": 4, + "blockState": "minecraft:oxidized_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_polished_andesite", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_oxidized_cut_copper_to_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 5 + "fuzzy": true, + "blockState": "minecraft:oxidized_cut_copper" } ], - "output" : [ + "output": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "blockRuntimeId" : 6940 + "count": 2, + "blockState": "minecraft:oxidized_cut_copper_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 3 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_polished_andesite_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_oxidized_cut_copper_to_cut_copper_stairs", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 5 + "fuzzy": true, + "blockState": "minecraft:oxidized_cut_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 2, - "blockRuntimeId" : 7011 + "blockState": "minecraft:oxidized_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 4 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_polished_andesite_slab2", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_andesite", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 6 + "blockState": "minecraft:stone;stone_type=andesite" } ], - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 2, - "blockRuntimeId" : 7011 + "blockState": "minecraft:stone;stone_type=andesite_smooth" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 3 }, { - "id" : "minecraft:stonecutter_polished_andesite_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_andesite_slab", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 5 + "blockState": "minecraft:stone;stone_type=andesite" } ], - "output" : [ + "output": [ { - "legacyId" : -174, - "id" : "minecraft:polished_andesite_stairs", - "blockRuntimeId" : 5657 + "count": 2, + "blockState": "minecraft:stone_slab3;stone_slab_type_3=polished_andesite" } ], - "block" : "stonecutter", - "priority" : 5 + "block": "stonecutter", + "priority": 4 }, { - "id" : "minecraft:stonecutter_polished_andesite_stairs2", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_andesite_slab2", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 6 + "blockState": "minecraft:stone;stone_type=andesite_smooth" } ], - "output" : [ + "output": [ { - "legacyId" : -174, - "id" : "minecraft:polished_andesite_stairs", - "blockRuntimeId" : 5657 + "count": 2, + "blockState": "minecraft:stone_slab3;stone_slab_type_3=polished_andesite" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_polished_basalt_from_basalt", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_andesite_stairs", + "type": 0, + "input": [ { - "legacyId" : -234, - "id" : "minecraft:basalt", - "damage" : 32767 + "blockState": "minecraft:stone;stone_type=andesite" } ], - "output" : [ + "output": [ { - "legacyId" : -235, - "id" : "minecraft:polished_basalt", - "blockRuntimeId" : 5665 + "blockState": "minecraft:polished_andesite_stairs" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 5 }, { - "id" : "minecraft:stonecutter_polished_brick_slab_from_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_andesite_stairs2", + "type": 0, + "input": [ { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "blockState": "minecraft:stone;stone_type=andesite_smooth" } ], - "output" : [ + "output": [ { - "legacyId" : -284, - "id" : "minecraft:polished_blackstone_brick_slab", - "count" : 2, - "blockRuntimeId" : 5671 + "blockState": "minecraft:polished_andesite_stairs" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_polished_brick_stairs_from_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_basalt_from_basalt", + "type": 0, + "input": [ { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:basalt" } ], - "output" : [ + "output": [ { - "legacyId" : -275, - "id" : "minecraft:polished_blackstone_brick_stairs", - "blockRuntimeId" : 5673 + "blockState": "minecraft:polished_basalt" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_polished_brick_wall_from_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_brick_slab_from_blackstone", + "type": 0, + "input": [ { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : -278, - "id" : "minecraft:polished_blackstone_brick_wall", - "blockRuntimeId" : 5681 + "count": 2, + "blockState": "minecraft:polished_blackstone_brick_slab" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_polished_bricks_from_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_brick_stairs_from_blackstone", + "type": 0, + "input": [ { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : -274, - "id" : "minecraft:polished_blackstone_bricks", - "blockRuntimeId" : 5843 + "blockState": "minecraft:polished_blackstone_brick_stairs" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_polished_diorite", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_brick_wall_from_blackstone", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 3 + "fuzzy": true, + "blockState": "minecraft:blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "blockRuntimeId" : 6938 + "blockState": "minecraft:polished_blackstone_brick_wall" } ], - "block" : "stonecutter", - "priority" : 3 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_polished_diorite_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_bricks_from_blackstone", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 3 + "fuzzy": true, + "blockState": "minecraft:blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 2, - "blockRuntimeId" : 7014 + "blockState": "minecraft:polished_blackstone_bricks" } ], - "block" : "stonecutter", - "priority" : 4 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_polished_diorite_slab2", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_diorite", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 4 + "blockState": "minecraft:stone;stone_type=diorite" } ], - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 2, - "blockRuntimeId" : 7014 + "blockState": "minecraft:stone;stone_type=diorite_smooth" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 3 }, { - "id" : "minecraft:stonecutter_polished_diorite_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_diorite_slab", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 3 + "blockState": "minecraft:stone;stone_type=diorite" } ], - "output" : [ + "output": [ { - "legacyId" : -173, - "id" : "minecraft:polished_diorite_stairs", - "blockRuntimeId" : 6221 + "count": 2, + "blockState": "minecraft:stone_slab3;stone_slab_type_3=polished_diorite" } ], - "block" : "stonecutter", - "priority" : 5 + "block": "stonecutter", + "priority": 4 }, { - "id" : "minecraft:stonecutter_polished_diorite_stairs2", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_diorite_slab2", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 4 + "blockState": "minecraft:stone;stone_type=diorite_smooth" } ], - "output" : [ + "output": [ { - "legacyId" : -173, - "id" : "minecraft:polished_diorite_stairs", - "blockRuntimeId" : 6221 + "count": 2, + "blockState": "minecraft:stone_slab3;stone_slab_type_3=polished_diorite" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_polished_from_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_diorite_stairs", + "type": 0, + "input": [ { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "blockState": "minecraft:stone;stone_type=diorite" } ], - "output" : [ + "output": [ { - "legacyId" : -291, - "id" : "minecraft:polished_blackstone", - "blockRuntimeId" : 5668 + "blockState": "minecraft:polished_diorite_stairs" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 5 }, { - "id" : "minecraft:stonecutter_polished_granite", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_diorite_stairs2", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 1 + "blockState": "minecraft:stone;stone_type=diorite_smooth" } ], - "output" : [ + "output": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "blockRuntimeId" : 6936 + "blockState": "minecraft:polished_diorite_stairs" } ], - "block" : "stonecutter", - "priority" : 3 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_polished_granite_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_from_blackstone", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 1 + "fuzzy": true, + "blockState": "minecraft:blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 2, - "blockRuntimeId" : 7016 + "blockState": "minecraft:polished_blackstone" } ], - "block" : "stonecutter", - "priority" : 4 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_polished_granite_slab2", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_granite", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 2 + "blockState": "minecraft:stone;stone_type=granite" } ], - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 2, - "blockRuntimeId" : 7016 + "blockState": "minecraft:stone;stone_type=granite_smooth" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 3 }, { - "id" : "minecraft:stonecutter_polished_granite_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_granite_slab", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 1 + "blockState": "minecraft:stone;stone_type=granite" } ], - "output" : [ + "output": [ { - "legacyId" : -172, - "id" : "minecraft:polished_granite_stairs", - "blockRuntimeId" : 6229 + "count": 2, + "blockState": "minecraft:stone_slab3;stone_slab_type_3=polished_granite" } ], - "block" : "stonecutter", - "priority" : 5 + "block": "stonecutter", + "priority": 4 }, { - "id" : "minecraft:stonecutter_polished_granite_stairs2", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_granite_slab2", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 2 + "blockState": "minecraft:stone;stone_type=granite_smooth" } ], - "output" : [ + "output": [ { - "legacyId" : -172, - "id" : "minecraft:polished_granite_stairs", - "blockRuntimeId" : 6229 + "count": 2, + "blockState": "minecraft:stone_slab3;stone_slab_type_3=polished_granite" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_polished_slab_from_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_granite_stairs", + "type": 0, + "input": [ { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "blockState": "minecraft:stone;stone_type=granite" } ], - "output" : [ + "output": [ { - "legacyId" : -293, - "id" : "minecraft:polished_blackstone_slab", - "count" : 2, - "blockRuntimeId" : 5874 + "blockState": "minecraft:polished_granite_stairs" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 5 }, { - "id" : "minecraft:stonecutter_polished_stairs_from_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_granite_stairs2", + "type": 0, + "input": [ { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "blockState": "minecraft:stone;stone_type=granite_smooth" } ], - "output" : [ + "output": [ { - "legacyId" : -292, - "id" : "minecraft:polished_blackstone_stairs", - "blockRuntimeId" : 5876 + "blockState": "minecraft:polished_granite_stairs" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_polished_wall_from_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_slab_from_blackstone", + "type": 0, + "input": [ { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : -297, - "id" : "minecraft:polished_blackstone_wall", - "blockRuntimeId" : 5884 + "count": 2, + "blockState": "minecraft:polished_blackstone_slab" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_prismarine_brick_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_stairs_from_blackstone", + "type": 0, + "input": [ { - "legacyId" : 168, - "id" : "minecraft:prismarine", - "damage" : 2 + "fuzzy": true, + "blockState": "minecraft:blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "count" : 2, - "blockRuntimeId" : 6997 + "blockState": "minecraft:polished_blackstone_stairs" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_prismarine_brick_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_polished_wall_from_blackstone", + "type": 0, + "input": [ { - "legacyId" : 168, - "id" : "minecraft:prismarine", - "damage" : 2 + "fuzzy": true, + "blockState": "minecraft:blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : -4, - "id" : "minecraft:prismarine_bricks_stairs", - "blockRuntimeId" : 6284 + "blockState": "minecraft:polished_blackstone_wall" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_prismarine_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_prismarine_brick_slab", + "type": 0, + "input": [ { - "legacyId" : 168, - "id" : "minecraft:prismarine" + "blockState": "minecraft:prismarine;prismarine_block_type=bricks" } ], - "output" : [ + "output": [ { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "count" : 2, - "blockRuntimeId" : 6995 + "count": 2, + "blockState": "minecraft:stone_slab2;stone_slab_type_2=prismarine_brick" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_prismarine_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_prismarine_brick_stairs", + "type": 0, + "input": [ { - "legacyId" : 168, - "id" : "minecraft:prismarine" + "blockState": "minecraft:prismarine;prismarine_block_type=bricks" } ], - "output" : [ + "output": [ { - "legacyId" : -2, - "id" : "minecraft:prismarine_stairs", - "blockRuntimeId" : 6292 + "blockState": "minecraft:prismarine_bricks_stairs" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_prismarine_wall", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_prismarine_slab", + "type": 0, + "input": [ { - "legacyId" : 168, - "id" : "minecraft:prismarine" + "blockState": "minecraft:prismarine" } ], - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1289 + "count": 2, + "blockState": "minecraft:stone_slab2;stone_slab_type_2=prismarine_rough" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_purpur_lines", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_prismarine_stairs", + "type": 0, + "input": [ { - "legacyId" : 201, - "id" : "minecraft:purpur_block" + "blockState": "minecraft:prismarine" } ], - "output" : [ + "output": [ { - "legacyId" : 201, - "id" : "minecraft:purpur_block", - "blockRuntimeId" : 6360 + "blockState": "minecraft:prismarine_stairs" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_purpur_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_prismarine_wall", + "type": 0, + "input": [ { - "legacyId" : 201, - "id" : "minecraft:purpur_block" + "blockState": "minecraft:prismarine" } ], - "output" : [ + "output": [ { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "count" : 2, - "blockRuntimeId" : 6994 + "blockState": "minecraft:cobblestone_wall;wall_block_type=prismarine" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_purpur_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_purpur_lines", + "type": 0, + "input": [ { - "legacyId" : 201, - "id" : "minecraft:purpur_block" + "blockState": "minecraft:purpur_block" } ], - "output" : [ + "output": [ { - "legacyId" : 203, - "id" : "minecraft:purpur_stairs", - "blockRuntimeId" : 6370 + "blockState": "minecraft:purpur_block;chisel_type=lines" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_quartz_bricks_from_quartz_block", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_purpur_slab", + "type": 0, + "input": [ { - "legacyId" : 155, - "id" : "minecraft:quartz_block" + "blockState": "minecraft:purpur_block" } ], - "output" : [ + "output": [ { - "legacyId" : -304, - "id" : "minecraft:quartz_bricks", - "blockRuntimeId" : 6390 + "count": 2, + "blockState": "minecraft:stone_slab2;stone_slab_type_2=purpur" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_quartz_chiseled", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_purpur_stairs", + "type": 0, + "input": [ { - "legacyId" : 155, - "id" : "minecraft:quartz_block" + "blockState": "minecraft:purpur_block" } ], - "output" : [ + "output": [ { - "legacyId" : 155, - "id" : "minecraft:quartz_block", - "blockRuntimeId" : 6379 + "blockState": "minecraft:purpur_stairs" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_quartz_lines", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_quartz_bricks_from_quartz_block", + "type": 0, + "input": [ { - "legacyId" : 155, - "id" : "minecraft:quartz_block" + "blockState": "minecraft:quartz_block" } ], - "output" : [ + "output": [ { - "legacyId" : 155, - "id" : "minecraft:quartz_block", - "blockRuntimeId" : 6380 + "blockState": "minecraft:quartz_bricks" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_quartz_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_quartz_chiseled", + "type": 0, + "input": [ { - "legacyId" : 155, - "id" : "minecraft:quartz_block" + "blockState": "minecraft:quartz_block" } ], - "output" : [ + "output": [ { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "count" : 2, - "blockRuntimeId" : 6983 + "blockState": "minecraft:quartz_block;chisel_type=chiseled" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_quartz_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_quartz_lines", + "type": 0, + "input": [ { - "legacyId" : 155, - "id" : "minecraft:quartz_block" + "blockState": "minecraft:quartz_block" } ], - "output" : [ + "output": [ { - "legacyId" : 156, - "id" : "minecraft:quartz_stairs", - "blockRuntimeId" : 6392 + "blockState": "minecraft:quartz_block;chisel_type=lines" } ], - "block" : "stonecutter", - "priority" : 3 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_red_nether_brick_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_quartz_slab", + "type": 0, + "input": [ { - "legacyId" : 215, - "id" : "minecraft:red_nether_brick" + "blockState": "minecraft:quartz_block" } ], - "output" : [ + "output": [ { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "count" : 2, - "blockRuntimeId" : 7000 + "count": 2, + "blockState": "minecraft:stone_slab;stone_slab_type=quartz" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_red_nether_brick_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_quartz_stairs", + "type": 0, + "input": [ { - "legacyId" : 215, - "id" : "minecraft:red_nether_brick" + "blockState": "minecraft:quartz_block" } ], - "output" : [ + "output": [ { - "legacyId" : -184, - "id" : "minecraft:red_nether_brick_stairs", - "blockRuntimeId" : 6448 + "blockState": "minecraft:quartz_stairs" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 3 }, { - "id" : "minecraft:stonecutter_red_nether_brick_wall", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_red_nether_brick_slab", + "type": 0, + "input": [ { - "legacyId" : 215, - "id" : "minecraft:red_nether_brick" + "blockState": "minecraft:red_nether_brick" } ], - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1291 + "count": 2, + "blockState": "minecraft:stone_slab2;stone_slab_type_2=red_nether_brick" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_red_sanddouble_stone_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_red_nether_brick_stairs", + "type": 0, + "input": [ { - "legacyId" : 179, - "id" : "minecraft:red_sandstone" + "blockState": "minecraft:red_nether_brick" } ], - "output" : [ + "output": [ { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "count" : 2, - "blockRuntimeId" : 6993 + "blockState": "minecraft:red_nether_brick_stairs" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_red_sandstone_cut", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_red_nether_brick_wall", + "type": 0, + "input": [ { - "legacyId" : 179, - "id" : "minecraft:red_sandstone" + "blockState": "minecraft:red_nether_brick" } ], - "output" : [ + "output": [ { - "legacyId" : 179, - "id" : "minecraft:red_sandstone", - "blockRuntimeId" : 6458 + "blockState": "minecraft:cobblestone_wall;wall_block_type=red_nether_brick" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_red_sandstone_heiroglyphs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_red_sanddouble_stone_slab", + "type": 0, + "input": [ { - "legacyId" : 179, - "id" : "minecraft:red_sandstone" + "blockState": "minecraft:red_sandstone" } ], - "output" : [ + "output": [ { - "legacyId" : 179, - "id" : "minecraft:red_sandstone", - "blockRuntimeId" : 6457 + "count": 2, + "blockState": "minecraft:stone_slab2" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_red_sandstone_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_red_sandstone_cut", + "type": 0, + "input": [ { - "legacyId" : 179, - "id" : "minecraft:red_sandstone" + "blockState": "minecraft:red_sandstone" } ], - "output" : [ + "output": [ { - "legacyId" : 180, - "id" : "minecraft:red_sandstone_stairs", - "blockRuntimeId" : 6460 + "blockState": "minecraft:red_sandstone;sand_stone_type=cut" } ], - "block" : "stonecutter", - "priority" : 3 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_red_sandstone_wall", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_red_sandstone_heiroglyphs", + "type": 0, + "input": [ { - "legacyId" : 179, - "id" : "minecraft:red_sandstone" + "blockState": "minecraft:red_sandstone" } ], - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1290 + "blockState": "minecraft:red_sandstone;sand_stone_type=heiroglyphs" } ], - "block" : "stonecutter", - "priority" : 4 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_sanddouble_stone_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_red_sandstone_stairs", + "type": 0, + "input": [ { - "legacyId" : 24, - "id" : "minecraft:sandstone" + "blockState": "minecraft:red_sandstone" } ], - "output" : [ + "output": [ { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "count" : 2, - "blockRuntimeId" : 6978 + "blockState": "minecraft:red_sandstone_stairs" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 3 }, { - "id" : "minecraft:stonecutter_sandstone_cut", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_red_sandstone_wall", + "type": 0, + "input": [ { - "legacyId" : 24, - "id" : "minecraft:sandstone" + "blockState": "minecraft:red_sandstone" } ], - "output" : [ + "output": [ { - "legacyId" : 24, - "id" : "minecraft:sandstone", - "blockRuntimeId" : 6531 + "blockState": "minecraft:cobblestone_wall;wall_block_type=red_sandstone" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 4 }, { - "id" : "minecraft:stonecutter_sandstone_heiroglyphs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_sanddouble_stone_slab", + "type": 0, + "input": [ { - "legacyId" : 24, - "id" : "minecraft:sandstone" + "blockState": "minecraft:sandstone" } ], - "output" : [ + "output": [ { - "legacyId" : 24, - "id" : "minecraft:sandstone", - "blockRuntimeId" : 6530 + "count": 2, + "blockState": "minecraft:stone_slab;stone_slab_type=sandstone" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_sandstone_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_sandstone_cut", + "type": 0, + "input": [ { - "legacyId" : 24, - "id" : "minecraft:sandstone" + "blockState": "minecraft:sandstone" } ], - "output" : [ + "output": [ { - "legacyId" : 128, - "id" : "minecraft:sandstone_stairs", - "blockRuntimeId" : 6533 + "blockState": "minecraft:sandstone;sand_stone_type=cut" } ], - "block" : "stonecutter", - "priority" : 3 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_sandstone_wall", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_sandstone_heiroglyphs", + "type": 0, + "input": [ { - "legacyId" : 24, - "id" : "minecraft:sandstone" + "blockState": "minecraft:sandstone" } ], - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1283 + "blockState": "minecraft:sandstone;sand_stone_type=heiroglyphs" } ], - "block" : "stonecutter", - "priority" : 4 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_slab_from_polished_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_sandstone_stairs", + "type": 0, + "input": [ { - "legacyId" : -291, - "id" : "minecraft:polished_blackstone", - "damage" : 32767 + "blockState": "minecraft:sandstone" } ], - "output" : [ + "output": [ { - "legacyId" : -293, - "id" : "minecraft:polished_blackstone_slab", - "count" : 2, - "blockRuntimeId" : 5874 + "blockState": "minecraft:sandstone_stairs" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 3 }, { - "id" : "minecraft:stonecutter_slab_from_polished_blackstone_bricks", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_sandstone_wall", + "type": 0, + "input": [ { - "legacyId" : -274, - "id" : "minecraft:polished_blackstone_bricks", - "damage" : 32767 + "blockState": "minecraft:sandstone" } ], - "output" : [ + "output": [ { - "legacyId" : -284, - "id" : "minecraft:polished_blackstone_brick_slab", - "count" : 2, - "blockRuntimeId" : 5671 + "blockState": "minecraft:cobblestone_wall;wall_block_type=sandstone" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 4 }, { - "id" : "minecraft:stonecutter_smooth_double_stone_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_slab_from_polished_blackstone", + "type": 0, + "input": [ { - "legacyId" : -183, - "id" : "minecraft:smooth_stone" + "fuzzy": true, + "blockState": "minecraft:polished_blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "count" : 2, - "blockRuntimeId" : 6977 + "count": 2, + "blockState": "minecraft:polished_blackstone_slab" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_smooth_quartz_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_slab_from_polished_blackstone_bricks", + "type": 0, + "input": [ { - "legacyId" : 155, - "id" : "minecraft:quartz_block", - "damage" : 3 + "fuzzy": true, + "blockState": "minecraft:polished_blackstone_bricks" } ], - "output" : [ + "output": [ { - "legacyId" : -166, - "id" : "minecraft:double_stone_slab4", - "count" : 2, - "blockRuntimeId" : 7026 + "count": 2, + "blockState": "minecraft:polished_blackstone_brick_slab" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_smooth_quartz_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_smooth_double_stone_slab", + "type": 0, + "input": [ { - "legacyId" : 155, - "id" : "minecraft:quartz_block", - "damage" : 3 + "blockState": "minecraft:smooth_stone" } ], - "output" : [ + "output": [ { - "legacyId" : -185, - "id" : "minecraft:smooth_quartz_stairs", - "blockRuntimeId" : 6641 + "count": 2, + "blockState": "minecraft:stone_slab" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_smooth_red_sanddouble_stone_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_smooth_quartz_slab", + "type": 0, + "input": [ { - "legacyId" : 179, - "id" : "minecraft:red_sandstone", - "damage" : 3 + "blockState": "minecraft:quartz_block;chisel_type=smooth" } ], - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 2, - "blockRuntimeId" : 7010 + "count": 2, + "blockState": "minecraft:stone_slab4;stone_slab_type_4=smooth_quartz" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_smooth_red_sandstone_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_smooth_quartz_stairs", + "type": 0, + "input": [ { - "legacyId" : 179, - "id" : "minecraft:red_sandstone", - "damage" : 3 + "blockState": "minecraft:quartz_block;chisel_type=smooth" } ], - "output" : [ + "output": [ { - "legacyId" : -176, - "id" : "minecraft:smooth_red_sandstone_stairs", - "blockRuntimeId" : 6649 + "blockState": "minecraft:smooth_quartz_stairs" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_smooth_sanddouble_stone_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_smooth_red_sanddouble_stone_slab", + "type": 0, + "input": [ { - "legacyId" : 24, - "id" : "minecraft:sandstone", - "damage" : 3 + "blockState": "minecraft:red_sandstone;sand_stone_type=smooth" } ], - "output" : [ + "output": [ { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "count" : 2, - "blockRuntimeId" : 6999 + "count": 2, + "blockState": "minecraft:stone_slab3;stone_slab_type_3=smooth_red_sandstone" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_smooth_sandstone_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_smooth_red_sandstone_stairs", + "type": 0, + "input": [ { - "legacyId" : 24, - "id" : "minecraft:sandstone", - "damage" : 3 + "blockState": "minecraft:red_sandstone;sand_stone_type=smooth" } ], - "output" : [ + "output": [ { - "legacyId" : -177, - "id" : "minecraft:smooth_sandstone_stairs", - "blockRuntimeId" : 6657 + "blockState": "minecraft:smooth_red_sandstone_stairs" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_stairs_from_polished_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_smooth_sanddouble_stone_slab", + "type": 0, + "input": [ { - "legacyId" : -291, - "id" : "minecraft:polished_blackstone", - "damage" : 32767 + "blockState": "minecraft:sandstone;sand_stone_type=smooth" } ], - "output" : [ + "output": [ { - "legacyId" : -292, - "id" : "minecraft:polished_blackstone_stairs", - "blockRuntimeId" : 5876 + "count": 2, + "blockState": "minecraft:stone_slab2;stone_slab_type_2=smooth_sandstone" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_stone_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_smooth_sandstone_stairs", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone" + "blockState": "minecraft:sandstone;sand_stone_type=smooth" } ], - "output" : [ + "output": [ { - "legacyId" : -180, - "id" : "minecraft:normal_stone_stairs", - "blockRuntimeId" : 5571 + "blockState": "minecraft:smooth_sandstone_stairs" } ], - "block" : "stonecutter", - "priority" : 6 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_stonebrick", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_stairs_from_polished_blackstone", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone" + "fuzzy": true, + "blockState": "minecraft:polished_blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : 98, - "id" : "minecraft:stonebrick", - "blockRuntimeId" : 7043 + "blockState": "minecraft:polished_blackstone_stairs" } ], - "block" : "stonecutter", - "priority" : 4 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_stonebrick_chiseled", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_stone_stairs", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone" + "blockState": "minecraft:stone" } ], - "output" : [ + "output": [ { - "legacyId" : 98, - "id" : "minecraft:stonebrick", - "blockRuntimeId" : 7046 + "blockState": "minecraft:normal_stone_stairs" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 6 }, { - "id" : "minecraft:stonecutter_stonebrick_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_stonebrick", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone" + "blockState": "minecraft:stone" } ], - "output" : [ + "output": [ { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "count" : 2, - "blockRuntimeId" : 6982 + "blockState": "minecraft:stonebrick" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 4 }, { - "id" : "minecraft:stonecutter_stonebrick_slab2", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_stonebrick_chiseled", + "type": 0, + "input": [ { - "legacyId" : 98, - "id" : "minecraft:stonebrick" + "blockState": "minecraft:stone" } ], - "output" : [ + "output": [ { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "count" : 2, - "blockRuntimeId" : 6982 + "blockState": "minecraft:stonebrick;stone_brick_type=chiseled" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_stonebrick_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_stonebrick_slab", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone" + "blockState": "minecraft:stone" } ], - "output" : [ + "output": [ { - "legacyId" : 109, - "id" : "minecraft:stone_brick_stairs", - "blockRuntimeId" : 6941 + "count": 2, + "blockState": "minecraft:stone_slab;stone_slab_type=stone_brick" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_stonebrick_stairs2", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_stonebrick_slab2", + "type": 0, + "input": [ { - "legacyId" : 98, - "id" : "minecraft:stonebrick" + "blockState": "minecraft:stonebrick" } ], - "output" : [ + "output": [ { - "legacyId" : 109, - "id" : "minecraft:stone_brick_stairs", - "blockRuntimeId" : 6941 + "count": 2, + "blockState": "minecraft:stone_slab;stone_slab_type=stone_brick" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_stonebrick_wall", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_stonebrick_stairs", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone" + "blockState": "minecraft:stone" } ], - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1285 + "blockState": "minecraft:stone_brick_stairs" } ], - "block" : "stonecutter", - "priority" : 3 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_stonebrick_wall2", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_stonebrick_stairs2", + "type": 0, + "input": [ { - "legacyId" : 98, - "id" : "minecraft:stonebrick" + "blockState": "minecraft:stonebrick" } ], - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "blockRuntimeId" : 1285 + "blockState": "minecraft:stone_brick_stairs" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_wall_from_polished_blackstone", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_stonebrick_wall", + "type": 0, + "input": [ { - "legacyId" : -291, - "id" : "minecraft:polished_blackstone", - "damage" : 32767 + "blockState": "minecraft:stone" } ], - "output" : [ + "output": [ { - "legacyId" : -297, - "id" : "minecraft:polished_blackstone_wall", - "blockRuntimeId" : 5884 + "blockState": "minecraft:cobblestone_wall;wall_block_type=stone_brick" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 3 }, { - "id" : "minecraft:stonecutter_wall_from_polished_blackstone_bricks", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_stonebrick_wall2", + "type": 0, + "input": [ { - "legacyId" : -274, - "id" : "minecraft:polished_blackstone_bricks", - "damage" : 32767 + "blockState": "minecraft:stonebrick" } ], - "output" : [ + "output": [ { - "legacyId" : -278, - "id" : "minecraft:polished_blackstone_brick_wall", - "blockRuntimeId" : 5681 + "blockState": "minecraft:cobblestone_wall;wall_block_type=stone_brick" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_waxed_copper_to_cut_copper", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_wall_from_polished_blackstone", + "type": 0, + "input": [ { - "legacyId" : -344, - "id" : "minecraft:waxed_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:polished_blackstone" } ], - "output" : [ + "output": [ { - "legacyId" : -351, - "id" : "minecraft:waxed_cut_copper", - "blockRuntimeId" : 7440 + "blockState": "minecraft:polished_blackstone_wall" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_waxed_copper_to_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_wall_from_polished_blackstone_bricks", + "type": 0, + "input": [ { - "legacyId" : -344, - "id" : "minecraft:waxed_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:polished_blackstone_bricks" } ], - "output" : [ + "output": [ { - "legacyId" : -365, - "id" : "minecraft:waxed_cut_copper_slab", - "count" : 2, - "blockRuntimeId" : 7441 + "blockState": "minecraft:polished_blackstone_brick_wall" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_waxed_copper_to_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_copper_to_cut_copper", + "type": 0, + "input": [ { - "legacyId" : -344, - "id" : "minecraft:waxed_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -358, - "id" : "minecraft:waxed_cut_copper_stairs", - "blockRuntimeId" : 7443 + "count": 4, + "blockState": "minecraft:waxed_cut_copper" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_waxed_copper_to_exposed_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_copper_to_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : -345, - "id" : "minecraft:waxed_exposed_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -366, - "id" : "minecraft:waxed_exposed_cut_copper_slab", - "count" : 2, - "blockRuntimeId" : 7455 + "count": 8, + "blockState": "minecraft:waxed_cut_copper_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_waxed_cut_copper_to_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_copper_to_cut_copper_stairs", + "type": 0, + "input": [ { - "legacyId" : -351, - "id" : "minecraft:waxed_cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -365, - "id" : "minecraft:waxed_cut_copper_slab", - "count" : 2, - "blockRuntimeId" : 7441 + "count": 4, + "blockState": "minecraft:waxed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_waxed_cut_copper_to_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_copper_to_exposed_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : -351, - "id" : "minecraft:waxed_cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_exposed_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -358, - "id" : "minecraft:waxed_cut_copper_stairs", - "blockRuntimeId" : 7443 + "count": 8, + "blockState": "minecraft:waxed_exposed_cut_copper_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_waxed_exposed_copper_to_cut_copper", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_cut_copper_to_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : -345, - "id" : "minecraft:waxed_exposed_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_cut_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -352, - "id" : "minecraft:waxed_exposed_cut_copper", - "blockRuntimeId" : 7454 + "count": 2, + "blockState": "minecraft:waxed_cut_copper_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_waxed_exposed_copper_to_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_cut_copper_to_cut_copper_stairs", + "type": 0, + "input": [ { - "legacyId" : -345, - "id" : "minecraft:waxed_exposed_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_cut_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -359, - "id" : "minecraft:waxed_exposed_cut_copper_stairs", - "blockRuntimeId" : 7457 + "blockState": "minecraft:waxed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_waxed_exposed_cut_copper_to_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_exposed_copper_to_cut_copper", + "type": 0, + "input": [ { - "legacyId" : -352, - "id" : "minecraft:waxed_exposed_cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_exposed_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -366, - "id" : "minecraft:waxed_exposed_cut_copper_slab", - "count" : 2, - "blockRuntimeId" : 7455 + "count": 4, + "blockState": "minecraft:waxed_exposed_cut_copper" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_waxed_exposed_cut_copper_to_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_exposed_copper_to_cut_copper_stairs", + "type": 0, + "input": [ { - "legacyId" : -352, - "id" : "minecraft:waxed_exposed_cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_exposed_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -359, - "id" : "minecraft:waxed_exposed_cut_copper_stairs", - "blockRuntimeId" : 7457 + "count": 4, + "blockState": "minecraft:waxed_exposed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_waxed_oxidized_copper_to_cut_copper", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_exposed_cut_copper_to_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : -446, - "id" : "minecraft:waxed_oxidized_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_exposed_cut_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -447, - "id" : "minecraft:waxed_oxidized_cut_copper", - "blockRuntimeId" : 7468 + "count": 2, + "blockState": "minecraft:waxed_exposed_cut_copper_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_waxed_oxidized_copper_to_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_exposed_cut_copper_to_cut_copper_stairs", + "type": 0, + "input": [ { - "legacyId" : -446, - "id" : "minecraft:waxed_oxidized_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_exposed_cut_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -449, - "id" : "minecraft:waxed_oxidized_cut_copper_slab", - "count" : 2, - "blockRuntimeId" : 7469 + "blockState": "minecraft:waxed_exposed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_waxed_oxidized_copper_to_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_oxidized_copper_to_cut_copper", + "type": 0, + "input": [ { - "legacyId" : -446, - "id" : "minecraft:waxed_oxidized_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_oxidized_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -448, - "id" : "minecraft:waxed_oxidized_cut_copper_stairs", - "blockRuntimeId" : 7471 + "count": 4, + "blockState": "minecraft:waxed_oxidized_cut_copper" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_waxed_oxidized_cut_copper_to_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_oxidized_copper_to_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : -447, - "id" : "minecraft:waxed_oxidized_cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_oxidized_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -449, - "id" : "minecraft:waxed_oxidized_cut_copper_slab", - "blockRuntimeId" : 7469 + "count": 8, + "blockState": "minecraft:waxed_oxidized_cut_copper_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_waxed_oxidized_cut_copper_to_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_oxidized_copper_to_cut_copper_stairs", + "type": 0, + "input": [ { - "legacyId" : -447, - "id" : "minecraft:waxed_oxidized_cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_oxidized_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -448, - "id" : "minecraft:waxed_oxidized_cut_copper_stairs", - "blockRuntimeId" : 7471 + "count": 4, + "blockState": "minecraft:waxed_oxidized_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_waxed_weathered_copper_to_cut_copper", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_oxidized_cut_copper_to_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : -346, - "id" : "minecraft:waxed_weathered_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_oxidized_cut_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -353, - "id" : "minecraft:waxed_weathered_cut_copper", - "blockRuntimeId" : 7482 + "blockState": "minecraft:waxed_oxidized_cut_copper_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_waxed_weathered_copper_to_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_oxidized_cut_copper_to_cut_copper_stairs", + "type": 0, + "input": [ { - "legacyId" : -346, - "id" : "minecraft:waxed_weathered_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_oxidized_cut_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -367, - "id" : "minecraft:waxed_weathered_cut_copper_slab", - "count" : 2, - "blockRuntimeId" : 7483 + "blockState": "minecraft:waxed_oxidized_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_waxed_weathered_copper_to_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_weathered_copper_to_cut_copper", + "type": 0, + "input": [ { - "legacyId" : -346, - "id" : "minecraft:waxed_weathered_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_weathered_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -360, - "id" : "minecraft:waxed_weathered_cut_copper_stairs", - "blockRuntimeId" : 7485 + "count": 4, + "blockState": "minecraft:waxed_weathered_cut_copper" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_waxed_weathered_cut_copper_to_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_weathered_copper_to_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : -353, - "id" : "minecraft:waxed_weathered_cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_weathered_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -367, - "id" : "minecraft:waxed_weathered_cut_copper_slab", - "count" : 2, - "blockRuntimeId" : 7483 + "count": 8, + "blockState": "minecraft:waxed_weathered_cut_copper_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_waxed_weathered_cut_copper_to_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_weathered_copper_to_cut_copper_stairs", + "type": 0, + "input": [ { - "legacyId" : -353, - "id" : "minecraft:waxed_weathered_cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_weathered_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -360, - "id" : "minecraft:waxed_weathered_cut_copper_stairs", - "blockRuntimeId" : 7485 + "count": 4, + "blockState": "minecraft:waxed_weathered_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_weathered_copper_to_cut_copper", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_weathered_cut_copper_to_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : -342, - "id" : "minecraft:weathered_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_weathered_cut_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -349, - "id" : "minecraft:weathered_cut_copper", - "blockRuntimeId" : 7496 + "count": 2, + "blockState": "minecraft:waxed_weathered_cut_copper_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 0 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_weathered_copper_to_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_waxed_weathered_cut_copper_to_cut_copper_stairs", + "type": 0, + "input": [ { - "legacyId" : -342, - "id" : "minecraft:weathered_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:waxed_weathered_cut_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -363, - "id" : "minecraft:weathered_cut_copper_slab", - "count" : 2, - "blockRuntimeId" : 7497 + "blockState": "minecraft:waxed_weathered_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 2 }, { - "id" : "minecraft:stonecutter_weathered_copper_to_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_weathered_copper_to_cut_copper", + "type": 0, + "input": [ { - "legacyId" : -342, - "id" : "minecraft:weathered_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:weathered_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -356, - "id" : "minecraft:weathered_cut_copper_stairs", - "blockRuntimeId" : 7499 + "count": 4, + "blockState": "minecraft:weathered_cut_copper" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 0 }, { - "id" : "minecraft:stonecutter_weathered_cut_copper_to_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_weathered_copper_to_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : -349, - "id" : "minecraft:weathered_cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:weathered_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -363, - "id" : "minecraft:weathered_cut_copper_slab", - "count" : 2, - "blockRuntimeId" : 7497 + "count": 8, + "blockState": "minecraft:weathered_cut_copper_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 1 + "block": "stonecutter", + "priority": 1 }, { - "id" : "minecraft:stonecutter_weathered_cut_copper_to_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_weathered_copper_to_cut_copper_stairs", + "type": 0, + "input": [ { - "legacyId" : -349, - "id" : "minecraft:weathered_cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:weathered_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -356, - "id" : "minecraft:weathered_cut_copper_stairs", - "blockRuntimeId" : 7499 + "count": 4, + "blockState": "minecraft:weathered_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 2 }, { - "id" : "stonecutter_stairs_from_polished_blackstone_bricks", - "type" : 0, - "input" : [ + "id": "minecraft:stonecutter_weathered_cut_copper_to_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : -274, - "id" : "minecraft:polished_blackstone_bricks", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:weathered_cut_copper" } ], - "output" : [ + "output": [ { - "legacyId" : -275, - "id" : "minecraft:polished_blackstone_brick_stairs", - "blockRuntimeId" : 5673 + "count": 2, + "blockState": "minecraft:weathered_cut_copper_slab;top_slot_bit=0" } ], - "block" : "stonecutter", - "priority" : 2 + "block": "stonecutter", + "priority": 1 }, { - "id" : "Bookshelf_woodplanks_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "id": "minecraft:stonecutter_weathered_cut_copper_to_cut_copper_stairs", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:weathered_cut_copper" + } + ], + "output": [ + { + "blockState": "minecraft:weathered_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" + } + ], + "block": "stonecutter", + "priority": 2 + }, + { + "id": "stonecutter_stairs_from_polished_blackstone_bricks", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:polished_blackstone_bricks" + } + ], + "output": [ + { + "blockState": "minecraft:polished_blackstone_brick_stairs" + } + ], + "block": "stonecutter", + "priority": 2 + }, + { + "id": "Bookshelf_woodplanks_recipeId", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:planks" }, - "B" : { - "legacyId" : 387, - "id" : "minecraft:book", - "damage" : 32767 + "B": { + "id": "minecraft:book", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 47, - "id" : "minecraft:bookshelf", - "blockRuntimeId" : 684 + "blockState": "minecraft:bookshelf" } ], - "shape" : [ + "shape": [ "AAA", "BBB", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "Bowl_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "id": "Bowl_recipeId", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 321, - "id" : "minecraft:bowl", - "count" : 4 + "id": "minecraft:bowl", + "count": 4 } ], - "shape" : [ + "shape": [ "A A", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "ButtonAcacia_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 4 + "id": "ButtonAcacia_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=acacia" } }, - "output" : [ + "output": [ { - "legacyId" : -140, - "id" : "minecraft:acacia_button", - "blockRuntimeId" : 0 + "blockState": "minecraft:acacia_button" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "ButtonBirch_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 2 + "id": "ButtonBirch_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=birch" } }, - "output" : [ + "output": [ { - "legacyId" : -141, - "id" : "minecraft:birch_button", - "blockRuntimeId" : 356 + "blockState": "minecraft:birch_button" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "ButtonDarkOak_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 5 + "id": "ButtonDarkOak_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=dark_oak" } }, - "output" : [ + "output": [ { - "legacyId" : -142, - "id" : "minecraft:dark_oak_button", - "blockRuntimeId" : 3886 + "blockState": "minecraft:dark_oak_button" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "ButtonJungle_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 3 + "id": "ButtonJungle_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=jungle" } }, - "output" : [ + "output": [ { - "legacyId" : -143, - "id" : "minecraft:jungle_button", - "blockRuntimeId" : 5114 + "blockState": "minecraft:jungle_button" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "ButtonSpruce_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 1 + "id": "ButtonSpruce_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=spruce" } }, - "output" : [ + "output": [ { - "legacyId" : -144, - "id" : "minecraft:spruce_button", - "blockRuntimeId" : 6720 + "blockState": "minecraft:spruce_button" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "Chest_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "id": "Chest_recipeId", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 54, - "id" : "minecraft:chest", - "blockRuntimeId" : 1083 + "blockState": "minecraft:chest" } ], - "shape" : [ + "shape": [ "AAA", "A A", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "DaylightDetector_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass" + "id": "DaylightDetector_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 524, - "id" : "minecraft:quartz", - "damage" : 32767 + "B": { + "id": "minecraft:quartz", + "fuzzy": true }, - "C" : { - "legacyId" : 158, - "id" : "minecraft:wooden_slab", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:wooden_slab" } }, - "output" : [ + "output": [ { - "legacyId" : 151, - "id" : "minecraft:daylight_detector", - "blockRuntimeId" : 4016 + "blockState": "minecraft:daylight_detector" } ], - "shape" : [ + "shape": [ "AAA", "BBB", "CCC" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "FireCharge_blaze_powder_coal_sulphur_recipeId", - "type" : 0, - "input" : [ + "id": "FireCharge_blaze_powder_coal_sulphur_recipeId", + "type": 0, + "input": [ { - "legacyId" : 429, - "id" : "minecraft:blaze_powder", - "damage" : 32767 + "id": "minecraft:blaze_powder", + "fuzzy": true }, { - "legacyId" : 303, - "id" : "minecraft:charcoal", - "damage" : 32767 + "id": "minecraft:charcoal", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 509, - "id" : "minecraft:fire_charge", - "count" : 3 + "id": "minecraft:fire_charge", + "count": 3 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "FireCharge_coal_sulphur_recipeId", - "type" : 0, - "input" : [ + "id": "FireCharge_coal_sulphur_recipeId", + "type": 0, + "input": [ { - "legacyId" : 429, - "id" : "minecraft:blaze_powder", - "damage" : 32767 + "id": "minecraft:blaze_powder", + "fuzzy": true }, { - "legacyId" : 302, - "id" : "minecraft:coal" + "id": "minecraft:coal" }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 509, - "id" : "minecraft:fire_charge", - "count" : 3 + "id": "minecraft:fire_charge", + "count": 3 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "Jukebox_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "id": "Jukebox_recipeId", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:planks" }, - "B" : { - "legacyId" : 304, - "id" : "minecraft:diamond", - "damage" : 32767 + "B": { + "id": "minecraft:diamond", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 84, - "id" : "minecraft:jukebox", - "blockRuntimeId" : 5113 + "blockState": "minecraft:jukebox" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "Note_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "id": "Note_recipeId", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:planks" }, - "B" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "B": { + "id": "minecraft:redstone", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 25, - "id" : "minecraft:noteblock", - "blockRuntimeId" : 5579 + "blockState": "minecraft:noteblock" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "Painting_Cobblestone_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 4, - "id" : "minecraft:cobblestone" + "id": "Painting_Cobblestone_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:cobblestone" } }, - "output" : [ + "output": [ { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "count" : 6, - "blockRuntimeId" : 6980 + "count": 6, + "blockState": "minecraft:stone_slab;stone_slab_type=cobblestone" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "Painting_NetherBrick_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 112, - "id" : "minecraft:nether_brick" + "id": "Painting_NetherBrick_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:nether_brick" } }, - "output" : [ + "output": [ { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "count" : 6, - "blockRuntimeId" : 6984 + "count": 6, + "blockState": "minecraft:stone_slab;stone_slab_type=nether_brick" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "Painting_VanillaBlocks_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 24, - "id" : "minecraft:sandstone" + "id": "Painting_VanillaBlocks_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:sandstone" } }, - "output" : [ + "output": [ { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "count" : 6, - "blockRuntimeId" : 6978 + "count": 6, + "blockState": "minecraft:stone_slab;stone_slab_type=sandstone" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "Painting_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "Painting_recipeId", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:wool" } }, - "output" : [ + "output": [ { - "legacyId" : 357, - "id" : "minecraft:painting" + "id": "minecraft:painting" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "Piston_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "id": "Piston_recipeId", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:planks" }, - "B" : { - "legacyId" : 4, - "id" : "minecraft:cobblestone" + "B": { + "blockState": "minecraft:cobblestone" }, - "C" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "C": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "D" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "D": { + "id": "minecraft:redstone", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 33, - "id" : "minecraft:piston", - "blockRuntimeId" : 5629 + "blockState": "minecraft:piston;facing_direction=1" } ], - "shape" : [ + "shape": [ "AAA", "BCB", "BDB" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "PressurePlateAcacia_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 4 + "id": "PressurePlateAcacia_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=acacia" } }, - "output" : [ + "output": [ { - "legacyId" : -150, - "id" : "minecraft:acacia_pressure_plate", - "blockRuntimeId" : 60 + "blockState": "minecraft:acacia_pressure_plate" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "PressurePlateBirch_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 2 + "id": "PressurePlateBirch_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=birch" } }, - "output" : [ + "output": [ { - "legacyId" : -151, - "id" : "minecraft:birch_pressure_plate", - "blockRuntimeId" : 416 + "blockState": "minecraft:birch_pressure_plate" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "PressurePlateDarkOak_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 5 + "id": "PressurePlateDarkOak_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=dark_oak" } }, - "output" : [ + "output": [ { - "legacyId" : -152, - "id" : "minecraft:dark_oak_pressure_plate", - "blockRuntimeId" : 3946 + "blockState": "minecraft:dark_oak_pressure_plate" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "PressurePlateJungle_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 3 + "id": "PressurePlateJungle_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=jungle" } }, - "output" : [ + "output": [ { - "legacyId" : -153, - "id" : "minecraft:jungle_pressure_plate", - "blockRuntimeId" : 5174 + "blockState": "minecraft:jungle_pressure_plate" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "PressurePlateSpruce_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 1 + "id": "PressurePlateSpruce_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=spruce" } }, - "output" : [ + "output": [ { - "legacyId" : -154, - "id" : "minecraft:spruce_pressure_plate", - "blockRuntimeId" : 6780 + "blockState": "minecraft:spruce_pressure_plate" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "Stick_bamboo_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -163, - "id" : "minecraft:bamboo" + "id": "Stick_bamboo_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:bamboo" } }, - "output" : [ + "output": [ { - "legacyId" : 320, - "id" : "minecraft:stick" + "id": "minecraft:stick" } ], - "shape" : [ + "shape": [ "A", "A" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "StoneSlab4_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone" + "id": "StoneSlab4_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone" } }, - "output" : [ + "output": [ { - "legacyId" : -166, - "id" : "minecraft:double_stone_slab4", - "count" : 6, - "blockRuntimeId" : 7027 + "count": 6, + "blockState": "minecraft:stone_slab4;stone_slab_type_4=stone" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "StoneSlab4_stoneBrick_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 98, - "id" : "minecraft:stonebrick", - "damage" : 1 + "id": "StoneSlab4_stoneBrick_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stonebrick;stone_brick_type=mossy" } }, - "output" : [ + "output": [ { - "legacyId" : -166, - "id" : "minecraft:double_stone_slab4", - "count" : 6, - "blockRuntimeId" : 7025 + "count": 6, + "blockState": "minecraft:stone_slab4" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "StoneSlab_Brick_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 45, - "id" : "minecraft:brick_block" + "id": "StoneSlab_Brick_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:brick_block" } }, - "output" : [ + "output": [ { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "count" : 6, - "blockRuntimeId" : 6981 + "count": 6, + "blockState": "minecraft:stone_slab;stone_slab_type=brick" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "StoneSlab_StoneBrick_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 98, - "id" : "minecraft:stonebrick" + "id": "StoneSlab_StoneBrick_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stonebrick" } }, - "output" : [ + "output": [ { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "count" : 6, - "blockRuntimeId" : 6982 + "count": 6, + "blockState": "minecraft:stone_slab;stone_slab_type=stone_brick" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "StoneSlab_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -183, - "id" : "minecraft:smooth_stone" + "id": "StoneSlab_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:smooth_stone" } }, - "output" : [ + "output": [ { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "count" : 6, - "blockRuntimeId" : 6977 + "count": 6, + "blockState": "minecraft:stone_slab" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "Torch_charcoal_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 303, - "id" : "minecraft:charcoal", - "damage" : 32767 + "id": "Torch_charcoal_recipeId", + "type": 1, + "input": { + "A": { + "id": "minecraft:charcoal", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 50, - "id" : "minecraft:torch", - "count" : 4, - "blockRuntimeId" : 7111 + "count": 4, + "blockState": "minecraft:torch" } ], - "shape" : [ + "shape": [ "A", "B" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "Torch_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "id": "Torch_recipeId", + "type": 1, + "input": { + "A": { + "id": "minecraft:coal" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 50, - "id" : "minecraft:torch", - "count" : 4, - "blockRuntimeId" : 7111 + "count": 4, + "blockState": "minecraft:torch" } ], - "shape" : [ + "shape": [ "A", "B" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "TrapdoorAcacia_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 4 + "id": "TrapdoorAcacia_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=acacia" } }, - "output" : [ + "output": [ { - "legacyId" : -145, - "id" : "minecraft:acacia_trapdoor", - "count" : 2, - "blockRuntimeId" : 100 + "count": 2, + "blockState": "minecraft:acacia_trapdoor" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "TrapdoorBirch_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 2 + "id": "TrapdoorBirch_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=birch" } }, - "output" : [ + "output": [ { - "legacyId" : -146, - "id" : "minecraft:birch_trapdoor", - "count" : 2, - "blockRuntimeId" : 456 + "count": 2, + "blockState": "minecraft:birch_trapdoor" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "TrapdoorDarkOak_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 5 + "id": "TrapdoorDarkOak_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=dark_oak" } }, - "output" : [ + "output": [ { - "legacyId" : -147, - "id" : "minecraft:dark_oak_trapdoor", - "count" : 2, - "blockRuntimeId" : 3970 + "count": 2, + "blockState": "minecraft:dark_oak_trapdoor" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "TrapdoorJungle_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 3 + "id": "TrapdoorJungle_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=jungle" } }, - "output" : [ + "output": [ { - "legacyId" : -148, - "id" : "minecraft:jungle_trapdoor", - "count" : 2, - "blockRuntimeId" : 5214 + "count": 2, + "blockState": "minecraft:jungle_trapdoor" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "TrapdoorSpruce_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 1 + "id": "TrapdoorSpruce_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=spruce" } }, - "output" : [ + "output": [ { - "legacyId" : -149, - "id" : "minecraft:spruce_trapdoor", - "count" : 2, - "blockRuntimeId" : 6820 + "count": 2, + "blockState": "minecraft:spruce_trapdoor" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "Trapdoor_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks" + "id": "Trapdoor_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 96, - "id" : "minecraft:trapdoor", - "count" : 2, - "blockRuntimeId" : 7117 + "count": 2, + "blockState": "minecraft:trapdoor" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "TripwireHook_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "TripwireHook_recipeId", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true }, - "C" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 131, - "id" : "minecraft:tripwire_hook", - "count" : 2, - "blockRuntimeId" : 7155 + "count": 2, + "blockState": "minecraft:tripwire_hook" } ], - "shape" : [ + "shape": [ "A", "B", "C" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "WoodButton_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks" + "id": "WoodButton_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 143, - "id" : "minecraft:wooden_button", - "blockRuntimeId" : 7587 + "blockState": "minecraft:wooden_button" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "WoodPressurePlate_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks" + "id": "WoodPressurePlate_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 72, - "id" : "minecraft:wooden_pressure_plate", - "blockRuntimeId" : 7631 + "blockState": "minecraft:wooden_pressure_plate" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "WorkBench_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "id": "WorkBench_recipeId", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 58, - "id" : "minecraft:crafting_table", - "blockRuntimeId" : 3730 + "blockState": "minecraft:crafting_table" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "acacia_stairs_acacia_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 4 + "id": "acacia_stairs_acacia_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=acacia" } }, - "output" : [ + "output": [ { - "legacyId" : 163, - "id" : "minecraft:acacia_stairs", - "count" : 4, - "blockRuntimeId" : 76 + "count": 4, + "blockState": "minecraft:acacia_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "type" : 4, - "uuid" : "d81aaeaf-e172-4440-9225-868df030d27b" + "type": 4, + "uuid": "d81aaeaf-e172-4440-9225-868df030d27b" }, { - "type" : 4, - "uuid" : "b5c5d105-75a2-4076-af2b-923ea2bf4bf0" + "type": 4, + "uuid": "b5c5d105-75a2-4076-af2b-923ea2bf4bf0" }, { - "type" : 4, - "uuid" : "00000000-0000-0000-0000-000000000002" + "type": 4, + "uuid": "00000000-0000-0000-0000-000000000002" }, { - "id" : "bed_color_0", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool" + "id": "bed_color_0", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool" }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "bed_color_1", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "id": "bed_color_1", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=orange" }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "bed_color_10", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "id": "bed_color_10", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=purple" }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "bed_color_11", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "id": "bed_color_11", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=blue" }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "bed_color_12", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "id": "bed_color_12", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=brown" }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "bed_color_13", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "id": "bed_color_13", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=green" }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "bed_color_14", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "id": "bed_color_14", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=red" }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "bed_color_15", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "id": "bed_color_15", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=black" }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "bed_color_2", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "id": "bed_color_2", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=magenta" }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "bed_color_3", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "id": "bed_color_3", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=light_blue" }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "bed_color_4", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "id": "bed_color_4", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=yellow" }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "bed_color_5", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "id": "bed_color_5", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=lime" }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "bed_color_6", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "id": "bed_color_6", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=pink" }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "bed_color_7", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "id": "bed_color_7", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=gray" }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "bed_color_8", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "id": "bed_color_8", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=silver" }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "bed_color_9", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "id": "bed_color_9", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=cyan" }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "bed_color_crimson_0", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool" + "id": "bed_color_crimson_0", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool" }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_crimson_1", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "id": "bed_color_crimson_1", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=orange" }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_crimson_10", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "id": "bed_color_crimson_10", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=purple" }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_crimson_11", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "id": "bed_color_crimson_11", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=blue" }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_crimson_12", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "id": "bed_color_crimson_12", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=brown" }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_crimson_13", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "id": "bed_color_crimson_13", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=green" }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_crimson_14", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "id": "bed_color_crimson_14", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=red" }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_crimson_15", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "id": "bed_color_crimson_15", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=black" }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_crimson_2", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "id": "bed_color_crimson_2", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=magenta" }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_crimson_3", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "id": "bed_color_crimson_3", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=light_blue" }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_crimson_4", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "id": "bed_color_crimson_4", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=yellow" }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_crimson_5", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "id": "bed_color_crimson_5", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=lime" }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_crimson_6", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "id": "bed_color_crimson_6", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=pink" }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_crimson_7", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "id": "bed_color_crimson_7", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=gray" }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_crimson_8", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "id": "bed_color_crimson_8", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=silver" }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_crimson_9", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "id": "bed_color_crimson_9", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=cyan" }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_warped_0", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool" + "id": "bed_color_warped_0", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool" }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_warped_1", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "id": "bed_color_warped_1", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=orange" }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_warped_10", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "id": "bed_color_warped_10", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=purple" }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_warped_11", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "id": "bed_color_warped_11", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=blue" }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_warped_12", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "id": "bed_color_warped_12", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=brown" }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_warped_13", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "id": "bed_color_warped_13", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=green" }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_warped_14", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "id": "bed_color_warped_14", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=red" }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_warped_15", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "id": "bed_color_warped_15", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=black" }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_warped_2", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "id": "bed_color_warped_2", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=magenta" }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_warped_3", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "id": "bed_color_warped_3", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=light_blue" }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_warped_4", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "id": "bed_color_warped_4", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=yellow" }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_warped_5", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "id": "bed_color_warped_5", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=lime" }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_warped_6", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "id": "bed_color_warped_6", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=pink" }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_warped_7", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "id": "bed_color_warped_7", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=gray" }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_warped_8", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "id": "bed_color_warped_8", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=silver" }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_color_warped_9", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "id": "bed_color_warped_9", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=cyan" }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 } ], - "shape" : [ + "shape": [ "AAA", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "bed_dye_0_1", - "type" : 0, - "input" : [ + "id": "bed_dye_0_1", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_0_10", - "type" : 0, - "input" : [ + "id": "bed_dye_0_10", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_0_11", - "type" : 0, - "input" : [ + "id": "bed_dye_0_11", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_0_12", - "type" : 0, - "input" : [ + "id": "bed_dye_0_12", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_0_13", - "type" : 0, - "input" : [ + "id": "bed_dye_0_13", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_0_14", - "type" : 0, - "input" : [ + "id": "bed_dye_0_14", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_0_15", - "type" : 0, - "input" : [ + "id": "bed_dye_0_15", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_0_2", - "type" : 0, - "input" : [ + "id": "bed_dye_0_2", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_0_3", - "type" : 0, - "input" : [ + "id": "bed_dye_0_3", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_0_4", - "type" : 0, - "input" : [ + "id": "bed_dye_0_4", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_0_5", - "type" : 0, - "input" : [ + "id": "bed_dye_0_5", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_0_6", - "type" : 0, - "input" : [ + "id": "bed_dye_0_6", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_0_7", - "type" : 0, - "input" : [ + "id": "bed_dye_0_7", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_0_8", - "type" : 0, - "input" : [ + "id": "bed_dye_0_8", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_0_9", - "type" : 0, - "input" : [ + "id": "bed_dye_0_9", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_10_0", - "type" : 0, - "input" : [ + "id": "bed_dye_10_0", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_10_1", - "type" : 0, - "input" : [ + "id": "bed_dye_10_1", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_10_11", - "type" : 0, - "input" : [ + "id": "bed_dye_10_11", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_10_12", - "type" : 0, - "input" : [ + "id": "bed_dye_10_12", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_10_13", - "type" : 0, - "input" : [ + "id": "bed_dye_10_13", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_10_14", - "type" : 0, - "input" : [ + "id": "bed_dye_10_14", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_10_15", - "type" : 0, - "input" : [ + "id": "bed_dye_10_15", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_10_2", - "type" : 0, - "input" : [ + "id": "bed_dye_10_2", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_10_3", - "type" : 0, - "input" : [ + "id": "bed_dye_10_3", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_10_4", - "type" : 0, - "input" : [ + "id": "bed_dye_10_4", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_10_5", - "type" : 0, - "input" : [ + "id": "bed_dye_10_5", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_10_6", - "type" : 0, - "input" : [ + "id": "bed_dye_10_6", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_10_7", - "type" : 0, - "input" : [ + "id": "bed_dye_10_7", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_10_8", - "type" : 0, - "input" : [ + "id": "bed_dye_10_8", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_10_9", - "type" : 0, - "input" : [ + "id": "bed_dye_10_9", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_11_0", - "type" : 0, - "input" : [ + "id": "bed_dye_11_0", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_11_1", - "type" : 0, - "input" : [ + "id": "bed_dye_11_1", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_11_10", - "type" : 0, - "input" : [ + "id": "bed_dye_11_10", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_11_12", - "type" : 0, - "input" : [ + "id": "bed_dye_11_12", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_11_13", - "type" : 0, - "input" : [ + "id": "bed_dye_11_13", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_11_14", - "type" : 0, - "input" : [ + "id": "bed_dye_11_14", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_11_15", - "type" : 0, - "input" : [ + "id": "bed_dye_11_15", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_11_2", - "type" : 0, - "input" : [ + "id": "bed_dye_11_2", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_11_3", - "type" : 0, - "input" : [ + "id": "bed_dye_11_3", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_11_4", - "type" : 0, - "input" : [ + "id": "bed_dye_11_4", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_11_5", - "type" : 0, - "input" : [ + "id": "bed_dye_11_5", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_11_6", - "type" : 0, - "input" : [ + "id": "bed_dye_11_6", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_11_7", - "type" : 0, - "input" : [ + "id": "bed_dye_11_7", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_11_8", - "type" : 0, - "input" : [ + "id": "bed_dye_11_8", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_11_9", - "type" : 0, - "input" : [ + "id": "bed_dye_11_9", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_12_0", - "type" : 0, - "input" : [ + "id": "bed_dye_12_0", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_12_1", - "type" : 0, - "input" : [ + "id": "bed_dye_12_1", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_12_10", - "type" : 0, - "input" : [ + "id": "bed_dye_12_10", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_12_11", - "type" : 0, - "input" : [ + "id": "bed_dye_12_11", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_12_13", - "type" : 0, - "input" : [ + "id": "bed_dye_12_13", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_12_14", - "type" : 0, - "input" : [ + "id": "bed_dye_12_14", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_12_15", - "type" : 0, - "input" : [ + "id": "bed_dye_12_15", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_12_2", - "type" : 0, - "input" : [ + "id": "bed_dye_12_2", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_12_3", - "type" : 0, - "input" : [ + "id": "bed_dye_12_3", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_12_4", - "type" : 0, - "input" : [ + "id": "bed_dye_12_4", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_12_5", - "type" : 0, - "input" : [ + "id": "bed_dye_12_5", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_12_6", - "type" : 0, - "input" : [ + "id": "bed_dye_12_6", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_12_7", - "type" : 0, - "input" : [ + "id": "bed_dye_12_7", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_12_8", - "type" : 0, - "input" : [ + "id": "bed_dye_12_8", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_12_9", - "type" : 0, - "input" : [ + "id": "bed_dye_12_9", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_13_0", - "type" : 0, - "input" : [ + "id": "bed_dye_13_0", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_13_1", - "type" : 0, - "input" : [ + "id": "bed_dye_13_1", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_13_10", - "type" : 0, - "input" : [ + "id": "bed_dye_13_10", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_13_11", - "type" : 0, - "input" : [ + "id": "bed_dye_13_11", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_13_12", - "type" : 0, - "input" : [ + "id": "bed_dye_13_12", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_13_14", - "type" : 0, - "input" : [ + "id": "bed_dye_13_14", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_13_15", - "type" : 0, - "input" : [ + "id": "bed_dye_13_15", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_13_2", - "type" : 0, - "input" : [ + "id": "bed_dye_13_2", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_13_3", - "type" : 0, - "input" : [ + "id": "bed_dye_13_3", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_13_4", - "type" : 0, - "input" : [ + "id": "bed_dye_13_4", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_13_5", - "type" : 0, - "input" : [ + "id": "bed_dye_13_5", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_13_6", - "type" : 0, - "input" : [ + "id": "bed_dye_13_6", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_13_7", - "type" : 0, - "input" : [ + "id": "bed_dye_13_7", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_13_8", - "type" : 0, - "input" : [ + "id": "bed_dye_13_8", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_13_9", - "type" : 0, - "input" : [ + "id": "bed_dye_13_9", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_14_0", - "type" : 0, - "input" : [ + "id": "bed_dye_14_0", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_14_1", - "type" : 0, - "input" : [ + "id": "bed_dye_14_1", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_14_10", - "type" : 0, - "input" : [ + "id": "bed_dye_14_10", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_14_11", - "type" : 0, - "input" : [ + "id": "bed_dye_14_11", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_14_12", - "type" : 0, - "input" : [ + "id": "bed_dye_14_12", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_14_13", - "type" : 0, - "input" : [ + "id": "bed_dye_14_13", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_14_15", - "type" : 0, - "input" : [ + "id": "bed_dye_14_15", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_14_2", - "type" : 0, - "input" : [ + "id": "bed_dye_14_2", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_14_3", - "type" : 0, - "input" : [ + "id": "bed_dye_14_3", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_14_4", - "type" : 0, - "input" : [ + "id": "bed_dye_14_4", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_14_5", - "type" : 0, - "input" : [ + "id": "bed_dye_14_5", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_14_6", - "type" : 0, - "input" : [ + "id": "bed_dye_14_6", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_14_7", - "type" : 0, - "input" : [ + "id": "bed_dye_14_7", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_14_8", - "type" : 0, - "input" : [ + "id": "bed_dye_14_8", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_14_9", - "type" : 0, - "input" : [ + "id": "bed_dye_14_9", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_15_0", - "type" : 0, - "input" : [ + "id": "bed_dye_15_0", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_15_1", - "type" : 0, - "input" : [ + "id": "bed_dye_15_1", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_15_10", - "type" : 0, - "input" : [ + "id": "bed_dye_15_10", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_15_11", - "type" : 0, - "input" : [ + "id": "bed_dye_15_11", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_15_12", - "type" : 0, - "input" : [ + "id": "bed_dye_15_12", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_15_13", - "type" : 0, - "input" : [ + "id": "bed_dye_15_13", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_15_14", - "type" : 0, - "input" : [ + "id": "bed_dye_15_14", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_15_2", - "type" : 0, - "input" : [ + "id": "bed_dye_15_2", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_15_3", - "type" : 0, - "input" : [ + "id": "bed_dye_15_3", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_15_4", - "type" : 0, - "input" : [ + "id": "bed_dye_15_4", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_15_5", - "type" : 0, - "input" : [ + "id": "bed_dye_15_5", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_15_6", - "type" : 0, - "input" : [ + "id": "bed_dye_15_6", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_15_7", - "type" : 0, - "input" : [ + "id": "bed_dye_15_7", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_15_8", - "type" : 0, - "input" : [ + "id": "bed_dye_15_8", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_15_9", - "type" : 0, - "input" : [ + "id": "bed_dye_15_9", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_16_1", - "type" : 0, - "input" : [ + "id": "bed_dye_16_1", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_16_10", - "type" : 0, - "input" : [ + "id": "bed_dye_16_10", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_16_11", - "type" : 0, - "input" : [ + "id": "bed_dye_16_11", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_16_12", - "type" : 0, - "input" : [ + "id": "bed_dye_16_12", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_16_13", - "type" : 0, - "input" : [ + "id": "bed_dye_16_13", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_16_14", - "type" : 0, - "input" : [ + "id": "bed_dye_16_14", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_16_15", - "type" : 0, - "input" : [ + "id": "bed_dye_16_15", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_16_2", - "type" : 0, - "input" : [ + "id": "bed_dye_16_2", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_16_3", - "type" : 0, - "input" : [ + "id": "bed_dye_16_3", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_16_4", - "type" : 0, - "input" : [ + "id": "bed_dye_16_4", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_16_5", - "type" : 0, - "input" : [ + "id": "bed_dye_16_5", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_16_6", - "type" : 0, - "input" : [ + "id": "bed_dye_16_6", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_16_7", - "type" : 0, - "input" : [ + "id": "bed_dye_16_7", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_16_8", - "type" : 0, - "input" : [ + "id": "bed_dye_16_8", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_16_9", - "type" : 0, - "input" : [ + "id": "bed_dye_16_9", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_17_0", - "type" : 0, - "input" : [ + "id": "bed_dye_17_0", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_17_1", - "type" : 0, - "input" : [ + "id": "bed_dye_17_1", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_17_10", - "type" : 0, - "input" : [ + "id": "bed_dye_17_10", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_17_11", - "type" : 0, - "input" : [ + "id": "bed_dye_17_11", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_17_12", - "type" : 0, - "input" : [ + "id": "bed_dye_17_12", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_17_13", - "type" : 0, - "input" : [ + "id": "bed_dye_17_13", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_17_14", - "type" : 0, - "input" : [ + "id": "bed_dye_17_14", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_17_15", - "type" : 0, - "input" : [ + "id": "bed_dye_17_15", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_17_2", - "type" : 0, - "input" : [ + "id": "bed_dye_17_2", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_17_4", - "type" : 0, - "input" : [ + "id": "bed_dye_17_4", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_17_5", - "type" : 0, - "input" : [ + "id": "bed_dye_17_5", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_17_6", - "type" : 0, - "input" : [ + "id": "bed_dye_17_6", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_17_7", - "type" : 0, - "input" : [ + "id": "bed_dye_17_7", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_17_8", - "type" : 0, - "input" : [ + "id": "bed_dye_17_8", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_17_9", - "type" : 0, - "input" : [ + "id": "bed_dye_17_9", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_18_0", - "type" : 0, - "input" : [ + "id": "bed_dye_18_0", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_18_1", - "type" : 0, - "input" : [ + "id": "bed_dye_18_1", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_18_10", - "type" : 0, - "input" : [ + "id": "bed_dye_18_10", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_18_11", - "type" : 0, - "input" : [ + "id": "bed_dye_18_11", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_18_12", - "type" : 0, - "input" : [ + "id": "bed_dye_18_12", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_18_13", - "type" : 0, - "input" : [ + "id": "bed_dye_18_13", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_18_14", - "type" : 0, - "input" : [ + "id": "bed_dye_18_14", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_18_15", - "type" : 0, - "input" : [ + "id": "bed_dye_18_15", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_18_2", - "type" : 0, - "input" : [ + "id": "bed_dye_18_2", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_18_3", - "type" : 0, - "input" : [ + "id": "bed_dye_18_3", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_18_5", - "type" : 0, - "input" : [ + "id": "bed_dye_18_5", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_18_6", - "type" : 0, - "input" : [ + "id": "bed_dye_18_6", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_18_7", - "type" : 0, - "input" : [ + "id": "bed_dye_18_7", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_18_8", - "type" : 0, - "input" : [ + "id": "bed_dye_18_8", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_18_9", - "type" : 0, - "input" : [ + "id": "bed_dye_18_9", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_19_0", - "type" : 0, - "input" : [ + "id": "bed_dye_19_0", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_19_1", - "type" : 0, - "input" : [ + "id": "bed_dye_19_1", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_19_10", - "type" : 0, - "input" : [ + "id": "bed_dye_19_10", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_19_11", - "type" : 0, - "input" : [ + "id": "bed_dye_19_11", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_19_12", - "type" : 0, - "input" : [ + "id": "bed_dye_19_12", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_19_13", - "type" : 0, - "input" : [ + "id": "bed_dye_19_13", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_19_14", - "type" : 0, - "input" : [ + "id": "bed_dye_19_14", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_19_2", - "type" : 0, - "input" : [ + "id": "bed_dye_19_2", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_19_3", - "type" : 0, - "input" : [ + "id": "bed_dye_19_3", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_19_4", - "type" : 0, - "input" : [ + "id": "bed_dye_19_4", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_19_5", - "type" : 0, - "input" : [ + "id": "bed_dye_19_5", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_19_6", - "type" : 0, - "input" : [ + "id": "bed_dye_19_6", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_19_7", - "type" : 0, - "input" : [ + "id": "bed_dye_19_7", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_19_8", - "type" : 0, - "input" : [ + "id": "bed_dye_19_8", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_19_9", - "type" : 0, - "input" : [ + "id": "bed_dye_19_9", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_1_0", - "type" : 0, - "input" : [ + "id": "bed_dye_1_0", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_1_10", - "type" : 0, - "input" : [ + "id": "bed_dye_1_10", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_1_11", - "type" : 0, - "input" : [ + "id": "bed_dye_1_11", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_1_12", - "type" : 0, - "input" : [ + "id": "bed_dye_1_12", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_1_13", - "type" : 0, - "input" : [ + "id": "bed_dye_1_13", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_1_14", - "type" : 0, - "input" : [ + "id": "bed_dye_1_14", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_1_15", - "type" : 0, - "input" : [ + "id": "bed_dye_1_15", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_1_2", - "type" : 0, - "input" : [ + "id": "bed_dye_1_2", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_1_3", - "type" : 0, - "input" : [ + "id": "bed_dye_1_3", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_1_4", - "type" : 0, - "input" : [ + "id": "bed_dye_1_4", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_1_5", - "type" : 0, - "input" : [ + "id": "bed_dye_1_5", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_1_6", - "type" : 0, - "input" : [ + "id": "bed_dye_1_6", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_1_7", - "type" : 0, - "input" : [ + "id": "bed_dye_1_7", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_1_8", - "type" : 0, - "input" : [ + "id": "bed_dye_1_8", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_1_9", - "type" : 0, - "input" : [ + "id": "bed_dye_1_9", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_2_0", - "type" : 0, - "input" : [ + "id": "bed_dye_2_0", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_2_1", - "type" : 0, - "input" : [ + "id": "bed_dye_2_1", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_2_10", - "type" : 0, - "input" : [ + "id": "bed_dye_2_10", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_2_11", - "type" : 0, - "input" : [ + "id": "bed_dye_2_11", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_2_12", - "type" : 0, - "input" : [ + "id": "bed_dye_2_12", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_2_13", - "type" : 0, - "input" : [ + "id": "bed_dye_2_13", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_2_14", - "type" : 0, - "input" : [ + "id": "bed_dye_2_14", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_2_15", - "type" : 0, - "input" : [ + "id": "bed_dye_2_15", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_2_3", - "type" : 0, - "input" : [ + "id": "bed_dye_2_3", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_2_4", - "type" : 0, - "input" : [ + "id": "bed_dye_2_4", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_2_5", - "type" : 0, - "input" : [ + "id": "bed_dye_2_5", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_2_6", - "type" : 0, - "input" : [ + "id": "bed_dye_2_6", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_2_7", - "type" : 0, - "input" : [ + "id": "bed_dye_2_7", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_2_8", - "type" : 0, - "input" : [ + "id": "bed_dye_2_8", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_2_9", - "type" : 0, - "input" : [ + "id": "bed_dye_2_9", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_3_0", - "type" : 0, - "input" : [ + "id": "bed_dye_3_0", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_3_1", - "type" : 0, - "input" : [ + "id": "bed_dye_3_1", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_3_10", - "type" : 0, - "input" : [ + "id": "bed_dye_3_10", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_3_11", - "type" : 0, - "input" : [ + "id": "bed_dye_3_11", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_3_12", - "type" : 0, - "input" : [ + "id": "bed_dye_3_12", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_3_13", - "type" : 0, - "input" : [ + "id": "bed_dye_3_13", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_3_14", - "type" : 0, - "input" : [ + "id": "bed_dye_3_14", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_3_15", - "type" : 0, - "input" : [ + "id": "bed_dye_3_15", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_3_2", - "type" : 0, - "input" : [ + "id": "bed_dye_3_2", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_3_4", - "type" : 0, - "input" : [ + "id": "bed_dye_3_4", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_3_5", - "type" : 0, - "input" : [ + "id": "bed_dye_3_5", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_3_6", - "type" : 0, - "input" : [ + "id": "bed_dye_3_6", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_3_7", - "type" : 0, - "input" : [ + "id": "bed_dye_3_7", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_3_8", - "type" : 0, - "input" : [ + "id": "bed_dye_3_8", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_3_9", - "type" : 0, - "input" : [ + "id": "bed_dye_3_9", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_4_0", - "type" : 0, - "input" : [ + "id": "bed_dye_4_0", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_4_1", - "type" : 0, - "input" : [ + "id": "bed_dye_4_1", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_4_10", - "type" : 0, - "input" : [ + "id": "bed_dye_4_10", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_4_11", - "type" : 0, - "input" : [ + "id": "bed_dye_4_11", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_4_12", - "type" : 0, - "input" : [ + "id": "bed_dye_4_12", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_4_13", - "type" : 0, - "input" : [ + "id": "bed_dye_4_13", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_4_14", - "type" : 0, - "input" : [ + "id": "bed_dye_4_14", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_4_15", - "type" : 0, - "input" : [ + "id": "bed_dye_4_15", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_4_2", - "type" : 0, - "input" : [ + "id": "bed_dye_4_2", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_4_3", - "type" : 0, - "input" : [ + "id": "bed_dye_4_3", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_4_5", - "type" : 0, - "input" : [ + "id": "bed_dye_4_5", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_4_6", - "type" : 0, - "input" : [ + "id": "bed_dye_4_6", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_4_7", - "type" : 0, - "input" : [ + "id": "bed_dye_4_7", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_4_8", - "type" : 0, - "input" : [ + "id": "bed_dye_4_8", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_4_9", - "type" : 0, - "input" : [ + "id": "bed_dye_4_9", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_5_0", - "type" : 0, - "input" : [ + "id": "bed_dye_5_0", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_5_1", - "type" : 0, - "input" : [ + "id": "bed_dye_5_1", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_5_10", - "type" : 0, - "input" : [ + "id": "bed_dye_5_10", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_5_11", - "type" : 0, - "input" : [ + "id": "bed_dye_5_11", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_5_12", - "type" : 0, - "input" : [ + "id": "bed_dye_5_12", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_5_13", - "type" : 0, - "input" : [ + "id": "bed_dye_5_13", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_5_14", - "type" : 0, - "input" : [ + "id": "bed_dye_5_14", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_5_15", - "type" : 0, - "input" : [ + "id": "bed_dye_5_15", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_5_2", - "type" : 0, - "input" : [ + "id": "bed_dye_5_2", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_5_3", - "type" : 0, - "input" : [ + "id": "bed_dye_5_3", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_5_4", - "type" : 0, - "input" : [ + "id": "bed_dye_5_4", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_5_6", - "type" : 0, - "input" : [ + "id": "bed_dye_5_6", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_5_7", - "type" : 0, - "input" : [ + "id": "bed_dye_5_7", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_5_8", - "type" : 0, - "input" : [ + "id": "bed_dye_5_8", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_5_9", - "type" : 0, - "input" : [ + "id": "bed_dye_5_9", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_6_0", - "type" : 0, - "input" : [ + "id": "bed_dye_6_0", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_6_1", - "type" : 0, - "input" : [ + "id": "bed_dye_6_1", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_6_10", - "type" : 0, - "input" : [ + "id": "bed_dye_6_10", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_6_11", - "type" : 0, - "input" : [ + "id": "bed_dye_6_11", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_6_12", - "type" : 0, - "input" : [ + "id": "bed_dye_6_12", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_6_13", - "type" : 0, - "input" : [ + "id": "bed_dye_6_13", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_6_14", - "type" : 0, - "input" : [ + "id": "bed_dye_6_14", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_6_15", - "type" : 0, - "input" : [ + "id": "bed_dye_6_15", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_6_2", - "type" : 0, - "input" : [ + "id": "bed_dye_6_2", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_6_3", - "type" : 0, - "input" : [ + "id": "bed_dye_6_3", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_6_4", - "type" : 0, - "input" : [ + "id": "bed_dye_6_4", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_6_5", - "type" : 0, - "input" : [ + "id": "bed_dye_6_5", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_6_7", - "type" : 0, - "input" : [ + "id": "bed_dye_6_7", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_6_8", - "type" : 0, - "input" : [ + "id": "bed_dye_6_8", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_6_9", - "type" : 0, - "input" : [ + "id": "bed_dye_6_9", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_7_0", - "type" : 0, - "input" : [ + "id": "bed_dye_7_0", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_7_1", - "type" : 0, - "input" : [ + "id": "bed_dye_7_1", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_7_10", - "type" : 0, - "input" : [ + "id": "bed_dye_7_10", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_7_11", - "type" : 0, - "input" : [ + "id": "bed_dye_7_11", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_7_12", - "type" : 0, - "input" : [ + "id": "bed_dye_7_12", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_7_13", - "type" : 0, - "input" : [ + "id": "bed_dye_7_13", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_7_14", - "type" : 0, - "input" : [ + "id": "bed_dye_7_14", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_7_15", - "type" : 0, - "input" : [ + "id": "bed_dye_7_15", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_7_2", - "type" : 0, - "input" : [ + "id": "bed_dye_7_2", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_7_3", - "type" : 0, - "input" : [ + "id": "bed_dye_7_3", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_7_4", - "type" : 0, - "input" : [ + "id": "bed_dye_7_4", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_7_5", - "type" : 0, - "input" : [ + "id": "bed_dye_7_5", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_7_6", - "type" : 0, - "input" : [ + "id": "bed_dye_7_6", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_7_8", - "type" : 0, - "input" : [ + "id": "bed_dye_7_8", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_7_9", - "type" : 0, - "input" : [ + "id": "bed_dye_7_9", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_8_0", - "type" : 0, - "input" : [ + "id": "bed_dye_8_0", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_8_1", - "type" : 0, - "input" : [ + "id": "bed_dye_8_1", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_8_10", - "type" : 0, - "input" : [ + "id": "bed_dye_8_10", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_8_11", - "type" : 0, - "input" : [ + "id": "bed_dye_8_11", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_8_12", - "type" : 0, - "input" : [ + "id": "bed_dye_8_12", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_8_13", - "type" : 0, - "input" : [ + "id": "bed_dye_8_13", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_8_14", - "type" : 0, - "input" : [ + "id": "bed_dye_8_14", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_8_15", - "type" : 0, - "input" : [ + "id": "bed_dye_8_15", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_8_2", - "type" : 0, - "input" : [ + "id": "bed_dye_8_2", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_8_3", - "type" : 0, - "input" : [ + "id": "bed_dye_8_3", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_8_4", - "type" : 0, - "input" : [ + "id": "bed_dye_8_4", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_8_5", - "type" : 0, - "input" : [ + "id": "bed_dye_8_5", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_8_6", - "type" : 0, - "input" : [ + "id": "bed_dye_8_6", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_8_7", - "type" : 0, - "input" : [ + "id": "bed_dye_8_7", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_8_9", - "type" : 0, - "input" : [ + "id": "bed_dye_8_9", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_9_0", - "type" : 0, - "input" : [ + "id": "bed_dye_9_0", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 15 + "id": "minecraft:bed", + "damage": 15 }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_9_1", - "type" : 0, - "input" : [ + "id": "bed_dye_9_1", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 14 + "id": "minecraft:bed", + "damage": 14 }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_9_10", - "type" : 0, - "input" : [ + "id": "bed_dye_9_10", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 5 + "id": "minecraft:bed", + "damage": 5 }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_9_11", - "type" : 0, - "input" : [ + "id": "bed_dye_9_11", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 4 + "id": "minecraft:bed", + "damage": 4 }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_9_12", - "type" : 0, - "input" : [ + "id": "bed_dye_9_12", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 3 + "id": "minecraft:bed", + "damage": 3 }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_9_13", - "type" : 0, - "input" : [ + "id": "bed_dye_9_13", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 2 + "id": "minecraft:bed", + "damage": 2 }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_9_14", - "type" : 0, - "input" : [ + "id": "bed_dye_9_14", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 1 + "id": "minecraft:bed", + "damage": 1 }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_9_15", - "type" : 0, - "input" : [ + "id": "bed_dye_9_15", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed" + "id": "minecraft:bed" }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_9_2", - "type" : 0, - "input" : [ + "id": "bed_dye_9_2", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 13 + "id": "minecraft:bed", + "damage": 13 }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_9_3", - "type" : 0, - "input" : [ + "id": "bed_dye_9_3", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 12 + "id": "minecraft:bed", + "damage": 12 }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_9_4", - "type" : 0, - "input" : [ + "id": "bed_dye_9_4", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 11 + "id": "minecraft:bed", + "damage": 11 }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_9_5", - "type" : 0, - "input" : [ + "id": "bed_dye_9_5", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 10 + "id": "minecraft:bed", + "damage": 10 }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_9_6", - "type" : 0, - "input" : [ + "id": "bed_dye_9_6", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 9 + "id": "minecraft:bed", + "damage": 9 }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_9_7", - "type" : 0, - "input" : [ + "id": "bed_dye_9_7", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 8 + "id": "minecraft:bed", + "damage": 8 }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "bed_dye_9_8", - "type" : 0, - "input" : [ + "id": "bed_dye_9_8", + "type": 0, + "input": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 7 + "id": "minecraft:bed", + "damage": 7 }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 418, - "id" : "minecraft:bed", - "damage" : 6 + "id": "minecraft:bed", + "damage": 6 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "birch_stairs_birch_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 2 + "id": "birch_stairs_birch_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=birch" } }, - "output" : [ + "output": [ { - "legacyId" : 135, - "id" : "minecraft:birch_stairs", - "count" : 4, - "blockRuntimeId" : 432 + "count": 4, + "blockState": "minecraft:birch_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "type" : 4, - "uuid" : "d1ca6b84-338e-4f2f-9c6b-76cc8b4bd98d" + "type": 4, + "uuid": "d1ca6b84-338e-4f2f-9c6b-76cc8b4bd98d" }, { - "id" : "chiseled_quartz_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "damage" : 6 + "id": "chiseled_quartz_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:double_stone_slab;stone_slab_type=quartz" } }, - "output" : [ + "output": [ { - "legacyId" : 155, - "id" : "minecraft:quartz_block", - "blockRuntimeId" : 6379 + "blockState": "minecraft:quartz_block;chisel_type=chiseled" } ], - "shape" : [ + "shape": [ "A", "A" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "chiseled_stonebrick_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "damage" : 5 + "id": "chiseled_stonebrick_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:double_stone_slab;stone_slab_type=stone_brick" } }, - "output" : [ + "output": [ { - "legacyId" : 98, - "id" : "minecraft:stonebrick", - "blockRuntimeId" : 7046 + "blockState": "minecraft:stonebrick;stone_brick_type=chiseled" } ], - "shape" : [ + "shape": [ "A", "A" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "type" : 4, - "uuid" : "85939755-ba10-4d9d-a4cc-efb7a8e943c4" + "type": 4, + "uuid": "85939755-ba10-4d9d-a4cc-efb7a8e943c4" }, { - "id" : "dark_oak_stairs_dark_oak_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 5 + "id": "dark_oak_stairs_dark_oak_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=dark_oak" } }, - "output" : [ + "output": [ { - "legacyId" : 164, - "id" : "minecraft:dark_oak_stairs", - "count" : 4, - "blockRuntimeId" : 3962 + "count": 4, + "blockState": "minecraft:dark_oak_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "type" : 4, - "uuid" : "d392b075-4ba1-40ae-8789-af868d56f6ce" + "type": 4, + "uuid": "d392b075-4ba1-40ae-8789-af868d56f6ce" }, { - "id" : "heiroglyphs_redsandstone_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2" + "id": "heiroglyphs_redsandstone_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:double_stone_slab2" } }, - "output" : [ + "output": [ { - "legacyId" : 179, - "id" : "minecraft:red_sandstone", - "blockRuntimeId" : 6457 + "blockState": "minecraft:red_sandstone;sand_stone_type=heiroglyphs" } ], - "shape" : [ + "shape": [ "A", "A" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "heiroglyphs_sandstone_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "damage" : 1 + "id": "heiroglyphs_sandstone_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:double_stone_slab;stone_slab_type=sandstone" } }, - "output" : [ + "output": [ { - "legacyId" : 24, - "id" : "minecraft:sandstone", - "blockRuntimeId" : 6530 + "blockState": "minecraft:sandstone;sand_stone_type=heiroglyphs" } ], - "shape" : [ + "shape": [ "A", "A" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "jungle_stairs_jungle_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 3 + "id": "jungle_stairs_jungle_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=jungle" } }, - "output" : [ + "output": [ { - "legacyId" : 136, - "id" : "minecraft:jungle_stairs", - "count" : 4, - "blockRuntimeId" : 5190 + "count": 4, + "blockState": "minecraft:jungle_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "lines_purpur_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "damage" : 1 + "id": "lines_purpur_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:double_stone_slab2;stone_slab_type_2=purpur" } }, - "output" : [ + "output": [ { - "legacyId" : 201, - "id" : "minecraft:purpur_block", - "blockRuntimeId" : 6360 + "blockState": "minecraft:purpur_block;chisel_type=lines" } ], - "shape" : [ + "shape": [ "A", "A" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "loom_block_wood_planks_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 326, - "id" : "minecraft:string", - "damage" : 32767 + "id": "loom_block_wood_planks_recipeId", + "type": 1, + "input": { + "A": { + "id": "minecraft:string", + "fuzzy": true }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : -204, - "id" : "minecraft:loom", - "blockRuntimeId" : 5457 + "blockState": "minecraft:loom" } ], - "shape" : [ + "shape": [ "AA", "BB" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:acacia_boat", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 4 + "id": "minecraft:acacia_boat", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=acacia" }, - "B" : { - "legacyId" : 309, - "id" : "minecraft:wooden_shovel", - "damage" : 32767 + "B": { + "id": "minecraft:wooden_shovel", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 379, - "id" : "minecraft:acacia_boat" + "id": "minecraft:acacia_boat", + "damage": 4 } ], - "shape" : [ + "shape": [ "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:acacia_door", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 4 + "id": "minecraft:acacia_door", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=acacia" } }, - "output" : [ + "output": [ { - "legacyId" : 556, - "id" : "minecraft:acacia_door", - "count" : 3 + "id": "minecraft:acacia_door", + "count": 3 } ], - "shape" : [ + "shape": [ "AA", "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:acacia_fence", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 4 + "id": "minecraft:acacia_fence", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=acacia" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 85, - "id" : "minecraft:fence", - "count" : 3, - "blockRuntimeId" : 4727 + "count": 3, + "blockState": "minecraft:fence;wood_type=acacia" } ], - "shape" : [ + "shape": [ "ABA", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:acacia_fence_gate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:acacia_fence_gate", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 4 + "B": { + "blockState": "minecraft:planks;wood_type=acacia" } }, - "output" : [ + "output": [ { - "legacyId" : 187, - "id" : "minecraft:acacia_fence_gate", - "blockRuntimeId" : 44 + "blockState": "minecraft:acacia_fence_gate" } ], - "shape" : [ + "shape": [ "ABA", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:acacia_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 162, - "id" : "minecraft:log2" + "id": "minecraft:acacia_planks", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:log2" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5644 + "count": 4, + "blockState": "minecraft:planks;wood_type=acacia" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:acacia_planks_from_stripped", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -8, - "id" : "minecraft:stripped_acacia_log", - "damage" : 32767 + "id": "minecraft:acacia_planks_from_stripped", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_acacia_log" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5644 + "count": 4, + "blockState": "minecraft:planks;wood_type=acacia" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:acacia_planks_from_stripped_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 12 + "id": "minecraft:acacia_planks_from_stripped_wood", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wood;stripped_bit=1;wood_type=acacia" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5644 + "count": 4, + "blockState": "minecraft:planks;wood_type=acacia" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:acacia_planks_from_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 4 + "id": "minecraft:acacia_planks_from_wood", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wood;wood_type=acacia" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5644 + "count": 4, + "blockState": "minecraft:planks;wood_type=acacia" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:acacia_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 4 + "id": "minecraft:acacia_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=acacia" } }, - "output" : [ + "output": [ { - "legacyId" : 163, - "id" : "minecraft:acacia_stairs", - "count" : 4, - "blockRuntimeId" : 76 + "count": 4, + "blockState": "minecraft:acacia_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:acacia_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 162, - "id" : "minecraft:log2" + "id": "minecraft:acacia_wood", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:log2" } }, - "output" : [ + "output": [ { - "legacyId" : -212, - "id" : "minecraft:wood", - "count" : 3, - "blockRuntimeId" : 7555 + "count": 3, + "blockState": "minecraft:wood;wood_type=acacia" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:acacia_wood_stripped", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -8, - "id" : "minecraft:stripped_acacia_log", - "damage" : 32767 + "id": "minecraft:acacia_wood_stripped", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_acacia_log" } }, - "output" : [ + "output": [ { - "legacyId" : -212, - "id" : "minecraft:wood", - "count" : 3, - "blockRuntimeId" : 7561 + "count": 3, + "blockState": "minecraft:wood;stripped_bit=1;wood_type=acacia" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:acacia_wooden_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 4 + "id": "minecraft:acacia_wooden_slab", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=acacia" } }, - "output" : [ + "output": [ { - "legacyId" : 158, - "id" : "minecraft:wooden_slab", - "count" : 6, - "blockRuntimeId" : 7651 + "count": 6, + "blockState": "minecraft:wooden_slab;wood_type=acacia" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:activator_rail", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:activator_rail", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true }, - "C" : { - "legacyId" : 76, - "id" : "minecraft:redstone_torch", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:redstone_torch" } }, - "output" : [ + "output": [ { - "legacyId" : 126, - "id" : "minecraft:activator_rail", - "count" : 6, - "blockRuntimeId" : 122 + "count": 6, + "blockState": "minecraft:activator_rail" } ], - "shape" : [ + "shape": [ "ABA", "ACA", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:amethyst_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 623, - "id" : "minecraft:amethyst_shard", - "damage" : 32767 + "id": "minecraft:amethyst_block", + "type": 1, + "input": { + "A": { + "legacyId": 624, + "id": "minecraft:amethyst_shard", + "damage": 32767 } }, - "output" : [ + "output": [ { - "legacyId" : -327, - "id" : "minecraft:amethyst_block", - "blockRuntimeId" : 136 + "blockState": "minecraft:amethyst_block" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:andesite", - "type" : 0, - "input" : [ + "id": "minecraft:andesite", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 3 + "blockState": "minecraft:stone;stone_type=diorite" }, { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:cobblestone" } ], - "output" : [ + "output": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "count" : 2, - "blockRuntimeId" : 6939 + "count": 2, + "blockState": "minecraft:stone;stone_type=andesite" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:andesite_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 5 + "id": "minecraft:andesite_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone;stone_type=andesite" } }, - "output" : [ + "output": [ { - "legacyId" : -171, - "id" : "minecraft:andesite_stairs", - "count" : 4, - "blockRuntimeId" : 144 + "count": 4, + "blockState": "minecraft:andesite_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:andesite_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 5 + "id": "minecraft:andesite_wall", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone;stone_type=andesite" } }, - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "count" : 6, - "blockRuntimeId" : 1282 + "count": 6, + "blockState": "minecraft:cobblestone_wall;wall_block_type=andesite" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:anvil", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 42, - "id" : "minecraft:iron_block", - "damage" : 32767 + "id": "minecraft:anvil", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:iron_block" }, - "B" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "B": { + "id": "minecraft:iron_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 145, - "id" : "minecraft:anvil", - "blockRuntimeId" : 152 + "blockState": "minecraft:anvil" } ], - "shape" : [ + "shape": [ "AAA", " B ", "BBB" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:armor_stand", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:armor_stand", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab" + "B": { + "blockState": "minecraft:double_stone_slab" } }, - "output" : [ + "output": [ { - "legacyId" : 552, - "id" : "minecraft:armor_stand" + "id": "minecraft:armor_stand" } ], - "shape" : [ + "shape": [ "AAA", " A ", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:arrow", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 356, - "id" : "minecraft:flint", - "damage" : 32767 + "id": "minecraft:arrow", + "type": 1, + "input": { + "A": { + "id": "minecraft:flint", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true }, - "C" : { - "legacyId" : 327, - "id" : "minecraft:feather", - "damage" : 32767 + "C": { + "id": "minecraft:feather", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "count" : 4 + "id": "minecraft:arrow", + "count": 4 } ], - "shape" : [ + "shape": [ "A", "B", "C" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:banner_pattern_bricks", - "type" : 0, - "input" : [ + "id": "minecraft:banner_pattern_bricks", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 45, - "id" : "minecraft:brick_block", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:brick_block" } ], - "output" : [ + "output": [ { - "legacyId" : 585, - "id" : "minecraft:field_masoned_banner_pattern" + "id": "minecraft:field_masoned_banner_pattern", + "damage": 4 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:banner_pattern_creeper", - "type" : 0, - "input" : [ + "id": "minecraft:banner_pattern_creeper", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 516, - "id" : "minecraft:skull", - "damage" : 4 + "id": "minecraft:skull", + "damage": 4 } ], - "output" : [ + "output": [ { - "legacyId" : 582, - "id" : "minecraft:creeper_banner_pattern" + "id": "minecraft:creeper_banner_pattern" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:banner_pattern_flower", - "type" : 0, - "input" : [ + "id": "minecraft:banner_pattern_flower", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 8 + "blockState": "minecraft:red_flower;flower_type=oxeye" } ], - "output" : [ + "output": [ { - "legacyId" : 581, - "id" : "minecraft:flower_banner_pattern" + "id": "minecraft:flower_banner_pattern", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:banner_pattern_skull", - "type" : 0, - "input" : [ + "id": "minecraft:banner_pattern_skull", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 516, - "id" : "minecraft:skull", - "damage" : 1 + "id": "minecraft:skull", + "damage": 1 } ], - "output" : [ + "output": [ { - "legacyId" : 583, - "id" : "minecraft:skull_banner_pattern" + "id": "minecraft:skull_banner_pattern", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:banner_pattern_thing", - "type" : 0, - "input" : [ + "id": "minecraft:banner_pattern_thing", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 259, - "id" : "minecraft:enchanted_golden_apple", - "damage" : 32767 + "id": "minecraft:enchanted_golden_apple", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 584, - "id" : "minecraft:mojang_banner_pattern" + "id": "minecraft:mojang_banner_pattern", + "damage": 3 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:banner_pattern_vines", - "type" : 0, - "input" : [ + "id": "minecraft:banner_pattern_vines", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 106, - "id" : "minecraft:vine", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:vine" } ], - "output" : [ + "output": [ { - "legacyId" : 586, - "id" : "minecraft:bordure_indented_banner_pattern" + "id": "minecraft:bordure_indented_banner_pattern", + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:barrel", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:barrel", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 158, - "id" : "minecraft:wooden_slab", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:wooden_slab" } }, - "output" : [ + "output": [ { - "legacyId" : -203, - "id" : "minecraft:barrel", - "blockRuntimeId" : 201 + "blockState": "minecraft:barrel" } ], - "shape" : [ + "shape": [ "ABA", "A A", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:barrel_from_crimson_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:barrel_from_crimson_slab", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -264, - "id" : "minecraft:crimson_slab", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_slab" } }, - "output" : [ + "output": [ { - "legacyId" : -203, - "id" : "minecraft:barrel", - "blockRuntimeId" : 201 + "blockState": "minecraft:barrel" } ], - "shape" : [ + "shape": [ "ABA", "A A", "ABA" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:barrel_from_warped_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:barrel_from_warped_slab", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -265, - "id" : "minecraft:warped_slab", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_slab" } }, - "output" : [ + "output": [ { - "legacyId" : -203, - "id" : "minecraft:barrel", - "blockRuntimeId" : 201 + "blockState": "minecraft:barrel" } ], - "shape" : [ + "shape": [ "ABA", "A A", "ABA" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:basic_map_to_enhanced", - "type" : 0, - "input" : [ + "id": "minecraft:basic_map_to_enhanced", + "type": 0, + "input": [ { - "legacyId" : 515, - "id" : "minecraft:empty_map", - "damage" : 1 + "id": "minecraft:empty_map", + "damage": 1 }, { - "legacyId" : 391, - "id" : "minecraft:compass", - "damage" : 32767 + "id": "minecraft:compass", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 515, - "id" : "minecraft:empty_map", - "damage" : 2 + "id": "minecraft:empty_map", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:beacon", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:beacon", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 518, - "id" : "minecraft:nether_star", - "damage" : 32767 + "B": { + "id": "minecraft:nether_star", + "fuzzy": true }, - "C" : { - "legacyId" : 49, - "id" : "minecraft:obsidian", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:obsidian" } }, - "output" : [ + "output": [ { - "legacyId" : 138, - "id" : "minecraft:beacon", - "blockRuntimeId" : 217 + "blockState": "minecraft:beacon" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:beehive", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "id": "minecraft:beehive", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:planks" }, - "B" : { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "B": { + "id": "minecraft:honeycomb", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : -219, - "id" : "minecraft:beehive", - "blockRuntimeId" : 260 + "blockState": "minecraft:beehive" } ], - "shape" : [ + "shape": [ "AAA", "BBB", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:beehive_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:beehive_from_crimson_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" }, - "B" : { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "B": { + "id": "minecraft:honeycomb", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : -219, - "id" : "minecraft:beehive", - "blockRuntimeId" : 260 + "blockState": "minecraft:beehive" } ], - "shape" : [ + "shape": [ "AAA", "BBB", "AAA" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:beehive_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:beehive_from_warped_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" }, - "B" : { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "B": { + "id": "minecraft:honeycomb", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : -219, - "id" : "minecraft:beehive", - "blockRuntimeId" : 260 + "blockState": "minecraft:beehive" } ], - "shape" : [ + "shape": [ "AAA", "BBB", "AAA" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:beetroot_soup", - "type" : 0, - "input" : [ + "id": "minecraft:beetroot_soup", + "type": 0, + "input": [ { - "legacyId" : 321, - "id" : "minecraft:bowl", - "damage" : 32767 + "id": "minecraft:bowl", + "fuzzy": true }, { - "legacyId" : 285, - "id" : "minecraft:beetroot", - "damage" : 32767 + "id": "minecraft:beetroot", + "fuzzy": true }, { - "legacyId" : 285, - "id" : "minecraft:beetroot", - "damage" : 32767 + "id": "minecraft:beetroot", + "fuzzy": true }, { - "legacyId" : 285, - "id" : "minecraft:beetroot", - "damage" : 32767 + "id": "minecraft:beetroot", + "fuzzy": true }, { - "legacyId" : 285, - "id" : "minecraft:beetroot", - "damage" : 32767 + "id": "minecraft:beetroot", + "fuzzy": true }, { - "legacyId" : 285, - "id" : "minecraft:beetroot", - "damage" : 32767 + "id": "minecraft:beetroot", + "fuzzy": true }, { - "legacyId" : 285, - "id" : "minecraft:beetroot", - "damage" : 32767 + "id": "minecraft:beetroot", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 286, - "id" : "minecraft:beetroot_soup" + "id": "minecraft:beetroot_soup" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:birch_boat", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 2 + "id": "minecraft:birch_boat", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=birch" }, - "B" : { - "legacyId" : 309, - "id" : "minecraft:wooden_shovel", - "damage" : 32767 + "B": { + "id": "minecraft:wooden_shovel", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 376, - "id" : "minecraft:birch_boat" + "id": "minecraft:birch_boat", + "damage": 2 } ], - "shape" : [ + "shape": [ "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:birch_door", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 2 + "id": "minecraft:birch_door", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=birch" } }, - "output" : [ + "output": [ { - "legacyId" : 554, - "id" : "minecraft:birch_door", - "count" : 3 + "id": "minecraft:birch_door", + "count": 3 } ], - "shape" : [ + "shape": [ "AA", "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:birch_fence", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 2 + "id": "minecraft:birch_fence", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=birch" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 85, - "id" : "minecraft:fence", - "count" : 3, - "blockRuntimeId" : 4725 + "count": 3, + "blockState": "minecraft:fence;wood_type=birch" } ], - "shape" : [ + "shape": [ "ABA", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:birch_fence_gate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:birch_fence_gate", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 2 + "B": { + "blockState": "minecraft:planks;wood_type=birch" } }, - "output" : [ + "output": [ { - "legacyId" : 184, - "id" : "minecraft:birch_fence_gate", - "blockRuntimeId" : 400 + "blockState": "minecraft:birch_fence_gate" } ], - "shape" : [ + "shape": [ "ABA", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:birch_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 17, - "id" : "minecraft:log", - "damage" : 2 + "id": "minecraft:birch_planks", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:log;old_log_type=birch" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5642 + "count": 4, + "blockState": "minecraft:planks;wood_type=birch" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:birch_planks_from_stripped", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -6, - "id" : "minecraft:stripped_birch_log", - "damage" : 32767 + "id": "minecraft:birch_planks_from_stripped", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_birch_log" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5642 + "count": 4, + "blockState": "minecraft:planks;wood_type=birch" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:birch_planks_from_stripped_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 10 + "id": "minecraft:birch_planks_from_stripped_wood", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wood;stripped_bit=1;wood_type=birch" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5642 + "count": 4, + "blockState": "minecraft:planks;wood_type=birch" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:birch_planks_from_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 2 + "id": "minecraft:birch_planks_from_wood", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wood;wood_type=birch" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5642 + "count": 4, + "blockState": "minecraft:planks;wood_type=birch" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:birch_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 2 + "id": "minecraft:birch_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=birch" } }, - "output" : [ + "output": [ { - "legacyId" : 135, - "id" : "minecraft:birch_stairs", - "count" : 4, - "blockRuntimeId" : 432 + "count": 4, + "blockState": "minecraft:birch_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:birch_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 17, - "id" : "minecraft:log", - "damage" : 2 + "id": "minecraft:birch_wood", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:log;old_log_type=birch" } }, - "output" : [ + "output": [ { - "legacyId" : -212, - "id" : "minecraft:wood", - "count" : 3, - "blockRuntimeId" : 7553 + "count": 3, + "blockState": "minecraft:wood;wood_type=birch" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:birch_wood_stripped", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -6, - "id" : "minecraft:stripped_birch_log", - "damage" : 32767 + "id": "minecraft:birch_wood_stripped", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_birch_log" } }, - "output" : [ + "output": [ { - "legacyId" : -212, - "id" : "minecraft:wood", - "count" : 3, - "blockRuntimeId" : 7559 + "count": 3, + "blockState": "minecraft:wood;stripped_bit=1;wood_type=birch" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:birch_wooden_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 2 + "id": "minecraft:birch_wooden_slab", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=birch" } }, - "output" : [ + "output": [ { - "legacyId" : 158, - "id" : "minecraft:wooden_slab", - "count" : 6, - "blockRuntimeId" : 7649 + "count": 6, + "blockState": "minecraft:wooden_slab;wood_type=birch" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:black_banner", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "id": "minecraft:black_banner", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=black" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 567, - "id" : "minecraft:banner" + "id": "minecraft:banner" } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:black_candle", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:black_dye", + "damage": 16 + } + ], + "output": [ + { + "blockState": "minecraft:black_candle;candles=0;lit=0" + } + ], + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:black_carpet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "id": "minecraft:black_candle_from_ink_sac", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:ink_sac" + } + ], + "output": [ + { + "blockState": "minecraft:black_candle;candles=0;lit=0" + } + ], + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:black_carpet", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=black" } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 3, - "blockRuntimeId" : 938 + "count": 3, + "blockState": "minecraft:carpet;color=black" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:black_carpet_from_white", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 171, - "id" : "minecraft:carpet" + "id": "minecraft:black_carpet_from_white", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:carpet" }, - "B" : { - "legacyId" : 395, - "id" : "minecraft:black_dye" + "B": { + "id": "minecraft:black_dye", + "damage": 16 } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 8, - "blockRuntimeId" : 938 + "count": 8, + "blockState": "minecraft:carpet;color=black" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:black_concrete_powder", - "type" : 0, - "input" : [ + "id": "minecraft:black_concrete_powder", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye" + "id": "minecraft:black_dye", + "damage": 16 }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3634 + "count": 8, + "blockState": "minecraft:concrete_powder;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:black_concrete_powder_from_ink_sac", - "type" : 0, - "input" : [ + "id": "minecraft:black_concrete_powder_from_ink_sac", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac" + "id": "minecraft:ink_sac" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3634 + "count": 8, + "blockState": "minecraft:concrete_powder;color=black" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:black_dye_from_ink_sac", - "type" : 0, - "input" : [ + "id": "minecraft:black_dye_from_ink_sac", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac" + "id": "minecraft:ink_sac" } ], - "output" : [ + "output": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye" + "id": "minecraft:black_dye", + "damage": 16 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:black_dye_from_wither_rose", - "type" : 0, - "input" : [ + "id": "minecraft:black_dye_from_wither_rose", + "type": 0, + "input": [ { - "legacyId" : -216, - "id" : "minecraft:wither_rose", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:wither_rose" } ], - "output" : [ + "output": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye" + "id": "minecraft:black_dye", + "damage": 16 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:black_stained_glass", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:black_stained_glass", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 395, - "id" : "minecraft:black_dye" + "B": { + "id": "minecraft:black_dye", + "damage": 16 } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6857 + "count": 8, + "blockState": "minecraft:stained_glass;color=black" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:black_stained_glass_from_ink_sac", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:black_stained_glass_from_ink_sac", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 413, - "id" : "minecraft:ink_sac" + "B": { + "id": "minecraft:ink_sac" } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6857 + "count": 8, + "blockState": "minecraft:stained_glass;color=black" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:black_stained_glass_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "damage" : 15 + "id": "minecraft:black_stained_glass_pane", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stained_glass;color=black" } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 16, - "blockRuntimeId" : 6873 + "count": 16, + "blockState": "minecraft:stained_glass_pane;color=black" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:black_stained_glass_pane_from_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 102, - "id" : "minecraft:glass_pane", - "damage" : 32767 + "id": "minecraft:black_stained_glass_pane_from_pane", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass_pane" }, - "B" : { - "legacyId" : 395, - "id" : "minecraft:black_dye" + "B": { + "id": "minecraft:black_dye", + "damage": 16 } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 8, - "blockRuntimeId" : 6873 + "count": 8, + "blockState": "minecraft:stained_glass_pane;color=black" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:black_stained_hardened_clay", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:black_stained_hardened_clay", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 395, - "id" : "minecraft:black_dye" + "B": { + "id": "minecraft:black_dye", + "damage": 16 } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6889 + "count": 8, + "blockState": "minecraft:stained_hardened_clay;color=black" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:black_stained_hardened_clay_from_ink_sac", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:black_stained_hardened_clay_from_ink_sac", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 413, - "id" : "minecraft:ink_sac" + "B": { + "id": "minecraft:ink_sac" } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6889 + "count": 8, + "blockState": "minecraft:stained_hardened_clay;color=black" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:blackstone_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "id": "minecraft:blackstone_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:blackstone" } }, - "output" : [ + "output": [ { - "legacyId" : -282, - "id" : "minecraft:blackstone_slab", - "count" : 6, - "blockRuntimeId" : 487 + "count": 6, + "blockState": "minecraft:blackstone_slab" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:blackstone_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "id": "minecraft:blackstone_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:blackstone" } }, - "output" : [ + "output": [ { - "legacyId" : -276, - "id" : "minecraft:blackstone_stairs", - "count" : 4, - "blockRuntimeId" : 489 + "count": 4, + "blockState": "minecraft:blackstone_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:blackstone_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "id": "minecraft:blackstone_wall", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:blackstone" } }, - "output" : [ + "output": [ { - "legacyId" : -277, - "id" : "minecraft:blackstone_wall", - "count" : 6, - "blockRuntimeId" : 497 + "count": 6, + "blockState": "minecraft:blackstone_wall" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:blast_furnace", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:blast_furnace", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 61, - "id" : "minecraft:furnace", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:furnace" }, - "C" : { - "legacyId" : -183, - "id" : "minecraft:smooth_stone", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:smooth_stone" } }, - "output" : [ + "output": [ { - "legacyId" : -196, - "id" : "minecraft:blast_furnace", - "blockRuntimeId" : 659 + "blockState": "minecraft:blast_furnace" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:blaze_powder", - "type" : 0, - "input" : [ + "id": "minecraft:blaze_powder", + "type": 0, + "input": [ { - "legacyId" : 423, - "id" : "minecraft:blaze_rod", - "damage" : 32767 + "id": "minecraft:blaze_rod", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 429, - "id" : "minecraft:blaze_powder", - "count" : 2 + "id": "minecraft:blaze_powder", + "count": 2 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:blue_banner", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "id": "minecraft:blue_banner", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=blue" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 567, - "id" : "minecraft:banner", - "damage" : 4 + "id": "minecraft:banner", + "damage": 4 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:blue_carpet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "id": "minecraft:blue_candle", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:blue_dye", + "damage": 18 + } + ], + "output": [ + { + "blockState": "minecraft:blue_candle" + } + ], + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:blue_candle_from_lapis_lazuli", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:lapis_lazuli", + "damage": 4 + } + ], + "output": [ + { + "blockState": "minecraft:blue_candle" + } + ], + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:blue_carpet", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=blue" } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 3, - "blockRuntimeId" : 934 + "count": 3, + "blockState": "minecraft:carpet;color=blue" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:blue_carpet_from_white", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 171, - "id" : "minecraft:carpet" + "id": "minecraft:blue_carpet_from_white", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:carpet" }, - "B" : { - "legacyId" : 399, - "id" : "minecraft:blue_dye" + "B": { + "id": "minecraft:blue_dye", + "damage": 18 } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 8, - "blockRuntimeId" : 934 + "count": 8, + "blockState": "minecraft:carpet;color=blue" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:blue_concrete_powder", - "type" : 0, - "input" : [ + "id": "minecraft:blue_concrete_powder", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye" + "id": "minecraft:blue_dye", + "damage": 18 }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3630 + "count": 8, + "blockState": "minecraft:concrete_powder;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:blue_concrete_powder_from_lapis_lazuli", - "type" : 0, - "input" : [ + "id": "minecraft:blue_concrete_powder_from_lapis_lazuli", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli" + "id": "minecraft:lapis_lazuli", + "damage": 4 }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3630 + "count": 8, + "blockState": "minecraft:concrete_powder;color=blue" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:blue_dye_from_cornflower", - "type" : 0, - "input" : [ + "id": "minecraft:blue_dye_from_cornflower", + "type": 0, + "input": [ { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 9 + "blockState": "minecraft:red_flower;flower_type=cornflower" } ], - "output" : [ + "output": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye" + "id": "minecraft:blue_dye", + "damage": 18 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:blue_dye_from_lapis_lazuli", - "type" : 0, - "input" : [ + "id": "minecraft:blue_dye_from_lapis_lazuli", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli" + "id": "minecraft:lapis_lazuli", + "damage": 4 } ], - "output" : [ + "output": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye" + "id": "minecraft:blue_dye", + "damage": 18 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:blue_ice", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 174, - "id" : "minecraft:packed_ice", - "damage" : 32767 + "id": "minecraft:blue_ice", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:packed_ice" } }, - "output" : [ + "output": [ { - "legacyId" : -11, - "id" : "minecraft:blue_ice", - "blockRuntimeId" : 671 + "blockState": "minecraft:blue_ice" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:blue_stained_glass", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:blue_stained_glass", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 399, - "id" : "minecraft:blue_dye" + "B": { + "id": "minecraft:blue_dye", + "damage": 18 } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6853 + "count": 8, + "blockState": "minecraft:stained_glass;color=blue" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:blue_stained_glass_from_lapis_lazuli", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:blue_stained_glass_from_lapis_lazuli", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli" + "B": { + "id": "minecraft:lapis_lazuli", + "damage": 4 } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6853 + "count": 8, + "blockState": "minecraft:stained_glass;color=blue" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:blue_stained_glass_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "damage" : 11 + "id": "minecraft:blue_stained_glass_pane", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stained_glass;color=blue" } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 16, - "blockRuntimeId" : 6869 + "count": 16, + "blockState": "minecraft:stained_glass_pane;color=blue" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:blue_stained_glass_pane_from_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 102, - "id" : "minecraft:glass_pane", - "damage" : 32767 + "id": "minecraft:blue_stained_glass_pane_from_pane", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass_pane" }, - "B" : { - "legacyId" : 399, - "id" : "minecraft:blue_dye" + "B": { + "id": "minecraft:blue_dye", + "damage": 18 } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 8, - "blockRuntimeId" : 6869 + "count": 8, + "blockState": "minecraft:stained_glass_pane;color=blue" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:blue_stained_hardened_clay", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:blue_stained_hardened_clay", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 399, - "id" : "minecraft:blue_dye" + "B": { + "id": "minecraft:blue_dye", + "damage": 18 } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6885 + "count": 8, + "blockState": "minecraft:stained_hardened_clay;color=blue" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:blue_stained_hardened_clay_from_lapis_lazuli", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:blue_stained_hardened_clay_from_lapis_lazuli", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli" + "B": { + "id": "minecraft:lapis_lazuli", + "damage": 4 } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6885 + "count": 8, + "blockState": "minecraft:stained_hardened_clay;color=blue" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:boat", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks" + "id": "minecraft:boat", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks" }, - "B" : { - "legacyId" : 309, - "id" : "minecraft:wooden_shovel", - "damage" : 32767 + "B": { + "id": "minecraft:wooden_shovel", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 375, - "id" : "minecraft:oak_boat" + "id": "minecraft:oak_boat" } ], - "shape" : [ + "shape": [ "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:bone_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 411, - "id" : "minecraft:bone_meal" + "id": "minecraft:bone_block", + "type": 1, + "input": { + "A": { + "id": "minecraft:bone_meal", + "damage": 15 } }, - "output" : [ + "output": [ { - "legacyId" : 216, - "id" : "minecraft:bone_block", - "blockRuntimeId" : 672 + "blockState": "minecraft:bone_block" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:bone_meal_from_block", - "type" : 0, - "input" : [ + "id": "minecraft:bone_meal_from_block", + "type": 0, + "input": [ { - "legacyId" : 216, - "id" : "minecraft:bone_block", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:bone_block" } ], - "output" : [ + "output": [ { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "count" : 9 + "id": "minecraft:bone_meal", + "count": 9, + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:bone_meal_from_bone", - "type" : 0, - "input" : [ + "id": "minecraft:bone_meal_from_bone", + "type": 0, + "input": [ { - "legacyId" : 415, - "id" : "minecraft:bone", - "damage" : 32767 + "id": "minecraft:bone", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "count" : 3 + "id": "minecraft:bone_meal", + "count": 3, + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:book", - "type" : 0, - "input" : [ + "id": "minecraft:book", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper" + "id": "minecraft:paper" }, { - "legacyId" : 386, - "id" : "minecraft:paper" + "id": "minecraft:paper" }, { - "legacyId" : 386, - "id" : "minecraft:paper" + "id": "minecraft:paper" }, { - "legacyId" : 381, - "id" : "minecraft:leather" + "id": "minecraft:leather" } ], - "output" : [ + "output": [ { - "legacyId" : 387, - "id" : "minecraft:book" + "id": "minecraft:book" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:bookshelf_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:bookshelf_from_crimson_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" }, - "B" : { - "legacyId" : 387, - "id" : "minecraft:book", - "damage" : 32767 + "B": { + "id": "minecraft:book", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 47, - "id" : "minecraft:bookshelf", - "blockRuntimeId" : 684 + "blockState": "minecraft:bookshelf" } ], - "shape" : [ + "shape": [ "AAA", "BBB", "AAA" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:bookshelf_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:bookshelf_from_warped_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" }, - "B" : { - "legacyId" : 387, - "id" : "minecraft:book", - "damage" : 32767 + "B": { + "id": "minecraft:book", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 47, - "id" : "minecraft:bookshelf", - "blockRuntimeId" : 684 + "blockState": "minecraft:bookshelf" } ], - "shape" : [ + "shape": [ "AAA", "BBB", "AAA" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:bow", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:bow", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 326, - "id" : "minecraft:string", - "damage" : 32767 + "B": { + "id": "minecraft:string", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 300, - "id" : "minecraft:bow" + "id": "minecraft:bow" } ], - "shape" : [ + "shape": [ " AB", "A B", " AB" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:bowl_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:bowl_from_crimson_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 321, - "id" : "minecraft:bowl", - "count" : 4 + "id": "minecraft:bowl", + "count": 4 } ], - "shape" : [ + "shape": [ "A A", " A " ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:bowl_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:bowl_from_warped_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 321, - "id" : "minecraft:bowl", - "count" : 4 + "id": "minecraft:bowl", + "count": 4 } ], - "shape" : [ + "shape": [ "A A", " A " ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:bread", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 334, - "id" : "minecraft:wheat", - "damage" : 32767 + "id": "minecraft:bread", + "type": 1, + "input": { + "A": { + "id": "minecraft:wheat", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 261, - "id" : "minecraft:bread" + "id": "minecraft:bread" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:brewing_stand", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 423, - "id" : "minecraft:blaze_rod", - "damage" : 32767 + "id": "minecraft:brewing_stand", + "type": 1, + "input": { + "A": { + "id": "minecraft:blaze_rod", + "fuzzy": true }, - "B" : { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:cobblestone" } }, - "output" : [ + "output": [ { - "legacyId" : 431, - "id" : "minecraft:brewing_stand" + "id": "minecraft:brewing_stand" } ], - "shape" : [ + "shape": [ " A ", "BBB" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:brewing_stand_from_blackstone", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 423, - "id" : "minecraft:blaze_rod", - "damage" : 32767 + "id": "minecraft:brewing_stand_from_blackstone", + "type": 1, + "input": { + "A": { + "id": "minecraft:blaze_rod", + "fuzzy": true }, - "B" : { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:blackstone" } }, - "output" : [ + "output": [ { - "legacyId" : 431, - "id" : "minecraft:brewing_stand" + "id": "minecraft:brewing_stand" } ], - "shape" : [ + "shape": [ " A ", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:brewing_stand_from_cobbled_deepslate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 423, - "id" : "minecraft:blaze_rod", - "damage" : 32767 + "id": "minecraft:brewing_stand_from_cobbled_deepslate", + "type": 1, + "input": { + "A": { + "id": "minecraft:blaze_rod", + "fuzzy": true }, - "B" : { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:cobbled_deepslate" } }, - "output" : [ + "output": [ { - "legacyId" : 431, - "id" : "minecraft:brewing_stand" + "id": "minecraft:brewing_stand" } ], - "shape" : [ + "shape": [ " A ", "BBB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:brick_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 383, - "id" : "minecraft:brick", - "damage" : 32767 + "id": "minecraft:brick_block", + "type": 1, + "input": { + "A": { + "id": "minecraft:brick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 45, - "id" : "minecraft:brick_block", - "blockRuntimeId" : 855 + "blockState": "minecraft:brick_block" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:brick_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 45, - "id" : "minecraft:brick_block", - "damage" : 32767 + "id": "minecraft:brick_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:brick_block" } }, - "output" : [ + "output": [ { - "legacyId" : 108, - "id" : "minecraft:brick_stairs", - "count" : 4, - "blockRuntimeId" : 856 + "count": 4, + "blockState": "minecraft:brick_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:brick_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 45, - "id" : "minecraft:brick_block", - "damage" : 32767 + "id": "minecraft:brick_wall", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:brick_block" } }, - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "count" : 6, - "blockRuntimeId" : 1284 + "count": 6, + "blockState": "minecraft:cobblestone_wall;wall_block_type=brick" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:brown_banner", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "id": "minecraft:brown_banner", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=brown" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 567, - "id" : "minecraft:banner", - "damage" : 3 + "id": "minecraft:banner", + "damage": 3 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:brown_carpet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "id": "minecraft:brown_candle", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:brown_dye", + "damage": 17 + } + ], + "output": [ + { + "blockState": "minecraft:brown_candle;candles=0;lit=0" + } + ], + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:brown_candle_from_cocoa_beans", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:cocoa_beans", + "damage": 3 + } + ], + "output": [ + { + "blockState": "minecraft:brown_candle;candles=0;lit=0" + } + ], + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:brown_carpet", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=brown" } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 3, - "blockRuntimeId" : 935 + "count": 3, + "blockState": "minecraft:carpet;color=brown" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:brown_carpet_from_white", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 171, - "id" : "minecraft:carpet" + "id": "minecraft:brown_carpet_from_white", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:carpet" }, - "B" : { - "legacyId" : 398, - "id" : "minecraft:brown_dye" + "B": { + "id": "minecraft:brown_dye", + "damage": 17 } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 8, - "blockRuntimeId" : 935 + "count": 8, + "blockState": "minecraft:carpet;color=brown" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:brown_concrete_powder", - "type" : 0, - "input" : [ + "id": "minecraft:brown_concrete_powder", + "type": 0, + "input": [ { - "legacyId" : 398, - "id" : "minecraft:brown_dye" + "id": "minecraft:brown_dye", + "damage": 17 }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3631 + "count": 8, + "blockState": "minecraft:concrete_powder;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:brown_concrete_powder_from_cocoa_beans", - "type" : 0, - "input" : [ + "id": "minecraft:brown_concrete_powder_from_cocoa_beans", + "type": 0, + "input": [ { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans" + "id": "minecraft:cocoa_beans", + "damage": 3 }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3631 + "count": 8, + "blockState": "minecraft:concrete_powder;color=brown" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:brown_dye_from_cocoa_beans", - "type" : 0, - "input" : [ + "id": "minecraft:brown_dye_from_cocoa_beans", + "type": 0, + "input": [ { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans" + "id": "minecraft:cocoa_beans", + "damage": 3 } ], - "output" : [ + "output": [ { - "legacyId" : 398, - "id" : "minecraft:brown_dye" + "id": "minecraft:brown_dye", + "damage": 17 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:brown_stained_glass", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:brown_stained_glass", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 398, - "id" : "minecraft:brown_dye" + "B": { + "id": "minecraft:brown_dye", + "damage": 17 } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6854 + "count": 8, + "blockState": "minecraft:stained_glass;color=brown" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:brown_stained_glass_from_cocoa_beans", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:brown_stained_glass_from_cocoa_beans", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans" + "B": { + "id": "minecraft:cocoa_beans", + "damage": 3 } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6854 + "count": 8, + "blockState": "minecraft:stained_glass;color=brown" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:brown_stained_glass_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "damage" : 12 + "id": "minecraft:brown_stained_glass_pane", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stained_glass;color=brown" } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 16, - "blockRuntimeId" : 6870 + "count": 16, + "blockState": "minecraft:stained_glass_pane;color=brown" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:brown_stained_glass_pane_from_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 102, - "id" : "minecraft:glass_pane", - "damage" : 32767 + "id": "minecraft:brown_stained_glass_pane_from_pane", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass_pane" }, - "B" : { - "legacyId" : 398, - "id" : "minecraft:brown_dye" + "B": { + "id": "minecraft:brown_dye", + "damage": 17 } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 8, - "blockRuntimeId" : 6870 + "count": 8, + "blockState": "minecraft:stained_glass_pane;color=brown" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:brown_stained_hardened_clay", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:brown_stained_hardened_clay", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 398, - "id" : "minecraft:brown_dye" + "B": { + "id": "minecraft:brown_dye", + "damage": 17 } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6886 + "count": 8, + "blockState": "minecraft:stained_hardened_clay;color=brown" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:brown_stained_hardened_clay_from_cocoa_beans", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:brown_stained_hardened_clay_from_cocoa_beans", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans" + "B": { + "id": "minecraft:cocoa_beans", + "damage": 3 } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6886 + "count": 8, + "blockState": "minecraft:stained_hardened_clay;color=brown" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:bucket", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:bucket", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 360, - "id" : "minecraft:bucket" + "id": "minecraft:bucket" } ], - "shape" : [ + "shape": [ "A A", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:cake", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 361, - "id" : "minecraft:milk_bucket" + "id": "minecraft:cake", + "type": 1, + "input": { + "A": { + "id": "minecraft:milk_bucket", + "damage": 1 }, - "B" : { - "legacyId" : 416, - "id" : "minecraft:sugar", - "damage" : 32767 + "B": { + "id": "minecraft:sugar", + "fuzzy": true }, - "C" : { - "legacyId" : 390, - "id" : "minecraft:egg", - "damage" : 32767 + "C": { + "id": "minecraft:egg", + "fuzzy": true }, - "D" : { - "legacyId" : 334, - "id" : "minecraft:wheat", - "damage" : 32767 + "D": { + "id": "minecraft:wheat", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 417, - "id" : "minecraft:cake" + "id": "minecraft:cake" }, { - "legacyId" : 360, - "id" : "minecraft:bucket", - "count" : 3 + "id": "minecraft:bucket", + "count": 3 } ], - "shape" : [ + "shape": [ "AAA", "BCB", "DDD" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:campfire", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "B": { + "id": "minecraft:coal" }, - "C" : { - "legacyId" : 17, - "id" : "minecraft:log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:log" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:campfire_from_charcoal", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_charcoal", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 303, - "id" : "minecraft:charcoal", - "damage" : 32767 + "B": { + "id": "minecraft:charcoal", + "fuzzy": true }, - "C" : { - "legacyId" : 17, - "id" : "minecraft:log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:log" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:campfire_from_charcoal_log2", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_charcoal_log2", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 303, - "id" : "minecraft:charcoal", - "damage" : 32767 + "B": { + "id": "minecraft:charcoal", + "fuzzy": true }, - "C" : { - "legacyId" : 162, - "id" : "minecraft:log2", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:log2" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:campfire_from_charcoal_stripped_acacia_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_charcoal_stripped_acacia_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 303, - "id" : "minecraft:charcoal", - "damage" : 32767 + "B": { + "id": "minecraft:charcoal", + "fuzzy": true }, - "C" : { - "legacyId" : -8, - "id" : "minecraft:stripped_acacia_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_acacia_log" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:campfire_from_charcoal_stripped_birch_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_charcoal_stripped_birch_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 303, - "id" : "minecraft:charcoal", - "damage" : 32767 + "B": { + "id": "minecraft:charcoal", + "fuzzy": true }, - "C" : { - "legacyId" : -6, - "id" : "minecraft:stripped_birch_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_birch_log" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:campfire_from_charcoal_stripped_dark_oak_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_charcoal_stripped_dark_oak_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 303, - "id" : "minecraft:charcoal", - "damage" : 32767 + "B": { + "id": "minecraft:charcoal", + "fuzzy": true }, - "C" : { - "legacyId" : -9, - "id" : "minecraft:stripped_dark_oak_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_dark_oak_log" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:campfire_from_charcoal_stripped_jungle_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_charcoal_stripped_jungle_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 303, - "id" : "minecraft:charcoal", - "damage" : 32767 + "B": { + "id": "minecraft:charcoal", + "fuzzy": true }, - "C" : { - "legacyId" : -7, - "id" : "minecraft:stripped_jungle_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_jungle_log" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:campfire_from_charcoal_stripped_oak_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_charcoal_stripped_oak_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 303, - "id" : "minecraft:charcoal", - "damage" : 32767 + "B": { + "id": "minecraft:charcoal", + "fuzzy": true }, - "C" : { - "legacyId" : -10, - "id" : "minecraft:stripped_oak_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_oak_log" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:campfire_from_charcoal_stripped_spruce_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_charcoal_stripped_spruce_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 303, - "id" : "minecraft:charcoal", - "damage" : 32767 + "B": { + "id": "minecraft:charcoal", + "fuzzy": true }, - "C" : { - "legacyId" : -5, - "id" : "minecraft:stripped_spruce_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_spruce_log" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:campfire_from_charcoal_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_charcoal_wood", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 303, - "id" : "minecraft:charcoal", - "damage" : 32767 + "B": { + "id": "minecraft:charcoal", + "fuzzy": true }, - "C" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:wood" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:campfire_from_crimson_stem", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_crimson_stem", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "B": { + "id": "minecraft:coal" }, - "C" : { - "legacyId" : -225, - "id" : "minecraft:crimson_stem", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:crimson_stem" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:campfire_from_log2", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_log2", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "B": { + "id": "minecraft:coal" }, - "C" : { - "legacyId" : 162, - "id" : "minecraft:log2", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:log2" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:campfire_from_stripped_acacia_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_stripped_acacia_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "B": { + "id": "minecraft:coal" }, - "C" : { - "legacyId" : -8, - "id" : "minecraft:stripped_acacia_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_acacia_log" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:campfire_from_stripped_birch_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_stripped_birch_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "B": { + "id": "minecraft:coal" }, - "C" : { - "legacyId" : -6, - "id" : "minecraft:stripped_birch_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_birch_log" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:campfire_from_stripped_crimson_stem", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_stripped_crimson_stem", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "B": { + "id": "minecraft:coal" }, - "C" : { - "legacyId" : -240, - "id" : "minecraft:stripped_crimson_stem", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_crimson_stem" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:campfire_from_stripped_dark_oak_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_stripped_dark_oak_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "B": { + "id": "minecraft:coal" }, - "C" : { - "legacyId" : -9, - "id" : "minecraft:stripped_dark_oak_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_dark_oak_log" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:campfire_from_stripped_jungle_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_stripped_jungle_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "B": { + "id": "minecraft:coal" }, - "C" : { - "legacyId" : -7, - "id" : "minecraft:stripped_jungle_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_jungle_log" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:campfire_from_stripped_oak_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_stripped_oak_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "B": { + "id": "minecraft:coal" }, - "C" : { - "legacyId" : -10, - "id" : "minecraft:stripped_oak_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_oak_log" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:campfire_from_stripped_spruce_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_stripped_spruce_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "B": { + "id": "minecraft:coal" }, - "C" : { - "legacyId" : -5, - "id" : "minecraft:stripped_spruce_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_spruce_log" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:campfire_from_stripped_warped_stem", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_stripped_warped_stem", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "B": { + "id": "minecraft:coal" }, - "C" : { - "legacyId" : -241, - "id" : "minecraft:stripped_warped_stem", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_warped_stem" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:campfire_from_warped_stem", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_warped_stem", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "B": { + "id": "minecraft:coal" }, - "C" : { - "legacyId" : -226, - "id" : "minecraft:warped_stem", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:warped_stem" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:campfire_from_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:campfire_from_wood", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "B": { + "id": "minecraft:coal" }, - "C" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:wood" } }, - "output" : [ + "output": [ { - "legacyId" : 588, - "id" : "minecraft:campfire" + "id": "minecraft:campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:carrot_on_a_stick", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 392, - "id" : "minecraft:fishing_rod", - "damage" : 32767 + "id": "minecraft:candle", + "type": 1, + "input": { + "A": { + "id": "minecraft:string", + "fuzzy": true }, - "B" : { - "legacyId" : 279, - "id" : "minecraft:carrot", - "damage" : 32767 + "B": { + "id": "minecraft:honeycomb", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 517, - "id" : "minecraft:carrot_on_a_stick" + "blockState": "minecraft:candle;candles=0;lit=0" } ], - "shape" : [ + "shape": [ + "A", + "B" + ], + "block": "crafting_table", + "priority": 1 + }, + { + "id": "minecraft:carrot_on_a_stick", + "type": 1, + "input": { + "A": { + "id": "minecraft:fishing_rod", + "fuzzy": true + }, + "B": { + "id": "minecraft:carrot", + "fuzzy": true + } + }, + "output": [ + { + "id": "minecraft:carrot_on_a_stick" + } + ], + "shape": [ "A ", " B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:cartography_table", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:cartography_table", + "type": 1, + "input": { + "A": { + "id": "minecraft:paper", + "fuzzy": true }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : -200, - "id" : "minecraft:cartography_table", - "blockRuntimeId" : 947 + "blockState": "minecraft:cartography_table" } ], - "shape" : [ + "shape": [ "AA", "BB", "BB" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:cartography_table_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:cartography_table_from_crimson_planks", + "type": 1, + "input": { + "A": { + "id": "minecraft:paper", + "fuzzy": true }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -200, - "id" : "minecraft:cartography_table", - "blockRuntimeId" : 947 + "blockState": "minecraft:cartography_table" } ], - "shape" : [ + "shape": [ "AA", "BB", "BB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:cartography_table_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:cartography_table_from_warped_planks", + "type": 1, + "input": { + "A": { + "id": "minecraft:paper", + "fuzzy": true }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -200, - "id" : "minecraft:cartography_table", - "blockRuntimeId" : 947 + "blockState": "minecraft:cartography_table" } ], - "shape" : [ + "shape": [ "AA", "BB", "BB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:cauldron", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:cauldron", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 432, - "id" : "minecraft:cauldron" + "id": "minecraft:cauldron" } ], - "shape" : [ + "shape": [ "A A", "A A", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:chain", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "id": "minecraft:chain", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "B" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "B": { + "id": "minecraft:iron_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 617, - "id" : "minecraft:chain" + "id": "minecraft:chain" } ], - "shape" : [ + "shape": [ "A", "B", "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:chest_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:chest_from_crimson_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 54, - "id" : "minecraft:chest", - "blockRuntimeId" : 1083 + "blockState": "minecraft:chest" } ], - "shape" : [ + "shape": [ "AAA", "A A", "AAA" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:chest_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:chest_from_warped_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 54, - "id" : "minecraft:chest", - "blockRuntimeId" : 1083 + "blockState": "minecraft:chest" } ], - "shape" : [ + "shape": [ "AAA", "A A", "AAA" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:chest_minecart", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 54, - "id" : "minecraft:chest", - "damage" : 32767 + "id": "minecraft:chest_minecart", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:chest" }, - "B" : { - "legacyId" : 370, - "id" : "minecraft:minecart", - "damage" : 32767 + "B": { + "id": "minecraft:minecart", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 389, - "id" : "minecraft:chest_minecart" + "id": "minecraft:chest_minecart" } ], - "shape" : [ + "shape": [ "A", "B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:chiseled_deepslate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -380, - "id" : "minecraft:cobbled_deepslate_slab", - "damage" : 32767 + "id": "minecraft:chiseled_deepslate", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobbled_deepslate_slab" } }, - "output" : [ + "output": [ { - "legacyId" : -395, - "id" : "minecraft:chiseled_deepslate", - "blockRuntimeId" : 1089 + "blockState": "minecraft:chiseled_deepslate" } ], - "shape" : [ + "shape": [ "A", "A" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:chiseled_nether_bricks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "damage" : 7 + "id": "minecraft:chiseled_nether_bricks", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:double_stone_slab;stone_slab_type=nether_brick" } }, - "output" : [ + "output": [ { - "legacyId" : -302, - "id" : "minecraft:chiseled_nether_bricks", - "blockRuntimeId" : 1090 + "blockState": "minecraft:chiseled_nether_bricks" } ], - "shape" : [ + "shape": [ "A", "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:chiseled_polished_blackstone", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -293, - "id" : "minecraft:polished_blackstone_slab", - "damage" : 32767 + "id": "minecraft:chiseled_polished_blackstone", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:polished_blackstone_slab" } }, - "output" : [ + "output": [ { - "legacyId" : -279, - "id" : "minecraft:chiseled_polished_blackstone", - "blockRuntimeId" : 1091 + "blockState": "minecraft:chiseled_polished_blackstone" } ], - "shape" : [ + "shape": [ "A", "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:clay", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 384, - "id" : "minecraft:clay_ball", - "damage" : 32767 + "id": "minecraft:clay", + "type": 1, + "input": { + "A": { + "id": "minecraft:clay_ball", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 82, - "id" : "minecraft:clay", - "blockRuntimeId" : 1099 + "blockState": "minecraft:clay" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:clock", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "id": "minecraft:clock", + "type": 1, + "input": { + "A": { + "id": "minecraft:gold_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "B": { + "id": "minecraft:redstone", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 393, - "id" : "minecraft:clock" + "id": "minecraft:clock" } ], - "shape" : [ + "shape": [ " A ", "ABA", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:coal", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 173, - "id" : "minecraft:coal_block", - "damage" : 32767 + "id": "minecraft:coal", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:coal_block" } }, - "output" : [ + "output": [ { - "legacyId" : 302, - "id" : "minecraft:coal", - "count" : 9 + "id": "minecraft:coal", + "count": 9 } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:coal_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "id": "minecraft:coal_block", + "type": 1, + "input": { + "A": { + "id": "minecraft:coal" } }, - "output" : [ + "output": [ { - "legacyId" : 173, - "id" : "minecraft:coal_block", - "blockRuntimeId" : 1100 + "blockState": "minecraft:coal_block" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:coarse_dirt", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 3, - "id" : "minecraft:dirt" + "id": "minecraft:coarse_dirt", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:dirt" }, - "B" : { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:gravel" } }, - "output" : [ + "output": [ { - "legacyId" : 3, - "id" : "minecraft:dirt", - "count" : 4, - "blockRuntimeId" : 4434 + "count": 4, + "blockState": "minecraft:dirt;dirt_type=coarse" } ], - "shape" : [ + "shape": [ "AB", "BA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:cobbled_deepslate_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate", - "damage" : 32767 + "id": "minecraft:cobbled_deepslate_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobbled_deepslate" } }, - "output" : [ + "output": [ { - "legacyId" : -380, - "id" : "minecraft:cobbled_deepslate_slab", - "count" : 6, - "blockRuntimeId" : 1105 + "count": 6, + "blockState": "minecraft:cobbled_deepslate_slab;top_slot_bit=0" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:cobbled_deepslate_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate", - "damage" : 32767 + "id": "minecraft:cobbled_deepslate_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobbled_deepslate" } }, - "output" : [ + "output": [ { - "legacyId" : -381, - "id" : "minecraft:cobbled_deepslate_stairs", - "count" : 4, - "blockRuntimeId" : 1107 + "count": 4, + "blockState": "minecraft:cobbled_deepslate_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:cobbled_deepslate_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate", - "damage" : 32767 + "id": "minecraft:cobbled_deepslate_wall", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobbled_deepslate" } }, - "output" : [ + "output": [ { - "legacyId" : -382, - "id" : "minecraft:cobbled_deepslate_wall", - "count" : 6, - "blockRuntimeId" : 1115 + "count": 6, + "blockState": "minecraft:cobbled_deepslate_wall;wall_connection_type_east=none;wall_connection_type_north=none;wall_connection_type_south=none;wall_connection_type_west=none;wall_post_bit=0" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:cobblestone_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : 32767 + "id": "minecraft:cobblestone_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobblestone" } }, - "output" : [ + "output": [ { - "legacyId" : 67, - "id" : "minecraft:stone_stairs", - "count" : 4, - "blockRuntimeId" : 7035 + "count": 4, + "blockState": "minecraft:stone_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:cobblestone_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : 32767 + "id": "minecraft:cobblestone_wall", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobblestone" } }, - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "count" : 6, - "blockRuntimeId" : 1278 + "count": 6, + "blockState": "minecraft:cobblestone_wall" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:cobweb_to_string", - "type" : 0, - "input" : [ + "id": "minecraft:cobweb_to_string", + "type": 0, + "input": [ { - "legacyId" : 30, - "id" : "minecraft:web", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:web" } ], - "output" : [ + "output": [ { - "legacyId" : 326, - "id" : "minecraft:string", - "count" : 9 + "id": "minecraft:string", + "count": 9 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:comparator", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 76, - "id" : "minecraft:redstone_torch", - "damage" : 32767 + "id": "minecraft:comparator", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:redstone_torch" }, - "B" : { - "legacyId" : 524, - "id" : "minecraft:quartz", - "damage" : 32767 + "B": { + "id": "minecraft:quartz", + "fuzzy": true }, - "C" : { - "legacyId" : 1, - "id" : "minecraft:stone" + "C": { + "blockState": "minecraft:stone" } }, - "output" : [ + "output": [ { - "legacyId" : 522, - "id" : "minecraft:comparator" + "id": "minecraft:comparator" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:compass", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:compass", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "B": { + "id": "minecraft:redstone", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 391, - "id" : "minecraft:compass" + "id": "minecraft:compass" } ], - "shape" : [ + "shape": [ " A ", "ABA", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:composter", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 158, - "id" : "minecraft:wooden_slab", - "damage" : 32767 + "id": "minecraft:composter", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:wooden_slab" } }, - "output" : [ + "output": [ { - "legacyId" : -213, - "id" : "minecraft:composter", - "blockRuntimeId" : 3594 + "blockState": "minecraft:composter" } ], - "shape" : [ + "shape": [ "A A", "A A", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:composter_from_crimson_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -264, - "id" : "minecraft:crimson_slab", - "damage" : 32767 + "id": "minecraft:composter_from_crimson_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_slab" } }, - "output" : [ + "output": [ { - "legacyId" : -213, - "id" : "minecraft:composter", - "blockRuntimeId" : 3594 + "blockState": "minecraft:composter" } ], - "shape" : [ + "shape": [ "A A", "A A", "AAA" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:composter_from_warped_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -265, - "id" : "minecraft:warped_slab", - "damage" : 32767 + "id": "minecraft:composter_from_warped_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_slab" } }, - "output" : [ + "output": [ { - "legacyId" : -213, - "id" : "minecraft:composter", - "blockRuntimeId" : 3594 + "blockState": "minecraft:composter" } ], - "shape" : [ + "shape": [ "A A", "A A", "AAA" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:conduit", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 570, - "id" : "minecraft:nautilus_shell", - "damage" : 32767 + "id": "minecraft:conduit", + "type": 1, + "input": { + "A": { + "id": "minecraft:nautilus_shell", + "fuzzy": true }, - "B" : { - "legacyId" : 571, - "id" : "minecraft:heart_of_the_sea", - "damage" : 32767 + "B": { + "id": "minecraft:heart_of_the_sea", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : -157, - "id" : "minecraft:conduit", - "blockRuntimeId" : 3635 + "blockState": "minecraft:conduit" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:cookie", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 334, - "id" : "minecraft:wheat", - "damage" : 32767 + "id": "minecraft:cookie", + "type": 1, + "input": { + "A": { + "id": "minecraft:wheat", + "fuzzy": true }, - "B" : { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans" + "B": { + "id": "minecraft:cocoa_beans", + "damage": 3 } }, - "output" : [ + "output": [ { - "legacyId" : 271, - "id" : "minecraft:cookie", - "count" : 8 + "id": "minecraft:cookie", + "count": 8 } ], - "shape" : [ + "shape": [ "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:copper_block_from_ingots", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 504, - "id" : "minecraft:copper_ingot", - "damage" : 32767 + "id": "minecraft:copper_block_from_ingots", + "type": 1, + "input": { + "A": { + "legacyId": 504, + "id": "minecraft:copper_ingot", + "damage": 32767 } }, - "output" : [ + "output": [ { - "legacyId" : -340, - "id" : "minecraft:copper_block", - "blockRuntimeId" : 3636 + "blockState": "minecraft:copper_block" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_cut_copper", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -340, - "id" : "minecraft:copper_block", - "damage" : 32767 + "id": "minecraft:crafting_table_cut_copper", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:copper_block" } }, - "output" : [ + "output": [ { - "legacyId" : -347, - "id" : "minecraft:cut_copper", - "count" : 4, - "blockRuntimeId" : 3869 + "count": 4, + "blockState": "minecraft:cut_copper" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_cut_copper_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -347, - "id" : "minecraft:cut_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_cut_copper_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cut_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -361, - "id" : "minecraft:cut_copper_slab", - "count" : 6, - "blockRuntimeId" : 3870 + "count": 6, + "blockState": "minecraft:cut_copper_slab;top_slot_bit=0" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_cut_copper_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -347, - "id" : "minecraft:cut_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_cut_copper_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cut_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -354, - "id" : "minecraft:cut_copper_stairs", - "count" : 4, - "blockRuntimeId" : 3872 + "count": 4, + "blockState": "minecraft:cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_exposed_cut_copper", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -341, - "id" : "minecraft:exposed_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_exposed_cut_copper", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:exposed_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -348, - "id" : "minecraft:exposed_cut_copper", - "count" : 4, - "blockRuntimeId" : 4702 + "count": 4, + "blockState": "minecraft:exposed_cut_copper" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_exposed_cut_copper_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -348, - "id" : "minecraft:exposed_cut_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_exposed_cut_copper_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:exposed_cut_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -362, - "id" : "minecraft:exposed_cut_copper_slab", - "count" : 6, - "blockRuntimeId" : 4703 + "count": 6, + "blockState": "minecraft:exposed_cut_copper_slab;top_slot_bit=0" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_exposed_cut_copper_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -348, - "id" : "minecraft:exposed_cut_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_exposed_cut_copper_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:exposed_cut_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -355, - "id" : "minecraft:exposed_cut_copper_stairs", - "count" : 4, - "blockRuntimeId" : 4705 + "count": 4, + "blockState": "minecraft:exposed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:crafting_table_from_crimson_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 58, - "id" : "minecraft:crafting_table", - "blockRuntimeId" : 3730 + "blockState": "minecraft:crafting_table" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:crafting_table_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:crafting_table_from_warped_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 58, - "id" : "minecraft:crafting_table", - "blockRuntimeId" : 3730 + "blockState": "minecraft:crafting_table" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:crafting_table_oxidized_cut_copper", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -343, - "id" : "minecraft:oxidized_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_oxidized_cut_copper", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:oxidized_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -350, - "id" : "minecraft:oxidized_cut_copper", - "count" : 4, - "blockRuntimeId" : 5608 + "count": 4, + "blockState": "minecraft:oxidized_cut_copper" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_oxidized_cut_copper_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -350, - "id" : "minecraft:oxidized_cut_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_oxidized_cut_copper_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:oxidized_cut_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -364, - "id" : "minecraft:oxidized_cut_copper_slab", - "count" : 6, - "blockRuntimeId" : 5609 + "count": 6, + "blockState": "minecraft:oxidized_cut_copper_slab;top_slot_bit=0" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_oxidized_cut_copper_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -350, - "id" : "minecraft:oxidized_cut_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_oxidized_cut_copper_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:oxidized_cut_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -357, - "id" : "minecraft:oxidized_cut_copper_stairs", - "count" : 4, - "blockRuntimeId" : 5611 + "count": 4, + "blockState": "minecraft:oxidized_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_waxed_cut_copper", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -344, - "id" : "minecraft:waxed_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_waxed_cut_copper", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:waxed_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -351, - "id" : "minecraft:waxed_cut_copper", - "count" : 4, - "blockRuntimeId" : 7440 + "count": 4, + "blockState": "minecraft:waxed_cut_copper" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_waxed_cut_copper_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -351, - "id" : "minecraft:waxed_cut_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_waxed_cut_copper_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:waxed_cut_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -365, - "id" : "minecraft:waxed_cut_copper_slab", - "count" : 6, - "blockRuntimeId" : 7441 + "count": 6, + "blockState": "minecraft:waxed_cut_copper_slab;top_slot_bit=0" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_waxed_cut_copper_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -351, - "id" : "minecraft:waxed_cut_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_waxed_cut_copper_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:waxed_cut_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -358, - "id" : "minecraft:waxed_cut_copper_stairs", - "count" : 4, - "blockRuntimeId" : 7443 + "count": 4, + "blockState": "minecraft:waxed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_waxed_exposed_cut_copper", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -345, - "id" : "minecraft:waxed_exposed_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_waxed_exposed_cut_copper", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:waxed_exposed_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -352, - "id" : "minecraft:waxed_exposed_cut_copper", - "count" : 4, - "blockRuntimeId" : 7454 + "count": 4, + "blockState": "minecraft:waxed_exposed_cut_copper" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_waxed_exposed_cut_copper_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -352, - "id" : "minecraft:waxed_exposed_cut_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_waxed_exposed_cut_copper_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:waxed_exposed_cut_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -366, - "id" : "minecraft:waxed_exposed_cut_copper_slab", - "count" : 6, - "blockRuntimeId" : 7455 + "count": 6, + "blockState": "minecraft:waxed_exposed_cut_copper_slab;top_slot_bit=0" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_waxed_exposed_cut_copper_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -352, - "id" : "minecraft:waxed_exposed_cut_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_waxed_exposed_cut_copper_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:waxed_exposed_cut_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -359, - "id" : "minecraft:waxed_exposed_cut_copper_stairs", - "count" : 4, - "blockRuntimeId" : 7457 + "count": 4, + "blockState": "minecraft:waxed_exposed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_waxed_oxidized_cut_copper", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -446, - "id" : "minecraft:waxed_oxidized_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_waxed_oxidized_cut_copper", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:waxed_oxidized_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -447, - "id" : "minecraft:waxed_oxidized_cut_copper", - "count" : 4, - "blockRuntimeId" : 7468 + "count": 4, + "blockState": "minecraft:waxed_oxidized_cut_copper" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_waxed_oxidized_cut_copper_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -447, - "id" : "minecraft:waxed_oxidized_cut_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_waxed_oxidized_cut_copper_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:waxed_oxidized_cut_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -449, - "id" : "minecraft:waxed_oxidized_cut_copper_slab", - "count" : 6, - "blockRuntimeId" : 7469 + "count": 6, + "blockState": "minecraft:waxed_oxidized_cut_copper_slab;top_slot_bit=0" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_waxed_oxidized_cut_copper_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -447, - "id" : "minecraft:waxed_oxidized_cut_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_waxed_oxidized_cut_copper_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:waxed_oxidized_cut_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -448, - "id" : "minecraft:waxed_oxidized_cut_copper_stairs", - "count" : 4, - "blockRuntimeId" : 7471 + "count": 4, + "blockState": "minecraft:waxed_oxidized_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_waxed_weathered_cut_copper", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -346, - "id" : "minecraft:waxed_weathered_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_waxed_weathered_cut_copper", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:waxed_weathered_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -353, - "id" : "minecraft:waxed_weathered_cut_copper", - "count" : 4, - "blockRuntimeId" : 7482 + "count": 4, + "blockState": "minecraft:waxed_weathered_cut_copper" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_waxed_weathered_cut_copper_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -353, - "id" : "minecraft:waxed_weathered_cut_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_waxed_weathered_cut_copper_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:waxed_weathered_cut_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -367, - "id" : "minecraft:waxed_weathered_cut_copper_slab", - "count" : 6, - "blockRuntimeId" : 7483 + "count": 6, + "blockState": "minecraft:waxed_weathered_cut_copper_slab;top_slot_bit=0" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_waxed_weathered_cut_copper_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -353, - "id" : "minecraft:waxed_weathered_cut_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_waxed_weathered_cut_copper_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:waxed_weathered_cut_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -360, - "id" : "minecraft:waxed_weathered_cut_copper_stairs", - "count" : 4, - "blockRuntimeId" : 7485 + "count": 4, + "blockState": "minecraft:waxed_weathered_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_weathered_cut_copper", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -342, - "id" : "minecraft:weathered_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_weathered_cut_copper", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:weathered_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -349, - "id" : "minecraft:weathered_cut_copper", - "count" : 4, - "blockRuntimeId" : 7496 + "count": 4, + "blockState": "minecraft:weathered_cut_copper" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_weathered_cut_copper_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -349, - "id" : "minecraft:weathered_cut_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_weathered_cut_copper_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:weathered_cut_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -363, - "id" : "minecraft:weathered_cut_copper_slab", - "count" : 6, - "blockRuntimeId" : 7497 + "count": 6, + "blockState": "minecraft:weathered_cut_copper_slab;top_slot_bit=0" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crafting_table_weathered_cut_copper_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -349, - "id" : "minecraft:weathered_cut_copper", - "damage" : 32767 + "id": "minecraft:crafting_table_weathered_cut_copper_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:weathered_cut_copper" } }, - "output" : [ + "output": [ { - "legacyId" : -356, - "id" : "minecraft:weathered_cut_copper_stairs", - "count" : 4, - "blockRuntimeId" : 7499 + "count": 4, + "blockState": "minecraft:weathered_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:crimson_button", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:crimson_button", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -260, - "id" : "minecraft:crimson_button", - "blockRuntimeId" : 3731 + "blockState": "minecraft:crimson_button" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:crimson_door", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:crimson_door", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 614, - "id" : "minecraft:crimson_door", - "count" : 3 + "id": "minecraft:crimson_door", + "count": 3 } ], - "shape" : [ + "shape": [ "AA", "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:crimson_fence", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:crimson_fence", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : -256, - "id" : "minecraft:crimson_fence", - "count" : 3, - "blockRuntimeId" : 3777 + "count": 3, + "blockState": "minecraft:crimson_fence" } ], - "shape" : [ + "shape": [ "ABA", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:crimson_fence_gate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:crimson_fence_gate", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -258, - "id" : "minecraft:crimson_fence_gate", - "blockRuntimeId" : 3778 + "blockState": "minecraft:crimson_fence_gate" } ], - "shape" : [ + "shape": [ "ABA", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:crimson_hyphae", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -225, - "id" : "minecraft:crimson_stem", - "damage" : 32767 + "id": "minecraft:crimson_hyphae", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_stem" } }, - "output" : [ + "output": [ { - "legacyId" : -299, - "id" : "minecraft:crimson_hyphae", - "count" : 3, - "blockRuntimeId" : 3795 + "count": 3, + "blockState": "minecraft:crimson_hyphae" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -225, - "id" : "minecraft:crimson_stem", - "damage" : 32767 + "id": "minecraft:crimson_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_stem" } }, - "output" : [ + "output": [ { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "count" : 4, - "blockRuntimeId" : 3799 + "count": 4, + "blockState": "minecraft:crimson_planks" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:crimson_planks_from_crimson_hyphae", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -299, - "id" : "minecraft:crimson_hyphae", - "damage" : 32767 + "id": "minecraft:crimson_planks_from_crimson_hyphae", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_hyphae" } }, - "output" : [ + "output": [ { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "count" : 4, - "blockRuntimeId" : 3799 + "count": 4, + "blockState": "minecraft:crimson_planks" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:crimson_planks_from_stripped_crimson_hyphae", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -300, - "id" : "minecraft:stripped_crimson_hyphae", - "damage" : 32767 + "id": "minecraft:crimson_planks_from_stripped_crimson_hyphae", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_crimson_hyphae" } }, - "output" : [ + "output": [ { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "count" : 4, - "blockRuntimeId" : 3799 + "count": 4, + "blockState": "minecraft:crimson_planks" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:crimson_planks_from_stripped_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -240, - "id" : "minecraft:stripped_crimson_stem", - "damage" : 32767 + "id": "minecraft:crimson_planks_from_stripped_log", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_crimson_stem" } }, - "output" : [ + "output": [ { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "count" : 4, - "blockRuntimeId" : 3799 + "count": 4, + "blockState": "minecraft:crimson_planks" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:crimson_pressure_plate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:crimson_pressure_plate", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -262, - "id" : "minecraft:crimson_pressure_plate", - "blockRuntimeId" : 3800 + "blockState": "minecraft:crimson_pressure_plate" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:crimson_sign", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:crimson_sign", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 612, - "id" : "minecraft:crimson_sign", - "count" : 3 + "id": "minecraft:crimson_sign", + "count": 3 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:crimson_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:crimson_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -264, - "id" : "minecraft:crimson_slab", - "count" : 6, - "blockRuntimeId" : 3817 + "count": 6, + "blockState": "minecraft:crimson_slab" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:crimson_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:crimson_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -254, - "id" : "minecraft:crimson_stairs", - "count" : 4, - "blockRuntimeId" : 3819 + "count": 4, + "blockState": "minecraft:crimson_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:crimson_trapdoor", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:crimson_trapdoor", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -246, - "id" : "minecraft:crimson_trapdoor", - "count" : 2, - "blockRuntimeId" : 3846 + "count": 2, + "blockState": "minecraft:crimson_trapdoor" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:crossbow", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:crossbow", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "B": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "C" : { - "legacyId" : 326, - "id" : "minecraft:string", - "damage" : 32767 + "C": { + "id": "minecraft:string", + "fuzzy": true }, - "D" : { - "legacyId" : 131, - "id" : "minecraft:tripwire_hook", - "damage" : 32767 + "D": { + "fuzzy": true, + "blockState": "minecraft:tripwire_hook" } }, - "output" : [ + "output": [ { - "legacyId" : 575, - "id" : "minecraft:crossbow" + "id": "minecraft:crossbow" } ], - "shape" : [ + "shape": [ "ABA", "CDC", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:cyan_banner", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "id": "minecraft:cyan_banner", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=cyan" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 567, - "id" : "minecraft:banner", - "damage" : 6 + "id": "minecraft:banner", + "damage": 6 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:cyan_candle", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:cyan_dye", + "damage": 6 + } + ], + "output": [ + { + "blockState": "minecraft:cyan_candle;candles=0;lit=0" + } + ], + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:cyan_carpet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "id": "minecraft:cyan_carpet", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=cyan" } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 3, - "blockRuntimeId" : 932 + "count": 3, + "blockState": "minecraft:carpet;color=cyan" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:cyan_carpet_from_white", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 171, - "id" : "minecraft:carpet" + "id": "minecraft:cyan_carpet_from_white", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:carpet" }, - "B" : { - "legacyId" : 401, - "id" : "minecraft:cyan_dye" + "B": { + "id": "minecraft:cyan_dye", + "damage": 6 } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 8, - "blockRuntimeId" : 932 + "count": 8, + "blockState": "minecraft:carpet;color=cyan" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:cyan_concrete_powder", - "type" : 0, - "input" : [ + "id": "minecraft:cyan_concrete_powder", + "type": 0, + "input": [ { - "legacyId" : 401, - "id" : "minecraft:cyan_dye" + "id": "minecraft:cyan_dye", + "damage": 6 }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3628 + "count": 8, + "blockState": "minecraft:concrete_powder;color=cyan" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:cyan_dye", - "type" : 0, - "input" : [ + "id": "minecraft:cyan_dye", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye" + "id": "minecraft:blue_dye", + "damage": 18 }, { - "legacyId" : 397, - "id" : "minecraft:green_dye" + "id": "minecraft:green_dye", + "damage": 2 } ], - "output" : [ + "output": [ { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "count" : 2 + "id": "minecraft:cyan_dye", + "count": 2, + "damage": 6 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:cyan_dye_from_lapis_lazuli", - "type" : 0, - "input" : [ + "id": "minecraft:cyan_dye_from_lapis_lazuli", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli" + "id": "minecraft:lapis_lazuli", + "damage": 4 }, { - "legacyId" : 397, - "id" : "minecraft:green_dye" + "id": "minecraft:green_dye", + "damage": 2 } ], - "output" : [ + "output": [ { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "count" : 2 + "id": "minecraft:cyan_dye", + "count": 2, + "damage": 6 } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:cyan_stained_glass", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:cyan_stained_glass", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 401, - "id" : "minecraft:cyan_dye" + "B": { + "id": "minecraft:cyan_dye", + "damage": 6 } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6851 + "count": 8, + "blockState": "minecraft:stained_glass;color=cyan" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:cyan_stained_glass_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "damage" : 9 + "id": "minecraft:cyan_stained_glass_pane", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stained_glass;color=cyan" } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 16, - "blockRuntimeId" : 6867 + "count": 16, + "blockState": "minecraft:stained_glass_pane;color=cyan" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:cyan_stained_glass_pane_from_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 102, - "id" : "minecraft:glass_pane", - "damage" : 32767 + "id": "minecraft:cyan_stained_glass_pane_from_pane", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass_pane" }, - "B" : { - "legacyId" : 401, - "id" : "minecraft:cyan_dye" + "B": { + "id": "minecraft:cyan_dye", + "damage": 6 } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 8, - "blockRuntimeId" : 6867 + "count": 8, + "blockState": "minecraft:stained_glass_pane;color=cyan" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:cyan_stained_hardened_clay", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:cyan_stained_hardened_clay", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 401, - "id" : "minecraft:cyan_dye" + "B": { + "id": "minecraft:cyan_dye", + "damage": 6 } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6883 + "count": 8, + "blockState": "minecraft:stained_hardened_clay;color=cyan" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dark_oak_boat", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 5 + "id": "minecraft:dark_oak_boat", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=dark_oak" }, - "B" : { - "legacyId" : 309, - "id" : "minecraft:wooden_shovel", - "damage" : 32767 + "B": { + "id": "minecraft:wooden_shovel", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 380, - "id" : "minecraft:dark_oak_boat" + "id": "minecraft:dark_oak_boat", + "damage": 5 } ], - "shape" : [ + "shape": [ "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dark_oak_door", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 5 + "id": "minecraft:dark_oak_door", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=dark_oak" } }, - "output" : [ + "output": [ { - "legacyId" : 557, - "id" : "minecraft:dark_oak_door", - "count" : 3 + "id": "minecraft:dark_oak_door", + "count": 3 } ], - "shape" : [ + "shape": [ "AA", "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dark_oak_fence", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 5 + "id": "minecraft:dark_oak_fence", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=dark_oak" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 85, - "id" : "minecraft:fence", - "count" : 3, - "blockRuntimeId" : 4728 + "count": 3, + "blockState": "minecraft:fence;wood_type=dark_oak" } ], - "shape" : [ + "shape": [ "ABA", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dark_oak_fence_gate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:dark_oak_fence_gate", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 5 + "B": { + "blockState": "minecraft:planks;wood_type=dark_oak" } }, - "output" : [ + "output": [ { - "legacyId" : 186, - "id" : "minecraft:dark_oak_fence_gate", - "blockRuntimeId" : 3930 + "blockState": "minecraft:dark_oak_fence_gate" } ], - "shape" : [ + "shape": [ "ABA", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dark_oak_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 162, - "id" : "minecraft:log2", - "damage" : 1 + "id": "minecraft:dark_oak_planks", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:log2;new_log_type=dark_oak" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5645 + "count": 4, + "blockState": "minecraft:planks;wood_type=dark_oak" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dark_oak_planks_from_stripped", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -9, - "id" : "minecraft:stripped_dark_oak_log", - "damage" : 32767 + "id": "minecraft:dark_oak_planks_from_stripped", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_dark_oak_log" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5645 + "count": 4, + "blockState": "minecraft:planks;wood_type=dark_oak" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dark_oak_planks_from_stripped_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 13 + "id": "minecraft:dark_oak_planks_from_stripped_wood", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wood;stripped_bit=1;wood_type=dark_oak" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5645 + "count": 4, + "blockState": "minecraft:planks;wood_type=dark_oak" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dark_oak_planks_from_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 5 + "id": "minecraft:dark_oak_planks_from_wood", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wood;wood_type=dark_oak" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5645 + "count": 4, + "blockState": "minecraft:planks;wood_type=dark_oak" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dark_oak_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 5 + "id": "minecraft:dark_oak_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=dark_oak" } }, - "output" : [ + "output": [ { - "legacyId" : 164, - "id" : "minecraft:dark_oak_stairs", - "count" : 4, - "blockRuntimeId" : 3962 + "count": 4, + "blockState": "minecraft:dark_oak_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dark_oak_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 162, - "id" : "minecraft:log2", - "damage" : 1 + "id": "minecraft:dark_oak_wood", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:log2;new_log_type=dark_oak" } }, - "output" : [ + "output": [ { - "legacyId" : -212, - "id" : "minecraft:wood", - "count" : 3, - "blockRuntimeId" : 7556 + "count": 3, + "blockState": "minecraft:wood;wood_type=dark_oak" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dark_oak_wood_stripped", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -9, - "id" : "minecraft:stripped_dark_oak_log", - "damage" : 32767 + "id": "minecraft:dark_oak_wood_stripped", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_dark_oak_log" } }, - "output" : [ + "output": [ { - "legacyId" : -212, - "id" : "minecraft:wood", - "count" : 3, - "blockRuntimeId" : 7562 + "count": 3, + "blockState": "minecraft:wood;stripped_bit=1;wood_type=dark_oak" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dark_oak_wooden_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 5 + "id": "minecraft:dark_oak_wooden_slab", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=dark_oak" } }, - "output" : [ + "output": [ { - "legacyId" : 158, - "id" : "minecraft:wooden_slab", - "count" : 6, - "blockRuntimeId" : 7652 + "count": 6, + "blockState": "minecraft:wooden_slab;wood_type=dark_oak" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dark_prismarine", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 565, - "id" : "minecraft:prismarine_shard", - "damage" : 32767 + "id": "minecraft:dark_prismarine", + "type": 1, + "input": { + "A": { + "id": "minecraft:prismarine_shard", + "fuzzy": true }, - "B" : { - "legacyId" : 395, - "id" : "minecraft:black_dye" + "B": { + "id": "minecraft:black_dye", + "damage": 16 } }, - "output" : [ + "output": [ { - "legacyId" : 168, - "id" : "minecraft:prismarine", - "blockRuntimeId" : 6282 + "blockState": "minecraft:prismarine;prismarine_block_type=dark" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dark_prismarine_from_ink_sac", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 565, - "id" : "minecraft:prismarine_shard", - "damage" : 32767 + "id": "minecraft:dark_prismarine_from_ink_sac", + "type": 1, + "input": { + "A": { + "id": "minecraft:prismarine_shard", + "fuzzy": true }, - "B" : { - "legacyId" : 413, - "id" : "minecraft:ink_sac" + "B": { + "id": "minecraft:ink_sac" } }, - "output" : [ + "output": [ { - "legacyId" : 168, - "id" : "minecraft:prismarine", - "blockRuntimeId" : 6282 + "blockState": "minecraft:prismarine;prismarine_block_type=dark" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:daylight_detector_from_crimson_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:daylight_detector_from_crimson_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 524, - "id" : "minecraft:quartz", - "damage" : 32767 + "B": { + "id": "minecraft:quartz", + "fuzzy": true }, - "C" : { - "legacyId" : -264, - "id" : "minecraft:crimson_slab", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:crimson_slab" } }, - "output" : [ + "output": [ { - "legacyId" : 151, - "id" : "minecraft:daylight_detector", - "blockRuntimeId" : 4016 + "blockState": "minecraft:daylight_detector" } ], - "shape" : [ + "shape": [ "AAA", "BBB", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:daylight_detector_from_warped_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:daylight_detector_from_warped_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 524, - "id" : "minecraft:quartz", - "damage" : 32767 + "B": { + "id": "minecraft:quartz", + "fuzzy": true }, - "C" : { - "legacyId" : -265, - "id" : "minecraft:warped_slab", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:warped_slab" } }, - "output" : [ + "output": [ { - "legacyId" : 151, - "id" : "minecraft:daylight_detector", - "blockRuntimeId" : 4016 + "blockState": "minecraft:daylight_detector" } ], - "shape" : [ + "shape": [ "AAA", "BBB", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:deepslate_brick_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -391, - "id" : "minecraft:deepslate_bricks", - "damage" : 32767 + "id": "minecraft:deepslate_brick_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:deepslate_bricks" } }, - "output" : [ + "output": [ { - "legacyId" : -392, - "id" : "minecraft:deepslate_brick_slab", - "count" : 6, - "blockRuntimeId" : 4054 + "count": 6, + "blockState": "minecraft:deepslate_brick_slab;top_slot_bit=0" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:deepslate_brick_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -391, - "id" : "minecraft:deepslate_bricks", - "damage" : 32767 + "id": "minecraft:deepslate_brick_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:deepslate_bricks" } }, - "output" : [ + "output": [ { - "legacyId" : -393, - "id" : "minecraft:deepslate_brick_stairs", - "count" : 4, - "blockRuntimeId" : 4056 + "count": 4, + "blockState": "minecraft:deepslate_brick_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:deepslate_brick_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -391, - "id" : "minecraft:deepslate_bricks", - "damage" : 32767 + "id": "minecraft:deepslate_brick_wall", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:deepslate_bricks" } }, - "output" : [ + "output": [ { - "legacyId" : -394, - "id" : "minecraft:deepslate_brick_wall", - "count" : 6, - "blockRuntimeId" : 4064 + "count": 6, + "blockState": "minecraft:deepslate_brick_wall;wall_connection_type_east=none;wall_connection_type_north=none;wall_connection_type_south=none;wall_connection_type_west=none;wall_post_bit=0" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:deepslate_bricks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -383, - "id" : "minecraft:polished_deepslate", - "damage" : 32767 + "id": "minecraft:deepslate_bricks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:polished_deepslate" } }, - "output" : [ + "output": [ { - "legacyId" : -391, - "id" : "minecraft:deepslate_bricks", - "count" : 4, - "blockRuntimeId" : 4226 + "count": 4, + "blockState": "minecraft:deepslate_bricks" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:deepslate_tile_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -387, - "id" : "minecraft:deepslate_tiles", - "damage" : 32767 + "id": "minecraft:deepslate_tile_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:deepslate_tiles" } }, - "output" : [ + "output": [ { - "legacyId" : -388, - "id" : "minecraft:deepslate_tile_slab", - "count" : 6, - "blockRuntimeId" : 4237 + "count": 6, + "blockState": "minecraft:deepslate_tile_slab;top_slot_bit=0" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:deepslate_tile_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -387, - "id" : "minecraft:deepslate_tiles", - "damage" : 32767 + "id": "minecraft:deepslate_tile_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:deepslate_tiles" } }, - "output" : [ + "output": [ { - "legacyId" : -389, - "id" : "minecraft:deepslate_tile_stairs", - "count" : 4, - "blockRuntimeId" : 4239 + "count": 4, + "blockState": "minecraft:deepslate_tile_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:deepslate_tile_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -387, - "id" : "minecraft:deepslate_tiles", - "damage" : 32767 + "id": "minecraft:deepslate_tile_wall", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:deepslate_tiles" } }, - "output" : [ + "output": [ { - "legacyId" : -390, - "id" : "minecraft:deepslate_tile_wall", - "count" : 6, - "blockRuntimeId" : 4247 + "count": 6, + "blockState": "minecraft:deepslate_tile_wall;wall_connection_type_east=none;wall_connection_type_north=none;wall_connection_type_south=none;wall_connection_type_west=none;wall_post_bit=0" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:deepslate_tiles", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -391, - "id" : "minecraft:deepslate_bricks", - "damage" : 32767 + "id": "minecraft:deepslate_tiles", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:deepslate_bricks" } }, - "output" : [ + "output": [ { - "legacyId" : -387, - "id" : "minecraft:deepslate_tiles", - "count" : 4, - "blockRuntimeId" : 4409 + "count": 4, + "blockState": "minecraft:deepslate_tiles" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:detector_rail", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:detector_rail", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 70, - "id" : "minecraft:stone_pressure_plate", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:stone_pressure_plate" }, - "C" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "C": { + "id": "minecraft:redstone", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 28, - "id" : "minecraft:detector_rail", - "count" : 6, - "blockRuntimeId" : 4411 + "count": 6, + "blockState": "minecraft:detector_rail" } ], - "shape" : [ + "shape": [ "A A", "ABA", "ACA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:diamond", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 57, - "id" : "minecraft:diamond_block", - "damage" : 32767 + "id": "minecraft:diamond", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:diamond_block" } }, - "output" : [ + "output": [ { - "legacyId" : 304, - "id" : "minecraft:diamond", - "count" : 9 + "id": "minecraft:diamond", + "count": 9 } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:diamond_axe", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 304, - "id" : "minecraft:diamond", - "damage" : 32767 + "id": "minecraft:diamond_axe", + "type": 1, + "input": { + "A": { + "id": "minecraft:diamond", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 319, - "id" : "minecraft:diamond_axe" + "id": "minecraft:diamond_axe" } ], - "shape" : [ + "shape": [ "AA", "AB", " B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:diamond_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 304, - "id" : "minecraft:diamond", - "damage" : 32767 + "id": "minecraft:diamond_block", + "type": 1, + "input": { + "A": { + "id": "minecraft:diamond", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 57, - "id" : "minecraft:diamond_block", - "blockRuntimeId" : 4423 + "blockState": "minecraft:diamond_block" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:diamond_boots", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 304, - "id" : "minecraft:diamond", - "damage" : 32767 + "id": "minecraft:diamond_boots", + "type": 1, + "input": { + "A": { + "id": "minecraft:diamond", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 350, - "id" : "minecraft:diamond_boots" + "id": "minecraft:diamond_boots" } ], - "shape" : [ + "shape": [ "A A", "A A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:diamond_chestplate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 304, - "id" : "minecraft:diamond", - "damage" : 32767 + "id": "minecraft:diamond_chestplate", + "type": 1, + "input": { + "A": { + "id": "minecraft:diamond", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 348, - "id" : "minecraft:diamond_chestplate" + "id": "minecraft:diamond_chestplate" } ], - "shape" : [ + "shape": [ "A A", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:diamond_helmet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 304, - "id" : "minecraft:diamond", - "damage" : 32767 + "id": "minecraft:diamond_helmet", + "type": 1, + "input": { + "A": { + "id": "minecraft:diamond", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 347, - "id" : "minecraft:diamond_helmet" + "id": "minecraft:diamond_helmet" } ], - "shape" : [ + "shape": [ "AAA", "A A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:diamond_hoe", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 304, - "id" : "minecraft:diamond", - "damage" : 32767 + "id": "minecraft:diamond_hoe", + "type": 1, + "input": { + "A": { + "id": "minecraft:diamond", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 332, - "id" : "minecraft:diamond_hoe" + "id": "minecraft:diamond_hoe" } ], - "shape" : [ + "shape": [ "AA", " B", " B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:diamond_leggings", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 304, - "id" : "minecraft:diamond", - "damage" : 32767 + "id": "minecraft:diamond_leggings", + "type": 1, + "input": { + "A": { + "id": "minecraft:diamond", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 349, - "id" : "minecraft:diamond_leggings" + "id": "minecraft:diamond_leggings" } ], - "shape" : [ + "shape": [ "AAA", "A A", "A A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:diamond_pickaxe", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 304, - "id" : "minecraft:diamond", - "damage" : 32767 + "id": "minecraft:diamond_pickaxe", + "type": 1, + "input": { + "A": { + "id": "minecraft:diamond", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 318, - "id" : "minecraft:diamond_pickaxe" + "id": "minecraft:diamond_pickaxe" } ], - "shape" : [ + "shape": [ "AAA", " B ", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:diamond_shovel", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 304, - "id" : "minecraft:diamond", - "damage" : 32767 + "id": "minecraft:diamond_shovel", + "type": 1, + "input": { + "A": { + "id": "minecraft:diamond", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 317, - "id" : "minecraft:diamond_shovel" + "id": "minecraft:diamond_shovel" } ], - "shape" : [ + "shape": [ "A", "B", "B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:diamond_sword", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 304, - "id" : "minecraft:diamond", - "damage" : 32767 + "id": "minecraft:diamond_sword", + "type": 1, + "input": { + "A": { + "id": "minecraft:diamond", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 316, - "id" : "minecraft:diamond_sword" + "id": "minecraft:diamond_sword" } ], - "shape" : [ + "shape": [ "A", "A", "B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:diorite", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : 32767 + "id": "minecraft:diorite", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobblestone" }, - "B" : { - "legacyId" : 524, - "id" : "minecraft:quartz", - "damage" : 32767 + "B": { + "id": "minecraft:quartz", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "count" : 2, - "blockRuntimeId" : 6937 + "count": 2, + "blockState": "minecraft:stone;stone_type=diorite" } ], - "shape" : [ + "shape": [ "AB", "BA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:diorite_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 3 + "id": "minecraft:diorite_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone;stone_type=diorite" } }, - "output" : [ + "output": [ { - "legacyId" : -170, - "id" : "minecraft:diorite_stairs", - "count" : 4, - "blockRuntimeId" : 4425 + "count": 4, + "blockState": "minecraft:diorite_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:diorite_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 3 + "id": "minecraft:diorite_wall", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone;stone_type=diorite" } }, - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "count" : 6, - "blockRuntimeId" : 1281 + "count": 6, + "blockState": "minecraft:cobblestone_wall;wall_block_type=diorite" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dispenser", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : 32767 + "id": "minecraft:dispenser", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobblestone" }, - "B" : { - "legacyId" : 300, - "id" : "minecraft:bow", - "damage" : 32767 + "B": { + "id": "minecraft:bow", + "fuzzy": true }, - "C" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "C": { + "id": "minecraft:redstone", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 23, - "id" : "minecraft:dispenser", - "blockRuntimeId" : 4439 + "blockState": "minecraft:dispenser;facing_direction=3" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "ACA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dried_kelp", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -139, - "id" : "minecraft:dried_kelp_block", - "damage" : 32767 + "id": "minecraft:dried_kelp", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:dried_kelp_block" } }, - "output" : [ + "output": [ { - "legacyId" : 270, - "id" : "minecraft:dried_kelp", - "count" : 9 + "id": "minecraft:dried_kelp", + "count": 9 } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dried_kelp_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 270, - "id" : "minecraft:dried_kelp", - "damage" : 32767 + "id": "minecraft:dried_kelp_block", + "type": 1, + "input": { + "A": { + "id": "minecraft:dried_kelp", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : -139, - "id" : "minecraft:dried_kelp_block", - "blockRuntimeId" : 4533 + "blockState": "minecraft:dried_kelp_block" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dripstone_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -308, - "id" : "minecraft:pointed_dripstone", - "damage" : 32767 + "id": "minecraft:dripstone_block", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:pointed_dripstone" } }, - "output" : [ + "output": [ { - "legacyId" : -317, - "id" : "minecraft:dripstone_block", - "blockRuntimeId" : 4534 + "blockState": "minecraft:dripstone_block" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dripstone_block_from_pointed_dripstone", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -308, - "id" : "minecraft:pointed_dripstone", - "damage" : 32767 + "id": "minecraft:dripstone_block_from_pointed_dripstone", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:pointed_dripstone" } }, - "output" : [ + "output": [ { - "legacyId" : -317, - "id" : "minecraft:dripstone_block", - "blockRuntimeId" : 4534 + "blockState": "minecraft:dripstone_block" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:dropper", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : 32767 + "id": "minecraft:dropper", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobblestone" }, - "B" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "B": { + "id": "minecraft:redstone", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 125, - "id" : "minecraft:dropper", - "blockRuntimeId" : 4538 + "blockState": "minecraft:dropper;facing_direction=3" } ], - "shape" : [ + "shape": [ "AAA", "A A", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:emerald", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 133, - "id" : "minecraft:emerald_block", - "damage" : 32767 + "id": "minecraft:emerald", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:emerald_block" } }, - "output" : [ + "output": [ { - "legacyId" : 512, - "id" : "minecraft:emerald", - "count" : 9 + "id": "minecraft:emerald", + "count": 9 } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:emerald_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 512, - "id" : "minecraft:emerald", - "damage" : 32767 + "id": "minecraft:emerald_block", + "type": 1, + "input": { + "A": { + "id": "minecraft:emerald", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 133, - "id" : "minecraft:emerald_block", - "blockRuntimeId" : 4666 + "blockState": "minecraft:emerald_block" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:empty_map_to_enhanced", - "type" : 0, - "input" : [ + "id": "minecraft:empty_map_to_enhanced", + "type": 0, + "input": [ { - "legacyId" : 515, - "id" : "minecraft:empty_map" + "id": "minecraft:empty_map" }, { - "legacyId" : 391, - "id" : "minecraft:compass", - "damage" : 32767 + "id": "minecraft:compass", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 515, - "id" : "minecraft:empty_map", - "damage" : 2 + "id": "minecraft:empty_map", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:enchanting_table", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 387, - "id" : "minecraft:book", - "damage" : 32767 + "id": "minecraft:enchanting_table", + "type": 1, + "input": { + "A": { + "id": "minecraft:book", + "fuzzy": true }, - "B" : { - "legacyId" : 304, - "id" : "minecraft:diamond", - "damage" : 32767 + "B": { + "id": "minecraft:diamond", + "fuzzy": true }, - "C" : { - "legacyId" : 49, - "id" : "minecraft:obsidian", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:obsidian" } }, - "output" : [ + "output": [ { - "legacyId" : 116, - "id" : "minecraft:enchanting_table", - "blockRuntimeId" : 4668 + "blockState": "minecraft:enchanting_table" } ], - "shape" : [ + "shape": [ " A ", "BCB", "CCC" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:end_brick_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 206, - "id" : "minecraft:end_bricks", - "damage" : 32767 + "id": "minecraft:end_brick_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:end_bricks" } }, - "output" : [ + "output": [ { - "legacyId" : -178, - "id" : "minecraft:end_brick_stairs", - "count" : 4, - "blockRuntimeId" : 4669 + "count": 4, + "blockState": "minecraft:end_brick_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:end_brick_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 206, - "id" : "minecraft:end_bricks", - "damage" : 32767 + "id": "minecraft:end_brick_wall", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:end_bricks" } }, - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "count" : 6, - "blockRuntimeId" : 1288 + "count": 6, + "blockState": "minecraft:cobblestone_wall;wall_block_type=end_brick" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:end_bricks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 121, - "id" : "minecraft:end_stone", - "damage" : 32767 + "id": "minecraft:end_bricks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:end_stone" } }, - "output" : [ + "output": [ { - "legacyId" : 206, - "id" : "minecraft:end_bricks", - "count" : 4, - "blockRuntimeId" : 4677 + "count": 4, + "blockState": "minecraft:end_bricks" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:end_crystal", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:end_crystal", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 433, - "id" : "minecraft:ender_eye", - "damage" : 32767 + "B": { + "id": "minecraft:ender_eye", + "fuzzy": true }, - "C" : { - "legacyId" : 424, - "id" : "minecraft:ghast_tear", - "damage" : 32767 + "C": { + "id": "minecraft:ghast_tear", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 629, - "id" : "minecraft:end_crystal" + "id": "minecraft:end_crystal" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "ACA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:end_rod", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 423, - "id" : "minecraft:blaze_rod", - "damage" : 32767 + "id": "minecraft:end_rod", + "type": 1, + "input": { + "A": { + "id": "minecraft:blaze_rod", + "fuzzy": true }, - "B" : { - "legacyId" : 559, - "id" : "minecraft:popped_chorus_fruit", - "damage" : 32767 + "B": { + "id": "minecraft:popped_chorus_fruit", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 208, - "id" : "minecraft:end_rod", - "count" : 4, - "blockRuntimeId" : 4688 + "count": 4, + "blockState": "minecraft:end_rod" } ], - "shape" : [ + "shape": [ "A", "B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:ender_chest", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 49, - "id" : "minecraft:obsidian", - "damage" : 32767 + "id": "minecraft:ender_chest", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:obsidian" }, - "B" : { - "legacyId" : 433, - "id" : "minecraft:ender_eye", - "damage" : 32767 + "B": { + "id": "minecraft:ender_eye", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 130, - "id" : "minecraft:ender_chest", - "blockRuntimeId" : 4695 + "blockState": "minecraft:ender_chest" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:ender_eye", - "type" : 0, - "input" : [ + "id": "minecraft:ender_eye", + "type": 0, + "input": [ { - "legacyId" : 422, - "id" : "minecraft:ender_pearl", - "damage" : 32767 + "id": "minecraft:ender_pearl", + "fuzzy": true }, { - "legacyId" : 429, - "id" : "minecraft:blaze_powder", - "damage" : 32767 + "id": "minecraft:blaze_powder", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 433, - "id" : "minecraft:ender_eye" + "id": "minecraft:ender_eye" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:fence", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks" + "id": "minecraft:fence", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 85, - "id" : "minecraft:fence", - "count" : 3, - "blockRuntimeId" : 4723 + "count": 3, + "blockState": "minecraft:fence" } ], - "shape" : [ + "shape": [ "ABA", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:fence_gate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:fence_gate", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks" + "B": { + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 107, - "id" : "minecraft:fence_gate", - "blockRuntimeId" : 4729 + "blockState": "minecraft:fence_gate" } ], - "shape" : [ + "shape": [ "ABA", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:fermented_spider_eye", - "type" : 0, - "input" : [ + "id": "minecraft:fermented_spider_eye", + "type": 0, + "input": [ { - "legacyId" : 278, - "id" : "minecraft:spider_eye", - "damage" : 32767 + "id": "minecraft:spider_eye", + "fuzzy": true }, { - "legacyId" : 39, - "id" : "minecraft:brown_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:brown_mushroom" }, { - "legacyId" : 416, - "id" : "minecraft:sugar", - "damage" : 32767 + "id": "minecraft:sugar", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 428, - "id" : "minecraft:fermented_spider_eye" + "id": "minecraft:fermented_spider_eye" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:fishing_rod", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:fishing_rod", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 326, - "id" : "minecraft:string", - "damage" : 32767 + "B": { + "id": "minecraft:string", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 392, - "id" : "minecraft:fishing_rod" + "id": "minecraft:fishing_rod" } ], - "shape" : [ + "shape": [ " A", " AB", "A B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:fletching_table", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 356, - "id" : "minecraft:flint", - "damage" : 32767 + "id": "minecraft:fletching_table", + "type": 1, + "input": { + "A": { + "id": "minecraft:flint", + "fuzzy": true }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : -201, - "id" : "minecraft:fletching_table", - "blockRuntimeId" : 4761 + "blockState": "minecraft:fletching_table" } ], - "shape" : [ + "shape": [ "AA", "BB", "BB" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:fletching_table_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 356, - "id" : "minecraft:flint", - "damage" : 32767 + "id": "minecraft:fletching_table_from_crimson_planks", + "type": 1, + "input": { + "A": { + "id": "minecraft:flint", + "fuzzy": true }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -201, - "id" : "minecraft:fletching_table", - "blockRuntimeId" : 4761 + "blockState": "minecraft:fletching_table" } ], - "shape" : [ + "shape": [ "AA", "BB", "BB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:fletching_table_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 356, - "id" : "minecraft:flint", - "damage" : 32767 + "id": "minecraft:fletching_table_from_warped_planks", + "type": 1, + "input": { + "A": { + "id": "minecraft:flint", + "fuzzy": true }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -201, - "id" : "minecraft:fletching_table", - "blockRuntimeId" : 4761 + "blockState": "minecraft:fletching_table" } ], - "shape" : [ + "shape": [ "AA", "BB", "BB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:flint_and_steel", - "type" : 0, - "input" : [ + "id": "minecraft:flint_and_steel", + "type": 0, + "input": [ { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:iron_ingot", + "fuzzy": true }, { - "legacyId" : 356, - "id" : "minecraft:flint", - "damage" : 32767 + "id": "minecraft:flint", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 299, - "id" : "minecraft:flint_and_steel" + "id": "minecraft:flint_and_steel" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:flower_pot", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 383, - "id" : "minecraft:brick", - "damage" : 32767 + "id": "minecraft:flower_pot", + "type": 1, + "input": { + "A": { + "id": "minecraft:brick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 514, - "id" : "minecraft:flower_pot" + "id": "minecraft:flower_pot" } ], - "shape" : [ + "shape": [ "A A", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:furnace", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : 32767 + "id": "minecraft:furnace", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobblestone" } }, - "output" : [ + "output": [ { - "legacyId" : 61, - "id" : "minecraft:furnace", - "blockRuntimeId" : 4813 + "blockState": "minecraft:furnace" } ], - "shape" : [ + "shape": [ "AAA", "A A", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:furnace_from_blackstone", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "id": "minecraft:furnace_from_blackstone", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:blackstone" } }, - "output" : [ + "output": [ { - "legacyId" : 61, - "id" : "minecraft:furnace", - "blockRuntimeId" : 4813 + "blockState": "minecraft:furnace" } ], - "shape" : [ + "shape": [ "AAA", "A A", "AAA" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:furnace_from_cobbled_deepslate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate", - "damage" : 32767 + "id": "minecraft:furnace_from_cobbled_deepslate", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobbled_deepslate" } }, - "output" : [ + "output": [ { - "legacyId" : 61, - "id" : "minecraft:furnace", - "blockRuntimeId" : 4813 + "blockState": "minecraft:furnace" } ], - "shape" : [ + "shape": [ "AAA", "A A", "AAA" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:glass_bottle", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:glass_bottle", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" } }, - "output" : [ + "output": [ { - "legacyId" : 427, - "id" : "minecraft:glass_bottle", - "count" : 3 + "id": "minecraft:glass_bottle", + "count": 3 } ], - "shape" : [ + "shape": [ "A A", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:glass_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:glass_pane", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" } }, - "output" : [ + "output": [ { - "legacyId" : 102, - "id" : "minecraft:glass_pane", - "count" : 16, - "blockRuntimeId" : 4821 + "count": 16, + "blockState": "minecraft:glass_pane" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:glow_frame", - "type" : 0, - "input" : [ + "id": "minecraft:glow_frame", + "type": 0, + "input": [ { - "legacyId" : 513, - "id" : "minecraft:frame", - "damage" : 32767 + "id": "minecraft:frame", + "fuzzy": true }, { - "legacyId" : 503, - "id" : "minecraft:glow_ink_sac", - "damage" : 32767 + "legacyId": 503, + "id": "minecraft:glow_ink_sac", + "damage": 32767 } ], - "output" : [ + "output": [ { - "legacyId" : 621, - "id" : "minecraft:glow_frame" + "legacyId": 623, + "id": "minecraft:glow_frame" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:glowstone", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 394, - "id" : "minecraft:glowstone_dust", - "damage" : 32767 + "id": "minecraft:glowstone", + "type": 1, + "input": { + "A": { + "id": "minecraft:glowstone_dust", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 89, - "id" : "minecraft:glowstone", - "blockRuntimeId" : 4899 + "blockState": "minecraft:glowstone" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:gold_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "id": "minecraft:gold_block", + "type": 1, + "input": { + "A": { + "id": "minecraft:gold_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 41, - "id" : "minecraft:gold_block", - "blockRuntimeId" : 4900 + "blockState": "minecraft:gold_block" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:gold_ingot_from_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 41, - "id" : "minecraft:gold_block", - "damage" : 32767 + "id": "minecraft:gold_ingot_from_block", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:gold_block" } }, - "output" : [ + "output": [ { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "count" : 9 + "id": "minecraft:gold_ingot", + "count": 9 } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:gold_ingot_from_nuggets", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "id": "minecraft:gold_ingot_from_nuggets", + "type": 1, + "input": { + "A": { + "id": "minecraft:gold_nugget", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 306, - "id" : "minecraft:gold_ingot" + "id": "minecraft:gold_ingot" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:gold_nugget", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "id": "minecraft:gold_nugget", + "type": 1, + "input": { + "A": { + "id": "minecraft:gold_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "count" : 9 + "id": "minecraft:gold_nugget", + "count": 9 } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:golden_apple", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "id": "minecraft:golden_apple", + "type": 1, + "input": { + "A": { + "id": "minecraft:gold_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 257, - "id" : "minecraft:apple", - "damage" : 32767 + "B": { + "id": "minecraft:apple", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 258, - "id" : "minecraft:golden_apple" + "id": "minecraft:golden_apple" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:golden_axe", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "id": "minecraft:golden_axe", + "type": 1, + "input": { + "A": { + "id": "minecraft:gold_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 325, - "id" : "minecraft:golden_axe" + "id": "minecraft:golden_axe" } ], - "shape" : [ + "shape": [ "AA", "AB", " B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:golden_boots", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "id": "minecraft:golden_boots", + "type": 1, + "input": { + "A": { + "id": "minecraft:gold_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 354, - "id" : "minecraft:golden_boots" + "id": "minecraft:golden_boots" } ], - "shape" : [ + "shape": [ "A A", "A A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:golden_carrot", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "id": "minecraft:golden_carrot", + "type": 1, + "input": { + "A": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "B" : { - "legacyId" : 279, - "id" : "minecraft:carrot", - "damage" : 32767 + "B": { + "id": "minecraft:carrot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 283, - "id" : "minecraft:golden_carrot" + "id": "minecraft:golden_carrot" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:golden_chestplate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "id": "minecraft:golden_chestplate", + "type": 1, + "input": { + "A": { + "id": "minecraft:gold_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 352, - "id" : "minecraft:golden_chestplate" + "id": "minecraft:golden_chestplate" } ], - "shape" : [ + "shape": [ "A A", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:golden_helmet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "id": "minecraft:golden_helmet", + "type": 1, + "input": { + "A": { + "id": "minecraft:gold_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 351, - "id" : "minecraft:golden_helmet" + "id": "minecraft:golden_helmet" } ], - "shape" : [ + "shape": [ "AAA", "A A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:golden_hoe", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "id": "minecraft:golden_hoe", + "type": 1, + "input": { + "A": { + "id": "minecraft:gold_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 333, - "id" : "minecraft:golden_hoe" + "id": "minecraft:golden_hoe" } ], - "shape" : [ + "shape": [ "AA", " B", " B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:golden_leggings", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "id": "minecraft:golden_leggings", + "type": 1, + "input": { + "A": { + "id": "minecraft:gold_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 353, - "id" : "minecraft:golden_leggings" + "id": "minecraft:golden_leggings" } ], - "shape" : [ + "shape": [ "AAA", "A A", "A A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:golden_pickaxe", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "id": "minecraft:golden_pickaxe", + "type": 1, + "input": { + "A": { + "id": "minecraft:gold_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 324, - "id" : "minecraft:golden_pickaxe" + "id": "minecraft:golden_pickaxe" } ], - "shape" : [ + "shape": [ "AAA", " B ", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:golden_rail", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "id": "minecraft:golden_rail", + "type": 1, + "input": { + "A": { + "id": "minecraft:gold_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true }, - "C" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "C": { + "id": "minecraft:redstone", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 27, - "id" : "minecraft:golden_rail", - "count" : 6, - "blockRuntimeId" : 4902 + "count": 6, + "blockState": "minecraft:golden_rail" } ], - "shape" : [ + "shape": [ "A A", "ABA", "ACA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:golden_shovel", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "id": "minecraft:golden_shovel", + "type": 1, + "input": { + "A": { + "id": "minecraft:gold_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 323, - "id" : "minecraft:golden_shovel" + "id": "minecraft:golden_shovel" } ], - "shape" : [ + "shape": [ "A", "B", "B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:golden_sword", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "id": "minecraft:golden_sword", + "type": 1, + "input": { + "A": { + "id": "minecraft:gold_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 322, - "id" : "minecraft:golden_sword" + "id": "minecraft:golden_sword" } ], - "shape" : [ + "shape": [ "A", "A", "B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:granite", - "type" : 0, - "input" : [ + "id": "minecraft:granite", + "type": 0, + "input": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 3 + "blockState": "minecraft:stone;stone_type=diorite" }, { - "legacyId" : 524, - "id" : "minecraft:quartz", - "damage" : 32767 + "id": "minecraft:quartz", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "blockRuntimeId" : 6935 + "blockState": "minecraft:stone;stone_type=granite" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:granite_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 1 + "id": "minecraft:granite_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone;stone_type=granite" } }, - "output" : [ + "output": [ { - "legacyId" : -169, - "id" : "minecraft:granite_stairs", - "count" : 4, - "blockRuntimeId" : 4914 + "count": 4, + "blockState": "minecraft:granite_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:granite_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 1 + "id": "minecraft:granite_wall", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone;stone_type=granite" } }, - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "count" : 6, - "blockRuntimeId" : 1280 + "count": 6, + "blockState": "minecraft:cobblestone_wall;wall_block_type=granite" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:gray_banner", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "id": "minecraft:gray_banner", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=gray" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 567, - "id" : "minecraft:banner", - "damage" : 8 + "id": "minecraft:banner", + "damage": 8 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:gray_carpet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "id": "minecraft:gray_candle", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:gray_dye", + "damage": 8 + } + ], + "output": [ + { + "blockState": "minecraft:gray_candle;candles=0;lit=0" + } + ], + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:gray_carpet", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=gray" } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 3, - "blockRuntimeId" : 930 + "count": 3, + "blockState": "minecraft:carpet;color=gray" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:gray_carpet_from_white", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 171, - "id" : "minecraft:carpet" + "id": "minecraft:gray_carpet_from_white", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:carpet" }, - "B" : { - "legacyId" : 403, - "id" : "minecraft:gray_dye" + "B": { + "id": "minecraft:gray_dye", + "damage": 8 } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 8, - "blockRuntimeId" : 930 + "count": 8, + "blockState": "minecraft:carpet;color=gray" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:gray_concrete_powder", - "type" : 0, - "input" : [ + "id": "minecraft:gray_concrete_powder", + "type": 0, + "input": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye" + "id": "minecraft:gray_dye", + "damage": 8 }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3626 + "count": 8, + "blockState": "minecraft:concrete_powder;color=gray" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:gray_dye", - "type" : 0, - "input" : [ + "id": "minecraft:gray_dye", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye" + "id": "minecraft:black_dye", + "damage": 16 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye" + "id": "minecraft:white_dye", + "damage": 19 } ], - "output" : [ + "output": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "count" : 2 + "id": "minecraft:gray_dye", + "count": 2, + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:gray_dye_from_black_bonemeal", - "type" : 0, - "input" : [ + "id": "minecraft:gray_dye_from_black_bonemeal", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye" + "id": "minecraft:black_dye", + "damage": 16 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal" + "id": "minecraft:bone_meal", + "damage": 15 } ], - "output" : [ + "output": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "count" : 2 + "id": "minecraft:gray_dye", + "count": 2, + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:gray_dye_from_ink_bonemeal", - "type" : 0, - "input" : [ + "id": "minecraft:gray_dye_from_ink_bonemeal", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac" + "id": "minecraft:ink_sac" }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal" + "id": "minecraft:bone_meal", + "damage": 15 } ], - "output" : [ + "output": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "count" : 2 + "id": "minecraft:gray_dye", + "count": 2, + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 3 + "block": "crafting_table", + "priority": 3 }, { - "id" : "minecraft:gray_dye_from_ink_white", - "type" : 0, - "input" : [ + "id": "minecraft:gray_dye_from_ink_white", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac" + "id": "minecraft:ink_sac" }, { - "legacyId" : 410, - "id" : "minecraft:white_dye" + "id": "minecraft:white_dye", + "damage": 19 } ], - "output" : [ + "output": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "count" : 2 + "id": "minecraft:gray_dye", + "count": 2, + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:gray_stained_glass", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:gray_stained_glass", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 403, - "id" : "minecraft:gray_dye" + "B": { + "id": "minecraft:gray_dye", + "damage": 8 } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6849 + "count": 8, + "blockState": "minecraft:stained_glass;color=gray" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:gray_stained_glass_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "damage" : 7 + "id": "minecraft:gray_stained_glass_pane", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stained_glass;color=gray" } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 16, - "blockRuntimeId" : 6865 + "count": 16, + "blockState": "minecraft:stained_glass_pane;color=gray" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:gray_stained_glass_pane_from_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 102, - "id" : "minecraft:glass_pane", - "damage" : 32767 + "id": "minecraft:gray_stained_glass_pane_from_pane", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass_pane" }, - "B" : { - "legacyId" : 403, - "id" : "minecraft:gray_dye" + "B": { + "id": "minecraft:gray_dye", + "damage": 8 } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 8, - "blockRuntimeId" : 6865 + "count": 8, + "blockState": "minecraft:stained_glass_pane;color=gray" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:gray_stained_hardened_clay", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:gray_stained_hardened_clay", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 403, - "id" : "minecraft:gray_dye" + "B": { + "id": "minecraft:gray_dye", + "damage": 8 } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6881 + "count": 8, + "blockState": "minecraft:stained_hardened_clay;color=gray" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:green_banner", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "id": "minecraft:green_banner", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=green" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 567, - "id" : "minecraft:banner", - "damage" : 2 + "id": "minecraft:banner", + "damage": 2 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:green_carpet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "id": "minecraft:green_candle", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:green_dye", + "damage": 2 + } + ], + "output": [ + { + "blockState": "minecraft:green_candle;candles=0;lit=0" + } + ], + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:green_carpet", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=green" } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 3, - "blockRuntimeId" : 936 + "count": 3, + "blockState": "minecraft:carpet;color=green" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:green_carpet_from_white", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 171, - "id" : "minecraft:carpet" + "id": "minecraft:green_carpet_from_white", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:carpet" }, - "B" : { - "legacyId" : 397, - "id" : "minecraft:green_dye" + "B": { + "id": "minecraft:green_dye", + "damage": 2 } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 8, - "blockRuntimeId" : 936 + "count": 8, + "blockState": "minecraft:carpet;color=green" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:green_concrete_powder", - "type" : 0, - "input" : [ + "id": "minecraft:green_concrete_powder", + "type": 0, + "input": [ { - "legacyId" : 397, - "id" : "minecraft:green_dye" + "id": "minecraft:green_dye", + "damage": 2 }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3632 + "count": 8, + "blockState": "minecraft:concrete_powder;color=green" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:green_stained_glass", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:green_stained_glass", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 397, - "id" : "minecraft:green_dye" + "B": { + "id": "minecraft:green_dye", + "damage": 2 } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6855 + "count": 8, + "blockState": "minecraft:stained_glass;color=green" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:green_stained_glass_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "damage" : 13 + "id": "minecraft:green_stained_glass_pane", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stained_glass;color=green" } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 16, - "blockRuntimeId" : 6871 + "count": 16, + "blockState": "minecraft:stained_glass_pane;color=green" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:green_stained_glass_pane_from_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 102, - "id" : "minecraft:glass_pane", - "damage" : 32767 + "id": "minecraft:green_stained_glass_pane_from_pane", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass_pane" }, - "B" : { - "legacyId" : 397, - "id" : "minecraft:green_dye" + "B": { + "id": "minecraft:green_dye", + "damage": 2 } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 8, - "blockRuntimeId" : 6871 + "count": 8, + "blockState": "minecraft:stained_glass_pane;color=green" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:green_stained_hardened_clay", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:green_stained_hardened_clay", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 397, - "id" : "minecraft:green_dye" + "B": { + "id": "minecraft:green_dye", + "damage": 2 } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6887 + "count": 8, + "blockState": "minecraft:stained_hardened_clay;color=green" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:grindstone", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:grindstone", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -166, - "id" : "minecraft:double_stone_slab4", - "damage" : 2 + "B": { + "blockState": "minecraft:double_stone_slab4;stone_slab_type_4=stone" }, - "C" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : -195, - "id" : "minecraft:grindstone", - "blockRuntimeId" : 4937 + "blockState": "minecraft:grindstone" } ], - "shape" : [ + "shape": [ "ABA", "C C" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:grindstone_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:grindstone_from_crimson_planks", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:double_stone_slab" }, - "C" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -195, - "id" : "minecraft:grindstone", - "blockRuntimeId" : 4937 + "blockState": "minecraft:grindstone" } ], - "shape" : [ + "shape": [ "ABA", "C C" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:grindstone_from_crimson_planks2", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:grindstone_from_crimson_planks2", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:double_stone_slab2" }, - "C" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -195, - "id" : "minecraft:grindstone", - "blockRuntimeId" : 4937 + "blockState": "minecraft:grindstone" } ], - "shape" : [ + "shape": [ "ABA", "C C" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:grindstone_from_crimson_planks3", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:grindstone_from_crimson_planks3", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:double_stone_slab3" }, - "C" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -195, - "id" : "minecraft:grindstone", - "blockRuntimeId" : 4937 + "blockState": "minecraft:grindstone" } ], - "shape" : [ + "shape": [ "ABA", "C C" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:grindstone_from_crimson_planks4", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:grindstone_from_crimson_planks4", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -166, - "id" : "minecraft:double_stone_slab4", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:double_stone_slab4" }, - "C" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -195, - "id" : "minecraft:grindstone", - "blockRuntimeId" : 4937 + "blockState": "minecraft:grindstone" } ], - "shape" : [ + "shape": [ "ABA", "C C" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:grindstone_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:grindstone_from_warped_planks", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:double_stone_slab" }, - "C" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -195, - "id" : "minecraft:grindstone", - "blockRuntimeId" : 4937 + "blockState": "minecraft:grindstone" } ], - "shape" : [ + "shape": [ "ABA", "C C" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:grindstone_from_warped_planks2", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:grindstone_from_warped_planks2", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:double_stone_slab2" }, - "C" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -195, - "id" : "minecraft:grindstone", - "blockRuntimeId" : 4937 + "blockState": "minecraft:grindstone" } ], - "shape" : [ + "shape": [ "ABA", "C C" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:grindstone_from_warped_planks3", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:grindstone_from_warped_planks3", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:double_stone_slab3" }, - "C" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -195, - "id" : "minecraft:grindstone", - "blockRuntimeId" : 4937 + "blockState": "minecraft:grindstone" } ], - "shape" : [ + "shape": [ "ABA", "C C" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:grindstone_from_warped_planks4", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:grindstone_from_warped_planks4", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -166, - "id" : "minecraft:double_stone_slab4", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:double_stone_slab4" }, - "C" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -195, - "id" : "minecraft:grindstone", - "blockRuntimeId" : 4937 + "blockState": "minecraft:grindstone" } ], - "shape" : [ + "shape": [ "ABA", "C C" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:hay_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 334, - "id" : "minecraft:wheat", - "damage" : 32767 + "id": "minecraft:hay_block", + "type": 1, + "input": { + "A": { + "id": "minecraft:wheat", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 170, - "id" : "minecraft:hay_block", - "blockRuntimeId" : 4989 + "blockState": "minecraft:hay_block" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:heavy_weighted_pressure_plate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:heavy_weighted_pressure_plate", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 148, - "id" : "minecraft:heavy_weighted_pressure_plate", - "blockRuntimeId" : 5001 + "blockState": "minecraft:heavy_weighted_pressure_plate" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:honey_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 591, - "id" : "minecraft:honey_bottle", - "damage" : 32767 + "id": "minecraft:honey_block", + "type": 1, + "input": { + "A": { + "id": "minecraft:honey_bottle", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : -220, - "id" : "minecraft:honey_block", - "blockRuntimeId" : 5017 + "blockState": "minecraft:honey_block" }, { - "legacyId" : 427, - "id" : "minecraft:glass_bottle", - "count" : 4 + "id": "minecraft:glass_bottle", + "count": 4 } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:honey_bottle", - "type" : 0, - "input" : [ + "id": "minecraft:honey_bottle", + "type": 0, + "input": [ { - "legacyId" : -220, - "id" : "minecraft:honey_block", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:honey_block" }, { - "legacyId" : 427, - "id" : "minecraft:glass_bottle", - "damage" : 32767 + "id": "minecraft:glass_bottle", + "fuzzy": true }, { - "legacyId" : 427, - "id" : "minecraft:glass_bottle", - "damage" : 32767 + "id": "minecraft:glass_bottle", + "fuzzy": true }, { - "legacyId" : 427, - "id" : "minecraft:glass_bottle", - "damage" : 32767 + "id": "minecraft:glass_bottle", + "fuzzy": true }, { - "legacyId" : 427, - "id" : "minecraft:glass_bottle", - "damage" : 32767 + "id": "minecraft:glass_bottle", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 591, - "id" : "minecraft:honey_bottle", - "count" : 4 + "id": "minecraft:honey_bottle", + "count": 4 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:honey_bottle_to_sugar", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 591, - "id" : "minecraft:honey_bottle", - "damage" : 32767 + "id": "minecraft:honey_bottle_to_sugar", + "type": 1, + "input": { + "A": { + "id": "minecraft:honey_bottle", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 416, - "id" : "minecraft:sugar", - "count" : 3 + "id": "minecraft:sugar", + "count": 3 }, { - "legacyId" : 427, - "id" : "minecraft:glass_bottle" + "id": "minecraft:glass_bottle" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:honeycomb_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "id": "minecraft:honeycomb_block", + "type": 1, + "input": { + "A": { + "id": "minecraft:honeycomb", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : -221, - "id" : "minecraft:honeycomb_block", - "blockRuntimeId" : 5018 + "blockState": "minecraft:honeycomb_block" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:hopper", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:hopper", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 54, - "id" : "minecraft:chest", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:chest" } }, - "output" : [ + "output": [ { - "legacyId" : 527, - "id" : "minecraft:hopper" + "id": "minecraft:hopper" } ], - "shape" : [ + "shape": [ "A A", "ABA", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:hopper_minecart", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 527, - "id" : "minecraft:hopper", - "damage" : 32767 + "id": "minecraft:hopper_minecart", + "type": 1, + "input": { + "A": { + "id": "minecraft:hopper", + "fuzzy": true }, - "B" : { - "legacyId" : 370, - "id" : "minecraft:minecart", - "damage" : 32767 + "B": { + "id": "minecraft:minecart", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 526, - "id" : "minecraft:hopper_minecart" + "id": "minecraft:hopper_minecart" } ], - "shape" : [ + "shape": [ "A", "B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:ingots_from_copper", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -340, - "id" : "minecraft:copper_block", - "damage" : 32767 + "id": "minecraft:ingots_from_copper", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:copper_block" } }, - "output" : [ + "output": [ { - "legacyId" : 504, - "id" : "minecraft:copper_ingot", - "count" : 9 + "legacyId": 504, + "id": "minecraft:copper_ingot", + "count": 9 } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:ingots_from_waxed_copper", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -344, - "id" : "minecraft:waxed_copper", - "damage" : 32767 + "id": "minecraft:ingots_from_waxed_copper", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:waxed_copper" } }, - "output" : [ + "output": [ { - "legacyId" : 504, - "id" : "minecraft:copper_ingot", - "count" : 9 + "legacyId": 504, + "id": "minecraft:copper_ingot", + "count": 9 } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:iron_axe", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:iron_axe", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 298, - "id" : "minecraft:iron_axe" + "id": "minecraft:iron_axe" } ], - "shape" : [ + "shape": [ "AA", "AB", " B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:iron_bars", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:iron_bars", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 101, - "id" : "minecraft:iron_bars", - "count" : 16, - "blockRuntimeId" : 5038 + "count": 16, + "blockState": "minecraft:iron_bars" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:iron_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:iron_block", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 42, - "id" : "minecraft:iron_block", - "blockRuntimeId" : 5039 + "blockState": "minecraft:iron_block" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:iron_boots", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:iron_boots", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 346, - "id" : "minecraft:iron_boots" + "id": "minecraft:iron_boots" } ], - "shape" : [ + "shape": [ "A A", "A A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:iron_chestplate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:iron_chestplate", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 344, - "id" : "minecraft:iron_chestplate" + "id": "minecraft:iron_chestplate" } ], - "shape" : [ + "shape": [ "A A", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:iron_door", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:iron_door", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 372, - "id" : "minecraft:iron_door", - "count" : 3 + "id": "minecraft:iron_door", + "count": 3 } ], - "shape" : [ + "shape": [ "AA", "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:iron_helmet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:iron_helmet", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 343, - "id" : "minecraft:iron_helmet" + "id": "minecraft:iron_helmet" } ], - "shape" : [ + "shape": [ "AAA", "A A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:iron_hoe", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:iron_hoe", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 331, - "id" : "minecraft:iron_hoe" + "id": "minecraft:iron_hoe" } ], - "shape" : [ + "shape": [ "AA", " B", " B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:iron_ingot_from_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 42, - "id" : "minecraft:iron_block", - "damage" : 32767 + "id": "minecraft:iron_ingot_from_block", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:iron_block" } }, - "output" : [ + "output": [ { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "count" : 9 + "id": "minecraft:iron_ingot", + "count": 9 } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:iron_ingot_from_nuggets", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "id": "minecraft:iron_ingot_from_nuggets", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_nugget", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 305, - "id" : "minecraft:iron_ingot" + "id": "minecraft:iron_ingot" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:iron_leggings", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:iron_leggings", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 345, - "id" : "minecraft:iron_leggings" + "id": "minecraft:iron_leggings" } ], - "shape" : [ + "shape": [ "AAA", "A A", "A A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:iron_nugget", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:iron_nugget", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "count" : 9 + "id": "minecraft:iron_nugget", + "count": 9 } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:iron_pickaxe", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:iron_pickaxe", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 297, - "id" : "minecraft:iron_pickaxe" + "id": "minecraft:iron_pickaxe" } ], - "shape" : [ + "shape": [ "AAA", " B ", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:iron_shovel", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:iron_shovel", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 296, - "id" : "minecraft:iron_shovel" + "id": "minecraft:iron_shovel" } ], - "shape" : [ + "shape": [ "A", "B", "B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:iron_sword", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:iron_sword", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 307, - "id" : "minecraft:iron_sword" + "id": "minecraft:iron_sword" } ], - "shape" : [ + "shape": [ "A", "A", "B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:iron_trapdoor", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:iron_trapdoor", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 167, - "id" : "minecraft:iron_trapdoor", - "blockRuntimeId" : 5073 + "blockState": "minecraft:iron_trapdoor" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:item_frame", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:item_frame", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 381, - "id" : "minecraft:leather", - "damage" : 32767 + "B": { + "id": "minecraft:leather", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 513, - "id" : "minecraft:frame" + "id": "minecraft:frame" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:jukebox_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:jukebox_from_crimson_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" }, - "B" : { - "legacyId" : 304, - "id" : "minecraft:diamond", - "damage" : 32767 + "B": { + "id": "minecraft:diamond", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 84, - "id" : "minecraft:jukebox", - "blockRuntimeId" : 5113 + "blockState": "minecraft:jukebox" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:jukebox_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:jukebox_from_warped_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" }, - "B" : { - "legacyId" : 304, - "id" : "minecraft:diamond", - "damage" : 32767 + "B": { + "id": "minecraft:diamond", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 84, - "id" : "minecraft:jukebox", - "blockRuntimeId" : 5113 + "blockState": "minecraft:jukebox" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:jungle_boat", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 3 + "id": "minecraft:jungle_boat", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=jungle" }, - "B" : { - "legacyId" : 309, - "id" : "minecraft:wooden_shovel", - "damage" : 32767 + "B": { + "id": "minecraft:wooden_shovel", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 377, - "id" : "minecraft:jungle_boat" + "id": "minecraft:jungle_boat", + "damage": 3 } ], - "shape" : [ + "shape": [ "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:jungle_door", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 3 + "id": "minecraft:jungle_door", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=jungle" } }, - "output" : [ + "output": [ { - "legacyId" : 555, - "id" : "minecraft:jungle_door", - "count" : 3 + "id": "minecraft:jungle_door", + "count": 3 } ], - "shape" : [ + "shape": [ "AA", "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:jungle_fence", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 3 + "id": "minecraft:jungle_fence", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=jungle" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 85, - "id" : "minecraft:fence", - "count" : 3, - "blockRuntimeId" : 4726 + "count": 3, + "blockState": "minecraft:fence;wood_type=jungle" } ], - "shape" : [ + "shape": [ "ABA", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:jungle_fence_gate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:jungle_fence_gate", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 3 + "B": { + "blockState": "minecraft:planks;wood_type=jungle" } }, - "output" : [ + "output": [ { - "legacyId" : 185, - "id" : "minecraft:jungle_fence_gate", - "blockRuntimeId" : 5158 + "blockState": "minecraft:jungle_fence_gate" } ], - "shape" : [ + "shape": [ "ABA", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:jungle_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 17, - "id" : "minecraft:log", - "damage" : 3 + "id": "minecraft:jungle_planks", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:log;old_log_type=jungle" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5643 + "count": 4, + "blockState": "minecraft:planks;wood_type=jungle" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:jungle_planks_from_stripped", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -7, - "id" : "minecraft:stripped_jungle_log", - "damage" : 32767 + "id": "minecraft:jungle_planks_from_stripped", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_jungle_log" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5643 + "count": 4, + "blockState": "minecraft:planks;wood_type=jungle" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:jungle_planks_from_stripped_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 11 + "id": "minecraft:jungle_planks_from_stripped_wood", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wood;stripped_bit=1;wood_type=jungle" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5643 + "count": 4, + "blockState": "minecraft:planks;wood_type=jungle" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:jungle_planks_from_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 3 + "id": "minecraft:jungle_planks_from_wood", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wood;wood_type=jungle" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5643 + "count": 4, + "blockState": "minecraft:planks;wood_type=jungle" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:jungle_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 3 + "id": "minecraft:jungle_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=jungle" } }, - "output" : [ + "output": [ { - "legacyId" : 136, - "id" : "minecraft:jungle_stairs", - "count" : 4, - "blockRuntimeId" : 5190 + "count": 4, + "blockState": "minecraft:jungle_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:jungle_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 17, - "id" : "minecraft:log", - "damage" : 3 + "id": "minecraft:jungle_wood", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:log;old_log_type=jungle" } }, - "output" : [ + "output": [ { - "legacyId" : -212, - "id" : "minecraft:wood", - "count" : 3, - "blockRuntimeId" : 7554 + "count": 3, + "blockState": "minecraft:wood;wood_type=jungle" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:jungle_wood_stripped", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -7, - "id" : "minecraft:stripped_jungle_log", - "damage" : 32767 + "id": "minecraft:jungle_wood_stripped", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_jungle_log" } }, - "output" : [ + "output": [ { - "legacyId" : -212, - "id" : "minecraft:wood", - "count" : 3, - "blockRuntimeId" : 7560 + "count": 3, + "blockState": "minecraft:wood;stripped_bit=1;wood_type=jungle" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:jungle_wooden_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 3 + "id": "minecraft:jungle_wooden_slab", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=jungle" } }, - "output" : [ + "output": [ { - "legacyId" : 158, - "id" : "minecraft:wooden_slab", - "count" : 6, - "blockRuntimeId" : 7650 + "count": 6, + "blockState": "minecraft:wooden_slab;wood_type=jungle" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:ladder", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:ladder", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 65, - "id" : "minecraft:ladder", - "count" : 3, - "blockRuntimeId" : 5262 + "count": 3, + "blockState": "minecraft:ladder" } ], - "shape" : [ + "shape": [ "A A", "AAA", "A A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:lantern", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "id": "minecraft:lantern", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "B" : { - "legacyId" : 50, - "id" : "minecraft:torch", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:torch" } }, - "output" : [ + "output": [ { - "legacyId" : -208, - "id" : "minecraft:lantern", - "blockRuntimeId" : 5268 + "blockState": "minecraft:lantern" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:lapis_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli" + "id": "minecraft:lapis_block", + "type": 1, + "input": { + "A": { + "id": "minecraft:lapis_lazuli", + "damage": 4 } }, - "output" : [ + "output": [ { - "legacyId" : 22, - "id" : "minecraft:lapis_block", - "blockRuntimeId" : 5270 + "blockState": "minecraft:lapis_block" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:lapis_lazuli", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 22, - "id" : "minecraft:lapis_block", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:lapis_block" } }, - "output" : [ + "output": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "count" : 9 + "id": "minecraft:lapis_lazuli", + "count": 9, + "damage": 4 } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:lead", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 326, - "id" : "minecraft:string", - "damage" : 32767 + "id": "minecraft:lead", + "type": 1, + "input": { + "A": { + "id": "minecraft:string", + "fuzzy": true }, - "B" : { - "legacyId" : 388, - "id" : "minecraft:slime_ball", - "damage" : 32767 + "B": { + "id": "minecraft:slime_ball", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 547, - "id" : "minecraft:lead", - "count" : 2 + "id": "minecraft:lead", + "count": 2 } ], - "shape" : [ + "shape": [ "AA ", "AB ", " A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:leather", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 529, - "id" : "minecraft:rabbit_hide", - "damage" : 32767 + "id": "minecraft:leather", + "type": 1, + "input": { + "A": { + "id": "minecraft:rabbit_hide", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 381, - "id" : "minecraft:leather" + "id": "minecraft:leather" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:leather_boots", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 381, - "id" : "minecraft:leather", - "damage" : 32767 + "id": "minecraft:leather_boots", + "type": 1, + "input": { + "A": { + "id": "minecraft:leather", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 338, - "id" : "minecraft:leather_boots" + "id": "minecraft:leather_boots" } ], - "shape" : [ + "shape": [ "A A", "A A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:leather_chestplate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 381, - "id" : "minecraft:leather", - "damage" : 32767 + "id": "minecraft:leather_chestplate", + "type": 1, + "input": { + "A": { + "id": "minecraft:leather", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 336, - "id" : "minecraft:leather_chestplate" + "id": "minecraft:leather_chestplate" } ], - "shape" : [ + "shape": [ "A A", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:leather_helmet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 381, - "id" : "minecraft:leather", - "damage" : 32767 + "id": "minecraft:leather_helmet", + "type": 1, + "input": { + "A": { + "id": "minecraft:leather", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 335, - "id" : "minecraft:leather_helmet" + "id": "minecraft:leather_helmet" } ], - "shape" : [ + "shape": [ "AAA", "A A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:leather_horse_armor", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 381, - "id" : "minecraft:leather", - "damage" : 32767 + "id": "minecraft:leather_horse_armor", + "type": 1, + "input": { + "A": { + "id": "minecraft:leather", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 530, - "id" : "minecraft:leather_horse_armor" + "id": "minecraft:leather_horse_armor" } ], - "shape" : [ + "shape": [ "A A", "AAA", "A A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:leather_leggings", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 381, - "id" : "minecraft:leather", - "damage" : 32767 + "id": "minecraft:leather_leggings", + "type": 1, + "input": { + "A": { + "id": "minecraft:leather", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 337, - "id" : "minecraft:leather_leggings" + "id": "minecraft:leather_leggings" } ], - "shape" : [ + "shape": [ "AAA", "A A", "A A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:lectern", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 158, - "id" : "minecraft:wooden_slab", - "damage" : 32767 + "id": "minecraft:lectern", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:wooden_slab" }, - "B" : { - "legacyId" : 47, - "id" : "minecraft:bookshelf", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:bookshelf" } }, - "output" : [ + "output": [ { - "legacyId" : -194, - "id" : "minecraft:lectern", - "blockRuntimeId" : 5339 + "blockState": "minecraft:lectern" } ], - "shape" : [ + "shape": [ "AAA", " B ", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:lectern_from_crimson_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -264, - "id" : "minecraft:crimson_slab", - "damage" : 32767 + "id": "minecraft:lectern_from_crimson_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_slab" }, - "B" : { - "legacyId" : 47, - "id" : "minecraft:bookshelf", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:bookshelf" } }, - "output" : [ + "output": [ { - "legacyId" : -194, - "id" : "minecraft:lectern", - "blockRuntimeId" : 5339 + "blockState": "minecraft:lectern" } ], - "shape" : [ + "shape": [ "AAA", " B ", " A " ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:lectern_from_warped_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -265, - "id" : "minecraft:warped_slab", - "damage" : 32767 + "id": "minecraft:lectern_from_warped_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_slab" }, - "B" : { - "legacyId" : 47, - "id" : "minecraft:bookshelf", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:bookshelf" } }, - "output" : [ + "output": [ { - "legacyId" : -194, - "id" : "minecraft:lectern", - "blockRuntimeId" : 5339 + "blockState": "minecraft:lectern" } ], - "shape" : [ + "shape": [ "AAA", " B ", " A " ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:lever", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:lever", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:cobblestone" } }, - "output" : [ + "output": [ { - "legacyId" : 69, - "id" : "minecraft:lever", - "blockRuntimeId" : 5347 + "blockState": "minecraft:lever" } ], - "shape" : [ + "shape": [ "A", "B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:light_blue_banner", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "id": "minecraft:light_blue_banner", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=light_blue" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 567, - "id" : "minecraft:banner", - "damage" : 12 + "id": "minecraft:banner", + "damage": 12 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:light_blue_carpet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "id": "minecraft:light_blue_candle", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:light_blue_dye", + "damage": 12 + } + ], + "output": [ + { + "blockState": "minecraft:light_blue_candle;candles=0;lit=0" + } + ], + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:light_blue_carpet", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=light_blue" } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 3, - "blockRuntimeId" : 926 + "count": 3, + "blockState": "minecraft:carpet;color=light_blue" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:light_blue_carpet_from_white", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 171, - "id" : "minecraft:carpet" + "id": "minecraft:light_blue_carpet_from_white", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:carpet" }, - "B" : { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye" + "B": { + "id": "minecraft:light_blue_dye", + "damage": 12 } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 8, - "blockRuntimeId" : 926 + "count": 8, + "blockState": "minecraft:carpet;color=light_blue" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:light_blue_concrete_powder", - "type" : 0, - "input" : [ + "id": "minecraft:light_blue_concrete_powder", + "type": 0, + "input": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye" + "id": "minecraft:light_blue_dye", + "damage": 12 }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3622 + "count": 8, + "blockState": "minecraft:concrete_powder;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:light_blue_dye", - "type" : 0, - "input" : [ + "id": "minecraft:light_blue_dye", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye" + "id": "minecraft:blue_dye", + "damage": 18 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye" + "id": "minecraft:white_dye", + "damage": 19 } ], - "output" : [ + "output": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "count" : 2 + "id": "minecraft:light_blue_dye", + "count": 2, + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:light_blue_dye_from_blue_bonemeal", - "type" : 0, - "input" : [ + "id": "minecraft:light_blue_dye_from_blue_bonemeal", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye" + "id": "minecraft:blue_dye", + "damage": 18 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal" + "id": "minecraft:bone_meal", + "damage": 15 } ], - "output" : [ + "output": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "count" : 2 + "id": "minecraft:light_blue_dye", + "count": 2, + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:light_blue_dye_from_blue_orchid", - "type" : 0, - "input" : [ + "id": "minecraft:light_blue_dye_from_blue_orchid", + "type": 0, + "input": [ { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 1 + "blockState": "minecraft:red_flower;flower_type=orchid" } ], - "output" : [ + "output": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye" + "id": "minecraft:light_blue_dye", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:light_blue_dye_from_lapis_bonemeal", - "type" : 0, - "input" : [ + "id": "minecraft:light_blue_dye_from_lapis_bonemeal", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli" + "id": "minecraft:lapis_lazuli", + "damage": 4 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal" + "id": "minecraft:bone_meal", + "damage": 15 } ], - "output" : [ + "output": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "count" : 2 + "id": "minecraft:light_blue_dye", + "count": 2, + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 4 + "block": "crafting_table", + "priority": 4 }, { - "id" : "minecraft:light_blue_dye_from_lapis_white", - "type" : 0, - "input" : [ + "id": "minecraft:light_blue_dye_from_lapis_white", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli" + "id": "minecraft:lapis_lazuli", + "damage": 4 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye" + "id": "minecraft:white_dye", + "damage": 19 } ], - "output" : [ + "output": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "count" : 2 + "id": "minecraft:light_blue_dye", + "count": 2, + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 3 + "block": "crafting_table", + "priority": 3 }, { - "id" : "minecraft:light_blue_stained_glass", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:light_blue_stained_glass", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye" + "B": { + "id": "minecraft:light_blue_dye", + "damage": 12 } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6845 + "count": 8, + "blockState": "minecraft:stained_glass;color=light_blue" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:light_blue_stained_glass_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "damage" : 3 + "id": "minecraft:light_blue_stained_glass_pane", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stained_glass;color=light_blue" } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 16, - "blockRuntimeId" : 6861 + "count": 16, + "blockState": "minecraft:stained_glass_pane;color=light_blue" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:light_blue_stained_glass_pane_from_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 102, - "id" : "minecraft:glass_pane", - "damage" : 32767 + "id": "minecraft:light_blue_stained_glass_pane_from_pane", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass_pane" }, - "B" : { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye" + "B": { + "id": "minecraft:light_blue_dye", + "damage": 12 } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 8, - "blockRuntimeId" : 6861 + "count": 8, + "blockState": "minecraft:stained_glass_pane;color=light_blue" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:light_blue_stained_hardened_clay", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:light_blue_stained_hardened_clay", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye" + "B": { + "id": "minecraft:light_blue_dye", + "damage": 12 } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6877 + "count": 8, + "blockState": "minecraft:stained_hardened_clay;color=light_blue" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:light_gray__carpet_from_white", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 171, - "id" : "minecraft:carpet" + "id": "minecraft:light_gray__carpet_from_white", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:carpet" }, - "B" : { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye" + "B": { + "id": "minecraft:light_gray_dye", + "damage": 7 } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 8, - "blockRuntimeId" : 931 + "count": 8, + "blockState": "minecraft:carpet;color=silver" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:light_gray_banner", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "id": "minecraft:light_gray_banner", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=silver" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 567, - "id" : "minecraft:banner", - "damage" : 7 + "id": "minecraft:banner", + "damage": 7 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:light_gray_carpet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "id": "minecraft:light_gray_candle", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:light_gray_dye", + "damage": 7 + } + ], + "output": [ + { + "blockState": "minecraft:light_gray_candle;candles=0;lit=0" + } + ], + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:light_gray_carpet", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=silver" } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 3, - "blockRuntimeId" : 931 + "count": 3, + "blockState": "minecraft:carpet;color=silver" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:light_gray_concrete_powder", - "type" : 0, - "input" : [ + "id": "minecraft:light_gray_concrete_powder", + "type": 0, + "input": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye" + "id": "minecraft:light_gray_dye", + "damage": 7 }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3627 + "count": 8, + "blockState": "minecraft:concrete_powder;color=silver" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:light_gray_dye", - "type" : 0, - "input" : [ + "id": "minecraft:light_gray_dye", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye" + "id": "minecraft:black_dye", + "damage": 16 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye" + "id": "minecraft:white_dye", + "damage": 19 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye" + "id": "minecraft:white_dye", + "damage": 19 } ], - "output" : [ + "output": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "count" : 3 + "id": "minecraft:light_gray_dye", + "count": 3, + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 3 + "block": "crafting_table", + "priority": 3 }, { - "id" : "minecraft:light_gray_dye_from_azure_bluet", - "type" : 0, - "input" : [ + "id": "minecraft:light_gray_dye_from_azure_bluet", + "type": 0, + "input": [ { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 3 + "blockState": "minecraft:red_flower;flower_type=houstonia" } ], - "output" : [ + "output": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye" + "id": "minecraft:light_gray_dye", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:light_gray_dye_from_black_bonemeal", - "type" : 0, - "input" : [ + "id": "minecraft:light_gray_dye_from_black_bonemeal", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye" + "id": "minecraft:black_dye", + "damage": 16 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal" + "id": "minecraft:bone_meal", + "damage": 15 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal" + "id": "minecraft:bone_meal", + "damage": 15 } ], - "output" : [ + "output": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "count" : 3 + "id": "minecraft:light_gray_dye", + "count": 3, + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 7 + "block": "crafting_table", + "priority": 7 }, { - "id" : "minecraft:light_gray_dye_from_gray_bonemeal", - "type" : 0, - "input" : [ + "id": "minecraft:light_gray_dye_from_gray_bonemeal", + "type": 0, + "input": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye" + "id": "minecraft:gray_dye", + "damage": 8 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal" + "id": "minecraft:bone_meal", + "damage": 15 } ], - "output" : [ + "output": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "count" : 2 + "id": "minecraft:light_gray_dye", + "count": 2, + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 6 + "block": "crafting_table", + "priority": 6 }, { - "id" : "minecraft:light_gray_dye_from_gray_white", - "type" : 0, - "input" : [ + "id": "minecraft:light_gray_dye_from_gray_white", + "type": 0, + "input": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye" + "id": "minecraft:gray_dye", + "damage": 8 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye" + "id": "minecraft:white_dye", + "damage": 19 } ], - "output" : [ + "output": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "count" : 2 + "id": "minecraft:light_gray_dye", + "count": 2, + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 4 + "block": "crafting_table", + "priority": 4 }, { - "id" : "minecraft:light_gray_dye_from_ink_bonemeal", - "type" : 0, - "input" : [ + "id": "minecraft:light_gray_dye_from_ink_bonemeal", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac" + "id": "minecraft:ink_sac" }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal" + "id": "minecraft:bone_meal", + "damage": 15 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal" + "id": "minecraft:bone_meal", + "damage": 15 } ], - "output" : [ + "output": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "count" : 3 + "id": "minecraft:light_gray_dye", + "count": 3, + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 8 + "block": "crafting_table", + "priority": 8 }, { - "id" : "minecraft:light_gray_dye_from_ink_white", - "type" : 0, - "input" : [ + "id": "minecraft:light_gray_dye_from_ink_white", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac" + "id": "minecraft:ink_sac" }, { - "legacyId" : 410, - "id" : "minecraft:white_dye" + "id": "minecraft:white_dye", + "damage": 19 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye" + "id": "minecraft:white_dye", + "damage": 19 } ], - "output" : [ + "output": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "count" : 3 + "id": "minecraft:light_gray_dye", + "count": 3, + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 5 + "block": "crafting_table", + "priority": 5 }, { - "id" : "minecraft:light_gray_dye_from_oxeye_daisy", - "type" : 0, - "input" : [ + "id": "minecraft:light_gray_dye_from_oxeye_daisy", + "type": 0, + "input": [ { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 8 + "blockState": "minecraft:red_flower;flower_type=oxeye" } ], - "output" : [ + "output": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye" + "id": "minecraft:light_gray_dye", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:light_gray_dye_from_white_tulip", - "type" : 0, - "input" : [ + "id": "minecraft:light_gray_dye_from_white_tulip", + "type": 0, + "input": [ { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 6 + "blockState": "minecraft:red_flower;flower_type=tulip_white" } ], - "output" : [ + "output": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye" + "id": "minecraft:light_gray_dye", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:light_gray_stained_glass", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:light_gray_stained_glass", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye" + "B": { + "id": "minecraft:light_gray_dye", + "damage": 7 } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6850 + "count": 8, + "blockState": "minecraft:stained_glass;color=silver" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:light_gray_stained_glass_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "damage" : 8 + "id": "minecraft:light_gray_stained_glass_pane", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stained_glass;color=silver" } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 16, - "blockRuntimeId" : 6866 + "count": 16, + "blockState": "minecraft:stained_glass_pane;color=silver" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:light_gray_stained_glass_pane_from_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 102, - "id" : "minecraft:glass_pane", - "damage" : 32767 + "id": "minecraft:light_gray_stained_glass_pane_from_pane", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass_pane" }, - "B" : { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye" + "B": { + "id": "minecraft:light_gray_dye", + "damage": 7 } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 8, - "blockRuntimeId" : 6866 + "count": 8, + "blockState": "minecraft:stained_glass_pane;color=silver" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:light_gray_stained_hardened_clay", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:light_gray_stained_hardened_clay", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye" + "B": { + "id": "minecraft:light_gray_dye", + "damage": 7 } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6882 + "count": 8, + "blockState": "minecraft:stained_hardened_clay;color=silver" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:light_weighted_pressure_plate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "id": "minecraft:light_weighted_pressure_plate", + "type": 1, + "input": { + "A": { + "id": "minecraft:gold_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 147, - "id" : "minecraft:light_weighted_pressure_plate", - "blockRuntimeId" : 5385 + "blockState": "minecraft:light_weighted_pressure_plate" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:lightning_rod", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 504, - "id" : "minecraft:copper_ingot", - "damage" : 32767 + "id": "minecraft:lightning_rod", + "type": 1, + "input": { + "A": { + "legacyId": 504, + "id": "minecraft:copper_ingot", + "damage": 32767 } }, - "output" : [ + "output": [ { - "legacyId" : -312, - "id" : "minecraft:lightning_rod", - "blockRuntimeId" : 5401 + "blockState": "minecraft:lightning_rod;facing_direction=0" } ], - "shape" : [ + "shape": [ "A", "A", "A" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:lime__carpet_from_white", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 171, - "id" : "minecraft:carpet" + "id": "minecraft:lime__carpet_from_white", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:carpet" }, - "B" : { - "legacyId" : 405, - "id" : "minecraft:lime_dye" + "B": { + "id": "minecraft:lime_dye", + "damage": 10 } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 8, - "blockRuntimeId" : 928 + "count": 8, + "blockState": "minecraft:carpet;color=lime" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:lime_banner", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "id": "minecraft:lime_banner", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=lime" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 567, - "id" : "minecraft:banner", - "damage" : 10 + "id": "minecraft:banner", + "damage": 10 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:lime_candle", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:lime_dye", + "damage": 10 + } + ], + "output": [ + { + "blockState": "minecraft:lime_candle;candles=0;lit=0" + } + ], + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:lime_carpet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "id": "minecraft:lime_carpet", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=lime" } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 3, - "blockRuntimeId" : 928 + "count": 3, + "blockState": "minecraft:carpet;color=lime" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:lime_concrete_powder", - "type" : 0, - "input" : [ + "id": "minecraft:lime_concrete_powder", + "type": 0, + "input": [ { - "legacyId" : 405, - "id" : "minecraft:lime_dye" + "id": "minecraft:lime_dye", + "damage": 10 }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3624 + "count": 8, + "blockState": "minecraft:concrete_powder;color=lime" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:lime_dye", - "type" : 0, - "input" : [ + "id": "minecraft:lime_dye", + "type": 0, + "input": [ { - "legacyId" : 397, - "id" : "minecraft:green_dye" + "id": "minecraft:green_dye", + "damage": 2 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye" + "id": "minecraft:white_dye", + "damage": 19 } ], - "output" : [ + "output": [ { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "count" : 2 + "id": "minecraft:lime_dye", + "count": 2, + "damage": 10 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:lime_dye_from_bonemeal", - "type" : 0, - "input" : [ + "id": "minecraft:lime_dye_from_bonemeal", + "type": 0, + "input": [ { - "legacyId" : 397, - "id" : "minecraft:green_dye" + "id": "minecraft:green_dye", + "damage": 2 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal" + "id": "minecraft:bone_meal", + "damage": 15 } ], - "output" : [ + "output": [ { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "count" : 2 + "id": "minecraft:lime_dye", + "count": 2, + "damage": 10 } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:lime_stained_glass", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:lime_stained_glass", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 405, - "id" : "minecraft:lime_dye" + "B": { + "id": "minecraft:lime_dye", + "damage": 10 } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6847 + "count": 8, + "blockState": "minecraft:stained_glass;color=lime" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:lime_stained_glass_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "damage" : 5 + "id": "minecraft:lime_stained_glass_pane", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stained_glass;color=lime" } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 16, - "blockRuntimeId" : 6863 + "count": 16, + "blockState": "minecraft:stained_glass_pane;color=lime" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:lime_stained_glass_pane_from_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 102, - "id" : "minecraft:glass_pane", - "damage" : 32767 + "id": "minecraft:lime_stained_glass_pane_from_pane", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass_pane" }, - "B" : { - "legacyId" : 405, - "id" : "minecraft:lime_dye" + "B": { + "id": "minecraft:lime_dye", + "damage": 10 } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 8, - "blockRuntimeId" : 6863 + "count": 8, + "blockState": "minecraft:stained_glass_pane;color=lime" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:lime_stained_hardened_clay", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:lime_stained_hardened_clay", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 405, - "id" : "minecraft:lime_dye" + "B": { + "id": "minecraft:lime_dye", + "damage": 10 } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6879 + "count": 8, + "blockState": "minecraft:stained_hardened_clay;color=lime" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:lit_pumpkin", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -155, - "id" : "minecraft:carved_pumpkin", - "damage" : 32767 + "id": "minecraft:lit_pumpkin", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:carved_pumpkin" }, - "B" : { - "legacyId" : 50, - "id" : "minecraft:torch", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:torch" } }, - "output" : [ + "output": [ { - "legacyId" : 91, - "id" : "minecraft:lit_pumpkin", - "blockRuntimeId" : 5426 + "blockState": "minecraft:lit_pumpkin" } ], - "shape" : [ + "shape": [ "A", "B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:locator_map", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:locator_map", + "type": 1, + "input": { + "A": { + "id": "minecraft:paper", + "fuzzy": true }, - "B" : { - "legacyId" : 391, - "id" : "minecraft:compass", - "damage" : 32767 + "B": { + "id": "minecraft:compass", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 515, - "id" : "minecraft:empty_map", - "damage" : 2 + "id": "minecraft:empty_map", + "damage": 2 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:lodestone", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 98, - "id" : "minecraft:stonebrick", - "damage" : 3 + "id": "minecraft:lodestone", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stonebrick;stone_brick_type=chiseled" }, - "B" : { - "legacyId" : 601, - "id" : "minecraft:netherite_ingot", - "damage" : 32767 + "B": { + "id": "minecraft:netherite_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : -222, - "id" : "minecraft:lodestone", - "blockRuntimeId" : 5438 + "blockState": "minecraft:lodestone" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:loom_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 326, - "id" : "minecraft:string", - "damage" : 32767 + "id": "minecraft:loom_from_crimson_planks", + "type": 1, + "input": { + "A": { + "id": "minecraft:string", + "fuzzy": true }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -204, - "id" : "minecraft:loom", - "blockRuntimeId" : 5457 + "blockState": "minecraft:loom" } ], - "shape" : [ + "shape": [ "AA", "BB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:loom_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 326, - "id" : "minecraft:string", - "damage" : 32767 + "id": "minecraft:loom_from_warped_planks", + "type": 1, + "input": { + "A": { + "id": "minecraft:string", + "fuzzy": true }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -204, - "id" : "minecraft:loom", - "blockRuntimeId" : 5457 + "blockState": "minecraft:loom" } ], - "shape" : [ + "shape": [ "AA", "BB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:magenta_banner", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "id": "minecraft:magenta_banner", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=magenta" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 567, - "id" : "minecraft:banner", - "damage" : 13 + "id": "minecraft:banner", + "damage": 13 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:magenta_candle", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:magenta_dye", + "damage": 13 + } + ], + "output": [ + { + "blockState": "minecraft:magenta_candle;candles=0;lit=0" + } + ], + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:magenta_carpet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "id": "minecraft:magenta_carpet", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=magenta" } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 3, - "blockRuntimeId" : 925 + "count": 3, + "blockState": "minecraft:carpet;color=magenta" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:magenta_carpet_from_white", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 171, - "id" : "minecraft:carpet" + "id": "minecraft:magenta_carpet_from_white", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:carpet" }, - "B" : { - "legacyId" : 408, - "id" : "minecraft:magenta_dye" + "B": { + "id": "minecraft:magenta_dye", + "damage": 13 } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 8, - "blockRuntimeId" : 925 + "count": 8, + "blockState": "minecraft:carpet;color=magenta" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:magenta_concrete_powder", - "type" : 0, - "input" : [ + "id": "minecraft:magenta_concrete_powder", + "type": 0, + "input": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye" + "id": "minecraft:magenta_dye", + "damage": 13 }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3621 + "count": 8, + "blockState": "minecraft:concrete_powder;color=magenta" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:magenta_dye", - "type" : 0, - "input" : [ + "id": "minecraft:magenta_dye", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye" + "id": "minecraft:blue_dye", + "damage": 18 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye", + "damage": 1 }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye" + "id": "minecraft:pink_dye", + "damage": 9 } ], - "output" : [ + "output": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "count" : 3 + "id": "minecraft:magenta_dye", + "count": 3, + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:magenta_dye_from_allium", - "type" : 0, - "input" : [ + "id": "minecraft:magenta_dye_from_allium", + "type": 0, + "input": [ { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 2 + "blockState": "minecraft:red_flower;flower_type=allium" } ], - "output" : [ + "output": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye" + "id": "minecraft:magenta_dye", + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:magenta_dye_from_blue_ink_bonemeal", - "type" : 0, - "input" : [ + "id": "minecraft:magenta_dye_from_blue_ink_bonemeal", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye" + "id": "minecraft:blue_dye", + "damage": 18 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye", + "damage": 1 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye", + "damage": 1 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal" + "id": "minecraft:bone_meal", + "damage": 15 } ], - "output" : [ + "output": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "count" : 4 + "id": "minecraft:magenta_dye", + "count": 4, + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 6 + "block": "crafting_table", + "priority": 6 }, { - "id" : "minecraft:magenta_dye_from_blue_ink_white", - "type" : 0, - "input" : [ + "id": "minecraft:magenta_dye_from_blue_ink_white", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye" + "id": "minecraft:blue_dye", + "damage": 18 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye", + "damage": 1 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye", + "damage": 1 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye" + "id": "minecraft:white_dye", + "damage": 19 } ], - "output" : [ + "output": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "count" : 4 + "id": "minecraft:magenta_dye", + "count": 4, + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 4 + "block": "crafting_table", + "priority": 4 }, { - "id" : "minecraft:magenta_dye_from_lapis_ink_bonemeal", - "type" : 0, - "input" : [ + "id": "minecraft:magenta_dye_from_lapis_ink_bonemeal", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli" + "id": "minecraft:lapis_lazuli", + "damage": 4 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye", + "damage": 1 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye", + "damage": 1 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal" + "id": "minecraft:bone_meal", + "damage": 15 } ], - "output" : [ + "output": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "count" : 4 + "id": "minecraft:magenta_dye", + "count": 4, + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 8 + "block": "crafting_table", + "priority": 8 }, { - "id" : "minecraft:magenta_dye_from_lapis_ink_white", - "type" : 0, - "input" : [ + "id": "minecraft:magenta_dye_from_lapis_ink_white", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli" + "id": "minecraft:lapis_lazuli", + "damage": 4 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye", + "damage": 1 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye", + "damage": 1 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye" + "id": "minecraft:white_dye", + "damage": 19 } ], - "output" : [ + "output": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "count" : 4 + "id": "minecraft:magenta_dye", + "count": 4, + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 7 + "block": "crafting_table", + "priority": 7 }, { - "id" : "minecraft:magenta_dye_from_lapis_red_pink", - "type" : 0, - "input" : [ + "id": "minecraft:magenta_dye_from_lapis_red_pink", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli" + "id": "minecraft:lapis_lazuli", + "damage": 4 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye", + "damage": 1 }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye" + "id": "minecraft:pink_dye", + "damage": 9 } ], - "output" : [ + "output": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "count" : 3 + "id": "minecraft:magenta_dye", + "count": 3, + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 5 + "block": "crafting_table", + "priority": 5 }, { - "id" : "minecraft:magenta_dye_from_lilac", - "type" : 0, - "input" : [ + "id": "minecraft:magenta_dye_from_lilac", + "type": 0, + "input": [ { - "legacyId" : 175, - "id" : "minecraft:double_plant", - "damage" : 1 + "blockState": "minecraft:double_plant;double_plant_type=syringa" } ], - "output" : [ + "output": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "count" : 2 + "id": "minecraft:magenta_dye", + "count": 2, + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:magenta_dye_from_purple_and_pink", - "type" : 0, - "input" : [ + "id": "minecraft:magenta_dye_from_purple_and_pink", + "type": 0, + "input": [ { - "legacyId" : 400, - "id" : "minecraft:purple_dye" + "id": "minecraft:purple_dye", + "damage": 5 }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye" + "id": "minecraft:pink_dye", + "damage": 9 } ], - "output" : [ + "output": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "count" : 2 + "id": "minecraft:magenta_dye", + "count": 2, + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 3 + "block": "crafting_table", + "priority": 3 }, { - "id" : "minecraft:magenta_stained_glass", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:magenta_stained_glass", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 408, - "id" : "minecraft:magenta_dye" + "B": { + "id": "minecraft:magenta_dye", + "damage": 13 } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6844 + "count": 8, + "blockState": "minecraft:stained_glass;color=magenta" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:magenta_stained_glass_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "damage" : 2 + "id": "minecraft:magenta_stained_glass_pane", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stained_glass;color=magenta" } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 16, - "blockRuntimeId" : 6860 + "count": 16, + "blockState": "minecraft:stained_glass_pane;color=magenta" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:magenta_stained_glass_pane_from_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 102, - "id" : "minecraft:glass_pane", - "damage" : 32767 + "id": "minecraft:magenta_stained_glass_pane_from_pane", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass_pane" }, - "B" : { - "legacyId" : 408, - "id" : "minecraft:magenta_dye" + "B": { + "id": "minecraft:magenta_dye", + "damage": 13 } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 8, - "blockRuntimeId" : 6860 + "count": 8, + "blockState": "minecraft:stained_glass_pane;color=magenta" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:magenta_stained_hardened_clay", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:magenta_stained_hardened_clay", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 408, - "id" : "minecraft:magenta_dye" + "B": { + "id": "minecraft:magenta_dye", + "damage": 13 } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6876 + "count": 8, + "blockState": "minecraft:stained_hardened_clay;color=magenta" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:magma", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 430, - "id" : "minecraft:magma_cream", - "damage" : 32767 + "id": "minecraft:magma", + "type": 1, + "input": { + "A": { + "id": "minecraft:magma_cream", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 213, - "id" : "minecraft:magma", - "blockRuntimeId" : 5467 + "blockState": "minecraft:magma" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:magma_cream", - "type" : 0, - "input" : [ + "id": "minecraft:magma_cream", + "type": 0, + "input": [ { - "legacyId" : 429, - "id" : "minecraft:blaze_powder", - "damage" : 32767 + "id": "minecraft:blaze_powder", + "fuzzy": true }, { - "legacyId" : 388, - "id" : "minecraft:slime_ball", - "damage" : 32767 + "id": "minecraft:slime_ball", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 430, - "id" : "minecraft:magma_cream" + "id": "minecraft:magma_cream" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:map", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:map", + "type": 1, + "input": { + "A": { + "id": "minecraft:paper", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 515, - "id" : "minecraft:empty_map" + "id": "minecraft:empty_map" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:melon_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 272, - "id" : "minecraft:melon_slice", - "damage" : 32767 + "id": "minecraft:melon_block", + "type": 1, + "input": { + "A": { + "id": "minecraft:melon_slice", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 103, - "id" : "minecraft:melon_block", - "blockRuntimeId" : 5474 + "blockState": "minecraft:melon_block" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:melon_seeds", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 272, - "id" : "minecraft:melon_slice", - "damage" : 32767 + "id": "minecraft:melon_seeds", + "type": 1, + "input": { + "A": { + "id": "minecraft:melon_slice", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 293, - "id" : "minecraft:melon_seeds" + "id": "minecraft:melon_seeds" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:minecart", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:minecart", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 370, - "id" : "minecraft:minecart" + "id": "minecraft:minecart" } ], - "shape" : [ + "shape": [ "A A", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:moss_carpet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -320, - "id" : "minecraft:moss_block", - "damage" : 32767 + "id": "minecraft:moss_carpet", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:moss_block" } }, - "output" : [ + "output": [ { - "legacyId" : -335, - "id" : "minecraft:moss_carpet", - "count" : 3, - "blockRuntimeId" : 5531 + "count": 3, + "blockState": "minecraft:moss_carpet" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:mossy_cobblestone", - "type" : 0, - "input" : [ + "id": "minecraft:mossy_cobblestone", + "type": 0, + "input": [ { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:cobblestone" }, { - "legacyId" : 106, - "id" : "minecraft:vine", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:vine" } ], - "output" : [ + "output": [ { - "legacyId" : 48, - "id" : "minecraft:mossy_cobblestone", - "blockRuntimeId" : 5532 + "blockState": "minecraft:mossy_cobblestone" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:mossy_cobblestone_from_moss", - "type" : 0, - "input" : [ + "id": "minecraft:mossy_cobblestone_from_moss", + "type": 0, + "input": [ { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:cobblestone" }, { - "legacyId" : -320, - "id" : "minecraft:moss_block", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:moss_block" } ], - "output" : [ + "output": [ { - "legacyId" : 48, - "id" : "minecraft:mossy_cobblestone", - "blockRuntimeId" : 5532 + "blockState": "minecraft:mossy_cobblestone" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:mossy_cobblestone_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 48, - "id" : "minecraft:mossy_cobblestone", - "damage" : 32767 + "id": "minecraft:mossy_cobblestone_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:mossy_cobblestone" } }, - "output" : [ + "output": [ { - "legacyId" : -179, - "id" : "minecraft:mossy_cobblestone_stairs", - "count" : 4, - "blockRuntimeId" : 5533 + "count": 4, + "blockState": "minecraft:mossy_cobblestone_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:mossy_cobblestone_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 48, - "id" : "minecraft:mossy_cobblestone", - "damage" : 32767 + "id": "minecraft:mossy_cobblestone_wall", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:mossy_cobblestone" } }, - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "count" : 6, - "blockRuntimeId" : 1279 + "count": 6, + "blockState": "minecraft:cobblestone_wall;wall_block_type=mossy_cobblestone" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:mossy_stone_brick_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 98, - "id" : "minecraft:stonebrick", - "damage" : 1 + "id": "minecraft:mossy_stone_brick_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stonebrick;stone_brick_type=mossy" } }, - "output" : [ + "output": [ { - "legacyId" : -175, - "id" : "minecraft:mossy_stone_brick_stairs", - "count" : 4, - "blockRuntimeId" : 5541 + "count": 4, + "blockState": "minecraft:mossy_stone_brick_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:mossy_stone_brick_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 98, - "id" : "minecraft:stonebrick", - "damage" : 1 + "id": "minecraft:mossy_stone_brick_wall", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stonebrick;stone_brick_type=mossy" } }, - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "count" : 6, - "blockRuntimeId" : 1286 + "count": 6, + "blockState": "minecraft:cobblestone_wall;wall_block_type=mossy_stone_brick" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:mossy_stonebrick", - "type" : 0, - "input" : [ + "id": "minecraft:mossy_stonebrick", + "type": 0, + "input": [ { - "legacyId" : 98, - "id" : "minecraft:stonebrick" + "blockState": "minecraft:stonebrick" }, { - "legacyId" : 106, - "id" : "minecraft:vine", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:vine" } ], - "output" : [ + "output": [ { - "legacyId" : 98, - "id" : "minecraft:stonebrick", - "blockRuntimeId" : 7044 + "blockState": "minecraft:stonebrick;stone_brick_type=mossy" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:mossy_stonebrick_from_moss", - "type" : 0, - "input" : [ + "id": "minecraft:mossy_stonebrick_from_moss", + "type": 0, + "input": [ { - "legacyId" : 98, - "id" : "minecraft:stonebrick" + "blockState": "minecraft:stonebrick" }, { - "legacyId" : -320, - "id" : "minecraft:moss_block", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:moss_block" } ], - "output" : [ + "output": [ { - "legacyId" : 98, - "id" : "minecraft:stonebrick", - "blockRuntimeId" : 7044 + "blockState": "minecraft:stonebrick;stone_brick_type=mossy" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:mushroom_stew", - "type" : 0, - "input" : [ + "id": "minecraft:mushroom_stew", + "type": 0, + "input": [ { - "legacyId" : 39, - "id" : "minecraft:brown_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:brown_mushroom" }, { - "legacyId" : 40, - "id" : "minecraft:red_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:red_mushroom" }, { - "legacyId" : 321, - "id" : "minecraft:bowl", - "damage" : 32767 + "id": "minecraft:bowl", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 260, - "id" : "minecraft:mushroom_stew" + "id": "minecraft:mushroom_stew" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:nether_brick", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 523, - "id" : "minecraft:netherbrick", - "damage" : 32767 + "id": "minecraft:nether_brick", + "type": 1, + "input": { + "A": { + "id": "minecraft:netherbrick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 112, - "id" : "minecraft:nether_brick", - "blockRuntimeId" : 5551 + "blockState": "minecraft:nether_brick" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:nether_brick_fence", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 112, - "id" : "minecraft:nether_brick", - "damage" : 32767 + "id": "minecraft:nether_brick_fence", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:nether_brick" }, - "B" : { - "legacyId" : 523, - "id" : "minecraft:netherbrick", - "damage" : 32767 + "B": { + "id": "minecraft:netherbrick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 113, - "id" : "minecraft:nether_brick_fence", - "count" : 6, - "blockRuntimeId" : 5552 + "count": 6, + "blockState": "minecraft:nether_brick_fence" } ], - "shape" : [ + "shape": [ "ABA", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:nether_brick_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 112, - "id" : "minecraft:nether_brick", - "damage" : 32767 + "id": "minecraft:nether_brick_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:nether_brick" } }, - "output" : [ + "output": [ { - "legacyId" : 114, - "id" : "minecraft:nether_brick_stairs", - "count" : 4, - "blockRuntimeId" : 5553 + "count": 4, + "blockState": "minecraft:nether_brick_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:nether_brick_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 112, - "id" : "minecraft:nether_brick", - "damage" : 32767 + "id": "minecraft:nether_brick_wall", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:nether_brick" } }, - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "count" : 6, - "blockRuntimeId" : 1287 + "count": 6, + "blockState": "minecraft:cobblestone_wall;wall_block_type=nether_brick" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:nether_wart_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 294, - "id" : "minecraft:nether_wart", - "damage" : 32767 + "id": "minecraft:nether_wart_block", + "type": 1, + "input": { + "A": { + "id": "minecraft:nether_wart", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 214, - "id" : "minecraft:nether_wart_block", - "blockRuntimeId" : 5567 + "blockState": "minecraft:nether_wart_block" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:netherite_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 601, - "id" : "minecraft:netherite_ingot", - "damage" : 32767 + "id": "minecraft:netherite_block", + "type": 1, + "input": { + "A": { + "id": "minecraft:netherite_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : -270, - "id" : "minecraft:netherite_block", - "blockRuntimeId" : 5568 + "blockState": "minecraft:netherite_block" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:netherite_ingot", - "type" : 0, - "input" : [ + "id": "minecraft:netherite_ingot", + "type": 0, + "input": [ { - "legacyId" : 611, - "id" : "minecraft:netherite_scrap", - "damage" : 32767 + "id": "minecraft:netherite_scrap", + "fuzzy": true }, { - "legacyId" : 611, - "id" : "minecraft:netherite_scrap", - "damage" : 32767 + "id": "minecraft:netherite_scrap", + "fuzzy": true }, { - "legacyId" : 611, - "id" : "minecraft:netherite_scrap", - "damage" : 32767 + "id": "minecraft:netherite_scrap", + "fuzzy": true }, { - "legacyId" : 611, - "id" : "minecraft:netherite_scrap", - "damage" : 32767 + "id": "minecraft:netherite_scrap", + "fuzzy": true }, { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "id": "minecraft:gold_ingot", + "fuzzy": true }, { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "id": "minecraft:gold_ingot", + "fuzzy": true }, { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "id": "minecraft:gold_ingot", + "fuzzy": true }, { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "id": "minecraft:gold_ingot", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 601, - "id" : "minecraft:netherite_ingot" + "id": "minecraft:netherite_ingot" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:netherite_ingot_from_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -270, - "id" : "minecraft:netherite_block", - "damage" : 32767 + "id": "minecraft:netherite_ingot_from_block", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:netherite_block" } }, - "output" : [ + "output": [ { - "legacyId" : 601, - "id" : "minecraft:netherite_ingot", - "count" : 9 + "id": "minecraft:netherite_ingot", + "count": 9 } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:noteblock_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:noteblock_from_crimson_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" }, - "B" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "B": { + "id": "minecraft:redstone", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 25, - "id" : "minecraft:noteblock", - "blockRuntimeId" : 5579 + "blockState": "minecraft:noteblock" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:noteblock_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:noteblock_from_warped_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" }, - "B" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "B": { + "id": "minecraft:redstone", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 25, - "id" : "minecraft:noteblock", - "blockRuntimeId" : 5579 + "blockState": "minecraft:noteblock" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:oak_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 17, - "id" : "minecraft:log" + "id": "minecraft:oak_planks", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:log" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5640 + "count": 4, + "blockState": "minecraft:planks" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:oak_planks_from_stripped", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -10, - "id" : "minecraft:stripped_oak_log", - "damage" : 32767 + "id": "minecraft:oak_planks_from_stripped", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_oak_log" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5640 + "count": 4, + "blockState": "minecraft:planks" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:oak_planks_from_stripped_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 8 + "id": "minecraft:oak_planks_from_stripped_wood", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wood;stripped_bit=1" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5640 + "count": 4, + "blockState": "minecraft:planks" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:oak_planks_from_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -212, - "id" : "minecraft:wood" + "id": "minecraft:oak_planks_from_wood", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wood" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5640 + "count": 4, + "blockState": "minecraft:planks" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:oak_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks" + "id": "minecraft:oak_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 53, - "id" : "minecraft:oak_stairs", - "count" : 4, - "blockRuntimeId" : 5580 + "count": 4, + "blockState": "minecraft:oak_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:oak_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 17, - "id" : "minecraft:log" + "id": "minecraft:oak_wood", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:log" } }, - "output" : [ + "output": [ { - "legacyId" : -212, - "id" : "minecraft:wood", - "count" : 3, - "blockRuntimeId" : 7551 + "count": 3, + "blockState": "minecraft:wood" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:oak_wood_stripped", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -10, - "id" : "minecraft:stripped_oak_log", - "damage" : 32767 + "id": "minecraft:oak_wood_stripped", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_oak_log" } }, - "output" : [ + "output": [ { - "legacyId" : -212, - "id" : "minecraft:wood", - "count" : 3, - "blockRuntimeId" : 7557 + "count": 3, + "blockState": "minecraft:wood;stripped_bit=1" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:oak_wooden_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks" + "id": "minecraft:oak_wooden_slab", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 158, - "id" : "minecraft:wooden_slab", - "count" : 6, - "blockRuntimeId" : 7647 + "count": 6, + "blockState": "minecraft:wooden_slab" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:observer", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : 32767 + "id": "minecraft:observer", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobblestone" }, - "B" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "B": { + "id": "minecraft:redstone", + "fuzzy": true }, - "C" : { - "legacyId" : 524, - "id" : "minecraft:quartz", - "damage" : 32767 + "C": { + "id": "minecraft:quartz", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 251, - "id" : "minecraft:observer", - "blockRuntimeId" : 5588 + "blockState": "minecraft:observer" } ], - "shape" : [ + "shape": [ "AAA", "BBC", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:orange_banner", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "id": "minecraft:orange_banner", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=orange" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 567, - "id" : "minecraft:banner", - "damage" : 14 + "id": "minecraft:banner", + "damage": 14 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:orange_carpet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "id": "minecraft:orange_candle", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:orange_dye", + "damage": 14 + } + ], + "output": [ + { + "blockState": "minecraft:orange_candle;candles=0;lit=0" + } + ], + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:orange_carpet", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=orange" } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 3, - "blockRuntimeId" : 924 + "count": 3, + "blockState": "minecraft:carpet;color=orange" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:orange_carpet_from_white", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 171, - "id" : "minecraft:carpet" + "id": "minecraft:orange_carpet_from_white", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:carpet" }, - "B" : { - "legacyId" : 409, - "id" : "minecraft:orange_dye" + "B": { + "id": "minecraft:orange_dye", + "damage": 14 } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 8, - "blockRuntimeId" : 924 + "count": 8, + "blockState": "minecraft:carpet;color=orange" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:orange_concrete_powder", - "type" : 0, - "input" : [ + "id": "minecraft:orange_concrete_powder", + "type": 0, + "input": [ { - "legacyId" : 409, - "id" : "minecraft:orange_dye" + "id": "minecraft:orange_dye", + "damage": 14 }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3620 + "count": 8, + "blockState": "minecraft:concrete_powder;color=orange" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:orange_dye_from_orange_tulip", - "type" : 0, - "input" : [ + "id": "minecraft:orange_dye_from_orange_tulip", + "type": 0, + "input": [ { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 5 + "blockState": "minecraft:red_flower;flower_type=tulip_orange" } ], - "output" : [ + "output": [ { - "legacyId" : 409, - "id" : "minecraft:orange_dye" + "id": "minecraft:orange_dye", + "damage": 14 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:orange_dye_from_red_yellow", - "type" : 0, - "input" : [ + "id": "minecraft:orange_dye_from_red_yellow", + "type": 0, + "input": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye", + "damage": 1 }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye" + "id": "minecraft:yellow_dye", + "damage": 11 } ], - "output" : [ + "output": [ { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "count" : 2 + "id": "minecraft:orange_dye", + "count": 2, + "damage": 14 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:orange_stained_glass", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:orange_stained_glass", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 409, - "id" : "minecraft:orange_dye" + "B": { + "id": "minecraft:orange_dye", + "damage": 14 } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6843 + "count": 8, + "blockState": "minecraft:stained_glass;color=orange" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:orange_stained_glass_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "damage" : 1 + "id": "minecraft:orange_stained_glass_pane", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stained_glass;color=orange" } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 16, - "blockRuntimeId" : 6859 + "count": 16, + "blockState": "minecraft:stained_glass_pane;color=orange" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:orange_stained_glass_pane_from_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 102, - "id" : "minecraft:glass_pane", - "damage" : 32767 + "id": "minecraft:orange_stained_glass_pane_from_pane", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass_pane" }, - "B" : { - "legacyId" : 409, - "id" : "minecraft:orange_dye" + "B": { + "id": "minecraft:orange_dye", + "damage": 14 } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 8, - "blockRuntimeId" : 6859 + "count": 8, + "blockState": "minecraft:stained_glass_pane;color=orange" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:orange_stained_hardened_clay", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:orange_stained_hardened_clay", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 409, - "id" : "minecraft:orange_dye" + "B": { + "id": "minecraft:orange_dye", + "damage": 14 } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6875 + "count": 8, + "blockState": "minecraft:stained_hardened_clay;color=orange" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:packed_ice", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 79, - "id" : "minecraft:ice", - "damage" : 32767 + "id": "minecraft:packed_ice", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:ice" } }, - "output" : [ + "output": [ { - "legacyId" : 174, - "id" : "minecraft:packed_ice", - "blockRuntimeId" : 5621 + "blockState": "minecraft:packed_ice" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:paper", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 385, - "id" : "minecraft:sugar_cane", - "damage" : 32767 + "id": "minecraft:paper", + "type": 1, + "input": { + "A": { + "id": "minecraft:sugar_cane", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "count" : 3 + "id": "minecraft:paper", + "count": 3 } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:pillar_quartz_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 155, - "id" : "minecraft:quartz_block" + "id": "minecraft:pillar_quartz_block", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:quartz_block" } }, - "output" : [ + "output": [ { - "legacyId" : 155, - "id" : "minecraft:quartz_block", - "count" : 2, - "blockRuntimeId" : 6380 + "count": 2, + "blockState": "minecraft:quartz_block;chisel_type=lines" } ], - "shape" : [ + "shape": [ "A", "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:pink_banner", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "id": "minecraft:pink_banner", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=pink" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 567, - "id" : "minecraft:banner", - "damage" : 9 + "id": "minecraft:banner", + "damage": 9 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:pink_candle", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:pink_dye", + "damage": 9 + } + ], + "output": [ + { + "blockState": "minecraft:pink_candle;candles=0;lit=0" + } + ], + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:pink_carpet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "id": "minecraft:pink_carpet", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=pink" } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 3, - "blockRuntimeId" : 929 + "count": 3, + "blockState": "minecraft:carpet;color=pink" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:pink_carpet_from_white", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 171, - "id" : "minecraft:carpet" + "id": "minecraft:pink_carpet_from_white", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:carpet" }, - "B" : { - "legacyId" : 404, - "id" : "minecraft:pink_dye" + "B": { + "id": "minecraft:pink_dye", + "damage": 9 } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 8, - "blockRuntimeId" : 929 + "count": 8, + "blockState": "minecraft:carpet;color=pink" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:pink_concrete_powder", - "type" : 0, - "input" : [ + "id": "minecraft:pink_concrete_powder", + "type": 0, + "input": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye" + "id": "minecraft:pink_dye", + "damage": 9 }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3625 + "count": 8, + "blockState": "minecraft:concrete_powder;color=pink" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:pink_dye", - "type" : 0, - "input" : [ + "id": "minecraft:pink_dye", + "type": 0, + "input": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye", + "damage": 1 }, { - "legacyId" : 410, - "id" : "minecraft:white_dye" + "id": "minecraft:white_dye", + "damage": 19 } ], - "output" : [ + "output": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "count" : 2 + "id": "minecraft:pink_dye", + "count": 2, + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:pink_dye_from_peony", - "type" : 0, - "input" : [ + "id": "minecraft:pink_dye_from_peony", + "type": 0, + "input": [ { - "legacyId" : 175, - "id" : "minecraft:double_plant", - "damage" : 5 + "blockState": "minecraft:double_plant;double_plant_type=paeonia" } ], - "output" : [ + "output": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "count" : 2 + "id": "minecraft:pink_dye", + "count": 2, + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:pink_dye_from_pink_tulip", - "type" : 0, - "input" : [ + "id": "minecraft:pink_dye_from_pink_tulip", + "type": 0, + "input": [ { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 7 + "blockState": "minecraft:red_flower;flower_type=tulip_pink" } ], - "output" : [ + "output": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye" + "id": "minecraft:pink_dye", + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:pink_dye_from_red_bonemeal", - "type" : 0, - "input" : [ + "id": "minecraft:pink_dye_from_red_bonemeal", + "type": 0, + "input": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye", + "damage": 1 }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal" + "id": "minecraft:bone_meal", + "damage": 15 } ], - "output" : [ + "output": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "count" : 2 + "id": "minecraft:pink_dye", + "count": 2, + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:pink_stained_glass", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:pink_stained_glass", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 404, - "id" : "minecraft:pink_dye" + "B": { + "id": "minecraft:pink_dye", + "damage": 9 } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6848 + "count": 8, + "blockState": "minecraft:stained_glass;color=pink" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:pink_stained_glass_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "damage" : 6 + "id": "minecraft:pink_stained_glass_pane", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stained_glass;color=pink" } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 16, - "blockRuntimeId" : 6864 + "count": 16, + "blockState": "minecraft:stained_glass_pane;color=pink" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:pink_stained_glass_pane_from_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 102, - "id" : "minecraft:glass_pane", - "damage" : 32767 + "id": "minecraft:pink_stained_glass_pane_from_pane", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass_pane" }, - "B" : { - "legacyId" : 404, - "id" : "minecraft:pink_dye" + "B": { + "id": "minecraft:pink_dye", + "damage": 9 } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 8, - "blockRuntimeId" : 6864 + "count": 8, + "blockState": "minecraft:stained_glass_pane;color=pink" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:pink_stained_hardened_clay", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:pink_stained_hardened_clay", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 404, - "id" : "minecraft:pink_dye" + "B": { + "id": "minecraft:pink_dye", + "damage": 9 } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6880 + "count": 8, + "blockState": "minecraft:stained_hardened_clay;color=pink" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:piston_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:piston_from_crimson_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" }, - "B" : { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:cobblestone" }, - "C" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "C": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "D" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "D": { + "id": "minecraft:redstone", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 33, - "id" : "minecraft:piston", - "blockRuntimeId" : 5629 + "blockState": "minecraft:piston;facing_direction=1" } ], - "shape" : [ + "shape": [ "AAA", "BCB", "BDB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:piston_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:piston_from_warped_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" }, - "B" : { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:cobblestone" }, - "C" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "C": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "D" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "D": { + "id": "minecraft:redstone", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 33, - "id" : "minecraft:piston", - "blockRuntimeId" : 5629 + "blockState": "minecraft:piston;facing_direction=1" } ], - "shape" : [ + "shape": [ "AAA", "BCB", "BDB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:polished_andesite", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 5 + "id": "minecraft:polished_andesite", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone;stone_type=andesite" } }, - "output" : [ + "output": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "count" : 4, - "blockRuntimeId" : 6940 + "count": 4, + "blockState": "minecraft:stone;stone_type=andesite_smooth" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:polished_andesite_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 6 + "id": "minecraft:polished_andesite_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone;stone_type=andesite_smooth" } }, - "output" : [ + "output": [ { - "legacyId" : -174, - "id" : "minecraft:polished_andesite_stairs", - "count" : 4, - "blockRuntimeId" : 5657 + "count": 4, + "blockState": "minecraft:polished_andesite_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:polished_basalt", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -234, - "id" : "minecraft:basalt", - "damage" : 32767 + "id": "minecraft:polished_basalt", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:basalt" } }, - "output" : [ + "output": [ { - "legacyId" : -235, - "id" : "minecraft:polished_basalt", - "count" : 4, - "blockRuntimeId" : 5665 + "count": 4, + "blockState": "minecraft:polished_basalt" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:polished_blackstone", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "id": "minecraft:polished_blackstone", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:blackstone" } }, - "output" : [ + "output": [ { - "legacyId" : -291, - "id" : "minecraft:polished_blackstone", - "count" : 4, - "blockRuntimeId" : 5668 + "count": 4, + "blockState": "minecraft:polished_blackstone" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:polished_blackstone_brick_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -274, - "id" : "minecraft:polished_blackstone_bricks", - "damage" : 32767 + "id": "minecraft:polished_blackstone_brick_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:polished_blackstone_bricks" } }, - "output" : [ + "output": [ { - "legacyId" : -284, - "id" : "minecraft:polished_blackstone_brick_slab", - "count" : 6, - "blockRuntimeId" : 5671 + "count": 6, + "blockState": "minecraft:polished_blackstone_brick_slab" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:polished_blackstone_brick_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -274, - "id" : "minecraft:polished_blackstone_bricks", - "damage" : 32767 + "id": "minecraft:polished_blackstone_brick_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:polished_blackstone_bricks" } }, - "output" : [ + "output": [ { - "legacyId" : -275, - "id" : "minecraft:polished_blackstone_brick_stairs", - "count" : 4, - "blockRuntimeId" : 5673 + "count": 4, + "blockState": "minecraft:polished_blackstone_brick_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:polished_blackstone_brick_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -274, - "id" : "minecraft:polished_blackstone_bricks", - "damage" : 32767 + "id": "minecraft:polished_blackstone_brick_wall", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:polished_blackstone_bricks" } }, - "output" : [ + "output": [ { - "legacyId" : -278, - "id" : "minecraft:polished_blackstone_brick_wall", - "count" : 6, - "blockRuntimeId" : 5681 + "count": 6, + "blockState": "minecraft:polished_blackstone_brick_wall" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:polished_blackstone_bricks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -291, - "id" : "minecraft:polished_blackstone", - "damage" : 32767 + "id": "minecraft:polished_blackstone_bricks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:polished_blackstone" } }, - "output" : [ + "output": [ { - "legacyId" : -274, - "id" : "minecraft:polished_blackstone_bricks", - "count" : 4, - "blockRuntimeId" : 5843 + "count": 4, + "blockState": "minecraft:polished_blackstone_bricks" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:polished_blackstone_button", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -291, - "id" : "minecraft:polished_blackstone", - "damage" : 32767 + "id": "minecraft:polished_blackstone_button", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:polished_blackstone" } }, - "output" : [ + "output": [ { - "legacyId" : -296, - "id" : "minecraft:polished_blackstone_button", - "blockRuntimeId" : 5844 + "blockState": "minecraft:polished_blackstone_button" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:polished_blackstone_pressure_plate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -291, - "id" : "minecraft:polished_blackstone", - "damage" : 32767 + "id": "minecraft:polished_blackstone_pressure_plate", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:polished_blackstone" } }, - "output" : [ + "output": [ { - "legacyId" : -295, - "id" : "minecraft:polished_blackstone_pressure_plate", - "blockRuntimeId" : 5858 + "blockState": "minecraft:polished_blackstone_pressure_plate" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:polished_blackstone_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -291, - "id" : "minecraft:polished_blackstone", - "damage" : 32767 + "id": "minecraft:polished_blackstone_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:polished_blackstone" } }, - "output" : [ + "output": [ { - "legacyId" : -293, - "id" : "minecraft:polished_blackstone_slab", - "count" : 6, - "blockRuntimeId" : 5874 + "count": 6, + "blockState": "minecraft:polished_blackstone_slab" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:polished_blackstone_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -291, - "id" : "minecraft:polished_blackstone", - "damage" : 32767 + "id": "minecraft:polished_blackstone_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:polished_blackstone" } }, - "output" : [ + "output": [ { - "legacyId" : -292, - "id" : "minecraft:polished_blackstone_stairs", - "count" : 4, - "blockRuntimeId" : 5876 + "count": 4, + "blockState": "minecraft:polished_blackstone_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:polished_blackstone_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -291, - "id" : "minecraft:polished_blackstone", - "damage" : 32767 + "id": "minecraft:polished_blackstone_wall", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:polished_blackstone" } }, - "output" : [ + "output": [ { - "legacyId" : -297, - "id" : "minecraft:polished_blackstone_wall", - "count" : 6, - "blockRuntimeId" : 5884 + "count": 6, + "blockState": "minecraft:polished_blackstone_wall" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:polished_deepslate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate", - "damage" : 32767 + "id": "minecraft:polished_deepslate", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobbled_deepslate" } }, - "output" : [ + "output": [ { - "legacyId" : -383, - "id" : "minecraft:polished_deepslate", - "count" : 4, - "blockRuntimeId" : 6046 + "count": 4, + "blockState": "minecraft:polished_deepslate" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:polished_deepslate_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -383, - "id" : "minecraft:polished_deepslate", - "damage" : 32767 + "id": "minecraft:polished_deepslate_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:polished_deepslate" } }, - "output" : [ + "output": [ { - "legacyId" : -384, - "id" : "minecraft:polished_deepslate_slab", - "count" : 6, - "blockRuntimeId" : 6049 + "count": 6, + "blockState": "minecraft:polished_deepslate_slab;top_slot_bit=0" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:polished_deepslate_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -383, - "id" : "minecraft:polished_deepslate", - "damage" : 32767 + "id": "minecraft:polished_deepslate_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:polished_deepslate" } }, - "output" : [ + "output": [ { - "legacyId" : -385, - "id" : "minecraft:polished_deepslate_stairs", - "count" : 4, - "blockRuntimeId" : 6051 + "count": 4, + "blockState": "minecraft:polished_deepslate_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:polished_deepslate_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -383, - "id" : "minecraft:polished_deepslate", - "damage" : 32767 + "id": "minecraft:polished_deepslate_wall", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:polished_deepslate" } }, - "output" : [ + "output": [ { - "legacyId" : -386, - "id" : "minecraft:polished_deepslate_wall", - "count" : 6, - "blockRuntimeId" : 6059 + "count": 6, + "blockState": "minecraft:polished_deepslate_wall;wall_connection_type_east=none;wall_connection_type_north=none;wall_connection_type_south=none;wall_connection_type_west=none;wall_post_bit=0" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:polished_diorite", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 3 + "id": "minecraft:polished_diorite", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone;stone_type=diorite" } }, - "output" : [ + "output": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "count" : 4, - "blockRuntimeId" : 6938 + "count": 4, + "blockState": "minecraft:stone;stone_type=diorite_smooth" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:polished_diorite_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 4 + "id": "minecraft:polished_diorite_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone;stone_type=diorite_smooth" } }, - "output" : [ + "output": [ { - "legacyId" : -173, - "id" : "minecraft:polished_diorite_stairs", - "count" : 4, - "blockRuntimeId" : 6221 + "count": 4, + "blockState": "minecraft:polished_diorite_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:polished_granite", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 1 + "id": "minecraft:polished_granite", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone;stone_type=granite" } }, - "output" : [ + "output": [ { - "legacyId" : 1, - "id" : "minecraft:stone", - "count" : 4, - "blockRuntimeId" : 6936 + "count": 4, + "blockState": "minecraft:stone;stone_type=granite_smooth" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:polished_granite_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 2 + "id": "minecraft:polished_granite_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone;stone_type=granite_smooth" } }, - "output" : [ + "output": [ { - "legacyId" : -172, - "id" : "minecraft:polished_granite_stairs", - "count" : 4, - "blockRuntimeId" : 6229 + "count": 4, + "blockState": "minecraft:polished_granite_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:prismarine", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 565, - "id" : "minecraft:prismarine_shard", - "damage" : 32767 + "id": "minecraft:prismarine", + "type": 1, + "input": { + "A": { + "id": "minecraft:prismarine_shard", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 168, - "id" : "minecraft:prismarine", - "blockRuntimeId" : 6281 + "blockState": "minecraft:prismarine" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:prismarine_bricks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 565, - "id" : "minecraft:prismarine_shard", - "damage" : 32767 + "id": "minecraft:prismarine_bricks", + "type": 1, + "input": { + "A": { + "id": "minecraft:prismarine_shard", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 168, - "id" : "minecraft:prismarine", - "blockRuntimeId" : 6283 + "blockState": "minecraft:prismarine;prismarine_block_type=bricks" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:prismarine_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 168, - "id" : "minecraft:prismarine" + "id": "minecraft:prismarine_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:prismarine" } }, - "output" : [ + "output": [ { - "legacyId" : -2, - "id" : "minecraft:prismarine_stairs", - "count" : 4, - "blockRuntimeId" : 6292 + "count": 4, + "blockState": "minecraft:prismarine_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:prismarine_stairs_bricks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 168, - "id" : "minecraft:prismarine", - "damage" : 2 + "id": "minecraft:prismarine_stairs_bricks", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:prismarine;prismarine_block_type=bricks" } }, - "output" : [ + "output": [ { - "legacyId" : -4, - "id" : "minecraft:prismarine_bricks_stairs", - "count" : 4, - "blockRuntimeId" : 6284 + "count": 4, + "blockState": "minecraft:prismarine_bricks_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:prismarine_stairs_dark", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 168, - "id" : "minecraft:prismarine", - "damage" : 1 + "id": "minecraft:prismarine_stairs_dark", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:prismarine;prismarine_block_type=dark" } }, - "output" : [ + "output": [ { - "legacyId" : -3, - "id" : "minecraft:dark_prismarine_stairs", - "count" : 4, - "blockRuntimeId" : 3986 + "count": 4, + "blockState": "minecraft:dark_prismarine_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:prismarine_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 168, - "id" : "minecraft:prismarine" + "id": "minecraft:prismarine_wall", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:prismarine" } }, - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "count" : 6, - "blockRuntimeId" : 1289 + "count": 6, + "blockState": "minecraft:cobblestone_wall;wall_block_type=prismarine" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:pumpkin_pie", - "type" : 0, - "input" : [ + "id": "minecraft:pumpkin_pie", + "type": 0, + "input": [ { - "legacyId" : 86, - "id" : "minecraft:pumpkin", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:pumpkin" }, { - "legacyId" : 416, - "id" : "minecraft:sugar", - "damage" : 32767 + "id": "minecraft:sugar", + "fuzzy": true }, { - "legacyId" : 390, - "id" : "minecraft:egg", - "damage" : 32767 + "id": "minecraft:egg", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 284, - "id" : "minecraft:pumpkin_pie" + "id": "minecraft:pumpkin_pie" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:pumpkin_seeds", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 86, - "id" : "minecraft:pumpkin", - "damage" : 32767 + "id": "minecraft:pumpkin_seeds", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:pumpkin" } }, - "output" : [ + "output": [ { - "legacyId" : 292, - "id" : "minecraft:pumpkin_seeds", - "count" : 4 + "id": "minecraft:pumpkin_seeds", + "count": 4 } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:purple_banner", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "id": "minecraft:purple_banner", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=purple" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 567, - "id" : "minecraft:banner", - "damage" : 5 + "id": "minecraft:banner", + "damage": 5 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:purple_carpet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "id": "minecraft:purple_candle", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:purple_dye", + "damage": 5 + } + ], + "output": [ + { + "blockState": "minecraft:purple_candle;candles=0;lit=0" + } + ], + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:purple_carpet", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=purple" } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 3, - "blockRuntimeId" : 933 + "count": 3, + "blockState": "minecraft:carpet;color=purple" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:purple_carpet_from_white", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 171, - "id" : "minecraft:carpet" + "id": "minecraft:purple_carpet_from_white", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:carpet" }, - "B" : { - "legacyId" : 400, - "id" : "minecraft:purple_dye" + "B": { + "id": "minecraft:purple_dye", + "damage": 5 } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 8, - "blockRuntimeId" : 933 + "count": 8, + "blockState": "minecraft:carpet;color=purple" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:purple_concrete_powder", - "type" : 0, - "input" : [ + "id": "minecraft:purple_concrete_powder", + "type": 0, + "input": [ { - "legacyId" : 400, - "id" : "minecraft:purple_dye" + "id": "minecraft:purple_dye", + "damage": 5 }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3629 + "count": 8, + "blockState": "minecraft:concrete_powder;color=purple" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:purple_dye", - "type" : 0, - "input" : [ + "id": "minecraft:purple_dye", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye" + "id": "minecraft:blue_dye", + "damage": 18 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye", + "damage": 1 } ], - "output" : [ + "output": [ { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "count" : 2 + "id": "minecraft:purple_dye", + "count": 2, + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:purple_dye_from_lapis_lazuli", - "type" : 0, - "input" : [ + "id": "minecraft:purple_dye_from_lapis_lazuli", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli" + "id": "minecraft:lapis_lazuli", + "damage": 4 }, { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye", + "damage": 1 } ], - "output" : [ + "output": [ { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "count" : 2 + "id": "minecraft:purple_dye", + "count": 2, + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:purple_stained_glass", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:purple_stained_glass", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 400, - "id" : "minecraft:purple_dye" + "B": { + "id": "minecraft:purple_dye", + "damage": 5 } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6852 + "count": 8, + "blockState": "minecraft:stained_glass;color=purple" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:purple_stained_glass_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "damage" : 10 + "id": "minecraft:purple_stained_glass_pane", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stained_glass;color=purple" } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 16, - "blockRuntimeId" : 6868 + "count": 16, + "blockState": "minecraft:stained_glass_pane;color=purple" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:purple_stained_glass_pane_from_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 102, - "id" : "minecraft:glass_pane", - "damage" : 32767 + "id": "minecraft:purple_stained_glass_pane_from_pane", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass_pane" }, - "B" : { - "legacyId" : 400, - "id" : "minecraft:purple_dye" + "B": { + "id": "minecraft:purple_dye", + "damage": 5 } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 8, - "blockRuntimeId" : 6868 + "count": 8, + "blockState": "minecraft:stained_glass_pane;color=purple" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:purple_stained_hardened_clay", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:purple_stained_hardened_clay", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 400, - "id" : "minecraft:purple_dye" + "B": { + "id": "minecraft:purple_dye", + "damage": 5 } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6884 + "count": 8, + "blockState": "minecraft:stained_hardened_clay;color=purple" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:purpur_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 559, - "id" : "minecraft:popped_chorus_fruit", - "damage" : 32767 + "id": "minecraft:purpur_block", + "type": 1, + "input": { + "A": { + "id": "minecraft:popped_chorus_fruit", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 201, - "id" : "minecraft:purpur_block", - "count" : 4, - "blockRuntimeId" : 6358 + "count": 4, + "blockState": "minecraft:purpur_block" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:purpur_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 201, - "id" : "minecraft:purpur_block", - "damage" : 32767 + "id": "minecraft:purpur_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:purpur_block" } }, - "output" : [ + "output": [ { - "legacyId" : 203, - "id" : "minecraft:purpur_stairs", - "count" : 4, - "blockRuntimeId" : 6370 + "count": 4, + "blockState": "minecraft:purpur_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:quartz_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 524, - "id" : "minecraft:quartz", - "damage" : 32767 + "id": "minecraft:quartz_block", + "type": 1, + "input": { + "A": { + "id": "minecraft:quartz", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 155, - "id" : "minecraft:quartz_block", - "blockRuntimeId" : 6378 + "blockState": "minecraft:quartz_block" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:quartz_bricks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 155, - "id" : "minecraft:quartz_block" + "id": "minecraft:quartz_bricks", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:quartz_block" } }, - "output" : [ + "output": [ { - "legacyId" : -304, - "id" : "minecraft:quartz_bricks", - "blockRuntimeId" : 6390 + "blockState": "minecraft:quartz_bricks" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:quartz_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 155, - "id" : "minecraft:quartz_block" + "id": "minecraft:quartz_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:quartz_block" } }, - "output" : [ + "output": [ { - "legacyId" : 156, - "id" : "minecraft:quartz_stairs", - "count" : 4, - "blockRuntimeId" : 6392 + "count": 4, + "blockState": "minecraft:quartz_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:rabbit_stew_from_brown_mushroom", - "type" : 0, - "input" : [ + "id": "minecraft:rabbit_stew_from_brown_mushroom", + "type": 0, + "input": [ { - "legacyId" : 321, - "id" : "minecraft:bowl", - "damage" : 32767 + "id": "minecraft:bowl", + "fuzzy": true }, { - "legacyId" : 281, - "id" : "minecraft:baked_potato", - "damage" : 32767 + "id": "minecraft:baked_potato", + "fuzzy": true }, { - "legacyId" : 279, - "id" : "minecraft:carrot", - "damage" : 32767 + "id": "minecraft:carrot", + "fuzzy": true }, { - "legacyId" : 39, - "id" : "minecraft:brown_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:brown_mushroom" }, { - "legacyId" : 289, - "id" : "minecraft:cooked_rabbit", - "damage" : 32767 + "id": "minecraft:cooked_rabbit", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 290, - "id" : "minecraft:rabbit_stew" + "id": "minecraft:rabbit_stew" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:rabbit_stew_from_red_mushroom", - "type" : 0, - "input" : [ + "id": "minecraft:rabbit_stew_from_red_mushroom", + "type": 0, + "input": [ { - "legacyId" : 321, - "id" : "minecraft:bowl", - "damage" : 32767 + "id": "minecraft:bowl", + "fuzzy": true }, { - "legacyId" : 281, - "id" : "minecraft:baked_potato", - "damage" : 32767 + "id": "minecraft:baked_potato", + "fuzzy": true }, { - "legacyId" : 279, - "id" : "minecraft:carrot", - "damage" : 32767 + "id": "minecraft:carrot", + "fuzzy": true }, { - "legacyId" : 40, - "id" : "minecraft:red_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:red_mushroom" }, { - "legacyId" : 289, - "id" : "minecraft:cooked_rabbit", - "damage" : 32767 + "id": "minecraft:cooked_rabbit", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 290, - "id" : "minecraft:rabbit_stew" + "id": "minecraft:rabbit_stew" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:rail", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:rail", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 66, - "id" : "minecraft:rail", - "count" : 16, - "blockRuntimeId" : 6400 + "count": 16, + "blockState": "minecraft:rail" } ], - "shape" : [ + "shape": [ "A A", "ABA", "A A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:raw_copper", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -452, - "id" : "minecraft:raw_copper_block", - "damage" : 32767 + "id": "minecraft:raw_copper", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:raw_copper_block" } }, - "output" : [ + "output": [ { - "legacyId" : 507, - "id" : "minecraft:raw_copper", - "count" : 9 + "legacyId": 507, + "id": "minecraft:raw_copper", + "count": 9 } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:raw_copper_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 507, - "id" : "minecraft:raw_copper", - "damage" : 32767 + "id": "minecraft:raw_copper_block", + "type": 1, + "input": { + "A": { + "legacyId": 507, + "id": "minecraft:raw_copper", + "damage": 32767 } }, - "output" : [ + "output": [ { - "legacyId" : -452, - "id" : "minecraft:raw_copper_block", - "blockRuntimeId" : 6410 + "blockState": "minecraft:raw_copper_block" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:raw_gold", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -453, - "id" : "minecraft:raw_gold_block", - "damage" : 32767 + "id": "minecraft:raw_gold", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:raw_gold_block" } }, - "output" : [ + "output": [ { - "legacyId" : 506, - "id" : "minecraft:raw_gold", - "count" : 9 + "legacyId": 506, + "id": "minecraft:raw_gold", + "count": 9 } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:raw_gold_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 506, - "id" : "minecraft:raw_gold", - "damage" : 32767 + "id": "minecraft:raw_gold_block", + "type": 1, + "input": { + "A": { + "legacyId": 506, + "id": "minecraft:raw_gold", + "damage": 32767 } }, - "output" : [ + "output": [ { - "legacyId" : -453, - "id" : "minecraft:raw_gold_block", - "blockRuntimeId" : 6411 + "blockState": "minecraft:raw_gold_block" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:raw_iron", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -451, - "id" : "minecraft:raw_iron_block", - "damage" : 32767 + "id": "minecraft:raw_iron", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:raw_iron_block" } }, - "output" : [ + "output": [ { - "legacyId" : 505, - "id" : "minecraft:raw_iron", - "count" : 9 + "legacyId": 505, + "id": "minecraft:raw_iron", + "count": 9 } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:raw_iron_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 505, - "id" : "minecraft:raw_iron", - "damage" : 32767 + "id": "minecraft:raw_iron_block", + "type": 1, + "input": { + "A": { + "legacyId": 505, + "id": "minecraft:raw_iron", + "damage": 32767 } }, - "output" : [ + "output": [ { - "legacyId" : -451, - "id" : "minecraft:raw_iron_block", - "blockRuntimeId" : 6412 + "blockState": "minecraft:raw_iron_block" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:red_banner", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "id": "minecraft:red_banner", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=red" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 567, - "id" : "minecraft:banner", - "damage" : 1 + "id": "minecraft:banner", + "damage": 1 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:red_carpet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "id": "minecraft:red_candle", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:red_dye", + "damage": 1 + } + ], + "output": [ + { + "blockState": "minecraft:red_candle;candles=0;lit=0" + } + ], + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:red_carpet", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=red" } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 3, - "blockRuntimeId" : 937 + "count": 3, + "blockState": "minecraft:carpet;color=red" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:red_carpet_from_white", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 171, - "id" : "minecraft:carpet" + "id": "minecraft:red_carpet_from_white", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:carpet" }, - "B" : { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "B": { + "id": "minecraft:red_dye", + "damage": 1 } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 8, - "blockRuntimeId" : 937 + "count": 8, + "blockState": "minecraft:carpet;color=red" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:red_concrete_powder", - "type" : 0, - "input" : [ + "id": "minecraft:red_concrete_powder", + "type": 0, + "input": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye", + "damage": 1 }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3633 + "count": 8, + "blockState": "minecraft:concrete_powder;color=red" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:red_dye_from_beetroot", - "type" : 0, - "input" : [ + "id": "minecraft:red_dye_from_beetroot", + "type": 0, + "input": [ { - "legacyId" : 285, - "id" : "minecraft:beetroot", - "damage" : 32767 + "id": "minecraft:beetroot", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:red_dye_from_poppy", - "type" : 0, - "input" : [ + "id": "minecraft:red_dye_from_poppy", + "type": 0, + "input": [ { - "legacyId" : 38, - "id" : "minecraft:red_flower" + "blockState": "minecraft:red_flower" } ], - "output" : [ + "output": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:red_dye_from_rose_bush", - "type" : 0, - "input" : [ + "id": "minecraft:red_dye_from_rose_bush", + "type": 0, + "input": [ { - "legacyId" : 175, - "id" : "minecraft:double_plant", - "damage" : 4 + "blockState": "minecraft:double_plant;double_plant_type=rose" } ], - "output" : [ + "output": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "count" : 2 + "id": "minecraft:red_dye", + "count": 2, + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:red_dye_from_tulip", - "type" : 0, - "input" : [ + "id": "minecraft:red_dye_from_tulip", + "type": 0, + "input": [ { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 4 + "blockState": "minecraft:red_flower;flower_type=tulip_red" } ], - "output" : [ + "output": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "id": "minecraft:red_dye", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:red_nether_brick", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 523, - "id" : "minecraft:netherbrick", - "damage" : 32767 + "id": "minecraft:red_nether_brick", + "type": 1, + "input": { + "A": { + "id": "minecraft:netherbrick", + "fuzzy": true }, - "B" : { - "legacyId" : 294, - "id" : "minecraft:nether_wart", - "damage" : 32767 + "B": { + "id": "minecraft:nether_wart", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 215, - "id" : "minecraft:red_nether_brick", - "blockRuntimeId" : 6447 + "blockState": "minecraft:red_nether_brick" } ], - "shape" : [ + "shape": [ "AB", "BA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:red_nether_brick_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 215, - "id" : "minecraft:red_nether_brick", - "damage" : 32767 + "id": "minecraft:red_nether_brick_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:red_nether_brick" } }, - "output" : [ + "output": [ { - "legacyId" : -184, - "id" : "minecraft:red_nether_brick_stairs", - "count" : 4, - "blockRuntimeId" : 6448 + "count": 4, + "blockState": "minecraft:red_nether_brick_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:red_nether_brick_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 215, - "id" : "minecraft:red_nether_brick", - "damage" : 32767 + "id": "minecraft:red_nether_brick_wall", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:red_nether_brick" } }, - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "count" : 6, - "blockRuntimeId" : 1291 + "count": 6, + "blockState": "minecraft:cobblestone_wall;wall_block_type=red_nether_brick" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:red_sandstone", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 12, - "id" : "minecraft:sand", - "damage" : 1 + "id": "minecraft:red_sandstone", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:sand;sand_type=red" } }, - "output" : [ + "output": [ { - "legacyId" : 179, - "id" : "minecraft:red_sandstone", - "blockRuntimeId" : 6456 + "blockState": "minecraft:red_sandstone" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:red_sandstone_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 179, - "id" : "minecraft:red_sandstone" + "id": "minecraft:red_sandstone_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:red_sandstone" } }, - "output" : [ + "output": [ { - "legacyId" : 180, - "id" : "minecraft:red_sandstone_stairs", - "count" : 4, - "blockRuntimeId" : 6460 + "count": 4, + "blockState": "minecraft:red_sandstone_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:red_sandstone_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 179, - "id" : "minecraft:red_sandstone" + "id": "minecraft:red_sandstone_wall", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:red_sandstone" } }, - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "count" : 6, - "blockRuntimeId" : 1290 + "count": 6, + "blockState": "minecraft:cobblestone_wall;wall_block_type=red_sandstone" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:red_stained_glass", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:red_stained_glass", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "B": { + "id": "minecraft:red_dye", + "damage": 1 } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6856 + "count": 8, + "blockState": "minecraft:stained_glass;color=red" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:red_stained_glass_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "damage" : 14 + "id": "minecraft:red_stained_glass_pane", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stained_glass;color=red" } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 16, - "blockRuntimeId" : 6872 + "count": 16, + "blockState": "minecraft:stained_glass_pane;color=red" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:red_stained_glass_pane_from_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 102, - "id" : "minecraft:glass_pane", - "damage" : 32767 + "id": "minecraft:red_stained_glass_pane_from_pane", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass_pane" }, - "B" : { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "B": { + "id": "minecraft:red_dye", + "damage": 1 } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 8, - "blockRuntimeId" : 6872 + "count": 8, + "blockState": "minecraft:stained_glass_pane;color=red" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:red_stained_hardened_clay", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:red_stained_hardened_clay", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 396, - "id" : "minecraft:red_dye" + "B": { + "id": "minecraft:red_dye", + "damage": 1 } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6888 + "count": 8, + "blockState": "minecraft:stained_hardened_clay;color=red" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:redstone", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 152, - "id" : "minecraft:redstone_block", - "damage" : 32767 + "id": "minecraft:redstone", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:redstone_block" } }, - "output" : [ + "output": [ { - "legacyId" : 373, - "id" : "minecraft:redstone", - "count" : 9 + "id": "minecraft:redstone", + "count": 9 } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:redstone_block", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "id": "minecraft:redstone_block", + "type": 1, + "input": { + "A": { + "id": "minecraft:redstone", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 152, - "id" : "minecraft:redstone_block", - "blockRuntimeId" : 6468 + "blockState": "minecraft:redstone_block" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:redstone_lamp", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "id": "minecraft:redstone_lamp", + "type": 1, + "input": { + "A": { + "id": "minecraft:redstone", + "fuzzy": true }, - "B" : { - "legacyId" : 89, - "id" : "minecraft:glowstone", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:glowstone" } }, - "output" : [ + "output": [ { - "legacyId" : 123, - "id" : "minecraft:redstone_lamp", - "blockRuntimeId" : 6469 + "blockState": "minecraft:redstone_lamp" } ], - "shape" : [ + "shape": [ " A ", "ABA", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:redstone_torch", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "id": "minecraft:redstone_torch", + "type": 1, + "input": { + "A": { + "id": "minecraft:redstone", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 76, - "id" : "minecraft:redstone_torch", - "blockRuntimeId" : 6471 + "blockState": "minecraft:redstone_torch" } ], - "shape" : [ + "shape": [ "A", "B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:repeater", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 76, - "id" : "minecraft:redstone_torch", - "damage" : 32767 + "id": "minecraft:repeater", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:redstone_torch" }, - "B" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "B": { + "id": "minecraft:redstone", + "fuzzy": true }, - "C" : { - "legacyId" : 1, - "id" : "minecraft:stone" + "C": { + "blockState": "minecraft:stone" } }, - "output" : [ + "output": [ { - "legacyId" : 419, - "id" : "minecraft:repeater" + "id": "minecraft:repeater" } ], - "shape" : [ + "shape": [ "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:respawn_anchor", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -289, - "id" : "minecraft:crying_obsidian", - "damage" : 32767 + "id": "minecraft:respawn_anchor", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crying_obsidian" }, - "B" : { - "legacyId" : 89, - "id" : "minecraft:glowstone", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:glowstone" } }, - "output" : [ + "output": [ { - "legacyId" : -272, - "id" : "minecraft:respawn_anchor", - "blockRuntimeId" : 6522 + "blockState": "minecraft:respawn_anchor" } ], - "shape" : [ + "shape": [ "AAA", "BBB", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:sandstone", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 12, - "id" : "minecraft:sand" + "id": "minecraft:sandstone", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:sand" } }, - "output" : [ + "output": [ { - "legacyId" : 24, - "id" : "minecraft:sandstone", - "blockRuntimeId" : 6529 + "blockState": "minecraft:sandstone" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:sandstone_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 24, - "id" : "minecraft:sandstone" + "id": "minecraft:sandstone_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:sandstone" } }, - "output" : [ + "output": [ { - "legacyId" : 128, - "id" : "minecraft:sandstone_stairs", - "count" : 4, - "blockRuntimeId" : 6533 + "count": 4, + "blockState": "minecraft:sandstone_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:sandstone_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 24, - "id" : "minecraft:sandstone" + "id": "minecraft:sandstone_wall", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:sandstone" } }, - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "count" : 6, - "blockRuntimeId" : 1283 + "count": 6, + "blockState": "minecraft:cobblestone_wall;wall_block_type=sandstone" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:scaffolding", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -163, - "id" : "minecraft:bamboo", - "damage" : 32767 + "id": "minecraft:scaffolding", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:bamboo" }, - "B" : { - "legacyId" : 326, - "id" : "minecraft:string", - "damage" : 32767 + "B": { + "id": "minecraft:string", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : -165, - "id" : "minecraft:scaffolding", - "count" : 6, - "blockRuntimeId" : 6553 + "count": 6, + "blockState": "minecraft:scaffolding" } ], - "shape" : [ + "shape": [ "ABA", "A A", "A A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:sealantern", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 565, - "id" : "minecraft:prismarine_shard", - "damage" : 32767 + "id": "minecraft:sealantern", + "type": 1, + "input": { + "A": { + "id": "minecraft:prismarine_shard", + "fuzzy": true }, - "B" : { - "legacyId" : 549, - "id" : "minecraft:prismarine_crystals", - "damage" : 32767 + "B": { + "id": "minecraft:prismarine_crystals", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 169, - "id" : "minecraft:sealantern", - "blockRuntimeId" : 6582 + "blockState": "minecraft:sea_lantern" } ], - "shape" : [ + "shape": [ "ABA", "BBB", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:shears", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:shears", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 421, - "id" : "minecraft:shears" + "id": "minecraft:shears" } ], - "shape" : [ + "shape": [ " A", "A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:shield", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "id": "minecraft:shield", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:planks" }, - "B" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "B": { + "id": "minecraft:iron_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 355, - "id" : "minecraft:shield" + "id": "minecraft:shield" } ], - "shape" : [ + "shape": [ "ABA", "AAA", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:shield_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:shield_from_crimson_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" }, - "B" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "B": { + "id": "minecraft:iron_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 355, - "id" : "minecraft:shield" + "id": "minecraft:shield" } ], - "shape" : [ + "shape": [ "ABA", "AAA", " A " ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:shield_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:shield_from_warped_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" }, - "B" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "B": { + "id": "minecraft:iron_ingot", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 355, - "id" : "minecraft:shield" + "id": "minecraft:shield" } ], - "shape" : [ + "shape": [ "ABA", "AAA", " A " ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:shulker_box", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 566, - "id" : "minecraft:shulker_shell", - "damage" : 32767 + "id": "minecraft:shulker_box", + "type": 1, + "input": { + "A": { + "id": "minecraft:shulker_shell", + "fuzzy": true }, - "B" : { - "legacyId" : 54, - "id" : "minecraft:chest", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:chest" } }, - "output" : [ + "output": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box", - "blockRuntimeId" : 7216 + "blockState": "minecraft:undyed_shulker_box" } ], - "shape" : [ + "shape": [ "A", "B", "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:sign_acacia", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 4 + "id": "minecraft:sign_acacia", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=acacia" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 579, - "id" : "minecraft:acacia_sign", - "count" : 3 + "id": "minecraft:acacia_sign", + "count": 3 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:sign_birch", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 2 + "id": "minecraft:sign_birch", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=birch" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 577, - "id" : "minecraft:birch_sign", - "count" : 3 + "id": "minecraft:birch_sign", + "count": 3 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:sign_darkoak", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 5 + "id": "minecraft:sign_darkoak", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=dark_oak" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 580, - "id" : "minecraft:dark_oak_sign", - "count" : 3 + "id": "minecraft:dark_oak_sign", + "count": 3 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:sign_jungle", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 3 + "id": "minecraft:sign_jungle", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=jungle" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 578, - "id" : "minecraft:jungle_sign", - "count" : 3 + "id": "minecraft:jungle_sign", + "count": 3 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:sign_oak", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks" + "id": "minecraft:sign_oak", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 358, - "id" : "minecraft:oak_sign", - "count" : 3 + "id": "minecraft:oak_sign", + "count": 3 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:sign_spruce", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 1 + "id": "minecraft:sign_spruce", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=spruce" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 576, - "id" : "minecraft:spruce_sign", - "count" : 3 + "id": "minecraft:spruce_sign", + "count": 3 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:slime", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 388, - "id" : "minecraft:slime_ball", - "damage" : 32767 + "id": "minecraft:slime", + "type": 1, + "input": { + "A": { + "id": "minecraft:slime_ball", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 165, - "id" : "minecraft:slime", - "blockRuntimeId" : 6618 + "blockState": "minecraft:slime" } ], - "shape" : [ + "shape": [ "AAA", "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:slime_ball", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 165, - "id" : "minecraft:slime", - "damage" : 32767 + "id": "minecraft:slime_ball", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:slime" } }, - "output" : [ + "output": [ { - "legacyId" : 388, - "id" : "minecraft:slime_ball", - "count" : 9 + "id": "minecraft:slime_ball", + "count": 9 } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:smithing_table", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:smithing_table", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : -202, - "id" : "minecraft:smithing_table", - "blockRuntimeId" : 6633 + "blockState": "minecraft:smithing_table" } ], - "shape" : [ + "shape": [ "AA", "BB", "BB" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:smithing_table_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:smithing_table_from_crimson_planks", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -202, - "id" : "minecraft:smithing_table", - "blockRuntimeId" : 6633 + "blockState": "minecraft:smithing_table" } ], - "shape" : [ + "shape": [ "AA", "BB", "BB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:smithing_table_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:smithing_table_from_warped_planks", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -202, - "id" : "minecraft:smithing_table", - "blockRuntimeId" : 6633 + "blockState": "minecraft:smithing_table" } ], - "shape" : [ + "shape": [ "AA", "BB", "BB" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:smoker", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 17, - "id" : "minecraft:log", - "damage" : 32767 + "id": "minecraft:smoker", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:log" }, - "B" : { - "legacyId" : 61, - "id" : "minecraft:furnace", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:furnace" } }, - "output" : [ + "output": [ { - "legacyId" : -198, - "id" : "minecraft:smoker", - "blockRuntimeId" : 6634 + "blockState": "minecraft:smoker" } ], - "shape" : [ + "shape": [ " A ", "ABA", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:smoker_from_crimson_stem", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -225, - "id" : "minecraft:crimson_stem", - "damage" : 32767 + "id": "minecraft:smoker_from_crimson_stem", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_stem" }, - "B" : { - "legacyId" : 61, - "id" : "minecraft:furnace", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:furnace" } }, - "output" : [ + "output": [ { - "legacyId" : -198, - "id" : "minecraft:smoker", - "blockRuntimeId" : 6634 + "blockState": "minecraft:smoker" } ], - "shape" : [ + "shape": [ " A ", "ABA", " A " ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:smoker_from_log2", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 162, - "id" : "minecraft:log2", - "damage" : 32767 + "id": "minecraft:smoker_from_log2", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:log2" }, - "B" : { - "legacyId" : 61, - "id" : "minecraft:furnace", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:furnace" } }, - "output" : [ + "output": [ { - "legacyId" : -198, - "id" : "minecraft:smoker", - "blockRuntimeId" : 6634 + "blockState": "minecraft:smoker" } ], - "shape" : [ + "shape": [ " A ", "ABA", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:smoker_from_stripped_acacia", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -8, - "id" : "minecraft:stripped_acacia_log", - "damage" : 32767 + "id": "minecraft:smoker_from_stripped_acacia", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_acacia_log" }, - "B" : { - "legacyId" : 61, - "id" : "minecraft:furnace", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:furnace" } }, - "output" : [ + "output": [ { - "legacyId" : -198, - "id" : "minecraft:smoker", - "blockRuntimeId" : 6634 + "blockState": "minecraft:smoker" } ], - "shape" : [ + "shape": [ " A ", "ABA", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:smoker_from_stripped_birch", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -6, - "id" : "minecraft:stripped_birch_log", - "damage" : 32767 + "id": "minecraft:smoker_from_stripped_birch", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_birch_log" }, - "B" : { - "legacyId" : 61, - "id" : "minecraft:furnace", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:furnace" } }, - "output" : [ + "output": [ { - "legacyId" : -198, - "id" : "minecraft:smoker", - "blockRuntimeId" : 6634 + "blockState": "minecraft:smoker" } ], - "shape" : [ + "shape": [ " A ", "ABA", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:smoker_from_stripped_crimson_stem", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -240, - "id" : "minecraft:stripped_crimson_stem", - "damage" : 32767 + "id": "minecraft:smoker_from_stripped_crimson_stem", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_crimson_stem" }, - "B" : { - "legacyId" : 61, - "id" : "minecraft:furnace", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:furnace" } }, - "output" : [ + "output": [ { - "legacyId" : -198, - "id" : "minecraft:smoker", - "blockRuntimeId" : 6634 + "blockState": "minecraft:smoker" } ], - "shape" : [ + "shape": [ " A ", "ABA", " A " ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:smoker_from_stripped_dark_oak", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -9, - "id" : "minecraft:stripped_dark_oak_log", - "damage" : 32767 + "id": "minecraft:smoker_from_stripped_dark_oak", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_dark_oak_log" }, - "B" : { - "legacyId" : 61, - "id" : "minecraft:furnace", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:furnace" } }, - "output" : [ + "output": [ { - "legacyId" : -198, - "id" : "minecraft:smoker", - "blockRuntimeId" : 6634 + "blockState": "minecraft:smoker" } ], - "shape" : [ + "shape": [ " A ", "ABA", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:smoker_from_stripped_jungle", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -7, - "id" : "minecraft:stripped_jungle_log", - "damage" : 32767 + "id": "minecraft:smoker_from_stripped_jungle", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_jungle_log" }, - "B" : { - "legacyId" : 61, - "id" : "minecraft:furnace", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:furnace" } }, - "output" : [ + "output": [ { - "legacyId" : -198, - "id" : "minecraft:smoker", - "blockRuntimeId" : 6634 + "blockState": "minecraft:smoker" } ], - "shape" : [ + "shape": [ " A ", "ABA", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:smoker_from_stripped_oak", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -10, - "id" : "minecraft:stripped_oak_log", - "damage" : 32767 + "id": "minecraft:smoker_from_stripped_oak", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_oak_log" }, - "B" : { - "legacyId" : 61, - "id" : "minecraft:furnace", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:furnace" } }, - "output" : [ + "output": [ { - "legacyId" : -198, - "id" : "minecraft:smoker", - "blockRuntimeId" : 6634 + "blockState": "minecraft:smoker" } ], - "shape" : [ + "shape": [ " A ", "ABA", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:smoker_from_stripped_spruce", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -5, - "id" : "minecraft:stripped_spruce_log", - "damage" : 32767 + "id": "minecraft:smoker_from_stripped_spruce", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_spruce_log" }, - "B" : { - "legacyId" : 61, - "id" : "minecraft:furnace", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:furnace" } }, - "output" : [ + "output": [ { - "legacyId" : -198, - "id" : "minecraft:smoker", - "blockRuntimeId" : 6634 + "blockState": "minecraft:smoker" } ], - "shape" : [ + "shape": [ " A ", "ABA", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:smoker_from_stripped_warped_stem", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -241, - "id" : "minecraft:stripped_warped_stem", - "damage" : 32767 + "id": "minecraft:smoker_from_stripped_warped_stem", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_warped_stem" }, - "B" : { - "legacyId" : 61, - "id" : "minecraft:furnace", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:furnace" } }, - "output" : [ + "output": [ { - "legacyId" : -198, - "id" : "minecraft:smoker", - "blockRuntimeId" : 6634 + "blockState": "minecraft:smoker" } ], - "shape" : [ + "shape": [ " A ", "ABA", " A " ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:smoker_from_warped_stem", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -226, - "id" : "minecraft:warped_stem", - "damage" : 32767 + "id": "minecraft:smoker_from_warped_stem", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_stem" }, - "B" : { - "legacyId" : 61, - "id" : "minecraft:furnace", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:furnace" } }, - "output" : [ + "output": [ { - "legacyId" : -198, - "id" : "minecraft:smoker", - "blockRuntimeId" : 6634 + "blockState": "minecraft:smoker" } ], - "shape" : [ + "shape": [ " A ", "ABA", " A " ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:smooth_quartz_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 155, - "id" : "minecraft:quartz_block", - "damage" : 3 + "id": "minecraft:smooth_quartz_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:quartz_block;chisel_type=smooth" } }, - "output" : [ + "output": [ { - "legacyId" : -185, - "id" : "minecraft:smooth_quartz_stairs", - "count" : 4, - "blockRuntimeId" : 6641 + "count": 4, + "blockState": "minecraft:smooth_quartz_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:smooth_red_sandstone", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 179, - "id" : "minecraft:red_sandstone" + "id": "minecraft:smooth_red_sandstone", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:red_sandstone" } }, - "output" : [ + "output": [ { - "legacyId" : 179, - "id" : "minecraft:red_sandstone", - "count" : 4, - "blockRuntimeId" : 6458 + "count": 4, + "blockState": "minecraft:red_sandstone;sand_stone_type=cut" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:smooth_red_sandstone_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 179, - "id" : "minecraft:red_sandstone", - "damage" : 3 + "id": "minecraft:smooth_red_sandstone_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:red_sandstone;sand_stone_type=smooth" } }, - "output" : [ + "output": [ { - "legacyId" : -176, - "id" : "minecraft:smooth_red_sandstone_stairs", - "count" : 4, - "blockRuntimeId" : 6649 + "count": 4, + "blockState": "minecraft:smooth_red_sandstone_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:smooth_sandstone", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 24, - "id" : "minecraft:sandstone" + "id": "minecraft:smooth_sandstone", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:sandstone" } }, - "output" : [ + "output": [ { - "legacyId" : 24, - "id" : "minecraft:sandstone", - "count" : 4, - "blockRuntimeId" : 6531 + "count": 4, + "blockState": "minecraft:sandstone;sand_stone_type=cut" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:smooth_sandstone_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 24, - "id" : "minecraft:sandstone", - "damage" : 3 + "id": "minecraft:smooth_sandstone_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:sandstone;sand_stone_type=smooth" } }, - "output" : [ + "output": [ { - "legacyId" : -177, - "id" : "minecraft:smooth_sandstone_stairs", - "count" : 4, - "blockRuntimeId" : 6657 + "count": 4, + "blockState": "minecraft:smooth_sandstone_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:snow", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 374, - "id" : "minecraft:snowball", - "damage" : 32767 + "id": "minecraft:snow", + "type": 1, + "input": { + "A": { + "id": "minecraft:snowball", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 80, - "id" : "minecraft:snow", - "blockRuntimeId" : 6666 + "blockState": "minecraft:snow" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:snow_layer", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 80, - "id" : "minecraft:snow", - "damage" : 32767 + "id": "minecraft:snow_layer", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:snow" } }, - "output" : [ + "output": [ { - "legacyId" : 78, - "id" : "minecraft:snow_layer", - "count" : 6, - "blockRuntimeId" : 6667 + "count": 6, + "blockState": "minecraft:snow_layer" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:soul_campfire_from_crimson_stem", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_crimson_stem", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -236, - "id" : "minecraft:soul_soil", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_soil" }, - "C" : { - "legacyId" : -225, - "id" : "minecraft:crimson_stem", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:crimson_stem" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_crimson_stem2", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_crimson_stem2", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 88, - "id" : "minecraft:soul_sand", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_sand" }, - "C" : { - "legacyId" : -225, - "id" : "minecraft:crimson_stem", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:crimson_stem" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_soul_sand", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_soul_sand", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 88, - "id" : "minecraft:soul_sand", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_sand" }, - "C" : { - "legacyId" : 17, - "id" : "minecraft:log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:log" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:soul_campfire_from_soul_sand_and_log2", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_soul_sand_and_log2", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 88, - "id" : "minecraft:soul_sand", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_sand" }, - "C" : { - "legacyId" : 162, - "id" : "minecraft:log2", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:log2" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_soul_sand_and_stripped_acacia_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_soul_sand_and_stripped_acacia_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 88, - "id" : "minecraft:soul_sand", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_sand" }, - "C" : { - "legacyId" : -8, - "id" : "minecraft:stripped_acacia_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_acacia_log" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_soul_sand_and_stripped_birch_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_soul_sand_and_stripped_birch_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 88, - "id" : "minecraft:soul_sand", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_sand" }, - "C" : { - "legacyId" : -6, - "id" : "minecraft:stripped_birch_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_birch_log" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_soul_sand_and_stripped_dark_oak_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_soul_sand_and_stripped_dark_oak_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 88, - "id" : "minecraft:soul_sand", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_sand" }, - "C" : { - "legacyId" : -9, - "id" : "minecraft:stripped_dark_oak_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_dark_oak_log" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_soul_sand_and_stripped_jungle_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_soul_sand_and_stripped_jungle_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 88, - "id" : "minecraft:soul_sand", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_sand" }, - "C" : { - "legacyId" : -7, - "id" : "minecraft:stripped_jungle_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_jungle_log" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_soul_sand_and_stripped_oak_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_soul_sand_and_stripped_oak_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 88, - "id" : "minecraft:soul_sand", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_sand" }, - "C" : { - "legacyId" : -10, - "id" : "minecraft:stripped_oak_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_oak_log" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_soul_sand_and_stripped_spruce_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_soul_sand_and_stripped_spruce_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 88, - "id" : "minecraft:soul_sand", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_sand" }, - "C" : { - "legacyId" : -5, - "id" : "minecraft:stripped_spruce_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_spruce_log" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_soul_sand_and_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_soul_sand_and_wood", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 88, - "id" : "minecraft:soul_sand", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_sand" }, - "C" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:wood" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_soul_soil", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_soul_soil", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -236, - "id" : "minecraft:soul_soil", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_soil" }, - "C" : { - "legacyId" : 17, - "id" : "minecraft:log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:log" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:soul_campfire_from_soul_soil_and_log2", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_soul_soil_and_log2", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -236, - "id" : "minecraft:soul_soil", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_soil" }, - "C" : { - "legacyId" : 162, - "id" : "minecraft:log2", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:log2" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_soul_soil_and_stripped_acacia_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_soul_soil_and_stripped_acacia_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -236, - "id" : "minecraft:soul_soil", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_soil" }, - "C" : { - "legacyId" : -8, - "id" : "minecraft:stripped_acacia_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_acacia_log" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_soul_soil_and_stripped_birch_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_soul_soil_and_stripped_birch_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -236, - "id" : "minecraft:soul_soil", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_soil" }, - "C" : { - "legacyId" : -6, - "id" : "minecraft:stripped_birch_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_birch_log" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_soul_soil_and_stripped_dark_oak_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_soul_soil_and_stripped_dark_oak_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -236, - "id" : "minecraft:soul_soil", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_soil" }, - "C" : { - "legacyId" : -9, - "id" : "minecraft:stripped_dark_oak_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_dark_oak_log" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_soul_soil_and_stripped_jungle_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_soul_soil_and_stripped_jungle_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -236, - "id" : "minecraft:soul_soil", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_soil" }, - "C" : { - "legacyId" : -7, - "id" : "minecraft:stripped_jungle_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_jungle_log" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_soul_soil_and_stripped_oak_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_soul_soil_and_stripped_oak_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -236, - "id" : "minecraft:soul_soil", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_soil" }, - "C" : { - "legacyId" : -10, - "id" : "minecraft:stripped_oak_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_oak_log" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_soul_soil_and_stripped_spruce_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_soul_soil_and_stripped_spruce_log", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -236, - "id" : "minecraft:soul_soil", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_soil" }, - "C" : { - "legacyId" : -5, - "id" : "minecraft:stripped_spruce_log", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_spruce_log" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_soul_soil_and_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_soul_soil_and_wood", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -236, - "id" : "minecraft:soul_soil", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_soil" }, - "C" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:wood" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_stripped_crimson_stem", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_stripped_crimson_stem", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -236, - "id" : "minecraft:soul_soil", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_soil" }, - "C" : { - "legacyId" : -240, - "id" : "minecraft:stripped_crimson_stem", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_crimson_stem" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_stripped_crimson_stem2", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_stripped_crimson_stem2", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 88, - "id" : "minecraft:soul_sand", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_sand" }, - "C" : { - "legacyId" : -240, - "id" : "minecraft:stripped_crimson_stem", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_crimson_stem" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_stripped_warped_stem", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_stripped_warped_stem", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -236, - "id" : "minecraft:soul_soil", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_soil" }, - "C" : { - "legacyId" : -241, - "id" : "minecraft:stripped_warped_stem", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_warped_stem" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_stripped_warped_stem2", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_stripped_warped_stem2", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 88, - "id" : "minecraft:soul_sand", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_sand" }, - "C" : { - "legacyId" : -241, - "id" : "minecraft:stripped_warped_stem", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:stripped_warped_stem" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_warped_stem", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_warped_stem", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -236, - "id" : "minecraft:soul_soil", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_soil" }, - "C" : { - "legacyId" : -226, - "id" : "minecraft:warped_stem", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:warped_stem" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_campfire_from_warped_stem2", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:soul_campfire_from_warped_stem2", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 88, - "id" : "minecraft:soul_sand", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_sand" }, - "C" : { - "legacyId" : -226, - "id" : "minecraft:warped_stem", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:warped_stem" } }, - "output" : [ + "output": [ { - "legacyId" : 620, - "id" : "minecraft:soul_campfire" + "id": "minecraft:soul_campfire" } ], - "shape" : [ + "shape": [ " A ", "ABA", "CCC" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:soul_lantern", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "id": "minecraft:soul_lantern", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "B" : { - "legacyId" : -268, - "id" : "minecraft:soul_torch", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:soul_torch" } }, - "output" : [ + "output": [ { - "legacyId" : -269, - "id" : "minecraft:soul_lantern", - "blockRuntimeId" : 6707 + "blockState": "minecraft:soul_lantern" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:soul_torch_from_soul_sand", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "id": "minecraft:soul_torch_from_soul_sand", + "type": 1, + "input": { + "A": { + "id": "minecraft:coal" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true }, - "C" : { - "legacyId" : 88, - "id" : "minecraft:soul_sand", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:soul_sand" } }, - "output" : [ + "output": [ { - "legacyId" : -268, - "id" : "minecraft:soul_torch", - "count" : 4, - "blockRuntimeId" : 6711 + "count": 4, + "blockState": "minecraft:soul_torch" } ], - "shape" : [ + "shape": [ "A", "B", "C" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:soul_torch_from_soul_soil", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "id": "minecraft:soul_torch_from_soul_soil", + "type": 1, + "input": { + "A": { + "id": "minecraft:coal" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true }, - "C" : { - "legacyId" : -236, - "id" : "minecraft:soul_soil", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:soul_soil" } }, - "output" : [ + "output": [ { - "legacyId" : -268, - "id" : "minecraft:soul_torch", - "count" : 4, - "blockRuntimeId" : 6711 + "count": 4, + "blockState": "minecraft:soul_torch" } ], - "shape" : [ + "shape": [ "A", "B", "C" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:speckled_melon", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "id": "minecraft:speckled_melon", + "type": 1, + "input": { + "A": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "B" : { - "legacyId" : 272, - "id" : "minecraft:melon_slice", - "damage" : 32767 + "B": { + "id": "minecraft:melon_slice", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 434, - "id" : "minecraft:glistering_melon_slice" + "id": "minecraft:glistering_melon_slice" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:spruce_boat", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 1 + "id": "minecraft:spruce_boat", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=spruce" }, - "B" : { - "legacyId" : 309, - "id" : "minecraft:wooden_shovel", - "damage" : 32767 + "B": { + "id": "minecraft:wooden_shovel", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 378, - "id" : "minecraft:spruce_boat" + "id": "minecraft:spruce_boat", + "damage": 1 } ], - "shape" : [ + "shape": [ "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:spruce_door", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 1 + "id": "minecraft:spruce_door", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=spruce" } }, - "output" : [ + "output": [ { - "legacyId" : 553, - "id" : "minecraft:spruce_door", - "count" : 3 + "id": "minecraft:spruce_door", + "count": 3 } ], - "shape" : [ + "shape": [ "AA", "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:spruce_fence", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 1 + "id": "minecraft:spruce_fence", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=spruce" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 85, - "id" : "minecraft:fence", - "count" : 3, - "blockRuntimeId" : 4724 + "count": 3, + "blockState": "minecraft:fence;wood_type=spruce" } ], - "shape" : [ + "shape": [ "ABA", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:spruce_fence_gate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:spruce_fence_gate", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 1 + "B": { + "blockState": "minecraft:planks;wood_type=spruce" } }, - "output" : [ + "output": [ { - "legacyId" : 183, - "id" : "minecraft:spruce_fence_gate", - "blockRuntimeId" : 6764 + "blockState": "minecraft:spruce_fence_gate" } ], - "shape" : [ + "shape": [ "ABA", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:spruce_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 17, - "id" : "minecraft:log", - "damage" : 1 + "id": "minecraft:spruce_planks", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:log;old_log_type=spruce" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5641 + "count": 4, + "blockState": "minecraft:planks;wood_type=spruce" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:spruce_planks_from_stripped", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -5, - "id" : "minecraft:stripped_spruce_log", - "damage" : 32767 + "id": "minecraft:spruce_planks_from_stripped", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_spruce_log" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5641 + "count": 4, + "blockState": "minecraft:planks;wood_type=spruce" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:spruce_planks_from_stripped_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 9 + "id": "minecraft:spruce_planks_from_stripped_wood", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wood;stripped_bit=1;wood_type=spruce" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5641 + "count": 4, + "blockState": "minecraft:planks;wood_type=spruce" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:spruce_planks_from_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 1 + "id": "minecraft:spruce_planks_from_wood", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wood;wood_type=spruce" } }, - "output" : [ + "output": [ { - "legacyId" : 5, - "id" : "minecraft:planks", - "count" : 4, - "blockRuntimeId" : 5641 + "count": 4, + "blockState": "minecraft:planks;wood_type=spruce" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:spruce_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 1 + "id": "minecraft:spruce_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=spruce" } }, - "output" : [ + "output": [ { - "legacyId" : 134, - "id" : "minecraft:spruce_stairs", - "count" : 4, - "blockRuntimeId" : 6796 + "count": 4, + "blockState": "minecraft:spruce_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:spruce_wood", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 17, - "id" : "minecraft:log", - "damage" : 1 + "id": "minecraft:spruce_wood", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:log;old_log_type=spruce" } }, - "output" : [ + "output": [ { - "legacyId" : -212, - "id" : "minecraft:wood", - "count" : 3, - "blockRuntimeId" : 7552 + "count": 3, + "blockState": "minecraft:wood;wood_type=spruce" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:spruce_wood_stripped", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -5, - "id" : "minecraft:stripped_spruce_log", - "damage" : 32767 + "id": "minecraft:spruce_wood_stripped", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_spruce_log" } }, - "output" : [ + "output": [ { - "legacyId" : -212, - "id" : "minecraft:wood", - "count" : 3, - "blockRuntimeId" : 7558 + "count": 3, + "blockState": "minecraft:wood;stripped_bit=1;wood_type=spruce" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:spruce_wooden_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 1 + "id": "minecraft:spruce_wooden_slab", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=spruce" } }, - "output" : [ + "output": [ { - "legacyId" : 158, - "id" : "minecraft:wooden_slab", - "count" : 6, - "blockRuntimeId" : 7648 + "count": 6, + "blockState": "minecraft:wooden_slab;wood_type=spruce" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:spyglass", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 623, - "id" : "minecraft:amethyst_shard", - "damage" : 32767 + "id": "minecraft:spyglass", + "type": 1, + "input": { + "A": { + "legacyId": 624, + "id": "minecraft:amethyst_shard", + "damage": 32767 }, - "B" : { - "legacyId" : 504, - "id" : "minecraft:copper_ingot", - "damage" : 32767 + "B": { + "legacyId": 504, + "id": "minecraft:copper_ingot", + "damage": 32767 } }, - "output" : [ + "output": [ { - "legacyId" : 624, - "id" : "minecraft:spyglass" + "id": "minecraft:spyglass" } ], - "shape" : [ + "shape": [ "A", "B", "B" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:stick_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:stick_from_crimson_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 320, - "id" : "minecraft:stick", - "count" : 4 + "id": "minecraft:stick", + "count": 4 } ], - "shape" : [ + "shape": [ "A", "A" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:stick_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:stick_from_warped_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 320, - "id" : "minecraft:stick", - "count" : 4 + "id": "minecraft:stick", + "count": 4 } ], - "shape" : [ + "shape": [ "A", "A" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:sticky_piston", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 388, - "id" : "minecraft:slime_ball", - "damage" : 32767 + "id": "minecraft:sticky_piston", + "type": 1, + "input": { + "A": { + "id": "minecraft:slime_ball", + "fuzzy": true }, - "B" : { - "legacyId" : 33, - "id" : "minecraft:piston", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:piston" } }, - "output" : [ + "output": [ { - "legacyId" : 29, - "id" : "minecraft:sticky_piston", - "blockRuntimeId" : 6923 + "blockState": "minecraft:sticky_piston;facing_direction=1" } ], - "shape" : [ + "shape": [ "A", "B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:stone_axe", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : 32767 + "id": "minecraft:stone_axe", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobblestone" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 315, - "id" : "minecraft:stone_axe" + "id": "minecraft:stone_axe" } ], - "shape" : [ + "shape": [ "AA", "AB", " B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:stone_axe_from_blackstone", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "id": "minecraft:stone_axe_from_blackstone", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:blackstone" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 315, - "id" : "minecraft:stone_axe" + "id": "minecraft:stone_axe" } ], - "shape" : [ + "shape": [ "AA", "AB", " B" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:stone_axe_from_cobbled_deepslate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate", - "damage" : 32767 + "id": "minecraft:stone_axe_from_cobbled_deepslate", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobbled_deepslate" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 315, - "id" : "minecraft:stone_axe" + "id": "minecraft:stone_axe" } ], - "shape" : [ + "shape": [ "AA", "AB", " B" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:stone_brick_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 98, - "id" : "minecraft:stonebrick" + "id": "minecraft:stone_brick_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stonebrick" } }, - "output" : [ + "output": [ { - "legacyId" : 109, - "id" : "minecraft:stone_brick_stairs", - "count" : 4, - "blockRuntimeId" : 6941 + "count": 4, + "blockState": "minecraft:stone_brick_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:stone_brick_wall", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 98, - "id" : "minecraft:stonebrick" + "id": "minecraft:stone_brick_wall", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stonebrick" } }, - "output" : [ + "output": [ { - "legacyId" : 139, - "id" : "minecraft:cobblestone_wall", - "count" : 6, - "blockRuntimeId" : 1285 + "count": 6, + "blockState": "minecraft:cobblestone_wall;wall_block_type=stone_brick" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:stone_button", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone" + "id": "minecraft:stone_button", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone" } }, - "output" : [ + "output": [ { - "legacyId" : 77, - "id" : "minecraft:stone_button", - "blockRuntimeId" : 6949 + "blockState": "minecraft:stone_button" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:stone_hoe", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : 32767 + "id": "minecraft:stone_hoe", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobblestone" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 330, - "id" : "minecraft:stone_hoe" + "id": "minecraft:stone_hoe" } ], - "shape" : [ + "shape": [ "AA", " B", " B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:stone_hoe_from_blackstone", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "id": "minecraft:stone_hoe_from_blackstone", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:blackstone" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 330, - "id" : "minecraft:stone_hoe" + "id": "minecraft:stone_hoe" } ], - "shape" : [ + "shape": [ "AA", " B", " B" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:stone_hoe_from_cobbled_deepslate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate", - "damage" : 32767 + "id": "minecraft:stone_hoe_from_cobbled_deepslate", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobbled_deepslate" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 330, - "id" : "minecraft:stone_hoe" + "id": "minecraft:stone_hoe" } ], - "shape" : [ + "shape": [ "AA", " B", " B" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:stone_pickaxe", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : 32767 + "id": "minecraft:stone_pickaxe", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobblestone" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 314, - "id" : "minecraft:stone_pickaxe" + "id": "minecraft:stone_pickaxe" } ], - "shape" : [ + "shape": [ "AAA", " B ", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:stone_pickaxe_from_blackstone", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "id": "minecraft:stone_pickaxe_from_blackstone", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:blackstone" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 314, - "id" : "minecraft:stone_pickaxe" + "id": "minecraft:stone_pickaxe" } ], - "shape" : [ + "shape": [ "AAA", " B ", " B " ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:stone_pickaxe_from_cobbled_deepslate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate", - "damage" : 32767 + "id": "minecraft:stone_pickaxe_from_cobbled_deepslate", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobbled_deepslate" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 314, - "id" : "minecraft:stone_pickaxe" + "id": "minecraft:stone_pickaxe" } ], - "shape" : [ + "shape": [ "AAA", " B ", " B " ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:stone_pressure_plate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone" + "id": "minecraft:stone_pressure_plate", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone" } }, - "output" : [ + "output": [ { - "legacyId" : 70, - "id" : "minecraft:stone_pressure_plate", - "blockRuntimeId" : 6961 + "blockState": "minecraft:stone_pressure_plate" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:stone_shovel", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : 32767 + "id": "minecraft:stone_shovel", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobblestone" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 313, - "id" : "minecraft:stone_shovel" + "id": "minecraft:stone_shovel" } ], - "shape" : [ + "shape": [ "A", "B", "B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:stone_shovel_from_blackstone", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "id": "minecraft:stone_shovel_from_blackstone", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:blackstone" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 313, - "id" : "minecraft:stone_shovel" + "id": "minecraft:stone_shovel" } ], - "shape" : [ + "shape": [ "A", "B", "B" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:stone_shovel_from_cobbled_deepslate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate", - "damage" : 32767 + "id": "minecraft:stone_shovel_from_cobbled_deepslate", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobbled_deepslate" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 313, - "id" : "minecraft:stone_shovel" + "id": "minecraft:stone_shovel" } ], - "shape" : [ + "shape": [ "A", "B", "B" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:stone_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone" + "id": "minecraft:stone_stairs", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone" } }, - "output" : [ + "output": [ { - "legacyId" : -180, - "id" : "minecraft:normal_stone_stairs", - "count" : 4, - "blockRuntimeId" : 5571 + "count": 4, + "blockState": "minecraft:normal_stone_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:stone_sword", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : 32767 + "id": "minecraft:stone_sword", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobblestone" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 312, - "id" : "minecraft:stone_sword" + "id": "minecraft:stone_sword" } ], - "shape" : [ + "shape": [ "A", "A", "B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:stone_sword_from_blackstone", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -273, - "id" : "minecraft:blackstone", - "damage" : 32767 + "id": "minecraft:stone_sword_from_blackstone", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:blackstone" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 312, - "id" : "minecraft:stone_sword" + "id": "minecraft:stone_sword" } ], - "shape" : [ + "shape": [ "A", "A", "B" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:stone_sword_from_cobbled_deepslate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate", - "damage" : 32767 + "id": "minecraft:stone_sword_from_cobbled_deepslate", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:cobbled_deepslate" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 312, - "id" : "minecraft:stone_sword" + "id": "minecraft:stone_sword" } ], - "shape" : [ + "shape": [ "A", "A", "B" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:stonebrick", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone" + "id": "minecraft:stonebrick", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone" } }, - "output" : [ + "output": [ { - "legacyId" : 98, - "id" : "minecraft:stonebrick", - "count" : 4, - "blockRuntimeId" : 7043 + "count": 4, + "blockState": "minecraft:stonebrick" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:stonecutter", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:stonecutter", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:stone" } }, - "output" : [ + "output": [ { - "legacyId" : -197, - "id" : "minecraft:stonecutter_block", - "blockRuntimeId" : 7049 + "blockState": "minecraft:stonecutter_block" } ], - "shape" : [ + "shape": [ " A ", "BBB" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:string_to_wool", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 326, - "id" : "minecraft:string", - "damage" : 32767 + "id": "minecraft:string_to_wool", + "type": 1, + "input": { + "A": { + "id": "minecraft:string", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:stripped_crimson_hyphae", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -240, - "id" : "minecraft:stripped_crimson_stem", - "damage" : 32767 + "id": "minecraft:stripped_crimson_hyphae", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_crimson_stem" } }, - "output" : [ + "output": [ { - "legacyId" : -300, - "id" : "minecraft:stripped_crimson_hyphae", - "count" : 3, - "blockRuntimeId" : 7061 + "count": 3, + "blockState": "minecraft:stripped_crimson_hyphae" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:stripped_warped_hyphae", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -241, - "id" : "minecraft:stripped_warped_stem", - "damage" : 32767 + "id": "minecraft:stripped_warped_hyphae", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_warped_stem" } }, - "output" : [ + "output": [ { - "legacyId" : -301, - "id" : "minecraft:stripped_warped_hyphae", - "count" : 3, - "blockRuntimeId" : 7079 + "count": 3, + "blockState": "minecraft:stripped_warped_hyphae" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:sugar", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 385, - "id" : "minecraft:sugar_cane", - "damage" : 32767 + "id": "minecraft:sugar", + "type": 1, + "input": { + "A": { + "id": "minecraft:sugar_cane", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 416, - "id" : "minecraft:sugar" + "id": "minecraft:sugar" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:suspicious_stew_from_allium", - "type" : 0, - "input" : [ + "id": "minecraft:suspicious_stew_from_allium", + "type": 0, + "input": [ { - "legacyId" : 39, - "id" : "minecraft:brown_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:brown_mushroom" }, { - "legacyId" : 40, - "id" : "minecraft:red_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:red_mushroom" }, { - "legacyId" : 321, - "id" : "minecraft:bowl", - "damage" : 32767 + "id": "minecraft:bowl", + "fuzzy": true }, { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 2 + "blockState": "minecraft:red_flower;flower_type=allium" } ], - "output" : [ + "output": [ { - "legacyId" : 589, - "id" : "minecraft:suspicious_stew", - "damage" : 7 + "id": "minecraft:suspicious_stew", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:suspicious_stew_from_azure_bluet", - "type" : 0, - "input" : [ + "id": "minecraft:suspicious_stew_from_azure_bluet", + "type": 0, + "input": [ { - "legacyId" : 39, - "id" : "minecraft:brown_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:brown_mushroom" }, { - "legacyId" : 40, - "id" : "minecraft:red_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:red_mushroom" }, { - "legacyId" : 321, - "id" : "minecraft:bowl", - "damage" : 32767 + "id": "minecraft:bowl", + "fuzzy": true }, { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 3 + "blockState": "minecraft:red_flower;flower_type=houstonia" } ], - "output" : [ + "output": [ { - "legacyId" : 589, - "id" : "minecraft:suspicious_stew", - "damage" : 3 + "id": "minecraft:suspicious_stew", + "damage": 3 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:suspicious_stew_from_blue_orchid", - "type" : 0, - "input" : [ + "id": "minecraft:suspicious_stew_from_blue_orchid", + "type": 0, + "input": [ { - "legacyId" : 39, - "id" : "minecraft:brown_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:brown_mushroom" }, { - "legacyId" : 40, - "id" : "minecraft:red_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:red_mushroom" }, { - "legacyId" : 321, - "id" : "minecraft:bowl", - "damage" : 32767 + "id": "minecraft:bowl", + "fuzzy": true }, { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 1 + "blockState": "minecraft:red_flower;flower_type=orchid" } ], - "output" : [ + "output": [ { - "legacyId" : 589, - "id" : "minecraft:suspicious_stew", - "damage" : 6 + "id": "minecraft:suspicious_stew", + "damage": 6 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:suspicious_stew_from_cornflower", - "type" : 0, - "input" : [ + "id": "minecraft:suspicious_stew_from_cornflower", + "type": 0, + "input": [ { - "legacyId" : 39, - "id" : "minecraft:brown_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:brown_mushroom" }, { - "legacyId" : 40, - "id" : "minecraft:red_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:red_mushroom" }, { - "legacyId" : 321, - "id" : "minecraft:bowl", - "damage" : 32767 + "id": "minecraft:bowl", + "fuzzy": true }, { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 9 + "blockState": "minecraft:red_flower;flower_type=cornflower" } ], - "output" : [ + "output": [ { - "legacyId" : 589, - "id" : "minecraft:suspicious_stew", - "damage" : 1 + "id": "minecraft:suspicious_stew", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:suspicious_stew_from_dandelion", - "type" : 0, - "input" : [ + "id": "minecraft:suspicious_stew_from_dandelion", + "type": 0, + "input": [ { - "legacyId" : 39, - "id" : "minecraft:brown_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:brown_mushroom" }, { - "legacyId" : 40, - "id" : "minecraft:red_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:red_mushroom" }, { - "legacyId" : 321, - "id" : "minecraft:bowl", - "damage" : 32767 + "id": "minecraft:bowl", + "fuzzy": true }, { - "legacyId" : 37, - "id" : "minecraft:yellow_flower", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:yellow_flower" } ], - "output" : [ + "output": [ { - "legacyId" : 589, - "id" : "minecraft:suspicious_stew", - "damage" : 5 + "id": "minecraft:suspicious_stew", + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:suspicious_stew_from_lily_of_the_valley", - "type" : 0, - "input" : [ + "id": "minecraft:suspicious_stew_from_lily_of_the_valley", + "type": 0, + "input": [ { - "legacyId" : 39, - "id" : "minecraft:brown_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:brown_mushroom" }, { - "legacyId" : 40, - "id" : "minecraft:red_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:red_mushroom" }, { - "legacyId" : 321, - "id" : "minecraft:bowl", - "damage" : 32767 + "id": "minecraft:bowl", + "fuzzy": true }, { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 10 + "blockState": "minecraft:red_flower;flower_type=lily_of_the_valley" } ], - "output" : [ + "output": [ { - "legacyId" : 589, - "id" : "minecraft:suspicious_stew", - "damage" : 4 + "id": "minecraft:suspicious_stew", + "damage": 4 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:suspicious_stew_from_oxeye_daisy", - "type" : 0, - "input" : [ + "id": "minecraft:suspicious_stew_from_oxeye_daisy", + "type": 0, + "input": [ { - "legacyId" : 39, - "id" : "minecraft:brown_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:brown_mushroom" }, { - "legacyId" : 40, - "id" : "minecraft:red_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:red_mushroom" }, { - "legacyId" : 321, - "id" : "minecraft:bowl", - "damage" : 32767 + "id": "minecraft:bowl", + "fuzzy": true }, { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 8 + "blockState": "minecraft:red_flower;flower_type=oxeye" } ], - "output" : [ + "output": [ { - "legacyId" : 589, - "id" : "minecraft:suspicious_stew", - "damage" : 8 + "id": "minecraft:suspicious_stew", + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:suspicious_stew_from_poppy", - "type" : 0, - "input" : [ + "id": "minecraft:suspicious_stew_from_poppy", + "type": 0, + "input": [ { - "legacyId" : 39, - "id" : "minecraft:brown_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:brown_mushroom" }, { - "legacyId" : 40, - "id" : "minecraft:red_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:red_mushroom" }, { - "legacyId" : 321, - "id" : "minecraft:bowl", - "damage" : 32767 + "id": "minecraft:bowl", + "fuzzy": true }, { - "legacyId" : 38, - "id" : "minecraft:red_flower" + "blockState": "minecraft:red_flower" } ], - "output" : [ + "output": [ { - "legacyId" : 589, - "id" : "minecraft:suspicious_stew" + "id": "minecraft:suspicious_stew" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:suspicious_stew_from_tulip_orange", - "type" : 0, - "input" : [ + "id": "minecraft:suspicious_stew_from_tulip_orange", + "type": 0, + "input": [ { - "legacyId" : 39, - "id" : "minecraft:brown_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:brown_mushroom" }, { - "legacyId" : 40, - "id" : "minecraft:red_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:red_mushroom" }, { - "legacyId" : 321, - "id" : "minecraft:bowl", - "damage" : 32767 + "id": "minecraft:bowl", + "fuzzy": true }, { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 5 + "blockState": "minecraft:red_flower;flower_type=tulip_orange" } ], - "output" : [ + "output": [ { - "legacyId" : 589, - "id" : "minecraft:suspicious_stew", - "damage" : 2 + "id": "minecraft:suspicious_stew", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:suspicious_stew_from_tulip_pink", - "type" : 0, - "input" : [ + "id": "minecraft:suspicious_stew_from_tulip_pink", + "type": 0, + "input": [ { - "legacyId" : 39, - "id" : "minecraft:brown_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:brown_mushroom" }, { - "legacyId" : 40, - "id" : "minecraft:red_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:red_mushroom" }, { - "legacyId" : 321, - "id" : "minecraft:bowl", - "damage" : 32767 + "id": "minecraft:bowl", + "fuzzy": true }, { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 7 + "blockState": "minecraft:red_flower;flower_type=tulip_pink" } ], - "output" : [ + "output": [ { - "legacyId" : 589, - "id" : "minecraft:suspicious_stew", - "damage" : 2 + "id": "minecraft:suspicious_stew", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:suspicious_stew_from_tulip_red", - "type" : 0, - "input" : [ + "id": "minecraft:suspicious_stew_from_tulip_red", + "type": 0, + "input": [ { - "legacyId" : 39, - "id" : "minecraft:brown_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:brown_mushroom" }, { - "legacyId" : 40, - "id" : "minecraft:red_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:red_mushroom" }, { - "legacyId" : 321, - "id" : "minecraft:bowl", - "damage" : 32767 + "id": "minecraft:bowl", + "fuzzy": true }, { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 4 + "blockState": "minecraft:red_flower;flower_type=tulip_red" } ], - "output" : [ + "output": [ { - "legacyId" : 589, - "id" : "minecraft:suspicious_stew", - "damage" : 2 + "id": "minecraft:suspicious_stew", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:suspicious_stew_from_tulip_white", - "type" : 0, - "input" : [ + "id": "minecraft:suspicious_stew_from_tulip_white", + "type": 0, + "input": [ { - "legacyId" : 39, - "id" : "minecraft:brown_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:brown_mushroom" }, { - "legacyId" : 40, - "id" : "minecraft:red_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:red_mushroom" }, { - "legacyId" : 321, - "id" : "minecraft:bowl", - "damage" : 32767 + "id": "minecraft:bowl", + "fuzzy": true }, { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 6 + "blockState": "minecraft:red_flower;flower_type=tulip_white" } ], - "output" : [ + "output": [ { - "legacyId" : 589, - "id" : "minecraft:suspicious_stew", - "damage" : 2 + "id": "minecraft:suspicious_stew", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:suspicious_stew_from_wither_rose", - "type" : 0, - "input" : [ + "id": "minecraft:suspicious_stew_from_wither_rose", + "type": 0, + "input": [ { - "legacyId" : 39, - "id" : "minecraft:brown_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:brown_mushroom" }, { - "legacyId" : 40, - "id" : "minecraft:red_mushroom", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:red_mushroom" }, { - "legacyId" : 321, - "id" : "minecraft:bowl", - "damage" : 32767 + "id": "minecraft:bowl", + "fuzzy": true }, { - "legacyId" : -216, - "id" : "minecraft:wither_rose", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:wither_rose" } ], - "output" : [ + "output": [ { - "legacyId" : 589, - "id" : "minecraft:suspicious_stew", - "damage" : 9 + "id": "minecraft:suspicious_stew", + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:target", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "id": "minecraft:target", + "type": 1, + "input": { + "A": { + "id": "minecraft:redstone", + "fuzzy": true }, - "B" : { - "legacyId" : 170, - "id" : "minecraft:hay_block", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:hay_block" } }, - "output" : [ + "output": [ { - "legacyId" : -239, - "id" : "minecraft:target", - "blockRuntimeId" : 7105 + "blockState": "minecraft:target" } ], - "shape" : [ + "shape": [ " A ", "ABA", " A " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:tinted_glass", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 623, - "id" : "minecraft:amethyst_shard", - "damage" : 32767 + "id": "minecraft:tinted_glass", + "type": 1, + "input": { + "A": { + "legacyId": 624, + "id": "minecraft:amethyst_shard", + "damage": 32767 }, - "B" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:glass" } }, - "output" : [ + "output": [ { - "legacyId" : -334, - "id" : "minecraft:tinted_glass", - "count" : 2, - "blockRuntimeId" : 7106 + "count": 2, + "blockState": "minecraft:tinted_glass" } ], - "shape" : [ + "shape": [ " A ", "ABA", " A " ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:tnt", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:tnt", + "type": 1, + "input": { + "A": { + "id": "minecraft:gunpowder", + "fuzzy": true }, - "B" : { - "legacyId" : 12, - "id" : "minecraft:sand", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:sand" } }, - "output" : [ + "output": [ { - "legacyId" : 46, - "id" : "minecraft:tnt", - "blockRuntimeId" : 7107 + "blockState": "minecraft:tnt" } ], - "shape" : [ + "shape": [ "ABA", "BAB", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:tnt_minecart", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 46, - "id" : "minecraft:tnt" + "id": "minecraft:tnt_minecart", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:tnt" }, - "B" : { - "legacyId" : 370, - "id" : "minecraft:minecart", - "damage" : 32767 + "B": { + "id": "minecraft:minecart", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 525, - "id" : "minecraft:tnt_minecart" + "id": "minecraft:tnt_minecart" } ], - "shape" : [ + "shape": [ "A", "B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:trapped_chest", - "type" : 0, - "input" : [ + "id": "minecraft:trapped_chest", + "type": 0, + "input": [ { - "legacyId" : 54, - "id" : "minecraft:chest", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:chest" }, { - "legacyId" : 131, - "id" : "minecraft:tripwire_hook", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:tripwire_hook" } ], - "output" : [ + "output": [ { - "legacyId" : 146, - "id" : "minecraft:trapped_chest", - "blockRuntimeId" : 7133 + "blockState": "minecraft:trapped_chest" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:tripwire_hook_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:tripwire_hook_from_crimson_planks", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true }, - "C" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 131, - "id" : "minecraft:tripwire_hook", - "blockRuntimeId" : 7155 + "blockState": "minecraft:tripwire_hook" } ], - "shape" : [ + "shape": [ "A", "B", "C" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:tripwire_hook_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "id": "minecraft:tripwire_hook_from_warped_planks", + "type": 1, + "input": { + "A": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true }, - "C" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "C": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 131, - "id" : "minecraft:tripwire_hook", - "blockRuntimeId" : 7155 + "blockState": "minecraft:tripwire_hook" } ], - "shape" : [ + "shape": [ "A", "B", "C" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:turtle_helmet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 572, - "id" : "minecraft:scute", - "damage" : 32767 + "id": "minecraft:turtle_helmet", + "type": 1, + "input": { + "A": { + "id": "minecraft:scute", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 573, - "id" : "minecraft:turtle_helmet" + "id": "minecraft:turtle_helmet" } ], - "shape" : [ + "shape": [ "AAA", "A A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:warped_button", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:warped_button", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -261, - "id" : "minecraft:warped_button", - "blockRuntimeId" : 7284 + "blockState": "minecraft:warped_button" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:warped_door", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:warped_door", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : 615, - "id" : "minecraft:warped_door", - "count" : 3 + "id": "minecraft:warped_door", + "count": 3 } ], - "shape" : [ + "shape": [ "AA", "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:warped_fence", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:warped_fence", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : -257, - "id" : "minecraft:warped_fence", - "count" : 3, - "blockRuntimeId" : 7330 + "count": 3, + "blockState": "minecraft:warped_fence" } ], - "shape" : [ + "shape": [ "ABA", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:warped_fence_gate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "id": "minecraft:warped_fence_gate", + "type": 1, + "input": { + "A": { + "id": "minecraft:stick", + "fuzzy": true }, - "B" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -259, - "id" : "minecraft:warped_fence_gate", - "blockRuntimeId" : 7331 + "blockState": "minecraft:warped_fence_gate" } ], - "shape" : [ + "shape": [ "ABA", "ABA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:warped_fungus_on_a_stick", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 392, - "id" : "minecraft:fishing_rod", - "damage" : 32767 + "id": "minecraft:warped_fungus_on_a_stick", + "type": 1, + "input": { + "A": { + "id": "minecraft:fishing_rod", + "fuzzy": true }, - "B" : { - "legacyId" : -229, - "id" : "minecraft:warped_fungus", - "damage" : 32767 + "B": { + "fuzzy": true, + "blockState": "minecraft:warped_fungus" } }, - "output" : [ + "output": [ { - "legacyId" : 616, - "id" : "minecraft:warped_fungus_on_a_stick" + "id": "minecraft:warped_fungus_on_a_stick" } ], - "shape" : [ + "shape": [ "A ", " B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:warped_hyphae", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -226, - "id" : "minecraft:warped_stem", - "damage" : 32767 + "id": "minecraft:warped_hyphae", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_stem" } }, - "output" : [ + "output": [ { - "legacyId" : -298, - "id" : "minecraft:warped_hyphae", - "count" : 3, - "blockRuntimeId" : 7348 + "count": 3, + "blockState": "minecraft:warped_hyphae" } ], - "shape" : [ + "shape": [ "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -226, - "id" : "minecraft:warped_stem", - "damage" : 32767 + "id": "minecraft:warped_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_stem" } }, - "output" : [ + "output": [ { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "count" : 4, - "blockRuntimeId" : 7352 + "count": 4, + "blockState": "minecraft:warped_planks" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:warped_planks_from_stripped_log", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -241, - "id" : "minecraft:stripped_warped_stem", - "damage" : 32767 + "id": "minecraft:warped_planks_from_stripped_log", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_warped_stem" } }, - "output" : [ + "output": [ { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "count" : 4, - "blockRuntimeId" : 7352 + "count": 4, + "blockState": "minecraft:warped_planks" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:warped_planks_from_stripped_warped_hyphae", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -301, - "id" : "minecraft:stripped_warped_hyphae", - "damage" : 32767 + "id": "minecraft:warped_planks_from_stripped_warped_hyphae", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:stripped_warped_hyphae" } }, - "output" : [ + "output": [ { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "count" : 4, - "blockRuntimeId" : 7352 + "count": 4, + "blockState": "minecraft:warped_planks" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:warped_planks_from_warped_hyphae", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -298, - "id" : "minecraft:warped_hyphae", - "damage" : 32767 + "id": "minecraft:warped_planks_from_warped_hyphae", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_hyphae" } }, - "output" : [ + "output": [ { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "count" : 4, - "blockRuntimeId" : 7352 + "count": 4, + "blockState": "minecraft:warped_planks" } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:warped_pressure_plate", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:warped_pressure_plate", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -263, - "id" : "minecraft:warped_pressure_plate", - "blockRuntimeId" : 7353 + "blockState": "minecraft:warped_pressure_plate" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:warped_sign", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:warped_sign", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 613, - "id" : "minecraft:warped_sign", - "count" : 3 + "id": "minecraft:warped_sign", + "count": 3 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:warped_slab", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:warped_slab", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -265, - "id" : "minecraft:warped_slab", - "count" : 6, - "blockRuntimeId" : 7370 + "count": 6, + "blockState": "minecraft:warped_slab" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:warped_stairs", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:warped_stairs", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -255, - "id" : "minecraft:warped_stairs", - "count" : 4, - "blockRuntimeId" : 7372 + "count": 4, + "blockState": "minecraft:warped_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:warped_trapdoor", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:warped_trapdoor", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" } }, - "output" : [ + "output": [ { - "legacyId" : -247, - "id" : "minecraft:warped_trapdoor", - "count" : 2, - "blockRuntimeId" : 7399 + "count": 2, + "blockState": "minecraft:warped_trapdoor" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:waxing_copper_block", - "type" : 0, - "input" : [ + "id": "minecraft:waxing_copper_block", + "type": 0, + "input": [ { - "legacyId" : -340, - "id" : "minecraft:copper_block", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:copper_block" }, { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "id": "minecraft:honeycomb", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : -344, - "id" : "minecraft:waxed_copper", - "blockRuntimeId" : 7439 + "blockState": "minecraft:waxed_copper" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:waxing_cut_copper", - "type" : 0, - "input" : [ + "id": "minecraft:waxing_cut_copper", + "type": 0, + "input": [ { - "legacyId" : -347, - "id" : "minecraft:cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:cut_copper" }, { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "id": "minecraft:honeycomb", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : -351, - "id" : "minecraft:waxed_cut_copper", - "blockRuntimeId" : 7440 + "blockState": "minecraft:waxed_cut_copper" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:waxing_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:waxing_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : -361, - "id" : "minecraft:cut_copper_slab", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:cut_copper_slab" }, { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "id": "minecraft:honeycomb", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : -365, - "id" : "minecraft:waxed_cut_copper_slab", - "blockRuntimeId" : 7441 + "blockState": "minecraft:waxed_cut_copper_slab;top_slot_bit=0" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:waxing_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:waxing_cut_copper_stairs", + "type": 0, + "input": [ { - "legacyId" : -354, - "id" : "minecraft:cut_copper_stairs", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:cut_copper_stairs" }, { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "id": "minecraft:honeycomb", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : -358, - "id" : "minecraft:waxed_cut_copper_stairs", - "blockRuntimeId" : 7443 + "blockState": "minecraft:waxed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:waxing_exposed_copper", - "type" : 0, - "input" : [ + "id": "minecraft:waxing_exposed_copper", + "type": 0, + "input": [ { - "legacyId" : -341, - "id" : "minecraft:exposed_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:exposed_copper" }, { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "id": "minecraft:honeycomb", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : -345, - "id" : "minecraft:waxed_exposed_copper", - "blockRuntimeId" : 7453 + "blockState": "minecraft:waxed_exposed_copper" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:waxing_exposed_cut_copper", - "type" : 0, - "input" : [ + "id": "minecraft:waxing_exposed_cut_copper", + "type": 0, + "input": [ { - "legacyId" : -348, - "id" : "minecraft:exposed_cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:exposed_cut_copper" }, { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "id": "minecraft:honeycomb", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : -352, - "id" : "minecraft:waxed_exposed_cut_copper", - "blockRuntimeId" : 7454 + "blockState": "minecraft:waxed_exposed_cut_copper" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:waxing_exposed_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:waxing_exposed_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : -362, - "id" : "minecraft:exposed_cut_copper_slab", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:exposed_cut_copper_slab" }, { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "id": "minecraft:honeycomb", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : -366, - "id" : "minecraft:waxed_exposed_cut_copper_slab", - "blockRuntimeId" : 7455 + "blockState": "minecraft:waxed_exposed_cut_copper_slab;top_slot_bit=0" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:waxing_exposed_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:waxing_exposed_cut_copper_stairs", + "type": 0, + "input": [ { - "legacyId" : -355, - "id" : "minecraft:exposed_cut_copper_stairs", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:exposed_cut_copper_stairs" }, { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "id": "minecraft:honeycomb", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : -359, - "id" : "minecraft:waxed_exposed_cut_copper_stairs", - "blockRuntimeId" : 7457 + "blockState": "minecraft:waxed_exposed_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:waxing_oxidized_copper", - "type" : 0, - "input" : [ + "id": "minecraft:waxing_oxidized_copper", + "type": 0, + "input": [ { - "legacyId" : -343, - "id" : "minecraft:oxidized_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:oxidized_copper" }, { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "id": "minecraft:honeycomb", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : -446, - "id" : "minecraft:waxed_oxidized_copper", - "blockRuntimeId" : 7467 + "blockState": "minecraft:waxed_oxidized_copper" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:waxing_oxidized_cut_copper", - "type" : 0, - "input" : [ + "id": "minecraft:waxing_oxidized_cut_copper", + "type": 0, + "input": [ { - "legacyId" : -350, - "id" : "minecraft:oxidized_cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:oxidized_cut_copper" }, { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "id": "minecraft:honeycomb", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : -447, - "id" : "minecraft:waxed_oxidized_cut_copper", - "blockRuntimeId" : 7468 + "blockState": "minecraft:waxed_oxidized_cut_copper" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:waxing_oxidized_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:waxing_oxidized_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : -364, - "id" : "minecraft:oxidized_cut_copper_slab", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:oxidized_cut_copper_slab" }, { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "id": "minecraft:honeycomb", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : -449, - "id" : "minecraft:waxed_oxidized_cut_copper_slab", - "blockRuntimeId" : 7469 + "blockState": "minecraft:waxed_oxidized_cut_copper_slab;top_slot_bit=0" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:waxing_oxidized_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:waxing_oxidized_cut_copper_stairs", + "type": 0, + "input": [ { - "legacyId" : -357, - "id" : "minecraft:oxidized_cut_copper_stairs", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:oxidized_cut_copper_stairs" }, { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "id": "minecraft:honeycomb", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : -448, - "id" : "minecraft:waxed_oxidized_cut_copper_stairs", - "blockRuntimeId" : 7471 + "blockState": "minecraft:waxed_oxidized_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:waxing_weathered_copper", - "type" : 0, - "input" : [ + "id": "minecraft:waxing_weathered_copper", + "type": 0, + "input": [ { - "legacyId" : -342, - "id" : "minecraft:weathered_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:weathered_copper" }, { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "id": "minecraft:honeycomb", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : -346, - "id" : "minecraft:waxed_weathered_copper", - "blockRuntimeId" : 7481 + "blockState": "minecraft:waxed_weathered_copper" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:waxing_weathered_cut_copper", - "type" : 0, - "input" : [ + "id": "minecraft:waxing_weathered_cut_copper", + "type": 0, + "input": [ { - "legacyId" : -349, - "id" : "minecraft:weathered_cut_copper", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:weathered_cut_copper" }, { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "id": "minecraft:honeycomb", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : -353, - "id" : "minecraft:waxed_weathered_cut_copper", - "blockRuntimeId" : 7482 + "blockState": "minecraft:waxed_weathered_cut_copper" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:waxing_weathered_cut_copper_slab", - "type" : 0, - "input" : [ + "id": "minecraft:waxing_weathered_cut_copper_slab", + "type": 0, + "input": [ { - "legacyId" : -363, - "id" : "minecraft:weathered_cut_copper_slab", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:weathered_cut_copper_slab" }, { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "id": "minecraft:honeycomb", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : -367, - "id" : "minecraft:waxed_weathered_cut_copper_slab", - "blockRuntimeId" : 7483 + "blockState": "minecraft:waxed_weathered_cut_copper_slab;top_slot_bit=0" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:waxing_weathered_cut_copper_stairs", - "type" : 0, - "input" : [ + "id": "minecraft:waxing_weathered_cut_copper_stairs", + "type": 0, + "input": [ { - "legacyId" : -356, - "id" : "minecraft:weathered_cut_copper_stairs", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:weathered_cut_copper_stairs" }, { - "legacyId" : 590, - "id" : "minecraft:honeycomb", - "damage" : 32767 + "id": "minecraft:honeycomb", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : -360, - "id" : "minecraft:waxed_weathered_cut_copper_stairs", - "blockRuntimeId" : 7485 + "blockState": "minecraft:waxed_weathered_cut_copper_stairs;upside_down_bit=0;weirdo_direction=0" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:wheat", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 170, - "id" : "minecraft:hay_block", - "damage" : 32767 + "id": "minecraft:wheat", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hay_block" } }, - "output" : [ + "output": [ { - "legacyId" : 334, - "id" : "minecraft:wheat", - "count" : 9 + "id": "minecraft:wheat", + "count": 9 } ], - "shape" : [ + "shape": [ "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:white_banner", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool" + "id": "minecraft:white_banner", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 567, - "id" : "minecraft:banner", - "damage" : 15 + "id": "minecraft:banner", + "damage": 15 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:white_carpet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool" + "id": "minecraft:white_candle", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:white_dye", + "damage": 19 + } + ], + "output": [ + { + "blockState": "minecraft:white_candle;candles=0;lit=0" + } + ], + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:white_candle_from_bonemeal", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:bone_meal", + "damage": 15 + } + ], + "output": [ + { + "blockState": "minecraft:white_candle;candles=0;lit=0" + } + ], + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:white_carpet", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool" } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 3, - "blockRuntimeId" : 923 + "count": 3, + "blockState": "minecraft:carpet" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:white_concrete_powder", - "type" : 0, - "input" : [ + "id": "minecraft:white_concrete_powder", + "type": 0, + "input": [ { - "legacyId" : 410, - "id" : "minecraft:white_dye" + "id": "minecraft:white_dye", + "damage": 19 }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3619 + "count": 8, + "blockState": "minecraft:concrete_powder" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:white_concrete_powder_from_bonemeal", - "type" : 0, - "input" : [ + "id": "minecraft:white_concrete_powder_from_bonemeal", + "type": 0, + "input": [ { - "legacyId" : 411, - "id" : "minecraft:bone_meal" + "id": "minecraft:bone_meal", + "damage": 15 }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3619 + "count": 8, + "blockState": "minecraft:concrete_powder" } ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:white_dye_from_bone_meal", - "type" : 0, - "input" : [ + "id": "minecraft:white_dye_from_bone_meal", + "type": 0, + "input": [ { - "legacyId" : 411, - "id" : "minecraft:bone_meal" + "id": "minecraft:bone_meal", + "damage": 15 } ], - "output" : [ + "output": [ { - "legacyId" : 410, - "id" : "minecraft:white_dye" + "id": "minecraft:white_dye", + "damage": 19 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:white_dye_from_lily_of_the_valley", - "type" : 0, - "input" : [ + "id": "minecraft:white_dye_from_lily_of_the_valley", + "type": 0, + "input": [ { - "legacyId" : 38, - "id" : "minecraft:red_flower", - "damage" : 10 + "blockState": "minecraft:red_flower;flower_type=lily_of_the_valley" } ], - "output" : [ + "output": [ { - "legacyId" : 410, - "id" : "minecraft:white_dye" + "id": "minecraft:white_dye", + "damage": 19 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:white_stained_glass", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:white_stained_glass", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 410, - "id" : "minecraft:white_dye" + "B": { + "id": "minecraft:white_dye", + "damage": 19 } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6842 + "count": 8, + "blockState": "minecraft:stained_glass" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:white_stained_glass_from_bonemeal", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:white_stained_glass_from_bonemeal", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 411, - "id" : "minecraft:bone_meal" + "B": { + "id": "minecraft:bone_meal", + "damage": 15 } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6842 + "count": 8, + "blockState": "minecraft:stained_glass" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:white_stained_glass_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 241, - "id" : "minecraft:stained_glass" + "id": "minecraft:white_stained_glass_pane", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stained_glass" } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 16, - "blockRuntimeId" : 6858 + "count": 16, + "blockState": "minecraft:stained_glass_pane" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:white_stained_glass_pane_from_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 102, - "id" : "minecraft:glass_pane", - "damage" : 32767 + "id": "minecraft:white_stained_glass_pane_from_pane", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass_pane" }, - "B" : { - "legacyId" : 410, - "id" : "minecraft:white_dye" + "B": { + "id": "minecraft:white_dye", + "damage": 19 } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 8, - "blockRuntimeId" : 6858 + "count": 8, + "blockState": "minecraft:stained_glass_pane" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:white_stained_hardened_clay", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:white_stained_hardened_clay", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 410, - "id" : "minecraft:white_dye" + "B": { + "id": "minecraft:white_dye", + "damage": 19 } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6874 + "count": 8, + "blockState": "minecraft:stained_hardened_clay" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:white_stained_hardened_clay_from_bonemeal", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:white_stained_hardened_clay_from_bonemeal", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 411, - "id" : "minecraft:bone_meal" + "B": { + "id": "minecraft:bone_meal", + "damage": 15 } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6874 + "count": 8, + "blockState": "minecraft:stained_hardened_clay" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 1 + "block": "crafting_table", + "priority": 1 }, { - "id" : "minecraft:wooden_axe_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:wooden_axe_from_crimson_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 311, - "id" : "minecraft:wooden_axe" + "id": "minecraft:wooden_axe" } ], - "shape" : [ + "shape": [ "AA", "AB", " B" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:wooden_axe_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:wooden_axe_from_warped_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 311, - "id" : "minecraft:wooden_axe" + "id": "minecraft:wooden_axe" } ], - "shape" : [ + "shape": [ "AA", "AB", " B" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:wooden_door", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks" + "id": "minecraft:wooden_door", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 359, - "id" : "minecraft:wooden_door", - "count" : 3 + "id": "minecraft:wooden_door", + "count": 3 } ], - "shape" : [ + "shape": [ "AA", "AA", "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:wooden_hoe_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:wooden_hoe_from_crimson_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 329, - "id" : "minecraft:wooden_hoe" + "id": "minecraft:wooden_hoe" } ], - "shape" : [ + "shape": [ "AA ", " B ", " B " ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:wooden_hoe_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:wooden_hoe_from_warped_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 329, - "id" : "minecraft:wooden_hoe" + "id": "minecraft:wooden_hoe" } ], - "shape" : [ + "shape": [ "AA ", " B ", " B " ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:wooden_pickaxe_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:wooden_pickaxe_from_crimson_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 310, - "id" : "minecraft:wooden_pickaxe" + "id": "minecraft:wooden_pickaxe" } ], - "shape" : [ + "shape": [ "AAA", " B ", " B " ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:wooden_pickaxe_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:wooden_pickaxe_from_warped_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 310, - "id" : "minecraft:wooden_pickaxe" + "id": "minecraft:wooden_pickaxe" } ], - "shape" : [ + "shape": [ "AAA", " B ", " B " ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:wooden_shovel_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:wooden_shovel_from_crimson_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 309, - "id" : "minecraft:wooden_shovel" + "id": "minecraft:wooden_shovel" } ], - "shape" : [ + "shape": [ "A", "B", "B" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:wooden_shovel_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:wooden_shovel_from_warped_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 309, - "id" : "minecraft:wooden_shovel" + "id": "minecraft:wooden_shovel" } ], - "shape" : [ + "shape": [ "A", "B", "B" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:wooden_sword_from_crimson_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -242, - "id" : "minecraft:crimson_planks", - "damage" : 32767 + "id": "minecraft:wooden_sword_from_crimson_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:crimson_planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 308, - "id" : "minecraft:wooden_sword" + "id": "minecraft:wooden_sword" } ], - "shape" : [ + "shape": [ "A", "A", "B" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:wooden_sword_from_warped_planks", - "type" : 1, - "input" : { - "A" : { - "legacyId" : -243, - "id" : "minecraft:warped_planks", - "damage" : 32767 + "id": "minecraft:wooden_sword_from_warped_planks", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:warped_planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 308, - "id" : "minecraft:wooden_sword" + "id": "minecraft:wooden_sword" } ], - "shape" : [ + "shape": [ "A", "A", "B" ], - "block" : "crafting_table", - "priority" : 2 + "block": "crafting_table", + "priority": 2 }, { - "id" : "minecraft:writable_book", - "type" : 0, - "input" : [ + "id": "minecraft:writable_book", + "type": 0, + "input": [ { - "legacyId" : 387, - "id" : "minecraft:book", - "damage" : 32767 + "id": "minecraft:book", + "fuzzy": true }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac" + "id": "minecraft:ink_sac" }, { - "legacyId" : 327, - "id" : "minecraft:feather", - "damage" : 32767 + "id": "minecraft:feather", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 510, - "id" : "minecraft:writable_book" + "id": "minecraft:writable_book" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:yellow_banner", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "id": "minecraft:yellow_banner", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=yellow" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 567, - "id" : "minecraft:banner", - "damage" : 11 + "id": "minecraft:banner", + "damage": 11 } ], - "shape" : [ + "shape": [ "AAA", "AAA", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 + }, + { + "id": "minecraft:yellow_candle", + "type": 0, + "input": [ + { + "fuzzy": true, + "blockState": "minecraft:candle" + }, + { + "id": "minecraft:yellow_dye", + "damage": 11 + } + ], + "output": [ + { + "blockState": "minecraft:yellow_candle;candles=0;lit=0" + } + ], + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:yellow_carpet", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "id": "minecraft:yellow_carpet", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:wool;color=yellow" } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 3, - "blockRuntimeId" : 927 + "count": 3, + "blockState": "minecraft:carpet;color=yellow" } ], - "shape" : [ + "shape": [ "AA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:yellow_carpet_from_white", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 171, - "id" : "minecraft:carpet" + "id": "minecraft:yellow_carpet_from_white", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:carpet" }, - "B" : { - "legacyId" : 406, - "id" : "minecraft:yellow_dye" + "B": { + "id": "minecraft:yellow_dye", + "damage": 11 } }, - "output" : [ + "output": [ { - "legacyId" : 171, - "id" : "minecraft:carpet", - "count" : 8, - "blockRuntimeId" : 927 + "count": 8, + "blockState": "minecraft:carpet;color=yellow" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:yellow_concrete_powder", - "type" : 0, - "input" : [ + "id": "minecraft:yellow_concrete_powder", + "type": 0, + "input": [ { - "legacyId" : 406, - "id" : "minecraft:yellow_dye" + "id": "minecraft:yellow_dye", + "damage": 11 }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 12, - "id" : "minecraft:sand" + "blockState": "minecraft:sand" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" }, { - "legacyId" : 13, - "id" : "minecraft:gravel", - "damage" : 32767 + "fuzzy": true, + "blockState": "minecraft:gravel" } ], - "output" : [ + "output": [ { - "legacyId" : 237, - "id" : "minecraft:concrete_powder", - "count" : 8, - "blockRuntimeId" : 3623 + "count": 8, + "blockState": "minecraft:concrete_powder;color=yellow" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:yellow_dye_from_dandelion", - "type" : 0, - "input" : [ + "id": "minecraft:yellow_dye_from_dandelion", + "type": 0, + "input": [ { - "legacyId" : 37, - "id" : "minecraft:yellow_flower" + "blockState": "minecraft:yellow_flower" } ], - "output" : [ + "output": [ { - "legacyId" : 406, - "id" : "minecraft:yellow_dye" + "id": "minecraft:yellow_dye", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:yellow_dye_from_sunflower", - "type" : 0, - "input" : [ + "id": "minecraft:yellow_dye_from_sunflower", + "type": 0, + "input": [ { - "legacyId" : 175, - "id" : "minecraft:double_plant" + "blockState": "minecraft:double_plant" } ], - "output" : [ + "output": [ { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "count" : 2 + "id": "minecraft:yellow_dye", + "count": 2, + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:yellow_stained_glass", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "damage" : 32767 + "id": "minecraft:yellow_stained_glass", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass" }, - "B" : { - "legacyId" : 406, - "id" : "minecraft:yellow_dye" + "B": { + "id": "minecraft:yellow_dye", + "damage": 11 } }, - "output" : [ + "output": [ { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "count" : 8, - "blockRuntimeId" : 6846 + "count": 8, + "blockState": "minecraft:stained_glass;color=yellow" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:yellow_stained_glass_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 241, - "id" : "minecraft:stained_glass", - "damage" : 4 + "id": "minecraft:yellow_stained_glass_pane", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stained_glass;color=yellow" } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 16, - "blockRuntimeId" : 6862 + "count": 16, + "blockState": "minecraft:stained_glass_pane;color=yellow" } ], - "shape" : [ + "shape": [ "AAA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:yellow_stained_glass_pane_from_pane", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 102, - "id" : "minecraft:glass_pane", - "damage" : 32767 + "id": "minecraft:yellow_stained_glass_pane_from_pane", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:glass_pane" }, - "B" : { - "legacyId" : 406, - "id" : "minecraft:yellow_dye" + "B": { + "id": "minecraft:yellow_dye", + "damage": 11 } }, - "output" : [ + "output": [ { - "legacyId" : 160, - "id" : "minecraft:stained_glass_pane", - "count" : 8, - "blockRuntimeId" : 6862 + "count": 8, + "blockState": "minecraft:stained_glass_pane;color=yellow" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "minecraft:yellow_stained_hardened_clay", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "damage" : 32767 + "id": "minecraft:yellow_stained_hardened_clay", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:hardened_clay" }, - "B" : { - "legacyId" : 406, - "id" : "minecraft:yellow_dye" + "B": { + "id": "minecraft:yellow_dye", + "damage": 11 } }, - "output" : [ + "output": [ { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "count" : 8, - "blockRuntimeId" : 6878 + "count": 8, + "blockState": "minecraft:stained_hardened_clay;color=yellow" } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "oak_stairs_oak_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks" + "id": "oak_stairs_oak_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 53, - "id" : "minecraft:oak_stairs", - "count" : 4, - "blockRuntimeId" : 5580 + "count": 4, + "blockState": "minecraft:oak_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_0_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_0_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star" + "id": "minecraft:firework_star" } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAABwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAABwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_10_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_10_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 10 + "id": "minecraft:firework_star", + "damage": 10 } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAKBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAKBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_11_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_11_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 11 + "id": "minecraft:firework_star", + "damage": 11 } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAALBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAALBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_12_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_12_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 12 + "id": "minecraft:firework_star", + "damage": 12 } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAMBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAMBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_13_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_13_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 13 + "id": "minecraft:firework_star", + "damage": 13 } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAANBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAANBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_14_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_14_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 14 + "id": "minecraft:firework_star", + "damage": 14 } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAOBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAOBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_15_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_15_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 15 + "id": "minecraft:firework_star", + "damage": 15 } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAPBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAPBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_16_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_16_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star" + "id": "minecraft:firework_star" } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAABwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAABwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_17_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_17_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 3 + "id": "minecraft:firework_star", + "damage": 3 } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAADBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAADBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_18_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_18_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 4 + "id": "minecraft:firework_star", + "damage": 4 } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAEBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAEBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_19_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_19_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 15 + "id": "minecraft:firework_star", + "damage": 15 } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAPBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAPBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_1_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_1_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 1 + "id": "minecraft:firework_star", + "damage": 1 } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAABBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAABBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_2_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_2_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 2 + "id": "minecraft:firework_star", + "damage": 2 } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAACBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAACBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_3_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_3_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 3 + "id": "minecraft:firework_star", + "damage": 3 } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAADBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAADBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_4_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_4_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 4 + "id": "minecraft:firework_star", + "damage": 4 } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAEBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAEBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_5_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_5_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 5 + "id": "minecraft:firework_star", + "damage": 5 } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAFBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAFBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_6_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_6_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 6 + "id": "minecraft:firework_star", + "damage": 6 } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAGBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAGBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_7_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_7_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 7 + "id": "minecraft:firework_star", + "damage": 7 } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAHBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAHBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_8_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_8_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 8 + "id": "minecraft:firework_star", + "damage": 8 } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAIBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAIBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_charge_9_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_charge_9_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 9 + "id": "minecraft:firework_star", + "damage": 9 } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAJBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAJBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_0_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_0_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yIR0d/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yIR0d/wA=" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_10_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_10_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 10, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yH8eA/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yH8eA/wA=", + "damage": 10 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_11_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_11_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 11, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yPdj+/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yPdj+/wA=", + "damage": 11 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_12_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_12_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 12, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9y2rM6/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9y2rM6/wA=", + "damage": 12 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_13_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_13_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 13, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yvU7H/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yvU7H/wA=", + "damage": 13 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_14_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_14_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 14, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yHYD5/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yHYD5/wA=", + "damage": 14 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_15_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_15_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 15, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9y8PDw/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9y8PDw/wA=", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_16_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_16_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yIR0d/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yIR0d/wA=" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_17_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_17_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 3, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yMlSD/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yMlSD/wA=", + "damage": 3 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_18_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_18_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 4, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yqkQ8/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yqkQ8/wA=", + "damage": 4 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_19_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_19_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 15, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9y8PDw/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9y8PDw/wA=", + "damage": 15 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_1_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_1_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 1, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yJi6w/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yJi6w/wA=", + "damage": 1 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_2_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_2_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 2, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yFnxe/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yFnxe/wA=", + "damage": 2 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_3_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_3_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 3, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yMlSD/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yMlSD/wA=", + "damage": 3 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_4_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_4_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 4, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yqkQ8/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yqkQ8/wA=", + "damage": 4 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_5_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_5_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 5, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yuDKJ/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yuDKJ/wA=", + "damage": 5 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_6_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_6_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 6, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9ynJwW/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9ynJwW/wA=", + "damage": 6 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_7_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_7_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 7, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yl52d/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yl52d/wA=", + "damage": 7 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_8_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_8_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 8, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yUk9H/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yUk9H/wA=", + "damage": 8 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_dye_9_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_dye_9_recipeId", + "type": 0, + "input": [ { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 520, - "id" : "minecraft:firework_star", - "damage" : 9, - "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yqovz/wA=" + "id": "minecraft:firework_star", + "nbt_b64": "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yqovz/wA=", + "damage": 9 } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "paper_sulphur_recipeId", - "type" : 0, - "input" : [ + "id": "paper_sulphur_recipeId", + "type": 0, + "input": [ { - "legacyId" : 386, - "id" : "minecraft:paper", - "damage" : 32767 + "id": "minecraft:paper", + "fuzzy": true }, { - "legacyId" : 328, - "id" : "minecraft:gunpowder", - "damage" : 32767 + "id": "minecraft:gunpowder", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 519, - "id" : "minecraft:firework_rocket", - "count" : 3, - "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwAAAAAAAQYARmxpZ2h0AQAA" + "id": "minecraft:firework_rocket", + "count": 3, + "nbt_b64": "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwAAAAAAAQYARmxpZ2h0AQAA" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "type" : 4, - "uuid" : "00000000-0000-0000-0000-000000000001" + "type": 4, + "uuid": "00000000-0000-0000-0000-000000000001" }, { - "id" : "shulkerBox_shulker_box_color_block_0_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_0_10_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 5 + "blockState": "minecraft:shulker_box;color=lime" }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_0_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_0_11_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 4 + "blockState": "minecraft:shulker_box;color=yellow" }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_0_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_0_12_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 3 + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_0_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_0_13_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 2 + "blockState": "minecraft:shulker_box;color=magenta" }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_0_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_0_14_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 1 + "blockState": "minecraft:shulker_box;color=orange" }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_0_15_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_0_15_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box" + "blockState": "minecraft:shulker_box" }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_0_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_0_1_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 14 + "blockState": "minecraft:shulker_box;color=red" }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_0_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_0_2_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 13 + "blockState": "minecraft:shulker_box;color=green" }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_0_3_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_0_3_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 12 + "blockState": "minecraft:shulker_box;color=brown" }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_0_4_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_0_4_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 11 + "blockState": "minecraft:shulker_box;color=blue" }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_0_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_0_5_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 10 + "blockState": "minecraft:shulker_box;color=purple" }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_0_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_0_6_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 9 + "blockState": "minecraft:shulker_box;color=cyan" }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_0_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_0_7_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 8 + "blockState": "minecraft:shulker_box;color=silver" }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_0_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_0_8_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 7 + "blockState": "minecraft:shulker_box;color=gray" }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_0_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_0_9_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 6 + "blockState": "minecraft:shulker_box;color=pink" }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_10_0_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_10_0_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 15 + "blockState": "minecraft:shulker_box;color=black" }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6589 + "blockState": "minecraft:shulker_box;color=lime" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_10_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_10_11_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 4 + "blockState": "minecraft:shulker_box;color=yellow" }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6589 + "blockState": "minecraft:shulker_box;color=lime" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_10_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_10_12_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 3 + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6589 + "blockState": "minecraft:shulker_box;color=lime" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_10_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_10_13_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 2 + "blockState": "minecraft:shulker_box;color=magenta" }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6589 + "blockState": "minecraft:shulker_box;color=lime" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_10_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_10_14_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 1 + "blockState": "minecraft:shulker_box;color=orange" }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6589 + "blockState": "minecraft:shulker_box;color=lime" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_10_15_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_10_15_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box" + "blockState": "minecraft:shulker_box" }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6589 + "blockState": "minecraft:shulker_box;color=lime" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_10_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_10_1_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 14 + "blockState": "minecraft:shulker_box;color=red" }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6589 + "blockState": "minecraft:shulker_box;color=lime" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_10_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_10_2_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 13 + "blockState": "minecraft:shulker_box;color=green" }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6589 + "blockState": "minecraft:shulker_box;color=lime" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_10_3_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_10_3_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 12 + "blockState": "minecraft:shulker_box;color=brown" }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6589 + "blockState": "minecraft:shulker_box;color=lime" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_10_4_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_10_4_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 11 + "blockState": "minecraft:shulker_box;color=blue" }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6589 + "blockState": "minecraft:shulker_box;color=lime" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_10_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_10_5_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 10 + "blockState": "minecraft:shulker_box;color=purple" }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6589 + "blockState": "minecraft:shulker_box;color=lime" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_10_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_10_6_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 9 + "blockState": "minecraft:shulker_box;color=cyan" }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6589 + "blockState": "minecraft:shulker_box;color=lime" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_10_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_10_7_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 8 + "blockState": "minecraft:shulker_box;color=silver" }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6589 + "blockState": "minecraft:shulker_box;color=lime" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_10_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_10_8_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 7 + "blockState": "minecraft:shulker_box;color=gray" }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6589 + "blockState": "minecraft:shulker_box;color=lime" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_10_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_10_9_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 6 + "blockState": "minecraft:shulker_box;color=pink" }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6589 + "blockState": "minecraft:shulker_box;color=lime" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_11_0_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_11_0_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 15 + "blockState": "minecraft:shulker_box;color=black" }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6588 + "blockState": "minecraft:shulker_box;color=yellow" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_11_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_11_10_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 5 + "blockState": "minecraft:shulker_box;color=lime" }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6588 + "blockState": "minecraft:shulker_box;color=yellow" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_11_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_11_12_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 3 + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6588 + "blockState": "minecraft:shulker_box;color=yellow" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_11_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_11_13_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 2 + "blockState": "minecraft:shulker_box;color=magenta" }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6588 + "blockState": "minecraft:shulker_box;color=yellow" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_11_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_11_14_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 1 + "blockState": "minecraft:shulker_box;color=orange" }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6588 + "blockState": "minecraft:shulker_box;color=yellow" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_11_15_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_11_15_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box" + "blockState": "minecraft:shulker_box" }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6588 + "blockState": "minecraft:shulker_box;color=yellow" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_11_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_11_1_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 14 + "blockState": "minecraft:shulker_box;color=red" }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6588 + "blockState": "minecraft:shulker_box;color=yellow" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_11_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_11_2_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 13 + "blockState": "minecraft:shulker_box;color=green" }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6588 + "blockState": "minecraft:shulker_box;color=yellow" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_11_3_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_11_3_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 12 + "blockState": "minecraft:shulker_box;color=brown" }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6588 + "blockState": "minecraft:shulker_box;color=yellow" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_11_4_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_11_4_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 11 + "blockState": "minecraft:shulker_box;color=blue" }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6588 + "blockState": "minecraft:shulker_box;color=yellow" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_11_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_11_5_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 10 + "blockState": "minecraft:shulker_box;color=purple" }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6588 + "blockState": "minecraft:shulker_box;color=yellow" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_11_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_11_6_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 9 + "blockState": "minecraft:shulker_box;color=cyan" }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6588 + "blockState": "minecraft:shulker_box;color=yellow" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_11_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_11_7_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 8 + "blockState": "minecraft:shulker_box;color=silver" }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6588 + "blockState": "minecraft:shulker_box;color=yellow" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_11_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_11_8_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 7 + "blockState": "minecraft:shulker_box;color=gray" }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6588 + "blockState": "minecraft:shulker_box;color=yellow" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_11_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_11_9_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 6 + "blockState": "minecraft:shulker_box;color=pink" }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6588 + "blockState": "minecraft:shulker_box;color=yellow" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_12_0_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_12_0_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 15 + "blockState": "minecraft:shulker_box;color=black" }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6587 + "blockState": "minecraft:shulker_box;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_12_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_12_10_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 5 + "blockState": "minecraft:shulker_box;color=lime" }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6587 + "blockState": "minecraft:shulker_box;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_12_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_12_11_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 4 + "blockState": "minecraft:shulker_box;color=yellow" }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6587 + "blockState": "minecraft:shulker_box;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_12_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_12_13_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 2 + "blockState": "minecraft:shulker_box;color=magenta" }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6587 + "blockState": "minecraft:shulker_box;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_12_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_12_14_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 1 + "blockState": "minecraft:shulker_box;color=orange" }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6587 + "blockState": "minecraft:shulker_box;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_12_15_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_12_15_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box" + "blockState": "minecraft:shulker_box" }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6587 + "blockState": "minecraft:shulker_box;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_12_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_12_1_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 14 + "blockState": "minecraft:shulker_box;color=red" }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6587 + "blockState": "minecraft:shulker_box;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_12_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_12_2_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 13 + "blockState": "minecraft:shulker_box;color=green" }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6587 + "blockState": "minecraft:shulker_box;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_12_3_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_12_3_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 12 + "blockState": "minecraft:shulker_box;color=brown" }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6587 + "blockState": "minecraft:shulker_box;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_12_4_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_12_4_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 11 + "blockState": "minecraft:shulker_box;color=blue" }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6587 + "blockState": "minecraft:shulker_box;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_12_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_12_5_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 10 + "blockState": "minecraft:shulker_box;color=purple" }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6587 + "blockState": "minecraft:shulker_box;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_12_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_12_6_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 9 + "blockState": "minecraft:shulker_box;color=cyan" }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6587 + "blockState": "minecraft:shulker_box;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_12_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_12_7_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 8 + "blockState": "minecraft:shulker_box;color=silver" }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6587 + "blockState": "minecraft:shulker_box;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_12_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_12_8_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 7 + "blockState": "minecraft:shulker_box;color=gray" }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6587 + "blockState": "minecraft:shulker_box;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_12_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_12_9_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 6 + "blockState": "minecraft:shulker_box;color=pink" }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6587 + "blockState": "minecraft:shulker_box;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_13_0_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_13_0_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 15 + "blockState": "minecraft:shulker_box;color=black" }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6586 + "blockState": "minecraft:shulker_box;color=magenta" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_13_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_13_10_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 5 + "blockState": "minecraft:shulker_box;color=lime" }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6586 + "blockState": "minecraft:shulker_box;color=magenta" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_13_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_13_11_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 4 + "blockState": "minecraft:shulker_box;color=yellow" }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6586 + "blockState": "minecraft:shulker_box;color=magenta" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_13_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_13_12_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 3 + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6586 + "blockState": "minecraft:shulker_box;color=magenta" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_13_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_13_14_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 1 + "blockState": "minecraft:shulker_box;color=orange" }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6586 + "blockState": "minecraft:shulker_box;color=magenta" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_13_15_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_13_15_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box" + "blockState": "minecraft:shulker_box" }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6586 + "blockState": "minecraft:shulker_box;color=magenta" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_13_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_13_1_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 14 + "blockState": "minecraft:shulker_box;color=red" }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6586 + "blockState": "minecraft:shulker_box;color=magenta" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_13_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_13_2_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 13 + "blockState": "minecraft:shulker_box;color=green" }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6586 + "blockState": "minecraft:shulker_box;color=magenta" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_13_3_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_13_3_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 12 + "blockState": "minecraft:shulker_box;color=brown" }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6586 + "blockState": "minecraft:shulker_box;color=magenta" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_13_4_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_13_4_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 11 + "blockState": "minecraft:shulker_box;color=blue" }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6586 + "blockState": "minecraft:shulker_box;color=magenta" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_13_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_13_5_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 10 + "blockState": "minecraft:shulker_box;color=purple" }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6586 + "blockState": "minecraft:shulker_box;color=magenta" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_13_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_13_6_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 9 + "blockState": "minecraft:shulker_box;color=cyan" }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6586 + "blockState": "minecraft:shulker_box;color=magenta" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_13_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_13_7_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 8 + "blockState": "minecraft:shulker_box;color=silver" }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6586 + "blockState": "minecraft:shulker_box;color=magenta" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_13_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_13_8_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 7 + "blockState": "minecraft:shulker_box;color=gray" }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6586 + "blockState": "minecraft:shulker_box;color=magenta" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_13_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_13_9_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 6 + "blockState": "minecraft:shulker_box;color=pink" }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6586 + "blockState": "minecraft:shulker_box;color=magenta" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_14_0_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_14_0_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 15 + "blockState": "minecraft:shulker_box;color=black" }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6585 + "blockState": "minecraft:shulker_box;color=orange" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_14_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_14_10_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 5 + "blockState": "minecraft:shulker_box;color=lime" }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6585 + "blockState": "minecraft:shulker_box;color=orange" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_14_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_14_11_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 4 + "blockState": "minecraft:shulker_box;color=yellow" }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6585 + "blockState": "minecraft:shulker_box;color=orange" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_14_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_14_12_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 3 + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6585 + "blockState": "minecraft:shulker_box;color=orange" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_14_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_14_13_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 2 + "blockState": "minecraft:shulker_box;color=magenta" }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6585 + "blockState": "minecraft:shulker_box;color=orange" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_14_15_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_14_15_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box" + "blockState": "minecraft:shulker_box" }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6585 + "blockState": "minecraft:shulker_box;color=orange" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_14_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_14_1_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 14 + "blockState": "minecraft:shulker_box;color=red" }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6585 + "blockState": "minecraft:shulker_box;color=orange" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_14_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_14_2_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 13 + "blockState": "minecraft:shulker_box;color=green" }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6585 + "blockState": "minecraft:shulker_box;color=orange" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_14_3_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_14_3_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 12 + "blockState": "minecraft:shulker_box;color=brown" }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6585 + "blockState": "minecraft:shulker_box;color=orange" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_14_4_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_14_4_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 11 + "blockState": "minecraft:shulker_box;color=blue" }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6585 + "blockState": "minecraft:shulker_box;color=orange" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_14_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_14_5_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 10 + "blockState": "minecraft:shulker_box;color=purple" }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6585 + "blockState": "minecraft:shulker_box;color=orange" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_14_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_14_6_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 9 + "blockState": "minecraft:shulker_box;color=cyan" }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6585 + "blockState": "minecraft:shulker_box;color=orange" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_14_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_14_7_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 8 + "blockState": "minecraft:shulker_box;color=silver" }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6585 + "blockState": "minecraft:shulker_box;color=orange" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_14_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_14_8_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 7 + "blockState": "minecraft:shulker_box;color=gray" }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6585 + "blockState": "minecraft:shulker_box;color=orange" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_14_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_14_9_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 6 + "blockState": "minecraft:shulker_box;color=pink" }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6585 + "blockState": "minecraft:shulker_box;color=orange" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_15_0_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_15_0_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 15 + "blockState": "minecraft:shulker_box;color=black" }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_15_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_15_10_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 5 + "blockState": "minecraft:shulker_box;color=lime" }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_15_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_15_11_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 4 + "blockState": "minecraft:shulker_box;color=yellow" }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_15_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_15_12_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 3 + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_15_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_15_13_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 2 + "blockState": "minecraft:shulker_box;color=magenta" }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_15_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_15_14_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 1 + "blockState": "minecraft:shulker_box;color=orange" }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_15_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_15_1_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 14 + "blockState": "minecraft:shulker_box;color=red" }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_15_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_15_2_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 13 + "blockState": "minecraft:shulker_box;color=green" }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_15_3_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_15_3_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 12 + "blockState": "minecraft:shulker_box;color=brown" }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_15_4_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_15_4_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 11 + "blockState": "minecraft:shulker_box;color=blue" }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_15_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_15_5_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 10 + "blockState": "minecraft:shulker_box;color=purple" }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_15_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_15_6_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 9 + "blockState": "minecraft:shulker_box;color=cyan" }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_15_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_15_7_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 8 + "blockState": "minecraft:shulker_box;color=silver" }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_15_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_15_8_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 7 + "blockState": "minecraft:shulker_box;color=gray" }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_15_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_15_9_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 6 + "blockState": "minecraft:shulker_box;color=pink" }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_16_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_16_10_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 5 + "blockState": "minecraft:shulker_box;color=lime" }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_16_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_16_11_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 4 + "blockState": "minecraft:shulker_box;color=yellow" }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_16_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_16_12_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 3 + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_16_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_16_13_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 2 + "blockState": "minecraft:shulker_box;color=magenta" }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_16_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_16_14_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 1 + "blockState": "minecraft:shulker_box;color=orange" }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_16_15_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_16_15_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box" + "blockState": "minecraft:shulker_box" }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_16_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_16_1_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 14 + "blockState": "minecraft:shulker_box;color=red" }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_16_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_16_2_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 13 + "blockState": "minecraft:shulker_box;color=green" }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_16_3_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_16_3_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 12 + "blockState": "minecraft:shulker_box;color=brown" }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_16_4_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_16_4_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 11 + "blockState": "minecraft:shulker_box;color=blue" }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_16_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_16_5_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 10 + "blockState": "minecraft:shulker_box;color=purple" }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_16_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_16_6_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 9 + "blockState": "minecraft:shulker_box;color=cyan" }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_16_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_16_7_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 8 + "blockState": "minecraft:shulker_box;color=silver" }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_16_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_16_8_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 7 + "blockState": "minecraft:shulker_box;color=gray" }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_16_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_16_9_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 6 + "blockState": "minecraft:shulker_box;color=pink" }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_17_0_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_17_0_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 15 + "blockState": "minecraft:shulker_box;color=black" }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_17_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_17_10_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 5 + "blockState": "minecraft:shulker_box;color=lime" }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_17_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_17_11_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 4 + "blockState": "minecraft:shulker_box;color=yellow" }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_17_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_17_12_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 3 + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_17_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_17_13_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 2 + "blockState": "minecraft:shulker_box;color=magenta" }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_17_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_17_14_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 1 + "blockState": "minecraft:shulker_box;color=orange" }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_17_15_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_17_15_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box" + "blockState": "minecraft:shulker_box" }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_17_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_17_1_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 14 + "blockState": "minecraft:shulker_box;color=red" }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_17_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_17_2_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 13 + "blockState": "minecraft:shulker_box;color=green" }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_17_4_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_17_4_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 11 + "blockState": "minecraft:shulker_box;color=blue" }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_17_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_17_5_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 10 + "blockState": "minecraft:shulker_box;color=purple" }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_17_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_17_6_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 9 + "blockState": "minecraft:shulker_box;color=cyan" }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_17_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_17_7_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 8 + "blockState": "minecraft:shulker_box;color=silver" }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_17_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_17_8_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 7 + "blockState": "minecraft:shulker_box;color=gray" }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_17_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_17_9_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 6 + "blockState": "minecraft:shulker_box;color=pink" }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_18_0_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_18_0_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 15 + "blockState": "minecraft:shulker_box;color=black" }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_18_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_18_10_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 5 + "blockState": "minecraft:shulker_box;color=lime" }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_18_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_18_11_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 4 + "blockState": "minecraft:shulker_box;color=yellow" }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_18_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_18_12_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 3 + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_18_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_18_13_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 2 + "blockState": "minecraft:shulker_box;color=magenta" }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_18_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_18_14_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 1 + "blockState": "minecraft:shulker_box;color=orange" }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_18_15_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_18_15_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box" + "blockState": "minecraft:shulker_box" }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_18_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_18_1_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 14 + "blockState": "minecraft:shulker_box;color=red" }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_18_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_18_2_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 13 + "blockState": "minecraft:shulker_box;color=green" }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_18_3_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_18_3_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 12 + "blockState": "minecraft:shulker_box;color=brown" }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_18_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_18_5_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 10 + "blockState": "minecraft:shulker_box;color=purple" }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_18_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_18_6_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 9 + "blockState": "minecraft:shulker_box;color=cyan" }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_18_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_18_7_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 8 + "blockState": "minecraft:shulker_box;color=silver" }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_18_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_18_8_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 7 + "blockState": "minecraft:shulker_box;color=gray" }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_18_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_18_9_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 6 + "blockState": "minecraft:shulker_box;color=pink" }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_19_0_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_19_0_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 15 + "blockState": "minecraft:shulker_box;color=black" }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_19_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_19_10_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 5 + "blockState": "minecraft:shulker_box;color=lime" }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_19_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_19_11_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 4 + "blockState": "minecraft:shulker_box;color=yellow" }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_19_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_19_12_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 3 + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_19_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_19_13_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 2 + "blockState": "minecraft:shulker_box;color=magenta" }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_19_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_19_14_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 1 + "blockState": "minecraft:shulker_box;color=orange" }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_19_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_19_1_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 14 + "blockState": "minecraft:shulker_box;color=red" }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_19_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_19_2_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 13 + "blockState": "minecraft:shulker_box;color=green" }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_19_3_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_19_3_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 12 + "blockState": "minecraft:shulker_box;color=brown" }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_19_4_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_19_4_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 11 + "blockState": "minecraft:shulker_box;color=blue" }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_19_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_19_5_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 10 + "blockState": "minecraft:shulker_box;color=purple" }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_19_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_19_6_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 9 + "blockState": "minecraft:shulker_box;color=cyan" }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_19_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_19_7_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 8 + "blockState": "minecraft:shulker_box;color=silver" }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_19_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_19_8_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 7 + "blockState": "minecraft:shulker_box;color=gray" }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_19_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_19_9_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 6 + "blockState": "minecraft:shulker_box;color=pink" }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_1_0_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_1_0_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 15 + "blockState": "minecraft:shulker_box;color=black" }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6598 + "blockState": "minecraft:shulker_box;color=red" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_1_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_1_10_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 5 + "blockState": "minecraft:shulker_box;color=lime" }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6598 + "blockState": "minecraft:shulker_box;color=red" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_1_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_1_11_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 4 + "blockState": "minecraft:shulker_box;color=yellow" }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6598 + "blockState": "minecraft:shulker_box;color=red" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_1_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_1_12_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 3 + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6598 + "blockState": "minecraft:shulker_box;color=red" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_1_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_1_13_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 2 + "blockState": "minecraft:shulker_box;color=magenta" }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6598 + "blockState": "minecraft:shulker_box;color=red" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_1_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_1_14_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 1 + "blockState": "minecraft:shulker_box;color=orange" }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6598 + "blockState": "minecraft:shulker_box;color=red" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_1_15_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_1_15_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box" + "blockState": "minecraft:shulker_box" }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6598 + "blockState": "minecraft:shulker_box;color=red" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_1_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_1_2_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 13 + "blockState": "minecraft:shulker_box;color=green" }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6598 + "blockState": "minecraft:shulker_box;color=red" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_1_3_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_1_3_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 12 + "blockState": "minecraft:shulker_box;color=brown" }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6598 + "blockState": "minecraft:shulker_box;color=red" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_1_4_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_1_4_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 11 + "blockState": "minecraft:shulker_box;color=blue" }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6598 + "blockState": "minecraft:shulker_box;color=red" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_1_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_1_5_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 10 + "blockState": "minecraft:shulker_box;color=purple" }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6598 + "blockState": "minecraft:shulker_box;color=red" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_1_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_1_6_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 9 + "blockState": "minecraft:shulker_box;color=cyan" }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6598 + "blockState": "minecraft:shulker_box;color=red" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_1_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_1_7_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 8 + "blockState": "minecraft:shulker_box;color=silver" }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6598 + "blockState": "minecraft:shulker_box;color=red" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_1_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_1_8_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 7 + "blockState": "minecraft:shulker_box;color=gray" }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6598 + "blockState": "minecraft:shulker_box;color=red" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_1_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_1_9_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 6 + "blockState": "minecraft:shulker_box;color=pink" }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6598 + "blockState": "minecraft:shulker_box;color=red" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_2_0_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_2_0_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 15 + "blockState": "minecraft:shulker_box;color=black" }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6597 + "blockState": "minecraft:shulker_box;color=green" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_2_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_2_10_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 5 + "blockState": "minecraft:shulker_box;color=lime" }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6597 + "blockState": "minecraft:shulker_box;color=green" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_2_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_2_11_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 4 + "blockState": "minecraft:shulker_box;color=yellow" }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6597 + "blockState": "minecraft:shulker_box;color=green" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_2_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_2_12_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 3 + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6597 + "blockState": "minecraft:shulker_box;color=green" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_2_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_2_13_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 2 + "blockState": "minecraft:shulker_box;color=magenta" }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6597 + "blockState": "minecraft:shulker_box;color=green" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_2_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_2_14_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 1 + "blockState": "minecraft:shulker_box;color=orange" }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6597 + "blockState": "minecraft:shulker_box;color=green" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_2_15_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_2_15_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box" + "blockState": "minecraft:shulker_box" }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6597 + "blockState": "minecraft:shulker_box;color=green" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_2_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_2_1_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 14 + "blockState": "minecraft:shulker_box;color=red" }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6597 + "blockState": "minecraft:shulker_box;color=green" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_2_3_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_2_3_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 12 + "blockState": "minecraft:shulker_box;color=brown" }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6597 + "blockState": "minecraft:shulker_box;color=green" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_2_4_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_2_4_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 11 + "blockState": "minecraft:shulker_box;color=blue" }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6597 + "blockState": "minecraft:shulker_box;color=green" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_2_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_2_5_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 10 + "blockState": "minecraft:shulker_box;color=purple" }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6597 + "blockState": "minecraft:shulker_box;color=green" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_2_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_2_6_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 9 + "blockState": "minecraft:shulker_box;color=cyan" }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6597 + "blockState": "minecraft:shulker_box;color=green" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_2_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_2_7_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 8 + "blockState": "minecraft:shulker_box;color=silver" }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6597 + "blockState": "minecraft:shulker_box;color=green" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_2_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_2_8_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 7 + "blockState": "minecraft:shulker_box;color=gray" }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6597 + "blockState": "minecraft:shulker_box;color=green" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_2_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_2_9_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 6 + "blockState": "minecraft:shulker_box;color=pink" }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6597 + "blockState": "minecraft:shulker_box;color=green" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_3_0_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_3_0_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 15 + "blockState": "minecraft:shulker_box;color=black" }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_3_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_3_10_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 5 + "blockState": "minecraft:shulker_box;color=lime" }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_3_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_3_11_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 4 + "blockState": "minecraft:shulker_box;color=yellow" }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_3_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_3_12_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 3 + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_3_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_3_13_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 2 + "blockState": "minecraft:shulker_box;color=magenta" }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_3_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_3_14_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 1 + "blockState": "minecraft:shulker_box;color=orange" }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_3_15_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_3_15_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box" + "blockState": "minecraft:shulker_box" }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_3_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_3_1_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 14 + "blockState": "minecraft:shulker_box;color=red" }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_3_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_3_2_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 13 + "blockState": "minecraft:shulker_box;color=green" }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_3_4_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_3_4_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 11 + "blockState": "minecraft:shulker_box;color=blue" }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_3_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_3_5_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 10 + "blockState": "minecraft:shulker_box;color=purple" }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_3_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_3_6_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 9 + "blockState": "minecraft:shulker_box;color=cyan" }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_3_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_3_7_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 8 + "blockState": "minecraft:shulker_box;color=silver" }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_3_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_3_8_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 7 + "blockState": "minecraft:shulker_box;color=gray" }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_3_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_3_9_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 6 + "blockState": "minecraft:shulker_box;color=pink" }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_4_0_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_4_0_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 15 + "blockState": "minecraft:shulker_box;color=black" }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_4_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_4_10_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 5 + "blockState": "minecraft:shulker_box;color=lime" }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_4_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_4_11_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 4 + "blockState": "minecraft:shulker_box;color=yellow" }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_4_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_4_12_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 3 + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_4_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_4_13_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 2 + "blockState": "minecraft:shulker_box;color=magenta" }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_4_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_4_14_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 1 + "blockState": "minecraft:shulker_box;color=orange" }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_4_15_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_4_15_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box" + "blockState": "minecraft:shulker_box" }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_4_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_4_1_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 14 + "blockState": "minecraft:shulker_box;color=red" }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_4_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_4_2_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 13 + "blockState": "minecraft:shulker_box;color=green" }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_4_3_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_4_3_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 12 + "blockState": "minecraft:shulker_box;color=brown" }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_4_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_4_5_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 10 + "blockState": "minecraft:shulker_box;color=purple" }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_4_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_4_6_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 9 + "blockState": "minecraft:shulker_box;color=cyan" }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_4_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_4_7_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 8 + "blockState": "minecraft:shulker_box;color=silver" }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_4_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_4_8_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 7 + "blockState": "minecraft:shulker_box;color=gray" }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_4_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_4_9_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 6 + "blockState": "minecraft:shulker_box;color=pink" }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_5_0_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_5_0_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 15 + "blockState": "minecraft:shulker_box;color=black" }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6594 + "blockState": "minecraft:shulker_box;color=purple" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_5_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_5_10_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 5 + "blockState": "minecraft:shulker_box;color=lime" }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6594 + "blockState": "minecraft:shulker_box;color=purple" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_5_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_5_11_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 4 + "blockState": "minecraft:shulker_box;color=yellow" }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6594 + "blockState": "minecraft:shulker_box;color=purple" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_5_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_5_12_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 3 + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6594 + "blockState": "minecraft:shulker_box;color=purple" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_5_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_5_13_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 2 + "blockState": "minecraft:shulker_box;color=magenta" }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6594 + "blockState": "minecraft:shulker_box;color=purple" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_5_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_5_14_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 1 + "blockState": "minecraft:shulker_box;color=orange" }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6594 + "blockState": "minecraft:shulker_box;color=purple" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_5_15_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_5_15_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box" + "blockState": "minecraft:shulker_box" }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6594 + "blockState": "minecraft:shulker_box;color=purple" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_5_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_5_1_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 14 + "blockState": "minecraft:shulker_box;color=red" }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6594 + "blockState": "minecraft:shulker_box;color=purple" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_5_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_5_2_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 13 + "blockState": "minecraft:shulker_box;color=green" }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6594 + "blockState": "minecraft:shulker_box;color=purple" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_5_3_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_5_3_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 12 + "blockState": "minecraft:shulker_box;color=brown" }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6594 + "blockState": "minecraft:shulker_box;color=purple" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_5_4_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_5_4_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 11 + "blockState": "minecraft:shulker_box;color=blue" }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6594 + "blockState": "minecraft:shulker_box;color=purple" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_5_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_5_6_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 9 + "blockState": "minecraft:shulker_box;color=cyan" }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6594 + "blockState": "minecraft:shulker_box;color=purple" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_5_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_5_7_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 8 + "blockState": "minecraft:shulker_box;color=silver" }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6594 + "blockState": "minecraft:shulker_box;color=purple" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_5_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_5_8_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 7 + "blockState": "minecraft:shulker_box;color=gray" }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6594 + "blockState": "minecraft:shulker_box;color=purple" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_5_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_5_9_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 6 + "blockState": "minecraft:shulker_box;color=pink" }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6594 + "blockState": "minecraft:shulker_box;color=purple" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_6_0_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_6_0_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 15 + "blockState": "minecraft:shulker_box;color=black" }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6593 + "blockState": "minecraft:shulker_box;color=cyan" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_6_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_6_10_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 5 + "blockState": "minecraft:shulker_box;color=lime" }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6593 + "blockState": "minecraft:shulker_box;color=cyan" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_6_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_6_11_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 4 + "blockState": "minecraft:shulker_box;color=yellow" }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6593 + "blockState": "minecraft:shulker_box;color=cyan" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_6_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_6_12_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 3 + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6593 + "blockState": "minecraft:shulker_box;color=cyan" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_6_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_6_13_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 2 + "blockState": "minecraft:shulker_box;color=magenta" }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6593 + "blockState": "minecraft:shulker_box;color=cyan" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_6_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_6_14_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 1 + "blockState": "minecraft:shulker_box;color=orange" }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6593 + "blockState": "minecraft:shulker_box;color=cyan" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_6_15_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_6_15_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box" + "blockState": "minecraft:shulker_box" }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6593 + "blockState": "minecraft:shulker_box;color=cyan" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_6_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_6_1_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 14 + "blockState": "minecraft:shulker_box;color=red" }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6593 + "blockState": "minecraft:shulker_box;color=cyan" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_6_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_6_2_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 13 + "blockState": "minecraft:shulker_box;color=green" }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6593 + "blockState": "minecraft:shulker_box;color=cyan" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_6_3_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_6_3_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 12 + "blockState": "minecraft:shulker_box;color=brown" }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6593 + "blockState": "minecraft:shulker_box;color=cyan" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_6_4_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_6_4_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 11 + "blockState": "minecraft:shulker_box;color=blue" }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6593 + "blockState": "minecraft:shulker_box;color=cyan" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_6_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_6_5_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 10 + "blockState": "minecraft:shulker_box;color=purple" }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6593 + "blockState": "minecraft:shulker_box;color=cyan" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_6_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_6_7_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 8 + "blockState": "minecraft:shulker_box;color=silver" }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6593 + "blockState": "minecraft:shulker_box;color=cyan" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_6_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_6_8_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 7 + "blockState": "minecraft:shulker_box;color=gray" }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6593 + "blockState": "minecraft:shulker_box;color=cyan" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_6_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_6_9_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 6 + "blockState": "minecraft:shulker_box;color=pink" }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6593 + "blockState": "minecraft:shulker_box;color=cyan" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_7_0_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_7_0_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 15 + "blockState": "minecraft:shulker_box;color=black" }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6592 + "blockState": "minecraft:shulker_box;color=silver" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_7_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_7_10_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 5 + "blockState": "minecraft:shulker_box;color=lime" }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6592 + "blockState": "minecraft:shulker_box;color=silver" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_7_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_7_11_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 4 + "blockState": "minecraft:shulker_box;color=yellow" }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6592 + "blockState": "minecraft:shulker_box;color=silver" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_7_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_7_12_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 3 + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6592 + "blockState": "minecraft:shulker_box;color=silver" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_7_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_7_13_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 2 + "blockState": "minecraft:shulker_box;color=magenta" }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6592 + "blockState": "minecraft:shulker_box;color=silver" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_7_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_7_14_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 1 + "blockState": "minecraft:shulker_box;color=orange" }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6592 + "blockState": "minecraft:shulker_box;color=silver" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_7_15_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_7_15_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box" + "blockState": "minecraft:shulker_box" }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6592 + "blockState": "minecraft:shulker_box;color=silver" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_7_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_7_1_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 14 + "blockState": "minecraft:shulker_box;color=red" }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6592 + "blockState": "minecraft:shulker_box;color=silver" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_7_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_7_2_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 13 + "blockState": "minecraft:shulker_box;color=green" }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6592 + "blockState": "minecraft:shulker_box;color=silver" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_7_3_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_7_3_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 12 + "blockState": "minecraft:shulker_box;color=brown" }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6592 + "blockState": "minecraft:shulker_box;color=silver" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_7_4_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_7_4_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 11 + "blockState": "minecraft:shulker_box;color=blue" }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6592 + "blockState": "minecraft:shulker_box;color=silver" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_7_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_7_5_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 10 + "blockState": "minecraft:shulker_box;color=purple" }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6592 + "blockState": "minecraft:shulker_box;color=silver" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_7_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_7_6_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 9 + "blockState": "minecraft:shulker_box;color=cyan" }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6592 + "blockState": "minecraft:shulker_box;color=silver" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_7_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_7_8_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 7 + "blockState": "minecraft:shulker_box;color=gray" }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6592 + "blockState": "minecraft:shulker_box;color=silver" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_7_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_7_9_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 6 + "blockState": "minecraft:shulker_box;color=pink" }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6592 + "blockState": "minecraft:shulker_box;color=silver" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_8_0_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_8_0_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 15 + "blockState": "minecraft:shulker_box;color=black" }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6591 + "blockState": "minecraft:shulker_box;color=gray" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_8_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_8_10_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 5 + "blockState": "minecraft:shulker_box;color=lime" }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6591 + "blockState": "minecraft:shulker_box;color=gray" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_8_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_8_11_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 4 + "blockState": "minecraft:shulker_box;color=yellow" }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6591 + "blockState": "minecraft:shulker_box;color=gray" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_8_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_8_12_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 3 + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6591 + "blockState": "minecraft:shulker_box;color=gray" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_8_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_8_13_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 2 + "blockState": "minecraft:shulker_box;color=magenta" }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6591 + "blockState": "minecraft:shulker_box;color=gray" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_8_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_8_14_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 1 + "blockState": "minecraft:shulker_box;color=orange" }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6591 + "blockState": "minecraft:shulker_box;color=gray" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_8_15_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_8_15_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box" + "blockState": "minecraft:shulker_box" }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6591 + "blockState": "minecraft:shulker_box;color=gray" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_8_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_8_1_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 14 + "blockState": "minecraft:shulker_box;color=red" }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6591 + "blockState": "minecraft:shulker_box;color=gray" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_8_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_8_2_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 13 + "blockState": "minecraft:shulker_box;color=green" }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6591 + "blockState": "minecraft:shulker_box;color=gray" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_8_3_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_8_3_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 12 + "blockState": "minecraft:shulker_box;color=brown" }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6591 + "blockState": "minecraft:shulker_box;color=gray" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_8_4_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_8_4_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 11 + "blockState": "minecraft:shulker_box;color=blue" }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6591 + "blockState": "minecraft:shulker_box;color=gray" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_8_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_8_5_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 10 + "blockState": "minecraft:shulker_box;color=purple" }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6591 + "blockState": "minecraft:shulker_box;color=gray" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_8_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_8_6_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 9 + "blockState": "minecraft:shulker_box;color=cyan" }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6591 + "blockState": "minecraft:shulker_box;color=gray" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_8_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_8_7_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 8 + "blockState": "minecraft:shulker_box;color=silver" }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6591 + "blockState": "minecraft:shulker_box;color=gray" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_8_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_8_9_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 6 + "blockState": "minecraft:shulker_box;color=pink" }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6591 + "blockState": "minecraft:shulker_box;color=gray" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_9_0_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_9_0_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 15 + "blockState": "minecraft:shulker_box;color=black" }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6590 + "blockState": "minecraft:shulker_box;color=pink" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_9_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_9_10_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 5 + "blockState": "minecraft:shulker_box;color=lime" }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6590 + "blockState": "minecraft:shulker_box;color=pink" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_9_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_9_11_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 4 + "blockState": "minecraft:shulker_box;color=yellow" }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6590 + "blockState": "minecraft:shulker_box;color=pink" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_9_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_9_12_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 3 + "blockState": "minecraft:shulker_box;color=light_blue" }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6590 + "blockState": "minecraft:shulker_box;color=pink" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_9_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_9_13_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 2 + "blockState": "minecraft:shulker_box;color=magenta" }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6590 + "blockState": "minecraft:shulker_box;color=pink" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_9_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_9_14_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 1 + "blockState": "minecraft:shulker_box;color=orange" }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6590 + "blockState": "minecraft:shulker_box;color=pink" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_9_15_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_9_15_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box" + "blockState": "minecraft:shulker_box" }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6590 + "blockState": "minecraft:shulker_box;color=pink" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_9_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_9_1_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 14 + "blockState": "minecraft:shulker_box;color=red" }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6590 + "blockState": "minecraft:shulker_box;color=pink" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_9_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_9_2_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 13 + "blockState": "minecraft:shulker_box;color=green" }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6590 + "blockState": "minecraft:shulker_box;color=pink" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_9_3_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_9_3_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 12 + "blockState": "minecraft:shulker_box;color=brown" }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6590 + "blockState": "minecraft:shulker_box;color=pink" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_9_4_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_9_4_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 11 + "blockState": "minecraft:shulker_box;color=blue" }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6590 + "blockState": "minecraft:shulker_box;color=pink" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_9_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_9_5_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 10 + "blockState": "minecraft:shulker_box;color=purple" }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6590 + "blockState": "minecraft:shulker_box;color=pink" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_9_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_9_6_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 9 + "blockState": "minecraft:shulker_box;color=cyan" }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6590 + "blockState": "minecraft:shulker_box;color=pink" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_9_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_9_7_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 8 + "blockState": "minecraft:shulker_box;color=silver" }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6590 + "blockState": "minecraft:shulker_box;color=pink" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_block_9_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_block_9_8_0", + "type": 5, + "input": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "damage" : 7 + "blockState": "minecraft:shulker_box;color=gray" }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6590 + "blockState": "minecraft:shulker_box;color=pink" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_0_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_0_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_10_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_10_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6589 + "blockState": "minecraft:shulker_box;color=lime" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_11_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_11_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6588 + "blockState": "minecraft:shulker_box;color=yellow" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_12_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_12_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6587 + "blockState": "minecraft:shulker_box;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_13_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_13_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6586 + "blockState": "minecraft:shulker_box;color=magenta" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_14_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_14_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6585 + "blockState": "minecraft:shulker_box;color=orange" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_15_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_15_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_16_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_16_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6599 + "blockState": "minecraft:shulker_box;color=black" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_17_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_17_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_18_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_18_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_19_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_19_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6584 + "blockState": "minecraft:shulker_box" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_1_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_1_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6598 + "blockState": "minecraft:shulker_box;color=red" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_2_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_2_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6597 + "blockState": "minecraft:shulker_box;color=green" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_3_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_3_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6596 + "blockState": "minecraft:shulker_box;color=brown" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_4_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_4_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6595 + "blockState": "minecraft:shulker_box;color=blue" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_5_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_5_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6594 + "blockState": "minecraft:shulker_box;color=purple" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_6_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_6_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6593 + "blockState": "minecraft:shulker_box;color=cyan" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_7_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_7_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6592 + "blockState": "minecraft:shulker_box;color=silver" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_8_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_8_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6591 + "blockState": "minecraft:shulker_box;color=gray" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "shulkerBox_shulker_box_color_dye_9_0", - "type" : 5, - "input" : [ + "id": "shulkerBox_shulker_box_color_dye_9_0", + "type": 5, + "input": [ { - "legacyId" : 205, - "id" : "minecraft:undyed_shulker_box" + "blockState": "minecraft:undyed_shulker_box" }, { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true } ], - "output" : [ + "output": [ { - "legacyId" : 218, - "id" : "minecraft:shulker_box", - "blockRuntimeId" : 6590 + "blockState": "minecraft:shulker_box;color=pink" } ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "slab3_endstonebrick_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 206, - "id" : "minecraft:end_bricks" + "id": "slab3_endstonebrick_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:end_bricks" } }, - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 6, - "blockRuntimeId" : 7009 + "count": 6, + "blockState": "minecraft:stone_slab3" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "spruce_stairs_spruce_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 1 + "id": "spruce_stairs_spruce_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:planks;wood_type=spruce" } }, - "output" : [ + "output": [ { - "legacyId" : 134, - "id" : "minecraft:spruce_stairs", - "count" : 4, - "blockRuntimeId" : 6796 + "count": 4, + "blockState": "minecraft:spruce_stairs" } ], - "shape" : [ + "shape": [ "A ", "AA ", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stick_wood_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "id": "stick_wood_recipeId", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:planks" } }, - "output" : [ + "output": [ { - "legacyId" : 320, - "id" : "minecraft:stick", - "count" : 4 + "id": "minecraft:stick", + "count": 4 } ], - "shape" : [ + "shape": [ "A", "A" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "stoneslab2_RedSandstone_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 179, - "id" : "minecraft:red_sandstone" + "id": "stoneslab2_RedSandstone_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:red_sandstone" } }, - "output" : [ + "output": [ { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "count" : 6, - "blockRuntimeId" : 6993 + "count": 6, + "blockState": "minecraft:stone_slab2" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab2_prismarine_bricks_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 168, - "id" : "minecraft:prismarine", - "damage" : 2 + "id": "stoneslab2_prismarine_bricks_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:prismarine;prismarine_block_type=bricks" } }, - "output" : [ + "output": [ { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "count" : 6, - "blockRuntimeId" : 6997 + "count": 6, + "blockState": "minecraft:stone_slab2;stone_slab_type_2=prismarine_brick" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab2_prismarine_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 168, - "id" : "minecraft:prismarine", - "damage" : 1 + "id": "stoneslab2_prismarine_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:prismarine;prismarine_block_type=dark" } }, - "output" : [ + "output": [ { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "count" : 6, - "blockRuntimeId" : 6996 + "count": 6, + "blockState": "minecraft:stone_slab2;stone_slab_type_2=prismarine_dark" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab2_purpur_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 201, - "id" : "minecraft:purpur_block" + "id": "stoneslab2_purpur_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:purpur_block" } }, - "output" : [ + "output": [ { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "count" : 6, - "blockRuntimeId" : 6994 + "count": 6, + "blockState": "minecraft:stone_slab2;stone_slab_type_2=purpur" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab2_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 48, - "id" : "minecraft:mossy_cobblestone" + "id": "stoneslab2_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:mossy_cobblestone" } }, - "output" : [ + "output": [ { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "count" : 6, - "blockRuntimeId" : 6998 + "count": 6, + "blockState": "minecraft:stone_slab2;stone_slab_type_2=mossy_cobblestone" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab2_rednetherbrick_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 215, - "id" : "minecraft:red_nether_brick" + "id": "stoneslab2_rednetherbrick_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:red_nether_brick" } }, - "output" : [ + "output": [ { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "count" : 6, - "blockRuntimeId" : 7000 + "count": 6, + "blockState": "minecraft:stone_slab2;stone_slab_type_2=red_nether_brick" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab2_redsandstone_heiroglyphs_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 179, - "id" : "minecraft:red_sandstone", - "damage" : 1 + "id": "stoneslab2_redsandstone_heiroglyphs_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:red_sandstone;sand_stone_type=heiroglyphs" } }, - "output" : [ + "output": [ { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "count" : 6, - "blockRuntimeId" : 6993 + "count": 6, + "blockState": "minecraft:stone_slab2" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab2_smoothsandstone_smooth_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 24, - "id" : "minecraft:sandstone", - "damage" : 3 + "id": "stoneslab2_smoothsandstone_smooth_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:sandstone;sand_stone_type=smooth" } }, - "output" : [ + "output": [ { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "count" : 6, - "blockRuntimeId" : 6999 + "count": 6, + "blockState": "minecraft:stone_slab2;stone_slab_type_2=smooth_sandstone" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab3_andesite_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 5 + "id": "stoneslab3_andesite_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone;stone_type=andesite" } }, - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 6, - "blockRuntimeId" : 7012 + "count": 6, + "blockState": "minecraft:stone_slab3;stone_slab_type_3=andesite" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab3_diorite_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 3 + "id": "stoneslab3_diorite_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone;stone_type=diorite" } }, - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 6, - "blockRuntimeId" : 7013 + "count": 6, + "blockState": "minecraft:stone_slab3;stone_slab_type_3=diorite" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab3_granite", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 1 + "id": "stoneslab3_granite", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone;stone_type=granite" } }, - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 6, - "blockRuntimeId" : 7015 + "count": 6, + "blockState": "minecraft:stone_slab3;stone_slab_type_3=granite" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab3_polishedGranite_GraniteSmooth_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 2 + "id": "stoneslab3_polishedGranite_GraniteSmooth_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone;stone_type=granite_smooth" } }, - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 6, - "blockRuntimeId" : 7016 + "count": 6, + "blockState": "minecraft:stone_slab3;stone_slab_type_3=polished_granite" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab3_polished_andesite_andesitesmooth_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 6 + "id": "stoneslab3_polished_andesite_andesitesmooth_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone;stone_type=andesite_smooth" } }, - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 6, - "blockRuntimeId" : 7011 + "count": 6, + "blockState": "minecraft:stone_slab3;stone_slab_type_3=polished_andesite" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab3_polished_diorite_dioritesmooth_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "damage" : 4 + "id": "stoneslab3_polished_diorite_dioritesmooth_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:stone;stone_type=diorite_smooth" } }, - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 6, - "blockRuntimeId" : 7014 + "count": 6, + "blockState": "minecraft:stone_slab3;stone_slab_type_3=polished_diorite" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab3_smooth_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 179, - "id" : "minecraft:red_sandstone", - "damage" : 3 + "id": "stoneslab3_smooth_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:red_sandstone;sand_stone_type=smooth" } }, - "output" : [ + "output": [ { - "legacyId" : -162, - "id" : "minecraft:double_stone_slab3", - "count" : 6, - "blockRuntimeId" : 7010 + "count": 6, + "blockState": "minecraft:stone_slab3;stone_slab_type_3=smooth_red_sandstone" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab4_cut_redsandstone_cut_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 179, - "id" : "minecraft:red_sandstone", - "damage" : 2 + "id": "stoneslab4_cut_redsandstone_cut_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:red_sandstone;sand_stone_type=cut" } }, - "output" : [ + "output": [ { - "legacyId" : -166, - "id" : "minecraft:double_stone_slab4", - "count" : 6, - "blockRuntimeId" : 7029 + "count": 6, + "blockState": "minecraft:stone_slab4;stone_slab_type_4=cut_red_sandstone" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab4_cut_sandstone_cut_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 24, - "id" : "minecraft:sandstone", - "damage" : 2 + "id": "stoneslab4_cut_sandstone_cut_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:sandstone;sand_stone_type=cut" } }, - "output" : [ + "output": [ { - "legacyId" : -166, - "id" : "minecraft:double_stone_slab4", - "count" : 6, - "blockRuntimeId" : 7028 + "count": 6, + "blockState": "minecraft:stone_slab4;stone_slab_type_4=cut_sandstone" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab4_smoothquartz_smooth_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 155, - "id" : "minecraft:quartz_block", - "damage" : 3 + "id": "stoneslab4_smoothquartz_smooth_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:quartz_block;chisel_type=smooth" } }, - "output" : [ + "output": [ { - "legacyId" : -166, - "id" : "minecraft:double_stone_slab4", - "count" : 6, - "blockRuntimeId" : 7026 + "count": 6, + "blockState": "minecraft:stone_slab4;stone_slab_type_4=smooth_quartz" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab_quartz_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 155, - "id" : "minecraft:quartz_block" + "id": "stoneslab_quartz_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:quartz_block" } }, - "output" : [ + "output": [ { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "count" : 6, - "blockRuntimeId" : 6983 + "count": 6, + "blockState": "minecraft:stone_slab;stone_slab_type=quartz" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 168, - "id" : "minecraft:prismarine" + "id": "stoneslab_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:prismarine" } }, - "output" : [ + "output": [ { - "legacyId" : 182, - "id" : "minecraft:double_stone_slab2", - "count" : 6, - "blockRuntimeId" : 6995 + "count": 6, + "blockState": "minecraft:stone_slab2;stone_slab_type_2=prismarine_rough" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "stoneslab_sandstone_heiroglyphs_recipeId", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 24, - "id" : "minecraft:sandstone", - "damage" : 1 + "id": "stoneslab_sandstone_heiroglyphs_recipeId", + "type": 1, + "input": { + "A": { + "blockState": "minecraft:sandstone;sand_stone_type=heiroglyphs" } }, - "output" : [ + "output": [ { - "legacyId" : 44, - "id" : "minecraft:double_stone_slab", - "count" : 6, - "blockRuntimeId" : 6978 + "count": 6, + "blockState": "minecraft:stone_slab;stone_slab_type=sandstone" } ], - "shape" : [ + "shape": [ "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "tool_material_recipe_0_0", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "id": "tool_material_recipe_0_0", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 310, - "id" : "minecraft:wooden_pickaxe" + "id": "minecraft:wooden_pickaxe" } ], - "shape" : [ + "shape": [ "AAA", " B ", " B " ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "tool_material_recipe_0_1", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "id": "tool_material_recipe_0_1", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 309, - "id" : "minecraft:wooden_shovel" + "id": "minecraft:wooden_shovel" } ], - "shape" : [ + "shape": [ "A", "B", "B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "tool_material_recipe_0_2", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "id": "tool_material_recipe_0_2", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 311, - "id" : "minecraft:wooden_axe" + "id": "minecraft:wooden_axe" } ], - "shape" : [ + "shape": [ "AA", "AB", " B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "tool_material_recipe_0_3", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "id": "tool_material_recipe_0_3", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 329, - "id" : "minecraft:wooden_hoe" + "id": "minecraft:wooden_hoe" } ], - "shape" : [ + "shape": [ "AA", " B", " B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "type" : 4, - "uuid" : "aecd2294-4b94-434b-8667-4499bb2c9327" + "type": 4, + "uuid": "aecd2294-4b94-434b-8667-4499bb2c9327" }, { - "id" : "weapon_arrow_recipe_10", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_10", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 10 + "B": { + "id": "minecraft:lingering_potion", + "damage": 10 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 11, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 11 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_11", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_11", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 11 + "B": { + "id": "minecraft:lingering_potion", + "damage": 11 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 12, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 12 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_12", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_12", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 12 + "B": { + "id": "minecraft:lingering_potion", + "damage": 12 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 13, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 13 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_13", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_13", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 13 + "B": { + "id": "minecraft:lingering_potion", + "damage": 13 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 14, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 14 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_14", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_14", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 14 + "B": { + "id": "minecraft:lingering_potion", + "damage": 14 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 15, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 15 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_15", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_15", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 15 + "B": { + "id": "minecraft:lingering_potion", + "damage": 15 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 16, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 16 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_16", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_16", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 16 + "B": { + "id": "minecraft:lingering_potion", + "damage": 16 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 17, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 17 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_17", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_17", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 17 + "B": { + "id": "minecraft:lingering_potion", + "damage": 17 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 18, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 18 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_18", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_18", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 18 + "B": { + "id": "minecraft:lingering_potion", + "damage": 18 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 19, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 19 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_19", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_19", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 19 + "B": { + "id": "minecraft:lingering_potion", + "damage": 19 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 20, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 20 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_20", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_20", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 20 + "B": { + "id": "minecraft:lingering_potion", + "damage": 20 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 21, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 21 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_21", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_21", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 21 + "B": { + "id": "minecraft:lingering_potion", + "damage": 21 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 22, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 22 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_22", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_22", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 22 + "B": { + "id": "minecraft:lingering_potion", + "damage": 22 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 23, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 23 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_23", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_23", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 23 + "B": { + "id": "minecraft:lingering_potion", + "damage": 23 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 24, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 24 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_24", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_24", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 24 + "B": { + "id": "minecraft:lingering_potion", + "damage": 24 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 25, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 25 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_25", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_25", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 25 + "B": { + "id": "minecraft:lingering_potion", + "damage": 25 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 26, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 26 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_26", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_26", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 26 + "B": { + "id": "minecraft:lingering_potion", + "damage": 26 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 27, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 27 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_27", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_27", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 27 + "B": { + "id": "minecraft:lingering_potion", + "damage": 27 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 28, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 28 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_28", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_28", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 28 + "B": { + "id": "minecraft:lingering_potion", + "damage": 28 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 29, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 29 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_29", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_29", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 29 + "B": { + "id": "minecraft:lingering_potion", + "damage": 29 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 30, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 30 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_30", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_30", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 30 + "B": { + "id": "minecraft:lingering_potion", + "damage": 30 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 31, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 31 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_31", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_31", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 31 + "B": { + "id": "minecraft:lingering_potion", + "damage": 31 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 32, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 32 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_32", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_32", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 32 + "B": { + "id": "minecraft:lingering_potion", + "damage": 32 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 33, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 33 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_33", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_33", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 33 + "B": { + "id": "minecraft:lingering_potion", + "damage": 33 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 34, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 34 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_34", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_34", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 34 + "B": { + "id": "minecraft:lingering_potion", + "damage": 34 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 35, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 35 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_35", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_35", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 35 + "B": { + "id": "minecraft:lingering_potion", + "damage": 35 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 36, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 36 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_36", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_36", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 36 + "B": { + "id": "minecraft:lingering_potion", + "damage": 36 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 37, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 37 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_37", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_37", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 37 + "B": { + "id": "minecraft:lingering_potion", + "damage": 37 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 38, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 38 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_38", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_38", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 38 + "B": { + "id": "minecraft:lingering_potion", + "damage": 38 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 39, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 39 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_39", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_39", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 39 + "B": { + "id": "minecraft:lingering_potion", + "damage": 39 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 40, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 40 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_40", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_40", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 40 + "B": { + "id": "minecraft:lingering_potion", + "damage": 40 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 41, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 41 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_41", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_41", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 41 + "B": { + "id": "minecraft:lingering_potion", + "damage": 41 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 42, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 42 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_42", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_42", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 42 + "B": { + "id": "minecraft:lingering_potion", + "damage": 42 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 43, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 43 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_5", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_5", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 5 + "B": { + "id": "minecraft:lingering_potion", + "damage": 5 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 6, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 6 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_6", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_6", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 6 + "B": { + "id": "minecraft:lingering_potion", + "damage": 6 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 7, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 7 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_7", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_7", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 7 + "B": { + "id": "minecraft:lingering_potion", + "damage": 7 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 8, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 8 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_8", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_8", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 8 + "B": { + "id": "minecraft:lingering_potion", + "damage": 8 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 9, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 9 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_arrow_recipe_9", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 301, - "id" : "minecraft:arrow" + "id": "weapon_arrow_recipe_9", + "type": 1, + "input": { + "A": { + "id": "minecraft:arrow" }, - "B" : { - "legacyId" : 562, - "id" : "minecraft:lingering_potion", - "damage" : 9 + "B": { + "id": "minecraft:lingering_potion", + "damage": 9 } }, - "output" : [ + "output": [ { - "legacyId" : 301, - "id" : "minecraft:arrow", - "damage" : 10, - "count" : 8 + "id": "minecraft:arrow", + "count": 8, + "damage": 10 } ], - "shape" : [ + "shape": [ "AAA", "ABA", "AAA" ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "weapon_stick_recipe_0_0", - "type" : 1, - "input" : { - "A" : { - "legacyId" : 5, - "id" : "minecraft:planks", - "damage" : 32767 + "id": "weapon_stick_recipe_0_0", + "type": 1, + "input": { + "A": { + "fuzzy": true, + "blockState": "minecraft:planks" }, - "B" : { - "legacyId" : 320, - "id" : "minecraft:stick", - "damage" : 32767 + "B": { + "id": "minecraft:stick", + "fuzzy": true } }, - "output" : [ + "output": [ { - "legacyId" : 308, - "id" : "minecraft:wooden_sword" + "id": "minecraft:wooden_sword" } ], - "shape" : [ + "shape": [ "A", "A", "B" ], - "block" : "crafting_table", - "priority" : 0 + "block": "crafting_table", + "priority": 0 }, { - "id" : "wool_dye_wool_0_1", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_0_1", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "blockState": "minecraft:wool;color=red" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_0_10", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_0_10", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "blockState": "minecraft:wool;color=lime" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_0_11", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_0_11", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "blockState": "minecraft:wool;color=yellow" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_0_12", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_0_12", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "blockState": "minecraft:wool;color=light_blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_0_13", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_0_13", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "blockState": "minecraft:wool;color=magenta" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_0_14", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_0_14", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "blockState": "minecraft:wool;color=orange" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_0_15", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_0_15", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool" + "blockState": "minecraft:wool" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_0_2", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_0_2", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "blockState": "minecraft:wool;color=green" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_0_3", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_0_3", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "blockState": "minecraft:wool;color=brown" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_0_4", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_0_4", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "blockState": "minecraft:wool;color=blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_0_5", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_0_5", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "blockState": "minecraft:wool;color=purple" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_0_6", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_0_6", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "blockState": "minecraft:wool;color=cyan" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_0_7", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_0_7", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "blockState": "minecraft:wool;color=silver" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_0_8", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_0_8", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "blockState": "minecraft:wool;color=gray" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_0_9", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_0_9", + "type": 0, + "input": [ { - "legacyId" : 413, - "id" : "minecraft:ink_sac", - "damage" : 32767 + "id": "minecraft:ink_sac", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "blockState": "minecraft:wool;color=pink" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_10_0", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_10_0", + "type": 0, + "input": [ { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "blockState": "minecraft:wool;color=black" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7664 + "blockState": "minecraft:wool;color=lime" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_10_1", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_10_1", + "type": 0, + "input": [ { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "blockState": "minecraft:wool;color=red" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7664 + "blockState": "minecraft:wool;color=lime" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_10_11", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_10_11", + "type": 0, + "input": [ { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "blockState": "minecraft:wool;color=yellow" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7664 + "blockState": "minecraft:wool;color=lime" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_10_12", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_10_12", + "type": 0, + "input": [ { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "blockState": "minecraft:wool;color=light_blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7664 + "blockState": "minecraft:wool;color=lime" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_10_13", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_10_13", + "type": 0, + "input": [ { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "blockState": "minecraft:wool;color=magenta" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7664 + "blockState": "minecraft:wool;color=lime" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_10_14", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_10_14", + "type": 0, + "input": [ { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "blockState": "minecraft:wool;color=orange" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7664 + "blockState": "minecraft:wool;color=lime" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_10_15", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_10_15", + "type": 0, + "input": [ { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool" + "blockState": "minecraft:wool" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7664 + "blockState": "minecraft:wool;color=lime" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_10_2", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_10_2", + "type": 0, + "input": [ { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "blockState": "minecraft:wool;color=green" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7664 + "blockState": "minecraft:wool;color=lime" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_10_3", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_10_3", + "type": 0, + "input": [ { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "blockState": "minecraft:wool;color=brown" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7664 + "blockState": "minecraft:wool;color=lime" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_10_4", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_10_4", + "type": 0, + "input": [ { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "blockState": "minecraft:wool;color=blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7664 + "blockState": "minecraft:wool;color=lime" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_10_5", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_10_5", + "type": 0, + "input": [ { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "blockState": "minecraft:wool;color=purple" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7664 + "blockState": "minecraft:wool;color=lime" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_10_6", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_10_6", + "type": 0, + "input": [ { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "blockState": "minecraft:wool;color=cyan" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7664 + "blockState": "minecraft:wool;color=lime" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_10_7", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_10_7", + "type": 0, + "input": [ { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "blockState": "minecraft:wool;color=silver" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7664 + "blockState": "minecraft:wool;color=lime" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_10_8", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_10_8", + "type": 0, + "input": [ { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "blockState": "minecraft:wool;color=gray" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7664 + "blockState": "minecraft:wool;color=lime" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_10_9", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_10_9", + "type": 0, + "input": [ { - "legacyId" : 405, - "id" : "minecraft:lime_dye", - "damage" : 32767 + "id": "minecraft:lime_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "blockState": "minecraft:wool;color=pink" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7664 + "blockState": "minecraft:wool;color=lime" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_11_0", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_11_0", + "type": 0, + "input": [ { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "blockState": "minecraft:wool;color=black" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7663 + "blockState": "minecraft:wool;color=yellow" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_11_1", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_11_1", + "type": 0, + "input": [ { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "blockState": "minecraft:wool;color=red" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7663 + "blockState": "minecraft:wool;color=yellow" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_11_10", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_11_10", + "type": 0, + "input": [ { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "blockState": "minecraft:wool;color=lime" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7663 + "blockState": "minecraft:wool;color=yellow" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_11_12", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_11_12", + "type": 0, + "input": [ { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "blockState": "minecraft:wool;color=light_blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7663 + "blockState": "minecraft:wool;color=yellow" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_11_13", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_11_13", + "type": 0, + "input": [ { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "blockState": "minecraft:wool;color=magenta" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7663 + "blockState": "minecraft:wool;color=yellow" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_11_14", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_11_14", + "type": 0, + "input": [ { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "blockState": "minecraft:wool;color=orange" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7663 + "blockState": "minecraft:wool;color=yellow" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_11_15", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_11_15", + "type": 0, + "input": [ { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool" + "blockState": "minecraft:wool" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7663 + "blockState": "minecraft:wool;color=yellow" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_11_2", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_11_2", + "type": 0, + "input": [ { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "blockState": "minecraft:wool;color=green" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7663 + "blockState": "minecraft:wool;color=yellow" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_11_3", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_11_3", + "type": 0, + "input": [ { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "blockState": "minecraft:wool;color=brown" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7663 + "blockState": "minecraft:wool;color=yellow" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_11_4", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_11_4", + "type": 0, + "input": [ { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "blockState": "minecraft:wool;color=blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7663 + "blockState": "minecraft:wool;color=yellow" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_11_5", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_11_5", + "type": 0, + "input": [ { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "blockState": "minecraft:wool;color=purple" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7663 + "blockState": "minecraft:wool;color=yellow" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_11_6", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_11_6", + "type": 0, + "input": [ { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "blockState": "minecraft:wool;color=cyan" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7663 + "blockState": "minecraft:wool;color=yellow" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_11_7", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_11_7", + "type": 0, + "input": [ { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "blockState": "minecraft:wool;color=silver" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7663 + "blockState": "minecraft:wool;color=yellow" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_11_8", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_11_8", + "type": 0, + "input": [ { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "blockState": "minecraft:wool;color=gray" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7663 + "blockState": "minecraft:wool;color=yellow" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_11_9", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_11_9", + "type": 0, + "input": [ { - "legacyId" : 406, - "id" : "minecraft:yellow_dye", - "damage" : 32767 + "id": "minecraft:yellow_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "blockState": "minecraft:wool;color=pink" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7663 + "blockState": "minecraft:wool;color=yellow" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_12_0", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_12_0", + "type": 0, + "input": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "blockState": "minecraft:wool;color=black" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7662 + "blockState": "minecraft:wool;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_12_1", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_12_1", + "type": 0, + "input": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "blockState": "minecraft:wool;color=red" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7662 + "blockState": "minecraft:wool;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_12_10", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_12_10", + "type": 0, + "input": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "blockState": "minecraft:wool;color=lime" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7662 + "blockState": "minecraft:wool;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_12_11", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_12_11", + "type": 0, + "input": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "blockState": "minecraft:wool;color=yellow" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7662 + "blockState": "minecraft:wool;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_12_13", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_12_13", + "type": 0, + "input": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "blockState": "minecraft:wool;color=magenta" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7662 + "blockState": "minecraft:wool;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_12_14", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_12_14", + "type": 0, + "input": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "blockState": "minecraft:wool;color=orange" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7662 + "blockState": "minecraft:wool;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_12_15", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_12_15", + "type": 0, + "input": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool" + "blockState": "minecraft:wool" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7662 + "blockState": "minecraft:wool;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_12_2", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_12_2", + "type": 0, + "input": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "blockState": "minecraft:wool;color=green" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7662 + "blockState": "minecraft:wool;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_12_3", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_12_3", + "type": 0, + "input": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "blockState": "minecraft:wool;color=brown" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7662 + "blockState": "minecraft:wool;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_12_4", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_12_4", + "type": 0, + "input": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "blockState": "minecraft:wool;color=blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7662 + "blockState": "minecraft:wool;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_12_5", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_12_5", + "type": 0, + "input": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "blockState": "minecraft:wool;color=purple" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7662 + "blockState": "minecraft:wool;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_12_6", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_12_6", + "type": 0, + "input": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "blockState": "minecraft:wool;color=cyan" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7662 + "blockState": "minecraft:wool;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_12_7", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_12_7", + "type": 0, + "input": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "blockState": "minecraft:wool;color=silver" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7662 + "blockState": "minecraft:wool;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_12_8", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_12_8", + "type": 0, + "input": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "blockState": "minecraft:wool;color=gray" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7662 + "blockState": "minecraft:wool;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_12_9", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_12_9", + "type": 0, + "input": [ { - "legacyId" : 407, - "id" : "minecraft:light_blue_dye", - "damage" : 32767 + "id": "minecraft:light_blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "blockState": "minecraft:wool;color=pink" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7662 + "blockState": "minecraft:wool;color=light_blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_13_0", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_13_0", + "type": 0, + "input": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "blockState": "minecraft:wool;color=black" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7661 + "blockState": "minecraft:wool;color=magenta" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_13_1", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_13_1", + "type": 0, + "input": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "blockState": "minecraft:wool;color=red" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7661 + "blockState": "minecraft:wool;color=magenta" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_13_10", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_13_10", + "type": 0, + "input": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "blockState": "minecraft:wool;color=lime" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7661 + "blockState": "minecraft:wool;color=magenta" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_13_11", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_13_11", + "type": 0, + "input": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "blockState": "minecraft:wool;color=yellow" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7661 + "blockState": "minecraft:wool;color=magenta" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_13_12", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_13_12", + "type": 0, + "input": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "blockState": "minecraft:wool;color=light_blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7661 + "blockState": "minecraft:wool;color=magenta" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_13_14", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_13_14", + "type": 0, + "input": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "blockState": "minecraft:wool;color=orange" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7661 + "blockState": "minecraft:wool;color=magenta" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_13_15", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_13_15", + "type": 0, + "input": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool" + "blockState": "minecraft:wool" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7661 + "blockState": "minecraft:wool;color=magenta" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_13_2", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_13_2", + "type": 0, + "input": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "blockState": "minecraft:wool;color=green" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7661 + "blockState": "minecraft:wool;color=magenta" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_13_3", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_13_3", + "type": 0, + "input": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "blockState": "minecraft:wool;color=brown" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7661 + "blockState": "minecraft:wool;color=magenta" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_13_4", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_13_4", + "type": 0, + "input": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "blockState": "minecraft:wool;color=blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7661 + "blockState": "minecraft:wool;color=magenta" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_13_5", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_13_5", + "type": 0, + "input": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "blockState": "minecraft:wool;color=purple" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7661 + "blockState": "minecraft:wool;color=magenta" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_13_6", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_13_6", + "type": 0, + "input": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "blockState": "minecraft:wool;color=cyan" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7661 + "blockState": "minecraft:wool;color=magenta" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_13_7", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_13_7", + "type": 0, + "input": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "blockState": "minecraft:wool;color=silver" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7661 + "blockState": "minecraft:wool;color=magenta" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_13_8", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_13_8", + "type": 0, + "input": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "blockState": "minecraft:wool;color=gray" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7661 + "blockState": "minecraft:wool;color=magenta" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_13_9", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_13_9", + "type": 0, + "input": [ { - "legacyId" : 408, - "id" : "minecraft:magenta_dye", - "damage" : 32767 + "id": "minecraft:magenta_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "blockState": "minecraft:wool;color=pink" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7661 + "blockState": "minecraft:wool;color=magenta" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_14_0", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_14_0", + "type": 0, + "input": [ { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "blockState": "minecraft:wool;color=black" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7660 + "blockState": "minecraft:wool;color=orange" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_14_1", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_14_1", + "type": 0, + "input": [ { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "blockState": "minecraft:wool;color=red" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7660 + "blockState": "minecraft:wool;color=orange" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_14_10", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_14_10", + "type": 0, + "input": [ { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "blockState": "minecraft:wool;color=lime" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7660 + "blockState": "minecraft:wool;color=orange" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_14_11", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_14_11", + "type": 0, + "input": [ { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "blockState": "minecraft:wool;color=yellow" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7660 + "blockState": "minecraft:wool;color=orange" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_14_12", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_14_12", + "type": 0, + "input": [ { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "blockState": "minecraft:wool;color=light_blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7660 + "blockState": "minecraft:wool;color=orange" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_14_13", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_14_13", + "type": 0, + "input": [ { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "blockState": "minecraft:wool;color=magenta" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7660 + "blockState": "minecraft:wool;color=orange" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_14_15", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_14_15", + "type": 0, + "input": [ { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool" + "blockState": "minecraft:wool" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7660 + "blockState": "minecraft:wool;color=orange" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_14_2", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_14_2", + "type": 0, + "input": [ { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "blockState": "minecraft:wool;color=green" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7660 + "blockState": "minecraft:wool;color=orange" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_14_3", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_14_3", + "type": 0, + "input": [ { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "blockState": "minecraft:wool;color=brown" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7660 + "blockState": "minecraft:wool;color=orange" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_14_4", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_14_4", + "type": 0, + "input": [ { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "blockState": "minecraft:wool;color=blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7660 + "blockState": "minecraft:wool;color=orange" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_14_5", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_14_5", + "type": 0, + "input": [ { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "blockState": "minecraft:wool;color=purple" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7660 + "blockState": "minecraft:wool;color=orange" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_14_6", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_14_6", + "type": 0, + "input": [ { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "blockState": "minecraft:wool;color=cyan" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7660 + "blockState": "minecraft:wool;color=orange" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_14_7", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_14_7", + "type": 0, + "input": [ { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "blockState": "minecraft:wool;color=silver" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7660 + "blockState": "minecraft:wool;color=orange" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_14_8", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_14_8", + "type": 0, + "input": [ { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "blockState": "minecraft:wool;color=gray" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7660 + "blockState": "minecraft:wool;color=orange" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_14_9", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_14_9", + "type": 0, + "input": [ { - "legacyId" : 409, - "id" : "minecraft:orange_dye", - "damage" : 32767 + "id": "minecraft:orange_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "blockState": "minecraft:wool;color=pink" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7660 + "blockState": "minecraft:wool;color=orange" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_15_0", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_15_0", + "type": 0, + "input": [ { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "blockState": "minecraft:wool;color=black" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_15_1", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_15_1", + "type": 0, + "input": [ { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "blockState": "minecraft:wool;color=red" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_15_10", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_15_10", + "type": 0, + "input": [ { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "blockState": "minecraft:wool;color=lime" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_15_11", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_15_11", + "type": 0, + "input": [ { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "blockState": "minecraft:wool;color=yellow" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_15_12", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_15_12", + "type": 0, + "input": [ { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "blockState": "minecraft:wool;color=light_blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_15_13", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_15_13", + "type": 0, + "input": [ { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "blockState": "minecraft:wool;color=magenta" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_15_14", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_15_14", + "type": 0, + "input": [ { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "blockState": "minecraft:wool;color=orange" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_15_2", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_15_2", + "type": 0, + "input": [ { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "blockState": "minecraft:wool;color=green" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_15_3", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_15_3", + "type": 0, + "input": [ { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "blockState": "minecraft:wool;color=brown" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_15_4", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_15_4", + "type": 0, + "input": [ { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "blockState": "minecraft:wool;color=blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_15_5", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_15_5", + "type": 0, + "input": [ { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "blockState": "minecraft:wool;color=purple" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_15_6", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_15_6", + "type": 0, + "input": [ { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "blockState": "minecraft:wool;color=cyan" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_15_7", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_15_7", + "type": 0, + "input": [ { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "blockState": "minecraft:wool;color=silver" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_15_8", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_15_8", + "type": 0, + "input": [ { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "blockState": "minecraft:wool;color=gray" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_15_9", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_15_9", + "type": 0, + "input": [ { - "legacyId" : 411, - "id" : "minecraft:bone_meal", - "damage" : 32767 + "id": "minecraft:bone_meal", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "blockState": "minecraft:wool;color=pink" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_16_1", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_16_1", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "blockState": "minecraft:wool;color=red" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_16_10", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_16_10", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "blockState": "minecraft:wool;color=lime" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_16_11", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_16_11", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "blockState": "minecraft:wool;color=yellow" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_16_12", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_16_12", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "blockState": "minecraft:wool;color=light_blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_16_13", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_16_13", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "blockState": "minecraft:wool;color=magenta" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_16_14", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_16_14", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "blockState": "minecraft:wool;color=orange" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_16_15", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_16_15", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool" + "blockState": "minecraft:wool" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_16_2", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_16_2", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "blockState": "minecraft:wool;color=green" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_16_3", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_16_3", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "blockState": "minecraft:wool;color=brown" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_16_4", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_16_4", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "blockState": "minecraft:wool;color=blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_16_5", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_16_5", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "blockState": "minecraft:wool;color=purple" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_16_6", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_16_6", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "blockState": "minecraft:wool;color=cyan" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_16_7", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_16_7", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "blockState": "minecraft:wool;color=silver" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_16_8", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_16_8", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "blockState": "minecraft:wool;color=gray" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_16_9", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_16_9", + "type": 0, + "input": [ { - "legacyId" : 395, - "id" : "minecraft:black_dye", - "damage" : 32767 + "id": "minecraft:black_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "blockState": "minecraft:wool;color=pink" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7674 + "blockState": "minecraft:wool;color=black" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_17_0", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_17_0", + "type": 0, + "input": [ { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "blockState": "minecraft:wool;color=black" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_17_1", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_17_1", + "type": 0, + "input": [ { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "blockState": "minecraft:wool;color=red" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_17_10", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_17_10", + "type": 0, + "input": [ { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "blockState": "minecraft:wool;color=lime" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_17_11", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_17_11", + "type": 0, + "input": [ { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "blockState": "minecraft:wool;color=yellow" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_17_12", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_17_12", + "type": 0, + "input": [ { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "blockState": "minecraft:wool;color=light_blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_17_13", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_17_13", + "type": 0, + "input": [ { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "blockState": "minecraft:wool;color=magenta" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_17_14", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_17_14", + "type": 0, + "input": [ { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "blockState": "minecraft:wool;color=orange" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_17_15", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_17_15", + "type": 0, + "input": [ { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool" + "blockState": "minecraft:wool" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_17_2", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_17_2", + "type": 0, + "input": [ { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "blockState": "minecraft:wool;color=green" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_17_4", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_17_4", + "type": 0, + "input": [ { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "blockState": "minecraft:wool;color=blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_17_5", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_17_5", + "type": 0, + "input": [ { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "blockState": "minecraft:wool;color=purple" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_17_6", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_17_6", + "type": 0, + "input": [ { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "blockState": "minecraft:wool;color=cyan" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_17_7", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_17_7", + "type": 0, + "input": [ { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "blockState": "minecraft:wool;color=silver" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_17_8", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_17_8", + "type": 0, + "input": [ { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "blockState": "minecraft:wool;color=gray" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_17_9", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_17_9", + "type": 0, + "input": [ { - "legacyId" : 398, - "id" : "minecraft:brown_dye", - "damage" : 32767 + "id": "minecraft:brown_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "blockState": "minecraft:wool;color=pink" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_18_0", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_18_0", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "blockState": "minecraft:wool;color=black" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_18_1", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_18_1", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "blockState": "minecraft:wool;color=red" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_18_10", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_18_10", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "blockState": "minecraft:wool;color=lime" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_18_11", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_18_11", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "blockState": "minecraft:wool;color=yellow" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_18_12", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_18_12", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "blockState": "minecraft:wool;color=light_blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_18_13", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_18_13", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "blockState": "minecraft:wool;color=magenta" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_18_14", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_18_14", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "blockState": "minecraft:wool;color=orange" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_18_15", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_18_15", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool" + "blockState": "minecraft:wool" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_18_2", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_18_2", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "blockState": "minecraft:wool;color=green" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_18_3", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_18_3", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "blockState": "minecraft:wool;color=brown" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_18_5", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_18_5", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "blockState": "minecraft:wool;color=purple" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_18_6", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_18_6", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "blockState": "minecraft:wool;color=cyan" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_18_7", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_18_7", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "blockState": "minecraft:wool;color=silver" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_18_8", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_18_8", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "blockState": "minecraft:wool;color=gray" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_18_9", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_18_9", + "type": 0, + "input": [ { - "legacyId" : 399, - "id" : "minecraft:blue_dye", - "damage" : 32767 + "id": "minecraft:blue_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "blockState": "minecraft:wool;color=pink" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_19_0", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_19_0", + "type": 0, + "input": [ { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "blockState": "minecraft:wool;color=black" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_19_1", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_19_1", + "type": 0, + "input": [ { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "blockState": "minecraft:wool;color=red" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_19_10", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_19_10", + "type": 0, + "input": [ { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "blockState": "minecraft:wool;color=lime" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_19_11", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_19_11", + "type": 0, + "input": [ { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "blockState": "minecraft:wool;color=yellow" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_19_12", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_19_12", + "type": 0, + "input": [ { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "blockState": "minecraft:wool;color=light_blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_19_13", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_19_13", + "type": 0, + "input": [ { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "blockState": "minecraft:wool;color=magenta" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_19_14", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_19_14", + "type": 0, + "input": [ { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "blockState": "minecraft:wool;color=orange" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_19_2", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_19_2", + "type": 0, + "input": [ { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "blockState": "minecraft:wool;color=green" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_19_3", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_19_3", + "type": 0, + "input": [ { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "blockState": "minecraft:wool;color=brown" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_19_4", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_19_4", + "type": 0, + "input": [ { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "blockState": "minecraft:wool;color=blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_19_5", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_19_5", + "type": 0, + "input": [ { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "blockState": "minecraft:wool;color=purple" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_19_6", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_19_6", + "type": 0, + "input": [ { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "blockState": "minecraft:wool;color=cyan" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_19_7", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_19_7", + "type": 0, + "input": [ { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "blockState": "minecraft:wool;color=silver" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_19_8", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_19_8", + "type": 0, + "input": [ { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "blockState": "minecraft:wool;color=gray" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_19_9", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_19_9", + "type": 0, + "input": [ { - "legacyId" : 410, - "id" : "minecraft:white_dye", - "damage" : 32767 + "id": "minecraft:white_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "blockState": "minecraft:wool;color=pink" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7659 + "blockState": "minecraft:wool" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_1_0", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_1_0", + "type": 0, + "input": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "blockState": "minecraft:wool;color=black" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7673 + "blockState": "minecraft:wool;color=red" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_1_10", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_1_10", + "type": 0, + "input": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "blockState": "minecraft:wool;color=lime" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7673 + "blockState": "minecraft:wool;color=red" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_1_11", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_1_11", + "type": 0, + "input": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "blockState": "minecraft:wool;color=yellow" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7673 + "blockState": "minecraft:wool;color=red" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_1_12", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_1_12", + "type": 0, + "input": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "blockState": "minecraft:wool;color=light_blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7673 + "blockState": "minecraft:wool;color=red" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_1_13", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_1_13", + "type": 0, + "input": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "blockState": "minecraft:wool;color=magenta" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7673 + "blockState": "minecraft:wool;color=red" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_1_14", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_1_14", + "type": 0, + "input": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "blockState": "minecraft:wool;color=orange" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7673 + "blockState": "minecraft:wool;color=red" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_1_15", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_1_15", + "type": 0, + "input": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool" + "blockState": "minecraft:wool" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7673 + "blockState": "minecraft:wool;color=red" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_1_2", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_1_2", + "type": 0, + "input": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "blockState": "minecraft:wool;color=green" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7673 + "blockState": "minecraft:wool;color=red" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_1_3", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_1_3", + "type": 0, + "input": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "blockState": "minecraft:wool;color=brown" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7673 + "blockState": "minecraft:wool;color=red" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_1_4", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_1_4", + "type": 0, + "input": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "blockState": "minecraft:wool;color=blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7673 + "blockState": "minecraft:wool;color=red" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_1_5", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_1_5", + "type": 0, + "input": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "blockState": "minecraft:wool;color=purple" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7673 + "blockState": "minecraft:wool;color=red" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_1_6", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_1_6", + "type": 0, + "input": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "blockState": "minecraft:wool;color=cyan" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7673 + "blockState": "minecraft:wool;color=red" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_1_7", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_1_7", + "type": 0, + "input": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "blockState": "minecraft:wool;color=silver" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7673 + "blockState": "minecraft:wool;color=red" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_1_8", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_1_8", + "type": 0, + "input": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "blockState": "minecraft:wool;color=gray" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7673 + "blockState": "minecraft:wool;color=red" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_1_9", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_1_9", + "type": 0, + "input": [ { - "legacyId" : 396, - "id" : "minecraft:red_dye", - "damage" : 32767 + "id": "minecraft:red_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "blockState": "minecraft:wool;color=pink" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7673 + "blockState": "minecraft:wool;color=red" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_2_0", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_2_0", + "type": 0, + "input": [ { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "blockState": "minecraft:wool;color=black" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7672 + "blockState": "minecraft:wool;color=green" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_2_1", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_2_1", + "type": 0, + "input": [ { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "blockState": "minecraft:wool;color=red" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7672 + "blockState": "minecraft:wool;color=green" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_2_10", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_2_10", + "type": 0, + "input": [ { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "blockState": "minecraft:wool;color=lime" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7672 + "blockState": "minecraft:wool;color=green" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_2_11", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_2_11", + "type": 0, + "input": [ { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "blockState": "minecraft:wool;color=yellow" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7672 + "blockState": "minecraft:wool;color=green" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_2_12", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_2_12", + "type": 0, + "input": [ { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "blockState": "minecraft:wool;color=light_blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7672 + "blockState": "minecraft:wool;color=green" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_2_13", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_2_13", + "type": 0, + "input": [ { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "blockState": "minecraft:wool;color=magenta" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7672 + "blockState": "minecraft:wool;color=green" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_2_14", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_2_14", + "type": 0, + "input": [ { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "blockState": "minecraft:wool;color=orange" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7672 + "blockState": "minecraft:wool;color=green" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_2_15", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_2_15", + "type": 0, + "input": [ { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool" + "blockState": "minecraft:wool" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7672 + "blockState": "minecraft:wool;color=green" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_2_3", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_2_3", + "type": 0, + "input": [ { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "blockState": "minecraft:wool;color=brown" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7672 + "blockState": "minecraft:wool;color=green" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_2_4", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_2_4", + "type": 0, + "input": [ { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "blockState": "minecraft:wool;color=blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7672 + "blockState": "minecraft:wool;color=green" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_2_5", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_2_5", + "type": 0, + "input": [ { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "blockState": "minecraft:wool;color=purple" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7672 + "blockState": "minecraft:wool;color=green" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_2_6", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_2_6", + "type": 0, + "input": [ { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "blockState": "minecraft:wool;color=cyan" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7672 + "blockState": "minecraft:wool;color=green" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_2_7", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_2_7", + "type": 0, + "input": [ { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "blockState": "minecraft:wool;color=silver" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7672 + "blockState": "minecraft:wool;color=green" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_2_8", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_2_8", + "type": 0, + "input": [ { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "blockState": "minecraft:wool;color=gray" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7672 + "blockState": "minecraft:wool;color=green" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_2_9", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_2_9", + "type": 0, + "input": [ { - "legacyId" : 397, - "id" : "minecraft:green_dye", - "damage" : 32767 + "id": "minecraft:green_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "blockState": "minecraft:wool;color=pink" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7672 + "blockState": "minecraft:wool;color=green" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_3_0", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_3_0", + "type": 0, + "input": [ { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "blockState": "minecraft:wool;color=black" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_3_1", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_3_1", + "type": 0, + "input": [ { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "blockState": "minecraft:wool;color=red" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_3_10", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_3_10", + "type": 0, + "input": [ { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "blockState": "minecraft:wool;color=lime" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_3_11", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_3_11", + "type": 0, + "input": [ { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "blockState": "minecraft:wool;color=yellow" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_3_12", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_3_12", + "type": 0, + "input": [ { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "blockState": "minecraft:wool;color=light_blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_3_13", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_3_13", + "type": 0, + "input": [ { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "blockState": "minecraft:wool;color=magenta" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_3_14", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_3_14", + "type": 0, + "input": [ { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "blockState": "minecraft:wool;color=orange" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_3_15", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_3_15", + "type": 0, + "input": [ { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool" + "blockState": "minecraft:wool" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_3_2", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_3_2", + "type": 0, + "input": [ { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "blockState": "minecraft:wool;color=green" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_3_4", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_3_4", + "type": 0, + "input": [ { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "blockState": "minecraft:wool;color=blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_3_5", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_3_5", + "type": 0, + "input": [ { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "blockState": "minecraft:wool;color=purple" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_3_6", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_3_6", + "type": 0, + "input": [ { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "blockState": "minecraft:wool;color=cyan" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_3_7", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_3_7", + "type": 0, + "input": [ { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "blockState": "minecraft:wool;color=silver" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_3_8", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_3_8", + "type": 0, + "input": [ { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "blockState": "minecraft:wool;color=gray" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_3_9", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_3_9", + "type": 0, + "input": [ { - "legacyId" : 412, - "id" : "minecraft:cocoa_beans", - "damage" : 32767 + "id": "minecraft:cocoa_beans", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "blockState": "minecraft:wool;color=pink" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7671 + "blockState": "minecraft:wool;color=brown" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_4_0", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_4_0", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "blockState": "minecraft:wool;color=black" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_4_1", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_4_1", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "blockState": "minecraft:wool;color=red" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_4_10", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_4_10", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "blockState": "minecraft:wool;color=lime" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_4_11", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_4_11", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "blockState": "minecraft:wool;color=yellow" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_4_12", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_4_12", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "blockState": "minecraft:wool;color=light_blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_4_13", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_4_13", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "blockState": "minecraft:wool;color=magenta" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_4_14", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_4_14", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "blockState": "minecraft:wool;color=orange" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_4_15", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_4_15", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool" + "blockState": "minecraft:wool" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_4_2", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_4_2", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "blockState": "minecraft:wool;color=green" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_4_3", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_4_3", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "blockState": "minecraft:wool;color=brown" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_4_5", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_4_5", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "blockState": "minecraft:wool;color=purple" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_4_6", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_4_6", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "blockState": "minecraft:wool;color=cyan" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_4_7", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_4_7", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "blockState": "minecraft:wool;color=silver" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_4_8", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_4_8", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "blockState": "minecraft:wool;color=gray" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_4_9", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_4_9", + "type": 0, + "input": [ { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli", - "damage" : 32767 + "id": "minecraft:lapis_lazuli", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "blockState": "minecraft:wool;color=pink" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7670 + "blockState": "minecraft:wool;color=blue" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_5_0", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_5_0", + "type": 0, + "input": [ { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "blockState": "minecraft:wool;color=black" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7669 + "blockState": "minecraft:wool;color=purple" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_5_1", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_5_1", + "type": 0, + "input": [ { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "blockState": "minecraft:wool;color=red" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7669 + "blockState": "minecraft:wool;color=purple" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_5_10", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_5_10", + "type": 0, + "input": [ { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "blockState": "minecraft:wool;color=lime" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7669 + "blockState": "minecraft:wool;color=purple" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_5_11", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_5_11", + "type": 0, + "input": [ { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "blockState": "minecraft:wool;color=yellow" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7669 + "blockState": "minecraft:wool;color=purple" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_5_12", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_5_12", + "type": 0, + "input": [ { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "blockState": "minecraft:wool;color=light_blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7669 + "blockState": "minecraft:wool;color=purple" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_5_13", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_5_13", + "type": 0, + "input": [ { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "blockState": "minecraft:wool;color=magenta" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7669 + "blockState": "minecraft:wool;color=purple" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_5_14", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_5_14", + "type": 0, + "input": [ { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "blockState": "minecraft:wool;color=orange" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7669 + "blockState": "minecraft:wool;color=purple" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_5_15", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_5_15", + "type": 0, + "input": [ { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool" + "blockState": "minecraft:wool" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7669 + "blockState": "minecraft:wool;color=purple" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_5_2", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_5_2", + "type": 0, + "input": [ { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "blockState": "minecraft:wool;color=green" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7669 + "blockState": "minecraft:wool;color=purple" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_5_3", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_5_3", + "type": 0, + "input": [ { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "blockState": "minecraft:wool;color=brown" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7669 + "blockState": "minecraft:wool;color=purple" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_5_4", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_5_4", + "type": 0, + "input": [ { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "blockState": "minecraft:wool;color=blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7669 + "blockState": "minecraft:wool;color=purple" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_5_6", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_5_6", + "type": 0, + "input": [ { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "blockState": "minecraft:wool;color=cyan" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7669 + "blockState": "minecraft:wool;color=purple" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_5_7", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_5_7", + "type": 0, + "input": [ { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "blockState": "minecraft:wool;color=silver" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7669 + "blockState": "minecraft:wool;color=purple" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_5_8", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_5_8", + "type": 0, + "input": [ { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "blockState": "minecraft:wool;color=gray" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7669 + "blockState": "minecraft:wool;color=purple" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_5_9", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_5_9", + "type": 0, + "input": [ { - "legacyId" : 400, - "id" : "minecraft:purple_dye", - "damage" : 32767 + "id": "minecraft:purple_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "blockState": "minecraft:wool;color=pink" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7669 + "blockState": "minecraft:wool;color=purple" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_6_0", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_6_0", + "type": 0, + "input": [ { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "blockState": "minecraft:wool;color=black" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7668 + "blockState": "minecraft:wool;color=cyan" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_6_1", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_6_1", + "type": 0, + "input": [ { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "blockState": "minecraft:wool;color=red" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7668 + "blockState": "minecraft:wool;color=cyan" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_6_10", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_6_10", + "type": 0, + "input": [ { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "blockState": "minecraft:wool;color=lime" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7668 + "blockState": "minecraft:wool;color=cyan" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_6_11", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_6_11", + "type": 0, + "input": [ { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "blockState": "minecraft:wool;color=yellow" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7668 + "blockState": "minecraft:wool;color=cyan" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_6_12", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_6_12", + "type": 0, + "input": [ { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "blockState": "minecraft:wool;color=light_blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7668 + "blockState": "minecraft:wool;color=cyan" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_6_13", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_6_13", + "type": 0, + "input": [ { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "blockState": "minecraft:wool;color=magenta" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7668 + "blockState": "minecraft:wool;color=cyan" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_6_14", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_6_14", + "type": 0, + "input": [ { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "blockState": "minecraft:wool;color=orange" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7668 + "blockState": "minecraft:wool;color=cyan" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_6_15", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_6_15", + "type": 0, + "input": [ { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool" + "blockState": "minecraft:wool" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7668 + "blockState": "minecraft:wool;color=cyan" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_6_2", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_6_2", + "type": 0, + "input": [ { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "blockState": "minecraft:wool;color=green" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7668 + "blockState": "minecraft:wool;color=cyan" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_6_3", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_6_3", + "type": 0, + "input": [ { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "blockState": "minecraft:wool;color=brown" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7668 + "blockState": "minecraft:wool;color=cyan" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_6_4", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_6_4", + "type": 0, + "input": [ { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "blockState": "minecraft:wool;color=blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7668 + "blockState": "minecraft:wool;color=cyan" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_6_5", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_6_5", + "type": 0, + "input": [ { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "blockState": "minecraft:wool;color=purple" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7668 + "blockState": "minecraft:wool;color=cyan" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_6_7", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_6_7", + "type": 0, + "input": [ { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "blockState": "minecraft:wool;color=silver" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7668 + "blockState": "minecraft:wool;color=cyan" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_6_8", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_6_8", + "type": 0, + "input": [ { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "blockState": "minecraft:wool;color=gray" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7668 + "blockState": "minecraft:wool;color=cyan" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_6_9", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_6_9", + "type": 0, + "input": [ { - "legacyId" : 401, - "id" : "minecraft:cyan_dye", - "damage" : 32767 + "id": "minecraft:cyan_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "blockState": "minecraft:wool;color=pink" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7668 + "blockState": "minecraft:wool;color=cyan" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_7_0", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_7_0", + "type": 0, + "input": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "blockState": "minecraft:wool;color=black" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7667 + "blockState": "minecraft:wool;color=silver" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_7_1", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_7_1", + "type": 0, + "input": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "blockState": "minecraft:wool;color=red" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7667 + "blockState": "minecraft:wool;color=silver" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_7_10", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_7_10", + "type": 0, + "input": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "blockState": "minecraft:wool;color=lime" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7667 + "blockState": "minecraft:wool;color=silver" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_7_11", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_7_11", + "type": 0, + "input": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "blockState": "minecraft:wool;color=yellow" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7667 + "blockState": "minecraft:wool;color=silver" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_7_12", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_7_12", + "type": 0, + "input": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "blockState": "minecraft:wool;color=light_blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7667 + "blockState": "minecraft:wool;color=silver" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_7_13", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_7_13", + "type": 0, + "input": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "blockState": "minecraft:wool;color=magenta" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7667 + "blockState": "minecraft:wool;color=silver" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_7_14", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_7_14", + "type": 0, + "input": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "blockState": "minecraft:wool;color=orange" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7667 + "blockState": "minecraft:wool;color=silver" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_7_15", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_7_15", + "type": 0, + "input": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool" + "blockState": "minecraft:wool" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7667 + "blockState": "minecraft:wool;color=silver" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_7_2", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_7_2", + "type": 0, + "input": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "blockState": "minecraft:wool;color=green" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7667 + "blockState": "minecraft:wool;color=silver" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_7_3", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_7_3", + "type": 0, + "input": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "blockState": "minecraft:wool;color=brown" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7667 + "blockState": "minecraft:wool;color=silver" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_7_4", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_7_4", + "type": 0, + "input": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "blockState": "minecraft:wool;color=blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7667 + "blockState": "minecraft:wool;color=silver" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_7_5", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_7_5", + "type": 0, + "input": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "blockState": "minecraft:wool;color=purple" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7667 + "blockState": "minecraft:wool;color=silver" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_7_6", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_7_6", + "type": 0, + "input": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "blockState": "minecraft:wool;color=cyan" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7667 + "blockState": "minecraft:wool;color=silver" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_7_8", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_7_8", + "type": 0, + "input": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "blockState": "minecraft:wool;color=gray" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7667 + "blockState": "minecraft:wool;color=silver" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_7_9", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_7_9", + "type": 0, + "input": [ { - "legacyId" : 402, - "id" : "minecraft:light_gray_dye", - "damage" : 32767 + "id": "minecraft:light_gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "blockState": "minecraft:wool;color=pink" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7667 + "blockState": "minecraft:wool;color=silver" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_8_0", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_8_0", + "type": 0, + "input": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "blockState": "minecraft:wool;color=black" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7666 + "blockState": "minecraft:wool;color=gray" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_8_1", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_8_1", + "type": 0, + "input": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "blockState": "minecraft:wool;color=red" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7666 + "blockState": "minecraft:wool;color=gray" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_8_10", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_8_10", + "type": 0, + "input": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "blockState": "minecraft:wool;color=lime" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7666 + "blockState": "minecraft:wool;color=gray" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_8_11", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_8_11", + "type": 0, + "input": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "blockState": "minecraft:wool;color=yellow" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7666 + "blockState": "minecraft:wool;color=gray" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_8_12", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_8_12", + "type": 0, + "input": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "blockState": "minecraft:wool;color=light_blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7666 + "blockState": "minecraft:wool;color=gray" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_8_13", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_8_13", + "type": 0, + "input": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "blockState": "minecraft:wool;color=magenta" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7666 + "blockState": "minecraft:wool;color=gray" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_8_14", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_8_14", + "type": 0, + "input": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "blockState": "minecraft:wool;color=orange" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7666 + "blockState": "minecraft:wool;color=gray" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_8_15", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_8_15", + "type": 0, + "input": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool" + "blockState": "minecraft:wool" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7666 + "blockState": "minecraft:wool;color=gray" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_8_2", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_8_2", + "type": 0, + "input": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "blockState": "minecraft:wool;color=green" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7666 + "blockState": "minecraft:wool;color=gray" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_8_3", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_8_3", + "type": 0, + "input": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "blockState": "minecraft:wool;color=brown" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7666 + "blockState": "minecraft:wool;color=gray" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_8_4", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_8_4", + "type": 0, + "input": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "blockState": "minecraft:wool;color=blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7666 + "blockState": "minecraft:wool;color=gray" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_8_5", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_8_5", + "type": 0, + "input": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "blockState": "minecraft:wool;color=purple" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7666 + "blockState": "minecraft:wool;color=gray" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_8_6", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_8_6", + "type": 0, + "input": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "blockState": "minecraft:wool;color=cyan" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7666 + "blockState": "minecraft:wool;color=gray" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_8_7", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_8_7", + "type": 0, + "input": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "blockState": "minecraft:wool;color=silver" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7666 + "blockState": "minecraft:wool;color=gray" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_8_9", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_8_9", + "type": 0, + "input": [ { - "legacyId" : 403, - "id" : "minecraft:gray_dye", - "damage" : 32767 + "id": "minecraft:gray_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 6 + "blockState": "minecraft:wool;color=pink" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7666 + "blockState": "minecraft:wool;color=gray" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_9_0", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_9_0", + "type": 0, + "input": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 15 + "blockState": "minecraft:wool;color=black" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7665 + "blockState": "minecraft:wool;color=pink" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_9_1", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_9_1", + "type": 0, + "input": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 14 + "blockState": "minecraft:wool;color=red" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7665 + "blockState": "minecraft:wool;color=pink" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_9_10", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_9_10", + "type": 0, + "input": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 5 + "blockState": "minecraft:wool;color=lime" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7665 + "blockState": "minecraft:wool;color=pink" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_9_11", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_9_11", + "type": 0, + "input": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 4 + "blockState": "minecraft:wool;color=yellow" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7665 + "blockState": "minecraft:wool;color=pink" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_9_12", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_9_12", + "type": 0, + "input": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 3 + "blockState": "minecraft:wool;color=light_blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7665 + "blockState": "minecraft:wool;color=pink" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_9_13", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_9_13", + "type": 0, + "input": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 2 + "blockState": "minecraft:wool;color=magenta" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7665 + "blockState": "minecraft:wool;color=pink" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_9_14", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_9_14", + "type": 0, + "input": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 1 + "blockState": "minecraft:wool;color=orange" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7665 + "blockState": "minecraft:wool;color=pink" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_9_15", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_9_15", + "type": 0, + "input": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool" + "blockState": "minecraft:wool" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7665 + "blockState": "minecraft:wool;color=pink" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_9_2", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_9_2", + "type": 0, + "input": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 13 + "blockState": "minecraft:wool;color=green" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7665 + "blockState": "minecraft:wool;color=pink" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_9_3", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_9_3", + "type": 0, + "input": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 12 + "blockState": "minecraft:wool;color=brown" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7665 + "blockState": "minecraft:wool;color=pink" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_9_4", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_9_4", + "type": 0, + "input": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 11 + "blockState": "minecraft:wool;color=blue" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7665 + "blockState": "minecraft:wool;color=pink" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_9_5", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_9_5", + "type": 0, + "input": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 10 + "blockState": "minecraft:wool;color=purple" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7665 + "blockState": "minecraft:wool;color=pink" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_9_6", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_9_6", + "type": 0, + "input": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 9 + "blockState": "minecraft:wool;color=cyan" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7665 + "blockState": "minecraft:wool;color=pink" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_9_7", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_9_7", + "type": 0, + "input": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 8 + "blockState": "minecraft:wool;color=silver" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7665 + "blockState": "minecraft:wool;color=pink" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "id" : "wool_dye_wool_9_8", - "type" : 0, - "input" : [ + "id": "wool_dye_wool_9_8", + "type": 0, + "input": [ { - "legacyId" : 404, - "id" : "minecraft:pink_dye", - "damage" : 32767 + "id": "minecraft:pink_dye", + "fuzzy": true }, { - "legacyId" : 35, - "id" : "minecraft:wool", - "damage" : 7 + "blockState": "minecraft:wool;color=gray" } ], - "output" : [ + "output": [ { - "legacyId" : 35, - "id" : "minecraft:wool", - "blockRuntimeId" : 7665 + "blockState": "minecraft:wool;color=pink" } ], - "block" : "crafting_table", - "priority" : 50 + "block": "crafting_table", + "priority": 50 }, { - "type" : 3, - "input" : { - "legacyId" : -408, - "id" : "minecraft:deepslate_copper_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:deepslate_copper_ore" }, - "output" : { - "legacyId" : 504, - "id" : "minecraft:copper_ingot", - "damage" : 32767 + "output": { + "legacyId": 504, + "id": "minecraft:copper_ingot", + "damage": 32767 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -408, - "id" : "minecraft:deepslate_copper_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:deepslate_copper_ore" }, - "output" : { - "legacyId" : 504, - "id" : "minecraft:copper_ingot", - "damage" : 32767 + "output": { + "legacyId": 504, + "id": "minecraft:copper_ingot", + "damage": 32767 }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -407, - "id" : "minecraft:deepslate_emerald_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:deepslate_emerald_ore" }, - "output" : { - "legacyId" : 512, - "id" : "minecraft:emerald", - "damage" : 32767 + "output": { + "id": "minecraft:emerald", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -407, - "id" : "minecraft:deepslate_emerald_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:deepslate_emerald_ore" }, - "output" : { - "legacyId" : 512, - "id" : "minecraft:emerald", - "damage" : 32767 + "output": { + "id": "minecraft:emerald", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -406, - "id" : "minecraft:deepslate_coal_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:deepslate_coal_ore" }, - "output" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "output": { + "id": "minecraft:coal" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -406, - "id" : "minecraft:deepslate_coal_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:deepslate_coal_ore" }, - "output" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "output": { + "id": "minecraft:coal" }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -405, - "id" : "minecraft:deepslate_diamond_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:deepslate_diamond_ore" }, - "output" : { - "legacyId" : 304, - "id" : "minecraft:diamond", - "damage" : 32767 + "output": { + "id": "minecraft:diamond", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -405, - "id" : "minecraft:deepslate_diamond_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:deepslate_diamond_ore" }, - "output" : { - "legacyId" : 304, - "id" : "minecraft:diamond", - "damage" : 32767 + "output": { + "id": "minecraft:diamond", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -403, - "id" : "minecraft:deepslate_redstone_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:deepslate_redstone_ore" }, - "output" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "output": { + "id": "minecraft:redstone", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -403, - "id" : "minecraft:deepslate_redstone_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:deepslate_redstone_ore" }, - "output" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "output": { + "id": "minecraft:redstone", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -402, - "id" : "minecraft:deepslate_gold_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:deepslate_gold_ore" }, - "output" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "output": { + "id": "minecraft:gold_ingot", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -402, - "id" : "minecraft:deepslate_gold_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:deepslate_gold_ore" }, - "output" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "output": { + "id": "minecraft:gold_ingot", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -401, - "id" : "minecraft:deepslate_iron_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:deepslate_iron_ore" }, - "output" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "output": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -401, - "id" : "minecraft:deepslate_iron_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:deepslate_iron_ore" }, - "output" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "output": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -400, - "id" : "minecraft:deepslate_lapis_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:deepslate_lapis_ore" }, - "output" : { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli" + "output": { + "id": "minecraft:lapis_lazuli", + "damage": 4 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -400, - "id" : "minecraft:deepslate_lapis_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:deepslate_lapis_ore" }, - "output" : { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli" + "output": { + "id": "minecraft:lapis_lazuli", + "damage": 4 }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -391, - "id" : "minecraft:deepslate_bricks", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:deepslate_bricks" }, - "output" : { - "legacyId" : -410, - "id" : "minecraft:cracked_deepslate_bricks", - "blockRuntimeId" : 3726 + "output": { + "blockState": "minecraft:cracked_deepslate_bricks" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -387, - "id" : "minecraft:deepslate_tiles", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:deepslate_tiles" }, - "output" : { - "legacyId" : -409, - "id" : "minecraft:cracked_deepslate_tiles", - "blockRuntimeId" : 3727 + "output": { + "blockState": "minecraft:cracked_deepslate_tiles" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -379, - "id" : "minecraft:cobbled_deepslate", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:cobbled_deepslate" }, - "output" : { - "legacyId" : -378, - "id" : "minecraft:deepslate", - "blockRuntimeId" : 4049 + "output": { + "blockState": "minecraft:deepslate;pillar_axis=y" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -311, - "id" : "minecraft:copper_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:copper_ore" }, - "output" : { - "legacyId" : 504, - "id" : "minecraft:copper_ingot", - "damage" : 32767 + "output": { + "legacyId": 504, + "id": "minecraft:copper_ingot", + "damage": 32767 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -311, - "id" : "minecraft:copper_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:copper_ore" }, - "output" : { - "legacyId" : 504, - "id" : "minecraft:copper_ingot", - "damage" : 32767 + "output": { + "legacyId": 504, + "id": "minecraft:copper_ingot", + "damage": 32767 }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -288, - "id" : "minecraft:nether_gold_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:nether_gold_ore" }, - "output" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "output": { + "id": "minecraft:gold_ingot", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -288, - "id" : "minecraft:nether_gold_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:nether_gold_ore" }, - "output" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "output": { + "id": "minecraft:gold_ingot", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -274, - "id" : "minecraft:polished_blackstone_bricks", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:polished_blackstone_bricks" }, - "output" : { - "legacyId" : -280, - "id" : "minecraft:cracked_polished_blackstone_bricks", - "blockRuntimeId" : 3729 + "output": { + "blockState": "minecraft:cracked_polished_blackstone_bricks" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -271, - "id" : "minecraft:ancient_debris", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:ancient_debris" }, - "output" : { - "legacyId" : 611, - "id" : "minecraft:netherite_scrap", - "damage" : 32767 + "output": { + "id": "minecraft:netherite_scrap", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -271, - "id" : "minecraft:ancient_debris", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:ancient_debris" }, - "output" : { - "legacyId" : 611, - "id" : "minecraft:netherite_scrap", - "damage" : 32767 + "output": { + "id": "minecraft:netherite_scrap", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -234, - "id" : "minecraft:basalt", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:basalt" }, - "output" : { - "legacyId" : -377, - "id" : "minecraft:smooth_basalt", - "blockRuntimeId" : 6640 + "output": { + "blockState": "minecraft:smooth_basalt" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -212, - "id" : "minecraft:wood" + "type": 3, + "input": { + "blockState": "minecraft:wood" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 1 + "type": 3, + "input": { + "blockState": "minecraft:wood;wood_type=spruce" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 2 + "type": 3, + "input": { + "blockState": "minecraft:wood;wood_type=birch" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 3 + "type": 3, + "input": { + "blockState": "minecraft:wood;wood_type=jungle" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 4 + "type": 3, + "input": { + "blockState": "minecraft:wood;wood_type=acacia" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 5 + "type": 3, + "input": { + "blockState": "minecraft:wood;wood_type=dark_oak" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 8 + "type": 3, + "input": { + "blockState": "minecraft:wood;stripped_bit=1" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 9 + "type": 3, + "input": { + "blockState": "minecraft:wood;stripped_bit=1;wood_type=spruce" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 10 + "type": 3, + "input": { + "blockState": "minecraft:wood;stripped_bit=1;wood_type=birch" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 11 + "type": 3, + "input": { + "blockState": "minecraft:wood;stripped_bit=1;wood_type=jungle" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 12 + "type": 3, + "input": { + "blockState": "minecraft:wood;stripped_bit=1;wood_type=acacia" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -212, - "id" : "minecraft:wood", - "damage" : 13 + "type": 3, + "input": { + "blockState": "minecraft:wood;stripped_bit=1;wood_type=dark_oak" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -156, - "id" : "minecraft:sea_pickle", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:sea_pickle" }, - "output" : { - "legacyId" : 405, - "id" : "minecraft:lime_dye" + "output": { + "id": "minecraft:lime_dye", + "damage": 10 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -10, - "id" : "minecraft:stripped_oak_log", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:stripped_oak_log" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -9, - "id" : "minecraft:stripped_dark_oak_log", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:stripped_dark_oak_log" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -8, - "id" : "minecraft:stripped_acacia_log", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:stripped_acacia_log" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -7, - "id" : "minecraft:stripped_jungle_log", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:stripped_jungle_log" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -6, - "id" : "minecraft:stripped_birch_log", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:stripped_birch_log" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : -5, - "id" : "minecraft:stripped_spruce_log", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:stripped_spruce_log" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 1, - "id" : "minecraft:stone" + "type": 3, + "input": { + "blockState": "minecraft:stone" }, - "output" : { - "legacyId" : -183, - "id" : "minecraft:smooth_stone", - "blockRuntimeId" : 6665 + "output": { + "blockState": "minecraft:smooth_stone" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 4, - "id" : "minecraft:cobblestone", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:cobblestone" }, - "output" : { - "legacyId" : 1, - "id" : "minecraft:stone", - "blockRuntimeId" : 6934 + "output": { + "blockState": "minecraft:stone" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 12, - "id" : "minecraft:sand", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:sand" }, - "output" : { - "legacyId" : 20, - "id" : "minecraft:glass", - "blockRuntimeId" : 4820 + "output": { + "blockState": "minecraft:glass" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 14, - "id" : "minecraft:gold_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:gold_ore" }, - "output" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "output": { + "id": "minecraft:gold_ingot", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 14, - "id" : "minecraft:gold_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:gold_ore" }, - "output" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "output": { + "id": "minecraft:gold_ingot", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 15, - "id" : "minecraft:iron_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:iron_ore" }, - "output" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "output": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 15, - "id" : "minecraft:iron_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:iron_ore" }, - "output" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "output": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 16, - "id" : "minecraft:coal_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:coal_ore" }, - "output" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "output": { + "id": "minecraft:coal" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 16, - "id" : "minecraft:coal_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:coal_ore" }, - "output" : { - "legacyId" : 302, - "id" : "minecraft:coal" + "output": { + "id": "minecraft:coal" }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 17, - "id" : "minecraft:log" + "type": 3, + "input": { + "blockState": "minecraft:log" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 17, - "id" : "minecraft:log", - "damage" : 1 + "type": 3, + "input": { + "blockState": "minecraft:log;old_log_type=spruce" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 17, - "id" : "minecraft:log", - "damage" : 2 + "type": 3, + "input": { + "blockState": "minecraft:log;old_log_type=birch" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 17, - "id" : "minecraft:log", - "damage" : 3 + "type": 3, + "input": { + "blockState": "minecraft:log;old_log_type=jungle" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 19, - "id" : "minecraft:sponge", - "damage" : 1 + "type": 3, + "input": { + "blockState": "minecraft:sponge;sponge_type=wet" }, - "output" : { - "legacyId" : 19, - "id" : "minecraft:sponge", - "blockRuntimeId" : 6717 + "output": { + "blockState": "minecraft:sponge" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 21, - "id" : "minecraft:lapis_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:lapis_ore" }, - "output" : { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli" + "output": { + "id": "minecraft:lapis_lazuli", + "damage": 4 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 21, - "id" : "minecraft:lapis_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:lapis_ore" }, - "output" : { - "legacyId" : 414, - "id" : "minecraft:lapis_lazuli" + "output": { + "id": "minecraft:lapis_lazuli", + "damage": 4 }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 24, - "id" : "minecraft:sandstone", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:sandstone" }, - "output" : { - "legacyId" : 24, - "id" : "minecraft:sandstone", - "blockRuntimeId" : 6532 + "output": { + "blockState": "minecraft:sandstone;sand_stone_type=smooth" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 56, - "id" : "minecraft:diamond_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:diamond_ore" }, - "output" : { - "legacyId" : 304, - "id" : "minecraft:diamond", - "damage" : 32767 + "output": { + "id": "minecraft:diamond", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 56, - "id" : "minecraft:diamond_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:diamond_ore" }, - "output" : { - "legacyId" : 304, - "id" : "minecraft:diamond", - "damage" : 32767 + "output": { + "id": "minecraft:diamond", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 73, - "id" : "minecraft:redstone_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:redstone_ore" }, - "output" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "output": { + "id": "minecraft:redstone", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 73, - "id" : "minecraft:redstone_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:redstone_ore" }, - "output" : { - "legacyId" : 373, - "id" : "minecraft:redstone", - "damage" : 32767 + "output": { + "id": "minecraft:redstone", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 81, - "id" : "minecraft:cactus", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:cactus" }, - "output" : { - "legacyId" : 397, - "id" : "minecraft:green_dye" + "output": { + "id": "minecraft:green_dye", + "damage": 2 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 82, - "id" : "minecraft:clay", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:clay" }, - "output" : { - "legacyId" : 172, - "id" : "minecraft:hardened_clay", - "blockRuntimeId" : 4988 + "output": { + "blockState": "minecraft:hardened_clay" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 87, - "id" : "minecraft:netherrack", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:netherrack" }, - "output" : { - "legacyId" : 523, - "id" : "minecraft:netherbrick", - "damage" : 32767 + "output": { + "id": "minecraft:netherbrick", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 98, - "id" : "minecraft:stonebrick" + "type": 3, + "input": { + "blockState": "minecraft:stonebrick" }, - "output" : { - "legacyId" : 98, - "id" : "minecraft:stonebrick", - "blockRuntimeId" : 7045 + "output": { + "blockState": "minecraft:stonebrick;stone_brick_type=cracked" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 112, - "id" : "minecraft:nether_brick", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:nether_brick" }, - "output" : { - "legacyId" : -303, - "id" : "minecraft:cracked_nether_bricks", - "blockRuntimeId" : 3728 + "output": { + "blockState": "minecraft:cracked_nether_bricks" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 129, - "id" : "minecraft:emerald_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:emerald_ore" }, - "output" : { - "legacyId" : 512, - "id" : "minecraft:emerald", - "damage" : 32767 + "output": { + "id": "minecraft:emerald", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 129, - "id" : "minecraft:emerald_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:emerald_ore" }, - "output" : { - "legacyId" : 512, - "id" : "minecraft:emerald", - "damage" : 32767 + "output": { + "id": "minecraft:emerald", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 153, - "id" : "minecraft:quartz_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:quartz_ore" }, - "output" : { - "legacyId" : 524, - "id" : "minecraft:quartz", - "damage" : 32767 + "output": { + "id": "minecraft:quartz", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 153, - "id" : "minecraft:quartz_ore", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:quartz_ore" }, - "output" : { - "legacyId" : 524, - "id" : "minecraft:quartz", - "damage" : 32767 + "output": { + "id": "minecraft:quartz", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 155, - "id" : "minecraft:quartz_block" + "type": 3, + "input": { + "blockState": "minecraft:quartz_block" }, - "output" : { - "legacyId" : 155, - "id" : "minecraft:quartz_block", - "blockRuntimeId" : 6381 + "output": { + "blockState": "minecraft:quartz_block;chisel_type=smooth" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay" + "type": 3, + "input": { + "blockState": "minecraft:stained_hardened_clay" }, - "output" : { - "legacyId" : 220, - "id" : "minecraft:white_glazed_terracotta", - "blockRuntimeId" : 7544 + "output": { + "blockState": "minecraft:white_glazed_terracotta" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "damage" : 1 + "type": 3, + "input": { + "blockState": "minecraft:stained_hardened_clay;color=orange" }, - "output" : { - "legacyId" : 221, - "id" : "minecraft:orange_glazed_terracotta", - "blockRuntimeId" : 5601 + "output": { + "blockState": "minecraft:orange_glazed_terracotta" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "damage" : 2 + "type": 3, + "input": { + "blockState": "minecraft:stained_hardened_clay;color=magenta" }, - "output" : { - "legacyId" : 222, - "id" : "minecraft:magenta_glazed_terracotta", - "blockRuntimeId" : 5461 + "output": { + "blockState": "minecraft:magenta_glazed_terracotta" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "damage" : 3 + "type": 3, + "input": { + "blockState": "minecraft:stained_hardened_clay;color=light_blue" }, - "output" : { - "legacyId" : 223, - "id" : "minecraft:light_blue_glazed_terracotta", - "blockRuntimeId" : 5379 + "output": { + "blockState": "minecraft:light_blue_glazed_terracotta" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "damage" : 4 + "type": 3, + "input": { + "blockState": "minecraft:stained_hardened_clay;color=yellow" }, - "output" : { - "legacyId" : 224, - "id" : "minecraft:yellow_glazed_terracotta", - "blockRuntimeId" : 7676 + "output": { + "blockState": "minecraft:yellow_glazed_terracotta" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "damage" : 5 + "type": 3, + "input": { + "blockState": "minecraft:stained_hardened_clay;color=lime" }, - "output" : { - "legacyId" : 225, - "id" : "minecraft:lime_glazed_terracotta", - "blockRuntimeId" : 5407 + "output": { + "blockState": "minecraft:lime_glazed_terracotta" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "damage" : 6 + "type": 3, + "input": { + "blockState": "minecraft:stained_hardened_clay;color=pink" }, - "output" : { - "legacyId" : 226, - "id" : "minecraft:pink_glazed_terracotta", - "blockRuntimeId" : 5622 + "output": { + "blockState": "minecraft:pink_glazed_terracotta" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "damage" : 7 + "type": 3, + "input": { + "blockState": "minecraft:stained_hardened_clay;color=gray" }, - "output" : { - "legacyId" : 227, - "id" : "minecraft:gray_glazed_terracotta", - "blockRuntimeId" : 4925 + "output": { + "blockState": "minecraft:gray_glazed_terracotta" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "damage" : 8 + "type": 3, + "input": { + "blockState": "minecraft:stained_hardened_clay;color=silver" }, - "output" : { - "legacyId" : 228, - "id" : "minecraft:silver_glazed_terracotta", - "blockRuntimeId" : 6600 + "output": { + "blockState": "minecraft:silver_glazed_terracotta" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "damage" : 9 + "type": 3, + "input": { + "blockState": "minecraft:stained_hardened_clay;color=cyan" }, - "output" : { - "legacyId" : 229, - "id" : "minecraft:cyan_glazed_terracotta", - "blockRuntimeId" : 3880 + "output": { + "blockState": "minecraft:cyan_glazed_terracotta" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "damage" : 10 + "type": 3, + "input": { + "blockState": "minecraft:stained_hardened_clay;color=purple" }, - "output" : { - "legacyId" : 219, - "id" : "minecraft:purple_glazed_terracotta", - "blockRuntimeId" : 6352 + "output": { + "blockState": "minecraft:purple_glazed_terracotta" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "damage" : 11 + "type": 3, + "input": { + "blockState": "minecraft:stained_hardened_clay;color=blue" }, - "output" : { - "legacyId" : 231, - "id" : "minecraft:blue_glazed_terracotta", - "blockRuntimeId" : 665 + "output": { + "blockState": "minecraft:blue_glazed_terracotta" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "damage" : 12 + "type": 3, + "input": { + "blockState": "minecraft:stained_hardened_clay;color=brown" }, - "output" : { - "legacyId" : 232, - "id" : "minecraft:brown_glazed_terracotta", - "blockRuntimeId" : 864 + "output": { + "blockState": "minecraft:brown_glazed_terracotta" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "damage" : 13 + "type": 3, + "input": { + "blockState": "minecraft:stained_hardened_clay;color=green" }, - "output" : { - "legacyId" : 233, - "id" : "minecraft:green_glazed_terracotta", - "blockRuntimeId" : 4931 + "output": { + "blockState": "minecraft:green_glazed_terracotta" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "damage" : 14 + "type": 3, + "input": { + "blockState": "minecraft:stained_hardened_clay;color=red" }, - "output" : { - "legacyId" : 234, - "id" : "minecraft:red_glazed_terracotta", - "blockRuntimeId" : 6424 + "output": { + "blockState": "minecraft:red_glazed_terracotta" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 159, - "id" : "minecraft:stained_hardened_clay", - "damage" : 15 + "type": 3, + "input": { + "blockState": "minecraft:stained_hardened_clay;color=black" }, - "output" : { - "legacyId" : 235, - "id" : "minecraft:black_glazed_terracotta", - "blockRuntimeId" : 478 + "output": { + "blockState": "minecraft:black_glazed_terracotta" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 162, - "id" : "minecraft:log2" + "type": 3, + "input": { + "blockState": "minecraft:log2" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 162, - "id" : "minecraft:log2", - "damage" : 1 + "type": 3, + "input": { + "blockState": "minecraft:log2;new_log_type=dark_oak" }, - "output" : { - "legacyId" : 303, - "id" : "minecraft:charcoal" + "output": { + "id": "minecraft:charcoal", + "damage": 1 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 179, - "id" : "minecraft:red_sandstone", - "damage" : -1 + "type": 3, + "input": { + "fuzzy": true, + "blockState": "minecraft:red_sandstone" }, - "output" : { - "legacyId" : 179, - "id" : "minecraft:red_sandstone", - "blockRuntimeId" : 6459 + "output": { + "blockState": "minecraft:red_sandstone;sand_stone_type=smooth" }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 262, - "id" : "minecraft:porkchop", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:porkchop", + "fuzzy": true }, - "output" : { - "legacyId" : 263, - "id" : "minecraft:cooked_porkchop", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_porkchop", + "fuzzy": true }, - "block" : "smoker" + "block": "smoker" }, { - "type" : 3, - "input" : { - "legacyId" : 262, - "id" : "minecraft:porkchop", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:porkchop", + "fuzzy": true }, - "output" : { - "legacyId" : 263, - "id" : "minecraft:cooked_porkchop", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_porkchop", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 262, - "id" : "minecraft:porkchop", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:porkchop", + "fuzzy": true }, - "output" : { - "legacyId" : 263, - "id" : "minecraft:cooked_porkchop", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_porkchop", + "fuzzy": true }, - "block" : "soul_campfire" + "block": "soul_campfire" }, { - "type" : 3, - "input" : { - "legacyId" : 262, - "id" : "minecraft:porkchop", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:porkchop", + "fuzzy": true }, - "output" : { - "legacyId" : 263, - "id" : "minecraft:cooked_porkchop", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_porkchop", + "fuzzy": true }, - "block" : "campfire" + "block": "campfire" }, { - "type" : 3, - "input" : { - "legacyId" : 264, - "id" : "minecraft:cod", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:cod", + "fuzzy": true }, - "output" : { - "legacyId" : 268, - "id" : "minecraft:cooked_cod", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_cod", + "fuzzy": true }, - "block" : "smoker" + "block": "smoker" }, { - "type" : 3, - "input" : { - "legacyId" : 264, - "id" : "minecraft:cod", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:cod", + "fuzzy": true }, - "output" : { - "legacyId" : 268, - "id" : "minecraft:cooked_cod", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_cod", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 264, - "id" : "minecraft:cod", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:cod", + "fuzzy": true }, - "output" : { - "legacyId" : 268, - "id" : "minecraft:cooked_cod", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_cod", + "fuzzy": true }, - "block" : "soul_campfire" + "block": "soul_campfire" }, { - "type" : 3, - "input" : { - "legacyId" : 264, - "id" : "minecraft:cod", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:cod", + "fuzzy": true }, - "output" : { - "legacyId" : 268, - "id" : "minecraft:cooked_cod", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_cod", + "fuzzy": true }, - "block" : "campfire" + "block": "campfire" }, { - "type" : 3, - "input" : { - "legacyId" : 265, - "id" : "minecraft:salmon", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:salmon", + "fuzzy": true }, - "output" : { - "legacyId" : 269, - "id" : "minecraft:cooked_salmon", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_salmon", + "fuzzy": true }, - "block" : "smoker" + "block": "smoker" }, { - "type" : 3, - "input" : { - "legacyId" : 265, - "id" : "minecraft:salmon", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:salmon", + "fuzzy": true }, - "output" : { - "legacyId" : 269, - "id" : "minecraft:cooked_salmon", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_salmon", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 265, - "id" : "minecraft:salmon", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:salmon", + "fuzzy": true }, - "output" : { - "legacyId" : 269, - "id" : "minecraft:cooked_salmon", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_salmon", + "fuzzy": true }, - "block" : "soul_campfire" + "block": "soul_campfire" }, { - "type" : 3, - "input" : { - "legacyId" : 265, - "id" : "minecraft:salmon", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:salmon", + "fuzzy": true }, - "output" : { - "legacyId" : 269, - "id" : "minecraft:cooked_salmon", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_salmon", + "fuzzy": true }, - "block" : "campfire" + "block": "campfire" }, { - "type" : 3, - "input" : { - "legacyId" : 273, - "id" : "minecraft:beef", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:beef", + "fuzzy": true }, - "output" : { - "legacyId" : 274, - "id" : "minecraft:cooked_beef", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_beef", + "fuzzy": true }, - "block" : "smoker" + "block": "smoker" }, { - "type" : 3, - "input" : { - "legacyId" : 273, - "id" : "minecraft:beef", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:beef", + "fuzzy": true }, - "output" : { - "legacyId" : 274, - "id" : "minecraft:cooked_beef", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_beef", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 273, - "id" : "minecraft:beef", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:beef", + "fuzzy": true }, - "output" : { - "legacyId" : 274, - "id" : "minecraft:cooked_beef", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_beef", + "fuzzy": true }, - "block" : "soul_campfire" + "block": "soul_campfire" }, { - "type" : 3, - "input" : { - "legacyId" : 273, - "id" : "minecraft:beef", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:beef", + "fuzzy": true }, - "output" : { - "legacyId" : 274, - "id" : "minecraft:cooked_beef", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_beef", + "fuzzy": true }, - "block" : "campfire" + "block": "campfire" }, { - "type" : 3, - "input" : { - "legacyId" : 275, - "id" : "minecraft:chicken", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:chicken", + "fuzzy": true }, - "output" : { - "legacyId" : 276, - "id" : "minecraft:cooked_chicken", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_chicken", + "fuzzy": true }, - "block" : "smoker" + "block": "smoker" }, { - "type" : 3, - "input" : { - "legacyId" : 275, - "id" : "minecraft:chicken", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:chicken", + "fuzzy": true }, - "output" : { - "legacyId" : 276, - "id" : "minecraft:cooked_chicken", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_chicken", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 275, - "id" : "minecraft:chicken", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:chicken", + "fuzzy": true }, - "output" : { - "legacyId" : 276, - "id" : "minecraft:cooked_chicken", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_chicken", + "fuzzy": true }, - "block" : "soul_campfire" + "block": "soul_campfire" }, { - "type" : 3, - "input" : { - "legacyId" : 275, - "id" : "minecraft:chicken", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:chicken", + "fuzzy": true }, - "output" : { - "legacyId" : 276, - "id" : "minecraft:cooked_chicken", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_chicken", + "fuzzy": true }, - "block" : "campfire" + "block": "campfire" }, { - "type" : 3, - "input" : { - "legacyId" : 280, - "id" : "minecraft:potato", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:potato", + "fuzzy": true }, - "output" : { - "legacyId" : 281, - "id" : "minecraft:baked_potato", - "damage" : 32767 + "output": { + "id": "minecraft:baked_potato", + "fuzzy": true }, - "block" : "smoker" + "block": "smoker" }, { - "type" : 3, - "input" : { - "legacyId" : 280, - "id" : "minecraft:potato", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:potato", + "fuzzy": true }, - "output" : { - "legacyId" : 281, - "id" : "minecraft:baked_potato", - "damage" : 32767 + "output": { + "id": "minecraft:baked_potato", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 280, - "id" : "minecraft:potato", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:potato", + "fuzzy": true }, - "output" : { - "legacyId" : 281, - "id" : "minecraft:baked_potato", - "damage" : 32767 + "output": { + "id": "minecraft:baked_potato", + "fuzzy": true }, - "block" : "soul_campfire" + "block": "soul_campfire" }, { - "type" : 3, - "input" : { - "legacyId" : 280, - "id" : "minecraft:potato", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:potato", + "fuzzy": true }, - "output" : { - "legacyId" : 281, - "id" : "minecraft:baked_potato", - "damage" : 32767 + "output": { + "id": "minecraft:baked_potato", + "fuzzy": true }, - "block" : "campfire" + "block": "campfire" }, { - "type" : 3, - "input" : { - "legacyId" : 288, - "id" : "minecraft:rabbit", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:rabbit", + "fuzzy": true }, - "output" : { - "legacyId" : 289, - "id" : "minecraft:cooked_rabbit", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_rabbit", + "fuzzy": true }, - "block" : "smoker" + "block": "smoker" }, { - "type" : 3, - "input" : { - "legacyId" : 288, - "id" : "minecraft:rabbit", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:rabbit", + "fuzzy": true }, - "output" : { - "legacyId" : 289, - "id" : "minecraft:cooked_rabbit", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_rabbit", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 288, - "id" : "minecraft:rabbit", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:rabbit", + "fuzzy": true }, - "output" : { - "legacyId" : 289, - "id" : "minecraft:cooked_rabbit", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_rabbit", + "fuzzy": true }, - "block" : "soul_campfire" + "block": "soul_campfire" }, { - "type" : 3, - "input" : { - "legacyId" : 288, - "id" : "minecraft:rabbit", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:rabbit", + "fuzzy": true }, - "output" : { - "legacyId" : 289, - "id" : "minecraft:cooked_rabbit", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_rabbit", + "fuzzy": true }, - "block" : "campfire" + "block": "campfire" }, { - "type" : 3, - "input" : { - "legacyId" : 296, - "id" : "minecraft:iron_shovel", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:iron_shovel", + "fuzzy": true }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 296, - "id" : "minecraft:iron_shovel", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:iron_shovel", + "fuzzy": true }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 297, - "id" : "minecraft:iron_pickaxe", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:iron_pickaxe", + "fuzzy": true }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 297, - "id" : "minecraft:iron_pickaxe", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:iron_pickaxe", + "fuzzy": true }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 298, - "id" : "minecraft:iron_axe", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:iron_axe", + "fuzzy": true }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 298, - "id" : "minecraft:iron_axe", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:iron_axe", + "fuzzy": true }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 307, - "id" : "minecraft:iron_sword", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:iron_sword", + "fuzzy": true }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 307, - "id" : "minecraft:iron_sword", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:iron_sword", + "fuzzy": true }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 322, - "id" : "minecraft:golden_sword", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:golden_sword", + "fuzzy": true }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 322, - "id" : "minecraft:golden_sword", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:golden_sword", + "fuzzy": true }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 323, - "id" : "minecraft:golden_shovel", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:golden_shovel", + "fuzzy": true }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 323, - "id" : "minecraft:golden_shovel", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:golden_shovel", + "fuzzy": true }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 324, - "id" : "minecraft:golden_pickaxe", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:golden_pickaxe", + "fuzzy": true }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 324, - "id" : "minecraft:golden_pickaxe", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:golden_pickaxe", + "fuzzy": true }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 325, - "id" : "minecraft:golden_axe", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:golden_axe", + "fuzzy": true }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 325, - "id" : "minecraft:golden_axe", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:golden_axe", + "fuzzy": true }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 331, - "id" : "minecraft:iron_hoe", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:iron_hoe", + "fuzzy": true }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 331, - "id" : "minecraft:iron_hoe", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:iron_hoe", + "fuzzy": true }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 333, - "id" : "minecraft:golden_hoe", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:golden_hoe", + "fuzzy": true }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 333, - "id" : "minecraft:golden_hoe", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:golden_hoe", + "fuzzy": true }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 339, - "id" : "minecraft:chainmail_helmet" + "type": 3, + "input": { + "id": "minecraft:chainmail_helmet" }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 339, - "id" : "minecraft:chainmail_helmet" + "type": 3, + "input": { + "id": "minecraft:chainmail_helmet" }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 340, - "id" : "minecraft:chainmail_chestplate" + "type": 3, + "input": { + "id": "minecraft:chainmail_chestplate" }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 340, - "id" : "minecraft:chainmail_chestplate" + "type": 3, + "input": { + "id": "minecraft:chainmail_chestplate" }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 341, - "id" : "minecraft:chainmail_leggings" + "type": 3, + "input": { + "id": "minecraft:chainmail_leggings" }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 341, - "id" : "minecraft:chainmail_leggings" + "type": 3, + "input": { + "id": "minecraft:chainmail_leggings" }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 342, - "id" : "minecraft:chainmail_boots" + "type": 3, + "input": { + "id": "minecraft:chainmail_boots" }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 342, - "id" : "minecraft:chainmail_boots" + "type": 3, + "input": { + "id": "minecraft:chainmail_boots" }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 343, - "id" : "minecraft:iron_helmet" + "type": 3, + "input": { + "id": "minecraft:iron_helmet" }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 343, - "id" : "minecraft:iron_helmet" + "type": 3, + "input": { + "id": "minecraft:iron_helmet" }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 344, - "id" : "minecraft:iron_chestplate" + "type": 3, + "input": { + "id": "minecraft:iron_chestplate" }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 344, - "id" : "minecraft:iron_chestplate" + "type": 3, + "input": { + "id": "minecraft:iron_chestplate" }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 345, - "id" : "minecraft:iron_leggings" + "type": 3, + "input": { + "id": "minecraft:iron_leggings" }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 345, - "id" : "minecraft:iron_leggings" + "type": 3, + "input": { + "id": "minecraft:iron_leggings" }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 346, - "id" : "minecraft:iron_boots" + "type": 3, + "input": { + "id": "minecraft:iron_boots" }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 346, - "id" : "minecraft:iron_boots" + "type": 3, + "input": { + "id": "minecraft:iron_boots" }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 351, - "id" : "minecraft:golden_helmet" + "type": 3, + "input": { + "id": "minecraft:golden_helmet" }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 351, - "id" : "minecraft:golden_helmet" + "type": 3, + "input": { + "id": "minecraft:golden_helmet" }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 352, - "id" : "minecraft:golden_chestplate" + "type": 3, + "input": { + "id": "minecraft:golden_chestplate" }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 352, - "id" : "minecraft:golden_chestplate" + "type": 3, + "input": { + "id": "minecraft:golden_chestplate" }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 353, - "id" : "minecraft:golden_leggings" + "type": 3, + "input": { + "id": "minecraft:golden_leggings" }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 353, - "id" : "minecraft:golden_leggings" + "type": 3, + "input": { + "id": "minecraft:golden_leggings" }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 354, - "id" : "minecraft:golden_boots" + "type": 3, + "input": { + "id": "minecraft:golden_boots" }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 354, - "id" : "minecraft:golden_boots" + "type": 3, + "input": { + "id": "minecraft:golden_boots" }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 382, - "id" : "minecraft:kelp", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:kelp", + "fuzzy": true }, - "output" : { - "legacyId" : 270, - "id" : "minecraft:dried_kelp", - "damage" : 32767 + "output": { + "id": "minecraft:dried_kelp", + "fuzzy": true }, - "block" : "smoker" + "block": "smoker" }, { - "type" : 3, - "input" : { - "legacyId" : 382, - "id" : "minecraft:kelp", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:kelp", + "fuzzy": true }, - "output" : { - "legacyId" : 270, - "id" : "minecraft:dried_kelp", - "damage" : 32767 + "output": { + "id": "minecraft:dried_kelp", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 382, - "id" : "minecraft:kelp", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:kelp", + "fuzzy": true }, - "output" : { - "legacyId" : 270, - "id" : "minecraft:dried_kelp", - "damage" : 32767 + "output": { + "id": "minecraft:dried_kelp", + "fuzzy": true }, - "block" : "soul_campfire" + "block": "soul_campfire" }, { - "type" : 3, - "input" : { - "legacyId" : 382, - "id" : "minecraft:kelp", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:kelp", + "fuzzy": true }, - "output" : { - "legacyId" : 270, - "id" : "minecraft:dried_kelp", - "damage" : 32767 + "output": { + "id": "minecraft:dried_kelp", + "fuzzy": true }, - "block" : "campfire" + "block": "campfire" }, { - "type" : 3, - "input" : { - "legacyId" : 384, - "id" : "minecraft:clay_ball", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:clay_ball", + "fuzzy": true }, - "output" : { - "legacyId" : 383, - "id" : "minecraft:brick", - "damage" : 32767 + "output": { + "id": "minecraft:brick", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 505, - "id" : "minecraft:raw_iron", - "damage" : -1 + "type": 3, + "input": { + "legacyId": 505, + "id": "minecraft:raw_iron", + "damage": -1 }, - "output" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "output": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 505, - "id" : "minecraft:raw_iron", - "damage" : -1 + "type": 3, + "input": { + "legacyId": 505, + "id": "minecraft:raw_iron", + "damage": -1 }, - "output" : { - "legacyId" : 305, - "id" : "minecraft:iron_ingot", - "damage" : 32767 + "output": { + "id": "minecraft:iron_ingot", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 506, - "id" : "minecraft:raw_gold", - "damage" : -1 + "type": 3, + "input": { + "legacyId": 506, + "id": "minecraft:raw_gold", + "damage": -1 }, - "output" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "output": { + "id": "minecraft:gold_ingot", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 506, - "id" : "minecraft:raw_gold", - "damage" : -1 + "type": 3, + "input": { + "legacyId": 506, + "id": "minecraft:raw_gold", + "damage": -1 }, - "output" : { - "legacyId" : 306, - "id" : "minecraft:gold_ingot", - "damage" : 32767 + "output": { + "id": "minecraft:gold_ingot", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 507, - "id" : "minecraft:raw_copper", - "damage" : -1 + "type": 3, + "input": { + "legacyId": 507, + "id": "minecraft:raw_copper", + "damage": -1 }, - "output" : { - "legacyId" : 504, - "id" : "minecraft:copper_ingot", - "damage" : 32767 + "output": { + "legacyId": 504, + "id": "minecraft:copper_ingot", + "damage": 32767 }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 507, - "id" : "minecraft:raw_copper", - "damage" : -1 + "type": 3, + "input": { + "legacyId": 507, + "id": "minecraft:raw_copper", + "damage": -1 }, - "output" : { - "legacyId" : 504, - "id" : "minecraft:copper_ingot", - "damage" : 32767 + "output": { + "legacyId": 504, + "id": "minecraft:copper_ingot", + "damage": 32767 }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 531, - "id" : "minecraft:iron_horse_armor", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:iron_horse_armor", + "fuzzy": true }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 531, - "id" : "minecraft:iron_horse_armor", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:iron_horse_armor", + "fuzzy": true }, - "output" : { - "legacyId" : 569, - "id" : "minecraft:iron_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:iron_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 532, - "id" : "minecraft:golden_horse_armor", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:golden_horse_armor", + "fuzzy": true }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 532, - "id" : "minecraft:golden_horse_armor", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:golden_horse_armor", + "fuzzy": true }, - "output" : { - "legacyId" : 425, - "id" : "minecraft:gold_nugget", - "damage" : 32767 + "output": { + "id": "minecraft:gold_nugget", + "fuzzy": true }, - "block" : "blast_furnace" + "block": "blast_furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 550, - "id" : "minecraft:mutton", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:mutton", + "fuzzy": true }, - "output" : { - "legacyId" : 551, - "id" : "minecraft:cooked_mutton", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_mutton", + "fuzzy": true }, - "block" : "smoker" + "block": "smoker" }, { - "type" : 3, - "input" : { - "legacyId" : 550, - "id" : "minecraft:mutton", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:mutton", + "fuzzy": true }, - "output" : { - "legacyId" : 551, - "id" : "minecraft:cooked_mutton", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_mutton", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" }, { - "type" : 3, - "input" : { - "legacyId" : 550, - "id" : "minecraft:mutton", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:mutton", + "fuzzy": true }, - "output" : { - "legacyId" : 551, - "id" : "minecraft:cooked_mutton", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_mutton", + "fuzzy": true }, - "block" : "soul_campfire" + "block": "soul_campfire" }, { - "type" : 3, - "input" : { - "legacyId" : 550, - "id" : "minecraft:mutton", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:mutton", + "fuzzy": true }, - "output" : { - "legacyId" : 551, - "id" : "minecraft:cooked_mutton", - "damage" : 32767 + "output": { + "id": "minecraft:cooked_mutton", + "fuzzy": true }, - "block" : "campfire" + "block": "campfire" }, { - "type" : 3, - "input" : { - "legacyId" : 558, - "id" : "minecraft:chorus_fruit", - "damage" : -1 + "type": 3, + "input": { + "id": "minecraft:chorus_fruit", + "fuzzy": true }, - "output" : { - "legacyId" : 559, - "id" : "minecraft:popped_chorus_fruit", - "damage" : 32767 + "output": { + "id": "minecraft:popped_chorus_fruit", + "fuzzy": true }, - "block" : "furnace" + "block": "furnace" } ], - "potionMixes" : [ + "potionMixes": [ { - "inputId" : "minecraft:potion", - "inputMeta" : 17, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 42 + "inputId": "minecraft:potion", + "inputMeta": 27, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 24 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 17, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 42 + "inputId": "minecraft:splash_potion", + "inputMeta": 27, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 24 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 17, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 42 + "inputId": "minecraft:lingering_potion", + "inputMeta": 27, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 24 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 27, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 24 + "inputId": "minecraft:potion", + "inputMeta": 17, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 42 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 27, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 24 + "inputId": "minecraft:splash_potion", + "inputMeta": 17, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 42 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 27, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 24 + "inputId": "minecraft:lingering_potion", + "inputMeta": 17, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 42 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 4, - "reagentId" : "minecraft:blaze_powder", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 31 + "inputId": "minecraft:potion", + "inputMeta": 0, + "reagentId": "minecraft:magma_cream", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:blaze_powder", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 31 + "inputId": "minecraft:splash_potion", + "inputMeta": 0, + "reagentId": "minecraft:magma_cream", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:blaze_powder", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 31 + "inputId": "minecraft:lingering_potion", + "inputMeta": 0, + "reagentId": "minecraft:magma_cream", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 4, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 34 + "inputId": "minecraft:potion", + "inputMeta": 0, + "reagentId": "minecraft:spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 34 + "inputId": "minecraft:splash_potion", + "inputMeta": 0, + "reagentId": "minecraft:spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 34 + "inputId": "minecraft:lingering_potion", + "inputMeta": 0, + "reagentId": "minecraft:spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 4, - "reagentId" : "minecraft:ghast_tear", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 28 + "inputId": "minecraft:potion", + "inputMeta": 4, + "reagentId": "minecraft:blaze_powder", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 31 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:ghast_tear", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 28 + "inputId": "minecraft:splash_potion", + "inputMeta": 4, + "reagentId": "minecraft:blaze_powder", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 31 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:ghast_tear", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 28 + "inputId": "minecraft:lingering_potion", + "inputMeta": 4, + "reagentId": "minecraft:blaze_powder", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 31 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 4, - "reagentId" : "minecraft:golden_carrot", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 5 + "inputId": "minecraft:potion", + "inputMeta": 33, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 34 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:golden_carrot", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 5 + "inputId": "minecraft:splash_potion", + "inputMeta": 33, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 34 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:golden_carrot", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 5 + "inputId": "minecraft:lingering_potion", + "inputMeta": 33, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 34 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 4, - "reagentId" : "minecraft:magma_cream", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 12 + "inputId": "minecraft:potion", + "inputMeta": 25, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 27 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:magma_cream", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 12 + "inputId": "minecraft:splash_potion", + "inputMeta": 25, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 27 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:magma_cream", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 12 + "inputId": "minecraft:lingering_potion", + "inputMeta": 25, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 27 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 4, - "reagentId" : "minecraft:phantom_membrane", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 40 + "inputId": "minecraft:potion", + "inputMeta": 1, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 34 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:phantom_membrane", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 40 + "inputId": "minecraft:splash_potion", + "inputMeta": 1, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 34 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:phantom_membrane", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 40 + "inputId": "minecraft:lingering_potion", + "inputMeta": 1, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 34 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 4, - "reagentId" : "minecraft:pufferfish", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 19 + "inputId": "minecraft:potion", + "inputMeta": 0, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 3 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:pufferfish", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 19 + "inputId": "minecraft:splash_potion", + "inputMeta": 0, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 3 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:pufferfish", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 19 + "inputId": "minecraft:lingering_potion", + "inputMeta": 0, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 3 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 4, - "reagentId" : "minecraft:rabbit_foot", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 9 + "inputId": "minecraft:potion", + "inputMeta": 23, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 24 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:rabbit_foot", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 9 + "inputId": "minecraft:splash_potion", + "inputMeta": 23, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 24 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:rabbit_foot", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 9 + "inputId": "minecraft:lingering_potion", + "inputMeta": 23, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 24 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 4, - "reagentId" : "minecraft:glistering_melon_slice", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 21 + "inputId": "minecraft:potion", + "inputMeta": 4, + "reagentId": "minecraft:ghast_tear", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 28 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:glistering_melon_slice", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 21 + "inputId": "minecraft:splash_potion", + "inputMeta": 4, + "reagentId": "minecraft:ghast_tear", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 28 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:glistering_melon_slice", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 21 + "inputId": "minecraft:lingering_potion", + "inputMeta": 4, + "reagentId": "minecraft:ghast_tear", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 28 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 4, - "reagentId" : "minecraft:spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 25 + "inputId": "minecraft:potion", + "inputMeta": 0, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 34 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 25 + "inputId": "minecraft:splash_potion", + "inputMeta": 0, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 34 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 25 + "inputId": "minecraft:lingering_potion", + "inputMeta": 0, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 34 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 4, - "reagentId" : "minecraft:sugar", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 14 + "inputId": "minecraft:potion", + "inputMeta": 7, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 8 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:sugar", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 14 + "inputId": "minecraft:splash_potion", + "inputMeta": 7, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 8 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:sugar", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 14 + "inputId": "minecraft:lingering_potion", + "inputMeta": 7, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 8 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 4, - "reagentId" : "minecraft:turtle_helmet", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 37 + "inputId": "minecraft:potion", + "inputMeta": 12, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 13 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:turtle_helmet", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 37 + "inputId": "minecraft:splash_potion", + "inputMeta": 12, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 13 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 4, - "reagentId" : "minecraft:turtle_helmet", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 37 + "inputId": "minecraft:lingering_potion", + "inputMeta": 12, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 13 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 12, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 13 + "inputId": "minecraft:potion", + "inputMeta": 28, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 30 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 12, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 13 + "inputId": "minecraft:splash_potion", + "inputMeta": 28, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 30 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 12, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 13 + "inputId": "minecraft:lingering_potion", + "inputMeta": 28, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 30 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 23, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 24 + "inputId": "minecraft:potion", + "inputMeta": 14, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 15 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 23, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 24 + "inputId": "minecraft:splash_potion", + "inputMeta": 14, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 15 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 23, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 24 + "inputId": "minecraft:lingering_potion", + "inputMeta": 14, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 15 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 21, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 23 + "inputId": "minecraft:potion", + "inputMeta": 3, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 34 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 21, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 23 + "inputId": "minecraft:splash_potion", + "inputMeta": 3, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 34 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 21, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 23 + "inputId": "minecraft:lingering_potion", + "inputMeta": 3, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 34 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 21, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 22 + "inputId": "minecraft:potion", + "inputMeta": 37, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 39 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 21, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 22 + "inputId": "minecraft:splash_potion", + "inputMeta": 37, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 39 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 21, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 22 + "inputId": "minecraft:lingering_potion", + "inputMeta": 37, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 39 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 7, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 8 + "inputId": "minecraft:potion", + "inputMeta": 4, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 34 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 7, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 8 + "inputId": "minecraft:splash_potion", + "inputMeta": 4, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 34 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 7, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 8 + "inputId": "minecraft:lingering_potion", + "inputMeta": 4, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 34 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 9, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 17 + "inputId": "minecraft:potion", + "inputMeta": 31, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 33 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 9, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 17 + "inputId": "minecraft:splash_potion", + "inputMeta": 31, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 33 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 9, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 17 + "inputId": "minecraft:lingering_potion", + "inputMeta": 31, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 33 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 9, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 11 + "inputId": "minecraft:potion", + "inputMeta": 2, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 35 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 9, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 11 + "inputId": "minecraft:splash_potion", + "inputMeta": 2, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 35 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 9, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 11 + "inputId": "minecraft:lingering_potion", + "inputMeta": 2, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 35 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 9, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 10 + "inputId": "minecraft:potion", + "inputMeta": 17, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 18 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 9, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 10 + "inputId": "minecraft:splash_potion", + "inputMeta": 17, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 18 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 9, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 10 + "inputId": "minecraft:lingering_potion", + "inputMeta": 17, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 18 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 6, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 8 + "inputId": "minecraft:potion", + "inputMeta": 15, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 18 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 6, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 8 + "inputId": "minecraft:splash_potion", + "inputMeta": 15, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 18 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 6, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 8 + "inputId": "minecraft:lingering_potion", + "inputMeta": 15, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 18 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 15, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 18 + "inputId": "minecraft:potion", + "inputMeta": 0, + "reagentId": "minecraft:rabbit_foot", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 15, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 18 + "inputId": "minecraft:splash_potion", + "inputMeta": 0, + "reagentId": "minecraft:rabbit_foot", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 15, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 18 + "inputId": "minecraft:lingering_potion", + "inputMeta": 0, + "reagentId": "minecraft:rabbit_foot", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 10, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 18 + "inputId": "minecraft:potion", + "inputMeta": 0, + "reagentId": "minecraft:blaze_powder", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 10, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 18 + "inputId": "minecraft:splash_potion", + "inputMeta": 0, + "reagentId": "minecraft:blaze_powder", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 10, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 18 + "inputId": "minecraft:lingering_potion", + "inputMeta": 0, + "reagentId": "minecraft:blaze_powder", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 2, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 35 + "inputId": "minecraft:potion", + "inputMeta": 32, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 35 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 2, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 35 + "inputId": "minecraft:splash_potion", + "inputMeta": 32, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 35 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 2, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 35 + "inputId": "minecraft:lingering_potion", + "inputMeta": 32, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 35 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 26, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 23 + "inputId": "minecraft:potion", + "inputMeta": 4, + "reagentId": "minecraft:golden_carrot", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 5 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 26, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 23 + "inputId": "minecraft:splash_potion", + "inputMeta": 4, + "reagentId": "minecraft:golden_carrot", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 5 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 26, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 23 + "inputId": "minecraft:lingering_potion", + "inputMeta": 4, + "reagentId": "minecraft:golden_carrot", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 5 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 32, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 35 + "inputId": "minecraft:potion", + "inputMeta": 14, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 16 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 32, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 35 + "inputId": "minecraft:splash_potion", + "inputMeta": 14, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 16 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 32, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 35 + "inputId": "minecraft:lingering_potion", + "inputMeta": 14, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 16 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 1, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 34 + "inputId": "minecraft:potion", + "inputMeta": 21, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 23 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 1, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 34 + "inputId": "minecraft:splash_potion", + "inputMeta": 21, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 23 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 1, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 34 + "inputId": "minecraft:lingering_potion", + "inputMeta": 21, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 23 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 5, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 7 + "inputId": "minecraft:potion", + "inputMeta": 10, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 18 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 5, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 7 + "inputId": "minecraft:splash_potion", + "inputMeta": 10, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 18 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 5, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 7 + "inputId": "minecraft:lingering_potion", + "inputMeta": 10, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 18 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 5, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 6 + "inputId": "minecraft:potion", + "inputMeta": 4, + "reagentId": "minecraft:magma_cream", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 12 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 5, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 6 + "inputId": "minecraft:splash_potion", + "inputMeta": 4, + "reagentId": "minecraft:magma_cream", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 12 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 5, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 6 + "inputId": "minecraft:lingering_potion", + "inputMeta": 4, + "reagentId": "minecraft:magma_cream", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 12 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 25, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 23 + "inputId": "minecraft:potion", + "inputMeta": 0, + "reagentId": "minecraft:glistering_melon_slice", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 25, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 23 + "inputId": "minecraft:splash_potion", + "inputMeta": 0, + "reagentId": "minecraft:glistering_melon_slice", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 25, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 23 + "inputId": "minecraft:lingering_potion", + "inputMeta": 0, + "reagentId": "minecraft:glistering_melon_slice", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 25, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 27 + "inputId": "minecraft:potion", + "inputMeta": 5, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 7 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 25, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 27 + "inputId": "minecraft:splash_potion", + "inputMeta": 5, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 7 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 25, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 27 + "inputId": "minecraft:lingering_potion", + "inputMeta": 5, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 7 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 25, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 26 + "inputId": "minecraft:potion", + "inputMeta": 22, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 24 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 25, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 26 + "inputId": "minecraft:splash_potion", + "inputMeta": 22, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 24 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 25, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 26 + "inputId": "minecraft:lingering_potion", + "inputMeta": 22, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 24 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 28, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 30 + "inputId": "minecraft:potion", + "inputMeta": 4, + "reagentId": "minecraft:pufferfish", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 19 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 28, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 30 + "inputId": "minecraft:splash_potion", + "inputMeta": 4, + "reagentId": "minecraft:pufferfish", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 19 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 28, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 30 + "inputId": "minecraft:lingering_potion", + "inputMeta": 4, + "reagentId": "minecraft:pufferfish", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 19 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 28, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 29 + "inputId": "minecraft:potion", + "inputMeta": 25, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 23 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 28, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 29 + "inputId": "minecraft:splash_potion", + "inputMeta": 25, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 23 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 28, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 29 + "inputId": "minecraft:lingering_potion", + "inputMeta": 25, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 23 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 17, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 18 + "inputId": "minecraft:potion", + "inputMeta": 0, + "reagentId": "minecraft:sugar", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 17, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 18 + "inputId": "minecraft:splash_potion", + "inputMeta": 0, + "reagentId": "minecraft:sugar", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 17, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 18 + "inputId": "minecraft:lingering_potion", + "inputMeta": 0, + "reagentId": "minecraft:sugar", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 40, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 41 + "inputId": "minecraft:potion", + "inputMeta": 40, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 41 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 40, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 41 + "inputId": "minecraft:splash_potion", + "inputMeta": 40, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 41 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 40, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 41 + "inputId": "minecraft:lingering_potion", + "inputMeta": 40, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 41 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 31, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 34 + "inputId": "minecraft:potion", + "inputMeta": 4, + "reagentId": "minecraft:rabbit_foot", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 9 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 31, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 34 + "inputId": "minecraft:splash_potion", + "inputMeta": 4, + "reagentId": "minecraft:rabbit_foot", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 9 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 31, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 34 + "inputId": "minecraft:lingering_potion", + "inputMeta": 4, + "reagentId": "minecraft:rabbit_foot", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 9 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 31, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 33 + "inputId": "minecraft:potion", + "inputMeta": 0, + "reagentId": "minecraft:nether_wart", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 4 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 31, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 33 + "inputId": "minecraft:splash_potion", + "inputMeta": 0, + "reagentId": "minecraft:nether_wart", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 4 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 31, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 33 + "inputId": "minecraft:lingering_potion", + "inputMeta": 0, + "reagentId": "minecraft:nether_wart", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 4 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 31, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 32 + "inputId": "minecraft:potion", + "inputMeta": 9, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 10 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 31, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 32 + "inputId": "minecraft:splash_potion", + "inputMeta": 9, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 10 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 31, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 32 + "inputId": "minecraft:lingering_potion", + "inputMeta": 9, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 10 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 22, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 24 + "inputId": "minecraft:potion", + "inputMeta": 0, + "reagentId": "minecraft:ghast_tear", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 22, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 24 + "inputId": "minecraft:splash_potion", + "inputMeta": 0, + "reagentId": "minecraft:ghast_tear", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 22, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 24 + "inputId": "minecraft:lingering_potion", + "inputMeta": 0, + "reagentId": "minecraft:ghast_tear", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 33, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 34 + "inputId": "minecraft:potion", + "inputMeta": 4, + "reagentId": "minecraft:turtle_helmet", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 37 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 33, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 34 + "inputId": "minecraft:splash_potion", + "inputMeta": 4, + "reagentId": "minecraft:turtle_helmet", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 37 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 33, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 34 + "inputId": "minecraft:lingering_potion", + "inputMeta": 4, + "reagentId": "minecraft:turtle_helmet", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 37 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 14, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 17 + "inputId": "minecraft:potion", + "inputMeta": 4, + "reagentId": "minecraft:glistering_melon_slice", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 21 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 14, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 17 + "inputId": "minecraft:splash_potion", + "inputMeta": 4, + "reagentId": "minecraft:glistering_melon_slice", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 21 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 14, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 17 + "inputId": "minecraft:lingering_potion", + "inputMeta": 4, + "reagentId": "minecraft:glistering_melon_slice", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 21 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 14, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 16 + "inputId": "minecraft:potion", + "inputMeta": 0, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 14, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 16 + "inputId": "minecraft:splash_potion", + "inputMeta": 0, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 14, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 16 + "inputId": "minecraft:lingering_potion", + "inputMeta": 0, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 1 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 14, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 15 + "inputId": "minecraft:potion", + "inputMeta": 25, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 26 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 14, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 15 + "inputId": "minecraft:splash_potion", + "inputMeta": 25, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 26 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 14, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 15 + "inputId": "minecraft:lingering_potion", + "inputMeta": 25, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 26 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 3, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 34 + "inputId": "minecraft:potion", + "inputMeta": 19, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 20 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 3, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 34 + "inputId": "minecraft:splash_potion", + "inputMeta": 19, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 20 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 3, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 34 + "inputId": "minecraft:lingering_potion", + "inputMeta": 19, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 20 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 37, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 39 + "inputId": "minecraft:potion", + "inputMeta": 9, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 17 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 37, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 39 + "inputId": "minecraft:splash_potion", + "inputMeta": 9, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 17 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 37, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 39 + "inputId": "minecraft:lingering_potion", + "inputMeta": 9, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 17 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 37, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 38 + "inputId": "minecraft:potion", + "inputMeta": 31, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 32 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 37, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 38 + "inputId": "minecraft:splash_potion", + "inputMeta": 31, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 32 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 37, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 38 + "inputId": "minecraft:lingering_potion", + "inputMeta": 31, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 32 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 0, - "reagentId" : "minecraft:blaze_powder", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 1 + "inputId": "minecraft:potion", + "inputMeta": 4, + "reagentId": "minecraft:spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 25 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:blaze_powder", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 1 + "inputId": "minecraft:splash_potion", + "inputMeta": 4, + "reagentId": "minecraft:spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 25 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:blaze_powder", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 1 + "inputId": "minecraft:lingering_potion", + "inputMeta": 4, + "reagentId": "minecraft:spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 25 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 19, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 20 + "inputId": "minecraft:potion", + "inputMeta": 34, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 35 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 19, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 20 + "inputId": "minecraft:splash_potion", + "inputMeta": 34, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 35 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 19, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 20 + "inputId": "minecraft:lingering_potion", + "inputMeta": 34, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 35 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 0, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 34 + "inputId": "minecraft:potion", + "inputMeta": 14, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 17 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 34 + "inputId": "minecraft:splash_potion", + "inputMeta": 14, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 17 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:fermented_spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 34 + "inputId": "minecraft:lingering_potion", + "inputMeta": 14, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 17 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 0, - "reagentId" : "minecraft:ghast_tear", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 1 + "inputId": "minecraft:potion", + "inputMeta": 6, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 8 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:ghast_tear", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 1 + "inputId": "minecraft:splash_potion", + "inputMeta": 6, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 8 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:ghast_tear", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 1 + "inputId": "minecraft:lingering_potion", + "inputMeta": 6, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 8 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 0, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 3 + "inputId": "minecraft:potion", + "inputMeta": 9, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 11 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 3 + "inputId": "minecraft:splash_potion", + "inputMeta": 9, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 11 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:glowstone_dust", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 3 + "inputId": "minecraft:lingering_potion", + "inputMeta": 9, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 11 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 0, - "reagentId" : "minecraft:magma_cream", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 1 + "inputId": "minecraft:potion", + "inputMeta": 4, + "reagentId": "minecraft:phantom_membrane", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 40 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:magma_cream", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 1 + "inputId": "minecraft:splash_potion", + "inputMeta": 4, + "reagentId": "minecraft:phantom_membrane", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 40 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:magma_cream", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 1 + "inputId": "minecraft:lingering_potion", + "inputMeta": 4, + "reagentId": "minecraft:phantom_membrane", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 40 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 0, - "reagentId" : "minecraft:nether_wart", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 4 + "inputId": "minecraft:potion", + "inputMeta": 4, + "reagentId": "minecraft:sugar", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 14 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:nether_wart", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 4 + "inputId": "minecraft:splash_potion", + "inputMeta": 4, + "reagentId": "minecraft:sugar", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 14 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:nether_wart", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 4 + "inputId": "minecraft:lingering_potion", + "inputMeta": 4, + "reagentId": "minecraft:sugar", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 14 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 0, - "reagentId" : "minecraft:rabbit_foot", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 1 + "inputId": "minecraft:potion", + "inputMeta": 5, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 6 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:rabbit_foot", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 1 + "inputId": "minecraft:splash_potion", + "inputMeta": 5, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 6 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:rabbit_foot", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 1 + "inputId": "minecraft:lingering_potion", + "inputMeta": 5, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 6 }, { - "inputId" : "minecraft:potion", - "inputMeta" : 0, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 1 + "inputId": "minecraft:potion", + "inputMeta": 31, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 34 }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 1 + "inputId": "minecraft:splash_potion", + "inputMeta": 31, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 34 }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 1 - }, + "inputId": "minecraft:lingering_potion", + "inputMeta": 31, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 34 + }, { - "inputId" : "minecraft:potion", - "inputMeta" : 0, - "reagentId" : "minecraft:glistering_melon_slice", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 1 - }, + "inputId": "minecraft:potion", + "inputMeta": 26, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 23 + }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:glistering_melon_slice", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 1 - }, + "inputId": "minecraft:splash_potion", + "inputMeta": 26, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 23 + }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:glistering_melon_slice", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 1 - }, + "inputId": "minecraft:lingering_potion", + "inputMeta": 26, + "reagentId": "minecraft:fermented_spider_eye", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 23 + }, { - "inputId" : "minecraft:potion", - "inputMeta" : 0, - "reagentId" : "minecraft:spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 1 - }, + "inputId": "minecraft:potion", + "inputMeta": 28, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 29 + }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 1 - }, + "inputId": "minecraft:splash_potion", + "inputMeta": 28, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 29 + }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:spider_eye", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 1 - }, + "inputId": "minecraft:lingering_potion", + "inputMeta": 28, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 29 + }, { - "inputId" : "minecraft:potion", - "inputMeta" : 0, - "reagentId" : "minecraft:sugar", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 1 - }, + "inputId": "minecraft:potion", + "inputMeta": 21, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 22 + }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:sugar", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 1 - }, + "inputId": "minecraft:splash_potion", + "inputMeta": 21, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 22 + }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 0, - "reagentId" : "minecraft:sugar", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 1 - }, + "inputId": "minecraft:lingering_potion", + "inputMeta": 21, + "reagentId": "minecraft:glowstone_dust", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 22 + }, { - "inputId" : "minecraft:potion", - "inputMeta" : 34, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:potion", - "outputMeta" : 35 - }, + "inputId": "minecraft:potion", + "inputMeta": 37, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:potion", + "outputMeta": 38 + }, { - "inputId" : "minecraft:splash_potion", - "inputMeta" : 34, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:splash_potion", - "outputMeta" : 35 - }, + "inputId": "minecraft:splash_potion", + "inputMeta": 37, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:splash_potion", + "outputMeta": 38 + }, { - "inputId" : "minecraft:lingering_potion", - "inputMeta" : 34, - "reagentId" : "minecraft:redstone", - "reagentMeta" : 0, - "outputId" : "minecraft:lingering_potion", - "outputMeta" : 35 + "inputId": "minecraft:lingering_potion", + "inputMeta": 37, + "reagentId": "minecraft:redstone", + "reagentMeta": 0, + "outputId": "minecraft:lingering_potion", + "outputMeta": 38 } ], - "containerMixes" : [ + "containerMixes": [ { - "inputId" : "minecraft:potion", - "reagentId" : "minecraft:gunpowder", - "outputId" : "minecraft:splash_potion" + "inputId": "minecraft:potion", + "reagentId": "minecraft:gunpowder", + "outputId": "minecraft:splash_potion" }, { - "inputId" : "minecraft:splash_potion", - "reagentId" : "minecraft:dragon_breath", - "outputId" : "minecraft:lingering_potion" + "inputId": "minecraft:splash_potion", + "reagentId": "minecraft:dragon_breath", + "outputId": "minecraft:lingering_potion" } ] } diff --git a/src/main/resources/runtime_item_ids.json b/src/main/resources/runtime_item_ids.json index 484db1f21ed..29e99dfda00 100644 --- a/src/main/resources/runtime_item_ids.json +++ b/src/main/resources/runtime_item_ids.json @@ -1,7 +1,8 @@ [ { "name": "minecraft:unknown", - "id": -305 + "id": -305, + "oldId": -305 }, { "name": "minecraft:quartz_bricks", @@ -2330,7 +2331,7 @@ }, { "name": "minecraft:glow_stick", - "id": 166, + "id": 601, "oldId": 166 }, { @@ -3691,7 +3692,7 @@ }, { "name": "minecraft:spawn_egg", - "id": 629, + "id": 643, "oldId": 383 }, { @@ -4084,6 +4085,24 @@ "oldId": 383, "oldData": 127 }, + { + "name": "minecraft:axolotl_spawn_egg", + "id": 500, + "oldId": 383, + "oldData": 130 + }, + { + "name": "minecraft:goat_spawn_egg", + "id": 501, + "oldId": 383, + "oldData": 128 + }, + { + "name": "minecraft:glow_squid_spawn_egg", + "id": 502, + "oldId": 383, + "oldData": 129 + }, { "name": "minecraft:experience_bottle", "id": 508, @@ -4493,12 +4512,12 @@ }, { "name": "minecraft:campfire", - "id": 588, + "id": 589, "oldId": 720 }, { "name": "minecraft:suspicious_stew", - "id": 589, + "id": 590, "oldId": 734 }, { @@ -4553,130 +4572,135 @@ }, { "name": "minecraft:lodestone_compass", - "id": 601, + "id": 602, "oldId": 741 }, { "name": "minecraft:netherite_ingot", - "id": 602, + "id": 603, "oldId": 742 }, { "name": "minecraft:netherite_sword", - "id": 603, + "id": 604, "oldId": 743 }, { "name": "minecraft:netherite_shovel", - "id": 604, + "id": 605, "oldId": 744 }, { "name": "minecraft:netherite_pickaxe", - "id": 605, + "id": 606, "oldId": 745 }, { "name": "minecraft:netherite_axe", - "id": 606, + "id": 607, "oldId": 746 }, { "name": "minecraft:netherite_hoe", - "id": 607, + "id": 608, "oldId": 747 }, { "name": "minecraft:netherite_helmet", - "id": 608, + "id": 609, "oldId": 748 }, { "name": "minecraft:netherite_chestplate", - "id": 609, + "id": 610, "oldId": 749 }, { "name": "minecraft:netherite_leggings", - "id": 610, + "id": 611, "oldId": 750 }, { "name": "minecraft:netherite_boots", - "id": 611, + "id": 612, "oldId": 751 }, { "name": "minecraft:netherite_scrap", - "id": 612, + "id": 613, "oldId": 752 }, { "name": "minecraft:crimson_sign", - "id": 613, + "id": 614, "oldId": 753 }, { "name": "minecraft:warped_sign", - "id": 614, + "id": 615, "oldId": 754 }, { "name": "minecraft:crimson_door", - "id": 615, + "id": 616, "oldId": 755 }, { "name": "minecraft:warped_door", - "id": 616, + "id": 617, "oldId": 756 }, { "name": "minecraft:warped_fungus_on_a_stick", - "id": 617, + "id": 618, "oldId": 757 }, { "name": "minecraft:chain", - "id": 618, + "id": 619, "oldId": 758 }, { "name": "minecraft:music_disc_pigstep", - "id": 619, + "id": 620, "oldId": 759 }, { "name": "minecraft:nether_sprouts", - "id": 620, + "id": 621, "oldId": 760 }, { "name": "minecraft:soul_campfire", - "id": 621, + "id": 622, "oldId": 801 }, { "name": "minecraft:boat", - "id": 626, + "id": 640, "oldId": 333, "deprecated": true }, { "name": "minecraft:dye", - "id": 627, + "id": 641, "oldId": 351, "deprecated": true }, { "name": "minecraft:banner_pattern", - "id": 628, + "id": 642, "oldId": 434, "deprecated": true }, { "name": "minecraft:end_crystal", - "id": 630, + "id": 644, "oldId": 426 + }, + { + "name": "minecraft:spyglass", + "id": 625, + "oldId": 772 } -] +] \ No newline at end of file diff --git a/src/main/resources/runtime_item_states.json b/src/main/resources/runtime_item_states.json new file mode 100644 index 00000000000..4e609c7c07a --- /dev/null +++ b/src/main/resources/runtime_item_states.json @@ -0,0 +1,4426 @@ +[ + { + "name" : "minecraft:acacia_boat", + "id" : 379 + }, + { + "name" : "minecraft:acacia_button", + "id" : -140 + }, + { + "name" : "minecraft:acacia_chest_boat", + "id" : 637 + }, + { + "name" : "minecraft:acacia_door", + "id" : 556 + }, + { + "name" : "minecraft:acacia_fence_gate", + "id" : 187 + }, + { + "name" : "minecraft:acacia_pressure_plate", + "id" : -150 + }, + { + "name" : "minecraft:acacia_sign", + "id" : 579 + }, + { + "name" : "minecraft:acacia_stairs", + "id" : 163 + }, + { + "name" : "minecraft:acacia_standing_sign", + "id" : -190 + }, + { + "name" : "minecraft:acacia_trapdoor", + "id" : -145 + }, + { + "name" : "minecraft:acacia_wall_sign", + "id" : -191 + }, + { + "name" : "minecraft:activator_rail", + "id" : 126 + }, + { + "name" : "minecraft:agent_spawn_egg", + "id" : 487 + }, + { + "name" : "minecraft:air", + "id" : -158 + }, + { + "name" : "minecraft:allay_spawn_egg", + "id" : 630 + }, + { + "name" : "minecraft:allow", + "id" : 210 + }, + { + "name" : "minecraft:amethyst_block", + "id" : -327 + }, + { + "name" : "minecraft:amethyst_cluster", + "id" : -329 + }, + { + "name" : "minecraft:amethyst_shard", + "id" : 624 + }, + { + "name" : "minecraft:ancient_debris", + "id" : -271 + }, + { + "name" : "minecraft:andesite_stairs", + "id" : -171 + }, + { + "name" : "minecraft:anvil", + "id" : 145 + }, + { + "name" : "minecraft:apple", + "id" : 257 + }, + { + "name" : "minecraft:armor_stand", + "id" : 552 + }, + { + "name" : "minecraft:arrow", + "id" : 301 + }, + { + "name" : "minecraft:axolotl_bucket", + "id" : 369 + }, + { + "name" : "minecraft:axolotl_spawn_egg", + "id" : 500 + }, + { + "name" : "minecraft:azalea", + "id" : -337 + }, + { + "name" : "minecraft:azalea_leaves", + "id" : -324 + }, + { + "name" : "minecraft:azalea_leaves_flowered", + "id" : -325 + }, + { + "name" : "minecraft:baked_potato", + "id" : 281 + }, + { + "name" : "minecraft:balloon", + "id" : 598 + }, + { + "name" : "minecraft:bamboo", + "id" : -163 + }, + { + "name" : "minecraft:bamboo_sapling", + "id" : -164 + }, + { + "name" : "minecraft:banner", + "id" : 567 + }, + { + "name" : "minecraft:banner_pattern", + "id" : 642 + }, + { + "name" : "minecraft:barrel", + "id" : -203 + }, + { + "name" : "minecraft:barrier", + "id" : -161 + }, + { + "name" : "minecraft:basalt", + "id" : -234 + }, + { + "name" : "minecraft:bat_spawn_egg", + "id" : 453 + }, + { + "name" : "minecraft:beacon", + "id" : 138 + }, + { + "name" : "minecraft:bed", + "id" : 418 + }, + { + "name" : "minecraft:bedrock", + "id" : 7 + }, + { + "name" : "minecraft:bee_nest", + "id" : -218 + }, + { + "name" : "minecraft:bee_spawn_egg", + "id" : 494 + }, + { + "name" : "minecraft:beef", + "id" : 273 + }, + { + "name" : "minecraft:beehive", + "id" : -219 + }, + { + "name" : "minecraft:beetroot", + "id" : 285 + }, + { + "name" : "minecraft:beetroot_seeds", + "id" : 295 + }, + { + "name" : "minecraft:beetroot_soup", + "id" : 286 + }, + { + "name" : "minecraft:bell", + "id" : -206 + }, + { + "name" : "minecraft:big_dripleaf", + "id" : -323 + }, + { + "name" : "minecraft:birch_boat", + "id" : 376 + }, + { + "name" : "minecraft:birch_button", + "id" : -141 + }, + { + "name" : "minecraft:birch_chest_boat", + "id" : 634 + }, + { + "name" : "minecraft:birch_door", + "id" : 554 + }, + { + "name" : "minecraft:birch_fence_gate", + "id" : 184 + }, + { + "name" : "minecraft:birch_pressure_plate", + "id" : -151 + }, + { + "name" : "minecraft:birch_sign", + "id" : 577 + }, + { + "name" : "minecraft:birch_stairs", + "id" : 135 + }, + { + "name" : "minecraft:birch_standing_sign", + "id" : -186 + }, + { + "name" : "minecraft:birch_trapdoor", + "id" : -146 + }, + { + "name" : "minecraft:birch_wall_sign", + "id" : -187 + }, + { + "name" : "minecraft:black_candle", + "id" : -428 + }, + { + "name" : "minecraft:black_candle_cake", + "id" : -445 + }, + { + "name" : "minecraft:black_dye", + "id" : 395 + }, + { + "name" : "minecraft:black_glazed_terracotta", + "id" : 235 + }, + { + "name" : "minecraft:blackstone", + "id" : -273 + }, + { + "name" : "minecraft:blackstone_double_slab", + "id" : -283 + }, + { + "name" : "minecraft:blackstone_slab", + "id" : -282 + }, + { + "name" : "minecraft:blackstone_stairs", + "id" : -276 + }, + { + "name" : "minecraft:blackstone_wall", + "id" : -277 + }, + { + "name" : "minecraft:blast_furnace", + "id" : -196 + }, + { + "name" : "minecraft:blaze_powder", + "id" : 429 + }, + { + "name" : "minecraft:blaze_rod", + "id" : 423 + }, + { + "name" : "minecraft:blaze_spawn_egg", + "id" : 456 + }, + { + "name" : "minecraft:bleach", + "id" : 596 + }, + { + "name" : "minecraft:blue_candle", + "id" : -424 + }, + { + "name" : "minecraft:blue_candle_cake", + "id" : -441 + }, + { + "name" : "minecraft:blue_dye", + "id" : 399 + }, + { + "name" : "minecraft:blue_glazed_terracotta", + "id" : 231 + }, + { + "name" : "minecraft:blue_ice", + "id" : -11 + }, + { + "name" : "minecraft:boat", + "id" : 640 + }, + { + "name" : "minecraft:bone", + "id" : 415 + }, + { + "name" : "minecraft:bone_block", + "id" : 216 + }, + { + "name" : "minecraft:bone_meal", + "id" : 411 + }, + { + "name" : "minecraft:book", + "id" : 387 + }, + { + "name" : "minecraft:bookshelf", + "id" : 47 + }, + { + "name" : "minecraft:border_block", + "id" : 212 + }, + { + "name" : "minecraft:bordure_indented_banner_pattern", + "id" : 586 + }, + { + "name" : "minecraft:bow", + "id" : 300 + }, + { + "name" : "minecraft:bowl", + "id" : 321 + }, + { + "name" : "minecraft:bread", + "id" : 261 + }, + { + "name" : "minecraft:brewing_stand", + "id" : 431 + }, + { + "name" : "minecraft:brick", + "id" : 383 + }, + { + "name" : "minecraft:brick_block", + "id" : 45 + }, + { + "name" : "minecraft:brick_stairs", + "id" : 108 + }, + { + "name" : "minecraft:brown_candle", + "id" : -425 + }, + { + "name" : "minecraft:brown_candle_cake", + "id" : -442 + }, + { + "name" : "minecraft:brown_dye", + "id" : 398 + }, + { + "name" : "minecraft:brown_glazed_terracotta", + "id" : 232 + }, + { + "name" : "minecraft:brown_mushroom", + "id" : 39 + }, + { + "name" : "minecraft:brown_mushroom_block", + "id" : 99 + }, + { + "name" : "minecraft:bubble_column", + "id" : -160 + }, + { + "name" : "minecraft:bucket", + "id" : 360 + }, + { + "name" : "minecraft:budding_amethyst", + "id" : -328 + }, + { + "name" : "minecraft:cactus", + "id" : 81 + }, + { + "name" : "minecraft:cake", + "id" : 417 + }, + { + "name" : "minecraft:calcite", + "id" : -326 + }, + { + "name" : "minecraft:camera", + "id" : 593 + }, + { + "name" : "minecraft:campfire", + "id" : 589 + }, + { + "name" : "minecraft:candle", + "id" : -412 + }, + { + "name" : "minecraft:candle_cake", + "id" : -429 + }, + { + "name" : "minecraft:carpet", + "id" : 171 + }, + { + "name" : "minecraft:carrot", + "id" : 279 + }, + { + "name" : "minecraft:carrot_on_a_stick", + "id" : 517 + }, + { + "name" : "minecraft:carrots", + "id" : 141 + }, + { + "name" : "minecraft:cartography_table", + "id" : -200 + }, + { + "name" : "minecraft:carved_pumpkin", + "id" : -155 + }, + { + "name" : "minecraft:cat_spawn_egg", + "id" : 488 + }, + { + "name" : "minecraft:cauldron", + "id" : 432 + }, + { + "name" : "minecraft:cave_spider_spawn_egg", + "id" : 457 + }, + { + "name" : "minecraft:cave_vines", + "id" : -322 + }, + { + "name" : "minecraft:cave_vines_body_with_berries", + "id" : -375 + }, + { + "name" : "minecraft:cave_vines_head_with_berries", + "id" : -376 + }, + { + "name" : "minecraft:chain", + "id" : 619 + }, + { + "name" : "minecraft:chain_command_block", + "id" : 189 + }, + { + "name" : "minecraft:chainmail_boots", + "id" : 342 + }, + { + "name" : "minecraft:chainmail_chestplate", + "id" : 340 + }, + { + "name" : "minecraft:chainmail_helmet", + "id" : 339 + }, + { + "name" : "minecraft:chainmail_leggings", + "id" : 341 + }, + { + "name" : "minecraft:charcoal", + "id" : 303 + }, + { + "name" : "minecraft:chemical_heat", + "id" : 192 + }, + { + "name" : "minecraft:chemistry_table", + "id" : 238 + }, + { + "name" : "minecraft:chest", + "id" : 54 + }, + { + "name" : "minecraft:chest_boat", + "id" : 639 + }, + { + "name" : "minecraft:chest_minecart", + "id" : 389 + }, + { + "name" : "minecraft:chicken", + "id" : 275 + }, + { + "name" : "minecraft:chicken_spawn_egg", + "id" : 435 + }, + { + "name" : "minecraft:chiseled_deepslate", + "id" : -395 + }, + { + "name" : "minecraft:chiseled_nether_bricks", + "id" : -302 + }, + { + "name" : "minecraft:chiseled_polished_blackstone", + "id" : -279 + }, + { + "name" : "minecraft:chorus_flower", + "id" : 200 + }, + { + "name" : "minecraft:chorus_fruit", + "id" : 558 + }, + { + "name" : "minecraft:chorus_plant", + "id" : 240 + }, + { + "name" : "minecraft:clay", + "id" : 82 + }, + { + "name" : "minecraft:clay_ball", + "id" : 384 + }, + { + "name" : "minecraft:client_request_placeholder_block", + "id" : -465 + }, + { + "name" : "minecraft:clock", + "id" : 393 + }, + { + "name" : "minecraft:coal", + "id" : 302 + }, + { + "name" : "minecraft:coal_block", + "id" : 173 + }, + { + "name" : "minecraft:coal_ore", + "id" : 16 + }, + { + "name" : "minecraft:cobbled_deepslate", + "id" : -379 + }, + { + "name" : "minecraft:cobbled_deepslate_double_slab", + "id" : -396 + }, + { + "name" : "minecraft:cobbled_deepslate_slab", + "id" : -380 + }, + { + "name" : "minecraft:cobbled_deepslate_stairs", + "id" : -381 + }, + { + "name" : "minecraft:cobbled_deepslate_wall", + "id" : -382 + }, + { + "name" : "minecraft:cobblestone", + "id" : 4 + }, + { + "name" : "minecraft:cobblestone_wall", + "id" : 139 + }, + { + "name" : "minecraft:cocoa", + "id" : 127 + }, + { + "name" : "minecraft:cocoa_beans", + "id" : 412 + }, + { + "name" : "minecraft:cod", + "id" : 264 + }, + { + "name" : "minecraft:cod_bucket", + "id" : 364 + }, + { + "name" : "minecraft:cod_spawn_egg", + "id" : 480 + }, + { + "name" : "minecraft:colored_torch_bp", + "id" : 204 + }, + { + "name" : "minecraft:colored_torch_rg", + "id" : 202 + }, + { + "name" : "minecraft:command_block", + "id" : 137 + }, + { + "name" : "minecraft:command_block_minecart", + "id" : 563 + }, + { + "name" : "minecraft:comparator", + "id" : 522 + }, + { + "name" : "minecraft:compass", + "id" : 391 + }, + { + "name" : "minecraft:composter", + "id" : -213 + }, + { + "name" : "minecraft:compound", + "id" : 594 + }, + { + "name" : "minecraft:concrete", + "id" : 236 + }, + { + "name" : "minecraft:concrete_powder", + "id" : 237 + }, + { + "name" : "minecraft:conduit", + "id" : -157 + }, + { + "name" : "minecraft:cooked_beef", + "id" : 274 + }, + { + "name" : "minecraft:cooked_chicken", + "id" : 276 + }, + { + "name" : "minecraft:cooked_cod", + "id" : 268 + }, + { + "name" : "minecraft:cooked_mutton", + "id" : 551 + }, + { + "name" : "minecraft:cooked_porkchop", + "id" : 263 + }, + { + "name" : "minecraft:cooked_rabbit", + "id" : 289 + }, + { + "name" : "minecraft:cooked_salmon", + "id" : 269 + }, + { + "name" : "minecraft:cookie", + "id" : 271 + }, + { + "name" : "minecraft:copper_block", + "id" : -340 + }, + { + "name" : "minecraft:copper_ingot", + "id" : 504 + }, + { + "name" : "minecraft:copper_ore", + "id" : -311 + }, + { + "name" : "minecraft:coral", + "id" : -131 + }, + { + "name" : "minecraft:coral_block", + "id" : -132 + }, + { + "name" : "minecraft:coral_fan", + "id" : -133 + }, + { + "name" : "minecraft:coral_fan_dead", + "id" : -134 + }, + { + "name" : "minecraft:coral_fan_hang", + "id" : -135 + }, + { + "name" : "minecraft:coral_fan_hang2", + "id" : -136 + }, + { + "name" : "minecraft:coral_fan_hang3", + "id" : -137 + }, + { + "name" : "minecraft:cow_spawn_egg", + "id" : 436 + }, + { + "name" : "minecraft:cracked_deepslate_bricks", + "id" : -410 + }, + { + "name" : "minecraft:cracked_deepslate_tiles", + "id" : -409 + }, + { + "name" : "minecraft:cracked_nether_bricks", + "id" : -303 + }, + { + "name" : "minecraft:cracked_polished_blackstone_bricks", + "id" : -280 + }, + { + "name" : "minecraft:crafting_table", + "id" : 58 + }, + { + "name" : "minecraft:creeper_banner_pattern", + "id" : 582 + }, + { + "name" : "minecraft:creeper_spawn_egg", + "id" : 441 + }, + { + "name" : "minecraft:crimson_button", + "id" : -260 + }, + { + "name" : "minecraft:crimson_door", + "id" : 616 + }, + { + "name" : "minecraft:crimson_double_slab", + "id" : -266 + }, + { + "name" : "minecraft:crimson_fence", + "id" : -256 + }, + { + "name" : "minecraft:crimson_fence_gate", + "id" : -258 + }, + { + "name" : "minecraft:crimson_fungus", + "id" : -228 + }, + { + "name" : "minecraft:crimson_hyphae", + "id" : -299 + }, + { + "name" : "minecraft:crimson_nylium", + "id" : -232 + }, + { + "name" : "minecraft:crimson_planks", + "id" : -242 + }, + { + "name" : "minecraft:crimson_pressure_plate", + "id" : -262 + }, + { + "name" : "minecraft:crimson_roots", + "id" : -223 + }, + { + "name" : "minecraft:crimson_sign", + "id" : 614 + }, + { + "name" : "minecraft:crimson_slab", + "id" : -264 + }, + { + "name" : "minecraft:crimson_stairs", + "id" : -254 + }, + { + "name" : "minecraft:crimson_standing_sign", + "id" : -250 + }, + { + "name" : "minecraft:crimson_stem", + "id" : -225 + }, + { + "name" : "minecraft:crimson_trapdoor", + "id" : -246 + }, + { + "name" : "minecraft:crimson_wall_sign", + "id" : -252 + }, + { + "name" : "minecraft:crossbow", + "id" : 575 + }, + { + "name" : "minecraft:crying_obsidian", + "id" : -289 + }, + { + "name" : "minecraft:cut_copper", + "id" : -347 + }, + { + "name" : "minecraft:cut_copper_slab", + "id" : -361 + }, + { + "name" : "minecraft:cut_copper_stairs", + "id" : -354 + }, + { + "name" : "minecraft:cyan_candle", + "id" : -422 + }, + { + "name" : "minecraft:cyan_candle_cake", + "id" : -439 + }, + { + "name" : "minecraft:cyan_dye", + "id" : 401 + }, + { + "name" : "minecraft:cyan_glazed_terracotta", + "id" : 229 + }, + { + "name" : "minecraft:dark_oak_boat", + "id" : 380 + }, + { + "name" : "minecraft:dark_oak_button", + "id" : -142 + }, + { + "name" : "minecraft:dark_oak_chest_boat", + "id" : 638 + }, + { + "name" : "minecraft:dark_oak_door", + "id" : 557 + }, + { + "name" : "minecraft:dark_oak_fence_gate", + "id" : 186 + }, + { + "name" : "minecraft:dark_oak_pressure_plate", + "id" : -152 + }, + { + "name" : "minecraft:dark_oak_sign", + "id" : 580 + }, + { + "name" : "minecraft:dark_oak_stairs", + "id" : 164 + }, + { + "name" : "minecraft:dark_oak_trapdoor", + "id" : -147 + }, + { + "name" : "minecraft:dark_prismarine_stairs", + "id" : -3 + }, + { + "name" : "minecraft:darkoak_standing_sign", + "id" : -192 + }, + { + "name" : "minecraft:darkoak_wall_sign", + "id" : -193 + }, + { + "name" : "minecraft:daylight_detector", + "id" : 151 + }, + { + "name" : "minecraft:daylight_detector_inverted", + "id" : 178 + }, + { + "name" : "minecraft:deadbush", + "id" : 32 + }, + { + "name" : "minecraft:deepslate", + "id" : -378 + }, + { + "name" : "minecraft:deepslate_brick_double_slab", + "id" : -399 + }, + { + "name" : "minecraft:deepslate_brick_slab", + "id" : -392 + }, + { + "name" : "minecraft:deepslate_brick_stairs", + "id" : -393 + }, + { + "name" : "minecraft:deepslate_brick_wall", + "id" : -394 + }, + { + "name" : "minecraft:deepslate_bricks", + "id" : -391 + }, + { + "name" : "minecraft:deepslate_coal_ore", + "id" : -406 + }, + { + "name" : "minecraft:deepslate_copper_ore", + "id" : -408 + }, + { + "name" : "minecraft:deepslate_diamond_ore", + "id" : -405 + }, + { + "name" : "minecraft:deepslate_emerald_ore", + "id" : -407 + }, + { + "name" : "minecraft:deepslate_gold_ore", + "id" : -402 + }, + { + "name" : "minecraft:deepslate_iron_ore", + "id" : -401 + }, + { + "name" : "minecraft:deepslate_lapis_ore", + "id" : -400 + }, + { + "name" : "minecraft:deepslate_redstone_ore", + "id" : -403 + }, + { + "name" : "minecraft:deepslate_tile_double_slab", + "id" : -398 + }, + { + "name" : "minecraft:deepslate_tile_slab", + "id" : -388 + }, + { + "name" : "minecraft:deepslate_tile_stairs", + "id" : -389 + }, + { + "name" : "minecraft:deepslate_tile_wall", + "id" : -390 + }, + { + "name" : "minecraft:deepslate_tiles", + "id" : -387 + }, + { + "name" : "minecraft:deny", + "id" : 211 + }, + { + "name" : "minecraft:detector_rail", + "id" : 28 + }, + { + "name" : "minecraft:diamond", + "id" : 304 + }, + { + "name" : "minecraft:diamond_axe", + "id" : 319 + }, + { + "name" : "minecraft:diamond_block", + "id" : 57 + }, + { + "name" : "minecraft:diamond_boots", + "id" : 350 + }, + { + "name" : "minecraft:diamond_chestplate", + "id" : 348 + }, + { + "name" : "minecraft:diamond_helmet", + "id" : 347 + }, + { + "name" : "minecraft:diamond_hoe", + "id" : 332 + }, + { + "name" : "minecraft:diamond_horse_armor", + "id" : 533 + }, + { + "name" : "minecraft:diamond_leggings", + "id" : 349 + }, + { + "name" : "minecraft:diamond_ore", + "id" : 56 + }, + { + "name" : "minecraft:diamond_pickaxe", + "id" : 318 + }, + { + "name" : "minecraft:diamond_shovel", + "id" : 317 + }, + { + "name" : "minecraft:diamond_sword", + "id" : 316 + }, + { + "name" : "minecraft:diorite_stairs", + "id" : -170 + }, + { + "name" : "minecraft:dirt", + "id" : 3 + }, + { + "name" : "minecraft:dirt_with_roots", + "id" : -318 + }, + { + "name" : "minecraft:dispenser", + "id" : 23 + }, + { + "name" : "minecraft:dolphin_spawn_egg", + "id" : 484 + }, + { + "name" : "minecraft:donkey_spawn_egg", + "id" : 465 + }, + { + "name" : "minecraft:double_cut_copper_slab", + "id" : -368 + }, + { + "name" : "minecraft:double_plant", + "id" : 175 + }, + { + "name" : "minecraft:double_stone_slab", + "id" : 44 + }, + { + "name" : "minecraft:double_stone_slab2", + "id" : 182 + }, + { + "name" : "minecraft:double_stone_slab3", + "id" : -162 + }, + { + "name" : "minecraft:double_stone_slab4", + "id" : -166 + }, + { + "name" : "minecraft:double_wooden_slab", + "id" : 157 + }, + { + "name" : "minecraft:dragon_breath", + "id" : 560 + }, + { + "name" : "minecraft:dragon_egg", + "id" : 122 + }, + { + "name" : "minecraft:dried_kelp", + "id" : 270 + }, + { + "name" : "minecraft:dried_kelp_block", + "id" : -139 + }, + { + "name" : "minecraft:dripstone_block", + "id" : -317 + }, + { + "name" : "minecraft:dropper", + "id" : 125 + }, + { + "name" : "minecraft:drowned_spawn_egg", + "id" : 483 + }, + { + "name" : "minecraft:dye", + "id" : 641 + }, + { + "name" : "minecraft:egg", + "id" : 390 + }, + { + "name" : "minecraft:elder_guardian_spawn_egg", + "id" : 471 + }, + { + "name" : "minecraft:element_0", + "id" : 36 + }, + { + "name" : "minecraft:element_1", + "id" : -12 + }, + { + "name" : "minecraft:element_10", + "id" : -21 + }, + { + "name" : "minecraft:element_100", + "id" : -111 + }, + { + "name" : "minecraft:element_101", + "id" : -112 + }, + { + "name" : "minecraft:element_102", + "id" : -113 + }, + { + "name" : "minecraft:element_103", + "id" : -114 + }, + { + "name" : "minecraft:element_104", + "id" : -115 + }, + { + "name" : "minecraft:element_105", + "id" : -116 + }, + { + "name" : "minecraft:element_106", + "id" : -117 + }, + { + "name" : "minecraft:element_107", + "id" : -118 + }, + { + "name" : "minecraft:element_108", + "id" : -119 + }, + { + "name" : "minecraft:element_109", + "id" : -120 + }, + { + "name" : "minecraft:element_11", + "id" : -22 + }, + { + "name" : "minecraft:element_110", + "id" : -121 + }, + { + "name" : "minecraft:element_111", + "id" : -122 + }, + { + "name" : "minecraft:element_112", + "id" : -123 + }, + { + "name" : "minecraft:element_113", + "id" : -124 + }, + { + "name" : "minecraft:element_114", + "id" : -125 + }, + { + "name" : "minecraft:element_115", + "id" : -126 + }, + { + "name" : "minecraft:element_116", + "id" : -127 + }, + { + "name" : "minecraft:element_117", + "id" : -128 + }, + { + "name" : "minecraft:element_118", + "id" : -129 + }, + { + "name" : "minecraft:element_12", + "id" : -23 + }, + { + "name" : "minecraft:element_13", + "id" : -24 + }, + { + "name" : "minecraft:element_14", + "id" : -25 + }, + { + "name" : "minecraft:element_15", + "id" : -26 + }, + { + "name" : "minecraft:element_16", + "id" : -27 + }, + { + "name" : "minecraft:element_17", + "id" : -28 + }, + { + "name" : "minecraft:element_18", + "id" : -29 + }, + { + "name" : "minecraft:element_19", + "id" : -30 + }, + { + "name" : "minecraft:element_2", + "id" : -13 + }, + { + "name" : "minecraft:element_20", + "id" : -31 + }, + { + "name" : "minecraft:element_21", + "id" : -32 + }, + { + "name" : "minecraft:element_22", + "id" : -33 + }, + { + "name" : "minecraft:element_23", + "id" : -34 + }, + { + "name" : "minecraft:element_24", + "id" : -35 + }, + { + "name" : "minecraft:element_25", + "id" : -36 + }, + { + "name" : "minecraft:element_26", + "id" : -37 + }, + { + "name" : "minecraft:element_27", + "id" : -38 + }, + { + "name" : "minecraft:element_28", + "id" : -39 + }, + { + "name" : "minecraft:element_29", + "id" : -40 + }, + { + "name" : "minecraft:element_3", + "id" : -14 + }, + { + "name" : "minecraft:element_30", + "id" : -41 + }, + { + "name" : "minecraft:element_31", + "id" : -42 + }, + { + "name" : "minecraft:element_32", + "id" : -43 + }, + { + "name" : "minecraft:element_33", + "id" : -44 + }, + { + "name" : "minecraft:element_34", + "id" : -45 + }, + { + "name" : "minecraft:element_35", + "id" : -46 + }, + { + "name" : "minecraft:element_36", + "id" : -47 + }, + { + "name" : "minecraft:element_37", + "id" : -48 + }, + { + "name" : "minecraft:element_38", + "id" : -49 + }, + { + "name" : "minecraft:element_39", + "id" : -50 + }, + { + "name" : "minecraft:element_4", + "id" : -15 + }, + { + "name" : "minecraft:element_40", + "id" : -51 + }, + { + "name" : "minecraft:element_41", + "id" : -52 + }, + { + "name" : "minecraft:element_42", + "id" : -53 + }, + { + "name" : "minecraft:element_43", + "id" : -54 + }, + { + "name" : "minecraft:element_44", + "id" : -55 + }, + { + "name" : "minecraft:element_45", + "id" : -56 + }, + { + "name" : "minecraft:element_46", + "id" : -57 + }, + { + "name" : "minecraft:element_47", + "id" : -58 + }, + { + "name" : "minecraft:element_48", + "id" : -59 + }, + { + "name" : "minecraft:element_49", + "id" : -60 + }, + { + "name" : "minecraft:element_5", + "id" : -16 + }, + { + "name" : "minecraft:element_50", + "id" : -61 + }, + { + "name" : "minecraft:element_51", + "id" : -62 + }, + { + "name" : "minecraft:element_52", + "id" : -63 + }, + { + "name" : "minecraft:element_53", + "id" : -64 + }, + { + "name" : "minecraft:element_54", + "id" : -65 + }, + { + "name" : "minecraft:element_55", + "id" : -66 + }, + { + "name" : "minecraft:element_56", + "id" : -67 + }, + { + "name" : "minecraft:element_57", + "id" : -68 + }, + { + "name" : "minecraft:element_58", + "id" : -69 + }, + { + "name" : "minecraft:element_59", + "id" : -70 + }, + { + "name" : "minecraft:element_6", + "id" : -17 + }, + { + "name" : "minecraft:element_60", + "id" : -71 + }, + { + "name" : "minecraft:element_61", + "id" : -72 + }, + { + "name" : "minecraft:element_62", + "id" : -73 + }, + { + "name" : "minecraft:element_63", + "id" : -74 + }, + { + "name" : "minecraft:element_64", + "id" : -75 + }, + { + "name" : "minecraft:element_65", + "id" : -76 + }, + { + "name" : "minecraft:element_66", + "id" : -77 + }, + { + "name" : "minecraft:element_67", + "id" : -78 + }, + { + "name" : "minecraft:element_68", + "id" : -79 + }, + { + "name" : "minecraft:element_69", + "id" : -80 + }, + { + "name" : "minecraft:element_7", + "id" : -18 + }, + { + "name" : "minecraft:element_70", + "id" : -81 + }, + { + "name" : "minecraft:element_71", + "id" : -82 + }, + { + "name" : "minecraft:element_72", + "id" : -83 + }, + { + "name" : "minecraft:element_73", + "id" : -84 + }, + { + "name" : "minecraft:element_74", + "id" : -85 + }, + { + "name" : "minecraft:element_75", + "id" : -86 + }, + { + "name" : "minecraft:element_76", + "id" : -87 + }, + { + "name" : "minecraft:element_77", + "id" : -88 + }, + { + "name" : "minecraft:element_78", + "id" : -89 + }, + { + "name" : "minecraft:element_79", + "id" : -90 + }, + { + "name" : "minecraft:element_8", + "id" : -19 + }, + { + "name" : "minecraft:element_80", + "id" : -91 + }, + { + "name" : "minecraft:element_81", + "id" : -92 + }, + { + "name" : "minecraft:element_82", + "id" : -93 + }, + { + "name" : "minecraft:element_83", + "id" : -94 + }, + { + "name" : "minecraft:element_84", + "id" : -95 + }, + { + "name" : "minecraft:element_85", + "id" : -96 + }, + { + "name" : "minecraft:element_86", + "id" : -97 + }, + { + "name" : "minecraft:element_87", + "id" : -98 + }, + { + "name" : "minecraft:element_88", + "id" : -99 + }, + { + "name" : "minecraft:element_89", + "id" : -100 + }, + { + "name" : "minecraft:element_9", + "id" : -20 + }, + { + "name" : "minecraft:element_90", + "id" : -101 + }, + { + "name" : "minecraft:element_91", + "id" : -102 + }, + { + "name" : "minecraft:element_92", + "id" : -103 + }, + { + "name" : "minecraft:element_93", + "id" : -104 + }, + { + "name" : "minecraft:element_94", + "id" : -105 + }, + { + "name" : "minecraft:element_95", + "id" : -106 + }, + { + "name" : "minecraft:element_96", + "id" : -107 + }, + { + "name" : "minecraft:element_97", + "id" : -108 + }, + { + "name" : "minecraft:element_98", + "id" : -109 + }, + { + "name" : "minecraft:element_99", + "id" : -110 + }, + { + "name" : "minecraft:elytra", + "id" : 564 + }, + { + "name" : "minecraft:emerald", + "id" : 512 + }, + { + "name" : "minecraft:emerald_block", + "id" : 133 + }, + { + "name" : "minecraft:emerald_ore", + "id" : 129 + }, + { + "name" : "minecraft:empty_map", + "id" : 515 + }, + { + "name" : "minecraft:enchanted_book", + "id" : 521 + }, + { + "name" : "minecraft:enchanted_golden_apple", + "id" : 259 + }, + { + "name" : "minecraft:enchanting_table", + "id" : 116 + }, + { + "name" : "minecraft:end_brick_stairs", + "id" : -178 + }, + { + "name" : "minecraft:end_bricks", + "id" : 206 + }, + { + "name" : "minecraft:end_crystal", + "id" : 644 + }, + { + "name" : "minecraft:end_gateway", + "id" : 209 + }, + { + "name" : "minecraft:end_portal", + "id" : 119 + }, + { + "name" : "minecraft:end_portal_frame", + "id" : 120 + }, + { + "name" : "minecraft:end_rod", + "id" : 208 + }, + { + "name" : "minecraft:end_stone", + "id" : 121 + }, + { + "name" : "minecraft:ender_chest", + "id" : 130 + }, + { + "name" : "minecraft:ender_eye", + "id" : 433 + }, + { + "name" : "minecraft:ender_pearl", + "id" : 422 + }, + { + "name" : "minecraft:enderman_spawn_egg", + "id" : 442 + }, + { + "name" : "minecraft:endermite_spawn_egg", + "id" : 460 + }, + { + "name" : "minecraft:evoker_spawn_egg", + "id" : 475 + }, + { + "name" : "minecraft:experience_bottle", + "id" : 508 + }, + { + "name" : "minecraft:exposed_copper", + "id" : -341 + }, + { + "name" : "minecraft:exposed_cut_copper", + "id" : -348 + }, + { + "name" : "minecraft:exposed_cut_copper_slab", + "id" : -362 + }, + { + "name" : "minecraft:exposed_cut_copper_stairs", + "id" : -355 + }, + { + "name" : "minecraft:exposed_double_cut_copper_slab", + "id" : -369 + }, + { + "name" : "minecraft:farmland", + "id" : 60 + }, + { + "name" : "minecraft:feather", + "id" : 327 + }, + { + "name" : "minecraft:fence", + "id" : 85 + }, + { + "name" : "minecraft:fence_gate", + "id" : 107 + }, + { + "name" : "minecraft:fermented_spider_eye", + "id" : 428 + }, + { + "name" : "minecraft:field_masoned_banner_pattern", + "id" : 585 + }, + { + "name" : "minecraft:filled_map", + "id" : 420 + }, + { + "name" : "minecraft:fire", + "id" : 51 + }, + { + "name" : "minecraft:fire_charge", + "id" : 509 + }, + { + "name" : "minecraft:firefly_spawn_egg", + "id" : 632 + }, + { + "name" : "minecraft:firework_rocket", + "id" : 519 + }, + { + "name" : "minecraft:firework_star", + "id" : 520 + }, + { + "name" : "minecraft:fishing_rod", + "id" : 392 + }, + { + "name" : "minecraft:fletching_table", + "id" : -201 + }, + { + "name" : "minecraft:flint", + "id" : 356 + }, + { + "name" : "minecraft:flint_and_steel", + "id" : 299 + }, + { + "name" : "minecraft:flower_banner_pattern", + "id" : 581 + }, + { + "name" : "minecraft:flower_pot", + "id" : 514 + }, + { + "name" : "minecraft:flowering_azalea", + "id" : -338 + }, + { + "name" : "minecraft:flowing_lava", + "id" : 10 + }, + { + "name" : "minecraft:flowing_water", + "id" : 8 + }, + { + "name" : "minecraft:fox_spawn_egg", + "id" : 490 + }, + { + "name" : "minecraft:frame", + "id" : 513 + }, + { + "name" : "minecraft:frog_spawn", + "id" : -468 + }, + { + "name" : "minecraft:frog_spawn_egg", + "id" : 627 + }, + { + "name" : "minecraft:frosted_ice", + "id" : 207 + }, + { + "name" : "minecraft:furnace", + "id" : 61 + }, + { + "name" : "minecraft:ghast_spawn_egg", + "id" : 454 + }, + { + "name" : "minecraft:ghast_tear", + "id" : 424 + }, + { + "name" : "minecraft:gilded_blackstone", + "id" : -281 + }, + { + "name" : "minecraft:glass", + "id" : 20 + }, + { + "name" : "minecraft:glass_bottle", + "id" : 427 + }, + { + "name" : "minecraft:glass_pane", + "id" : 102 + }, + { + "name" : "minecraft:glistering_melon_slice", + "id" : 434 + }, + { + "name" : "minecraft:globe_banner_pattern", + "id" : 588 + }, + { + "name" : "minecraft:glow_berries", + "id" : 645 + }, + { + "name" : "minecraft:glow_frame", + "id" : 623 + }, + { + "name" : "minecraft:glow_ink_sac", + "id" : 503 + }, + { + "name" : "minecraft:glow_lichen", + "id" : -411 + }, + { + "name" : "minecraft:glow_squid_spawn_egg", + "id" : 502 + }, + { + "name" : "minecraft:glow_stick", + "id" : 601 + }, + { + "name" : "minecraft:glowingobsidian", + "id" : 246 + }, + { + "name" : "minecraft:glowstone", + "id" : 89 + }, + { + "name" : "minecraft:glowstone_dust", + "id" : 394 + }, + { + "name" : "minecraft:goat_spawn_egg", + "id" : 501 + }, + { + "name" : "minecraft:gold_block", + "id" : 41 + }, + { + "name" : "minecraft:gold_ingot", + "id" : 306 + }, + { + "name" : "minecraft:gold_nugget", + "id" : 425 + }, + { + "name" : "minecraft:gold_ore", + "id" : 14 + }, + { + "name" : "minecraft:golden_apple", + "id" : 258 + }, + { + "name" : "minecraft:golden_axe", + "id" : 325 + }, + { + "name" : "minecraft:golden_boots", + "id" : 354 + }, + { + "name" : "minecraft:golden_carrot", + "id" : 283 + }, + { + "name" : "minecraft:golden_chestplate", + "id" : 352 + }, + { + "name" : "minecraft:golden_helmet", + "id" : 351 + }, + { + "name" : "minecraft:golden_hoe", + "id" : 333 + }, + { + "name" : "minecraft:golden_horse_armor", + "id" : 532 + }, + { + "name" : "minecraft:golden_leggings", + "id" : 353 + }, + { + "name" : "minecraft:golden_pickaxe", + "id" : 324 + }, + { + "name" : "minecraft:golden_rail", + "id" : 27 + }, + { + "name" : "minecraft:golden_shovel", + "id" : 323 + }, + { + "name" : "minecraft:golden_sword", + "id" : 322 + }, + { + "name" : "minecraft:granite_stairs", + "id" : -169 + }, + { + "name" : "minecraft:grass", + "id" : 2 + }, + { + "name" : "minecraft:grass_path", + "id" : 198 + }, + { + "name" : "minecraft:gravel", + "id" : 13 + }, + { + "name" : "minecraft:gray_candle", + "id" : -420 + }, + { + "name" : "minecraft:gray_candle_cake", + "id" : -437 + }, + { + "name" : "minecraft:gray_dye", + "id" : 403 + }, + { + "name" : "minecraft:gray_glazed_terracotta", + "id" : 227 + }, + { + "name" : "minecraft:green_candle", + "id" : -426 + }, + { + "name" : "minecraft:green_candle_cake", + "id" : -443 + }, + { + "name" : "minecraft:green_dye", + "id" : 397 + }, + { + "name" : "minecraft:green_glazed_terracotta", + "id" : 233 + }, + { + "name" : "minecraft:grindstone", + "id" : -195 + }, + { + "name" : "minecraft:guardian_spawn_egg", + "id" : 461 + }, + { + "name" : "minecraft:gunpowder", + "id" : 328 + }, + { + "name" : "minecraft:hanging_roots", + "id" : -319 + }, + { + "name" : "minecraft:hard_glass", + "id" : 253 + }, + { + "name" : "minecraft:hard_glass_pane", + "id" : 190 + }, + { + "name" : "minecraft:hard_stained_glass", + "id" : 254 + }, + { + "name" : "minecraft:hard_stained_glass_pane", + "id" : 191 + }, + { + "name" : "minecraft:hardened_clay", + "id" : 172 + }, + { + "name" : "minecraft:hay_block", + "id" : 170 + }, + { + "name" : "minecraft:heart_of_the_sea", + "id" : 571 + }, + { + "name" : "minecraft:heavy_weighted_pressure_plate", + "id" : 148 + }, + { + "name" : "minecraft:hoglin_spawn_egg", + "id" : 496 + }, + { + "name" : "minecraft:honey_block", + "id" : -220 + }, + { + "name" : "minecraft:honey_bottle", + "id" : 592 + }, + { + "name" : "minecraft:honeycomb", + "id" : 591 + }, + { + "name" : "minecraft:honeycomb_block", + "id" : -221 + }, + { + "name" : "minecraft:hopper", + "id" : 527 + }, + { + "name" : "minecraft:hopper_minecart", + "id" : 526 + }, + { + "name" : "minecraft:horse_spawn_egg", + "id" : 458 + }, + { + "name" : "minecraft:husk_spawn_egg", + "id" : 463 + }, + { + "name" : "minecraft:ice", + "id" : 79 + }, + { + "name" : "minecraft:ice_bomb", + "id" : 595 + }, + { + "name" : "minecraft:infested_deepslate", + "id" : -454 + }, + { + "name" : "minecraft:info_update", + "id" : 248 + }, + { + "name" : "minecraft:info_update2", + "id" : 249 + }, + { + "name" : "minecraft:ink_sac", + "id" : 413 + }, + { + "name" : "minecraft:invisible_bedrock", + "id" : 95 + }, + { + "name" : "minecraft:iron_axe", + "id" : 298 + }, + { + "name" : "minecraft:iron_bars", + "id" : 101 + }, + { + "name" : "minecraft:iron_block", + "id" : 42 + }, + { + "name" : "minecraft:iron_boots", + "id" : 346 + }, + { + "name" : "minecraft:iron_chestplate", + "id" : 344 + }, + { + "name" : "minecraft:iron_door", + "id" : 372 + }, + { + "name" : "minecraft:iron_helmet", + "id" : 343 + }, + { + "name" : "minecraft:iron_hoe", + "id" : 331 + }, + { + "name" : "minecraft:iron_horse_armor", + "id" : 531 + }, + { + "name" : "minecraft:iron_ingot", + "id" : 305 + }, + { + "name" : "minecraft:iron_leggings", + "id" : 345 + }, + { + "name" : "minecraft:iron_nugget", + "id" : 569 + }, + { + "name" : "minecraft:iron_ore", + "id" : 15 + }, + { + "name" : "minecraft:iron_pickaxe", + "id" : 297 + }, + { + "name" : "minecraft:iron_shovel", + "id" : 296 + }, + { + "name" : "minecraft:iron_sword", + "id" : 307 + }, + { + "name" : "minecraft:iron_trapdoor", + "id" : 167 + }, + { + "name" : "minecraft:item.acacia_door", + "id" : 196 + }, + { + "name" : "minecraft:item.bed", + "id" : 26 + }, + { + "name" : "minecraft:item.beetroot", + "id" : 244 + }, + { + "name" : "minecraft:item.birch_door", + "id" : 194 + }, + { + "name" : "minecraft:item.brewing_stand", + "id" : 117 + }, + { + "name" : "minecraft:item.cake", + "id" : 92 + }, + { + "name" : "minecraft:item.camera", + "id" : 242 + }, + { + "name" : "minecraft:item.campfire", + "id" : -209 + }, + { + "name" : "minecraft:item.cauldron", + "id" : 118 + }, + { + "name" : "minecraft:item.chain", + "id" : -286 + }, + { + "name" : "minecraft:item.crimson_door", + "id" : -244 + }, + { + "name" : "minecraft:item.dark_oak_door", + "id" : 197 + }, + { + "name" : "minecraft:item.flower_pot", + "id" : 140 + }, + { + "name" : "minecraft:item.frame", + "id" : 199 + }, + { + "name" : "minecraft:item.glow_frame", + "id" : -339 + }, + { + "name" : "minecraft:item.hopper", + "id" : 154 + }, + { + "name" : "minecraft:item.iron_door", + "id" : 71 + }, + { + "name" : "minecraft:item.jungle_door", + "id" : 195 + }, + { + "name" : "minecraft:item.kelp", + "id" : -138 + }, + { + "name" : "minecraft:item.nether_sprouts", + "id" : -238 + }, + { + "name" : "minecraft:item.nether_wart", + "id" : 115 + }, + { + "name" : "minecraft:item.reeds", + "id" : 83 + }, + { + "name" : "minecraft:item.skull", + "id" : 144 + }, + { + "name" : "minecraft:item.soul_campfire", + "id" : -290 + }, + { + "name" : "minecraft:item.spruce_door", + "id" : 193 + }, + { + "name" : "minecraft:item.warped_door", + "id" : -245 + }, + { + "name" : "minecraft:item.wheat", + "id" : 59 + }, + { + "name" : "minecraft:item.wooden_door", + "id" : 64 + }, + { + "name" : "minecraft:jigsaw", + "id" : -211 + }, + { + "name" : "minecraft:jukebox", + "id" : 84 + }, + { + "name" : "minecraft:jungle_boat", + "id" : 377 + }, + { + "name" : "minecraft:jungle_button", + "id" : -143 + }, + { + "name" : "minecraft:jungle_chest_boat", + "id" : 635 + }, + { + "name" : "minecraft:jungle_door", + "id" : 555 + }, + { + "name" : "minecraft:jungle_fence_gate", + "id" : 185 + }, + { + "name" : "minecraft:jungle_pressure_plate", + "id" : -153 + }, + { + "name" : "minecraft:jungle_sign", + "id" : 578 + }, + { + "name" : "minecraft:jungle_stairs", + "id" : 136 + }, + { + "name" : "minecraft:jungle_standing_sign", + "id" : -188 + }, + { + "name" : "minecraft:jungle_trapdoor", + "id" : -148 + }, + { + "name" : "minecraft:jungle_wall_sign", + "id" : -189 + }, + { + "name" : "minecraft:kelp", + "id" : 382 + }, + { + "name" : "minecraft:ladder", + "id" : 65 + }, + { + "name" : "minecraft:lantern", + "id" : -208 + }, + { + "name" : "minecraft:lapis_block", + "id" : 22 + }, + { + "name" : "minecraft:lapis_lazuli", + "id" : 414 + }, + { + "name" : "minecraft:lapis_ore", + "id" : 21 + }, + { + "name" : "minecraft:large_amethyst_bud", + "id" : -330 + }, + { + "name" : "minecraft:lava", + "id" : 11 + }, + { + "name" : "minecraft:lava_bucket", + "id" : 363 + }, + { + "name" : "minecraft:lava_cauldron", + "id" : -210 + }, + { + "name" : "minecraft:lead", + "id" : 547 + }, + { + "name" : "minecraft:leather", + "id" : 381 + }, + { + "name" : "minecraft:leather_boots", + "id" : 338 + }, + { + "name" : "minecraft:leather_chestplate", + "id" : 336 + }, + { + "name" : "minecraft:leather_helmet", + "id" : 335 + }, + { + "name" : "minecraft:leather_horse_armor", + "id" : 530 + }, + { + "name" : "minecraft:leather_leggings", + "id" : 337 + }, + { + "name" : "minecraft:leaves", + "id" : 18 + }, + { + "name" : "minecraft:leaves2", + "id" : 161 + }, + { + "name" : "minecraft:lectern", + "id" : -194 + }, + { + "name" : "minecraft:lever", + "id" : 69 + }, + { + "name" : "minecraft:light_block", + "id" : -215 + }, + { + "name" : "minecraft:light_blue_candle", + "id" : -416 + }, + { + "name" : "minecraft:light_blue_candle_cake", + "id" : -433 + }, + { + "name" : "minecraft:light_blue_dye", + "id" : 407 + }, + { + "name" : "minecraft:light_blue_glazed_terracotta", + "id" : 223 + }, + { + "name" : "minecraft:light_gray_candle", + "id" : -421 + }, + { + "name" : "minecraft:light_gray_candle_cake", + "id" : -438 + }, + { + "name" : "minecraft:light_gray_dye", + "id" : 402 + }, + { + "name" : "minecraft:light_weighted_pressure_plate", + "id" : 147 + }, + { + "name" : "minecraft:lightning_rod", + "id" : -312 + }, + { + "name" : "minecraft:lime_candle", + "id" : -418 + }, + { + "name" : "minecraft:lime_candle_cake", + "id" : -435 + }, + { + "name" : "minecraft:lime_dye", + "id" : 405 + }, + { + "name" : "minecraft:lime_glazed_terracotta", + "id" : 225 + }, + { + "name" : "minecraft:lingering_potion", + "id" : 562 + }, + { + "name" : "minecraft:lit_blast_furnace", + "id" : -214 + }, + { + "name" : "minecraft:lit_deepslate_redstone_ore", + "id" : -404 + }, + { + "name" : "minecraft:lit_furnace", + "id" : 62 + }, + { + "name" : "minecraft:lit_pumpkin", + "id" : 91 + }, + { + "name" : "minecraft:lit_redstone_lamp", + "id" : 124 + }, + { + "name" : "minecraft:lit_redstone_ore", + "id" : 74 + }, + { + "name" : "minecraft:lit_smoker", + "id" : -199 + }, + { + "name" : "minecraft:llama_spawn_egg", + "id" : 473 + }, + { + "name" : "minecraft:lodestone", + "id" : -222 + }, + { + "name" : "minecraft:lodestone_compass", + "id" : 602 + }, + { + "name" : "minecraft:log", + "id" : 17 + }, + { + "name" : "minecraft:log2", + "id" : 162 + }, + { + "name" : "minecraft:loom", + "id" : -204 + }, + { + "name" : "minecraft:magenta_candle", + "id" : -415 + }, + { + "name" : "minecraft:magenta_candle_cake", + "id" : -432 + }, + { + "name" : "minecraft:magenta_dye", + "id" : 408 + }, + { + "name" : "minecraft:magenta_glazed_terracotta", + "id" : 222 + }, + { + "name" : "minecraft:magma", + "id" : 213 + }, + { + "name" : "minecraft:magma_cream", + "id" : 430 + }, + { + "name" : "minecraft:magma_cube_spawn_egg", + "id" : 455 + }, + { + "name" : "minecraft:mangrove_leaves", + "id" : -472 + }, + { + "name" : "minecraft:mangrove_propagule", + "id" : -474 + }, + { + "name" : "minecraft:mangrove_propagule_hanging", + "id" : -476 + }, + { + "name" : "minecraft:medicine", + "id" : 599 + }, + { + "name" : "minecraft:medium_amethyst_bud", + "id" : -331 + }, + { + "name" : "minecraft:melon_block", + "id" : 103 + }, + { + "name" : "minecraft:melon_seeds", + "id" : 293 + }, + { + "name" : "minecraft:melon_slice", + "id" : 272 + }, + { + "name" : "minecraft:melon_stem", + "id" : 105 + }, + { + "name" : "minecraft:milk_bucket", + "id" : 361 + }, + { + "name" : "minecraft:minecart", + "id" : 370 + }, + { + "name" : "minecraft:mob_spawner", + "id" : 52 + }, + { + "name" : "minecraft:mojang_banner_pattern", + "id" : 584 + }, + { + "name" : "minecraft:monster_egg", + "id" : 97 + }, + { + "name" : "minecraft:mooshroom_spawn_egg", + "id" : 440 + }, + { + "name" : "minecraft:moss_block", + "id" : -320 + }, + { + "name" : "minecraft:moss_carpet", + "id" : -335 + }, + { + "name" : "minecraft:mossy_cobblestone", + "id" : 48 + }, + { + "name" : "minecraft:mossy_cobblestone_stairs", + "id" : -179 + }, + { + "name" : "minecraft:mossy_stone_brick_stairs", + "id" : -175 + }, + { + "name" : "minecraft:moving_block", + "id" : 250 + }, + { + "name" : "minecraft:mud", + "id" : -473 + }, + { + "name" : "minecraft:mud_brick_double_slab", + "id" : -479 + }, + { + "name" : "minecraft:mud_brick_slab", + "id" : -478 + }, + { + "name" : "minecraft:mud_brick_stairs", + "id" : -480 + }, + { + "name" : "minecraft:mud_brick_wall", + "id" : -481 + }, + { + "name" : "minecraft:mud_bricks", + "id" : -475 + }, + { + "name" : "minecraft:mule_spawn_egg", + "id" : 466 + }, + { + "name" : "minecraft:mushroom_stew", + "id" : 260 + }, + { + "name" : "minecraft:music_disc_11", + "id" : 544 + }, + { + "name" : "minecraft:music_disc_13", + "id" : 534 + }, + { + "name" : "minecraft:music_disc_blocks", + "id" : 536 + }, + { + "name" : "minecraft:music_disc_cat", + "id" : 535 + }, + { + "name" : "minecraft:music_disc_chirp", + "id" : 537 + }, + { + "name" : "minecraft:music_disc_far", + "id" : 538 + }, + { + "name" : "minecraft:music_disc_mall", + "id" : 539 + }, + { + "name" : "minecraft:music_disc_mellohi", + "id" : 540 + }, + { + "name" : "minecraft:music_disc_otherside", + "id" : 626 + }, + { + "name" : "minecraft:music_disc_pigstep", + "id" : 620 + }, + { + "name" : "minecraft:music_disc_stal", + "id" : 541 + }, + { + "name" : "minecraft:music_disc_strad", + "id" : 542 + }, + { + "name" : "minecraft:music_disc_wait", + "id" : 545 + }, + { + "name" : "minecraft:music_disc_ward", + "id" : 543 + }, + { + "name" : "minecraft:mutton", + "id" : 550 + }, + { + "name" : "minecraft:mycelium", + "id" : 110 + }, + { + "name" : "minecraft:name_tag", + "id" : 548 + }, + { + "name" : "minecraft:nautilus_shell", + "id" : 570 + }, + { + "name" : "minecraft:nether_brick", + "id" : 112 + }, + { + "name" : "minecraft:nether_brick_fence", + "id" : 113 + }, + { + "name" : "minecraft:nether_brick_stairs", + "id" : 114 + }, + { + "name" : "minecraft:nether_gold_ore", + "id" : -288 + }, + { + "name" : "minecraft:nether_sprouts", + "id" : 621 + }, + { + "name" : "minecraft:nether_star", + "id" : 518 + }, + { + "name" : "minecraft:nether_wart", + "id" : 294 + }, + { + "name" : "minecraft:nether_wart_block", + "id" : 214 + }, + { + "name" : "minecraft:netherbrick", + "id" : 523 + }, + { + "name" : "minecraft:netherite_axe", + "id" : 607 + }, + { + "name" : "minecraft:netherite_block", + "id" : -270 + }, + { + "name" : "minecraft:netherite_boots", + "id" : 612 + }, + { + "name" : "minecraft:netherite_chestplate", + "id" : 610 + }, + { + "name" : "minecraft:netherite_helmet", + "id" : 609 + }, + { + "name" : "minecraft:netherite_hoe", + "id" : 608 + }, + { + "name" : "minecraft:netherite_ingot", + "id" : 603 + }, + { + "name" : "minecraft:netherite_leggings", + "id" : 611 + }, + { + "name" : "minecraft:netherite_pickaxe", + "id" : 606 + }, + { + "name" : "minecraft:netherite_scrap", + "id" : 613 + }, + { + "name" : "minecraft:netherite_shovel", + "id" : 605 + }, + { + "name" : "minecraft:netherite_sword", + "id" : 604 + }, + { + "name" : "minecraft:netherrack", + "id" : 87 + }, + { + "name" : "minecraft:netherreactor", + "id" : 247 + }, + { + "name" : "minecraft:normal_stone_stairs", + "id" : -180 + }, + { + "name" : "minecraft:noteblock", + "id" : 25 + }, + { + "name" : "minecraft:npc_spawn_egg", + "id" : 470 + }, + { + "name" : "minecraft:oak_boat", + "id" : 375 + }, + { + "name" : "minecraft:oak_chest_boat", + "id" : 633 + }, + { + "name" : "minecraft:oak_sign", + "id" : 358 + }, + { + "name" : "minecraft:oak_stairs", + "id" : 53 + }, + { + "name" : "minecraft:observer", + "id" : 251 + }, + { + "name" : "minecraft:obsidian", + "id" : 49 + }, + { + "name" : "minecraft:ocelot_spawn_egg", + "id" : 451 + }, + { + "name" : "minecraft:ochre_froglight", + "id" : -471 + }, + { + "name" : "minecraft:orange_candle", + "id" : -414 + }, + { + "name" : "minecraft:orange_candle_cake", + "id" : -431 + }, + { + "name" : "minecraft:orange_dye", + "id" : 409 + }, + { + "name" : "minecraft:orange_glazed_terracotta", + "id" : 221 + }, + { + "name" : "minecraft:oxidized_copper", + "id" : -343 + }, + { + "name" : "minecraft:oxidized_cut_copper", + "id" : -350 + }, + { + "name" : "minecraft:oxidized_cut_copper_slab", + "id" : -364 + }, + { + "name" : "minecraft:oxidized_cut_copper_stairs", + "id" : -357 + }, + { + "name" : "minecraft:oxidized_double_cut_copper_slab", + "id" : -371 + }, + { + "name" : "minecraft:packed_ice", + "id" : 174 + }, + { + "name" : "minecraft:packed_mud", + "id" : -477 + }, + { + "name" : "minecraft:painting", + "id" : 357 + }, + { + "name" : "minecraft:panda_spawn_egg", + "id" : 489 + }, + { + "name" : "minecraft:paper", + "id" : 386 + }, + { + "name" : "minecraft:parrot_spawn_egg", + "id" : 478 + }, + { + "name" : "minecraft:pearlescent_froglight", + "id" : -469 + }, + { + "name" : "minecraft:phantom_membrane", + "id" : 574 + }, + { + "name" : "minecraft:phantom_spawn_egg", + "id" : 486 + }, + { + "name" : "minecraft:pig_spawn_egg", + "id" : 437 + }, + { + "name" : "minecraft:piglin_banner_pattern", + "id" : 587 + }, + { + "name" : "minecraft:piglin_brute_spawn_egg", + "id" : 499 + }, + { + "name" : "minecraft:piglin_spawn_egg", + "id" : 497 + }, + { + "name" : "minecraft:pillager_spawn_egg", + "id" : 491 + }, + { + "name" : "minecraft:pink_candle", + "id" : -419 + }, + { + "name" : "minecraft:pink_candle_cake", + "id" : -436 + }, + { + "name" : "minecraft:pink_dye", + "id" : 404 + }, + { + "name" : "minecraft:pink_glazed_terracotta", + "id" : 226 + }, + { + "name" : "minecraft:piston", + "id" : 33 + }, + { + "name" : "minecraft:piston_arm_collision", + "id" : 34 + }, + { + "name" : "minecraft:planks", + "id" : 5 + }, + { + "name" : "minecraft:podzol", + "id" : 243 + }, + { + "name" : "minecraft:pointed_dripstone", + "id" : -308 + }, + { + "name" : "minecraft:poisonous_potato", + "id" : 282 + }, + { + "name" : "minecraft:polar_bear_spawn_egg", + "id" : 472 + }, + { + "name" : "minecraft:polished_andesite_stairs", + "id" : -174 + }, + { + "name" : "minecraft:polished_basalt", + "id" : -235 + }, + { + "name" : "minecraft:polished_blackstone", + "id" : -291 + }, + { + "name" : "minecraft:polished_blackstone_brick_double_slab", + "id" : -285 + }, + { + "name" : "minecraft:polished_blackstone_brick_slab", + "id" : -284 + }, + { + "name" : "minecraft:polished_blackstone_brick_stairs", + "id" : -275 + }, + { + "name" : "minecraft:polished_blackstone_brick_wall", + "id" : -278 + }, + { + "name" : "minecraft:polished_blackstone_bricks", + "id" : -274 + }, + { + "name" : "minecraft:polished_blackstone_button", + "id" : -296 + }, + { + "name" : "minecraft:polished_blackstone_double_slab", + "id" : -294 + }, + { + "name" : "minecraft:polished_blackstone_pressure_plate", + "id" : -295 + }, + { + "name" : "minecraft:polished_blackstone_slab", + "id" : -293 + }, + { + "name" : "minecraft:polished_blackstone_stairs", + "id" : -292 + }, + { + "name" : "minecraft:polished_blackstone_wall", + "id" : -297 + }, + { + "name" : "minecraft:polished_deepslate", + "id" : -383 + }, + { + "name" : "minecraft:polished_deepslate_double_slab", + "id" : -397 + }, + { + "name" : "minecraft:polished_deepslate_slab", + "id" : -384 + }, + { + "name" : "minecraft:polished_deepslate_stairs", + "id" : -385 + }, + { + "name" : "minecraft:polished_deepslate_wall", + "id" : -386 + }, + { + "name" : "minecraft:polished_diorite_stairs", + "id" : -173 + }, + { + "name" : "minecraft:polished_granite_stairs", + "id" : -172 + }, + { + "name" : "minecraft:popped_chorus_fruit", + "id" : 559 + }, + { + "name" : "minecraft:porkchop", + "id" : 262 + }, + { + "name" : "minecraft:portal", + "id" : 90 + }, + { + "name" : "minecraft:potato", + "id" : 280 + }, + { + "name" : "minecraft:potatoes", + "id" : 142 + }, + { + "name" : "minecraft:potion", + "id" : 426 + }, + { + "name" : "minecraft:powder_snow", + "id" : -306 + }, + { + "name" : "minecraft:powder_snow_bucket", + "id" : 368 + }, + { + "name" : "minecraft:powered_comparator", + "id" : 150 + }, + { + "name" : "minecraft:powered_repeater", + "id" : 94 + }, + { + "name" : "minecraft:prismarine", + "id" : 168 + }, + { + "name" : "minecraft:prismarine_bricks_stairs", + "id" : -4 + }, + { + "name" : "minecraft:prismarine_crystals", + "id" : 549 + }, + { + "name" : "minecraft:prismarine_shard", + "id" : 565 + }, + { + "name" : "minecraft:prismarine_stairs", + "id" : -2 + }, + { + "name" : "minecraft:pufferfish", + "id" : 267 + }, + { + "name" : "minecraft:pufferfish_bucket", + "id" : 367 + }, + { + "name" : "minecraft:pufferfish_spawn_egg", + "id" : 481 + }, + { + "name" : "minecraft:pumpkin", + "id" : 86 + }, + { + "name" : "minecraft:pumpkin_pie", + "id" : 284 + }, + { + "name" : "minecraft:pumpkin_seeds", + "id" : 292 + }, + { + "name" : "minecraft:pumpkin_stem", + "id" : 104 + }, + { + "name" : "minecraft:purple_candle", + "id" : -423 + }, + { + "name" : "minecraft:purple_candle_cake", + "id" : -440 + }, + { + "name" : "minecraft:purple_dye", + "id" : 400 + }, + { + "name" : "minecraft:purple_glazed_terracotta", + "id" : 219 + }, + { + "name" : "minecraft:purpur_block", + "id" : 201 + }, + { + "name" : "minecraft:purpur_stairs", + "id" : 203 + }, + { + "name" : "minecraft:quartz", + "id" : 524 + }, + { + "name" : "minecraft:quartz_block", + "id" : 155 + }, + { + "name" : "minecraft:quartz_bricks", + "id" : -304 + }, + { + "name" : "minecraft:quartz_ore", + "id" : 153 + }, + { + "name" : "minecraft:quartz_stairs", + "id" : 156 + }, + { + "name" : "minecraft:rabbit", + "id" : 288 + }, + { + "name" : "minecraft:rabbit_foot", + "id" : 528 + }, + { + "name" : "minecraft:rabbit_hide", + "id" : 529 + }, + { + "name" : "minecraft:rabbit_spawn_egg", + "id" : 459 + }, + { + "name" : "minecraft:rabbit_stew", + "id" : 290 + }, + { + "name" : "minecraft:rail", + "id" : 66 + }, + { + "name" : "minecraft:rapid_fertilizer", + "id" : 597 + }, + { + "name" : "minecraft:ravager_spawn_egg", + "id" : 493 + }, + { + "name" : "minecraft:raw_copper", + "id" : 507 + }, + { + "name" : "minecraft:raw_copper_block", + "id" : -452 + }, + { + "name" : "minecraft:raw_gold", + "id" : 506 + }, + { + "name" : "minecraft:raw_gold_block", + "id" : -453 + }, + { + "name" : "minecraft:raw_iron", + "id" : 505 + }, + { + "name" : "minecraft:raw_iron_block", + "id" : -451 + }, + { + "name" : "minecraft:real_double_stone_slab", + "id" : 43 + }, + { + "name" : "minecraft:real_double_stone_slab2", + "id" : 181 + }, + { + "name" : "minecraft:real_double_stone_slab3", + "id" : -167 + }, + { + "name" : "minecraft:real_double_stone_slab4", + "id" : -168 + }, + { + "name" : "minecraft:red_candle", + "id" : -427 + }, + { + "name" : "minecraft:red_candle_cake", + "id" : -444 + }, + { + "name" : "minecraft:red_dye", + "id" : 396 + }, + { + "name" : "minecraft:red_flower", + "id" : 38 + }, + { + "name" : "minecraft:red_glazed_terracotta", + "id" : 234 + }, + { + "name" : "minecraft:red_mushroom", + "id" : 40 + }, + { + "name" : "minecraft:red_mushroom_block", + "id" : 100 + }, + { + "name" : "minecraft:red_nether_brick", + "id" : 215 + }, + { + "name" : "minecraft:red_nether_brick_stairs", + "id" : -184 + }, + { + "name" : "minecraft:red_sandstone", + "id" : 179 + }, + { + "name" : "minecraft:red_sandstone_stairs", + "id" : 180 + }, + { + "name" : "minecraft:redstone", + "id" : 373 + }, + { + "name" : "minecraft:redstone_block", + "id" : 152 + }, + { + "name" : "minecraft:redstone_lamp", + "id" : 123 + }, + { + "name" : "minecraft:redstone_ore", + "id" : 73 + }, + { + "name" : "minecraft:redstone_torch", + "id" : 76 + }, + { + "name" : "minecraft:redstone_wire", + "id" : 55 + }, + { + "name" : "minecraft:reinforced_deepslate", + "id" : -466 + }, + { + "name" : "minecraft:repeater", + "id" : 419 + }, + { + "name" : "minecraft:repeating_command_block", + "id" : 188 + }, + { + "name" : "minecraft:reserved6", + "id" : 255 + }, + { + "name" : "minecraft:respawn_anchor", + "id" : -272 + }, + { + "name" : "minecraft:rotten_flesh", + "id" : 277 + }, + { + "name" : "minecraft:saddle", + "id" : 371 + }, + { + "name" : "minecraft:salmon", + "id" : 265 + }, + { + "name" : "minecraft:salmon_bucket", + "id" : 365 + }, + { + "name" : "minecraft:salmon_spawn_egg", + "id" : 482 + }, + { + "name" : "minecraft:sand", + "id" : 12 + }, + { + "name" : "minecraft:sandstone", + "id" : 24 + }, + { + "name" : "minecraft:sandstone_stairs", + "id" : 128 + }, + { + "name" : "minecraft:sapling", + "id" : 6 + }, + { + "name" : "minecraft:scaffolding", + "id" : -165 + }, + { + "name" : "minecraft:sculk", + "id" : -458 + }, + { + "name" : "minecraft:sculk_catalyst", + "id" : -460 + }, + { + "name" : "minecraft:sculk_sensor", + "id" : -307 + }, + { + "name" : "minecraft:sculk_shrieker", + "id" : -461 + }, + { + "name" : "minecraft:sculk_vein", + "id" : -459 + }, + { + "name" : "minecraft:scute", + "id" : 572 + }, + { + "name" : "minecraft:sea_lantern", + "id" : 169 + }, + { + "name" : "minecraft:sea_pickle", + "id" : -156 + }, + { + "name" : "minecraft:seagrass", + "id" : -130 + }, + { + "name" : "minecraft:shears", + "id" : 421 + }, + { + "name" : "minecraft:sheep_spawn_egg", + "id" : 438 + }, + { + "name" : "minecraft:shield", + "id" : 355 + }, + { + "name" : "minecraft:shroomlight", + "id" : -230 + }, + { + "name" : "minecraft:shulker_box", + "id" : 218 + }, + { + "name" : "minecraft:shulker_shell", + "id" : 566 + }, + { + "name" : "minecraft:shulker_spawn_egg", + "id" : 469 + }, + { + "name" : "minecraft:silver_glazed_terracotta", + "id" : 228 + }, + { + "name" : "minecraft:silverfish_spawn_egg", + "id" : 443 + }, + { + "name" : "minecraft:skeleton_horse_spawn_egg", + "id" : 467 + }, + { + "name" : "minecraft:skeleton_spawn_egg", + "id" : 444 + }, + { + "name" : "minecraft:skull", + "id" : 516 + }, + { + "name" : "minecraft:skull_banner_pattern", + "id" : 583 + }, + { + "name" : "minecraft:slime", + "id" : 165 + }, + { + "name" : "minecraft:slime_ball", + "id" : 388 + }, + { + "name" : "minecraft:slime_spawn_egg", + "id" : 445 + }, + { + "name" : "minecraft:small_amethyst_bud", + "id" : -332 + }, + { + "name" : "minecraft:small_dripleaf_block", + "id" : -336 + }, + { + "name" : "minecraft:smithing_table", + "id" : -202 + }, + { + "name" : "minecraft:smoker", + "id" : -198 + }, + { + "name" : "minecraft:smooth_basalt", + "id" : -377 + }, + { + "name" : "minecraft:smooth_quartz_stairs", + "id" : -185 + }, + { + "name" : "minecraft:smooth_red_sandstone_stairs", + "id" : -176 + }, + { + "name" : "minecraft:smooth_sandstone_stairs", + "id" : -177 + }, + { + "name" : "minecraft:smooth_stone", + "id" : -183 + }, + { + "name" : "minecraft:snow", + "id" : 80 + }, + { + "name" : "minecraft:snow_layer", + "id" : 78 + }, + { + "name" : "minecraft:snowball", + "id" : 374 + }, + { + "name" : "minecraft:soul_campfire", + "id" : 622 + }, + { + "name" : "minecraft:soul_fire", + "id" : -237 + }, + { + "name" : "minecraft:soul_lantern", + "id" : -269 + }, + { + "name" : "minecraft:soul_sand", + "id" : 88 + }, + { + "name" : "minecraft:soul_soil", + "id" : -236 + }, + { + "name" : "minecraft:soul_torch", + "id" : -268 + }, + { + "name" : "minecraft:sparkler", + "id" : 600 + }, + { + "name" : "minecraft:spawn_egg", + "id" : 643 + }, + { + "name" : "minecraft:spider_eye", + "id" : 278 + }, + { + "name" : "minecraft:spider_spawn_egg", + "id" : 446 + }, + { + "name" : "minecraft:splash_potion", + "id" : 561 + }, + { + "name" : "minecraft:sponge", + "id" : 19 + }, + { + "name" : "minecraft:spore_blossom", + "id" : -321 + }, + { + "name" : "minecraft:spruce_boat", + "id" : 378 + }, + { + "name" : "minecraft:spruce_button", + "id" : -144 + }, + { + "name" : "minecraft:spruce_chest_boat", + "id" : 636 + }, + { + "name" : "minecraft:spruce_door", + "id" : 553 + }, + { + "name" : "minecraft:spruce_fence_gate", + "id" : 183 + }, + { + "name" : "minecraft:spruce_pressure_plate", + "id" : -154 + }, + { + "name" : "minecraft:spruce_sign", + "id" : 576 + }, + { + "name" : "minecraft:spruce_stairs", + "id" : 134 + }, + { + "name" : "minecraft:spruce_standing_sign", + "id" : -181 + }, + { + "name" : "minecraft:spruce_trapdoor", + "id" : -149 + }, + { + "name" : "minecraft:spruce_wall_sign", + "id" : -182 + }, + { + "name" : "minecraft:spyglass", + "id" : 625 + }, + { + "name" : "minecraft:squid_spawn_egg", + "id" : 450 + }, + { + "name" : "minecraft:stained_glass", + "id" : 241 + }, + { + "name" : "minecraft:stained_glass_pane", + "id" : 160 + }, + { + "name" : "minecraft:stained_hardened_clay", + "id" : 159 + }, + { + "name" : "minecraft:standing_banner", + "id" : 176 + }, + { + "name" : "minecraft:standing_sign", + "id" : 63 + }, + { + "name" : "minecraft:stick", + "id" : 320 + }, + { + "name" : "minecraft:sticky_piston", + "id" : 29 + }, + { + "name" : "minecraft:sticky_piston_arm_collision", + "id" : -217 + }, + { + "name" : "minecraft:stone", + "id" : 1 + }, + { + "name" : "minecraft:stone_axe", + "id" : 315 + }, + { + "name" : "minecraft:stone_brick_stairs", + "id" : 109 + }, + { + "name" : "minecraft:stone_button", + "id" : 77 + }, + { + "name" : "minecraft:stone_hoe", + "id" : 330 + }, + { + "name" : "minecraft:stone_pickaxe", + "id" : 314 + }, + { + "name" : "minecraft:stone_pressure_plate", + "id" : 70 + }, + { + "name" : "minecraft:stone_shovel", + "id" : 313 + }, + { + "name" : "minecraft:stone_stairs", + "id" : 67 + }, + { + "name" : "minecraft:stone_sword", + "id" : 312 + }, + { + "name" : "minecraft:stonebrick", + "id" : 98 + }, + { + "name" : "minecraft:stonecutter", + "id" : 245 + }, + { + "name" : "minecraft:stonecutter_block", + "id" : -197 + }, + { + "name" : "minecraft:stray_spawn_egg", + "id" : 462 + }, + { + "name" : "minecraft:strider_spawn_egg", + "id" : 495 + }, + { + "name" : "minecraft:string", + "id" : 326 + }, + { + "name" : "minecraft:stripped_acacia_log", + "id" : -8 + }, + { + "name" : "minecraft:stripped_birch_log", + "id" : -6 + }, + { + "name" : "minecraft:stripped_crimson_hyphae", + "id" : -300 + }, + { + "name" : "minecraft:stripped_crimson_stem", + "id" : -240 + }, + { + "name" : "minecraft:stripped_dark_oak_log", + "id" : -9 + }, + { + "name" : "minecraft:stripped_jungle_log", + "id" : -7 + }, + { + "name" : "minecraft:stripped_oak_log", + "id" : -10 + }, + { + "name" : "minecraft:stripped_spruce_log", + "id" : -5 + }, + { + "name" : "minecraft:stripped_warped_hyphae", + "id" : -301 + }, + { + "name" : "minecraft:stripped_warped_stem", + "id" : -241 + }, + { + "name" : "minecraft:structure_block", + "id" : 252 + }, + { + "name" : "minecraft:structure_void", + "id" : 217 + }, + { + "name" : "minecraft:sugar", + "id" : 416 + }, + { + "name" : "minecraft:sugar_cane", + "id" : 385 + }, + { + "name" : "minecraft:suspicious_stew", + "id" : 590 + }, + { + "name" : "minecraft:sweet_berries", + "id" : 287 + }, + { + "name" : "minecraft:sweet_berry_bush", + "id" : -207 + }, + { + "name" : "minecraft:tadpole_bucket", + "id" : 629 + }, + { + "name" : "minecraft:tadpole_spawn_egg", + "id" : 628 + }, + { + "name" : "minecraft:tallgrass", + "id" : 31 + }, + { + "name" : "minecraft:target", + "id" : -239 + }, + { + "name" : "minecraft:tinted_glass", + "id" : -334 + }, + { + "name" : "minecraft:tnt", + "id" : 46 + }, + { + "name" : "minecraft:tnt_minecart", + "id" : 525 + }, + { + "name" : "minecraft:torch", + "id" : 50 + }, + { + "name" : "minecraft:totem_of_undying", + "id" : 568 + }, + { + "name" : "minecraft:trapdoor", + "id" : 96 + }, + { + "name" : "minecraft:trapped_chest", + "id" : 146 + }, + { + "name" : "minecraft:trident", + "id" : 546 + }, + { + "name" : "minecraft:trip_wire", + "id" : 132 + }, + { + "name" : "minecraft:tripwire_hook", + "id" : 131 + }, + { + "name" : "minecraft:tropical_fish", + "id" : 266 + }, + { + "name" : "minecraft:tropical_fish_bucket", + "id" : 366 + }, + { + "name" : "minecraft:tropical_fish_spawn_egg", + "id" : 479 + }, + { + "name" : "minecraft:tuff", + "id" : -333 + }, + { + "name" : "minecraft:turtle_egg", + "id" : -159 + }, + { + "name" : "minecraft:turtle_helmet", + "id" : 573 + }, + { + "name" : "minecraft:turtle_spawn_egg", + "id" : 485 + }, + { + "name" : "minecraft:twisting_vines", + "id" : -287 + }, + { + "name" : "minecraft:underwater_torch", + "id" : 239 + }, + { + "name" : "minecraft:undyed_shulker_box", + "id" : 205 + }, + { + "name" : "minecraft:unknown", + "id" : -305 + }, + { + "name" : "minecraft:unlit_redstone_torch", + "id" : 75 + }, + { + "name" : "minecraft:unpowered_comparator", + "id" : 149 + }, + { + "name" : "minecraft:unpowered_repeater", + "id" : 93 + }, + { + "name" : "minecraft:verdant_froglight", + "id" : -470 + }, + { + "name" : "minecraft:vex_spawn_egg", + "id" : 476 + }, + { + "name" : "minecraft:villager_spawn_egg", + "id" : 449 + }, + { + "name" : "minecraft:vindicator_spawn_egg", + "id" : 474 + }, + { + "name" : "minecraft:vine", + "id" : 106 + }, + { + "name" : "minecraft:wall_banner", + "id" : 177 + }, + { + "name" : "minecraft:wall_sign", + "id" : 68 + }, + { + "name" : "minecraft:wandering_trader_spawn_egg", + "id" : 492 + }, + { + "name" : "minecraft:warden_spawn_egg", + "id" : 631 + }, + { + "name" : "minecraft:warped_button", + "id" : -261 + }, + { + "name" : "minecraft:warped_door", + "id" : 617 + }, + { + "name" : "minecraft:warped_double_slab", + "id" : -267 + }, + { + "name" : "minecraft:warped_fence", + "id" : -257 + }, + { + "name" : "minecraft:warped_fence_gate", + "id" : -259 + }, + { + "name" : "minecraft:warped_fungus", + "id" : -229 + }, + { + "name" : "minecraft:warped_fungus_on_a_stick", + "id" : 618 + }, + { + "name" : "minecraft:warped_hyphae", + "id" : -298 + }, + { + "name" : "minecraft:warped_nylium", + "id" : -233 + }, + { + "name" : "minecraft:warped_planks", + "id" : -243 + }, + { + "name" : "minecraft:warped_pressure_plate", + "id" : -263 + }, + { + "name" : "minecraft:warped_roots", + "id" : -224 + }, + { + "name" : "minecraft:warped_sign", + "id" : 615 + }, + { + "name" : "minecraft:warped_slab", + "id" : -265 + }, + { + "name" : "minecraft:warped_stairs", + "id" : -255 + }, + { + "name" : "minecraft:warped_standing_sign", + "id" : -251 + }, + { + "name" : "minecraft:warped_stem", + "id" : -226 + }, + { + "name" : "minecraft:warped_trapdoor", + "id" : -247 + }, + { + "name" : "minecraft:warped_wall_sign", + "id" : -253 + }, + { + "name" : "minecraft:warped_wart_block", + "id" : -227 + }, + { + "name" : "minecraft:water", + "id" : 9 + }, + { + "name" : "minecraft:water_bucket", + "id" : 362 + }, + { + "name" : "minecraft:waterlily", + "id" : 111 + }, + { + "name" : "minecraft:waxed_copper", + "id" : -344 + }, + { + "name" : "minecraft:waxed_cut_copper", + "id" : -351 + }, + { + "name" : "minecraft:waxed_cut_copper_slab", + "id" : -365 + }, + { + "name" : "minecraft:waxed_cut_copper_stairs", + "id" : -358 + }, + { + "name" : "minecraft:waxed_double_cut_copper_slab", + "id" : -372 + }, + { + "name" : "minecraft:waxed_exposed_copper", + "id" : -345 + }, + { + "name" : "minecraft:waxed_exposed_cut_copper", + "id" : -352 + }, + { + "name" : "minecraft:waxed_exposed_cut_copper_slab", + "id" : -366 + }, + { + "name" : "minecraft:waxed_exposed_cut_copper_stairs", + "id" : -359 + }, + { + "name" : "minecraft:waxed_exposed_double_cut_copper_slab", + "id" : -373 + }, + { + "name" : "minecraft:waxed_oxidized_copper", + "id" : -446 + }, + { + "name" : "minecraft:waxed_oxidized_cut_copper", + "id" : -447 + }, + { + "name" : "minecraft:waxed_oxidized_cut_copper_slab", + "id" : -449 + }, + { + "name" : "minecraft:waxed_oxidized_cut_copper_stairs", + "id" : -448 + }, + { + "name" : "minecraft:waxed_oxidized_double_cut_copper_slab", + "id" : -450 + }, + { + "name" : "minecraft:waxed_weathered_copper", + "id" : -346 + }, + { + "name" : "minecraft:waxed_weathered_cut_copper", + "id" : -353 + }, + { + "name" : "minecraft:waxed_weathered_cut_copper_slab", + "id" : -367 + }, + { + "name" : "minecraft:waxed_weathered_cut_copper_stairs", + "id" : -360 + }, + { + "name" : "minecraft:waxed_weathered_double_cut_copper_slab", + "id" : -374 + }, + { + "name" : "minecraft:weathered_copper", + "id" : -342 + }, + { + "name" : "minecraft:weathered_cut_copper", + "id" : -349 + }, + { + "name" : "minecraft:weathered_cut_copper_slab", + "id" : -363 + }, + { + "name" : "minecraft:weathered_cut_copper_stairs", + "id" : -356 + }, + { + "name" : "minecraft:weathered_double_cut_copper_slab", + "id" : -370 + }, + { + "name" : "minecraft:web", + "id" : 30 + }, + { + "name" : "minecraft:weeping_vines", + "id" : -231 + }, + { + "name" : "minecraft:wheat", + "id" : 334 + }, + { + "name" : "minecraft:wheat_seeds", + "id" : 291 + }, + { + "name" : "minecraft:white_candle", + "id" : -413 + }, + { + "name" : "minecraft:white_candle_cake", + "id" : -430 + }, + { + "name" : "minecraft:white_dye", + "id" : 410 + }, + { + "name" : "minecraft:white_glazed_terracotta", + "id" : 220 + }, + { + "name" : "minecraft:witch_spawn_egg", + "id" : 452 + }, + { + "name" : "minecraft:wither_rose", + "id" : -216 + }, + { + "name" : "minecraft:wither_skeleton_spawn_egg", + "id" : 464 + }, + { + "name" : "minecraft:wolf_spawn_egg", + "id" : 439 + }, + { + "name" : "minecraft:wood", + "id" : -212 + }, + { + "name" : "minecraft:wooden_axe", + "id" : 311 + }, + { + "name" : "minecraft:wooden_button", + "id" : 143 + }, + { + "name" : "minecraft:wooden_door", + "id" : 359 + }, + { + "name" : "minecraft:wooden_hoe", + "id" : 329 + }, + { + "name" : "minecraft:wooden_pickaxe", + "id" : 310 + }, + { + "name" : "minecraft:wooden_pressure_plate", + "id" : 72 + }, + { + "name" : "minecraft:wooden_shovel", + "id" : 309 + }, + { + "name" : "minecraft:wooden_slab", + "id" : 158 + }, + { + "name" : "minecraft:wooden_sword", + "id" : 308 + }, + { + "name" : "minecraft:wool", + "id" : 35 + }, + { + "name" : "minecraft:writable_book", + "id" : 510 + }, + { + "name" : "minecraft:written_book", + "id" : 511 + }, + { + "name" : "minecraft:yellow_candle", + "id" : -417 + }, + { + "name" : "minecraft:yellow_candle_cake", + "id" : -434 + }, + { + "name" : "minecraft:yellow_dye", + "id" : 406 + }, + { + "name" : "minecraft:yellow_flower", + "id" : 37 + }, + { + "name" : "minecraft:yellow_glazed_terracotta", + "id" : 224 + }, + { + "name" : "minecraft:zoglin_spawn_egg", + "id" : 498 + }, + { + "name" : "minecraft:zombie_horse_spawn_egg", + "id" : 468 + }, + { + "name" : "minecraft:zombie_pigman_spawn_egg", + "id" : 448 + }, + { + "name" : "minecraft:zombie_spawn_egg", + "id" : 447 + }, + { + "name" : "minecraft:zombie_villager_spawn_egg", + "id" : 477 + } +] \ No newline at end of file diff --git a/src/site/apt/LICENSE.apt.vm b/src/site/apt/LICENSE.apt.vm new file mode 100644 index 00000000000..f77ea7855df --- /dev/null +++ b/src/site/apt/LICENSE.apt.vm @@ -0,0 +1,3 @@ + diff --git a/src/site/resources/css/site.css b/src/site/resources/css/site.css new file mode 100644 index 00000000000..2228fc6f9eb --- /dev/null +++ b/src/site/resources/css/site.css @@ -0,0 +1,22 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2020 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +a.externalLink[href^=https], a.externalLink[href^=http], a.externalLink { + background: inherit !important; + padding-right: inherit !important; +} diff --git a/src/site/resources/img/powernukkit-small.png b/src/site/resources/img/powernukkit-small.png new file mode 100644 index 00000000000..743d5eb04f9 Binary files /dev/null and b/src/site/resources/img/powernukkit-small.png differ diff --git a/src/site/resources/js/redirect.js b/src/site/resources/js/redirect.js new file mode 100644 index 00000000000..80eebaafa86 --- /dev/null +++ b/src/site/resources/js/redirect.js @@ -0,0 +1,19 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2020 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +window.location.href='README.html'; diff --git a/src/site/site.xml b/src/site/site.xml new file mode 100644 index 00000000000..094c1b35ab7 --- /dev/null +++ b/src/site/site.xml @@ -0,0 +1,81 @@ + + + + + + + + + PowerNukkit + img/powernukkit-small.png + http://www.powernukkit.org + + + + + + + + + + + + + + + + + + + + + + + + + + + + + org.apache.maven.skins + maven-fluido-skin + 1.9 + + + + false + true + width: 90%; + + + + diff --git a/src/site/xhtml/index.xhtml b/src/site/xhtml/index.xhtml new file mode 100644 index 00000000000..330e5dc7a99 --- /dev/null +++ b/src/site/xhtml/index.xhtml @@ -0,0 +1,30 @@ + + + + + + + PowerNukkit + + + + + diff --git a/src/test/java/cn/nukkit/PlayerTest.java b/src/test/java/cn/nukkit/PlayerTest.java index 64b58ff61ef..2333993a890 100644 --- a/src/test/java/cn/nukkit/PlayerTest.java +++ b/src/test/java/cn/nukkit/PlayerTest.java @@ -1,23 +1,32 @@ package cn.nukkit; import cn.nukkit.block.BlockID; +import cn.nukkit.command.SimpleCommandMap; +import cn.nukkit.entity.Entity; import cn.nukkit.entity.data.Skin; +import cn.nukkit.entity.item.EntityBoat; +import cn.nukkit.entity.passive.EntityPig; import cn.nukkit.event.entity.EntityDamageEvent; +import cn.nukkit.event.server.DataPacketReceiveEvent; +import cn.nukkit.event.server.DataPacketSendEvent; +import cn.nukkit.event.vehicle.VehicleMoveEvent; import cn.nukkit.inventory.PlayerInventory; import cn.nukkit.item.Item; import cn.nukkit.item.ItemID; import cn.nukkit.level.Level; import cn.nukkit.level.Position; import cn.nukkit.nbt.tag.CompoundTag; +import cn.nukkit.network.Network; import cn.nukkit.network.SourceInterface; -import cn.nukkit.network.protocol.InventoryTransactionPacket; -import cn.nukkit.network.protocol.LoginPacket; -import cn.nukkit.network.protocol.ProtocolInfo; +import cn.nukkit.network.protocol.*; import cn.nukkit.network.protocol.types.NetworkInventoryAction; +import cn.nukkit.plugin.PluginManager; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.Mock; +import org.mockito.internal.verification.Times; +import org.powernukkit.tests.api.MockEntity; import org.powernukkit.tests.api.MockLevel; import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; @@ -27,9 +36,8 @@ import java.util.List; import java.util.UUID; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertTrue; -import static org.mockito.Mockito.doReturn; +import static org.junit.jupiter.api.Assertions.*; +import static org.mockito.Mockito.*; @ExtendWith(PowerNukkitExtension.class) class PlayerTest { @@ -43,10 +51,201 @@ class PlayerTest { @Mock SourceInterface sourceInterface; + @MockEntity + EntityPig pig; + + @MockEntity + EntityBoat boat; + Skin skin; Player player; - + + private MoveEntityAbsolutePacket buildMoveEntityAbsolutePacket(long eid) { + MoveEntityAbsolutePacket packet = new MoveEntityAbsolutePacket(); + packet.eid = eid; + packet.x = player.getX() - 1; + packet.y = player.getY() - 1; + packet.z = player.getZ() - 1; + packet.yaw = 2.0; + packet.headYaw = 2.0; + packet.pitch = 2.0; + packet.encode(); + return packet; + } + + @Test + void moveEntityAbsolutePacketRidingBoat() { + boat.mountEntity(player); + assertSame(boat, player.getRiding()); + when(player.getServer().getPluginManager()).thenReturn(mock(PluginManager.class)); + player.handleDataPacket(buildMoveEntityAbsolutePacket(boat.getId())); + verify(player.getServer().getPluginManager(), new Times(1)).callEvent(any(DataPacketReceiveEvent.class)); + verify(player.getServer().getPluginManager(), new Times(1)).callEvent(any(VehicleMoveEvent.class)); + } + + @Test + void moveEntityAbsolutePacketRidingPig() { + pig.mountEntity(player); + assertSame(pig, player.getRiding()); + when(player.getServer().getPluginManager()).thenReturn(mock(PluginManager.class)); + player.handleDataPacket(buildMoveEntityAbsolutePacket(pig.getId())); + verify(player.getServer().getPluginManager(), new Times(0)).callEvent(any(VehicleMoveEvent.class)); + } + + @Test + void moveEntityAbsolutePacketNotRiding() { + assertNull(player.getRiding()); + when(player.getServer().getPluginManager()).thenReturn(mock(PluginManager.class)); + player.handleDataPacket(buildMoveEntityAbsolutePacket(player.getId())); + verify(player.getServer().getPluginManager(), new Times(0)).callEvent(any(VehicleMoveEvent.class)); + } + + @Test + void moveEntityAbsolutePacketNotSpawned() { + assertTrue(player.isAlive()); + player.spawned = false; + when(player.getServer().getPluginManager()).thenReturn(mock(PluginManager.class)); + player.handleDataPacket(buildMoveEntityAbsolutePacket(player.getId())); + verify(player.getServer().getPluginManager(), new Times(0)).callEvent(any(VehicleMoveEvent.class)); + } + + @Test + void moveEntityAbsolutePacketNotAlive() { + player.setHealth(0); + when(player.getServer().getPluginManager()).thenReturn(mock(PluginManager.class)); + player.handleDataPacket(buildMoveEntityAbsolutePacket(player.getId())); + verify(player.getServer().getPluginManager(), new Times(0)).callEvent(any(VehicleMoveEvent.class)); + } + + @Test + void emotePacketNotSpawned() { + EmotePacket packet = new EmotePacket(); + packet.runtimeId = player.getId(); + packet.emoteID = "emote"; + packet.encode(); + when(player.getServer().getPluginManager()).thenReturn(mock(PluginManager.class)); + player.spawned = false; + player.getViewers().put(1, player); + player.handleDataPacket(packet); + verify(player.getServer().getPluginManager(), new Times(0)).callEvent(any(DataPacketSendEvent.class)); + } + + @Test + void emotePacketBadId() { + EmotePacket packet = new EmotePacket(); + packet.runtimeId = player.getId() + 1; + packet.emoteID = "emote"; + packet.encode(); + when(player.getServer().getPluginManager()).thenReturn(mock(PluginManager.class)); + player.getViewers().put(1, player); + player.handleDataPacket(packet); + verify(player.getServer().getPluginManager(), new Times(0)).callEvent(any(DataPacketSendEvent.class)); + } + + @Test + void emotePacketOk() { + EmotePacket packet = new EmotePacket(); + packet.runtimeId = player.getId(); + packet.emoteID = "emote"; + packet.encode(); + when(player.getServer().getPluginManager()).thenReturn(mock(PluginManager.class)); + player.getViewers().put(1, player); + player.handleDataPacket(packet); + verify(player.getServer().getPluginManager(), new Times(1)).callEvent(any(DataPacketSendEvent.class)); + } + + @Test + void sendCommandDataNotSpawned() { + player.spawned = false; + SimpleCommandMap filled = new SimpleCommandMap(player.getServer()); + when(player.getServer().getCommandMap()).thenReturn(filled); + assertFalse(filled.getCommands().isEmpty()); + when(player.getServer().getPluginManager()).thenReturn(mock(PluginManager.class)); + player.setOp(true); + when(player.getServer().isOp(eq(player.getName()))).thenReturn(true); + assertTrue(player.isOp()); + player.sendCommandData(); + verify(player.getServer().getPluginManager(), new Times(0)).callEvent(any(DataPacketSendEvent.class)); + } + + @Test + void sendCommandDataZeroCommands() { + player.spawned = true; + player.connected = true; + SimpleCommandMap zero = new SimpleCommandMap(player.getServer()); + zero.getCommands().clear(); + when(player.getServer().getCommandMap()).thenReturn(zero); + assertTrue(zero.getCommands().isEmpty()); + PluginManager previous = player.getServer().getPluginManager(); + player.setOp(true); + when(player.getServer().isOp(eq(player.getName()))).thenReturn(true); + assertTrue(player.isOp()); + try { + when(player.getServer().getPluginManager()).thenReturn(mock(PluginManager.class)); + player.sendCommandData(); + verify(player.getServer().getPluginManager(), new Times(0)).callEvent(any(DataPacketSendEvent.class)); + } finally { + lenient().when(player.getServer().getPluginManager()).thenReturn(previous); + } + } + + @Test + void sendCommandDataSpawned() { + player.spawned = true; + player.connected = true; + SimpleCommandMap filled = new SimpleCommandMap(player.getServer()); + when(player.getServer().getCommandMap()).thenReturn(filled); + assertFalse(filled.getCommands().isEmpty()); + PluginManager previous = player.getServer().getPluginManager(); + player.setOp(true); + when(player.getServer().isOp(eq(player.getName()))).thenReturn(true); + assertTrue(player.isOp()); + try { + when(player.getServer().getPluginManager()).thenReturn(mock(PluginManager.class)); + player.sendCommandData(); + verify(player.getServer().getPluginManager(), new Times(1)).callEvent(any(DataPacketSendEvent.class)); + } finally { + lenient().when(player.getServer().getPluginManager()).thenReturn(previous); + } + } + + @Test + void setButtonText() { + player.setButtonText("button.text"); + assertEquals("button.text", player.getDataPropertyString(Entity.DATA_INTERACTIVE_TAG)); + assertEquals("button.text", player.getButtonText()); + } + + @Test + void tooManyFailedLoginAttempts() { + PluginManager pluginManager = mock(PluginManager.class); + when(player.getServer().getPluginManager()).thenReturn(pluginManager); + Player player = new Player(sourceInterface, clientId, clientIp, clientPort); + + FilterTextPacket packet = new FilterTextPacket(); + packet.text = "asd"; + packet.fromServer = false; + + Network network = new Network(Server.getInstance()); + when(Server.getInstance().getNetwork()).thenReturn(network); + + player.handleDataPacket(packet); + verify(pluginManager, times(0)).callEvent(any()); + + packet.encode(); + player.handleDataPacket(packet.compress(2)); + verify(pluginManager, times(1)).callEvent(any()); + + for (int i = 2; i <= 100; i++) { + player.handleDataPacket(packet); + assertFalse(player.closed); + } + + player.handleDataPacket(packet); + assertTrue(player.closed); + } + @Test void armorDamage() { player.attack(new EntityDamageEvent(player, EntityDamageEvent.DamageCause.FALL, 1)); diff --git a/src/test/java/cn/nukkit/block/BlockBellTest.java b/src/test/java/cn/nukkit/block/BlockBellTest.java new file mode 100644 index 00000000000..68b83137a13 --- /dev/null +++ b/src/test/java/cn/nukkit/block/BlockBellTest.java @@ -0,0 +1,51 @@ +package cn.nukkit.block; + +import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.blockentity.BlockEntityBell; +import cn.nukkit.item.Item; +import cn.nukkit.level.Level; +import cn.nukkit.math.BlockFace; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.api.MockPlayer; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertTrue; + +/** + * @author joserobjr + * @since 2021-12-20 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class BlockBellTest { + @MockLevel + Level level; + + @MockPlayer + Player player; + + @Test + void testPlacement() { + BlockBell bell = new BlockBell(); + bell.level = level; + bell.x = 0; + bell.y = 101; + bell.z = 0; + Block grass = Block.get(BlockID.GRASS); + Block tallGrass = Block.get(BlockID.TALL_GRASS); + level.setBlock(0, 100, 0, grass, true, false); + level.setBlock(0, 101, 0, tallGrass, true, false); + + assertTrue(bell.place(Item.getBlock(BlockID.BELL), tallGrass, tallGrass, BlockFace.NORTH, 0, 0, 0, player)); + BlockEntityBell entityBell = bell.getBlockEntity(); + assertNotNull(entityBell); + assertTrue(entityBell.isBlockEntityValid()); + assertNotNull(entityBell.spawnExceptions); + } +} diff --git a/src/test/java/cn/nukkit/block/BlockDispenserTest.java b/src/test/java/cn/nukkit/block/BlockDispenserTest.java new file mode 100644 index 00000000000..f1081fd550f --- /dev/null +++ b/src/test/java/cn/nukkit/block/BlockDispenserTest.java @@ -0,0 +1,52 @@ +package cn.nukkit.block; + +import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.blockentity.BlockEntity; +import cn.nukkit.blockentity.BlockEntityDispenser; +import cn.nukkit.item.Item; +import cn.nukkit.level.Level; +import cn.nukkit.math.BlockFace; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.api.MockPlayer; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.*; + +/** + * @author joserobjr + * @since 2021-12-20 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class BlockDispenserTest { + @MockLevel + Level level; + + @MockPlayer + Player player; + + @Test + void testPlacement() { + BlockDispenser dispenser = new BlockDispenser(); + dispenser.level = level; + dispenser.x = 0; + dispenser.y = 101; + dispenser.z = 0; + Block grass = Block.get(BlockID.GRASS); + Block tallGrass = Block.get(BlockID.TALL_GRASS); + level.setBlock(0, 100, 0, grass, true, false); + level.setBlock(0, 101, 0, tallGrass, true, false); + + assertTrue(dispenser.place(Item.getBlock(BlockID.DISPENSER), tallGrass, tallGrass, BlockFace.NORTH, 0, 0, 0, player)); + BlockEntityDispenser entityDispenser = (BlockEntityDispenser) dispenser.getBlockEntity(); + assertNotNull(entityDispenser); + assertTrue(entityDispenser.isBlockEntityValid()); + assertNotNull(entityDispenser.getInventory()); + assertEquals(BlockEntity.DISPENSER, entityDispenser.getSpawnCompound().getString("id")); + } +} diff --git a/src/test/java/cn/nukkit/block/BlockDropperTest.java b/src/test/java/cn/nukkit/block/BlockDropperTest.java new file mode 100644 index 00000000000..717f9423d20 --- /dev/null +++ b/src/test/java/cn/nukkit/block/BlockDropperTest.java @@ -0,0 +1,52 @@ +package cn.nukkit.block; + +import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.blockentity.BlockEntity; +import cn.nukkit.blockentity.BlockEntityDropper; +import cn.nukkit.item.Item; +import cn.nukkit.level.Level; +import cn.nukkit.math.BlockFace; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.api.MockPlayer; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.*; + +/** + * @author joserobjr + * @since 2021-12-20 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class BlockDropperTest { + @MockLevel + Level level; + + @MockPlayer + Player player; + + @Test + void testPlacement() { + BlockDropper dropper = new BlockDropper(); + dropper.level = level; + dropper.x = 0; + dropper.y = 101; + dropper.z = 0; + Block grass = Block.get(BlockID.GRASS); + Block tallGrass = Block.get(BlockID.TALL_GRASS); + level.setBlock(0, 100, 0, grass, true, false); + level.setBlock(0, 101, 0, tallGrass, true, false); + + assertTrue(dropper.place(Item.getBlock(BlockID.DROPPER), tallGrass, tallGrass, BlockFace.NORTH, 0, 0, 0, player)); + BlockEntityDropper entityDropper = (BlockEntityDropper) dropper.getBlockEntity(); + assertNotNull(entityDropper); + assertTrue(entityDropper.isBlockEntityValid()); + assertNotNull(entityDropper.getInventory()); + assertEquals(BlockEntity.DISPENSER, entityDropper.getSpawnCompound().getString("id")); + } +} diff --git a/src/test/java/cn/nukkit/block/BlockItemFrameTest.java b/src/test/java/cn/nukkit/block/BlockItemFrameTest.java new file mode 100644 index 00000000000..2b7781e3a5c --- /dev/null +++ b/src/test/java/cn/nukkit/block/BlockItemFrameTest.java @@ -0,0 +1,78 @@ +package cn.nukkit.block; + +import cn.nukkit.Player; +import cn.nukkit.blockproperty.value.TallGrassType; +import cn.nukkit.blockstate.BlockState; +import cn.nukkit.item.Item; +import cn.nukkit.item.ItemID; +import cn.nukkit.level.Level; +import cn.nukkit.math.BlockFace; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.api.MockPlayer; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.*; + +/** + * @author joserobjr + * @since 2021-09-25 + */ +@ExtendWith(PowerNukkitExtension.class) +class BlockItemFrameTest { + @MockLevel + Level level; + + @MockPlayer + Player player; + + @Test + void testPlaceOnTallGrass() { + BlockItemFrame itemFrame = new BlockItemFrame(); + itemFrame.setLevel(level); + + Block grass = Block.get(BlockID.GRASS); + Block tallGrass = Block.get(BlockID.TALL_GRASS); + level.setBlock(0, 100, 0, grass, true, false); + level.setBlock(0, 101, 0, tallGrass, true, false); + + assertTrue(itemFrame.place(Item.get(ItemID.ITEM_FRAME), tallGrass, tallGrass, BlockFace.NORTH, 0, 0, 0, player)); + assertEquals(BlockFace.UP, itemFrame.getBlockFace()); + + + tallGrass = tallGrass.clone(); + Block tallGrassTop = BlockState.of(BlockID.TALL_GRASS).withProperty(BlockTallGrass.TALL_GRASS_TYPE, TallGrassType.TALL).getBlock(); + level.setBlock(2, 100, 0, grass.clone(), true, false); + level.setBlock(2, 101, 0, tallGrass, true, false); + level.setBlock(2, 103, 0, tallGrassTop, true, false); + assertFalse(itemFrame.place(Item.get(ItemID.ITEM_FRAME), tallGrassTop, tallGrassTop, BlockFace.NORTH, 0, 0, 0, player)); + + Block wall = Block.get(BlockID.COBBLE_WALL); + level.setBlock(2, 100, 0, wall, true, false); + assertTrue(itemFrame.place(Item.get(ItemID.ITEM_FRAME), tallGrass, tallGrass, BlockFace.NORTH, 0, 0, 0, player)); + assertTrue(itemFrame.place(Item.get(ItemID.ITEM_FRAME), wall.north(), wall, BlockFace.SOUTH, 0, 0, 0, player)); + } + + @Test + void testStoringMap() { + BlockItemFrame block = new BlockItemFrame(); + + assertFalse(block.isStoringMap()); + block.setStoringMap(true); + assertTrue(block.isStoringMap()); + block.setStoringMap(false); + assertFalse(block.isStoringMap()); + } + + @Test + void testStoringPhoto() { + BlockItemFrame block = new BlockItemFrame(); + + assertFalse(block.isStoringPhoto()); + block.setStoringPhoto(true); + assertTrue(block.isStoringPhoto()); + block.setStoringPhoto(false); + assertFalse(block.isStoringMap()); + } +} diff --git a/src/test/java/cn/nukkit/block/BlockMagmaTest.java b/src/test/java/cn/nukkit/block/BlockMagmaTest.java new file mode 100644 index 00000000000..5ce3a532ae5 --- /dev/null +++ b/src/test/java/cn/nukkit/block/BlockMagmaTest.java @@ -0,0 +1,118 @@ +package cn.nukkit.block; + +import cn.nukkit.Player; +import cn.nukkit.blockstate.BlockState; +import cn.nukkit.entity.Entity; +import cn.nukkit.event.entity.EntityDamageByBlockEvent; +import cn.nukkit.event.entity.EntityDamageEvent; +import cn.nukkit.item.Item; +import cn.nukkit.item.ItemID; +import cn.nukkit.item.enchantment.Enchantment; +import cn.nukkit.level.Level; +import cn.nukkit.potion.Effect; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.ArgumentCaptor; +import org.mockito.Captor; +import org.powernukkit.tests.api.MockEntity; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.api.MockPlayer; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import java.util.List; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.times; +import static org.mockito.Mockito.verify; + +@ExtendWith(PowerNukkitExtension.class) +class BlockMagmaTest { + + @MockLevel + Level level; + + @MockPlayer(position = {0, 2, 0}) + Player player; + + @MockEntity(position = {0, 2, 0}) + Entity entity; + + @Captor + ArgumentCaptor damageEventCaptor; + + BlockMagma magma; + + @BeforeEach + void setUp() { + magma = (BlockMagma) BlockState.of(BlockID.MAGMA).getBlock(level, 0, 1, 0); + level.setBlock(magma, magma); + } + + @Test + void onEntityCollide_Player_Normal() { + magma.onEntityCollide(player); + verify(player).attack(damageEventCaptor.capture()); + List damages = damageEventCaptor.getAllValues(); + assertEquals(1, damages.size()); + assertEquals(EntityDamageByBlockEvent.class, damages.get(0).getClass()); + EntityDamageByBlockEvent event = (EntityDamageByBlockEvent) damages.get(0); + assertEquals(1, event.getDamage()); + assertEquals(player, event.getEntity()); + assertEquals(magma, event.getDamager()); + assertEquals(EntityDamageEvent.DamageCause.HOT_FLOOR, event.getCause()); + } + + @Test + void onEntityCollide_Entity_Normal() { + magma.onEntityCollide(entity); + verify(entity).attack(damageEventCaptor.capture()); + List damages = damageEventCaptor.getAllValues(); + assertEquals(1, damages.size()); + assertEquals(EntityDamageByBlockEvent.class, damages.get(0).getClass()); + EntityDamageByBlockEvent event = (EntityDamageByBlockEvent) damages.get(0); + assertEquals(1, event.getDamage()); + assertEquals(entity, event.getEntity()); + assertEquals(magma, event.getDamager()); + assertEquals(EntityDamageEvent.DamageCause.HOT_FLOOR, event.getCause()); + } + + @Test + void onEntityCollide_Entity_FireResistanceEffect() { + entity.addEffect(Effect.getEffect(Effect.FIRE_RESISTANCE)); + magma.onEntityCollide(entity); + verify(entity, times(0)).attack(any()); + } + + @Test + void onEntityCollide_Player_FrostWalker() { + Item boots = Item.get(ItemID.GOLD_BOOTS); + boots.addEnchantment(Enchantment.getEnchantment(Enchantment.ID_FROST_WALKER)); + player.getInventory().setBoots(boots); + + magma.onEntityCollide(player); + verify(player, times(0)).attack(any()); + } + + @Test + void onEntityCollide_Player_Creative() { + player.setGamemode(Player.CREATIVE); + magma.onEntityCollide(player); + verify(player, times(0)).attack(any()); + } + + @Test + void onEntityCollide_Player_Spectator() { + player.setGamemode(Player.SPECTATOR); + magma.onEntityCollide(player); + verify(player, times(0)).attack(any()); + } + + @Test + void onEntityCollide_Player_Sneaking() { + player.setSneaking(true); + magma.onEntityCollide(player); + verify(player, times(0)).attack(any()); + } +} diff --git a/src/test/java/cn/nukkit/block/BlockTest.java b/src/test/java/cn/nukkit/block/BlockTest.java index bb3e80d78db..a221d9b1ab8 100644 --- a/src/test/java/cn/nukkit/block/BlockTest.java +++ b/src/test/java/cn/nukkit/block/BlockTest.java @@ -444,7 +444,51 @@ private MutableBlockState getDirectMutableState() { private MutableBlockState getDirectMutableState(Block b) { return (MutableBlockState) MUTABLE_STATE.get(b); } - + + @Test + void isSolid() { + assertTrue(Block.isSolid(-1)); + assertTrue(Block.isSolid(100000000)); + assertTrue(Block.isSolid(BlockID.STONE)); + assertFalse(Block.isSolid(BlockID.DOOR_BLOCK)); + } + + @Test + void diffusesSkyLight() { + assertFalse(Block.diffusesSkyLight(-1)); + assertFalse(Block.diffusesSkyLight(100000000)); + assertFalse(Block.diffusesSkyLight(BlockID.STONE)); + assertTrue(Block.diffusesSkyLight(BlockID.LEAVES)); + } + + @Test + void getHardness() { + assertEquals(Double.MAX_VALUE, Block.getHardness(-1)); + assertEquals(Double.MAX_VALUE, Block.getHardness(100000000)); + assertEquals(1.5, Block.getHardness(BlockID.STONE)); + } + + @Test + void getLightLevel() { + assertEquals(0, Block.getLightLevel(-1)); + assertEquals(0, Block.getLightLevel(100000000)); + assertEquals(14, Block.getLightLevel(BlockID.TORCH)); + } + + @Test + void getLightFilter() { + assertEquals(15, Block.getLightFilter(-1)); + assertEquals(15, Block.getLightFilter(100000000)); + assertEquals(1, Block.getLightFilter(BlockID.GLASS)); + } + + @Test + void isTransparent() { + assertFalse(Block.isTransparent(-1)); + assertFalse(Block.isTransparent(100000000)); + assertTrue(Block.isTransparent(BlockID.GLASS)); + } + public static class BlockTestBlock extends BlockMeta { public static BlockProperties PROPERTIES = new BlockProperties(FACING_DIRECTION, TOGGLE, REDSTONE_SIGNAL, HUGE); diff --git a/src/test/java/cn/nukkit/block/BlockUnknownTest.java b/src/test/java/cn/nukkit/block/BlockUnknownTest.java new file mode 100644 index 00000000000..d3c4396edc3 --- /dev/null +++ b/src/test/java/cn/nukkit/block/BlockUnknownTest.java @@ -0,0 +1,27 @@ +package cn.nukkit.block; + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.*; + +@ExtendWith(PowerNukkitExtension.class) +class BlockUnknownTest { + BlockUnknown block; + @Test + void constructor() { + block = new BlockUnknown(1, (Number) null); + assertEquals(0, block.getExactIntStorage()); + + block = new BlockUnknown(1, null); + assertEquals(0, block.getExactIntStorage()); + + block = new BlockUnknown(1, 2); + assertEquals(2, block.getExactIntStorage()); + + block = new BlockUnknown(1, 2000000000L); + assertEquals(2000000000L, block.getDataStorage()); + } +} diff --git a/src/test/java/cn/nukkit/blockentity/BlockEntityTest.java b/src/test/java/cn/nukkit/blockentity/BlockEntityTest.java new file mode 100644 index 00000000000..f2706004710 --- /dev/null +++ b/src/test/java/cn/nukkit/blockentity/BlockEntityTest.java @@ -0,0 +1,92 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2021 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package cn.nukkit.blockentity; + +import cn.nukkit.Server; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.block.Block; +import cn.nukkit.block.BlockChest; +import cn.nukkit.blockproperty.CommonBlockProperties; +import cn.nukkit.blockstate.BlockState; +import cn.nukkit.inventory.ChestInventory; +import cn.nukkit.item.Item; +import cn.nukkit.level.Level; +import cn.nukkit.math.BlockFace; +import cn.nukkit.math.Vector3; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static cn.nukkit.block.BlockID.*; +import static org.mockito.ArgumentMatchers.anyInt; +import static org.mockito.Mockito.when; + +/** + * @author joserobjr + * @since 2021-07-14 + */ +@PowerNukkitOnly +@Since("1.5.2.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class BlockEntityTest { + @MockLevel + Level level; + + /** + * https://github.com/PowerNukkit/PowerNukkit/issues/1174 + */ + @Test + void issue1174() { + Server server = level.getServer(); + when(server.isRedstoneEnabled()).thenReturn(true); + when(level.isChunkLoaded(anyInt(), anyInt())).thenReturn(true); + + Vector3 pos = new Vector3(0,64, 0); + level.setBlock(pos, Block.get(STONE)); + level.setBlock(pos.getSide(BlockFace.EAST), Block.get(STONE)); + level.setBlock(pos.getSide(BlockFace.EAST, 2), Block.get(STONE)); + level.setBlock(pos.getSide(BlockFace.EAST, 3), Block.get(STONE)); + + pos.y++; + level.setBlock(pos, Block.get(REDSTONE_WIRE)); + level.setBlock(pos.getSide(BlockFace.EAST), BlockState.of(UNPOWERED_COMPARATOR) + .withProperty(CommonBlockProperties.DIRECTION, BlockFace.EAST) + .getBlock()); + level.setBlock(pos.getSide(BlockFace.EAST, 2), Block.get(CHEST)); + level.setBlock(pos.getSide(BlockFace.EAST, 3), Block.get(CHEST)); + + BlockChest chest1 = (BlockChest) level.getBlock(pos.getSide(BlockFace.EAST, 2)); + BlockChest chest2 = (BlockChest) level.getBlock(pos.getSide(BlockFace.EAST, 3)); + + BlockEntityChest chest1Entity = chest1.getOrCreateBlockEntity(); + BlockEntityChest chest2Entity = chest2.getOrCreateBlockEntity(); + + ChestInventory chest1Inventory = chest1Entity.getRealInventory(); + int size = chest1Inventory.getSize(); + for (int i = 0; i < size; i++) { + chest1Inventory.setItem(i, Item.getBlock(STONE,0,64)); + } + + chest1Entity.pairWith(chest2Entity); + + chest2Entity.checkPairing(); + } +} diff --git a/src/test/java/cn/nukkit/blockproperty/BlockPropertyTest.java b/src/test/java/cn/nukkit/blockproperty/BlockPropertyTest.java index ecdc19411f3..67ad02d97b4 100644 --- a/src/test/java/cn/nukkit/blockproperty/BlockPropertyTest.java +++ b/src/test/java/cn/nukkit/blockproperty/BlockPropertyTest.java @@ -2,6 +2,7 @@ import cn.nukkit.blockproperty.exception.InvalidBlockPropertyMetaException; import cn.nukkit.math.BlockFace; +import lombok.var; import org.junit.jupiter.api.Test; import java.math.BigInteger; @@ -10,7 +11,15 @@ class BlockPropertyTest { BlockProperty direction = CommonBlockProperties.FACING_DIRECTION; - + + @Test + void isDefaultPersistentValue() { + var defaultValue = direction.getDefaultValue(); + var defaultMeta = direction.getMetaForValue(defaultValue); + var defaultPersistenceValue = direction.getPersistenceValueForMeta(defaultMeta); + assertTrue(direction.isDefaultPersistentValue(defaultPersistenceValue)); + } + @Test void validateMeta() { assertThrows(InvalidBlockPropertyMetaException.class, ()-> direction.validateMeta(7, 0)); diff --git a/src/test/java/cn/nukkit/blockstate/BlockStateRegistryTest.java b/src/test/java/cn/nukkit/blockstate/BlockStateRegistryTest.java new file mode 100644 index 00000000000..c2c4dd87804 --- /dev/null +++ b/src/test/java/cn/nukkit/blockstate/BlockStateRegistryTest.java @@ -0,0 +1,44 @@ +package cn.nukkit.blockstate; + +import cn.nukkit.block.BlockID; +import cn.nukkit.block.BlockWall; +import cn.nukkit.math.BlockFace; +import lombok.val; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import java.util.NoSuchElementException; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertThrows; + +@ExtendWith(PowerNukkitExtension.class) +class BlockStateRegistryTest { + @Test + void getKnownBlockStateIdByRuntimeIdAndViceVersa() { + BlockWall wall = new BlockWall(); + wall.setWallType(BlockWall.WallType.DIORITE); + wall.setWallPost(true); + wall.setConnection(BlockFace.NORTH, BlockWall.WallConnectionType.TALL); + val runtimeId = wall.getRuntimeId(); + val stateId = wall.getStateId(); + val minimalistStateId = wall.getMinimalistStateId(); + val legacyStateId = wall.getLegacyStateId(); + val unknownStateId = wall.getPersistenceName()+";unknown="+wall.getDataStorage(); + + assertEquals(stateId, BlockStateRegistry.getKnownBlockStateIdByRuntimeId(runtimeId)); + assertEquals(runtimeId, BlockStateRegistry.getKnownRuntimeIdByBlockStateId(stateId)); + assertEquals(runtimeId, BlockStateRegistry.getKnownRuntimeIdByBlockStateId(minimalistStateId)); + assertEquals(runtimeId, BlockStateRegistry.getKnownRuntimeIdByBlockStateId(legacyStateId)); + assertEquals(runtimeId, BlockStateRegistry.getKnownRuntimeIdByBlockStateId(unknownStateId)); + assertEquals(BlockID.COBBLE_WALL, BlockStateRegistry.getBlockIdByRuntimeId(runtimeId)); + } + + @Test + void getBlockIdByRuntimeId() { + assertThrows(NoSuchElementException.class, ()-> BlockStateRegistry.getBlockIdByRuntimeId(999999999)); + int runtimeId = BlockStateRegistry.getKnownRuntimeIdByBlockStateId("minecraft:sculk_shrieker;active=1"); + assertEquals(716, BlockStateRegistry.getBlockIdByRuntimeId(runtimeId)); + } +} diff --git a/src/test/java/cn/nukkit/blockstate/BlockStateTest.java b/src/test/java/cn/nukkit/blockstate/BlockStateTest.java new file mode 100644 index 00000000000..27e98adca5e --- /dev/null +++ b/src/test/java/cn/nukkit/blockstate/BlockStateTest.java @@ -0,0 +1,33 @@ +package cn.nukkit.blockstate; + +import cn.nukkit.block.BlockID; +import cn.nukkit.block.BlockStone; +import cn.nukkit.blockproperty.value.StoneType; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.*; + +@ExtendWith(PowerNukkitExtension.class) +class BlockStateTest { + @Test + void ofFullStateId() { + assertEquals( + BlockState.of(BlockID.STONE), + BlockState.of("minecraft:stone;stone_type=stone", false) + ); + assertThrows(IllegalArgumentException.class, ()-> BlockState.of("minecraft:stone", false)); + + assertEquals( + BlockState.of(BlockID.STONE).withProperty(BlockStone.STONE_TYPE, StoneType.GRANITE), + BlockState.of("minecraft:stone;unknown=1") + ); + + assertEquals( + BlockState.of(BlockID.STONE).withProperty(BlockStone.STONE_TYPE, StoneType.GRANITE), + BlockState.of("minecraft:stone;nukkit-unknown=1") + ); + } +} diff --git a/src/test/java/cn/nukkit/blockstate/IBlockStateTest.java b/src/test/java/cn/nukkit/blockstate/IBlockStateTest.java index 63267c0cb4c..6e17542d4b3 100644 --- a/src/test/java/cn/nukkit/blockstate/IBlockStateTest.java +++ b/src/test/java/cn/nukkit/blockstate/IBlockStateTest.java @@ -1,6 +1,7 @@ package cn.nukkit.blockstate; import cn.nukkit.block.*; +import cn.nukkit.blockproperty.value.WoodType; import cn.nukkit.blockstate.exception.InvalidBlockStateException; import cn.nukkit.math.BlockFace; import cn.nukkit.test.LogLevelAdjuster; @@ -35,6 +36,28 @@ static void afterAll() { logLevelAdjuster.restoreLevels(); } + @Test + void getMinimalistStateIdAndLegacyStateId() { + assertEquals("minecraft:air", BlockState.AIR.getMinimalistStateId()); + BlockWall wall = new BlockWall(); + wall.setWallType(BlockWall.WallType.DIORITE); + assertEquals("minecraft:cobblestone_wall;wall_block_type=diorite", wall.getMinimalistStateId()); + assertEquals("minecraft:cobblestone_wall;nukkit-unknown=3", wall.getLegacyStateId()); + BlockUnknown unknwon = new BlockUnknown(wall.getId(), wall.getCurrentState().getDataStorage()); + assertEquals("minecraft:cobblestone_wall;nukkit-unknown=3", unknwon.getMinimalistStateId()); + assertEquals("minecraft:cobblestone_wall;nukkit-unknown=3", unknwon.getLegacyStateId()); + } + + @Test + void githubIssue1122() { + BlockState state = BlockState.of(17, 13); + assertEquals(BlockState.of(WOOD_BARK).withProperty(WoodType.PROPERTY, WoodType.SPRUCE).getRuntimeId(), + state.getRuntimeId()); + + Block bark = state.getBlock(); + assertEquals(BlockWoodBark.class, bark.getClass()); + } + @Test void getBlock() { Block block = BlockState.of(PLANKS).getBlock(); diff --git a/src/test/java/cn/nukkit/command/CapturingCommandSenderTest.java b/src/test/java/cn/nukkit/command/CapturingCommandSenderTest.java new file mode 100644 index 00000000000..926be626ffb --- /dev/null +++ b/src/test/java/cn/nukkit/command/CapturingCommandSenderTest.java @@ -0,0 +1,44 @@ +package cn.nukkit.command; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.*; + +/** + * @author joserobjr + * @since 2021-12-20 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class CapturingCommandSenderTest { + CapturingCommandSender commandSender; + + @BeforeEach + void setUp() { + commandSender = new CapturingCommandSender(); + } + + @Test + void getterSetter() { + assertEquals("System", commandSender.getName()); + assertFalse(commandSender.isOp()); + + commandSender.setName("Test"); + assertEquals("Test", commandSender.getName()); + assertFalse(commandSender.isOp()); + + commandSender.setOp(true); + assertEquals("Test", commandSender.getName()); + assertTrue(commandSender.isOp()); + + commandSender.setOp(false); + assertEquals("Test", commandSender.getName()); + assertFalse(commandSender.isOp()); + } +} diff --git a/src/test/java/cn/nukkit/command/CommandTest.java b/src/test/java/cn/nukkit/command/CommandTest.java new file mode 100644 index 00000000000..d4d3111b12b --- /dev/null +++ b/src/test/java/cn/nukkit/command/CommandTest.java @@ -0,0 +1,14 @@ +package cn.nukkit.command; + +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertThrows; + +class CommandTest { + + @SuppressWarnings("deprecation") + @Test + void getDefaultCommandData() { + assertThrows(UnsupportedOperationException.class, Command::generateDefaultData); + } +} diff --git a/src/test/java/cn/nukkit/command/defaults/KillCommandTest.java b/src/test/java/cn/nukkit/command/defaults/KillCommandTest.java new file mode 100644 index 00000000000..be8400ad534 --- /dev/null +++ b/src/test/java/cn/nukkit/command/defaults/KillCommandTest.java @@ -0,0 +1,107 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2020 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package cn.nukkit.command.defaults; + +import cn.nukkit.Server; +import cn.nukkit.block.BlockID; +import cn.nukkit.blockstate.BlockState; +import cn.nukkit.command.CommandSender; +import cn.nukkit.entity.Entity; +import cn.nukkit.entity.mob.EntityCreeper; +import cn.nukkit.entity.passive.EntityRabbit; +import cn.nukkit.entity.passive.EntitySkeletonHorse; +import cn.nukkit.lang.TranslationContainer; +import cn.nukkit.level.Level; +import cn.nukkit.level.format.generic.BaseFullChunk; +import cn.nukkit.math.Vector3; +import cn.nukkit.nbt.tag.CompoundTag; +import cn.nukkit.utils.TextFormat; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.ArgumentCaptor; +import org.mockito.Captor; +import org.mockito.Mock; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import java.util.Arrays; +import java.util.HashSet; +import java.util.Set; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.mockito.ArgumentMatchers.anyString; +import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.when; + +/** + * @author joserobjr + * @since 2021-06-29 + */ +@ExtendWith(PowerNukkitExtension.class) +class KillCommandTest { + @MockLevel(name = "world") + Level level; + Server server; + + EntityCreeper creeper; + EntitySkeletonHorse skeleton; + EntityRabbit rabbit; + + @Mock + CommandSender sender; + + @Captor + ArgumentCaptor messageCaptor; + + KillCommand command; + + @BeforeEach + void setUp() { + server = level.getServer(); + CompoundTag defaultNBT = Entity.getDefaultNBT(new Vector3(0, 64, 0)); + level.setBlockStateAt(0, 63, 0, BlockState.of(BlockID.STONE)); + BaseFullChunk chunk = level.getChunk(0, 0); + creeper = new EntityCreeper(chunk, defaultNBT); + skeleton = new EntitySkeletonHorse(chunk, defaultNBT); + rabbit = new EntityRabbit(chunk, defaultNBT); + + creeper.setNameTag(" "); + skeleton.setNameTag(TextFormat.RED+" "); + rabbit.setNameTag(TextFormat.BOLD+""+TextFormat.RED); + command = new KillCommand("kill"); + } + + @Test + void execute() { + when(sender.getServer()).thenReturn(server); + when(sender.hasPermission(anyString())).thenReturn(true); + command.execute(sender, "kill", new String[]{"@e"}); + verify(sender).sendMessage(messageCaptor.capture()); + TranslationContainer translationContainer = messageCaptor.getValue(); + assertEquals("commands.kill.successful", translationContainer.getText()); + assertEquals(1, translationContainer.getParameters().length); + + Set entities = new HashSet<>(Arrays.asList(translationContainer.getParameter(0).split(", "))); + assertTrue(entities.contains("Creeper")); + assertTrue(entities.contains("Skeleton Horse")); + assertTrue(entities.contains("Rabbit")); + } +} diff --git a/src/test/java/cn/nukkit/entity/AttributeTest.java b/src/test/java/cn/nukkit/entity/AttributeTest.java new file mode 100644 index 00000000000..5ccb64be3cf --- /dev/null +++ b/src/test/java/cn/nukkit/entity/AttributeTest.java @@ -0,0 +1,23 @@ +package cn.nukkit.entity; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author joserobjr + * @since 2021-12-20 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class AttributeTest { + @Test + void testToString() { + assertEquals("minecraft:player.saturation{min=0.0, max=20.0, def=5.0, val=5.0}", Attribute.getAttribute(1).toString()); + } +} diff --git a/src/test/java/cn/nukkit/entity/EntityHumanTest.java b/src/test/java/cn/nukkit/entity/EntityHumanTest.java new file mode 100644 index 00000000000..9dd2eeb4a4a --- /dev/null +++ b/src/test/java/cn/nukkit/entity/EntityHumanTest.java @@ -0,0 +1,63 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2020 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package cn.nukkit.entity; + +import cn.nukkit.Player; +import cn.nukkit.block.BlockID; +import cn.nukkit.blockstate.BlockState; +import cn.nukkit.level.Level; +import cn.nukkit.math.Vector3; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.api.MockPlayer; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.*; + +/** + * @author joserobjr + * @since 2021-06-29 + */ +@ExtendWith(PowerNukkitExtension.class) +class EntityHumanTest { + @MockPlayer + Player player; + + @MockLevel + Level level; + + EntityHuman human; + + @BeforeEach + void setUp() { + level.setBlockStateAt(0, 63, 0, BlockState.of(BlockID.STONE)); + human = new EntityHuman(level.getChunk(0,0), + Entity.getDefaultNBT(new Vector3(0, 64, 0)) + .putString("NameTag", "A Random Human") + .putCompound("Skin", player.namedTag.getCompound("Skin").copy()) + ); + } + + @Test + void getOriginalName() { + assertEquals("Human", human.getOriginalName()); + } +} diff --git a/src/test/java/cn/nukkit/entity/EntityPlayerTest.java b/src/test/java/cn/nukkit/entity/EntityPlayerTest.java new file mode 100644 index 00000000000..b08ff040a57 --- /dev/null +++ b/src/test/java/cn/nukkit/entity/EntityPlayerTest.java @@ -0,0 +1,59 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2020 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package cn.nukkit.entity; + +import cn.nukkit.Player; +import cn.nukkit.block.BlockID; +import cn.nukkit.blockstate.BlockState; +import cn.nukkit.level.Level; +import cn.nukkit.network.SourceInterface; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.Mock; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author joserobjr + * @since 2021-06-29 + */ +@ExtendWith(PowerNukkitExtension.class) +class EntityPlayerTest { + @Mock + SourceInterface sourceInterface; + + @MockLevel + Level level; + + Player testedPlayer; + + @BeforeEach + void setUp() { + level.setBlockStateAt(0, 63, 0, BlockState.of(BlockID.STONE)); + testedPlayer = new Player(sourceInterface, 1L, "127.0.0.1", 19130); + } + + @Test + void getOriginalName() { + assertEquals("Player", testedPlayer.getOriginalName()); + } +} diff --git a/src/test/java/cn/nukkit/entity/EntityTest.java b/src/test/java/cn/nukkit/entity/EntityTest.java new file mode 100644 index 00000000000..ab8260094d9 --- /dev/null +++ b/src/test/java/cn/nukkit/entity/EntityTest.java @@ -0,0 +1,254 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2020 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package cn.nukkit.entity; + +import cn.nukkit.block.BlockID; +import cn.nukkit.blockstate.BlockState; +import cn.nukkit.entity.item.EntityItem; +import cn.nukkit.entity.mob.EntityBlaze; +import cn.nukkit.entity.mob.EntityZombie; +import cn.nukkit.entity.mob.EntityZombiePigman; +import cn.nukkit.entity.passive.EntityChicken; +import cn.nukkit.entity.passive.EntityPig; +import cn.nukkit.event.entity.EntityDamageByEntityEvent; +import cn.nukkit.event.entity.EntityDamageEvent; +import cn.nukkit.event.player.PlayerTeleportEvent; +import cn.nukkit.item.ItemID; +import cn.nukkit.item.enchantment.Enchantment; +import cn.nukkit.level.Level; +import cn.nukkit.level.Position; +import cn.nukkit.level.format.FullChunk; +import cn.nukkit.level.format.LevelProvider; +import cn.nukkit.math.Vector3; +import cn.nukkit.nbt.tag.CompoundTag; +import cn.nukkit.potion.Effect; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.MethodSource; +import org.mockito.Mock; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import java.util.*; +import java.util.stream.Stream; + +import static org.junit.jupiter.api.Assertions.*; +import static org.mockito.Mockito.lenient; + +/** + * @author joserobjr + * @since 2021-06-26 + */ +@ExtendWith(PowerNukkitExtension.class) +class EntityTest { + @MockLevel + Level level; + + @Mock + FullChunk chunk; + + Entity entity; + + @BeforeEach + void setUp() { + LevelProvider provider = level.getProvider(); + lenient().when(chunk.getProvider()).thenReturn(provider); + } + + @Test + void flameAttack() { + entity = createEntity(EntityPig.NETWORK_ID); + Entity attacker = createEntity(EntityZombiePigman.NETWORK_ID); + Map modifiers = new EnumMap<>(EntityDamageEvent.DamageModifier.class); + modifiers.put(EntityDamageEvent.DamageModifier.BASE, 10_000f); + Enchantment enchantment = Enchantment.getEnchantment(Enchantment.ID_FIRE_ASPECT).setLevel(2); + EntityDamageByEntityEvent event = new EntityDamageByEntityEvent(attacker, entity, EntityDamageEvent.DamageCause.CONTACT, modifiers, 0.3f, + new Enchantment[]{enchantment}); + entity.attack(event); + assertFalse(entity.isAlive()); + assertTrue(entity.isOnFire()); + Optional drop = Arrays.stream(level.getEntities()).filter(EntityItem.class::isInstance).map(EntityItem.class::cast).findFirst(); + assertTrue(drop.isPresent()); + assertEquals(ItemID.COOKED_PORKCHOP, drop.get().getItem().getId()); + } + + @Test + void checkObstruction() { + level.setBlockStateAt(1, 1, 3, BlockState.of(BlockID.GRASS)); + level.setBlockStateAt(1, 2, 3, BlockState.of(BlockID.DOOR_BLOCK)); + EntityObstructionTest entity = new EntityObstructionTest(level.getChunk(0, 0), Entity.getDefaultNBT(new Vector3(1, 2, 3))); + assertFalse(entity.checkObstruction(1, 2, 3)); + level.setBlockStateAt(1, 2, 3, BlockState.of(BlockID.STONE)); + assertTrue(entity.checkObstruction(1, 2, 3)); + } + + @Test + void teleport() { + entity = createEntity(EntityPig.NETWORK_ID); + entity.yaw = 1.0; + entity.pitch = 2.0; + entity.headYaw = 3.0; + assertTrue(entity.teleport(new Position(5, 6, 7), PlayerTeleportEvent.TeleportCause.PLUGIN)); + assertEquals(1, entity.yaw); + assertEquals(2, entity.pitch); + assertEquals(3, entity.headYaw); + assertEquals(5, entity.x); + assertEquals(6, entity.y); + assertEquals(7, entity.z); + } + + @Test + void setRotation() { + entity = createEntity(EntityChicken.NETWORK_ID); + entity.setRotation(1, 2, 3); + assertEquals(1, entity.yaw); + assertEquals(2, entity.pitch); + assertEquals(3, entity.headYaw); + } + + @Test + void setPositionAndRotation() { + entity = createEntity(EntityBlaze.NETWORK_ID); + entity.setPositionAndRotation(new Vector3(1, 2, 3), 4, 5, 6); + assertEquals(1, entity.x); + assertEquals(2, entity.y); + assertEquals(3, entity.z); + assertEquals(4, entity.yaw); + assertEquals(5, entity.pitch); + assertEquals(6, entity.headYaw); + } + + @Test + void fallSlowFalling() { + entity = createEntity(EntityZombie.NETWORK_ID); + level.setBlockStateAt(1, 2, 3, BlockState.of(BlockID.STONE)); + entity.setPosition(new Vector3(1, 3, 3)); + entity.addEffect(Effect.getEffect(Effect.SLOW_FALLING)); + float health = entity.getHealth(); + entity.fall(200); + assertEquals(health, entity.getHealth()); + + entity.removeAllEffects(); + entity.setMaxHealth(1000); + entity.setHealth(1000); + entity.fall(200); + assertEquals(803, entity.getHealth()); + + entity.removeAllEffects(); + entity.setHealth(1000); + entity.noDamageTicks = 0; + entity.entityBaseTick(10); + level.setBlockStateAt(1, 2, 3, BlockState.of(BlockID.HAY_BALE)); + entity.fall(200); + assertEquals(960.6f, entity.getHealth()); + + entity.setHealth(1000); + entity.noDamageTicks = 0; + entity.entityBaseTick(10); + level.setBlockStateAt(1, 2, 3, BlockState.of(BlockID.HONEY_BLOCK)); + entity.fall(200); + assertEquals(960.6f, entity.getHealth()); + } + + @ParameterizedTest + @MethodSource("getEntityIdStream") + void testNames(String id) { + if (id.equals("Human") && Entity.getSaveId(id).orElse(-1) == -1) { + return; + } + entity = createEntity(id); + assertNotNull(entity, ()-> "Entity " + Entity.getSaveId(id)); + assertNotNull(entity.getOriginalName(), "Static Name"); + String staticName = entity.getOriginalName(); + assertEquals(staticName, entity.getName()); + assertFalse(entity.hasCustomName(), "Should not have custom"); + assertEquals(entity.getName(), entity.getVisibleName()); + + if (entity instanceof EntityNameable) { + EntityNameable nameable = (EntityNameable) entity; + nameable.setNameTag("Customized"); + assertTrue(entity.hasCustomName(), "Should have custom"); + assertNotNull(entity.getOriginalName(), "Static name should not be null"); + assertEquals(staticName, entity.getOriginalName(), "Static name should not change"); + assertEquals("Customized", entity.getName()); + assertNotEquals(entity.getName(), entity.getOriginalName()); + + nameable.setNameTag(" "); + assertTrue(entity.hasCustomName()); + assertNotNull(entity.getOriginalName()); + assertEquals(" ", entity.getName()); + assertNotEquals(entity.getName(), entity.getOriginalName()); + assertEquals(entity.getOriginalName(), entity.getVisibleName()); + } + } + + Entity createEntity(int id) { + return createEntity(Integer.toString(id)); + } + + Entity createEntity(String id) { + return Entity.createEntity(id, chunk, Entity.getDefaultNBT(new Vector3(0, 64, 0))); + } + + static Stream getEntityIdStream() { + return Arrays.stream(Entity.getKnownEntityIds().toIntArray()) + .mapToObj(Entity::getSaveId) + .map(Objects::requireNonNull); + } + + @AfterEach + void tearDown() { + try { + if (entity != null) { + entity.close(); + } + } finally { + entity = null; + } + } + + static class EntityObstructionTest extends Entity { + @Override + public int getNetworkId() { + return EntityItem.NETWORK_ID; + } + + public EntityObstructionTest(FullChunk chunk, CompoundTag nbt) { + super(chunk, nbt); + } + + @Override + public boolean checkObstruction(double x, double y, double z) { + return super.checkObstruction(x, y, z); + } + + @Override + public float getWidth() { + return 1; + } + + @Override + public float getHeight() { + return 1; + } + } +} diff --git a/src/test/java/cn/nukkit/entity/item/EntityFallingBlockTest.java b/src/test/java/cn/nukkit/entity/item/EntityFallingBlockTest.java new file mode 100644 index 00000000000..ee21909e9da --- /dev/null +++ b/src/test/java/cn/nukkit/entity/item/EntityFallingBlockTest.java @@ -0,0 +1,129 @@ +package cn.nukkit.entity.item; + +import cn.nukkit.Server; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.block.BlockFallable; +import cn.nukkit.block.BlockID; +import cn.nukkit.blockstate.BlockState; +import cn.nukkit.entity.Entity; +import cn.nukkit.entity.passive.EntityPig; +import cn.nukkit.event.entity.EntityDamageByBlockEvent; +import cn.nukkit.level.Level; +import cn.nukkit.math.AxisAlignedBB; +import cn.nukkit.math.SimpleAxisAlignedBB; +import cn.nukkit.math.Vector3; +import cn.nukkit.nbt.tag.CompoundTag; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.*; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.*; + +/** + * @author joserobjr + * @since 2021-12-20 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class EntityFallingBlockTest { + @MockLevel + Level level; + + EntityFallingBlock fallingBlock; + + @BeforeEach + void setUp() { + level.setBlockStateAt(0, 63, 0, BlockState.of(BlockID.STONE)); + fallingBlock = new TestBlock(BlockID.SAND, 0, 100, 0, level).createFallingEntity(new CompoundTag()); + } + + @Test + void resetFallDistance() { + fallingBlock.highestPosition = 255; + fallingBlock.resetFallDistance(); + assertEquals(100, fallingBlock.highestPosition); + + fallingBlock.highestPosition = 255; + fallingBlock.close(); + fallingBlock.resetFallDistance(); + assertEquals(255, fallingBlock.highestPosition); + } + + @Test + void canCollideWith() { + Entity entity = mock(Entity.class); + assertFalse(fallingBlock.canCollide()); + assertFalse(fallingBlock.canCollideWith(entity)); + + fallingBlock.blockId = BlockID.ANVIL; + assertTrue(fallingBlock.canCollide()); + assertTrue(fallingBlock.canCollideWith(entity)); + } + + @Test + void sandFall() { + Entity pig = Entity.createEntity(EntityPig.NETWORK_ID, level.getChunk(0, 0), Entity.getDefaultNBT(new Vector3(0, 64, 0))); + assertNotNull(pig); + fallingBlock.highestPosition = 255; + fallingBlock.lastY = 255; + fallingBlock.setPosition(new Vector3(0, 65, 0)); + fallingBlock.setMotion(new Vector3(0, -1, 0)); + lenient().doReturn(new Entity[]{pig}).when(level).getCollidingEntities(any(), same(fallingBlock)); + doReturn(new AxisAlignedBB[]{new SimpleAxisAlignedBB(0, 63, 0, 1, 64, 1)}) + .when(fallingBlock.getLevel()) + .getCollisionCubes(same(fallingBlock), any(), eq(false)); + fallingBlock.onUpdate(fallingBlock.lastUpdate + 1); + assertTrue(pig.isAlive()); + } + + @Test + void anvilDamage() { + Entity pig = Entity.createEntity(EntityPig.NETWORK_ID, level.getChunk(0, 0), Entity.getDefaultNBT(new Vector3(0, 64, 0))); + assertNotNull(pig); + fallingBlock.highestPosition = 255; + fallingBlock.lastY = 255; + fallingBlock.blockId = BlockID.ANVIL; + fallingBlock.setPosition(new Vector3(0, 65, 0)); + fallingBlock.setMotion(new Vector3(0, -1, 0)); + doReturn(new Entity[]{pig}).when(level).getCollidingEntities(any(), same(fallingBlock)); + doReturn(new AxisAlignedBB[]{new SimpleAxisAlignedBB(0, 63, 0, 1, 64, 1)}) + .when(fallingBlock.getLevel()) + .getCollisionCubes(same(fallingBlock), any(), eq(false)); + fallingBlock.onUpdate(fallingBlock.lastUpdate + 1); + assertFalse(pig.isAlive()); + verify(Server.getInstance().getPluginManager()).callEvent(any(EntityDamageByBlockEvent.class)); + } + + static class TestBlock extends BlockFallable { + private final int id; + public TestBlock(int id, int x, int y, int z, Level level) { + this.id = id; + this.x = x; + this.y = y; + this.z = z; + this.level = level; + } + + @Override + public String getName() { + return "Test Block"; + } + + @Override + public int getId() { + return id; + } + + @PowerNukkitOnly + @Override + public EntityFallingBlock createFallingEntity(CompoundTag customNbt) { + return super.createFallingEntity(customNbt); + } + } +} diff --git a/src/test/java/cn/nukkit/entity/item/EntityFishingHookTest.java b/src/test/java/cn/nukkit/entity/item/EntityFishingHookTest.java new file mode 100644 index 00000000000..93788f9a0c9 --- /dev/null +++ b/src/test/java/cn/nukkit/entity/item/EntityFishingHookTest.java @@ -0,0 +1,213 @@ +package cn.nukkit.entity.item; + +import cn.nukkit.Player; +import cn.nukkit.Server; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.block.BlockID; +import cn.nukkit.blockstate.BlockState; +import cn.nukkit.entity.Entity; +import cn.nukkit.entity.passive.EntityPig; +import cn.nukkit.event.entity.ProjectileHitEvent; +import cn.nukkit.item.Item; +import cn.nukkit.item.ItemID; +import cn.nukkit.item.enchantment.Enchantment; +import cn.nukkit.level.Level; +import cn.nukkit.level.format.FullChunk; +import cn.nukkit.level.particle.BubbleParticle; +import cn.nukkit.level.particle.WaterParticle; +import cn.nukkit.math.Vector3; +import cn.nukkit.nbt.tag.CompoundTag; +import cn.nukkit.network.protocol.AddEntityPacket; +import cn.nukkit.plugin.PluginManager; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockEntity; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.api.MockPlayer; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.*; +import static org.mockito.Mockito.*; + +/** + * @author joserobjr + * @since 2021-12-13 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class EntityFishingHookTest { + @MockLevel + Level level; + + @MockEntity + EntityPig pig; + + @MockPlayer + Player player; + + EntityFishingHook fishingHook; + + @BeforeEach + void setUp() { + level.setBlock(0, 63, 0, BlockState.of(BlockID.STILL_WATER).getBlock(), true, false); + fishingHook = new EntityFishingHook(level.getChunk(0, 0), Entity.getDefaultNBT(new Vector3(0, 64, 0))); + } + + @Test + void onUpdateCollidedInWater() { + fishingHook = new CollidedFishingHook(level.getChunk(0, 0), Entity.getDefaultNBT(new Vector3(0, 64, 0)), true); + int attempts = 0; + while (true) { + if (attempts++ == 1_000) { + fail(); + } + if (fishingHook.attracted) { + if (fishingHook.caughtTimer == 1 && fishingHook.caught) { + fishingHook.onUpdate(fishingHook.lastUpdate + 1); + assertFalse(fishingHook.attracted); + assertFalse(fishingHook.caught); + break; + } + } + fishingHook.onUpdate(fishingHook.lastUpdate + 1); + } + } + + @Test + void onUpdateCollidedNotInWater() { + fishingHook = new CollidedFishingHook(level.getChunk(0, 0), Entity.getDefaultNBT(new Vector3(0, 64, 0)), false); + fishingHook.onUpdate(fishingHook.lastUpdate + 1); + final PluginManager pluginManager = Server.getInstance().getPluginManager(); + verify(pluginManager, atLeastOnce()).callEvent(any(ProjectileHitEvent.class)); + } + + @Test + void overAgedFishingHook() { + fishingHook = new EntityFishingHook(level.getChunk(0, 0), Entity.getDefaultNBT(new Vector3(0, 64, 0)) + .putShort("Age", 1)); + assertTrue(fishingHook.closed); + } + + @Test + void canCollide() { + fishingHook.canCollide = false; + assertFalse(fishingHook.canCollide()); + + fishingHook.canCollide = true; + assertTrue(fishingHook.canCollide()); + } + + @Test + void setTarget() { + fishingHook.setTarget(1); + assertEquals(1L, fishingHook.getDataPropertyLong(Entity.DATA_TARGET_EID)); + assertFalse(fishingHook.canCollide); + fishingHook.setTarget(0); + assertEquals(0L, fishingHook.getDataPropertyLong(Entity.DATA_TARGET_EID)); + assertTrue(fishingHook.canCollide); + } + + @Test + void spawnPacket() { + player.usedChunks.put(Level.chunkHash(0, 0), true); + fishingHook.spawnTo(player); + verify(player).dataPacket(any(AddEntityPacket.class)); + } + + @Test + void spawnFish() { + assertNull(fishingHook.fish); + fishingHook.spawnFish(); + assertNotNull(fishingHook.fish); + } + + @Test + void attractFish() { + fishingHook.level = mock(Level.class); + fishingHook.fish = new Vector3(100, fishingHook.y, 100); + int attempts = 0; + do { + if (attempts++ == 1000) { + fail(); + } + } while (!fishingHook.attractFish()); + + verify(fishingHook.level, atLeastOnce()).addParticle(any(WaterParticle.class)); + } + + @Test + void checkLureNoRod() { + assertEquals(120, fishingHook.waitChance); + fishingHook.checkLure(); + assertEquals(120, fishingHook.waitChance); + } + + @Test + void checkLureNoLure() { + fishingHook.rod = Item.get(ItemID.FISHING_ROD); + assertEquals(120, fishingHook.waitChance); + fishingHook.checkLure(); + assertEquals(120, fishingHook.waitChance); + } + + @Test + void checkLureLv1() { + fishingHook.rod = Item.get(ItemID.FISHING_ROD); + fishingHook.rod.addEnchantment(Enchantment.getEnchantment(Enchantment.ID_LURE)); + assertEquals(120, fishingHook.waitChance); + fishingHook.checkLure(); + assertEquals(120 - 25, fishingHook.waitChance); + } + + @Test + void checkLureLv2() { + fishingHook.rod = Item.get(ItemID.FISHING_ROD); + fishingHook.rod.addEnchantment(Enchantment.getEnchantment(Enchantment.ID_LURE).setLevel(2)); + assertEquals(120, fishingHook.waitChance); + fishingHook.checkLure(); + assertEquals(120 - 50, fishingHook.waitChance); + } + + @Test + void onCollideWithEntity() { + assertNotEquals(0, pig.getId()); + fishingHook.onCollideWithEntity(pig); + assertEquals(pig.getId(), fishingHook.getDataPropertyLong(Entity.DATA_TARGET_EID)); + } + + @Test + void fishBites() { + fishingHook.level = mock(Level.class); + fishingHook.fishBites(); + verify(fishingHook.level, times(5)).addParticle(any(BubbleParticle.class)); + } + + static class CollidedFishingHook extends EntityFishingHook { + final boolean inWater; + public CollidedFishingHook(FullChunk chunk, CompoundTag nbt, boolean inWater) { + super(chunk, nbt); + this.inWater = inWater; + } + + @Override + public boolean move(double dx, double dy, double dz) { + hadCollision = false; + isCollided = true; + isCollidedVertically = true; + return true; + } + + @Override + public boolean entityBaseTick() { + return false; + } + + @Override + public boolean isInsideOfWater() { + return inWater; + } + } +} diff --git a/src/test/java/cn/nukkit/entity/item/EntityItemTest.java b/src/test/java/cn/nukkit/entity/item/EntityItemTest.java new file mode 100644 index 00000000000..6872e9885ad --- /dev/null +++ b/src/test/java/cn/nukkit/entity/item/EntityItemTest.java @@ -0,0 +1,76 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2020 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package cn.nukkit.entity.item; + +import cn.nukkit.block.BlockID; +import cn.nukkit.blockstate.BlockState; +import cn.nukkit.entity.Entity; +import cn.nukkit.item.Item; +import cn.nukkit.item.ItemID; +import cn.nukkit.level.Level; +import cn.nukkit.math.Vector3; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.*; + +/** + * @author joserobjr + * @since 2021-06-29 + */ +@ExtendWith(PowerNukkitExtension.class) +class EntityItemTest { + @MockLevel + Level level; + EntityItem entityItem; + + @BeforeEach + void setUp() { + level.setBlockStateAt(0, 63, 0, BlockState.of(BlockID.STONE)); + entityItem = new EntityItem(level.getChunk(0, 0), Entity.getDefaultNBT(new Vector3(0, 64, 0))); + } + + @Test + void getNameWithCustomName() { + entityItem.setNameTag(" "); + assertEquals(" ", entityItem.getName()); + } + + @Test + void getNameWithNullItem() { + entityItem.item = null; + assertEquals("Item", entityItem.getName()); + } + + @Test + void getNameWithItemWithCustomName() { + entityItem.item = Item.get(ItemID.GOLD_SWORD); + entityItem.item.setCustomName("God's Sword"); + assertEquals("1x God's Sword", entityItem.getName()); + } + + @Test + void getNameWithItem() { + entityItem.item = Item.get(ItemID.GOLD_SWORD); + assertEquals("1x Golden Sword", entityItem.getName()); + } +} diff --git a/src/test/java/cn/nukkit/entity/projectile/EntityProjectileTest.java b/src/test/java/cn/nukkit/entity/projectile/EntityProjectileTest.java new file mode 100644 index 00000000000..923d09926a3 --- /dev/null +++ b/src/test/java/cn/nukkit/entity/projectile/EntityProjectileTest.java @@ -0,0 +1,114 @@ +package cn.nukkit.entity.projectile; + +import cn.nukkit.Player; +import cn.nukkit.Server; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.block.BlockID; +import cn.nukkit.blockstate.BlockState; +import cn.nukkit.entity.Entity; +import cn.nukkit.event.entity.EntityCombustByEntityEvent; +import cn.nukkit.level.Level; +import cn.nukkit.level.format.FullChunk; +import cn.nukkit.math.Vector3; +import cn.nukkit.nbt.tag.CompoundTag; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.api.MockPlayer; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.*; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.eq; +import static org.mockito.Mockito.verify; + +/** + * @author joserobjr + * @since 2021-12-15 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class EntityProjectileTest { + @MockPlayer(position = {0, 64, 0}) + Player player; + + @MockLevel + Level level; + + TestProjectile projectile; + @BeforeEach + void setUp() { + level.setBlockStateAt(0, 63, 0, BlockState.of(BlockID.STONE)); + projectile = new TestProjectile(level.getChunk(0, 0), Entity.getDefaultNBT(new Vector3(0, 64, 0)), player); + } + + @Test + void getDamage() { + projectile.motionX = 0.5; + projectile.motionY = -0.005; + projectile.motionZ = 0.5; + double damage = projectile.getResultDamage(); + assertEquals(damage, projectile.getResultDamage(player)); + assertEquals(3, damage); + } + + @Test + void fire() { + projectile.fireTicks = 20; + projectile.onCollideWithEntity(player); + verify(Server.getInstance().getPluginManager()).callEvent(any(EntityCombustByEntityEvent.class)); + verify(player).setOnFire(eq(5)); + } + + @SuppressWarnings("deprecation") + @Test + void noAge() { + assertTrue(projectile.getHasAge()); + assertTrue(projectile.hasAge()); + + projectile.setAge(false); + projectile.namedTag.remove("Age"); + projectile.saveNBT(); + assertFalse(projectile.getHasAge()); + assertFalse(projectile.hasAge()); + assertFalse(projectile.namedTag.contains("Age")); + + projectile.setHasAge(true); + projectile.namedTag.remove("Age"); + projectile.saveNBT(); + assertTrue(projectile.getHasAge()); + assertTrue(projectile.hasAge()); + assertTrue(projectile.namedTag.contains("Age")); + + projectile.setHasAge(false); + assertFalse(projectile.getHasAge()); + assertFalse(projectile.hasAge()); + + projectile.setAge(true); + assertTrue(projectile.getHasAge()); + assertTrue(projectile.hasAge()); + } + + public static class TestProjectile extends EntityProjectile { + public TestProjectile(FullChunk chunk, CompoundTag nbt) { + super(chunk, nbt); + } + + public TestProjectile(FullChunk chunk, CompoundTag nbt, Entity shootingEntity) { + super(chunk, nbt, shootingEntity); + } + + @Override + public int getNetworkId() { + return 1; + } + + @Override + protected double getDamage() { + return 3; + } + } +} diff --git a/src/test/java/cn/nukkit/entity/projectile/EntityThrownTridentTest.java b/src/test/java/cn/nukkit/entity/projectile/EntityThrownTridentTest.java new file mode 100644 index 00000000000..4df1aca2763 --- /dev/null +++ b/src/test/java/cn/nukkit/entity/projectile/EntityThrownTridentTest.java @@ -0,0 +1,90 @@ +package cn.nukkit.entity.projectile; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.block.BlockID; +import cn.nukkit.blockstate.BlockState; +import cn.nukkit.entity.Entity; +import cn.nukkit.entity.passive.EntityPig; +import cn.nukkit.event.entity.EntityDamageEvent; +import cn.nukkit.item.Item; +import cn.nukkit.item.ItemID; +import cn.nukkit.item.enchantment.Enchantment; +import cn.nukkit.level.Level; +import cn.nukkit.math.Vector3; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockEntity; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.*; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.times; +import static org.mockito.Mockito.verify; + +/** + * @author joserobjr + * @since 2021-12-15 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class EntityThrownTridentTest { + @MockLevel + Level level; + + @MockEntity(position = {0, 64, 0}) + EntityPig pig; + + EntityThrownTrident trident; + + @BeforeEach + void setUp() { + level.setBlockStateAt(0, 64, 0, BlockState.of(BlockID.STILL_WATER)); + trident = new EntityThrownTrident(level.getChunk(0, 0), Entity.getDefaultNBT(new Vector3(0, 64, 0))); + } + + @Test + void backwardIsCreative() { + trident = new EntityThrownTrident(level.getChunk(0, 0), Entity.getDefaultNBT(new Vector3(0, 64, 0)) + .putBoolean("isCreative", true)); + assertTrue(trident.isCreative()); + + trident = new EntityThrownTrident(level.getChunk(0, 0), Entity.getDefaultNBT(new Vector3(0, 64, 0)) + .putBoolean("isCreative", false)); + assertFalse(trident.isCreative()); + + trident = new EntityThrownTrident(level.getChunk(0, 0), Entity.getDefaultNBT(new Vector3(0, 64, 0)) + .putBoolean("isCreative", true) + .putByte("pickup", EntityProjectile.PICKUP_NONE)); + assertFalse(trident.isCreative()); + } + + @Test + void pickupMode() { + trident.setPickupMode(EntityProjectile.PICKUP_CREATIVE); + assertEquals(EntityProjectile.PICKUP_CREATIVE, trident.getPickupMode()); + } + + @Test + void alreadyCollided() { + trident.alreadyCollided = true; + trident.onCollideWithEntity(pig); + verify(pig, times(0)).attack(any(EntityDamageEvent.class)); + } + + @Test + void saveLoad() { + trident.trident = Item.get(ItemID.TRIDENT); + trident.trident.addEnchantment(Enchantment.getEnchantment(Enchantment.ID_MENDING)); + Item itemTrident = trident.trident.clone(); + trident.setPickupMode(EntityProjectile.PICKUP_ANY); + trident.saveNBT(); + EntityThrownTrident other = new EntityThrownTrident(level.getChunk(0, 0), trident.namedTag.copy()); + assertEquals(EntityProjectile.PICKUP_ANY, trident.getPickupMode()); + assertEquals(itemTrident, other.trident); + assertEquals(0.05f, trident.getGravity()); + } +} diff --git a/src/test/java/cn/nukkit/event/block/AnvilDamageEventTest.java b/src/test/java/cn/nukkit/event/block/AnvilDamageEventTest.java new file mode 100644 index 00000000000..5195d9d4501 --- /dev/null +++ b/src/test/java/cn/nukkit/event/block/AnvilDamageEventTest.java @@ -0,0 +1,188 @@ +package cn.nukkit.event.block; + +import cn.nukkit.Player; +import cn.nukkit.block.Block; +import cn.nukkit.block.BlockAnvil; +import cn.nukkit.block.BlockID; +import cn.nukkit.blockproperty.value.AnvilDamage; +import cn.nukkit.blockstate.BlockState; +import cn.nukkit.inventory.transaction.CraftingTransaction; +import cn.nukkit.level.Level; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.api.MockPlayer; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import java.util.Collections; + +import static org.junit.jupiter.api.Assertions.*; + +/** + * @author joserobjr + * @since 2021-12-11 + */ +@ExtendWith(PowerNukkitExtension.class) +class AnvilDamageEventTest { + + AnvilDamageEvent event; + + @MockLevel + Level level; + + @MockPlayer + Player player; + + CraftingTransaction fakeTransaction; + + @BeforeEach + void setUp() { + fakeTransaction = new CraftingTransaction(player, Collections.emptyList()); + level.setBlockIdAt(0, 1, 0, BlockID.STONE); + level.setBlockIdAt(0, 2, 0, BlockID.ANVIL); + Block block = level.getBlock(0, 2, 0); + event = new AnvilDamageEvent( + block, + BlockState.of(BlockID.ANVIL).withProperty(BlockAnvil.DAMAGE, AnvilDamage.SLIGHTLY_DAMAGED), + player, + fakeTransaction, + AnvilDamageEvent.DamageCause.USE + ); + } + + @Test + void constructor2() { + Block block = level.getBlock(0, 2, 0); + BlockState before = block.getCurrentState(); + Block result = block.clone(); + result.setPropertyValue(BlockAnvil.DAMAGE, AnvilDamage.VERY_DAMAGED); + BlockState after = result.getCurrentState(); + event = new AnvilDamageEvent( + block, + result, + player, + fakeTransaction, + AnvilDamageEvent.DamageCause.USE + ); + assertEquals(before, event.getOldBlockState()); + assertEquals(after, event.getNewBlockState()); + } + + @SuppressWarnings("deprecation") + @Test + void constructor3() { + Block block = level.getBlock(0, 2, 0); + BlockState before = block.getCurrentState(); + Block result = block.clone(); + result.setPropertyValue(BlockAnvil.DAMAGE, AnvilDamage.VERY_DAMAGED); + BlockState after = result.getCurrentState(); + event = new AnvilDamageEvent( + block, + before.getLegacyDamage(), + after.getLegacyDamage(), + AnvilDamageEvent.DamageCause.USE, + player + ); + assertEquals(before, event.getOldBlockState()); + assertEquals(after, event.getNewBlockState()); + } + + @Test + void getHandlers() { + assertNotNull(AnvilDamageEvent.getHandlers()); + } + + @Test + void getTransaction() { + assertSame(fakeTransaction, event.getTransaction()); + } + + @Test + void getDamageCause() { + assertEquals(AnvilDamageEvent.DamageCause.USE, event.getDamageCause()); + } + + @SuppressWarnings("deprecation") + @Test + void getOldDamage() { + assertEquals(0, event.getOldDamage()); + } + + @Test + void getOldAnvilDamage() { + assertEquals(AnvilDamage.UNDAMAGED, event.getOldAnvilDamage()); + } + + @Test + void getOldBlockState() { + assertEquals(BlockState.of(BlockID.ANVIL).withProperty(BlockAnvil.DAMAGE, AnvilDamage.UNDAMAGED), event.getOldBlockState()); + } + + @Test + void getNewBlockState() { + assertEquals(BlockState.of(BlockID.ANVIL).withProperty(BlockAnvil.DAMAGE, AnvilDamage.SLIGHTLY_DAMAGED), event.getNewBlockState()); + } + + @Test + void getNewState() { + assertEquals(event.getNewBlockState().getBlock(level, 0, 2, 0), event.getNewState()); + } + + @SuppressWarnings("deprecation") + @Test + void getNewDamage() { + assertEquals(AnvilDamage.SLIGHTLY_DAMAGED.ordinal(), event.getNewDamage()); + } + + @Test + void setNewBlockState() { + BlockState anvil = BlockState.of(BlockID.ANVIL); + assertEquals(anvil.withProperty(BlockAnvil.DAMAGE, AnvilDamage.SLIGHTLY_DAMAGED), event.getNewBlockState()); + event.setNewBlockState(anvil.withProperty(BlockAnvil.DAMAGE, AnvilDamage.VERY_DAMAGED)); + assertEquals(anvil.withProperty(BlockAnvil.DAMAGE, AnvilDamage.VERY_DAMAGED), event.getNewBlockState()); + } + + @Test + void setNewDamage() { + BlockState anvil = BlockState.of(BlockID.ANVIL); + assertEquals(anvil.withProperty(BlockAnvil.DAMAGE, AnvilDamage.SLIGHTLY_DAMAGED), event.getNewBlockState()); + event.setNewDamage(AnvilDamage.VERY_DAMAGED.ordinal()); + assertEquals(anvil.withProperty(BlockAnvil.DAMAGE, AnvilDamage.VERY_DAMAGED), event.getNewBlockState()); + } + + @Test + void setNewState() { + BlockState anvil = BlockState.of(BlockID.ANVIL); + assertEquals(anvil.withProperty(BlockAnvil.DAMAGE, AnvilDamage.SLIGHTLY_DAMAGED), event.getNewBlockState()); + event.setNewState(anvil.withProperty(BlockAnvil.DAMAGE, AnvilDamage.VERY_DAMAGED).getBlock(level, 0, 2, 0)); + assertEquals(anvil.withProperty(BlockAnvil.DAMAGE, AnvilDamage.VERY_DAMAGED), event.getNewBlockState()); + } + + @Test + void getCause() { + assertEquals(AnvilDamageEvent.DamageCause.USE, event.getDamageCause()); + } + + @Test + void getPlayer() { + assertSame(player, event.getPlayer()); + } + + @SuppressWarnings("deprecation") + @Test + void nonAnvil() { + level.setBlockStateAt(1, 2, 3, BlockState.of(BlockID.STONE)); + Block block = level.getBlock(1, 2, 3); + event = new AnvilDamageEvent(block, BlockState.of(BlockID.GLASS), null, null, AnvilDamageEvent.DamageCause.FALL); + assertEquals(0, event.getOldDamage()); + assertEquals(0, event.getNewDamage()); + assertNull(event.getOldAnvilDamage()); + + event.setNewDamage(1); + assertEquals(0, event.getNewDamage()); + assertNull(event.getOldAnvilDamage()); + + assertEquals(AnvilDamageEvent.DamageCause.FALL, event.getCause()); + } +} diff --git a/src/test/java/cn/nukkit/event/block/BellRingEventTest.java b/src/test/java/cn/nukkit/event/block/BellRingEventTest.java new file mode 100644 index 00000000000..a41c78486fa --- /dev/null +++ b/src/test/java/cn/nukkit/event/block/BellRingEventTest.java @@ -0,0 +1,52 @@ +package cn.nukkit.event.block; + +import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.block.BlockBell; +import cn.nukkit.block.BlockID; +import cn.nukkit.blockproperty.value.AttachmentType; +import cn.nukkit.blockstate.BlockState; +import cn.nukkit.level.Level; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.api.MockPlayer; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertSame; + +/** + * @author joserobjr + * @since 2021-12-19 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class BellRingEventTest { + @MockLevel + Level level; + + @MockPlayer + Player player; + + BellRingEvent event; + BlockBell bell; + + @BeforeEach + void setUp() { + level.setBlockStateAt(0, 1, 0, BlockState.of(BlockID.STONE)); + level.setBlockStateAt(0, 2, 0, BlockState.of(BlockID.BELL).withProperty(BlockBell.ATTACHMENT_TYPE, AttachmentType.STANDING)); + bell = (BlockBell) level.getBlock(0, 2, 0); + } + + @Test + void construction() { + event = new BellRingEvent(bell, BellRingEvent.RingCause.HUMAN_INTERACTION, player); + assertEquals(bell, event.getBlock()); + assertSame(player, event.getEntity()); + assertEquals(BellRingEvent.RingCause.HUMAN_INTERACTION, event.getCause()); + } +} diff --git a/src/test/java/cn/nukkit/event/inventory/EnchantItemEventTest.java b/src/test/java/cn/nukkit/event/inventory/EnchantItemEventTest.java new file mode 100644 index 00000000000..d2115a70f9c --- /dev/null +++ b/src/test/java/cn/nukkit/event/inventory/EnchantItemEventTest.java @@ -0,0 +1,72 @@ +package cn.nukkit.event.inventory; + +import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.inventory.EnchantInventory; +import cn.nukkit.item.Item; +import cn.nukkit.item.ItemID; +import cn.nukkit.item.MinecraftItemID; +import cn.nukkit.item.enchantment.Enchantment; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.Mock; +import org.powernukkit.tests.api.MockPlayer; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.*; + +/** + * @author joserobjr + * @since 2021-12-19 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class EnchantItemEventTest { + @Mock + EnchantInventory inventory; + + @MockPlayer + Player player; + + EnchantItemEvent event; + + @Test + void construction() { + assertNotNull(EnchantItemEvent.getHandlers()); + + Item before = Item.get(ItemID.IRON_SWORD); + Item after = before.clone(); + after.addEnchantment(Enchantment.getEnchantment(Enchantment.ID_DAMAGE_SMITE)); + event = new EnchantItemEvent(inventory, before, after, 2, player); + + assertSame(before, event.getOldItem()); + assertSame(after, event.getNewItem()); + assertEquals(2, event.getXpCost()); + assertSame(player, event.getEnchanter()); + } + + @Test + void setters() { + Item before = Item.get(ItemID.IRON_SWORD); + Item after = before.clone(); + after.addEnchantment(Enchantment.getEnchantment(Enchantment.ID_DAMAGE_SMITE)); + event = new EnchantItemEvent(inventory, before, after, 2, null); + assertNull(event.getEnchanter()); + + before = MinecraftItemID.IRON_AXE.get(1); + after = before.clone(); + after.addEnchantment(Enchantment.getEnchantment(Enchantment.ID_DAMAGE_SMITE)); + + event.setOldItem(before); + event.setNewItem(after); + event.setXpCost(3); + event.setEnchanter(player); + + assertSame(before, event.getOldItem()); + assertSame(after, event.getNewItem()); + assertEquals(3, event.getXpCost()); + assertSame(player, event.getEnchanter()); + } +} diff --git a/src/test/java/cn/nukkit/inventory/transaction/CraftingTransactionTest.java b/src/test/java/cn/nukkit/inventory/transaction/CraftingTransactionTest.java new file mode 100644 index 00000000000..36331313d74 --- /dev/null +++ b/src/test/java/cn/nukkit/inventory/transaction/CraftingTransactionTest.java @@ -0,0 +1,64 @@ +package cn.nukkit.inventory.transaction; + +import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.block.BlockID; +import cn.nukkit.inventory.InventoryType; +import cn.nukkit.inventory.Recipe; +import cn.nukkit.inventory.RepairRecipe; +import cn.nukkit.inventory.ShapelessRecipe; +import cn.nukkit.inventory.transaction.action.InventoryAction; +import cn.nukkit.item.Item; +import cn.nukkit.item.ItemID; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockPlayer; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import static org.junit.jupiter.api.Assertions.assertNull; +import static org.junit.jupiter.api.Assertions.assertSame; + +/** + * @author joserobjr + * @since 2021-12-19 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class CraftingTransactionTest { + @MockPlayer + Player player; + + List actions; + + CraftingTransaction transaction; + + @BeforeEach + void setUp() { + actions = new ArrayList<>(); + transaction = new CraftingTransaction(player, actions); + } + + @SuppressWarnings("deprecation") + @Test + void recipe() { + Recipe recipe = new ShapelessRecipe(Item.get(ItemID.COAL), Collections.singletonList(Item.getBlock(BlockID.COAL_ORE))); + transaction.setTransactionRecipe(recipe); + assertSame(recipe, transaction.getTransactionRecipe()); + assertSame(recipe, transaction.getRecipe()); + assertSame(recipe, transaction.recipe); + + recipe = new RepairRecipe(InventoryType.GRINDSTONE, Item.get(ItemID.IRON_SWORD), Arrays.asList(Item.get(ItemID.IRON_SWORD, 33), Item.get(ItemID.IRON_SWORD, 12))); + transaction.setTransactionRecipe(recipe); + assertSame(recipe, transaction.getTransactionRecipe()); + assertNull(transaction.getRecipe()); + assertNull(transaction.recipe); + } +} diff --git a/src/test/java/cn/nukkit/inventory/transaction/EnchantTransactionTest.java b/src/test/java/cn/nukkit/inventory/transaction/EnchantTransactionTest.java new file mode 100644 index 00000000000..c01c130ac75 --- /dev/null +++ b/src/test/java/cn/nukkit/inventory/transaction/EnchantTransactionTest.java @@ -0,0 +1,47 @@ +package cn.nukkit.inventory.transaction; + +import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.item.Item; +import cn.nukkit.item.ItemID; +import cn.nukkit.item.enchantment.Enchantment; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockPlayer; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import java.util.ArrayList; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertSame; + +/** + * @author joserobjr + * @since 2021-12-19 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class EnchantTransactionTest { + @MockPlayer + Player player; + + EnchantTransaction transaction; + + @Test + void getterSetter() { + transaction = new EnchantTransaction(player, new ArrayList<>()); + Item input = Item.get(ItemID.IRON_SWORD); + transaction.setInputItem(input); + assertSame(input, transaction.getInputItem()); + + Item output = input.clone(); + output.addEnchantment(Enchantment.getEnchantment(Enchantment.ID_DAMAGE_SMITE)); + transaction.setOutputItem(output); + assertSame(output, transaction.getOutputItem()); + + transaction.setCost(2); + assertEquals(2, transaction.getCost()); + } +} diff --git a/src/test/java/cn/nukkit/inventory/transaction/action/NoOpIventoryActionTest.java b/src/test/java/cn/nukkit/inventory/transaction/action/NoOpIventoryActionTest.java new file mode 100644 index 00000000000..a72cbebd2b0 --- /dev/null +++ b/src/test/java/cn/nukkit/inventory/transaction/action/NoOpIventoryActionTest.java @@ -0,0 +1,65 @@ +package cn.nukkit.inventory.transaction.action; + +import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.item.Item; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.Mock; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.mockito.Mockito.verifyNoInteractions; + +/** + * @author joserobjr + * @since 2021-12-20 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class NoOpIventoryActionTest { + @Mock + Player player; + + @Mock + Item source; + + @Mock + Item target; + + NoOpIventoryAction action; + + @BeforeEach + void setUp() { + action = new NoOpIventoryAction(source, target) { + @Override + public boolean isValid(Player source) { + return true; + } + }; + } + + @Test + void execute() { + assertTrue(action.execute(player)); + } + + @Test + void onExecuteSuccess() { + action.onExecuteSuccess(player); + verifyNoInteractions(player); + verifyNoInteractions(source); + verifyNoInteractions(target); + } + + @Test + void onExecuteFail() { + action.onExecuteFail(player); + verifyNoInteractions(player); + verifyNoInteractions(source); + verifyNoInteractions(target); + } +} diff --git a/src/test/java/cn/nukkit/item/BasicAttributesXmlTest.java b/src/test/java/cn/nukkit/item/BasicAttributesXmlTest.java new file mode 100644 index 00000000000..f5ce6e86133 --- /dev/null +++ b/src/test/java/cn/nukkit/item/BasicAttributesXmlTest.java @@ -0,0 +1,350 @@ +package cn.nukkit.item; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.extension.ExtendWith; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.Arguments; +import org.junit.jupiter.params.provider.MethodSource; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; +import org.w3c.dom.*; +import org.xml.sax.InputSource; +import org.xml.sax.SAXException; + +import javax.xml.XMLConstants; +import javax.xml.parsers.DocumentBuilder; +import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.parsers.ParserConfigurationException; +import java.io.BufferedInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.lang.reflect.Constructor; +import java.util.*; +import java.util.stream.Stream; + +import static java.util.Spliterator.*; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.fail; + +/** + * @author joserobjr + * @since 2021-12-15 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +public class BasicAttributesXmlTest { + private static Document document; + + @ParameterizedTest + @MethodSource("createComparisonStream") + void testAttribute(Item item, Element definition) { + final String namespaceId; + try { + namespaceId = item.getNamespaceId(); + } catch (IllegalArgumentException e) { + Item.fromString(definition.getAttribute("namespaced-id")); + throw new IllegalArgumentException("item.getNamespaceId() failed for " + definition.getAttribute("namespaced-id") + " with damage " + definition.getAttribute("damage"), e); + } + final int damage = item.getDamage(); + String prefix = namespaceId + (damage != 0? ":" + damage : "") + " -> " + item.getClass().getSimpleName() + " -> "; + assertEquals(definition.getAttribute("namespaced-id"), namespaceId, ()-> prefix + "Wrong namespaced-id"); + getInt("numeric-id", definition).ifPresent(id-> assertEquals(id, item.getId(), ()-> prefix + "Wrong numeric-id")); + assertEquals(definition.getAttribute("name"), item.getName(), ()-> prefix + "Wrong name test method 1"); + final int id = item.getId(); + Item item2 = Item.get(id, damage); + assertEquals(definition.getAttribute("name"), item2.getName(), ()-> prefix + "Wrong name test method 2"); + if (id >= 0 && id < Item.list.length) { + try { + Constructor constructor = ((Class) Item.list[id]).getDeclaredConstructor(Integer.class); + item2 = (Item) constructor.newInstance(damage); + assertEquals(definition.getAttribute("name"), item2.getName(), ()-> prefix + "Wrong name test method 3"); + } catch (ReflectiveOperationException e) { + fail(prefix + "Missing constructor (Integer)", e); + } + + try { + Constructor constructor = ((Class) Item.list[id]).getDeclaredConstructor(Integer.class, Integer.TYPE); + item2 = (Item) constructor.newInstance(damage, 1); + assertEquals(definition.getAttribute("name"), item2.getName(), ()-> prefix + "Wrong name test method 4"); + } catch (ReflectiveOperationException e) { + fail(prefix + "Missing constructor (Integer, int)", e); + } + + if (damage == 0) { + try { + Constructor constructor = ((Class) Item.list[id]).getDeclaredConstructor(); + item2 = (Item) constructor.newInstance(); + assertEquals(definition.getAttribute("name"), item2.getName(), ()-> prefix + "Wrong name test method 5"); + } catch (ReflectiveOperationException e) { + fail(prefix + "Missing constructor ()", e); + } + } + } + assertEquals(getInt("stack-size", definition).orElse(64), item.getMaxStackSize(), ()-> prefix + "Wrong stack-size"); + assertEquals(getInt("durability", definition).orElse(-1), item.getMaxDurability(), ()-> prefix + "Wrong durability"); + assertEquals(getInt("fuel-time", definition), Optional.ofNullable(item.getFuelTime()).map(OptionalInt::of).orElseGet(OptionalInt::empty), ()-> prefix + "Wrong fuel-time"); + boolean tool = isTool(definition); + boolean armor = isArmor(definition); + assertEquals(tool, item.isTool(), ()-> prefix + "Wrong isTool()"); + assertEquals(armor, item.isArmor(), ()-> prefix + "Wrong isArmor()"); + assertEquals(getTier(definition, tool, armor), item.getTier(), ()-> prefix + "Wrong tier"); + assertEquals(isTrue("axe", definition), item.isAxe(), ()-> prefix + "Wrong isAxe()"); + assertEquals(isTrue("pickaxe", definition), item.isPickaxe(), ()-> prefix + "Wrong isPickaxe()"); + assertEquals(isTrue("shovel", definition), item.isShovel(), ()-> prefix + "Wrong isShovel()"); + assertEquals(isTrue("hoe", definition), item.isHoe(), ()-> prefix + "Wrong isHoe()"); + assertEquals(isTrue("sword", definition), item.isSword(), ()-> prefix + "Wrong isSword()"); + assertEquals(isTrue("shears", definition), item.isShears(), ()-> prefix + "Wrong isShears()"); + assertEquals(isTrue("helmet", definition), item.isHelmet(), ()-> prefix + "Wrong isHelmet()"); + assertEquals(isTrue("chestplate", definition), item.isChestplate(), ()-> prefix + "Wrong isChestplate()"); + assertEquals(isTrue("leggings", definition), item.isLeggings(), ()-> prefix + "Wrong isLeggings()"); + assertEquals(isTrue("boots", definition), item.isBoots(), ()-> prefix + "Wrong isBoots()"); + } + + static int getTier(Element definition, boolean tool, boolean armor) { + if (tool) { + switch (definition.getAttribute("tier")) { + case "wood": + return ItemTool.TIER_WOODEN; + case "gold": + return ItemTool.TIER_GOLD; + case "stone": + return ItemTool.TIER_STONE; + case "iron": + return ItemTool.TIER_IRON; + case "diamond": + return ItemTool.TIER_DIAMOND; + case "netherite": + return ItemTool.TIER_NETHERITE; + case "none": + return 0; + } + } + if (armor) { + switch (definition.getAttribute("tier")) { + case "leather": + return ItemArmor.TIER_LEATHER; + case "chain": + return ItemArmor.TIER_CHAIN; + case "other": + return ItemArmor.TIER_OTHER; + case "gold": + return ItemArmor.TIER_GOLD; + case "iron": + return ItemArmor.TIER_IRON; + case "diamond": + return ItemArmor.TIER_DIAMOND; + case "netherite": + return ItemArmor.TIER_NETHERITE; + case "none": + return 0; + } + } + return 0; + } + + static boolean isTool(Element definition) { + String tool = definition.getAttribute("tool"); + if ("true".equals(tool)) { + return true; + } else if ("false".equals(tool)) { + return false; + } else { + return isTrue("axe", definition) || isTrue("pickaxe", definition) + || isTrue("shovel", definition) || isTrue("hoe", definition) + || isTrue("sword", definition); + } + } + + static boolean isArmor(Element definition) { + String tool = definition.getAttribute("armor"); + if ("true".equals(tool)) { + return true; + } else if ("false".equals(tool)) { + return false; + } else { + return isTrue("helmet", definition) || isTrue("chestplate", definition) + || isTrue("leggings", definition) || isTrue("boots", definition); + } + } + + static Stream createComparisonStream() { + return createItemStateStream() + .map(stateDefinition -> { + String id = stateDefinition.getAttribute("namespaced-id"); + String damage = stateDefinition.getAttribute("damage"); + if (!damage.isEmpty()) { + id = id + ":" + damage; + } + Item item = Item.fromString(id); + return Arguments.of(item, stateDefinition); + }); + } + + static void adjustEnchantability(Element element) { + if (element.hasAttribute("enchantability")) { + return; + } + int enchantability = getEnchantability(element); + if (enchantability > 0) { + element.setAttribute("enchantability", Integer.toString(enchantability)); + } + } + + static OptionalInt getInt(String name, Element element) { + String attr = element.getAttribute(name); + if (attr.isEmpty()) { + return OptionalInt.empty(); + } + return OptionalInt.of(Integer.parseInt(attr)); + } + + static boolean isTrue(String name, Element element) { + return is(name, "true", element); + } + + static boolean is(String name, String expected, Element element) { + return expected.equals(element.getAttribute(name)); + } + + static Stream createItemStateStream() { + return createItemDefinitionStream().flatMap(itemDefinition -> { + NodeList itemStates = itemDefinition.getElementsByTagName("item-state"); + if (itemStates.getLength() == 0) { + Element damageZero = createItemStateZero(itemDefinition); + adjustEnchantability(damageZero); + return Stream.of(damageZero); + } else { + //noinspection MismatchedQueryAndUpdateOfCollection + ElementList elements = new ElementList<>(itemStates, Element.class); + Stream stream = elements.stream(); + if (elements.stream().noneMatch(itemState-> "0".equals(itemState.getAttribute("damage")))) { + stream = Stream.concat(Stream.of(createItemStateZero(itemDefinition)), stream); + } + return stream + .map(itemState -> (Element) itemState.cloneNode(true)) + .peek(itemState -> copyUnsetAttributes(itemDefinition, itemState)) + .peek(BasicAttributesXmlTest::adjustEnchantability); + } + }); + } + + static Element createItemStateZero(Element itemDefinition) { + Element itemState = document.createElement("item-state"); + itemState.setAttribute("damage", "0"); + copyUnsetAttributes(itemDefinition, itemState); + return itemState; + } + + static void copyUnsetAttributes(Element from, Element to) { + NamedNodeMap attributes = from.getAttributes(); + for (int i = 0; i < attributes.getLength(); i++) { + Attr attr = (Attr) attributes.item(i); + if (attr.getNamespaceURI() != null) { + if (!to.hasAttributeNS(attr.getNamespaceURI(), attr.getLocalName())) { + to.setAttributeNode((Attr) attr.cloneNode(false)); + } + } else { + if (!to.hasAttribute(attr.getName())) { + to.setAttributeNode((Attr) attr.cloneNode(false)); + } + } + } + } + + static Stream createItemDefinitionStream() { + return new ElementList<>(document.getElementsByTagName("item"), Element.class).stream(); + } + + static int getEnchantability(Element element) { + if (isTrue("tool", element)) { + switch (element.getAttribute("tier")) { + case "wood": + case "netherite": + return 15; + case "stone": + return 5; + case "iron": + return 14; + case "gold": + return 22; + case "diamond": + return 10; + default: + return 1; + } + } + if (isTrue("armor", element)) { + switch (element.getAttribute("tier")) { + case "leather": + case "netherite": + return 15; + case "chain": + return 12; + case "iron": + case "turtle": + return 9; + case "gold": + return 25; + case "diamond": + return 10; + default: + return 1; + } + } + return 0; + } + + static class ElementList extends AbstractList implements RandomAccess { + final NodeList nodeList; + final Class eClass; + + ElementList(NodeList nodeList, Class eClass) { + this.nodeList = nodeList; + this.eClass = eClass; + } + + @Override + public E get(int index) { + return eClass.cast(nodeList.item(index)); + } + + @Override + public int size() { + return nodeList.getLength(); + } + + @Override + public Spliterator spliterator() { + return Spliterators.spliterator(this, ORDERED | DISTINCT | NONNULL | SIZED | SUBSIZED); + } + } + + @BeforeAll + static void loadBasicAttributesXml() throws IOException, ParserConfigurationException, SAXException { + try(InputStream is = Objects.requireNonNull(ItemTest.class.getClassLoader().getResourceAsStream("cn/nukkit/item/basicItemAttributes.xml")); + BufferedInputStream input = new BufferedInputStream(is); + InputStream dtdIS = Objects.requireNonNull(ItemTest.class.getClassLoader().getResourceAsStream("cn/nukkit/item/basicAttributes.dtd")); + BufferedInputStream dtdInput = new BufferedInputStream(dtdIS) + ) { + DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance(); + documentBuilderFactory.setValidating(true); + documentBuilderFactory.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true); + DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder(); + documentBuilder.setEntityResolver((publicId, systemId) -> { + if (systemId == null || !systemId.endsWith("basicAttributes.dtd")) { + return null; + } + return new InputSource(dtdInput); + }); + document = documentBuilder.parse(input); + } + } + + @AfterAll + static void unloadBasicAttributesXml() { + document = null; + } +} diff --git a/src/test/java/cn/nukkit/item/ItemArmorTest.java b/src/test/java/cn/nukkit/item/ItemArmorTest.java new file mode 100644 index 00000000000..806b74c0b01 --- /dev/null +++ b/src/test/java/cn/nukkit/item/ItemArmorTest.java @@ -0,0 +1,75 @@ +package cn.nukkit.item; + +import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.level.Sound; +import cn.nukkit.math.Vector3; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockPlayer; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.mockito.ArgumentMatchers.eq; +import static org.mockito.ArgumentMatchers.same; +import static org.mockito.Mockito.verify; + +/** + * @author joserobjr + * @since 2021-12-19 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class ItemArmorTest { + @MockPlayer + Player player; + + @Test + void onClickAirHelmet() { + ItemArmor armor = (ItemArmor) Item.get(ItemID.CHAIN_HELMET); + player.getInventory().setItemInHand(armor); + armor.onClickAir(player, new Vector3()); + verify(player.getLevel()).addSound(same(player), eq(Sound.ARMOR_EQUIP_CHAIN)); + } + + @Test + void onClickAirChestplate() { + ItemArmor armor = (ItemArmor) Item.get(ItemID.DIAMOND_CHESTPLATE); + player.getInventory().setItemInHand(armor); + armor.onClickAir(player, new Vector3()); + verify(player.getLevel()).addSound(same(player), eq(Sound.ARMOR_EQUIP_DIAMOND)); + } + + @Test + void onClickAirLeggings() { + ItemArmor armor = (ItemArmor) Item.get(ItemID.GOLD_LEGGINGS); + player.getInventory().setItemInHand(armor); + armor.onClickAir(player, new Vector3()); + verify(player.getLevel()).addSound(same(player), eq(Sound.ARMOR_EQUIP_GOLD)); + } + + @Test + void onClickAirBoots() { + ItemArmor armor = (ItemArmor) Item.get(ItemID.IRON_BOOTS); + player.getInventory().setItemInHand(armor); + armor.onClickAir(player, new Vector3()); + verify(player.getLevel()).addSound(same(player), eq(Sound.ARMOR_EQUIP_IRON)); + } + + @Test + void onClickAirLeather() { + ItemArmor armor = (ItemArmor) Item.get(ItemID.LEATHER_CAP); + player.getInventory().setItemInHand(armor); + armor.onClickAir(player, new Vector3()); + verify(player.getLevel()).addSound(same(player), eq(Sound.ARMOR_EQUIP_LEATHER)); + } + + @Test + void onClickAirNetherite() { + ItemArmor armor = (ItemArmor) Item.get(ItemID.NETHERITE_BOOTS); + player.getInventory().setItemInHand(armor); + armor.onClickAir(player, new Vector3()); + verify(player.getLevel()).addSound(same(player), eq(Sound.ARMOR_EQUIP_NETHERITE)); + } +} diff --git a/src/test/java/cn/nukkit/item/ItemArrowTest.java b/src/test/java/cn/nukkit/item/ItemArrowTest.java new file mode 100644 index 00000000000..f8b5d809dbd --- /dev/null +++ b/src/test/java/cn/nukkit/item/ItemArrowTest.java @@ -0,0 +1,40 @@ +package cn.nukkit.item; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.potion.Potion; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNull; + +/** + * @author joserobjr + * @since 2021-12-18 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class ItemArrowTest { + ItemArrow arrow; + + @BeforeEach + void setUp() { + arrow = new ItemArrow(); + } + + @Test + void getTippedArrowEffect() { + assertNull(arrow.getTippedArrowPotion()); + for (int damage = 1; damage <= 43; damage++) { + arrow.setDamage(damage); + Potion potion = Potion.getPotion(damage - 1); + assertEquals(potion, arrow.getTippedArrowPotion()); + } + arrow.setDamage(100); + assertNull(arrow.getTippedArrowPotion()); + } +} diff --git a/src/test/java/cn/nukkit/item/ItemBoatTest.java b/src/test/java/cn/nukkit/item/ItemBoatTest.java new file mode 100644 index 00000000000..a5134573fa4 --- /dev/null +++ b/src/test/java/cn/nukkit/item/ItemBoatTest.java @@ -0,0 +1,55 @@ +package cn.nukkit.item; + +import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.block.Block; +import cn.nukkit.block.BlockID; +import cn.nukkit.entity.item.EntityBoat; +import cn.nukkit.level.Level; +import cn.nukkit.math.BlockFace; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.api.MockPlayer; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import java.util.Arrays; +import java.util.Optional; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; + +/** + * @author joserobjr + * @since 2021-12-19 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class ItemBoatTest { + ItemBoat item; + + @MockLevel + Level level; + + @MockPlayer(position = {0, 66, 0}) + Player player; + + @Test + void defaultName() { + item = new ItemBoat(1000); + assertEquals("Boat", item.getName()); + } + + @Test + void onActivate() { + level.setBlock(0, 64 , 0, Block.get(BlockID.STILL_WATER), true, false); + Block water = level.getBlock(0, 64, 0); + item = new ItemBoat(2); + item.onActivate(level, player, water.up(), water, BlockFace.UP, 0.5, 0.5, 0.5); + final Optional boat = Arrays.stream(level.getEntities()).filter(EntityBoat.class::isInstance).map(EntityBoat.class::cast).findFirst(); + assertTrue(boat.isPresent(), "The boat did not spawn"); + assertEquals(2, boat.get().namedTag.getInt("Variant")); + } +} diff --git a/src/test/java/cn/nukkit/item/ItemPotionTest.java b/src/test/java/cn/nukkit/item/ItemPotionTest.java new file mode 100644 index 00000000000..6a44ffcbfee --- /dev/null +++ b/src/test/java/cn/nukkit/item/ItemPotionTest.java @@ -0,0 +1,28 @@ +package cn.nukkit.item; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNull; + +/** + * @author joserobjr + * @since 2021-12-19 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class ItemPotionTest { + ItemPotion item; + + @Test + void defaultName() { + item = new ItemPotion(1000); + assertEquals("Potion", item.getName()); + assertNull(item.getPotion()); + } +} diff --git a/src/test/java/cn/nukkit/item/ItemTest.java b/src/test/java/cn/nukkit/item/ItemTest.java new file mode 100644 index 00000000000..3a20fc88cdd --- /dev/null +++ b/src/test/java/cn/nukkit/item/ItemTest.java @@ -0,0 +1,37 @@ +package cn.nukkit.item; + +import lombok.SneakyThrows; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import java.lang.reflect.Method; +import java.util.LinkedHashMap; +import java.util.Map; + +import static org.junit.jupiter.api.Assertions.*; + +@ExtendWith(PowerNukkitExtension.class) +class ItemTest { + static Method loadCreativeItemEntry; + @BeforeAll + static void beforeAll() throws NoSuchMethodException { + loadCreativeItemEntry = Item.class.getDeclaredMethod("loadCreativeItemEntry", Map.class); + loadCreativeItemEntry.setAccessible(true); + } + + @Test + void loadCreativeItemEntryBlockState() throws ReflectiveOperationException { + Map data = new LinkedHashMap<>(); + data.put("blockState", "xxxxxx"); + assertNull(loadCreativeItemEntry(data)); + data.put("blockState", "minecraft:air;invalid=1"); + assertNull(loadCreativeItemEntry(data)); + } + + @SneakyThrows + private Item loadCreativeItemEntry(Map data) { + return (Item) loadCreativeItemEntry.invoke(null, data); + } +} diff --git a/src/test/java/cn/nukkit/item/ItemTridentTest.java b/src/test/java/cn/nukkit/item/ItemTridentTest.java new file mode 100644 index 00000000000..f0f7c4f0908 --- /dev/null +++ b/src/test/java/cn/nukkit/item/ItemTridentTest.java @@ -0,0 +1,93 @@ +package cn.nukkit.item; + +import cn.nukkit.Player; +import cn.nukkit.Server; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.block.BlockID; +import cn.nukkit.blockstate.BlockState; +import cn.nukkit.entity.projectile.EntityThrownTrident; +import cn.nukkit.event.Event; +import cn.nukkit.event.entity.EntityShootBowEvent; +import cn.nukkit.event.entity.ProjectileLaunchEvent; +import cn.nukkit.item.enchantment.Enchantment; +import cn.nukkit.level.Level; +import cn.nukkit.plugin.PluginManager; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.api.MockPlayer; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import java.util.Arrays; +import java.util.Optional; + +import static org.junit.jupiter.api.Assertions.*; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.doAnswer; + +/** + * @author joserobjr + * @since 2021-12-20 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class ItemTridentTest { + @MockLevel + Level level; + + @MockPlayer(position = {0, 65, 0}) + Player player; + + ItemTrident item; + + @BeforeEach + void setUp() { + level.setBlockStateAt(0, 64, 0, BlockState.of(BlockID.STONE)); + item = new ItemTrident(); + } + + @Test + void onReleaseRiptide() { + item.addEnchantment(Enchantment.getEnchantment(Enchantment.ID_TRIDENT_RIPTIDE)); + assertTrue(item.onRelease(player, 20)); + assertEquals(0, item.getDamage()); + } + + @Test + void onReleaseCreative() { + player.setGamemode(Player.CREATIVE); + assertTrue(player.isCreative()); + + assertTrue(item.onRelease(player, 20)); + Optional optTrident = Arrays.stream(level.getEntities()).filter(EntityThrownTrident.class::isInstance).map(EntityThrownTrident.class::cast).findFirst(); + assertTrue(optTrident.isPresent()); + assertTrue(optTrident.get().isCreative()); + } + + @Test + void onReleaseCancelBow() { + PluginManager pluginManager = Server.getInstance().getPluginManager(); + doAnswer(call -> { + ((Event)call.getArgument(0)).setCancelled(); + return null; + }).when(pluginManager).callEvent(any(EntityShootBowEvent.class)); + assertTrue(item.onRelease(player, 20)); + Optional optTrident = Arrays.stream(level.getEntities()).filter(EntityThrownTrident.class::isInstance).map(EntityThrownTrident.class::cast).findFirst(); + assertFalse(optTrident.isPresent()); + } + + @Test + void onReleaseCancelProjectLaunch() { + PluginManager pluginManager = Server.getInstance().getPluginManager(); + doAnswer(call -> { + ((Event)call.getArgument(0)).setCancelled(); + return null; + }).when(pluginManager).callEvent(any(ProjectileLaunchEvent.class)); + assertTrue(item.onRelease(player, 20)); + Optional optTrident = Arrays.stream(level.getEntities()).filter(EntityThrownTrident.class::isInstance).map(EntityThrownTrident.class::cast).findFirst(); + assertFalse(optTrident.isPresent()); + } +} diff --git a/src/test/java/cn/nukkit/item/enchantment/damage/EnchantmentDamageAllTest.java b/src/test/java/cn/nukkit/item/enchantment/damage/EnchantmentDamageAllTest.java new file mode 100644 index 00000000000..6948810e462 --- /dev/null +++ b/src/test/java/cn/nukkit/item/enchantment/damage/EnchantmentDamageAllTest.java @@ -0,0 +1,50 @@ +package cn.nukkit.item.enchantment.damage; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.entity.Entity; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.Mock; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author joserobjr + * @since 2021-12-20 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class EnchantmentDamageAllTest { + @Mock + Entity entity; + EnchantmentDamageAll enchant; + + @BeforeEach + void setUp() { + enchant = new EnchantmentDamageAll(); + } + + @Test + void getDamageBonus() { + enchant.setLevel(-1, false); + assertEquals(0, enchant.getDamageBonus(entity)); + + enchant.setLevel(1, false); + assertEquals(1.25, enchant.getDamageBonus(entity)); + + enchant.setLevel(2, false); + assertEquals(2.5, enchant.getDamageBonus(entity)); + + enchant.setLevel(3, false); + assertEquals(3.75, enchant.getDamageBonus(entity)); + + enchant.setLevel(4, false); + assertEquals(5.00, enchant.getDamageBonus(entity)); + + assertEquals(4, enchant.getMaxEnchantableLevel()); + } +} diff --git a/src/test/java/cn/nukkit/item/randomitem/FishingTest.java b/src/test/java/cn/nukkit/item/randomitem/FishingTest.java new file mode 100644 index 00000000000..cbe32d8a1e9 --- /dev/null +++ b/src/test/java/cn/nukkit/item/randomitem/FishingTest.java @@ -0,0 +1,36 @@ +package cn.nukkit.item.randomitem; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.item.Item; +import cn.nukkit.item.ItemID; +import cn.nukkit.item.enchantment.Enchantment; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.assertNotNull; + +/** + * @author joserobjr + * @since 2021-12-19 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class FishingTest { + + @Test + void getFishingResult() { + assertNotNull(Fishing.getFishingResult(null)); + + Item fishingRod = Item.get(ItemID.FISHING_ROD); + assertNotNull(Fishing.getFishingResult(fishingRod)); + + fishingRod.addEnchantment(Enchantment.getEnchantment(Enchantment.ID_LURE)); + assertNotNull(Fishing.getFishingResult(fishingRod)); + + fishingRod.addEnchantment(Enchantment.getEnchantment(Enchantment.ID_FORTUNE_FISHING)); + assertNotNull(Fishing.getFishingResult(fishingRod)); + } +} diff --git a/src/test/java/cn/nukkit/level/LevelTest.java b/src/test/java/cn/nukkit/level/LevelTest.java index 1228f45da84..b91eb1961b4 100644 --- a/src/test/java/cn/nukkit/level/LevelTest.java +++ b/src/test/java/cn/nukkit/level/LevelTest.java @@ -10,6 +10,7 @@ import cn.nukkit.level.generator.Flat; import cn.nukkit.math.Vector3; import cn.nukkit.test.LogLevelAdjuster; +import co.aikar.timings.Timings; import org.iq80.leveldb.util.FileUtils; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.AfterEach; @@ -56,6 +57,7 @@ void setUp() throws IOException { levelFolder = new File(server.getDataPath(), "worlds/TestLevel"); String path = levelFolder.getAbsolutePath()+File.separator; Anvil.generate(path, "TestLevel", 0, Flat.class); + Timings.init(); level = new Level(server, "TestLevel", path, Anvil.class); level.setAutoSave(true); diff --git a/src/test/java/cn/nukkit/level/LocationTest.java b/src/test/java/cn/nukkit/level/LocationTest.java new file mode 100644 index 00000000000..e4b3a15d96d --- /dev/null +++ b/src/test/java/cn/nukkit/level/LocationTest.java @@ -0,0 +1,194 @@ +package cn.nukkit.level; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.block.Block; +import cn.nukkit.block.BlockID; +import cn.nukkit.math.Vector3; +import cn.nukkit.utils.LevelException; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockLevel; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.*; + +/** + * @author joserobjr + * @since 2021-12-15 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class LocationTest { + public static final double X = 2; + public static final double Y = 64; + public static final double Z = 3; + public static final float PITCH = 30f; + public static final float YAW = 40f; + public static final float HEAD_YAW = 50f; + + @MockLevel + Level level; + + @BeforeEach + void setUp() { + level.setBlock(new Vector3(X, Y, Z), Block.get(BlockID.STONE), true, false); + } + + @Test + void constructorLevel() { + Location location = new Location(X, Y, Z, level); + assertEquals(X, location.x); + assertEquals(Y, location.y); + assertEquals(Z, location.z); + assertSame(level, location.level); + assertEquals(0, location.yaw); + assertEquals(0, location.pitch); + assertEquals(0, location.headYaw); + } + + @Test + void constructorYawPitchLevel() { + Location location = new Location(X, Y, Z, YAW, PITCH, level); + assertEquals(X, location.x); + assertEquals(Y, location.y); + assertEquals(Z, location.z); + assertSame(level, location.level); + assertEquals(YAW, location.yaw); + assertEquals(PITCH, location.pitch); + assertEquals(0, location.headYaw); + } + + @Test + void constructorYawPitchHeadYaw() { + Location location = new Location(X, Y, Z, YAW, PITCH, HEAD_YAW); + assertEquals(X, location.x); + assertEquals(Y, location.y); + assertEquals(Z, location.z); + assertNull(location.level); + assertEquals(YAW, location.yaw); + assertEquals(PITCH, location.pitch); + assertEquals(HEAD_YAW, location.headYaw); + } + + @Test + void constructorYawPitchHeadYawLevel() { + Location location = new Location(X, Y, Z, YAW, PITCH, HEAD_YAW, level); + assertEquals(X, location.x); + assertEquals(Y, location.y); + assertEquals(Z, location.z); + assertSame(level, location.level); + assertEquals(YAW, location.yaw); + assertEquals(PITCH, location.pitch); + assertEquals(HEAD_YAW, location.headYaw); + } + + @Test + void fromObjectWithEverything() { + Location location = Location.fromObject(new Vector3(X, Y, Z), level, YAW, PITCH, HEAD_YAW); + assertEquals(X, location.x); + assertEquals(Y, location.y); + assertEquals(Z, location.z); + assertSame(level, location.level); + assertEquals(YAW, location.yaw); + assertEquals(PITCH, location.pitch); + assertEquals(HEAD_YAW, location.headYaw); + } + + @Test + void fromObjectWithoutLevel() { + Location location = Location.fromObject(new Vector3(X, Y, Z), null, YAW, PITCH, HEAD_YAW); + assertEquals(X, location.x); + assertEquals(Y, location.y); + assertEquals(Z, location.z); + assertNull(location.getLevel()); + assertEquals(YAW, location.yaw); + assertEquals(PITCH, location.pitch); + assertEquals(HEAD_YAW, location.headYaw); + assertEquals("Location (level=null, x=" + X + ", y=" + Y + ", z=" + Z + ", yaw=" + YAW + ", pitch=" + PITCH + ", headYaw=" + HEAD_YAW + ")", location.toString()); + } + + @Test + void fromObjectWithLevelFromPosition() { + Location location = Location.fromObject(new Position(X, Y, Z, level), null, YAW, PITCH, HEAD_YAW); + assertEquals(X, location.x); + assertEquals(Y, location.y); + assertEquals(Z, location.z); + assertSame(level, location.getLevel()); + assertEquals(YAW, location.yaw); + assertEquals(PITCH, location.pitch); + assertEquals(HEAD_YAW, location.headYaw); + assertEquals(HEAD_YAW, location.getHeadYaw()); + assertEquals("Location (level=" + level.getName() + ", x=" + X + ", y=" + Y + ", z=" + Z + ", yaw=" + YAW + ", pitch=" + PITCH + ", headYaw=" + HEAD_YAW + ")", location.toString()); + } + + @Test + void getLocationValid() { + Location location = new Location(X, Y, Z, YAW, PITCH, HEAD_YAW, level); + Location other = location.getLocation(); + assertNotSame(location, other); + assertEquals(location, other); + } + + @Test + void getLocationNotValid() { + Location location = new Location(X, Y, Z, YAW, PITCH, HEAD_YAW, null); + assertThrows(LevelException.class, location::getLocation); + } + + @Test + void add() { + Location location = new Location(X, Y, Z, YAW, PITCH, HEAD_YAW, level); + assertEquals(new Location(X + 1, Y, Z, YAW, PITCH, HEAD_YAW, level), location.add(1)); + assertEquals(new Location(X + 1, Y + 2, Z, YAW, PITCH, HEAD_YAW, level), location.add(1, 2)); + assertEquals(new Location(X + 1, Y + 2, Z + 3, YAW, PITCH, HEAD_YAW, level), location.add(1, 2, 3)); + assertEquals(new Location(X + 1, Y + 2, Z + 3, YAW, PITCH, HEAD_YAW, level), location.add(new Vector3(1, 2, 3))); + } + + @Test + void subtract() { + Location location = new Location(X, Y, Z, YAW, PITCH, HEAD_YAW, level); + assertEquals(new Location(X - 1, Y, Z, YAW, PITCH, HEAD_YAW, level), location.subtract(1)); + assertEquals(new Location(X - 1, Y - 2, Z, YAW, PITCH, HEAD_YAW, level), location.subtract(1, 2)); + assertEquals(new Location(X - 1, Y - 2, Z - 3, YAW, PITCH, HEAD_YAW, level), location.subtract(1, 2, 3)); + assertEquals(new Location(X - 1, Y - 2, Z - 3, YAW, PITCH, HEAD_YAW, level), location.subtract(new Vector3(1, 2, 3))); + } + + @Test + void multiply() { + Location location = new Location(X, Y, Z, YAW, PITCH, HEAD_YAW, level); + assertEquals(new Location(X * 4, Y * 4, Z * 4, YAW, PITCH, HEAD_YAW, level), location.multiply(4)); + } + + @Test + void divide() { + Location location = new Location(X, Y, Z, YAW, PITCH, HEAD_YAW, level); + assertEquals(new Location(X / 2, Y / 2, Z / 2, YAW, PITCH, HEAD_YAW, level), location.divide(2)); + } + + @Test + void ceil() { + Location location = new Location(X + 0.8, Y + 0.8, Z + 0.8, YAW + 0.8, PITCH + 0.8, HEAD_YAW + 0.8, level); + assertEquals(new Location(X + 1, Y + 1, Z + 1, YAW + 0.8, PITCH + 0.8, HEAD_YAW + 0.8, level), location.ceil()); + } + + @Test + void floor() { + Location location = new Location(X + 0.8, Y + 0.8, Z + 0.8, YAW + 0.8, PITCH + 0.8, HEAD_YAW + 0.8, level); + assertEquals(new Location(X, Y, Z, YAW + 0.8, PITCH + 0.8, HEAD_YAW + 0.8, level), location.floor()); + } + + @Test + void round() { + Location location = new Location(X + 0.8, Y + 0.8, Z + 0.8, YAW + 0.8, PITCH + 0.8, HEAD_YAW + 0.8, level); + assertEquals(new Location(X + 1, Y + 1, Z + 1, YAW + 0.8, PITCH + 0.8, HEAD_YAW + 0.8, level), location.round()); + } + + @Test + void abs() { + Location location = new Location(X + 0.8, Y + 0.8, Z + 0.8, YAW + 0.8, PITCH + 0.8, HEAD_YAW + 0.8, level); + assertEquals(new Location(X, Y, Z, YAW + 0.8, PITCH + 0.8, HEAD_YAW + 0.8, level), location.abs()); + } +} diff --git a/src/test/java/cn/nukkit/level/ParticleEffectTest.java b/src/test/java/cn/nukkit/level/ParticleEffectTest.java new file mode 100644 index 00000000000..a3a63ab19cb --- /dev/null +++ b/src/test/java/cn/nukkit/level/ParticleEffectTest.java @@ -0,0 +1,20 @@ +package cn.nukkit.level; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author joserobjr + * @since 2021-12-13 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +class ParticleEffectTest { + @Test + void getIdentifier() { + assertEquals("minecraft:wax_particle", ParticleEffect.WAX.getIdentifier()); + } +} diff --git a/src/test/java/cn/nukkit/level/format/anvil/ChunkSectionTest.java b/src/test/java/cn/nukkit/level/format/anvil/ChunkSectionTest.java index 040c8e6d44c..c5ffff8a930 100644 --- a/src/test/java/cn/nukkit/level/format/anvil/ChunkSectionTest.java +++ b/src/test/java/cn/nukkit/level/format/anvil/ChunkSectionTest.java @@ -3,11 +3,13 @@ import cn.nukkit.block.BlockID; import cn.nukkit.block.BlockWall; import cn.nukkit.blockstate.BlockState; +import cn.nukkit.level.format.generic.EmptyChunkSection; import cn.nukkit.math.BlockFace; import cn.nukkit.nbt.tag.ByteArrayTag; import cn.nukkit.nbt.tag.CompoundTag; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.ReflectionUtil; import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; import java.math.BigInteger; @@ -17,6 +19,38 @@ @ExtendWith(PowerNukkitExtension.class) class ChunkSectionTest { + /** + * https://github.com/PowerNukkit/PowerNukkit/issues/1186 + */ + @Test + void issue1186() throws NoSuchFieldException { + ChunkSection section = new ChunkSection(2); + assertEquals(0, section.getBlockSkyLight(1,2,3)); + section.hasSkyLight = true; + assertEquals(15, section.getBlockSkyLight(1,2,3)); + assertEquals(0, section.getBlockLight(1,2,3)); + + section.setBlockSkyLight(1,2,3,4); + section.setBlockLight(1,2,3,2); + assertTrue(section.compress()); + + // Corrupting intentionally + ReflectionUtil.setField(section, ChunkSection.class.getDeclaredField("compressedLight"), new byte[3]); + section.setBlockSkyLight(1,2,3,5); + section.setBlockLight(1,2,3, 7); + + assertEquals(5, section.getBlockSkyLight(1,2,3)); + assertEquals(7, section.getBlockLight(1,2,3)); + + section.compress(); + + // Corrupting intentionally + ReflectionUtil.setField(section, ChunkSection.class.getDeclaredField("compressedLight"), new byte[3]); + + assertEquals(15, section.getBlockSkyLight(1,2,3)); + assertEquals(0, section.getBlockLight(1,2,3)); + } + @Test void omgThatIsHugePersistence() { ChunkSection section = new ChunkSection(4); @@ -49,6 +83,13 @@ void negativePersistence() { ChunkSection loaded = new ChunkSection(nbt); assertEquals(15, loaded.getBlockState(0,0,0).getExactIntStorage()); + for (int i = 0; i < EmptyChunkSection.EMPTY_LIGHT_ARR.length; i++) { + assertEquals(0, EmptyChunkSection.EMPTY_LIGHT_ARR[i]); + } + + for (int i = 0; i < EmptyChunkSection.EMPTY_SKY_LIGHT_ARR.length; i++) { + assertEquals((byte) 255, EmptyChunkSection.EMPTY_SKY_LIGHT_ARR[i]); + } } @Test diff --git a/src/test/java/cn/nukkit/level/format/generic/BaseChunkTest.java b/src/test/java/cn/nukkit/level/format/generic/BaseChunkTest.java index 80cd680b13d..6a9b0bfe79f 100644 --- a/src/test/java/cn/nukkit/level/format/generic/BaseChunkTest.java +++ b/src/test/java/cn/nukkit/level/format/generic/BaseChunkTest.java @@ -36,7 +36,43 @@ void setup() { chunk.setProvider(anvil); chunk.providerClass = Anvil.class; } - + + /** + * Cloudburst Nukkit don't validate xyz, instead, it uses only the 4 least significant bits. We must do the same. + */ + @Test + void github1138() { + chunk.setBlockAt(0x10, 0, 0, BlockID.BEDROCK); + assertEquals(BlockID.BEDROCK, chunk.getBlockId(0, 0, 0)); + chunk.setBlockAt(0, 0, 0, BlockID.AIR); + assertEquals(BlockID.AIR, chunk.getBlockId(0, 0, 0)); + + chunk.setBlockAt(0, 0x10, 0, BlockID.BEDROCK); + assertEquals(BlockID.BEDROCK, chunk.getBlockId(0, 0x10, 0)); + chunk.setBlockAt(0, 0x10, 0, BlockID.AIR); + assertEquals(BlockID.AIR, chunk.getBlockId(0, 0x10, 0)); + + chunk.setBlockAt(0, 0, 0x10, BlockID.BEDROCK); + assertEquals(BlockID.BEDROCK, chunk.getBlockId(0, 0, 0)); + chunk.setBlockAt(0, 0, 0, BlockID.AIR); + assertEquals(BlockID.AIR, chunk.getBlockId(0, 0, 0)); + + chunk.setBlockAt(0x13, 0, 0, BlockID.BEDROCK); + assertEquals(BlockID.BEDROCK, chunk.getBlockId(3, 0, 0)); + chunk.setBlockAt(3, 0, 0, BlockID.AIR); + assertEquals(BlockID.AIR, chunk.getBlockId(3, 0, 0)); + + chunk.setBlockAt(0, 0x13, 0, BlockID.BEDROCK); + assertEquals(BlockID.BEDROCK, chunk.getBlockId(0, 0x13, 0)); + chunk.setBlockAt(0, 0x13, 0, BlockID.AIR); + assertEquals(BlockID.AIR, chunk.getBlockId(0, 0x13, 0)); + + chunk.setBlockAt(0, 0, 0x13, BlockID.BEDROCK); + assertEquals(BlockID.BEDROCK, chunk.getBlockId(0, 0, 3)); + chunk.setBlockAt(0, 0, 3, BlockID.AIR); + assertEquals(BlockID.AIR, chunk.getBlockId(0, 0, 3)); + } + @Test void isBlockChangeAllowed() { BlockState allow = BlockState.of(BlockID.ALLOW); diff --git a/src/test/java/cn/nukkit/level/format/updater/NewLeafUpdaterTest.java b/src/test/java/cn/nukkit/level/format/updater/NewLeafUpdaterTest.java index e6bbf0ad097..173a581462c 100644 --- a/src/test/java/cn/nukkit/level/format/updater/NewLeafUpdaterTest.java +++ b/src/test/java/cn/nukkit/level/format/updater/NewLeafUpdaterTest.java @@ -4,10 +4,13 @@ import cn.nukkit.level.format.anvil.ChunkSection; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; import static cn.nukkit.block.BlockID.LEAVES2; import static org.junit.jupiter.api.Assertions.assertEquals; +@ExtendWith(PowerNukkitExtension.class) class NewLeafUpdaterTest { final ChunkSection section = new ChunkSection(0); final int x = 5; diff --git a/src/test/java/cn/nukkit/level/particle/DustParticleTest.java b/src/test/java/cn/nukkit/level/particle/DustParticleTest.java new file mode 100644 index 00000000000..6fc59d1935e --- /dev/null +++ b/src/test/java/cn/nukkit/level/particle/DustParticleTest.java @@ -0,0 +1,15 @@ +package cn.nukkit.level.particle; + +import cn.nukkit.math.Vector3; +import cn.nukkit.utils.BlockColor; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class DustParticleTest { + @Test + void constructor() { + DustParticle dustParticle = new DustParticle(new Vector3(0, 1, 0), BlockColor.SAND_BLOCK_COLOR); + assertEquals(BlockColor.SAND_BLOCK_COLOR.getARGB(), dustParticle.data); + } +} diff --git a/src/test/java/cn/nukkit/math/BlockVector3Test.java b/src/test/java/cn/nukkit/math/BlockVector3Test.java new file mode 100644 index 00000000000..b893b56c37b --- /dev/null +++ b/src/test/java/cn/nukkit/math/BlockVector3Test.java @@ -0,0 +1,30 @@ +package cn.nukkit.math; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotSame; + +/** + * @author joserobjr + * @since 2021-12-19 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +class BlockVector3Test { + BlockVector3 vector3; + @Test + void setGet() { + vector3 = new BlockVector3(); + vector3.setX(1); + vector3.setY(2); + vector3.setZ(3); + assertEquals(1, vector3.getX()); + assertEquals(2, vector3.getY()); + assertEquals(3, vector3.getZ()); + assertNotSame(vector3, vector3.clone()); + assertEquals(vector3, vector3.clone()); + } +} diff --git a/src/test/java/cn/nukkit/math/Vector3Test.java b/src/test/java/cn/nukkit/math/Vector3Test.java new file mode 100644 index 00000000000..9a824695217 --- /dev/null +++ b/src/test/java/cn/nukkit/math/Vector3Test.java @@ -0,0 +1,30 @@ +package cn.nukkit.math; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotSame; + +/** + * @author joserobjr + * @since 2021-12-19 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +class Vector3Test { + Vector3 vector3; + @Test + void setGet() { + vector3 = new Vector3(); + vector3.setX(1); + vector3.setY(2); + vector3.setZ(3); + assertEquals(1, vector3.getX()); + assertEquals(2, vector3.getY()); + assertEquals(3, vector3.getZ()); + assertNotSame(vector3, vector3.clone()); + assertEquals(vector3, vector3.clone()); + } +} diff --git a/src/test/java/cn/nukkit/math/Vector3fTest.java b/src/test/java/cn/nukkit/math/Vector3fTest.java new file mode 100644 index 00000000000..cb410e8a000 --- /dev/null +++ b/src/test/java/cn/nukkit/math/Vector3fTest.java @@ -0,0 +1,30 @@ +package cn.nukkit.math; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotSame; + +/** + * @author joserobjr + * @since 2021-12-19 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +class Vector3fTest { + Vector3f vector3; + @Test + void setGet() { + vector3 = new Vector3f(); + vector3.setX(1); + vector3.setY(2); + vector3.setZ(3); + assertEquals(1, vector3.getX()); + assertEquals(2, vector3.getY()); + assertEquals(3, vector3.getZ()); + assertNotSame(vector3, vector3.clone()); + assertEquals(vector3, vector3.clone()); + } +} diff --git a/src/test/java/cn/nukkit/network/NetworkTest.java b/src/test/java/cn/nukkit/network/NetworkTest.java new file mode 100644 index 00000000000..682de75f535 --- /dev/null +++ b/src/test/java/cn/nukkit/network/NetworkTest.java @@ -0,0 +1,60 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2021 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package cn.nukkit.network; + +import cn.nukkit.Server; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.Mock; +import org.mockito.junit.jupiter.MockitoExtension; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author joserobjr + * @since 2021-07-13 + */ +@PowerNukkitOnly +@Since("1.5.2.0-PN") +@ExtendWith(MockitoExtension.class) +class NetworkTest { + @Mock + Server server; + + Network network; + + @BeforeEach + void setUp() { + network = new Network(server); + } + + @Test + void addStatistics() { + network.addStatistics(1, 2); + assertEquals(1, network.getUpload()); + assertEquals(2, network.getDownload()); + + network.addStatistics(1, 2); + assertEquals(2, network.getUpload()); + assertEquals(4, network.getDownload()); + } +} diff --git a/src/test/java/cn/nukkit/network/RakNetInterfaceTest.java b/src/test/java/cn/nukkit/network/RakNetInterfaceTest.java new file mode 100644 index 00000000000..78daae63deb --- /dev/null +++ b/src/test/java/cn/nukkit/network/RakNetInterfaceTest.java @@ -0,0 +1,47 @@ +package cn.nukkit.network; + +import cn.nukkit.Player; +import cn.nukkit.Server; +import cn.nukkit.network.protocol.DataPacket; +import cn.nukkit.network.protocol.ResourcePackChunkRequestPacket; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockPlayer; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import java.io.IOException; +import java.net.InetSocketAddress; +import java.net.ServerSocket; + +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.mockito.Mockito.when; + +@ExtendWith(PowerNukkitExtension.class) +class RakNetInterfaceTest { + + RakNetInterface rakNetInterface; + + @MockPlayer + Player player; + + @BeforeEach + void setUp() throws IOException { + Server server = Server.getInstance(); + ServerSocket socket = new ServerSocket(0); + int port = socket.getLocalPort(); + socket.close(); + when(server.getIp()).thenReturn("127.0.0.1"); + when(server.getPort()).thenReturn(port); + rakNetInterface = new RakNetInterface(server); + } + + @Test + void noSession() { + InetSocketAddress socketAddress = new InetSocketAddress("127.0.0.1", 3222); + when(player.getSocketAddress()).thenReturn(socketAddress); + DataPacket packet = new ResourcePackChunkRequestPacket(); + rakNetInterface.putResourcePacket(player, packet); + assertFalse(packet.isEncoded); + } +} diff --git a/src/test/java/cn/nukkit/network/protocol/AddVolumeEntityPacketTest.java b/src/test/java/cn/nukkit/network/protocol/AddVolumeEntityPacketTest.java new file mode 100644 index 00000000000..0a1294adc6b --- /dev/null +++ b/src/test/java/cn/nukkit/network/protocol/AddVolumeEntityPacketTest.java @@ -0,0 +1,53 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2021 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package cn.nukkit.network.protocol; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.nbt.tag.CompoundTag; +import lombok.val; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; + +/** + * @author joserobjr + * @since 2021-07-13 + */ +@PowerNukkitOnly +@Since("1.5.2.0-PN") +class AddVolumeEntityPacketTest { + @Test + void encodeDecode() { + val packet = new AddVolumeEntityPacket(); + packet.setId(1L); + packet.setData(new CompoundTag("A")); + packet.encode(); + + val packet2 = new AddVolumeEntityPacket(); + packet2.setBuffer(packet.getBuffer()); + packet2.getUnsignedVarInt(); + packet2.decode(); + + assertEquals(1L, packet2.getId()); + assertEquals(new CompoundTag("A"), packet2.getData()); + assertTrue(packet2.feof()); + } +} diff --git a/src/test/java/cn/nukkit/network/protocol/CraftingEventPacketTest.java b/src/test/java/cn/nukkit/network/protocol/CraftingEventPacketTest.java new file mode 100644 index 00000000000..1e30358b6a6 --- /dev/null +++ b/src/test/java/cn/nukkit/network/protocol/CraftingEventPacketTest.java @@ -0,0 +1,32 @@ +package cn.nukkit.network.protocol; + +import cn.nukkit.item.Item; +import lombok.var; +import org.junit.jupiter.api.Test; + +import java.util.UUID; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author joserobjr + * @since 2021-09-25 + */ +class CraftingEventPacketTest { + + @Test + void encodeDecode() { + var packet = new CraftingEventPacket(); + packet.type = 1; + packet.id = UUID.randomUUID(); + packet.input = new Item[]{new Item(1000), new Item(1001)}; + packet.output = new Item[]{new Item(1002), new Item(1003)}; + + packet.encode(); + var packet2 = new CraftingEventPacket(); + packet2.setBuffer(packet.getBuffer()); + packet2.decode(); + + assertEquals(packet, packet2); + } +} diff --git a/src/test/java/cn/nukkit/network/protocol/HurtArmorPacketTest.java b/src/test/java/cn/nukkit/network/protocol/HurtArmorPacketTest.java new file mode 100644 index 00000000000..944718a3e74 --- /dev/null +++ b/src/test/java/cn/nukkit/network/protocol/HurtArmorPacketTest.java @@ -0,0 +1,28 @@ +package cn.nukkit.network.protocol; + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.*; + +class HurtArmorPacketTest { + HurtArmorPacket packet; + + @BeforeEach + void setUp() { + packet = new HurtArmorPacket(); + } + + @Test + void encodeDecode() { + packet.cause = 1; + packet.damage = 2; + packet.armorSlots = 3; + packet.encode(); + packet.getVarInt(); + packet.decode(); + assertEquals(1, packet.cause); + assertEquals(2, packet.damage); + assertEquals(3, packet.armorSlots); + } +} diff --git a/src/test/java/cn/nukkit/network/protocol/MoveEntityDeltaPacketTest.java b/src/test/java/cn/nukkit/network/protocol/MoveEntityDeltaPacketTest.java new file mode 100644 index 00000000000..fbd3b98f35d --- /dev/null +++ b/src/test/java/cn/nukkit/network/protocol/MoveEntityDeltaPacketTest.java @@ -0,0 +1,169 @@ +package cn.nukkit.network.protocol; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.*; + +/** + * @author joserobjr + * @since 2021-12-13 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +class MoveEntityDeltaPacketTest { + + MoveEntityDeltaPacket packet; + + @BeforeEach + void setUp() { + packet = new MoveEntityDeltaPacket(); + packet.x = 1f; + packet.y = 2f; + packet.z = 3f; + packet.pitch = 4f; + packet.yaw = 5f; + packet.headYaw = 6f; + } + + @Test + void x() { + packet.flags = MoveEntityDeltaPacket.FLAG_HAS_X; + packet = encodeDecode(); + assertEquals(1f, packet.x); + assertEquals(0f, packet.y); + assertEquals(0f, packet.z); + assertEquals(0f, packet.pitch); + assertEquals(0f, packet.yaw); + assertEquals(0f, packet.headYaw); + assertTrue(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_X)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_Y)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_Z)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_PITCH)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_YAW)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_HEAD_YAW)); + } + + @Test + void y() { + packet.flags = MoveEntityDeltaPacket.FLAG_HAS_Y; + packet = encodeDecode(); + assertEquals(0f, packet.x); + assertEquals(2f, packet.y); + assertEquals(0f, packet.z); + assertEquals(0f, packet.pitch); + assertEquals(0f, packet.yaw); + assertEquals(0f, packet.headYaw); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_X)); + assertTrue(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_Y)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_Z)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_PITCH)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_YAW)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_HEAD_YAW)); + } + + @Test + void z() { + packet.flags = MoveEntityDeltaPacket.FLAG_HAS_Z; + packet = encodeDecode(); + assertEquals(0f, packet.x); + assertEquals(0f, packet.y); + assertEquals(3f, packet.z); + assertEquals(0f, packet.pitch); + assertEquals(0f, packet.yaw); + assertEquals(0f, packet.headYaw); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_X)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_Y)); + assertTrue(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_Z)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_PITCH)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_YAW)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_HEAD_YAW)); + } + + @Test + void pitch() { + packet.flags = MoveEntityDeltaPacket.FLAG_HAS_PITCH; + packet = encodeDecode(); + assertEquals(0f, packet.x); + assertEquals(0f, packet.y); + assertEquals(0f, packet.z); + assertEquals(impreciseRotation(4f), packet.pitch); + assertEquals(0f, packet.yaw); + assertEquals(0f, packet.headYaw); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_X)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_Y)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_Z)); + assertTrue(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_PITCH)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_YAW)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_HEAD_YAW)); + } + + @Test + void yaw() { + packet.flags = MoveEntityDeltaPacket.FLAG_HAS_YAW; + packet = encodeDecode(); + assertEquals(0f, packet.x); + assertEquals(0f, packet.y); + assertEquals(0f, packet.z); + assertEquals(0f, packet.pitch); + assertEquals(impreciseRotation(5f), packet.yaw); + assertEquals(0f, packet.headYaw); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_X)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_Y)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_Z)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_PITCH)); + assertTrue(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_YAW)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_HEAD_YAW)); + } + + @Test + void headYaw() { + packet.flags = MoveEntityDeltaPacket.FLAG_HAS_HEAD_YAW; + packet = encodeDecode(); + assertEquals(0f, packet.x); + assertEquals(0f, packet.y); + assertEquals(0f, packet.z); + assertEquals(0f, packet.pitch); + assertEquals(0f, packet.yaw); + assertEquals(impreciseRotation(6f), packet.headYaw); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_X)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_Y)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_Z)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_PITCH)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_YAW)); + assertTrue(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_HEAD_YAW)); + } + + @Test + void xyz() { + packet.flags = MoveEntityDeltaPacket.FLAG_HAS_X | MoveEntityDeltaPacket.FLAG_HAS_Y | MoveEntityDeltaPacket.FLAG_HAS_Z; + packet = encodeDecode(); + assertEquals(1f, packet.x); + assertEquals(2f, packet.y); + assertEquals(3f, packet.z); + assertEquals(0f, packet.pitch); + assertEquals(0f, packet.yaw); + assertEquals(0f, packet.headYaw); + assertTrue(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_X)); + assertTrue(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_Y)); + assertTrue(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_Z)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_PITCH)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_YAW)); + assertFalse(packet.hasFlag(MoveEntityDeltaPacket.FLAG_HAS_HEAD_YAW)); + } + + private MoveEntityDeltaPacket encodeDecode() { + packet.encode(); + MoveEntityDeltaPacket other = new MoveEntityDeltaPacket(); + other.setBuffer(packet.getBuffer()); + other.getUnsignedVarInt(); + other.decode(); + return other; + } + + private float impreciseRotation(float rotation) { + return ((byte) (rotation / (360F / 256F))) * (360F / 256F); + } +} diff --git a/src/test/java/cn/nukkit/network/protocol/NPCDialoguePacketTest.java b/src/test/java/cn/nukkit/network/protocol/NPCDialoguePacketTest.java new file mode 100644 index 00000000000..399486c7d38 --- /dev/null +++ b/src/test/java/cn/nukkit/network/protocol/NPCDialoguePacketTest.java @@ -0,0 +1,61 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2021 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package cn.nukkit.network.protocol; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.network.protocol.NPCDialoguePacket.NPCDialogAction; +import lombok.val; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; + +/** + * @author joserobjr + * @since 2021-07-13 + */ +@PowerNukkitOnly +@Since("1.5.2.0-PN") +class NPCDialoguePacketTest { + @Test + void encodeDecode() { + val packet = new NPCDialoguePacket(); + packet.setRuntimeEntityId(1L); + packet.setAction(NPCDialogAction.CLOSE); + packet.setDialogue("dialog"); + packet.setSceneName("scene"); + packet.setNpcName("npcName"); + packet.setActionJson("json"); + packet.encode(); + + val packet2 = new NPCDialoguePacket(); + packet2.setBuffer(packet.getBuffer()); + packet2.getUnsignedVarInt(); + packet2.decode(); + + assertEquals(1L, packet2.getRuntimeEntityId()); + assertEquals(NPCDialogAction.CLOSE, packet2.getAction()); + assertEquals("dialog", packet2.getDialogue()); + assertEquals("scene", packet2.getSceneName()); + assertEquals("npcName", packet2.getNpcName()); + assertEquals("json", packet2.getActionJson()); + assertTrue(packet2.feof()); + } +} diff --git a/src/test/java/cn/nukkit/network/protocol/NPCRequestPacketTest.java b/src/test/java/cn/nukkit/network/protocol/NPCRequestPacketTest.java new file mode 100644 index 00000000000..c2b426279a1 --- /dev/null +++ b/src/test/java/cn/nukkit/network/protocol/NPCRequestPacketTest.java @@ -0,0 +1,59 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2021 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package cn.nukkit.network.protocol; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.network.protocol.NPCRequestPacket.RequestType; +import lombok.val; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; + +/** + * @author joserobjr + * @since 2021-07-13 + */ +@PowerNukkitOnly +@Since("1.5.2.0-PN") +class NPCRequestPacketTest { + @Test + void encodeDecode() { + val packet = new NPCRequestPacket(); + packet.setRequestedEntityRuntimeId(1L); + packet.setRequestType(RequestType.SET_NAME); + packet.setActionType(2); + packet.setCommandString("command"); + packet.setSceneName("scene"); + packet.encode(); + + val packet2 = new NPCRequestPacket(); + packet2.setBuffer(packet.getBuffer()); + packet2.getUnsignedVarInt(); + packet2.decode(); + + assertEquals(1L, packet2.getRequestedEntityRuntimeId()); + assertEquals(RequestType.SET_NAME, packet2.getRequestType()); + assertEquals(2, packet2.getActionType()); + assertEquals("command", packet2.getCommandString()); + assertEquals("scene", packet2.getSceneName()); + assertTrue(packet2.feof()); + } +} diff --git a/src/test/java/cn/nukkit/network/protocol/RemoveVolumeEntityPacketTest.java b/src/test/java/cn/nukkit/network/protocol/RemoveVolumeEntityPacketTest.java new file mode 100644 index 00000000000..a59c6a2f8e8 --- /dev/null +++ b/src/test/java/cn/nukkit/network/protocol/RemoveVolumeEntityPacketTest.java @@ -0,0 +1,50 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2021 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package cn.nukkit.network.protocol; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import lombok.val; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; + +/** + * @author joserobjr + * @since 2021-07-13 + */ +@PowerNukkitOnly +@Since("1.5.2.0-PN") +class RemoveVolumeEntityPacketTest { + @Test + void encodeDecode() { + val packet = new RemoveVolumeEntityPacket(); + packet.setId(1L); + packet.encode(); + + val packet2 = new RemoveVolumeEntityPacket(); + packet2.setBuffer(packet.getBuffer()); + packet2.getUnsignedVarInt(); + packet2.decode(); + + assertEquals(1L, packet2.getId()); + assertTrue(packet2.feof()); + } +} diff --git a/src/test/java/cn/nukkit/network/protocol/ResourcePackChunkDataPacketTest.java b/src/test/java/cn/nukkit/network/protocol/ResourcePackChunkDataPacketTest.java new file mode 100644 index 00000000000..0eddecd2991 --- /dev/null +++ b/src/test/java/cn/nukkit/network/protocol/ResourcePackChunkDataPacketTest.java @@ -0,0 +1,26 @@ +package cn.nukkit.network.protocol; + +import it.unimi.dsi.fastutil.bytes.ByteArrayList; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.*; + +class ResourcePackChunkDataPacketTest { + + ResourcePackChunkDataPacket packet; + + @BeforeEach + void setUp() { + packet = new ResourcePackChunkDataPacket(); + } + + @Test + void encodeDecode() { + packet.data = new byte[]{1,2,3}; + packet.encode(); + packet.getUnsignedVarInt(); + packet.decode(); + assertEquals(new ByteArrayList(new byte[]{1,2,3}), new ByteArrayList(packet.data)); + } +} diff --git a/src/test/java/cn/nukkit/network/protocol/ResourcePackChunkRequestPacketTest.java b/src/test/java/cn/nukkit/network/protocol/ResourcePackChunkRequestPacketTest.java new file mode 100644 index 00000000000..c4066269bc7 --- /dev/null +++ b/src/test/java/cn/nukkit/network/protocol/ResourcePackChunkRequestPacketTest.java @@ -0,0 +1,32 @@ +package cn.nukkit.network.protocol; + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.powernukkit.version.Version; + +import java.util.UUID; + +import static org.junit.jupiter.api.Assertions.*; + +class ResourcePackChunkRequestPacketTest { + + ResourcePackChunkRequestPacket packet; + + @BeforeEach + void setUp() { + packet = new ResourcePackChunkRequestPacket(); + } + + @Test + void encodeDecode() { + packet.setPackId(new UUID(1,2)); + packet.setPackVersion(new Version("3.4.5")); + packet.chunkIndex = 6; + packet.encode(); + packet.getUnsignedVarInt(); + packet.decode(); + assertEquals(new UUID(1,2), packet.getPackId()); + assertEquals(new Version("3.4.5"), packet.getPackVersion()); + assertEquals(6, packet.chunkIndex); + } +} diff --git a/src/test/java/cn/nukkit/network/protocol/ResourcePackDataInfoPacketTest.java b/src/test/java/cn/nukkit/network/protocol/ResourcePackDataInfoPacketTest.java new file mode 100644 index 00000000000..0bc7ad38fb0 --- /dev/null +++ b/src/test/java/cn/nukkit/network/protocol/ResourcePackDataInfoPacketTest.java @@ -0,0 +1,36 @@ +package cn.nukkit.network.protocol; + +import it.unimi.dsi.fastutil.bytes.ByteArrayList; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.powernukkit.version.Version; + +import java.util.UUID; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class ResourcePackDataInfoPacketTest { + + ResourcePackDataInfoPacket packet; + + @BeforeEach + void setUp() { + packet = new ResourcePackDataInfoPacket(); + } + + @Test + void encodeDecode() { + packet.sha256 = new byte[]{1,2,3}; + packet.encode(); + packet.getUnsignedVarInt(); + packet.decode(); + assertEquals(new ByteArrayList(new byte[]{1, 2, 3}), new ByteArrayList(packet.sha256)); + packet.packId = new UUID(1,2); + packet.setPackVersion(new Version("3.4.5")); + packet.encode(); + packet.getUnsignedVarInt(); + packet.decode(); + assertEquals(new UUID(1, 2), packet.packId); + assertEquals(new Version("3.4.5"), packet.getPackVersion()); + } +} diff --git a/src/test/java/cn/nukkit/network/protocol/ResourcePacksInfoPacketTest.java b/src/test/java/cn/nukkit/network/protocol/ResourcePacksInfoPacketTest.java new file mode 100644 index 00000000000..814960efd23 --- /dev/null +++ b/src/test/java/cn/nukkit/network/protocol/ResourcePacksInfoPacketTest.java @@ -0,0 +1,66 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2021 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package cn.nukkit.network.protocol; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.resourcepacks.ResourcePack; +import lombok.val; +import org.junit.jupiter.api.Test; + +import java.util.Arrays; +import java.util.Collections; +import java.util.UUID; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + +/** + * @author joserobjr + * @since 2021-07-13 + */ +@PowerNukkitOnly +@Since("1.5.2.0-PN") +class ResourcePacksInfoPacketTest { + @Test + void encodeDecode() { + val resourcePack = mock(ResourcePack.class); + when(resourcePack.getPackId()).thenReturn(UUID.randomUUID()); + when(resourcePack.getPackVersion()).thenReturn("1.0"); + when(resourcePack.getPackSize()).thenReturn(1000); + + val packet = new ResourcePacksInfoPacket(); + packet.setBehaviourPackEntries(new ResourcePack[]{resourcePack}); + packet.setResourcePackEntries(new ResourcePack[]{resourcePack}); + packet.setForcedToAccept(true); + packet.setForcingServerPacksEnabled(true); + packet.setScriptingEnabled(true); + packet.encode(); + packet.decode(); + + assertTrue(packet.isForcedToAccept()); + assertTrue(packet.isScriptingEnabled()); + assertTrue(packet.isForcingServerPacksEnabled()); + + assertEquals(Collections.singletonList(resourcePack), Arrays.asList(packet.getBehaviourPackEntries())); + assertEquals(Collections.singletonList(resourcePack), Arrays.asList(packet.getResourcePackEntries())); + } +} diff --git a/src/test/java/cn/nukkit/network/protocol/SetTitlePacketTest.java b/src/test/java/cn/nukkit/network/protocol/SetTitlePacketTest.java new file mode 100644 index 00000000000..cedec985048 --- /dev/null +++ b/src/test/java/cn/nukkit/network/protocol/SetTitlePacketTest.java @@ -0,0 +1,76 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2021 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package cn.nukkit.network.protocol; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.network.protocol.SetTitlePacket.TitleAction; +import lombok.val; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.*; + +/** + * @author joserobjr + * @since 2021-07-13 + */ +@PowerNukkitOnly +@Since("1.5.2.0-PN") +class SetTitlePacketTest { + @Test + void encodeDecode() { + val packet = new SetTitlePacket(); + packet.setTitleAction(TitleAction.SET_TITLE_MESSAGE); + packet.setText("text"); + packet.setFadeInTime(1); + packet.setFadeOutTime(2); + packet.setStayTime(3); + packet.setXuid("xuid"); + packet.setPlatformOnlineId("poid"); + packet.encode(); + + val packet2 = new SetTitlePacket(); + packet2.setBuffer(packet.getBuffer()); + packet2.getUnsignedVarInt(); + packet2.decode(); + + assertEquals(TitleAction.SET_TITLE_MESSAGE, packet2.getTitleAction()); + assertEquals("text", packet2.getText()); + assertEquals(1, packet2.getFadeInTime()); + assertEquals(2, packet2.getFadeOutTime()); + assertEquals(3, packet2.getStayTime()); + assertEquals("xuid", packet2.getXuid()); + assertEquals("poid", packet2.getPlatformOnlineId()); + assertTrue(packet2.feof()); + } + + @Test + void badType() { + val packet = new SetTitlePacket(); + packet.type = -1; + assertThrows(UnsupportedOperationException.class, packet::getTitleAction); + + val values = TitleAction.values(); + packet.type = values.length; + assertThrows(UnsupportedOperationException.class, packet::getTitleAction); + + packet.type = values.length - 1; + assertEquals(values[values.length - 1], packet.getTitleAction()); + } +} diff --git a/src/test/java/cn/nukkit/network/protocol/SimulationTypePacketTest.java b/src/test/java/cn/nukkit/network/protocol/SimulationTypePacketTest.java new file mode 100644 index 00000000000..3bbadc5cede --- /dev/null +++ b/src/test/java/cn/nukkit/network/protocol/SimulationTypePacketTest.java @@ -0,0 +1,51 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2021 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package cn.nukkit.network.protocol; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.network.protocol.SimulationTypePacket.SimulationType; +import lombok.val; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; + +/** + * @author joserobjr + * @since 2021-07-13 + */ +@PowerNukkitOnly +@Since("1.5.2.0-PN") +class SimulationTypePacketTest { + @Test + void encodeDecode() { + val packet = new SimulationTypePacket(); + packet.setSimulationType(SimulationType.EDITOR); + packet.encode(); + + val packet2 = new SimulationTypePacket(); + packet2.setBuffer(packet.getBuffer()); + packet2.getUnsignedVarInt(); + packet2.decode(); + + assertEquals(SimulationType.EDITOR, packet2.getSimulationType()); + assertTrue(packet2.feof()); + } +} diff --git a/src/test/java/cn/nukkit/network/protocol/SyncEntityPropertyPacketTest.java b/src/test/java/cn/nukkit/network/protocol/SyncEntityPropertyPacketTest.java new file mode 100644 index 00000000000..78a7e7b17ec --- /dev/null +++ b/src/test/java/cn/nukkit/network/protocol/SyncEntityPropertyPacketTest.java @@ -0,0 +1,51 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2021 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package cn.nukkit.network.protocol; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.nbt.tag.CompoundTag; +import lombok.val; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; + +/** + * @author joserobjr + * @since 2021-07-13 + */ +@PowerNukkitOnly +@Since("1.5.2.0-PN") +class SyncEntityPropertyPacketTest { + @Test + void encodeDecode() { + val packet = new SyncEntityPropertyPacket(); + packet.setData(new CompoundTag("A")); + packet.encode(); + + val packet2 = new SyncEntityPropertyPacket(); + packet2.setBuffer(packet.getBuffer()); + packet2.getUnsignedVarInt(); + packet2.decode(); + + assertEquals(new CompoundTag("A"), packet2.getData()); + assertTrue(packet2.feof()); + } +} diff --git a/src/test/java/cn/nukkit/potion/PotionTest.java b/src/test/java/cn/nukkit/potion/PotionTest.java new file mode 100644 index 00000000000..42074f6f3a9 --- /dev/null +++ b/src/test/java/cn/nukkit/potion/PotionTest.java @@ -0,0 +1,31 @@ +package cn.nukkit.potion; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author joserobjr + * @since 2021-12-19 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class PotionTest { + @Test + void names() { + assertEquals("Water Potion", Potion.getPotion(Potion.WATER).getName()); + assertEquals("Mundane Potion", Potion.getPotion(Potion.MUNDANE).getName()); + assertEquals("Mundane Potion II", Potion.getPotion(Potion.MUNDANE_II).getName()); + assertEquals("Thick Potion", Potion.getPotion(Potion.THICK).getName()); + assertEquals("Awkward Potion", Potion.getPotion(Potion.AWKWARD).getName()); + assertEquals("Potion", new Potion(100000).getName()); + assertEquals("Potion", new Potion(100000).getName()); + assertEquals("Potion of the Turtle Master II", Potion.getPotion(Potion.TURTLE_MASTER_II).getName()); + assertEquals("Potion of Slowness IV", Potion.getPotion(Potion.SLOWNESS_IV).getName()); + } +} diff --git a/src/test/java/cn/nukkit/resourcepacks/ResourcePackManagerTest.java b/src/test/java/cn/nukkit/resourcepacks/ResourcePackManagerTest.java new file mode 100644 index 00000000000..c0b118c3aba --- /dev/null +++ b/src/test/java/cn/nukkit/resourcepacks/ResourcePackManagerTest.java @@ -0,0 +1,42 @@ +package cn.nukkit.resourcepacks; + +import org.iq80.leveldb.util.FileUtils; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; + +import static org.junit.jupiter.api.Assertions.*; + +@ExtendWith(PowerNukkitExtension.class) +class ResourcePackManagerTest { + + ResourcePackManager resourcePackManager; + Path temp; + + @BeforeEach + void setUp() throws IOException { + temp = Files.createTempDirectory("ResourcePackManagerTest_"); + resourcePackManager = new ResourcePackManager(temp.toFile()); + } + + @AfterEach + void tearDown() { + FileUtils.deleteRecursively(temp.toFile()); + } + + @Test + void maxChunkSize() { + assertEquals(1024*100, resourcePackManager.getMaxChunkSize()); + resourcePackManager.setMaxChunkSize(1024); + assertEquals(1024, resourcePackManager.getMaxChunkSize()); + ResourcePackManager other = new ResourcePackManager(temp.toFile()); + assertEquals(1024*100, other.getMaxChunkSize()); + assertEquals(1024, resourcePackManager.getMaxChunkSize()); + } +} diff --git a/src/test/java/cn/nukkit/test/ThrowingFunction.java b/src/test/java/cn/nukkit/test/ThrowingFunction.java new file mode 100644 index 00000000000..e5eb3c49984 --- /dev/null +++ b/src/test/java/cn/nukkit/test/ThrowingFunction.java @@ -0,0 +1,6 @@ +package cn.nukkit.test; + +@FunctionalInterface +public interface ThrowingFunction { + R apply(T t) throws Throwable; +} diff --git a/src/test/java/cn/nukkit/utils/BannerPatternTest.java b/src/test/java/cn/nukkit/utils/BannerPatternTest.java new file mode 100644 index 00000000000..cd2cb70667e --- /dev/null +++ b/src/test/java/cn/nukkit/utils/BannerPatternTest.java @@ -0,0 +1,43 @@ +package cn.nukkit.utils; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.item.ItemBannerPattern; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author joserobjr + * @since 2021-12-19 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class BannerPatternTest { + ItemBannerPattern item; + @Test + void defaultName() { + item = new ItemBannerPattern(1000); + assertEquals("Banner Pattern", item.getName()); + } + + @Test + void types() { + item = new ItemBannerPattern(); + assertEquals(BannerPattern.Type.PATTERN_CREEPER, setAndReturnType(ItemBannerPattern.PATTERN_CREEPER_CHARGE)); + assertEquals(BannerPattern.Type.PATTERN_SKULL, setAndReturnType(ItemBannerPattern.PATTERN_SKULL_CHARGE)); + assertEquals(BannerPattern.Type.PATTERN_FLOWER, setAndReturnType(ItemBannerPattern.PATTERN_FLOWER_CHARGE)); + assertEquals(BannerPattern.Type.PATTERN_MOJANG, setAndReturnType(ItemBannerPattern.PATTERN_THING)); + assertEquals(BannerPattern.Type.PATTERN_BRICK, setAndReturnType(ItemBannerPattern.PATTERN_FIELD_MASONED)); + assertEquals(BannerPattern.Type.PATTERN_CURLY_BORDER, setAndReturnType(ItemBannerPattern.PATTERN_BORDURE_INDENTED)); + assertEquals(BannerPattern.Type.PATTERN_SNOUT, setAndReturnType(ItemBannerPattern.PATTERN_SNOUT)); + } + + BannerPattern.Type setAndReturnType(int damage) { + item.setDamage(damage); + return item.getPatternType(); + } +} diff --git a/src/test/java/cn/nukkit/utils/BinaryStreamTest.java b/src/test/java/cn/nukkit/utils/BinaryStreamTest.java new file mode 100644 index 00000000000..7b002a1f626 --- /dev/null +++ b/src/test/java/cn/nukkit/utils/BinaryStreamTest.java @@ -0,0 +1,96 @@ +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2021 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package cn.nukkit.utils; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.block.BlockID; +import cn.nukkit.blockstate.BlockState; +import cn.nukkit.entity.data.Skin; +import cn.nukkit.item.Item; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import java.util.Arrays; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author joserobjr + * @since 2021-07-14 + */ +@PowerNukkitOnly +@Since("1.5.2.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class BinaryStreamTest { + BinaryStream stream; + + @BeforeEach + void setUp() { + stream = new BinaryStream(); + } + + @Test + void putSlotGetSlotNoTag() { + Item item = new Item(1000, 0, 1, "Test"); + stream.putSlot(item); + stream.setOffset(0); + Item read = stream.getSlot(); + assertEquals(item, read); + } + + @Test + void putSlotGetSlotBlock() { + Item item = BlockState.of(BlockID.SHULKER_BOX, 11).asItemBlock(); + stream.putSlot(item); + stream.setOffset(0); + Item read = stream.getSlot(); + assertEquals(item, read); + } + + @Test + void putSlotGetSlotCustomName() { + Item item = new Item(1000, 0, 1, "Test"); + item.setCustomName("CustomName"); + stream.putSlot(item); + stream.setOffset(0); + Item read = stream.getSlot(); + assertEquals(item, read); + } + + @Test + void addSkin() { + Skin skin = new Skin(); + skin.setSkinData(new byte[Skin.SINGLE_SKIN_SIZE]); + skin.setSkinId("id"); + skin.setCapeData(new byte[Skin.SINGLE_SKIN_SIZE]); + skin.setTrusted(true); + skin.setAnimationData("animation"); + skin.setCapeId("id"); + skin.getAnimations().add(new SkinAnimation(new SerializedImage(10, 10, new byte[10]), 1, 2, 1)); + skin.getPersonaPieces().add(new PersonaPiece("id", "type", "packId", true, "product")); + skin.getTintColors().add(new PersonaPieceTint("color", Arrays.asList("a", "b"))); + stream.putSkin(skin); + + Skin read = stream.getSkin(); + assertEquals(skin, read); + } +} diff --git a/src/test/java/cn/nukkit/utils/BinaryTest.java b/src/test/java/cn/nukkit/utils/BinaryTest.java new file mode 100644 index 00000000000..9dda1b8ff3b --- /dev/null +++ b/src/test/java/cn/nukkit/utils/BinaryTest.java @@ -0,0 +1,21 @@ +package cn.nukkit.utils; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author joserobjr + * @since 2021-12-13 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +class BinaryTest { + @Test + void writeReadLInt() { + final byte[] bytes = Binary.writeLInt(1065353216); + assertEquals(1065353216, Binary.readLInt(bytes)); + } +} diff --git a/src/test/java/cn/nukkit/utils/ConfigTest.java b/src/test/java/cn/nukkit/utils/ConfigTest.java new file mode 100644 index 00000000000..2ca7c35f151 --- /dev/null +++ b/src/test/java/cn/nukkit/utils/ConfigTest.java @@ -0,0 +1,88 @@ +package cn.nukkit.utils; + +import cn.nukkit.test.ThrowingFunction; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonPrimitive; +import com.google.gson.JsonSerializer; +import io.netty.util.internal.EmptyArrays; +import joptsimple.internal.Strings; +import lombok.var; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import java.io.ByteArrayInputStream; +import java.io.File; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; + +import static org.junit.jupiter.api.Assertions.*; + +class ConfigTest { + + Config config; + + String json; + + @BeforeEach + void setUp() { + config = new Config(); + } + + @Test + void loadAndSaveAsJson() throws IOException { + config = new Config(Config.JSON); + json = "{\"a\":5}"; + var gson = new GsonBuilder().disableHtmlEscaping() + .registerTypeAdapter(Double.class, (JsonSerializer) (src, typeOfSrc, context) -> { + if (src == src.longValue()) + return new JsonPrimitive(src.longValue()); + return new JsonPrimitive(src); + }).create(); + + boolean result = use(new ByteArrayInputStream(json.getBytes(StandardCharsets.UTF_8)), (in) -> config.loadAsJson(in, gson)); + assertTrue(result); + assertEquals(5.0, config.get("a")); + File temp = Files.createTempFile("ConfigTest_", ".json").toFile(); + try { + temp.deleteOnExit(); + assertTrue(config.saveAsJson(temp, false, gson)); + var lines = Files.readAllLines(temp.toPath()); + assertEquals(1, lines.size()); + assertEquals(json, lines.get(0)); + + assertTrue(config.save(temp, false)); + String content = Strings.join(Files.readAllLines(temp.toPath()), "\n"); + assertEquals("{\n \"a\": 5.0\n}", content); + } finally { + //noinspection ResultOfMethodCallIgnored + temp.delete(); + } + + // Set config.correct to false + temp = Files.createTempFile("ConfigTest_", ".zzz").toFile(); + try { + temp.deleteOnExit(); + config = new Config(-2); + assertThrows(IllegalStateException.class, ()-> config.save()); + config.load(temp.getAbsolutePath()); + + config.set("a", 5); + assertFalse(config.saveAsJson(temp, false, gson)); + assertFalse(config.save(temp)); + assertFalse(config.loadAsJson(null, gson)); + assertFalse(config.loadAsJson(new ByteArrayInputStream(EmptyArrays.EMPTY_BYTES), gson)); + } finally { + //noinspection ResultOfMethodCallIgnored + temp.delete(); + } + } + + R use(T obj, ThrowingFunction consumer) { + try(T resource = obj) { + return consumer.apply(resource); + } catch (Throwable e) { + throw new AssertionError(e); + } + } +} diff --git a/src/test/java/cn/nukkit/utils/DummyBossBarTest.java b/src/test/java/cn/nukkit/utils/DummyBossBarTest.java new file mode 100644 index 00000000000..85e3d3cedba --- /dev/null +++ b/src/test/java/cn/nukkit/utils/DummyBossBarTest.java @@ -0,0 +1,39 @@ +package cn.nukkit.utils; + +import cn.nukkit.Player; +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.powernukkit.tests.api.MockPlayer; +import org.powernukkit.tests.junit.jupiter.PowerNukkitExtension; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNull; + +/** + * @author joserobjr + * @since 2021-12-20 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@ExtendWith(PowerNukkitExtension.class) +class DummyBossBarTest { + @MockPlayer + Player player; + DummyBossBar bossBar; + + @Test + void color() { + bossBar = new DummyBossBar.Builder(player).color(BossBarColor.BLUE).text("Testing").build(); + assertEquals(BossBarColor.BLUE, bossBar.getColor()); + bossBar.setColor(BossBarColor.GREEN); + assertEquals(BossBarColor.GREEN, bossBar.getColor()); + bossBar.setColor(null); + assertNull(bossBar.getColor()); + bossBar.setColor(BossBarColor.RED); + assertEquals(BossBarColor.RED, bossBar.getColor()); + bossBar.setColor(BossBarColor.RED); + assertEquals(BossBarColor.RED, bossBar.getColor()); + } +} diff --git a/src/test/java/cn/nukkit/utils/HumanStringComparatorTest.java b/src/test/java/cn/nukkit/utils/HumanStringComparatorTest.java new file mode 100644 index 00000000000..f6825f4cd3d --- /dev/null +++ b/src/test/java/cn/nukkit/utils/HumanStringComparatorTest.java @@ -0,0 +1,82 @@ +package cn.nukkit.utils; + +import org.junit.jupiter.api.Test; +import org.opentest4j.AssertionFailedError; + +import static org.junit.jupiter.api.Assertions.*; + +/** + * @author joserobjr + * @since 2021-09-25 + */ +class HumanStringComparatorTest { + private final HumanStringComparator comparator = HumanStringComparator.getInstance(); + + @SuppressWarnings("EqualsWithItself") + @Test + void pillars() { + assertEquals(-1, comparator.compare("minecraft:basalt;pillar_axis=x", "minecraft:basalt;pillar_axis=y")); + assertEquals(0, comparator.compare("minecraft:basalt;pillar_axis=y", "minecraft:basalt;pillar_axis=y")); + assertEquals(1, comparator.compare("minecraft:basalt;pillar_axis=z", "minecraft:basalt;pillar_axis=y")); + } + + @SuppressWarnings("EqualsWithItself") + @Test + void compare() { + assertNegative(comparator.compare("-9", "9")); + assertNegative(comparator.compare("32", "325_0")); + assertNegative(comparator.compare("33", "325_0")); + assertNegative(comparator.compare("325", "325_0")); + assertZero(comparator.compare("325_0", "325_0")); + assertPositive(comparator.compare("326", "325_0")); + } + + @Test + void coralFan() { + assertNegative(comparator.compare( + "minecraft:coral_fan_hang;coral_hang_type_bit=0;coral_direction=0;dead_bit=0", + "minecraft:coral_fan_hang3;coral_hang_type_bit=1;coral_direction=3;dead_bit=1" + )); + assertNegative(comparator.compare( + "minecraft:coral_fan_hang2;coral_hang_type_bit=0;coral_direction=0;dead_bit=0", + "minecraft:coral_fan_hang3;coral_hang_type_bit=1;coral_direction=3;dead_bit=1" + )); + } + + @Test + void omitted() { + assertPositive(comparator.compare("a1b", "ab")); + assertNegative(comparator.compare("ab", "a1b")); + } + + @Test + void negative() { + assertNegative(comparator.compare("a-1", "a1")); + assertPositive(comparator.compare("a1", "a-1")); + + assertNegative(comparator.compare("a-2", "a-1")); + assertPositive(comparator.compare("a-1", "a-2")); + } + + @Test + void empty() { + assertNegative(comparator.compare("", "1")); + assertPositive(comparator.compare("1", "")); + } + + private void assertNegative(int actual) { + if (actual >= 0) { + throw new AssertionFailedError("Expected a negative value, got " + actual, -1, actual); + } + } + + private void assertPositive(int actual) { + if (actual <= 0) { + throw new AssertionFailedError("Expected a positive value, got " + actual, 1, actual); + } + } + + private void assertZero(int actual) { + assertEquals(0 , actual); + } +} diff --git a/src/test/java/org/powernukkit/HumanStringComparator.java b/src/test/java/cn/nukkit/utils/UtilsTest.java similarity index 56% rename from src/test/java/org/powernukkit/HumanStringComparator.java rename to src/test/java/cn/nukkit/utils/UtilsTest.java index 2885a1094df..3df19fe06b3 100644 --- a/src/test/java/org/powernukkit/HumanStringComparator.java +++ b/src/test/java/cn/nukkit/utils/UtilsTest.java @@ -16,26 +16,26 @@ * along with this program. If not, see . */ -package org.powernukkit; +package cn.nukkit.utils; -import java.util.Comparator; +import org.junit.jupiter.api.Test; -public class HumanStringComparator implements Comparator { - public int compare(String o1, String o2) { +import static org.junit.jupiter.api.Assertions.*; - String o1StringPart = o1.replaceAll("\\d", ""); - String o2StringPart = o2.replaceAll("\\d", ""); - - - if (o1StringPart.equalsIgnoreCase(o2StringPart)) { - return extractInt(o1) - extractInt(o2); - } - return o1.compareTo(o2); - } +/** + * @author joserobjr + * @since 2021-06-29 + */ +class UtilsTest { - int extractInt(String s) { - String num = s.replaceAll("\\D", ""); - // return 0 if no digits found - return num.isEmpty() ? 0 : Integer.parseInt(num); + @Test + void isNumeric() { + assertFalse(Utils.isInteger(null)); + assertFalse(Utils.isInteger("")); + assertFalse(Utils.isInteger("-")); + assertTrue(Utils.isInteger("-3")); + assertFalse(Utils.isInteger("-3a")); + assertTrue(Utils.isInteger("5")); + assertFalse(Utils.isInteger("!")); } } diff --git a/src/test/java/org/powernukkit/dumps/ItemIdDumper.java b/src/test/java/org/powernukkit/dumps/ItemIdDumper.java index 1176e85b8cf..81ab275b139 100644 --- a/src/test/java/org/powernukkit/dumps/ItemIdDumper.java +++ b/src/test/java/org/powernukkit/dumps/ItemIdDumper.java @@ -21,13 +21,13 @@ import cn.nukkit.Server; import cn.nukkit.api.PowerNukkitOnly; import cn.nukkit.api.Since; +import cn.nukkit.utils.HumanStringComparator; import com.google.common.base.Charsets; import com.google.gson.Gson; import com.google.gson.JsonArray; import com.google.gson.JsonElement; import com.google.gson.JsonObject; import lombok.extern.log4j.Log4j2; -import org.powernukkit.HumanStringComparator; import java.io.*; import java.util.Map; @@ -82,7 +82,7 @@ public static void main(String[] args) throws IOException { } } - try (FileWriter writer = new FileWriter("item-id-dump.properties")) { + try (FileWriter writer = new FileWriter("dumps/item-id-dump.properties")) { for (Map.Entry entry : itemIds.entrySet()) { writer.write(entry.getKey()); writer.write('='); @@ -91,7 +91,7 @@ public static void main(String[] args) throws IOException { } } - try (FileWriter writer = new FileWriter("block-id-dump-from-items.properties")) { + try (FileWriter writer = new FileWriter("dumps/block-id-dump-from-items.properties")) { for (Map.Entry entry : blockIds.entrySet()) { writer.write(entry.getKey()); writer.write('='); diff --git a/src/test/java/org/powernukkit/tools/RuntimeBlockStateDumper.java b/src/test/java/org/powernukkit/dumps/RuntimeBlockStateDumper.java similarity index 92% rename from src/test/java/org/powernukkit/tools/RuntimeBlockStateDumper.java rename to src/test/java/org/powernukkit/dumps/RuntimeBlockStateDumper.java index fca505e275b..91796036cc6 100644 --- a/src/test/java/org/powernukkit/tools/RuntimeBlockStateDumper.java +++ b/src/test/java/org/powernukkit/dumps/RuntimeBlockStateDumper.java @@ -1,6 +1,6 @@ /* * https://PowerNukkit.org - The Nukkit you know but Powerful! - * Copyright (C) 2020 José Roberto de Araújo Júnior + * Copyright (C) 2021 José Roberto de Araújo Júnior * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -16,7 +16,7 @@ * along with this program. If not, see . */ -package org.powernukkit.tools; +package org.powernukkit.dumps; import cn.nukkit.Server; import cn.nukkit.nbt.NBTIO; @@ -99,7 +99,7 @@ public static void main(String[] args) throws IOException { states.put(builder.toString(), block); } - try (FileWriter fos = new FileWriter("runtime_block_states.dat.dump.txt"); BufferedWriter bos = new BufferedWriter(fos)) { + try (FileWriter fos = new FileWriter("dumps/runtime_block_states.dat.dump.txt"); BufferedWriter bos = new BufferedWriter(fos)) { bos.write("# WARNING! Don't edit this file! It's automatically regenerated!"); bos.newLine(); bos.newLine(); for (Map.Entry entry : states.entrySet()) { @@ -142,8 +142,8 @@ public static void main(String[] args) throws IOException { SortedSet properties = new TreeSet<>(humanStringComparator); - try(FileWriter iniFW = new FileWriter("block-states.ini"); BufferedWriter iniBuff = new BufferedWriter(iniFW); - FileWriter txtFW = new FileWriter("simple-blocks-nukkit.txt"); BufferedWriter txtBuff = new BufferedWriter(txtFW)) { + try(FileWriter iniFW = new FileWriter("dumps/block-states.ini"); BufferedWriter iniBuff = new BufferedWriter(iniFW); + FileWriter txtFW = new FileWriter("dumps/simple-blocks-nukkit.txt"); BufferedWriter txtBuff = new BufferedWriter(txtFW)) { iniBuff.write("# WARNING! Don't edit this file! It's automatically regenerated!"); iniBuff.newLine(); iniBuff.newLine(); txtBuff.write("# WARNING! Don't edit this file! It's automatically regenerated!"); @@ -163,7 +163,7 @@ public static void main(String[] args) throws IOException { } } - try(FileWriter iniFW = new FileWriter("block-properties.ini"); BufferedWriter iniBuff = new BufferedWriter(iniFW)) { + try(FileWriter iniFW = new FileWriter("dumps/block-properties.ini"); BufferedWriter iniBuff = new BufferedWriter(iniFW)) { iniBuff.write("# WARNING! Don't edit this file! It's automatically regenerated!"); iniBuff.newLine(); iniBuff.newLine(); iniBuff.write("[properties]"); diff --git a/src/test/java/org/powernukkit/tools/AnnotationProblemScanner.java b/src/test/java/org/powernukkit/tools/AnnotationProblemScanner.java new file mode 100644 index 00000000000..151ca288bee --- /dev/null +++ b/src/test/java/org/powernukkit/tools/AnnotationProblemScanner.java @@ -0,0 +1,491 @@ +package org.powernukkit.tools; + +import cn.nukkit.api.PowerNukkitOnly; +import cn.nukkit.api.Since; +import cn.nukkit.utils.HumanStringComparator; +import com.google.common.base.Preconditions; +import com.google.gson.GsonBuilder; +import io.netty.util.internal.EmptyArrays; +import lombok.*; +import lombok.extern.log4j.Log4j2; +import spoon.Launcher; +import spoon.MavenLauncher; +import spoon.reflect.CtModel; +import spoon.reflect.declaration.*; +import spoon.reflect.reference.CtTypeReference; +import spoon.support.compiler.SpoonPom; +import spoon.support.reflect.declaration.CtConstructorImpl; + +import java.io.File; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.*; +import java.util.function.Function; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +/** + * @author joserobjr + * @since 2021-12-08 + */ +@PowerNukkitOnly +@Since("1.6.0.0-PN") +@Log4j2 +public class AnnotationProblemScanner { + private static final String NEED_TO_ADD_POWERNUKKIT_ONLY = "Need to add @PowerNukkitOnly to "; + private static final String NEED_TO_REMOVE_POWERNUKKIT_ONLY = "Need to remove @PowerNukkitOnly from "; + + Map> nukkitTypes; + + public static void main(String[] args) { + Preconditions.checkArgument(args.length == 0 || args.length == 1, "Invalid arguments"); + Path clourburstNukkitSourceCode = Paths.get(args.length == 1? args[0] : "../../org.cloudburst/Nukkit"); + + new AnnotationProblemScanner().execute( + clourburstNukkitSourceCode, + Paths.get(".") + ); + } + + + private static boolean isApi(CtModifiable obj) { + if (obj instanceof CtMethod) { + CtMethod method = (CtMethod) obj; + if (method.getSimpleName().equals("canEqual") && obj.hasAnnotation(Generated.class)) { + return false; + } + if (method.getDeclaringType().isAnnotationType()) { + return true; + } + } + if (obj.isPublic() || obj.isProtected()) { + return true; + } + if (obj instanceof CtField) { + CtType declaringType = ((CtField) obj).getDeclaringType(); + String fieldName = ((CtField) obj).getSimpleName(); + fieldName = fieldName.substring(0, 1).toUpperCase(Locale.ENGLISH) + fieldName.substring(1); + CtMethod getter = declaringType.getMethod("get" + fieldName); + if (getter == null || !getter.hasAnnotation(Generated.class) || !isApi(getter)) { + getter = declaringType.getMethod("is" + fieldName); + } + if (getter != null && getter.hasAnnotation(Generated.class) && isApi(getter)) { + return true; + } + CtMethod setter = declaringType.getMethod("set" + fieldName, ((CtField) obj).getType()); + if (setter != null && setter.hasAnnotation(Generated.class)) { + return isApi(setter); + } + } + return false; + } + + private boolean isPowerNukkitOnlyExecutable(CtTypedElement powerNukkitExecutable, CtType nukkitType) { + if (powerNukkitExecutable instanceof CtMethod) { + return isPowerNukkitOnlyMethod((CtMethod) powerNukkitExecutable, nukkitType); + } else { + return isPowerNukkitOnlyConstructor((CtConstructorImpl) powerNukkitExecutable, nukkitType); + } + } + + private boolean isPowerNukkitOnlyMethod(CtMethod powerNukkitMethod, CtType nukkitType) { + String qualifiedName = powerNukkitMethod.getDeclaringType().getQualifiedName(); + if (qualifiedName.startsWith("java.")) { + return false; + } + if (nukkitType == null) { + nukkitType = nukkitTypes.get(qualifiedName); + } + if (nukkitType == null) { + return true; + } + String name = powerNukkitMethod.getSimpleName(); + CtTypeReference[] parameters = powerNukkitMethod.getParameters().stream().map(CtParameter::getType).toArray(CtTypeReference[]::new); + CtMethod nkMethod = nukkitType.getMethod(name, parameters); + if (nkMethod != null) { + return !isApi(nkMethod); + } + + String[] parameterTypes = Arrays.stream(parameters).map(CtTypeInformation::getQualifiedName).toArray(String[]::new); + return nukkitType.getAllMethods().stream() + .filter(AnnotationProblemScanner::isApi) + .noneMatch(nukkitMethod -> + name.equals(nukkitMethod.getSimpleName()) + && Arrays.equals(parameterTypes, + nukkitMethod.getParameters().stream() + .map(CtParameter::getType) + .map(CtTypeInformation::getQualifiedName) + .toArray(String[]::new) + ) + ); + } + + private boolean isPowerNukkitOnlyConstructor(CtConstructorImpl constructor, CtType nukkitType) { + if (nukkitType == null) { + nukkitType = nukkitTypes.get(constructor.getDeclaringType().getQualifiedName()); + } + if (!(nukkitType instanceof CtClass)) { + return true; + } + CtClass nukkitClass = (CtClass) nukkitType; + CtTypeReference[] parameters = constructor.getParameters().stream().map(CtParameter::getType).toArray(CtTypeReference[]::new); + CtConstructorImpl nkConstructor = (CtConstructorImpl) nukkitClass.getConstructor(parameters); + if (nkConstructor != null) { + return !isApi(nkConstructor); + } + + String[] parameterTypes = Arrays.stream(parameters).map(CtTypeInformation::getQualifiedName).toArray(String[]::new); + return nukkitClass.getConstructors().stream() + .filter(AnnotationProblemScanner::isApi) + .noneMatch(nukkitConstructor -> Arrays.equals(parameterTypes, + nukkitConstructor.getParameters().stream() + .map(CtParameter::getType) + .map(CtTypeInformation::getQualifiedName) + .toArray(String[]::new) + ) + ); + } + + @SneakyThrows + private void cmd(Path dir, String... command) { + int code = new ProcessBuilder() + .command(command) + .directory(dir.toAbsolutePath().normalize().toFile()) + .redirectError(ProcessBuilder.Redirect.INHERIT) + .redirectOutput(ProcessBuilder.Redirect.INHERIT) + .start() + .waitFor(); + Preconditions.checkArgument(code == 0, "Command Failed"); + } + + private void mvn(Path src, String... args) { + List parts = new ArrayList<>(); + if (System.getProperty("os.name").toLowerCase(Locale.ENGLISH).contains("windows")) { + parts.add(src.resolve("mvnw.cmd").toAbsolutePath().normalize().toString()); + } else { + parts.add("/bin/env"); + parts.add("sh"); + parts.add(src.resolve("mvnw").toAbsolutePath().normalize().toString()); + } + parts.addAll(Arrays.asList(args)); + cmd(src, parts.toArray(EmptyArrays.EMPTY_STRINGS)); + } + + private void git(Path src, String... args) { + List parts = new ArrayList<>(); + if (!System.getProperty("os.name").toLowerCase(Locale.ENGLISH).contains("windows")) { + parts.add("/bin/env"); + } + parts.add("git"); + parts.addAll(Arrays.asList(args)); + cmd(src, parts.toArray(EmptyArrays.EMPTY_STRINGS)); + } + + private void delombok(Path src) { + log.info("Delomboking " + src.toAbsolutePath().normalize()); + mvn(src, "clean", "lombok:delombok", "dependency:build-classpath", "-Dmdep.outputFile=target/classpath.txt"); + } + + private void delombokPatch(Path src) { + log.info("Adding delombok plugin to " + src.toAbsolutePath().normalize()); + Path nukkitPatch = Paths.get("src/test/resources/org/powernukkit/tools/nukkit.patch"); + git(src, "reset", "--hard", "HEAD"); + git(src, "apply", "-3", nukkitPatch.toAbsolutePath().normalize().toString()); + } + + @SneakyThrows + private Launcher createLauncher(Path src) { + log.info("Creating launcher for " + src.toAbsolutePath().normalize()); + Launcher launcher = new Launcher(); + SpoonPom pom = new SpoonPom(src.toAbsolutePath().normalize().toString(), MavenLauncher.SOURCE_TYPE.APP_SOURCE, launcher.getEnvironment()); + + List sourceDirectories = new ArrayList<>(pom.getSourceDirectories()); + File srcMainJava = src.resolve("src/main/java").toAbsolutePath().normalize().toFile(); + sourceDirectories.removeIf(file -> file.getAbsoluteFile().equals(srcMainJava)); + sourceDirectories.add(src.resolve("target/delombok").toAbsolutePath().normalize().toFile()); + sourceDirectories.forEach(file -> launcher.addInputResource(file.toPath().toAbsolutePath().normalize().toString())); + + String[] classpath = String.join("\n", Files.readAllLines(src.resolve("target/classpath.txt"))).split(File.pathSeparator); + log.info("Classpath: " + Arrays.asList(classpath)); + + launcher.getEnvironment().setNoClasspath(false); + launcher.getModelBuilder().setSourceClasspath(classpath); + + launcher.getEnvironment().setComplianceLevel(pom.getSourceVersion()); + + return launcher; + } + + @SneakyThrows + private void execute(Path nukkitSrc, Path powerNukkitSrc) { + delombokPatch(nukkitSrc); + delombok(nukkitSrc); + Launcher nukkitLauncher = createLauncher(nukkitSrc); + + log.info("Building " + powerNukkitSrc.toAbsolutePath().normalize()); + mvn(powerNukkitSrc, + "clean", "lombok:delombok", "dependency:build-classpath", "-Dmdep.outputFile=target/classpath.txt", + "compile", "compiler:testCompile"); + Launcher powerNukkitLauncher = createLauncher(powerNukkitSrc); + + log.info("Builing model for " + nukkitSrc.toAbsolutePath().normalize()); + CtModel nukkitModel = nukkitLauncher.buildModel(); + + log.info("Building model for " + powerNukkitSrc.toAbsolutePath().normalize()); + CtModel powerNukkitModel = powerNukkitLauncher.buildModel(); + + log.info("Caching Nukkit types"); + nukkitTypes = nukkitModel.getAllTypes().stream().collect(Collectors.toMap(CtType::getQualifiedName, Function.identity())); + + log.info("Verifying annotations..."); + Map neededClassChanges = powerNukkitModel.getAllTypes().parallelStream() + .map(type-> checkType(type, nukkitTypes)) + .peek(NeededClassChanges::close) + .filter(NeededClassChanges::isNotEmpty) + .collect(Collectors.toMap(NeededClassChanges::getName, Function.identity(), + (a,b)-> { throw new UnsupportedOperationException("Can't combine " + a + " with " + b); }, + ()-> new TreeMap<>(HumanStringComparator.getInstance()))); + + Path jsonFile = Paths.get("dumps/needed-class-changes.json").toAbsolutePath().normalize(); + log.info("Creating ..." + jsonFile); + neededClassChanges.values().forEach(NeededClassChanges::removeName); + Files.write(jsonFile, + new GsonBuilder().setPrettyPrinting().disableHtmlEscaping().create() + .toJson(neededClassChanges) + .getBytes(StandardCharsets.UTF_8) + ); + + log.info("Process completed"); + } + + private NeededClassChanges checkType(CtType powerNukkitType, Map> nukkitTypes) { + CtType nukkitType = nukkitTypes.get(powerNukkitType.getQualifiedName()); + if (nukkitType == null) { + return addPowerNukkitOnlyToEverything(powerNukkitType); + } else { + return compareTypes(powerNukkitType, nukkitType); + } + } + + private NeededClassChanges addPowerNukkitOnlyToEverything(CtType powerNukkitType) { + NeededClassChanges neededClassChanges = new NeededClassChanges(powerNukkitType.getQualifiedName()); + needsPowerNukkitOnly(neededClassChanges, powerNukkitType); + + Set> powerNukkitOnlyFields = powerNukkitType.getFields().stream() + .filter(AnnotationProblemScanner::isApi) + .peek(field -> needsPowerNukkitOnly(neededClassChanges, field)) + .collect(Collectors.toSet()); + + checkForMissingOverrides(neededClassChanges, powerNukkitType); + + Set> powerNukkitOnlyMethods = powerNukkitType.getMethods().stream() + .filter(AnnotationProblemScanner::isApi) + .filter(method -> method.isStatic() + || method.getTopDefinitions().isEmpty() + || method.getTopDefinitions().stream().allMatch(powerNukkitMethod -> isPowerNukkitOnlyMethod(powerNukkitMethod, null))) + .peek(method -> needsPowerNukkitOnly(neededClassChanges, method)) + .collect(Collectors.toSet()); + + constructorStream(powerNukkitType) + .filter(it -> isApi((CtModifiable) it)) + .forEachOrdered(method -> needsPowerNukkitOnly(neededClassChanges, method)); + + powerNukkitType.getFields().stream() + .filter(field -> !powerNukkitOnlyFields.contains(field)) + .forEachOrdered(field -> dontNeedsPowerNukkitOnly(neededClassChanges, field)); + + powerNukkitType.getMethods().stream() + .filter(method-> !powerNukkitOnlyMethods.contains(method)) + .forEachOrdered(method -> dontNeedsPowerNukkitOnly(neededClassChanges, method)); + + //powerNukkitType.getNestedTypes().forEach(this::addPowerNukkitOnlyToEverything); + return neededClassChanges; + } + + private NeededClassChanges compareTypes(CtType powerNukkitType, CtType nukkitType) { + final NeededClassChanges neededClassChanges = new NeededClassChanges(powerNukkitType.getQualifiedName()); + dontNeedsPowerNukkitOnly(neededClassChanges, powerNukkitType); + + List> powerNukkitOnlyFields = powerNukkitType.getFields().stream() + .filter(AnnotationProblemScanner::isApi) + .filter(powerNukkitField -> compareFields(powerNukkitField, nukkitType)) + .peek(field -> needsPowerNukkitOnly(neededClassChanges, field)) + .collect(Collectors.toList()); + + checkForMissingOverrides(neededClassChanges, powerNukkitType); + + List> powerNukkitOnlyMethods = + Stream.concat(powerNukkitType.getMethods().stream(), constructorStream(powerNukkitType)) + .filter(it -> isApi((CtModifiable) it)) + .filter(powerNukkitMethod -> isPowerNukkitOnlyExecutable(powerNukkitMethod, nukkitType)) + .peek(method -> needsPowerNukkitOnly(neededClassChanges, method)) + .collect(Collectors.toList()); + + powerNukkitType.getFields().stream() + .filter(field -> !powerNukkitOnlyFields.contains(field)) + .forEachOrdered(field -> dontNeedsPowerNukkitOnly(neededClassChanges, field)); + + Stream.concat(powerNukkitType.getMethods().stream(), constructorStream(powerNukkitType)) + .filter(method-> !powerNukkitOnlyMethods.contains(method)) + .forEachOrdered(method -> dontNeedsPowerNukkitOnly(neededClassChanges, method)); + + return neededClassChanges; + } + + private Stream> constructorStream(CtType type) { + if (type instanceof CtClass) { + return ((CtClass) type).getConstructors().stream().map(it -> (CtTypedElement) it); + } else { + return Stream.empty(); + } + } + + private boolean compareFields(CtField powerNukkitField, CtType nukkitType) { + CtField nukkitField = nukkitType.getField(powerNukkitField.getSimpleName()); + if (nukkitField == null || !isApi(nukkitField)) { + return true; + } + CtTypeReference nukkitFieldType = nukkitField.getType(); + CtTypeReference powerNukkitFieldType = powerNukkitField.getType(); + + boolean valid = false; + if (nukkitFieldType.isGenerics()) { + if (powerNukkitFieldType.isGenerics()) { + valid = nukkitFieldType.getSimpleName().equals(powerNukkitFieldType.getSimpleName()) && + nukkitFieldType.getTypeErasure().getQualifiedName().equals(powerNukkitFieldType.getTypeErasure().getQualifiedName()); + } + } else if (!powerNukkitFieldType.isGenerics()) { + valid = nukkitFieldType.getTypeDeclaration().getQualifiedName().equals(powerNukkitFieldType.getTypeDeclaration().getQualifiedName()); + } + if (!valid) { + log.error("Incompatible field declared at " + powerNukkitField.getDeclaringType().getQualifiedName() + "#" + powerNukkitField.getSimpleName()); + return true; + } + return false; + } + + private void checkForMissingOverrides(NeededClassChanges neededClassChanges, CtType powerNukkitType) { + powerNukkitType.getMethods().stream() + .filter(AnnotationProblemScanner::isApi) + .filter(method -> !method.isStatic()) + .filter(method -> !method.getTopDefinitions().isEmpty()) + .filter(method -> !method.hasAnnotation(Override.class)) + .filter(method -> !method.hasAnnotation(Generated.class)) + .map(this::missingOverride) + .forEachOrdered(neededClassChanges.addOverrideAnnotation::add); + } + + private String missingOverride(CtMethod method) { + String sig = methodString(method); + log.warn("Missing @Override at " + sig); + method.getFactory().Annotation().annotate(method, Override.class); + return sig; + } + + private String methodString(CtTypedElement method) { + return ((CtTypeMember) method).getDeclaringType().getQualifiedName() + "#" + ((CtNamedElement)method).getSimpleName() + + "(" + + getParameters(method).stream() + .map(param -> param.getType().getSimpleName()).collect(Collectors.joining(", ")) + + ")"; + } + + private List> getParameters(CtTypedElement method) { + if (method instanceof CtMethod) { + return ((CtMethod) method).getParameters(); + } else { + return ((CtConstructorImpl) method).getParameters(); + } + } + + private void needsPowerNukkitOnly(NeededClassChanges neededClassChanges, CtType type) { + if (!type.hasAnnotation(PowerNukkitOnly.class)) { + log.info(NEED_TO_ADD_POWERNUKKIT_ONLY + type.getQualifiedName()); + neededClassChanges.addPowerNukkitOnlyAnnotation.add(type.getQualifiedName()); + } + } + + private void needsPowerNukkitOnly(NeededClassChanges neededClassChanges, CtField field) { + if (!field.hasAnnotation(PowerNukkitOnly.class)) { + String sig = field.getDeclaringType().getQualifiedName() + "#" + field.getSimpleName(); + log.info(NEED_TO_ADD_POWERNUKKIT_ONLY + sig); + neededClassChanges.addPowerNukkitOnlyAnnotation.add(sig); + } + } + + private void needsPowerNukkitOnly(NeededClassChanges neededClassChanges, CtTypedElement method) { + if (!method.hasAnnotation(PowerNukkitOnly.class)) { + String sig = methodString(method); + log.info(NEED_TO_ADD_POWERNUKKIT_ONLY + sig); + neededClassChanges.addPowerNukkitOnlyAnnotation.add(sig); + } + } + + private void dontNeedsPowerNukkitOnly(NeededClassChanges neededClassChanges, CtType type) { + if (type.hasAnnotation(PowerNukkitOnly.class)) { + log.info(NEED_TO_REMOVE_POWERNUKKIT_ONLY + type.getQualifiedName()); + neededClassChanges.removePowerNukkitOnlyAnnotation.add(type.getQualifiedName()); + } + } + + private void dontNeedsPowerNukkitOnly(NeededClassChanges neededClassChanges, CtField field) { + if (field.hasAnnotation(PowerNukkitOnly.class)) { + String sig = field.getDeclaringType().getQualifiedName() + "#" + field.getSimpleName(); + log.info(NEED_TO_REMOVE_POWERNUKKIT_ONLY + sig); + neededClassChanges.removePowerNukkitOnlyAnnotation.add(sig); + } + } + + private void dontNeedsPowerNukkitOnly(NeededClassChanges neededClassChanges, CtTypedElement method) { + if (method.hasAnnotation(PowerNukkitOnly.class)) { + String sig = methodString(method); + log.info(NEED_TO_REMOVE_POWERNUKKIT_ONLY + sig); + neededClassChanges.removePowerNukkitOnlyAnnotation.add(sig); + } + } + + @Getter + static class NeededClassChanges { + private String name; + + private List addOverrideAnnotation = new ArrayList<>(); + private List addPowerNukkitOnlyAnnotation = new ArrayList<>(); + private List removePowerNukkitOnlyAnnotation = new ArrayList<>(); + + NeededClassChanges(String name) { + this.name = name; + } + + private boolean isEmpty() { + return isEmpty(addOverrideAnnotation) + && isEmpty(addPowerNukkitOnlyAnnotation) + && isEmpty(removePowerNukkitOnlyAnnotation); + } + + private boolean isNotEmpty() { + return !isEmpty(); + } + + private boolean isEmpty(List list) { + return list == null || list.isEmpty(); + } + + private void close() { + if (isEmpty(addOverrideAnnotation)) { + addOverrideAnnotation = null; + } + if (isEmpty(addPowerNukkitOnlyAnnotation)) { + addPowerNukkitOnlyAnnotation = null; + } + if (isEmpty(removePowerNukkitOnlyAnnotation)) { + removePowerNukkitOnlyAnnotation = null; + } + } + + private void removeName() { + name = null; + } + } +} diff --git a/src/test/java/org/powernukkit/tools/BlockStateReader.java b/src/test/java/org/powernukkit/tools/BlockStateReader.java deleted file mode 100644 index 21182b5e474..00000000000 --- a/src/test/java/org/powernukkit/tools/BlockStateReader.java +++ /dev/null @@ -1,104 +0,0 @@ -/* - * https://PowerNukkit.org - The Nukkit you know but Powerful! - * Copyright (C) 2020 José Roberto de Araújo Júnior - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -package org.powernukkit.tools; - -import cn.nukkit.Server; -import cn.nukkit.nbt.NBTIO; -import cn.nukkit.nbt.tag.CompoundTag; -import cn.nukkit.nbt.tag.ListTag; -import cn.nukkit.nbt.tag.Tag; - -import java.io.BufferedInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.nio.ByteOrder; -import java.util.*; -import java.util.stream.Collectors; -import java.util.stream.Stream; - -public class BlockStateReader { - public static void main(String[] args) { - Map> metaOverrides = new LinkedHashMap<>(); - try (InputStream stream = Server.class.getClassLoader().getResourceAsStream("runtime_block_states_overrides.dat")) { - if (stream == null) { - throw new AssertionError("Unable to locate block state nbt"); - } - - ListTag states; - try (BufferedInputStream buffered = new BufferedInputStream(stream)) { - states = NBTIO.read(buffered).getList("Overrides", CompoundTag.class); - } - - for (CompoundTag override : states.getAll()) { - if (override.contains("block") && override.contains("LegacyStates")) { - metaOverrides.put(override.getCompound("block").remove("version"), override.getList("LegacyStates", CompoundTag.class).getAll()); - } - } - - } catch (IOException e) { - throw new AssertionError(e); - } - - ListTag tags; - try (InputStream stream = Server.class.getClassLoader().getResourceAsStream("runtime_block_states.dat")) { - if (stream == null) { - throw new AssertionError("Unable to locate block state nbt"); - } - - //noinspection unchecked - tags = (ListTag) NBTIO.readTag(stream, ByteOrder.BIG_ENDIAN, false); - } catch (IOException e) { - throw new AssertionError(e); - } - - Set inspect = Stream.of( - "minecraft:light_block", "minecraft:wood" - ).collect(Collectors.toSet()); - - TreeMap blockStates = new TreeMap<>(); - for (CompoundTag state : tags.getAll()) { - StringBuilder data = new StringBuilder(); - //data.append(state.copy().remove("LegacyStates").toString()).append('\n'); - CompoundTag block = state.getCompound("block"); - if (!inspect.contains(block.getString("name"))) { - continue; - } - StringBuilder stateName = new StringBuilder(block.getString("name")); - for (Tag tag : block.getCompound("states").getAllTags()) { - stateName.append(';').append(tag.getName()).append('=').append(tag.parseValue()); - } - data.append(stateName.toString()).append('\n'); - List metas = state.getList("LegacyStates", CompoundTag.class).getAll().stream() - .map(t -> t.getInt("id") + ":" + t.getShort("val")) - .collect(Collectors.toList()); - data.append(metas.toString()).append('\n'); - List overrides = metaOverrides.get(block.copy().remove("version")); - if (overrides != null) { - List overrideList = overrides.stream() - .map(t -> t.getInt("id") + ":" + t.getShort("val")) - .collect(Collectors.toList()); - data.append(overrideList.toString()).append('\n'); - } - data.append("\n"); - blockStates.put(stateName.toString(), data.toString()); - } - - blockStates.values().forEach(System.out::print); - } -} diff --git a/src/test/java/org/powernukkit/tools/BlockStates.java b/src/test/java/org/powernukkit/tools/BlockStates.java deleted file mode 100644 index 666d143a63d..00000000000 --- a/src/test/java/org/powernukkit/tools/BlockStates.java +++ /dev/null @@ -1,187 +0,0 @@ -/* - * https://PowerNukkit.org - The Nukkit you know but Powerful! - * Copyright (C) 2020 José Roberto de Araújo Júnior - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -package org.powernukkit.tools; - -import cn.nukkit.Server; -import cn.nukkit.nbt.NBTIO; -import cn.nukkit.nbt.tag.CompoundTag; -import cn.nukkit.nbt.tag.ListTag; -import com.google.common.io.ByteStreams; - -import java.io.ByteArrayInputStream; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.nio.ByteOrder; -import java.util.LinkedHashMap; -import java.util.Map; - -public class BlockStates { - public static void main(String[] args) { - InputStream stream = Server.class.getClassLoader().getResourceAsStream("runtime_block_states.dat"); - if (stream == null) { - throw new AssertionError("Unable to locate block state nbt"); - } - ListTag overrides = new ListTag<>("Overrides"); - ListTag tag; - try { - //noinspection UnstableApiUsage - byte[] bytes = ByteStreams.toByteArray(stream); - //noinspection unchecked - tag = (ListTag) NBTIO.readTag(new ByteArrayInputStream(bytes), ByteOrder.BIG_ENDIAN, false); - - Map fullMap = new LinkedHashMap<>(); - - for (int i = 0; i < tag.size(); i++) { - CompoundTag compoundTag = tag.get(i); - fullMap.put(compoundTag.getCompound("block"), compoundTag); - } - - for (int i = 0; i < tag.size(); i++) { - CompoundTag compoundTag = tag.get(i); - String name = compoundTag.getCompound("block").getString("name"); - if (name.equals("minecraft:light_block")) { - int lightLevel = compoundTag.getCompound("block").getCompound("states").getInt("block_light_level"); - CompoundTag override = new CompoundTag() - .putCompound("block", compoundTag.getCompound("block").remove("version")) - .putIntArray("meta", new int[]{lightLevel}); - overrides.add(override); - //overrides.add(compoundTag.getCompound("block")); - //compoundTag.putIntArray("meta", new int[]{lightLevel}); - } - /*if (name.equals("minecraft:lectern")) { - System.out.println(compoundTag); - }*/ - if (name.equals("minecraft:kelp")) { - int age = compoundTag.getCompound("block").getCompound("states").getInt("kelp_age"); - if (age > 15) { - CompoundTag override = new CompoundTag() - .putCompound("block", compoundTag.getCompound("block").remove("version")) - .putIntArray("meta", new int[]{age}); - overrides.add(override); - } - } - switch (name) { - case "minecraft:honeycomb_block": - case "minecraft:honey_block": - case "minecraft:wither_rose": - //compoundTag.putIntArray("meta", new int[]{0}); - CompoundTag override = new CompoundTag() - .putCompound("block", compoundTag.getCompound("block").remove("version")) - .putIntArray("meta", new int[]{0}); - overrides.add(override); - break; - } - if (name.equalsIgnoreCase("minecraft:pistonArmCollision")) { - CompoundTag override = new CompoundTag() - .putCompound("block", compoundTag.getCompound("block").remove("version").putString("name", "minecraft:stickyPistonArmCollision")) - .putIntArray("meta", compoundTag.getIntArray("meta")); - overrides.add(override); - } - if (name.equals("minecraft:coral")) { - int dead = compoundTag.getCompound("block").getCompound("states").getByte("dead_bit"); - if (dead == 0) { - continue; - } - CompoundTag scan = compoundTag.getCompound("block").copy(); - scan.getCompound("states").putByte("dead_bit", 0); - CompoundTag alive = fullMap.get(scan); - int meta = alive.getIntArray("meta")[0] | 0x8; - CompoundTag override = new CompoundTag() - .putCompound("block", compoundTag.getCompound("block").remove("version")) - .putIntArray("meta", new int[]{meta}); - overrides.add(override); - } - if (name.equals("minecraft:wood")) { - String axis = compoundTag.getCompound("block").getCompound("states").getString("pillar_axis"); - String typeString = compoundTag.getCompound("block").getCompound("states").getString("wood_type"); - //if (!axis.equals("y") || typeString.equals()) { - int type; - switch (typeString) { - case "oak": type = 0; break; - case "spruce": type = 1; break; - case "birch": type = 2; break; - case "jungle": type = 3; break; - case "acacia": type = 4; break; - case "dark_oak": type = 5; break; - default: continue; - } - int axisInt; - switch (axis) { - case "y": axisInt = 0; break; - case "x": axisInt = 1; break; - case "z": axisInt = 2; break; - default: continue; - } - int strippedBit = compoundTag.getCompound("block").getCompound("states").getInt("stripped_bit"); - int meta = axisInt << 4 | strippedBit << 3 | type; - CompoundTag override = new CompoundTag() - .putCompound("block", compoundTag.getCompound("block").remove("version")) - .putIntArray("meta", new int[]{meta}); - overrides.add(override); - //} - } - if (name.equals("minecraft:beehive") || name.equals("minecraft:bee_nest")) { - int facing = compoundTag.getCompound("block").getCompound("states").getInt("facing_direction"); - int honey = compoundTag.getCompound("block").getCompound("states").getInt("honey_level"); - //if (honey == 0 || honey % 2 == 1) { - /*BlockFace face = BlockFace.fromIndex(facing); - int faceBits = face.getHorizontalIndex(); - if (faceBits >= 0) {*/ - /*int honeyBits; - switch (honey) { - case 0: - honeyBits = 0; - break; - case 1: - case 2: - honeyBits = 1; - break; - case 3: - case 4: - honeyBits = 2; - break; - case 5: - honeyBits = 3; - break; - default: - continue; - } - int meta = honeyBits << 2 | faceBits;*/ - //int meta = honey << 2 | faceBits; - int meta = honey << 3 | facing; - //compoundTag.putIntArray("meta", new int[]{meta}); - CompoundTag override = new CompoundTag() - .putCompound("block", compoundTag.getCompound("block").remove("version")) - .putIntArray("meta", new int[]{meta}); - overrides.add(override); - //} - //} - } - } - //bytes = NBTIO.writeNetwork(tag); - bytes = NBTIO.write(new CompoundTag().putList(overrides)); - try(FileOutputStream fos = new FileOutputStream("runtime_block_states_overrides.dat")) { - fos.write(bytes); - } - } catch (IOException e) { - throw new AssertionError(e); - } - } -} diff --git a/src/test/java/org/powernukkit/tools/CurrentBlockMapReader.java b/src/test/java/org/powernukkit/tools/CurrentBlockMapReader.java new file mode 100644 index 00000000000..db53219395d --- /dev/null +++ b/src/test/java/org/powernukkit/tools/CurrentBlockMapReader.java @@ -0,0 +1,46 @@ +package org.powernukkit.tools; + +import cn.nukkit.nbt.NBTIO; +import cn.nukkit.nbt.tag.CompoundTag; +import cn.nukkit.utils.BinaryStream; +import lombok.Value; + +import java.io.ByteArrayInputStream; +import java.io.IOException; +import java.nio.ByteOrder; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Paths; +import java.util.ArrayList; +import java.util.List; + +/** + * @author joserobjr + * @since 2021-09-24 + */ +public class CurrentBlockMapReader { + public static void main(String[] args) throws IOException { + BinaryStream stream = new BinaryStream(Files.readAllBytes(Paths.get("dumps/r12_to_current_block_map.bin"))); + List list = new ArrayList<>(); + while(!stream.feof()){ + String id = stream.getString(); + int meta = stream.getLShort(); + + int offset = stream.getOffset(); + byte[] buffer = stream.getBuffer(); + ByteArrayInputStream is = new ByteArrayInputStream(buffer, offset, buffer.length); + int initial = is.available(); + CompoundTag state = NBTIO.read(is, ByteOrder.LITTLE_ENDIAN, true); + offset += initial - is.available(); + stream.setOffset(offset); + list.add(new CurrentBlockMapEntry(id, meta, state)); + } + Files.write(Paths.get("dumps/r12_to_current_block_map.bin.txt"), list.toString().getBytes(StandardCharsets.UTF_8)); + } + + @Value static class CurrentBlockMapEntry { + String id; + int meta; + CompoundTag state; + } +} diff --git a/src/test/java/org/powernukkit/tools/OverridesUpdater.java b/src/test/java/org/powernukkit/tools/OverridesUpdater.java deleted file mode 100644 index cb7975e73b9..00000000000 --- a/src/test/java/org/powernukkit/tools/OverridesUpdater.java +++ /dev/null @@ -1,188 +0,0 @@ -/* - * https://PowerNukkit.org - The Nukkit you know but Powerful! - * Copyright (C) 2020 José Roberto de Araújo Júnior - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -package org.powernukkit.tools; - -import cn.nukkit.Server; -import cn.nukkit.nbt.NBTIO; -import cn.nukkit.nbt.tag.CompoundTag; -import cn.nukkit.nbt.tag.ListTag; -import cn.nukkit.nbt.tag.Tag; -import com.google.common.base.Preconditions; -import it.unimi.dsi.fastutil.ints.Int2ObjectMap; -import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap; -import lombok.Data; -import lombok.NonNull; -import org.powernukkit.HumanStringComparator; - -import java.io.*; -import java.nio.ByteOrder; -import java.util.LinkedHashMap; -import java.util.Map; -import java.util.SortedMap; -import java.util.TreeMap; - -public class OverridesUpdater { - public static void main(String[] args) throws IOException { - Map originalTags = new LinkedHashMap<>(); - // - try (InputStream stream = Server.class.getClassLoader().getResourceAsStream("runtime_block_states.dat")) { - if (stream == null) { - throw new AssertionError("Unable to locate block state nbt"); - } - - //noinspection unchecked - ListTag tags = (ListTag) NBTIO.readTag(stream, ByteOrder.BIG_ENDIAN, false); - for (CompoundTag tag : tags.getAll()) { - originalTags.put(tag.getCompound("block").remove("version"), tag); - } - } catch (IOException e) { - throw new AssertionError(e); - } - // - - Int2ObjectMap blockIdToPersistenceName = new Int2ObjectOpenHashMap<>(); - Map persistenceNameToBlockId = new LinkedHashMap<>(); - // - try (InputStream stream = Server.class.getClassLoader().getResourceAsStream("block_ids.csv")) { - if (stream == null) { - throw new AssertionError("Unable to locate block_ids.csv"); - } - - int count = 0; - try(BufferedReader reader = new BufferedReader(new InputStreamReader(stream))) { - String line; - while ((line = reader.readLine()) != null) { - count++; - line = line.trim(); - if (line.isEmpty()) { - continue; - } - String[] parts = line.split(","); - Preconditions.checkArgument(parts.length == 2 || parts[0].matches("^[0-9]+$")); - if (parts.length > 1 && parts[1].startsWith("minecraft:")) { - blockIdToPersistenceName.put(Integer.parseInt(parts[0]), parts[1]); - persistenceNameToBlockId.put(parts[1], Integer.parseInt(parts[0])); - } - } - } catch (Exception e) { - throw new IOException("Error reading the line "+count+" of the block_ids.csv", e); - } - - } catch (IOException e) { - throw new AssertionError(e); - } - // - - Map infoList = new LinkedHashMap<>(); - // - try (InputStream stream = Server.class.getClassLoader().getResourceAsStream("runtime_block_states_overrides.dat")) { - if (stream == null) { - throw new AssertionError("Unable to locate block state nbt"); - } - - ListTag states; - try (BufferedInputStream buffered = new BufferedInputStream(stream)) { - states = NBTIO.read(buffered).getList("Overrides", CompoundTag.class); - } - - for (CompoundTag override : states.getAll()) { - if (override.contains("block") && override.contains("LegacyStates")) { - CompoundTag key = override.getCompound("block").remove("version"); - CompoundTag original = originalTags.get(key); - if (original == null) { - continue; - } - BlockInfo data = new BlockInfo(key, original, - original.getList("LegacyStates", CompoundTag.class), - override.getList("LegacyStates", CompoundTag.class)); - BlockInfo removed = infoList.put(key, data); - if (removed != null) { - throw new IllegalStateException(removed.toString()+"\n"+data.toString()); - } - } - } - } catch (IOException e) { - throw new AssertionError(e); - } - // - - ListTag newOverrides = new ListTag<>("Overrides"); - - for (BlockInfo info : infoList.values()) { - String stateName = info.getStateName(); - - if (stateName.contains("torch")) { - continue; - } - - CompoundTag override = new CompoundTag(); - override.putCompound("block", info.getKey().copy()); - override.putList((ListTag) info.getOverride().copy()); - - newOverrides.add(override); - } - - SortedMap sorted = new TreeMap<>(new HumanStringComparator()); - for (CompoundTag tag : originalTags.values()) { - sorted.put(new BlockInfo(tag.getCompound("block"), tag, new ListTag<>(), new ListTag<>()).getStateName(), tag); - } - - for (CompoundTag tag : sorted.values()) { - String name = tag.getCompound("block").getString("name"); - - if (!name.startsWith("minecraft:frame")) { - continue; - } - - CompoundTag override = new CompoundTag(); - override.putCompound("block", tag.getCompound("block").remove("version")); - override.putList(new ListTag<>("LegacyStates")/*.add(new CompoundTag().putInt("id", blockId).putInt("val", 0))*/); - newOverrides.add(override); - } - - byte[] bytes = NBTIO.write(new CompoundTag().putList(newOverrides)); - try(FileOutputStream fos = new FileOutputStream("runtime_block_states_overrides.dat")) { - fos.write(bytes); - } - } - - @Data - static class BlockInfo { - @NonNull - private CompoundTag key; - @NonNull - private CompoundTag fullData; - @NonNull - private ListTag original; - @NonNull - private ListTag override; - - public String getStateName() { - StringBuilder stateName = new StringBuilder(key.getString("name")); - for (Tag tag : key.getCompound("states").getAllTags()) { - stateName.append(';').append(tag.getName()).append('=').append(tag.parseValue()); - } - return stateName.toString(); - } - - public String getBlockName() { - return key.getString("name"); - } - } -} diff --git a/src/test/java/org/powernukkit/dumps/RuntimeItemIdReorder.java b/src/test/java/org/powernukkit/tools/RuntimeItemIdReorder.java similarity index 98% rename from src/test/java/org/powernukkit/dumps/RuntimeItemIdReorder.java rename to src/test/java/org/powernukkit/tools/RuntimeItemIdReorder.java index 62a5e92b7eb..a3d895ee831 100644 --- a/src/test/java/org/powernukkit/dumps/RuntimeItemIdReorder.java +++ b/src/test/java/org/powernukkit/tools/RuntimeItemIdReorder.java @@ -16,7 +16,7 @@ * along with this program. If not, see . */ -package org.powernukkit.dumps; +package org.powernukkit.tools; import cn.nukkit.Server; import cn.nukkit.api.PowerNukkitOnly; diff --git a/src/test/java/org/powernukkit/tools/SimpleBlocksReader.java b/src/test/java/org/powernukkit/tools/SimpleBlocksReader.java deleted file mode 100644 index edf612e29f1..00000000000 --- a/src/test/java/org/powernukkit/tools/SimpleBlocksReader.java +++ /dev/null @@ -1,104 +0,0 @@ -/* - * https://PowerNukkit.org - The Nukkit you know but Powerful! - * Copyright (C) 2020 José Roberto de Araújo Júnior - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -package org.powernukkit.tools; - -import cn.nukkit.Server; -import cn.nukkit.nbt.NBTIO; -import cn.nukkit.nbt.tag.CompoundTag; -import cn.nukkit.nbt.tag.ListTag; -import cn.nukkit.nbt.tag.Tag; -import cn.nukkit.utils.HumanStringComparator; - -import java.io.BufferedWriter; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.nio.ByteOrder; -import java.util.*; - -public class SimpleBlocksReader { - public static void main(String[] args) throws IOException { - HumanStringComparator humanStringComparator = new HumanStringComparator(); - ListTag tags; - try (InputStream stream = Server.class.getClassLoader().getResourceAsStream("runtime_block_states.dat")) { - if (stream == null) { - throw new AssertionError("Unable to locate block state nbt"); - } - - //noinspection unchecked - tags = (ListTag) NBTIO.readTag(stream, ByteOrder.BIG_ENDIAN, false); - } catch (IOException e) { - throw new AssertionError(e); - } - - SortedMap>> states = new TreeMap<>(humanStringComparator); - - for (CompoundTag block : tags.getAll()) { - String name = block.getString("name"); - if (name.contains("warped_trapdoor")) { - System.out.println(); - } - CompoundTag statesCompound = block.getCompound("states"); - if (statesCompound.isEmpty()) { - states.computeIfAbsent(name, k-> new TreeMap<>(humanStringComparator)); - } else { - SortedMap> registeredProperties = states.computeIfAbsent(name, k-> new TreeMap<>(humanStringComparator)); - for (Tag tag : statesCompound.getAllTags()) { - SortedSet registeredValues = registeredProperties.computeIfAbsent(tag.getName(), k -> new TreeSet<>(humanStringComparator)); - registeredValues.add(tag.parseValue().toString()); - } - } - } - - SortedSet properties = new TreeSet<>(humanStringComparator); - - try(FileWriter iniFW = new FileWriter("block-states.ini"); BufferedWriter iniBuff = new BufferedWriter(iniFW); - FileWriter txtFW = new FileWriter("simple-blocks-nukkit.txt"); BufferedWriter txtBuff = new BufferedWriter(txtFW)) { - iniBuff.write("# WARNING! Don't edit this file! It's automatically regenerated!"); - iniBuff.newLine(); iniBuff.newLine(); - txtBuff.write("# WARNING! Don't edit this file! It's automatically regenerated!"); - txtBuff.newLine(); txtBuff.newLine(); - for (Map.Entry>> topLevelEntry : states.entrySet()) { - iniBuff.write("["+topLevelEntry.getKey()+"]"); - txtBuff.write(topLevelEntry.getKey()); - txtBuff.newLine(); - iniBuff.newLine(); - for (Map.Entry> propertyEntry : topLevelEntry.getValue().entrySet()) { - String propertyLine = propertyEntry.getKey() + "=" + String.join(",", propertyEntry.getValue()); - properties.add(propertyLine); - iniBuff.write(propertyLine); - iniBuff.newLine(); - } - iniBuff.newLine(); - } - } - - try(FileWriter iniFW = new FileWriter("block-properties.ini"); BufferedWriter iniBuff = new BufferedWriter(iniFW)) { - iniBuff.write("# WARNING! Don't edit this file! It's automatically regenerated!"); - iniBuff.newLine(); iniBuff.newLine(); - iniBuff.write("[properties]"); - iniBuff.newLine(); - for (String property : properties) { - iniBuff.write(property); - iniBuff.newLine(); - } - } - - } -} diff --git a/src/test/java/org/powernukkit/updater/AllResourceUpdater.java b/src/test/java/org/powernukkit/updater/AllResourceUpdater.java new file mode 100644 index 00000000000..2bc6090f57d --- /dev/null +++ b/src/test/java/org/powernukkit/updater/AllResourceUpdater.java @@ -0,0 +1,324 @@ +package org.powernukkit.updater; + +import cn.nukkit.block.Block; +import cn.nukkit.block.BlockID; +import cn.nukkit.block.BlockUnknown; +import cn.nukkit.blockstate.BlockState; +import cn.nukkit.blockstate.BlockStateRegistry; +import cn.nukkit.item.Item; +import cn.nukkit.item.RuntimeItems; +import cn.nukkit.item.enchantment.Enchantment; +import cn.nukkit.potion.Potion; +import cn.nukkit.utils.Config; +import cn.nukkit.utils.Utils; +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonPrimitive; +import com.google.gson.JsonSerializer; +import io.netty.util.internal.EmptyArrays; +import lombok.SneakyThrows; +import lombok.var; +import org.powernukkit.dumps.ItemIdDumper; +import org.powernukkit.dumps.RuntimeBlockStateDumper; + +import java.io.File; +import java.io.IOException; +import java.io.InputStream; +import java.io.UncheckedIOException; +import java.util.*; + +/** + * @author joserobjr + * @since 2021-10-23 + */ +public class AllResourceUpdater { + public static void main(String[] args) { + /* + Pre-requisites: + - Run src/test/java/org/powernukkit/updater/AllResourcesDownloader.java + - Run mvn clean package + - Run src/test/java/org/powernukkit/updater/RuntimeItemIdUpdater.java + - Run mvn clean package + */ + try { + new AllResourceUpdater().execute(); + } catch (Throwable e) { + e.printStackTrace(); + System.exit(1); + } finally { + System.exit(0); + } + } + + public static final Gson GSON = new GsonBuilder().disableHtmlEscaping().setPrettyPrinting() + .registerTypeAdapter(Double.class, (JsonSerializer) (src, typeOfSrc, context) -> { + if (src == src.longValue()) + return new JsonPrimitive(src.longValue()); + return new JsonPrimitive(src); + }).create(); + + @SneakyThrows + private void execute() { + ItemIdDumper.main(EmptyArrays.EMPTY_STRINGS); + RuntimeBlockStateDumper.main(EmptyArrays.EMPTY_STRINGS); + init(); + updateRecipes(); + updateCreativeItems(); + System.exit(0); + } + + @SuppressWarnings("unchecked") + private void updateRecipes() { + Config config = new Config(Config.JSON); + try(InputStream recipesStream = getClass().getClassLoader() + .getResourceAsStream("org/powernukkit/updater/dumps/proxypass/recipes.json") + ) { + if (recipesStream == null) { + throw new AssertionError("Unable to find recipes.json"); + } + config.loadAsJson(recipesStream, GSON); + } catch (IOException e) { + throw new UncheckedIOException(e); + } + var newRecipes = config.getMapList("recipes"); + var recipesIterator = newRecipes.listIterator(); + while (recipesIterator.hasNext()) { + var recipe = new LinkedHashMap(recipesIterator.next()); + var type = Utils.toInt(recipe.get("type")); + Object inputObject = recipe.get("input"); + if (inputObject != null) { + if (type == 3) { + inputObject = updateItemEntry((Map) inputObject); + } else { + if (inputObject instanceof Map) { + var inputs = (Map>) inputObject; + inputs = new LinkedHashMap<>(inputs); + for (var itemEntry : inputs.entrySet()) { + itemEntry.setValue(updateItemEntry(itemEntry.getValue())); + } + inputObject = inputs; + } else if (inputObject instanceof List) { + var inputs = (List>) inputObject; + inputObject = updateItemEntryList(inputs); + } + } + recipe.put("input", inputObject); + } + + Object outputObject = recipe.get("output"); + if (outputObject != null) { + if (type == 3) { + outputObject = updateItemEntry((Map) outputObject); + } else { + var outputList = (List>) outputObject; + outputObject = updateItemEntryList(outputList); + } + recipe.put("output", outputObject); + } + + recipesIterator.set(recipe); + } + config.set("recipes", newRecipes); + + config.saveAsJson(new File("src/main/resources/recipes.json"), false, GSON); + } + + @SuppressWarnings("unchecked") + private void updateCreativeItems() { + Config config = new Config(Config.JSON); + try(InputStream recipesStream = getClass().getClassLoader() + .getResourceAsStream("org/powernukkit/updater/dumps/proxypass/creativeitems.json") + ) { + if (recipesStream == null) { + throw new AssertionError("Unable to findcreativeitems.json"); + } + config.loadAsJson(recipesStream, GSON); + } catch (IOException e) { + throw new UncheckedIOException(e); + } + + var newItems = (List>)(Object)config.getMapList("items"); + newItems = updateItemEntryList(newItems); + config.set("items", newItems); + + config.saveAsJson(new File("src/main/resources/creativeitems.json"), false, GSON); + } + + private List> updateItemEntryList(List> inputs) { + inputs = new ArrayList<>(inputs); + var inputIterator = inputs.listIterator(); + while (inputIterator.hasNext()) { + inputIterator.set(updateItemEntry(inputIterator.next())); + } + return inputs; + } + + private Map updateItemEntry(Map itemEntry) { + var result = updateItemEntry0(itemEntry); + if ("minecraft:air".equals(result.get("blockState"))) { + throw new NoSuchElementException("State not found for: "+itemEntry); + } + return result; + } + + private Map updateItemEntry0(Map itemEntry) { + itemEntry = new LinkedHashMap<>(itemEntry); + Integer damage = itemEntry.containsKey("damage")? Utils.toInt(itemEntry.get("damage")) : null; + boolean fuzzy = damage != null && (damage.equals((int)Short.MAX_VALUE) || damage.equals(-1)); + if (itemEntry.containsKey("blockState")) { + itemEntry.remove("legacyId"); + itemEntry.remove("blockRuntimeId"); + itemEntry.remove("id"); + itemEntry.remove("damage"); + return itemEntry; + } + + if (itemEntry.containsKey("blockRuntimeId")) { + int blockRuntimeId = Utils.toInt(itemEntry.get("blockRuntimeId")); + BlockState state; + String stateId; + boolean unknown = false; + try { + state = BlockStateRegistry.getBlockStateByRuntimeId(blockRuntimeId); + if (state == null || state.equals(BlockState.AIR)) { + throw new NoSuchElementException("State not found for blockRuntimeId: "+blockRuntimeId); + } + if (state.getProperties().equals(BlockUnknown.PROPERTIES)) { + unknown = true; + stateId = BlockStateRegistry.getKnownBlockStateIdByRuntimeId(blockRuntimeId); + } else { + stateId = state.getMinimalistStateId(); + } + } catch (Exception e) { + try { + int blockId = BlockStateRegistry.getBlockIdByRuntimeId(blockRuntimeId); + BlockState baseState = BlockState.of(blockId); + if (baseState.equals(BlockState.AIR)) { + throw new NoSuchElementException("State not found for blockRuntimeId: "+blockRuntimeId); + } + if (baseState.getProperties().equals(BlockUnknown.PROPERTIES)) { + unknown = true; + stateId = BlockStateRegistry.getKnownBlockStateIdByRuntimeId(blockRuntimeId); + } else { + throw e; + } + } catch (Exception e2) { + e2.addSuppressed(e); + throw e2; + } + } + if (unknown) { + if (stateId != null) { + System.out.println("State of unimplemented block found for blockRuntimeId: " + blockRuntimeId + ", using " + stateId); + } else { + throw new NoSuchElementException("State unknown for blockRuntimeId: " + blockRuntimeId); + } + } + itemEntry.remove("legacyId"); + itemEntry.remove("blockRuntimeId"); + itemEntry.remove("id"); + itemEntry.remove("damage"); + itemEntry.put("blockState", stateId); + if (fuzzy) { + itemEntry.put("fuzzy", true); + } + return itemEntry; + } + + if (itemEntry.containsKey("legacyId")) { + int legacyId = Utils.toInt(itemEntry.get("legacyId")); + if (legacyId > 255) { + int fullId; + try { + fullId = RuntimeItems.getRuntimeMapping().getLegacyFullId(legacyId); + } catch (Exception e) { + System.out.println("Could not update " + legacyId + " " + itemEntry.get("id") + " : " + itemEntry.get("damage")); + return itemEntry; + } + int itemId = RuntimeItems.getId(fullId); + Integer meta = null; + if (RuntimeItems.hasData(fullId)) { + meta = RuntimeItems.getData(fullId); + } + + if (itemEntry.containsKey("damage")) { + int damage2 = Utils.toInt(itemEntry.get("damage")); + if (damage2 == Short.MAX_VALUE) { + fuzzy = true; + } else if (meta == null) { + meta = damage; + } + } + + Item item = Item.get(itemId, meta == null ? 0 : meta); + itemEntry.remove("legacyId"); + itemEntry.remove("blockRuntimeId"); + itemEntry.remove("damage"); + itemEntry.remove("blockState"); + itemEntry.put("id", item.getNamespaceId()); + if (fuzzy) { + itemEntry.put("fuzzy", true); + } else if (item.getDamage() != 0) { + itemEntry.put("damage", item.getDamage()); + } + return itemEntry; + } + } + + String id = itemEntry.get("id").toString(); + Item item = Item.fromString(id); + if (item.getId() > 255) { + if (damage != null && !fuzzy && damage != 0) { + item = Item.fromString(id+":"+damage); + } + itemEntry.remove("legacyId"); + itemEntry.remove("blockRuntimeId"); + itemEntry.remove("damage"); + itemEntry.remove("blockState"); + itemEntry.put("id", item.getNamespaceId()); + if (fuzzy) { + itemEntry.put("fuzzy", true); + } else if (damage != null && damage != 0) { + itemEntry.put("damage", damage); + } + return itemEntry; + } + + Integer blockId = BlockStateRegistry.getBlockId(id); + if (blockId == null) { + System.out.println("Block id not found for id: " + itemEntry.get("id") + " : " + damage); + return itemEntry; + } + + String namespacedId = BlockStateRegistry.getPersistenceName(blockId); + String stateId; + if (damage == null || damage == 0 || damage == Short.MAX_VALUE || damage == -1) { + stateId = namespacedId; + } else { + item = Item.getBlock(blockId, damage); + if (item.getBlock().getId() == BlockID.AIR) { + throw new NoSuchElementException("State not found for id: " + itemEntry.get("id") + " : " + damage); + } + stateId = item.getBlock().getMinimalistStateId(); + } + if (damage != null && damage == Short.MAX_VALUE) { + fuzzy = true; + } + if (fuzzy) { + itemEntry.put("fuzzy", true); + } + itemEntry.remove("damage"); + itemEntry.remove("legacyId"); + itemEntry.remove("blockRuntimeId"); + itemEntry.remove("id"); + itemEntry.put("blockState", stateId); + return itemEntry; + } + + private void init() { + Block.init(); + Enchantment.init(); + Potion.init(); + Item.init(); + } +} diff --git a/src/test/java/org/powernukkit/updater/AllResourcesDownloader.java b/src/test/java/org/powernukkit/updater/AllResourcesDownloader.java new file mode 100644 index 00000000000..c8154046e60 --- /dev/null +++ b/src/test/java/org/powernukkit/updater/AllResourcesDownloader.java @@ -0,0 +1,118 @@ +package org.powernukkit.updater; + +import cn.nukkit.nbt.NBTIO; +import cn.nukkit.nbt.tag.CompoundTag; +import cn.nukkit.nbt.tag.ListTag; +import lombok.SneakyThrows; +import org.junit.jupiter.api.Assertions; + +import java.io.*; +import java.net.URL; +import java.net.URLConnection; +import java.nio.ByteOrder; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.nio.file.StandardCopyOption; +import java.util.Comparator; +import java.util.List; +import java.util.Optional; + +/** + * @author joserobjr + * @since 2021-10-24 + */ +public class AllResourcesDownloader { + private static final String CANONICAL_BLOCK_STATES_PATH = "src/main/resources/canonical_block_states.nbt"; + private static final String CANONICAL_BLOCK_STATES_URL = + "https://github.com/pmmp/BedrockData/raw/master/canonical_block_states.nbt" + //"https://github.com/CloudburstMC/Data/raw/master/block_palette.nbt" + ; + + @SuppressWarnings("OptionalUsedAsFieldOrParameterType") + private static final Optional USE_NUKKIT_RUNTIME_BLOCK_STATES_DAT = + //Optional.of("https://github.com/CloudburstMC/Nukkit/raw/v1.18.30/src/main/resources/runtime_block_states.dat") + Optional.empty() + ; + + public static void main(String[] args) { + /* + Pre-requisites: + - Make sure that ProxyPass is updated and working with the last Minecraft Bedrock Edition client + - Make sure PocketMine has released their exports: https://github.com/pmmp/BedrockData + - Run ProxyPass with export-data in config.yml set to true, the proxy pass must be + pointing to a vanilla BDS server from https://www.minecraft.net/en-us/download/server/bedrock + - Connect to the ProxyPass server with the last Minecraft Bedrock Edition client at least once + - Adjust the path bellow if necessary for your machine + */ + new AllResourcesDownloader().execute("../Bedrock-ProxyPass/run/data"); + System.out.println("OK"); + } + + private void execute(@SuppressWarnings("SameParameterValue") String pathProxyPassData) { + downloadResources(); + copyProxyPassResources(pathProxyPassData); + } + + private void downloadResources() { + createCanonicalBlockStatesNbt(); + download("https://github.com/pmmp/BedrockData/raw/master/required_item_list.json", + "src/test/resources/org/powernukkit/updater/dumps/pmmp/required_item_list.json"); + } + + @SneakyThrows + private void createCanonicalBlockStatesNbt() { + if (!USE_NUKKIT_RUNTIME_BLOCK_STATES_DAT.isPresent()) { + download(CANONICAL_BLOCK_STATES_URL, CANONICAL_BLOCK_STATES_PATH); + return; + } + Path runtimeBlockStatesFile = Files.createTempFile("runtime_block_states", ".dat"); + try { + download(USE_NUKKIT_RUNTIME_BLOCK_STATES_DAT.get(), runtimeBlockStatesFile.toAbsolutePath().toString()); + try (InputStream fileInputStream = Files.newInputStream(runtimeBlockStatesFile); + BufferedInputStream inputStream = new BufferedInputStream(fileInputStream) + ) { + //noinspection unchecked + List tags = ((ListTag) NBTIO.readTag(inputStream, ByteOrder.BIG_ENDIAN, false)).getAll(); + tags.forEach(tag-> tag.remove("id").remove("data")); + tags.sort(Comparator.comparingInt(tag -> tag.getInt("runtimeId"))); + Assertions.assertEquals(tags.size() - 1, tags.get(tags.size() - 1).getInt("runtimeId")); + System.out.println(tags); + throw new InternalError(); // Aborting this idea. Cloudburst Nukkit's dat file lacks A LOT of states. + } + } finally { + Files.deleteIfExists(runtimeBlockStatesFile); + } + } + + private void copyProxyPassResources(String pathProxyPassData) { + copy(pathProxyPassData, "biome_definitions.dat", "src/main/resources/biome_definitions.dat"); + copy(pathProxyPassData, "entity_identifiers.dat", "src/main/resources/entity_identifiers.dat"); + copy(pathProxyPassData, "creativeitems.json", "src/test/resources/org/powernukkit/updater/dumps/proxypass/creativeitems.json"); + copy(pathProxyPassData, "runtime_item_states.json", "src/test/resources/org/powernukkit/updater/dumps/proxypass/runtime_item_states.json"); + copy(pathProxyPassData, "recipes.json", "src/test/resources/org/powernukkit/updater/dumps/proxypass/recipes.json"); + } + + @SneakyThrows + private void copy(String path, String file, String into) { + Files.copy(Paths.get(path).resolve(file), Paths.get(into), StandardCopyOption.REPLACE_EXISTING); + } + + @SneakyThrows + private void download(String url, String into) { + URLConnection connection = new URL(url).openConnection(); + connection.setRequestProperty("User-Agent", "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.4; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2"); + try(InputStream input = connection.getInputStream(); + OutputStream fos = new FileOutputStream(into); + BufferedOutputStream bos = new BufferedOutputStream(fos); + ) { + byte[] buffer = new byte[8*1024]; + int read; + while ((read = input.read(buffer)) != -1) { + bos.write(buffer, 0, read); + } + } catch (IOException e) { + throw new UncheckedIOException(e); + } + } +} diff --git a/src/test/java/org/powernukkit/tools/RuntimeItemIdUpdater.java b/src/test/java/org/powernukkit/updater/RuntimeItemIdUpdater.java similarity index 57% rename from src/test/java/org/powernukkit/tools/RuntimeItemIdUpdater.java rename to src/test/java/org/powernukkit/updater/RuntimeItemIdUpdater.java index f4832a62360..afd719dd589 100644 --- a/src/test/java/org/powernukkit/tools/RuntimeItemIdUpdater.java +++ b/src/test/java/org/powernukkit/updater/RuntimeItemIdUpdater.java @@ -1,10 +1,25 @@ -package org.powernukkit.tools; +/* + * https://PowerNukkit.org - The Nukkit you know but Powerful! + * Copyright (C) 2021 José Roberto de Araújo Júnior + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package org.powernukkit.updater; import cn.nukkit.Server; -import com.google.gson.Gson; -import com.google.gson.GsonBuilder; -import com.google.gson.JsonElement; -import com.google.gson.JsonObject; +import com.google.gson.*; import com.google.gson.reflect.TypeToken; import com.google.gson.stream.JsonReader; import lombok.Data; @@ -19,6 +34,11 @@ public class RuntimeItemIdUpdater { public static void main(String[] args) throws IOException { + /* + Pre-requisites: + - Run src/test/java/org/powernukkit/updater/AllResourcesDownloader.java + - Run mvn clean package + */ Gson gson = new GsonBuilder() .setPrettyPrinting() .create(); @@ -37,22 +57,22 @@ public static void main(String[] args) throws IOException { itemNameToNukkitRegistry.put(runtimeItem.name, runtimeItem); } - JsonObject requiredItems; - try(InputStream resourceAsStream = Server.class.getClassLoader().getResourceAsStream("required_item_list.json"); + JsonArray requiredItems; + try(InputStream resourceAsStream = RuntimeItemIdUpdater.class.getClassLoader().getResourceAsStream("org/powernukkit/updater/dumps/proxypass/runtime_item_states.json"); Reader reader = new InputStreamReader(Objects.requireNonNull(resourceAsStream), StandardCharsets.UTF_8); BufferedReader bufferedReader = new BufferedReader(reader); ) { - requiredItems = gson.fromJson(bufferedReader, JsonObject.class); + requiredItems = gson.fromJson(bufferedReader, JsonArray.class); } - for (Map.Entry entry : requiredItems.entrySet()) { - String name = entry.getKey(); + for (JsonElement e : requiredItems) { + JsonObject entry = e.getAsJsonObject(); + String name = entry.get("name").getAsString(); RuntimeItem runtimeItem = itemNameToNukkitRegistry.get(name); if (runtimeItem == null) { continue; } - runtimeItem.id = - entry.getValue().getAsJsonObject().getAsJsonPrimitive("runtime_id").getAsInt(); + runtimeItem.id = entry.get("id").getAsInt(); } try (FileWriter writer = new FileWriter("src/main/resources/runtime_item_ids.json"); @@ -60,6 +80,7 @@ public static void main(String[] args) throws IOException { ) { gson.toJson(runtimeItems, LIST, bufferedWriter); } + System.out.println("OK"); } private static Type LIST = new TypeToken>(){}.getType(); diff --git a/src/test/resources/cn/nukkit/item/basicAttributes.dtd b/src/test/resources/cn/nukkit/item/basicAttributes.dtd new file mode 100644 index 00000000000..56991f18848 --- /dev/null +++ b/src/test/resources/cn/nukkit/item/basicAttributes.dtd @@ -0,0 +1,66 @@ + + + + + + + + + diff --git a/src/test/resources/cn/nukkit/item/basicItemAttributes.xml b/src/test/resources/cn/nukkit/item/basicItemAttributes.xml new file mode 100644 index 00000000000..755d4e04972 --- /dev/null +++ b/src/test/resources/cn/nukkit/item/basicItemAttributes.xml @@ -0,0 +1,614 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/test/resources/org/powernukkit/tools/nukkit.patch b/src/test/resources/org/powernukkit/tools/nukkit.patch new file mode 100644 index 00000000000..519d66083fb --- /dev/null +++ b/src/test/resources/org/powernukkit/tools/nukkit.patch @@ -0,0 +1,30 @@ +diff --git a/pom.xml b/pom.xml +index 9e9bea970..93ed6a857 100644 +--- a/pom.xml ++++ b/pom.xml +@@ -267,6 +267,25 @@ + ${project.build.directory}/dependency-reduced-pom.xml + + ++ ++ org.projectlombok ++ lombok-maven-plugin ++ 1.18.20.0 ++ ++ ++ generate-sources ++ ++ delombok ++ ++ ++ ++ ++ false ++ ${project.basedir}/src/main/java ++ ${project.build.directory}/delombok ++ UTF-8 ++ ++ + + pl.project13.maven + git-commit-id-plugin diff --git a/src/test/resources/required_item_list.json b/src/test/resources/org/powernukkit/updater/dumps/pmmp/required_item_list.json similarity index 93% rename from src/test/resources/required_item_list.json rename to src/test/resources/org/powernukkit/updater/dumps/pmmp/required_item_list.json index a8c911d78ee..180f5a3a68c 100644 --- a/src/test/resources/required_item_list.json +++ b/src/test/resources/org/powernukkit/updater/dumps/pmmp/required_item_list.json @@ -7,6 +7,10 @@ "runtime_id": -140, "component_based": false }, + "minecraft:acacia_chest_boat": { + "runtime_id": 637, + "component_based": false + }, "minecraft:acacia_door": { "runtime_id": 556, "component_based": false @@ -51,6 +55,10 @@ "runtime_id": -158, "component_based": false }, + "minecraft:allay_spawn_egg": { + "runtime_id": 630, + "component_based": false + }, "minecraft:allow": { "runtime_id": 210, "component_based": false @@ -132,7 +140,7 @@ "component_based": false }, "minecraft:banner_pattern": { - "runtime_id": 628, + "runtime_id": 642, "component_based": false }, "minecraft:barrel": { @@ -207,6 +215,10 @@ "runtime_id": -141, "component_based": false }, + "minecraft:birch_chest_boat": { + "runtime_id": 634, + "component_based": false + }, "minecraft:birch_door": { "runtime_id": 554, "component_based": false @@ -239,6 +251,14 @@ "runtime_id": -187, "component_based": false }, + "minecraft:black_candle": { + "runtime_id": -428, + "component_based": false + }, + "minecraft:black_candle_cake": { + "runtime_id": -445, + "component_based": false + }, "minecraft:black_dye": { "runtime_id": 395, "component_based": false @@ -287,6 +307,14 @@ "runtime_id": 596, "component_based": false }, + "minecraft:blue_candle": { + "runtime_id": -424, + "component_based": false + }, + "minecraft:blue_candle_cake": { + "runtime_id": -441, + "component_based": false + }, "minecraft:blue_dye": { "runtime_id": 399, "component_based": false @@ -300,7 +328,7 @@ "component_based": false }, "minecraft:boat": { - "runtime_id": 626, + "runtime_id": 640, "component_based": false }, "minecraft:bone": { @@ -347,10 +375,6 @@ "runtime_id": 431, "component_based": false }, - "minecraft:brewingstandblock": { - "runtime_id": 117, - "component_based": false - }, "minecraft:brick": { "runtime_id": 383, "component_based": false @@ -363,6 +387,14 @@ "runtime_id": 108, "component_based": false }, + "minecraft:brown_candle": { + "runtime_id": -425, + "component_based": false + }, + "minecraft:brown_candle_cake": { + "runtime_id": -442, + "component_based": false + }, "minecraft:brown_dye": { "runtime_id": 398, "component_based": false @@ -408,7 +440,15 @@ "component_based": false }, "minecraft:campfire": { - "runtime_id": 588, + "runtime_id": 589, + "component_based": false + }, + "minecraft:candle": { + "runtime_id": -412, + "component_based": false + }, + "minecraft:candle_cake": { + "runtime_id": -429, "component_based": false }, "minecraft:carpet": { @@ -460,7 +500,7 @@ "component_based": false }, "minecraft:chain": { - "runtime_id": 618, + "runtime_id": 619, "component_based": false }, "minecraft:chain_command_block": { @@ -499,6 +539,10 @@ "runtime_id": 54, "component_based": false }, + "minecraft:chest_boat": { + "runtime_id": 639, + "component_based": false + }, "minecraft:chest_minecart": { "runtime_id": 389, "component_based": false @@ -543,6 +587,10 @@ "runtime_id": 384, "component_based": false }, + "minecraft:client_request_placeholder_block": { + "runtime_id": -465, + "component_based": false + }, "minecraft:clock": { "runtime_id": 393, "component_based": false @@ -760,7 +808,7 @@ "component_based": false }, "minecraft:crimson_door": { - "runtime_id": 615, + "runtime_id": 616, "component_based": false }, "minecraft:crimson_double_slab": { @@ -800,7 +848,7 @@ "component_based": false }, "minecraft:crimson_sign": { - "runtime_id": 613, + "runtime_id": 614, "component_based": false }, "minecraft:crimson_slab": { @@ -847,6 +895,14 @@ "runtime_id": -354, "component_based": false }, + "minecraft:cyan_candle": { + "runtime_id": -422, + "component_based": false + }, + "minecraft:cyan_candle_cake": { + "runtime_id": -439, + "component_based": false + }, "minecraft:cyan_dye": { "runtime_id": 401, "component_based": false @@ -863,6 +919,10 @@ "runtime_id": -142, "component_based": false }, + "minecraft:dark_oak_chest_boat": { + "runtime_id": 638, + "component_based": false + }, "minecraft:dark_oak_door": { "runtime_id": 557, "component_based": false @@ -1128,7 +1188,7 @@ "component_based": false }, "minecraft:dye": { - "runtime_id": 627, + "runtime_id": 641, "component_based": false }, "minecraft:egg": { @@ -1656,7 +1716,7 @@ "component_based": false }, "minecraft:end_crystal": { - "runtime_id": 630, + "runtime_id": 644, "component_based": false }, "minecraft:end_gateway": { @@ -1763,6 +1823,10 @@ "runtime_id": 509, "component_based": false }, + "minecraft:firefly_spawn_egg": { + "runtime_id": 632, + "component_based": false + }, "minecraft:firework_rocket": { "runtime_id": 519, "component_based": false @@ -1815,6 +1879,14 @@ "runtime_id": 513, "component_based": false }, + "minecraft:frog_spawn": { + "runtime_id": -468, + "component_based": false + }, + "minecraft:frog_spawn_egg": { + "runtime_id": 627, + "component_based": false + }, "minecraft:frosted_ice": { "runtime_id": 207, "component_based": false @@ -1851,12 +1923,16 @@ "runtime_id": 434, "component_based": false }, + "minecraft:globe_banner_pattern": { + "runtime_id": 588, + "component_based": false + }, "minecraft:glow_berries": { - "runtime_id": 631, + "runtime_id": 645, "component_based": false }, "minecraft:glow_frame": { - "runtime_id": 622, + "runtime_id": 623, "component_based": false }, "minecraft:glow_ink_sac": { @@ -1872,7 +1948,7 @@ "component_based": false }, "minecraft:glow_stick": { - "runtime_id": 166, + "runtime_id": 601, "component_based": false }, "minecraft:glowingobsidian": { @@ -1887,10 +1963,6 @@ "runtime_id": 394, "component_based": false }, - "minecraft:goat_horn": { - "runtime_id": 623, - "component_based": false - }, "minecraft:goat_spawn_egg": { "runtime_id": 501, "component_based": false @@ -1979,6 +2051,14 @@ "runtime_id": 13, "component_based": false }, + "minecraft:gray_candle": { + "runtime_id": -420, + "component_based": false + }, + "minecraft:gray_candle_cake": { + "runtime_id": -437, + "component_based": false + }, "minecraft:gray_dye": { "runtime_id": 403, "component_based": false @@ -1987,6 +2067,14 @@ "runtime_id": 227, "component_based": false }, + "minecraft:green_candle": { + "runtime_id": -426, + "component_based": false + }, + "minecraft:green_candle_cake": { + "runtime_id": -443, + "component_based": false + }, "minecraft:green_dye": { "runtime_id": 397, "component_based": false @@ -2103,7 +2191,7 @@ "runtime_id": 413, "component_based": false }, - "minecraft:invisiblebedrock": { + "minecraft:invisible_bedrock": { "runtime_id": 95, "component_based": false }, @@ -2191,6 +2279,10 @@ "runtime_id": 194, "component_based": false }, + "minecraft:item.brewing_stand": { + "runtime_id": 117, + "component_based": false + }, "minecraft:item.cake": { "runtime_id": 92, "component_based": false @@ -2299,6 +2391,10 @@ "runtime_id": -143, "component_based": false }, + "minecraft:jungle_chest_boat": { + "runtime_id": 635, + "component_based": false + }, "minecraft:jungle_door": { "runtime_id": 555, "component_based": false @@ -2419,6 +2515,14 @@ "runtime_id": -215, "component_based": false }, + "minecraft:light_blue_candle": { + "runtime_id": -416, + "component_based": false + }, + "minecraft:light_blue_candle_cake": { + "runtime_id": -433, + "component_based": false + }, "minecraft:light_blue_dye": { "runtime_id": 407, "component_based": false @@ -2427,6 +2531,14 @@ "runtime_id": 223, "component_based": false }, + "minecraft:light_gray_candle": { + "runtime_id": -421, + "component_based": false + }, + "minecraft:light_gray_candle_cake": { + "runtime_id": -438, + "component_based": false + }, "minecraft:light_gray_dye": { "runtime_id": 402, "component_based": false @@ -2439,6 +2551,14 @@ "runtime_id": -312, "component_based": false }, + "minecraft:lime_candle": { + "runtime_id": -418, + "component_based": false + }, + "minecraft:lime_candle_cake": { + "runtime_id": -435, + "component_based": false + }, "minecraft:lime_dye": { "runtime_id": 405, "component_based": false @@ -2488,7 +2608,7 @@ "component_based": false }, "minecraft:lodestone_compass": { - "runtime_id": 601, + "runtime_id": 602, "component_based": false }, "minecraft:log": { @@ -2503,6 +2623,14 @@ "runtime_id": -204, "component_based": false }, + "minecraft:magenta_candle": { + "runtime_id": -415, + "component_based": false + }, + "minecraft:magenta_candle_cake": { + "runtime_id": -432, + "component_based": false + }, "minecraft:magenta_dye": { "runtime_id": 408, "component_based": false @@ -2523,6 +2651,18 @@ "runtime_id": 455, "component_based": false }, + "minecraft:mangrove_leaves": { + "runtime_id": -472, + "component_based": false + }, + "minecraft:mangrove_propagule": { + "runtime_id": -474, + "component_based": false + }, + "minecraft:mangrove_propagule_hanging": { + "runtime_id": -476, + "component_based": false + }, "minecraft:medicine": { "runtime_id": 599, "component_based": false @@ -2591,10 +2731,34 @@ "runtime_id": -175, "component_based": false }, - "minecraft:movingblock": { + "minecraft:moving_block": { "runtime_id": 250, "component_based": false }, + "minecraft:mud": { + "runtime_id": -473, + "component_based": false + }, + "minecraft:mud_brick_double_slab": { + "runtime_id": -479, + "component_based": false + }, + "minecraft:mud_brick_slab": { + "runtime_id": -478, + "component_based": false + }, + "minecraft:mud_brick_stairs": { + "runtime_id": -480, + "component_based": false + }, + "minecraft:mud_brick_wall": { + "runtime_id": -481, + "component_based": false + }, + "minecraft:mud_bricks": { + "runtime_id": -475, + "component_based": false + }, "minecraft:mule_spawn_egg": { "runtime_id": 466, "component_based": false @@ -2635,8 +2799,12 @@ "runtime_id": 540, "component_based": false }, + "minecraft:music_disc_otherside": { + "runtime_id": 626, + "component_based": false + }, "minecraft:music_disc_pigstep": { - "runtime_id": 619, + "runtime_id": 620, "component_based": false }, "minecraft:music_disc_stal": { @@ -2688,7 +2856,7 @@ "component_based": false }, "minecraft:nether_sprouts": { - "runtime_id": 620, + "runtime_id": 621, "component_based": false }, "minecraft:nether_star": { @@ -2708,7 +2876,7 @@ "component_based": false }, "minecraft:netherite_axe": { - "runtime_id": 606, + "runtime_id": 607, "component_based": false }, "minecraft:netherite_block": { @@ -2716,43 +2884,43 @@ "component_based": false }, "minecraft:netherite_boots": { - "runtime_id": 611, + "runtime_id": 612, "component_based": false }, "minecraft:netherite_chestplate": { - "runtime_id": 609, + "runtime_id": 610, "component_based": false }, "minecraft:netherite_helmet": { - "runtime_id": 608, + "runtime_id": 609, "component_based": false }, "minecraft:netherite_hoe": { - "runtime_id": 607, + "runtime_id": 608, "component_based": false }, "minecraft:netherite_ingot": { - "runtime_id": 602, + "runtime_id": 603, "component_based": false }, "minecraft:netherite_leggings": { - "runtime_id": 610, + "runtime_id": 611, "component_based": false }, "minecraft:netherite_pickaxe": { - "runtime_id": 605, + "runtime_id": 606, "component_based": false }, "minecraft:netherite_scrap": { - "runtime_id": 612, + "runtime_id": 613, "component_based": false }, "minecraft:netherite_shovel": { - "runtime_id": 604, + "runtime_id": 605, "component_based": false }, "minecraft:netherite_sword": { - "runtime_id": 603, + "runtime_id": 604, "component_based": false }, "minecraft:netherrack": { @@ -2779,6 +2947,10 @@ "runtime_id": 375, "component_based": false }, + "minecraft:oak_chest_boat": { + "runtime_id": 633, + "component_based": false + }, "minecraft:oak_sign": { "runtime_id": 358, "component_based": false @@ -2799,6 +2971,18 @@ "runtime_id": 451, "component_based": false }, + "minecraft:ochre_froglight": { + "runtime_id": -471, + "component_based": false + }, + "minecraft:orange_candle": { + "runtime_id": -414, + "component_based": false + }, + "minecraft:orange_candle_cake": { + "runtime_id": -431, + "component_based": false + }, "minecraft:orange_dye": { "runtime_id": 409, "component_based": false @@ -2831,6 +3015,10 @@ "runtime_id": 174, "component_based": false }, + "minecraft:packed_mud": { + "runtime_id": -477, + "component_based": false + }, "minecraft:painting": { "runtime_id": 357, "component_based": false @@ -2847,6 +3035,10 @@ "runtime_id": 478, "component_based": false }, + "minecraft:pearlescent_froglight": { + "runtime_id": -469, + "component_based": false + }, "minecraft:phantom_membrane": { "runtime_id": 574, "component_based": false @@ -2875,6 +3067,14 @@ "runtime_id": 491, "component_based": false }, + "minecraft:pink_candle": { + "runtime_id": -419, + "component_based": false + }, + "minecraft:pink_candle_cake": { + "runtime_id": -436, + "component_based": false + }, "minecraft:pink_dye": { "runtime_id": 404, "component_based": false @@ -2887,7 +3087,7 @@ "runtime_id": 33, "component_based": false }, - "minecraft:pistonarmcollision": { + "minecraft:piston_arm_collision": { "runtime_id": 34, "component_based": false }, @@ -3083,6 +3283,14 @@ "runtime_id": 104, "component_based": false }, + "minecraft:purple_candle": { + "runtime_id": -423, + "component_based": false + }, + "minecraft:purple_candle_cake": { + "runtime_id": -440, + "component_based": false + }, "minecraft:purple_dye": { "runtime_id": 400, "component_based": false @@ -3191,6 +3399,14 @@ "runtime_id": -168, "component_based": false }, + "minecraft:red_candle": { + "runtime_id": -427, + "component_based": false + }, + "minecraft:red_candle_cake": { + "runtime_id": -444, + "component_based": false + }, "minecraft:red_dye": { "runtime_id": 396, "component_based": false @@ -3251,6 +3467,10 @@ "runtime_id": 55, "component_based": false }, + "minecraft:reinforced_deepslate": { + "runtime_id": -466, + "component_based": false + }, "minecraft:repeater": { "runtime_id": 419, "component_based": false @@ -3307,14 +3527,34 @@ "runtime_id": -165, "component_based": false }, + "minecraft:sculk": { + "runtime_id": -458, + "component_based": false + }, + "minecraft:sculk_catalyst": { + "runtime_id": -460, + "component_based": false + }, "minecraft:sculk_sensor": { "runtime_id": -307, "component_based": false }, + "minecraft:sculk_shrieker": { + "runtime_id": -461, + "component_based": false + }, + "minecraft:sculk_vein": { + "runtime_id": -459, + "component_based": false + }, "minecraft:scute": { "runtime_id": 572, "component_based": false }, + "minecraft:sea_lantern": { + "runtime_id": 169, + "component_based": false + }, "minecraft:sea_pickle": { "runtime_id": -156, "component_based": false @@ -3323,10 +3563,6 @@ "runtime_id": -130, "component_based": false }, - "minecraft:sealantern": { - "runtime_id": 169, - "component_based": false - }, "minecraft:shears": { "runtime_id": 421, "component_based": false @@ -3440,7 +3676,7 @@ "component_based": false }, "minecraft:soul_campfire": { - "runtime_id": 621, + "runtime_id": 622, "component_based": false }, "minecraft:soul_fire": { @@ -3468,7 +3704,7 @@ "component_based": false }, "minecraft:spawn_egg": { - "runtime_id": 629, + "runtime_id": 643, "component_based": false }, "minecraft:spider_eye": { @@ -3499,6 +3735,10 @@ "runtime_id": -144, "component_based": false }, + "minecraft:spruce_chest_boat": { + "runtime_id": 636, + "component_based": false + }, "minecraft:spruce_door": { "runtime_id": 553, "component_based": false @@ -3567,7 +3807,7 @@ "runtime_id": 29, "component_based": false }, - "minecraft:stickypistonarmcollision": { + "minecraft:sticky_piston_arm_collision": { "runtime_id": -217, "component_based": false }, @@ -3692,7 +3932,7 @@ "component_based": false }, "minecraft:suspicious_stew": { - "runtime_id": 589, + "runtime_id": 590, "component_based": false }, "minecraft:sweet_berries": { @@ -3703,6 +3943,14 @@ "runtime_id": -207, "component_based": false }, + "minecraft:tadpole_bucket": { + "runtime_id": 629, + "component_based": false + }, + "minecraft:tadpole_spawn_egg": { + "runtime_id": 628, + "component_based": false + }, "minecraft:tallgrass": { "runtime_id": 31, "component_based": false @@ -3743,7 +3991,7 @@ "runtime_id": 546, "component_based": false }, - "minecraft:tripwire": { + "minecraft:trip_wire": { "runtime_id": 132, "component_based": false }, @@ -3807,6 +4055,10 @@ "runtime_id": 93, "component_based": false }, + "minecraft:verdant_froglight": { + "runtime_id": -470, + "component_based": false + }, "minecraft:vex_spawn_egg": { "runtime_id": 476, "component_based": false @@ -3835,12 +4087,16 @@ "runtime_id": 492, "component_based": false }, + "minecraft:warden_spawn_egg": { + "runtime_id": 631, + "component_based": false + }, "minecraft:warped_button": { "runtime_id": -261, "component_based": false }, "minecraft:warped_door": { - "runtime_id": 616, + "runtime_id": 617, "component_based": false }, "minecraft:warped_double_slab": { @@ -3860,7 +4116,7 @@ "component_based": false }, "minecraft:warped_fungus_on_a_stick": { - "runtime_id": 617, + "runtime_id": 618, "component_based": false }, "minecraft:warped_hyphae": { @@ -3884,7 +4140,7 @@ "component_based": false }, "minecraft:warped_sign": { - "runtime_id": 614, + "runtime_id": 615, "component_based": false }, "minecraft:warped_slab": { @@ -4043,6 +4299,14 @@ "runtime_id": 291, "component_based": false }, + "minecraft:white_candle": { + "runtime_id": -413, + "component_based": false + }, + "minecraft:white_candle_cake": { + "runtime_id": -430, + "component_based": false + }, "minecraft:white_dye": { "runtime_id": 410, "component_based": false @@ -4119,6 +4383,14 @@ "runtime_id": 511, "component_based": false }, + "minecraft:yellow_candle": { + "runtime_id": -417, + "component_based": false + }, + "minecraft:yellow_candle_cake": { + "runtime_id": -434, + "component_based": false + }, "minecraft:yellow_dye": { "runtime_id": 406, "component_based": false diff --git a/src/test/resources/org/powernukkit/updater/dumps/proxypass/creativeitems.json b/src/test/resources/org/powernukkit/updater/dumps/proxypass/creativeitems.json new file mode 100644 index 00000000000..3cfb5cfc1c8 --- /dev/null +++ b/src/test/resources/org/powernukkit/updater/dumps/proxypass/creativeitems.json @@ -0,0 +1,5209 @@ +{ + "items" : [ + { + "id" : "minecraft:planks", + "blockRuntimeId" : 5995 + }, + { + "id" : "minecraft:planks", + "blockRuntimeId" : 5996 + }, + { + "id" : "minecraft:planks", + "blockRuntimeId" : 5997 + }, + { + "id" : "minecraft:planks", + "blockRuntimeId" : 5998 + }, + { + "id" : "minecraft:planks", + "blockRuntimeId" : 5999 + }, + { + "id" : "minecraft:planks", + "blockRuntimeId" : 6000 + }, + { + "id" : "minecraft:crimson_planks", + "blockRuntimeId" : 4806 + }, + { + "id" : "minecraft:warped_planks", + "blockRuntimeId" : 928 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1187 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1188 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1189 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1190 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1191 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1192 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1199 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1194 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1195 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1193 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1196 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1200 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1197 + }, + { + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1198 + }, + { + "id" : "minecraft:blackstone_wall", + "blockRuntimeId" : 3919 + }, + { + "id" : "minecraft:polished_blackstone_wall", + "blockRuntimeId" : 6640 + }, + { + "id" : "minecraft:polished_blackstone_brick_wall", + "blockRuntimeId" : 978 + }, + { + "id" : "minecraft:cobbled_deepslate_wall", + "blockRuntimeId" : 8024 + }, + { + "id" : "minecraft:deepslate_tile_wall", + "blockRuntimeId" : 5027 + }, + { + "id" : "minecraft:polished_deepslate_wall", + "blockRuntimeId" : 7759 + }, + { + "id" : "minecraft:deepslate_brick_wall", + "blockRuntimeId" : 437 + }, + { + "id" : "minecraft:fence", + "blockRuntimeId" : 7306 + }, + { + "id" : "minecraft:fence", + "blockRuntimeId" : 7307 + }, + { + "id" : "minecraft:fence", + "blockRuntimeId" : 7308 + }, + { + "id" : "minecraft:fence", + "blockRuntimeId" : 7309 + }, + { + "id" : "minecraft:fence", + "blockRuntimeId" : 7310 + }, + { + "id" : "minecraft:fence", + "blockRuntimeId" : 7311 + }, + { + "id" : "minecraft:nether_brick_fence", + "blockRuntimeId" : 4238 + }, + { + "id" : "minecraft:crimson_fence", + "blockRuntimeId" : 7938 + }, + { + "id" : "minecraft:warped_fence", + "blockRuntimeId" : 5777 + }, + { + "id" : "minecraft:fence_gate", + "blockRuntimeId" : 76 + }, + { + "id" : "minecraft:spruce_fence_gate", + "blockRuntimeId" : 6475 + }, + { + "id" : "minecraft:birch_fence_gate", + "blockRuntimeId" : 3782 + }, + { + "id" : "minecraft:jungle_fence_gate", + "blockRuntimeId" : 5315 + }, + { + "id" : "minecraft:acacia_fence_gate", + "blockRuntimeId" : 7528 + }, + { + "id" : "minecraft:dark_oak_fence_gate", + "blockRuntimeId" : 4156 + }, + { + "id" : "minecraft:crimson_fence_gate", + "blockRuntimeId" : 4617 + }, + { + "id" : "minecraft:warped_fence_gate", + "blockRuntimeId" : 5349 + }, + { + "id" : "minecraft:normal_stone_stairs", + "blockRuntimeId" : 641 + }, + { + "id" : "minecraft:stone_stairs", + "blockRuntimeId" : 3713 + }, + { + "id" : "minecraft:mossy_cobblestone_stairs", + "blockRuntimeId" : 4081 + }, + { + "id" : "minecraft:oak_stairs", + "blockRuntimeId" : 287 + }, + { + "id" : "minecraft:spruce_stairs", + "blockRuntimeId" : 128 + }, + { + "id" : "minecraft:birch_stairs", + "blockRuntimeId" : 6957 + }, + { + "id" : "minecraft:jungle_stairs", + "blockRuntimeId" : 6883 + }, + { + "id" : "minecraft:acacia_stairs", + "blockRuntimeId" : 6123 + }, + { + "id" : "minecraft:dark_oak_stairs", + "blockRuntimeId" : 5019 + }, + { + "id" : "minecraft:stone_brick_stairs", + "blockRuntimeId" : 939 + }, + { + "id" : "minecraft:mossy_stone_brick_stairs", + "blockRuntimeId" : 5807 + }, + { + "id" : "minecraft:sandstone_stairs", + "blockRuntimeId" : 3592 + }, + { + "id" : "minecraft:smooth_sandstone_stairs", + "blockRuntimeId" : 3632 + }, + { + "id" : "minecraft:red_sandstone_stairs", + "blockRuntimeId" : 5300 + }, + { + "id" : "minecraft:smooth_red_sandstone_stairs", + "blockRuntimeId" : 5496 + }, + { + "id" : "minecraft:granite_stairs", + "blockRuntimeId" : 3542 + }, + { + "id" : "minecraft:polished_granite_stairs", + "blockRuntimeId" : 4139 + }, + { + "id" : "minecraft:diorite_stairs", + "blockRuntimeId" : 4339 + }, + { + "id" : "minecraft:polished_diorite_stairs", + "blockRuntimeId" : 6588 + }, + { + "id" : "minecraft:andesite_stairs", + "blockRuntimeId" : 5258 + }, + { + "id" : "minecraft:polished_andesite_stairs", + "blockRuntimeId" : 6982 + }, + { + "id" : "minecraft:brick_stairs", + "blockRuntimeId" : 6421 + }, + { + "id" : "minecraft:nether_brick_stairs", + "blockRuntimeId" : 106 + }, + { + "id" : "minecraft:red_nether_brick_stairs", + "blockRuntimeId" : 6493 + }, + { + "id" : "minecraft:end_brick_stairs", + "blockRuntimeId" : 6347 + }, + { + "id" : "minecraft:quartz_stairs", + "blockRuntimeId" : 4723 + }, + { + "id" : "minecraft:smooth_quartz_stairs", + "blockRuntimeId" : 7642 + }, + { + "id" : "minecraft:purpur_stairs", + "blockRuntimeId" : 7697 + }, + { + "id" : "minecraft:prismarine_stairs", + "blockRuntimeId" : 7205 + }, + { + "id" : "minecraft:dark_prismarine_stairs", + "blockRuntimeId" : 7372 + }, + { + "id" : "minecraft:prismarine_bricks_stairs", + "blockRuntimeId" : 206 + }, + { + "id" : "minecraft:crimson_stairs", + "blockRuntimeId" : 6245 + }, + { + "id" : "minecraft:warped_stairs", + "blockRuntimeId" : 3723 + }, + { + "id" : "minecraft:blackstone_stairs", + "blockRuntimeId" : 6973 + }, + { + "id" : "minecraft:polished_blackstone_stairs", + "blockRuntimeId" : 4245 + }, + { + "id" : "minecraft:polished_blackstone_brick_stairs", + "blockRuntimeId" : 4425 + }, + { + "id" : "minecraft:cut_copper_stairs", + "blockRuntimeId" : 4528 + }, + { + "id" : "minecraft:exposed_cut_copper_stairs", + "blockRuntimeId" : 4519 + }, + { + "id" : "minecraft:weathered_cut_copper_stairs", + "blockRuntimeId" : 4253 + }, + { + "id" : "minecraft:oxidized_cut_copper_stairs", + "blockRuntimeId" : 361 + }, + { + "id" : "minecraft:waxed_cut_copper_stairs", + "blockRuntimeId" : 403 + }, + { + "id" : "minecraft:waxed_exposed_cut_copper_stairs", + "blockRuntimeId" : 3891 + }, + { + "id" : "minecraft:waxed_weathered_cut_copper_stairs", + "blockRuntimeId" : 6091 + }, + { + "id" : "minecraft:waxed_oxidized_cut_copper_stairs", + "blockRuntimeId" : 5764 + }, + { + "id" : "minecraft:cobbled_deepslate_stairs", + "blockRuntimeId" : 147 + }, + { + "id" : "minecraft:deepslate_tile_stairs", + "blockRuntimeId" : 4609 + }, + { + "id" : "minecraft:polished_deepslate_stairs", + "blockRuntimeId" : 308 + }, + { + "id" : "minecraft:deepslate_brick_stairs", + "blockRuntimeId" : 7364 + }, + { + "id" : "minecraft:wooden_door" + }, + { + "id" : "minecraft:spruce_door" + }, + { + "id" : "minecraft:birch_door" + }, + { + "id" : "minecraft:jungle_door" + }, + { + "id" : "minecraft:acacia_door" + }, + { + "id" : "minecraft:dark_oak_door" + }, + { + "id" : "minecraft:iron_door" + }, + { + "id" : "minecraft:crimson_door" + }, + { + "id" : "minecraft:warped_door" + }, + { + "id" : "minecraft:trapdoor", + "blockRuntimeId" : 227 + }, + { + "id" : "minecraft:spruce_trapdoor", + "blockRuntimeId" : 6443 + }, + { + "id" : "minecraft:birch_trapdoor", + "blockRuntimeId" : 6524 + }, + { + "id" : "minecraft:jungle_trapdoor", + "blockRuntimeId" : 5331 + }, + { + "id" : "minecraft:acacia_trapdoor", + "blockRuntimeId" : 5539 + }, + { + "id" : "minecraft:dark_oak_trapdoor", + "blockRuntimeId" : 7444 + }, + { + "id" : "minecraft:iron_trapdoor", + "blockRuntimeId" : 335 + }, + { + "id" : "minecraft:crimson_trapdoor", + "blockRuntimeId" : 4281 + }, + { + "id" : "minecraft:warped_trapdoor", + "blockRuntimeId" : 4689 + }, + { + "id" : "minecraft:iron_bars", + "blockRuntimeId" : 4757 + }, + { + "id" : "minecraft:glass", + "blockRuntimeId" : 6088 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1140 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1148 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1147 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1155 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1152 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1154 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1141 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1144 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1145 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1153 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1149 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1143 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1151 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1150 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1142 + }, + { + "id" : "minecraft:stained_glass", + "blockRuntimeId" : 1146 + }, + { + "id" : "minecraft:tinted_glass", + "blockRuntimeId" : 5899 + }, + { + "id" : "minecraft:glass_pane", + "blockRuntimeId" : 5189 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4808 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4816 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4815 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4823 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4820 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4822 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4809 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4812 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4813 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4821 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4817 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4811 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4819 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4818 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4810 + }, + { + "id" : "minecraft:stained_glass_pane", + "blockRuntimeId" : 4814 + }, + { + "id" : "minecraft:ladder", + "blockRuntimeId" : 8204 + }, + { + "id" : "minecraft:scaffolding", + "blockRuntimeId" : 3576 + }, + { + "id" : "minecraft:double_stone_slab", + "blockRuntimeId" : 249 + }, + { + "id" : "minecraft:double_stone_slab4", + "blockRuntimeId" : 6632 + }, + { + "id" : "minecraft:double_stone_slab", + "blockRuntimeId" : 252 + }, + { + "id" : "minecraft:double_stone_slab2", + "blockRuntimeId" : 6603 + }, + { + "id" : "minecraft:wooden_slab", + "blockRuntimeId" : 5220 + }, + { + "id" : "minecraft:wooden_slab", + "blockRuntimeId" : 5221 + }, + { + "id" : "minecraft:wooden_slab", + "blockRuntimeId" : 5222 + }, + { + "id" : "minecraft:wooden_slab", + "blockRuntimeId" : 5223 + }, + { + "id" : "minecraft:wooden_slab", + "blockRuntimeId" : 5224 + }, + { + "id" : "minecraft:wooden_slab", + "blockRuntimeId" : 5225 + }, + { + "id" : "minecraft:double_stone_slab", + "blockRuntimeId" : 254 + }, + { + "id" : "minecraft:double_stone_slab4", + "blockRuntimeId" : 6630 + }, + { + "id" : "minecraft:double_stone_slab", + "blockRuntimeId" : 250 + }, + { + "id" : "minecraft:double_stone_slab4", + "blockRuntimeId" : 6633 + }, + { + "id" : "minecraft:double_stone_slab2", + "blockRuntimeId" : 6604 + }, + { + "id" : "minecraft:double_stone_slab2", + "blockRuntimeId" : 6598 + }, + { + "id" : "minecraft:double_stone_slab4", + "blockRuntimeId" : 6634 + }, + { + "id" : "minecraft:double_stone_slab3", + "blockRuntimeId" : 6615 + }, + { + "id" : "minecraft:double_stone_slab3", + "blockRuntimeId" : 6620 + }, + { + "id" : "minecraft:double_stone_slab3", + "blockRuntimeId" : 6621 + }, + { + "id" : "minecraft:double_stone_slab3", + "blockRuntimeId" : 6618 + }, + { + "id" : "minecraft:double_stone_slab3", + "blockRuntimeId" : 6619 + }, + { + "id" : "minecraft:double_stone_slab3", + "blockRuntimeId" : 6617 + }, + { + "id" : "minecraft:double_stone_slab3", + "blockRuntimeId" : 6616 + }, + { + "id" : "minecraft:double_stone_slab", + "blockRuntimeId" : 253 + }, + { + "id" : "minecraft:double_stone_slab", + "blockRuntimeId" : 256 + }, + { + "id" : "minecraft:double_stone_slab2", + "blockRuntimeId" : 6605 + }, + { + "id" : "minecraft:double_stone_slab3", + "blockRuntimeId" : 6614 + }, + { + "id" : "minecraft:double_stone_slab", + "blockRuntimeId" : 255 + }, + { + "id" : "minecraft:double_stone_slab4", + "blockRuntimeId" : 6631 + }, + { + "id" : "minecraft:double_stone_slab2", + "blockRuntimeId" : 6599 + }, + { + "id" : "minecraft:double_stone_slab2", + "blockRuntimeId" : 6600 + }, + { + "id" : "minecraft:double_stone_slab2", + "blockRuntimeId" : 6601 + }, + { + "id" : "minecraft:double_stone_slab2", + "blockRuntimeId" : 6602 + }, + { + "id" : "minecraft:crimson_slab", + "blockRuntimeId" : 5824 + }, + { + "id" : "minecraft:warped_slab", + "blockRuntimeId" : 6375 + }, + { + "id" : "minecraft:blackstone_slab", + "blockRuntimeId" : 918 + }, + { + "id" : "minecraft:polished_blackstone_slab", + "blockRuntimeId" : 5942 + }, + { + "id" : "minecraft:polished_blackstone_brick_slab", + "blockRuntimeId" : 4175 + }, + { + "id" : "minecraft:cut_copper_slab", + "blockRuntimeId" : 5191 + }, + { + "id" : "minecraft:exposed_cut_copper_slab", + "blockRuntimeId" : 6491 + }, + { + "id" : "minecraft:weathered_cut_copper_slab", + "blockRuntimeId" : 5977 + }, + { + "id" : "minecraft:oxidized_cut_copper_slab", + "blockRuntimeId" : 5232 + }, + { + "id" : "minecraft:waxed_cut_copper_slab", + "blockRuntimeId" : 7757 + }, + { + "id" : "minecraft:waxed_exposed_cut_copper_slab", + "blockRuntimeId" : 247 + }, + { + "id" : "minecraft:waxed_weathered_cut_copper_slab", + "blockRuntimeId" : 6436 + }, + { + "id" : "minecraft:waxed_oxidized_cut_copper_slab", + "blockRuntimeId" : 716 + }, + { + "id" : "minecraft:cobbled_deepslate_slab", + "blockRuntimeId" : 7252 + }, + { + "id" : "minecraft:polished_deepslate_slab", + "blockRuntimeId" : 302 + }, + { + "id" : "minecraft:deepslate_tile_slab", + "blockRuntimeId" : 4239 + }, + { + "id" : "minecraft:deepslate_brick_slab", + "blockRuntimeId" : 3721 + }, + { + "id" : "minecraft:brick_block", + "blockRuntimeId" : 4721 + }, + { + "id" : "minecraft:chiseled_nether_bricks", + "blockRuntimeId" : 7191 + }, + { + "id" : "minecraft:cracked_nether_bricks", + "blockRuntimeId" : 4484 + }, + { + "id" : "minecraft:quartz_bricks", + "blockRuntimeId" : 6316 + }, + { + "id" : "minecraft:stonebrick", + "blockRuntimeId" : 6438 + }, + { + "id" : "minecraft:stonebrick", + "blockRuntimeId" : 6439 + }, + { + "id" : "minecraft:stonebrick", + "blockRuntimeId" : 6440 + }, + { + "id" : "minecraft:stonebrick", + "blockRuntimeId" : 6441 + }, + { + "id" : "minecraft:end_bricks", + "blockRuntimeId" : 295 + }, + { + "id" : "minecraft:prismarine", + "blockRuntimeId" : 6011 + }, + { + "id" : "minecraft:polished_blackstone_bricks", + "blockRuntimeId" : 4636 + }, + { + "id" : "minecraft:cracked_polished_blackstone_bricks", + "blockRuntimeId" : 7156 + }, + { + "id" : "minecraft:gilded_blackstone", + "blockRuntimeId" : 4518 + }, + { + "id" : "minecraft:chiseled_polished_blackstone", + "blockRuntimeId" : 5018 + }, + { + "id" : "minecraft:deepslate_tiles", + "blockRuntimeId" : 4513 + }, + { + "id" : "minecraft:cracked_deepslate_tiles", + "blockRuntimeId" : 4149 + }, + { + "id" : "minecraft:deepslate_bricks", + "blockRuntimeId" : 5414 + }, + { + "id" : "minecraft:cracked_deepslate_bricks", + "blockRuntimeId" : 5314 + }, + { + "id" : "minecraft:chiseled_deepslate", + "blockRuntimeId" : 5190 + }, + { + "id" : "minecraft:cobblestone", + "blockRuntimeId" : 3620 + }, + { + "id" : "minecraft:mossy_cobblestone", + "blockRuntimeId" : 266 + }, + { + "id" : "minecraft:cobbled_deepslate", + "blockRuntimeId" : 6544 + }, + { + "id" : "minecraft:smooth_stone", + "blockRuntimeId" : 4514 + }, + { + "id" : "minecraft:sandstone", + "blockRuntimeId" : 3658 + }, + { + "id" : "minecraft:sandstone", + "blockRuntimeId" : 3659 + }, + { + "id" : "minecraft:sandstone", + "blockRuntimeId" : 3660 + }, + { + "id" : "minecraft:sandstone", + "blockRuntimeId" : 3661 + }, + { + "id" : "minecraft:red_sandstone", + "blockRuntimeId" : 6471 + }, + { + "id" : "minecraft:red_sandstone", + "blockRuntimeId" : 6472 + }, + { + "id" : "minecraft:red_sandstone", + "blockRuntimeId" : 6473 + }, + { + "id" : "minecraft:red_sandstone", + "blockRuntimeId" : 6474 + }, + { + "id" : "minecraft:coal_block", + "blockRuntimeId" : 5348 + }, + { + "id" : "minecraft:dried_kelp_block", + "blockRuntimeId" : 7921 + }, + { + "id" : "minecraft:gold_block", + "blockRuntimeId" : 305 + }, + { + "id" : "minecraft:iron_block", + "blockRuntimeId" : 8203 + }, + { + "id" : "minecraft:copper_block", + "blockRuntimeId" : 4607 + }, + { + "id" : "minecraft:exposed_copper", + "blockRuntimeId" : 601 + }, + { + "id" : "minecraft:weathered_copper", + "blockRuntimeId" : 8188 + }, + { + "id" : "minecraft:oxidized_copper", + "blockRuntimeId" : 3558 + }, + { + "id" : "minecraft:waxed_copper", + "blockRuntimeId" : 7676 + }, + { + "id" : "minecraft:waxed_exposed_copper", + "blockRuntimeId" : 702 + }, + { + "id" : "minecraft:waxed_weathered_copper", + "blockRuntimeId" : 715 + }, + { + "id" : "minecraft:waxed_oxidized_copper", + "blockRuntimeId" : 7484 + }, + { + "id" : "minecraft:cut_copper", + "blockRuntimeId" : 4645 + }, + { + "id" : "minecraft:exposed_cut_copper", + "blockRuntimeId" : 6090 + }, + { + "id" : "minecraft:weathered_cut_copper", + "blockRuntimeId" : 7139 + }, + { + "id" : "minecraft:oxidized_cut_copper", + "blockRuntimeId" : 5428 + }, + { + "id" : "minecraft:waxed_cut_copper", + "blockRuntimeId" : 7235 + }, + { + "id" : "minecraft:waxed_exposed_cut_copper", + "blockRuntimeId" : 3814 + }, + { + "id" : "minecraft:waxed_weathered_cut_copper", + "blockRuntimeId" : 4807 + }, + { + "id" : "minecraft:waxed_oxidized_cut_copper", + "blockRuntimeId" : 214 + }, + { + "id" : "minecraft:emerald_block", + "blockRuntimeId" : 1164 + }, + { + "id" : "minecraft:diamond_block", + "blockRuntimeId" : 286 + }, + { + "id" : "minecraft:lapis_block", + "blockRuntimeId" : 4234 + }, + { + "id" : "minecraft:raw_iron_block", + "blockRuntimeId" : 8202 + }, + { + "id" : "minecraft:raw_copper_block", + "blockRuntimeId" : 5219 + }, + { + "id" : "minecraft:raw_gold_block", + "blockRuntimeId" : 371 + }, + { + "id" : "minecraft:quartz_block", + "blockRuntimeId" : 3701 + }, + { + "id" : "minecraft:quartz_block", + "blockRuntimeId" : 3703 + }, + { + "id" : "minecraft:quartz_block", + "blockRuntimeId" : 3702 + }, + { + "id" : "minecraft:quartz_block", + "blockRuntimeId" : 3704 + }, + { + "id" : "minecraft:prismarine", + "blockRuntimeId" : 6009 + }, + { + "id" : "minecraft:prismarine", + "blockRuntimeId" : 6010 + }, + { + "id" : "minecraft:slime", + "blockRuntimeId" : 4197 + }, + { + "id" : "minecraft:honey_block", + "blockRuntimeId" : 900 + }, + { + "id" : "minecraft:honeycomb_block", + "blockRuntimeId" : 4424 + }, + { + "id" : "minecraft:hay_block", + "blockRuntimeId" : 703 + }, + { + "id" : "minecraft:bone_block", + "blockRuntimeId" : 4198 + }, + { + "id" : "minecraft:nether_brick", + "blockRuntimeId" : 7214 + }, + { + "id" : "minecraft:red_nether_brick", + "blockRuntimeId" : 146 + }, + { + "id" : "minecraft:netherite_block", + "blockRuntimeId" : 3780 + }, + { + "id" : "minecraft:lodestone", + "blockRuntimeId" : 8201 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3471 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3470 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3477 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3464 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3467 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3468 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3476 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3472 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3466 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3473 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3465 + }, + { + "id" : "minecraft:wool", + "blockRuntimeId" : 3469 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 956 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 964 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 963 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 971 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 968 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 970 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 957 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 960 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 961 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 969 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 965 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 959 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 967 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 966 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 958 + }, + { + "id" : "minecraft:carpet", + "blockRuntimeId" : 962 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6229 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6237 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6236 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6244 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6241 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6243 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6230 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6233 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6234 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6242 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6238 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6232 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6240 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6239 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6231 + }, + { + "id" : "minecraft:concrete_powder", + "blockRuntimeId" : 6235 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 668 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 676 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 675 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 683 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 680 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 682 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 669 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 672 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 673 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 681 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 677 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 671 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 679 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 678 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 670 + }, + { + "id" : "minecraft:concrete", + "blockRuntimeId" : 674 + }, + { + "id" : "minecraft:clay", + "blockRuntimeId" : 7066 + }, + { + "id" : "minecraft:hardened_clay", + "blockRuntimeId" : 649 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6099 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6107 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6106 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6114 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6111 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6113 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6100 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6103 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6104 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6112 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6108 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6102 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6110 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6109 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6101 + }, + { + "id" : "minecraft:stained_hardened_clay", + "blockRuntimeId" : 6105 + }, + { + "id" : "minecraft:white_glazed_terracotta", + "blockRuntimeId" : 5523 + }, + { + "id" : "minecraft:silver_glazed_terracotta", + "blockRuntimeId" : 3536 + }, + { + "id" : "minecraft:gray_glazed_terracotta", + "blockRuntimeId" : 8195 + }, + { + "id" : "minecraft:black_glazed_terracotta", + "blockRuntimeId" : 5758 + }, + { + "id" : "minecraft:brown_glazed_terracotta", + "blockRuntimeId" : 3552 + }, + { + "id" : "minecraft:red_glazed_terracotta", + "blockRuntimeId" : 4150 + }, + { + "id" : "minecraft:orange_glazed_terracotta", + "blockRuntimeId" : 1156 + }, + { + "id" : "minecraft:yellow_glazed_terracotta", + "blockRuntimeId" : 921 + }, + { + "id" : "minecraft:lime_glazed_terracotta", + "blockRuntimeId" : 221 + }, + { + "id" : "minecraft:green_glazed_terracotta", + "blockRuntimeId" : 6501 + }, + { + "id" : "minecraft:cyan_glazed_terracotta", + "blockRuntimeId" : 5308 + }, + { + "id" : "minecraft:light_blue_glazed_terracotta", + "blockRuntimeId" : 5421 + }, + { + "id" : "minecraft:blue_glazed_terracotta", + "blockRuntimeId" : 5415 + }, + { + "id" : "minecraft:purple_glazed_terracotta", + "blockRuntimeId" : 6965 + }, + { + "id" : "minecraft:magenta_glazed_terracotta", + "blockRuntimeId" : 972 + }, + { + "id" : "minecraft:pink_glazed_terracotta", + "blockRuntimeId" : 6430 + }, + { + "id" : "minecraft:purpur_block", + "blockRuntimeId" : 7656 + }, + { + "id" : "minecraft:purpur_block", + "blockRuntimeId" : 7658 + }, + { + "id" : "minecraft:nether_wart_block", + "blockRuntimeId" : 4241 + }, + { + "id" : "minecraft:warped_wart_block", + "blockRuntimeId" : 5829 + }, + { + "id" : "minecraft:shroomlight", + "blockRuntimeId" : 5017 + }, + { + "id" : "minecraft:crimson_nylium", + "blockRuntimeId" : 4172 + }, + { + "id" : "minecraft:warped_nylium", + "blockRuntimeId" : 6314 + }, + { + "id" : "minecraft:basalt", + "blockRuntimeId" : 4297 + }, + { + "id" : "minecraft:polished_basalt", + "blockRuntimeId" : 24 + }, + { + "id" : "minecraft:smooth_basalt", + "blockRuntimeId" : 1162 + }, + { + "id" : "minecraft:soul_soil", + "blockRuntimeId" : 5738 + }, + { + "id" : "minecraft:dirt", + "blockRuntimeId" : 5701 + }, + { + "id" : "minecraft:dirt", + "blockRuntimeId" : 5702 + }, + { + "id" : "minecraft:farmland", + "blockRuntimeId" : 3901 + }, + { + "id" : "minecraft:grass", + "blockRuntimeId" : 6891 + }, + { + "id" : "minecraft:grass_path", + "blockRuntimeId" : 8023 + }, + { + "id" : "minecraft:podzol", + "blockRuntimeId" : 4606 + }, + { + "id" : "minecraft:mycelium", + "blockRuntimeId" : 3688 + }, + { + "id" : "minecraft:stone", + "blockRuntimeId" : 661 + }, + { + "id" : "minecraft:iron_ore", + "blockRuntimeId" : 4646 + }, + { + "id" : "minecraft:gold_ore", + "blockRuntimeId" : 920 + }, + { + "id" : "minecraft:diamond_ore", + "blockRuntimeId" : 4309 + }, + { + "id" : "minecraft:lapis_ore", + "blockRuntimeId" : 7641 + }, + { + "id" : "minecraft:redstone_ore", + "blockRuntimeId" : 4237 + }, + { + "id" : "minecraft:coal_ore", + "blockRuntimeId" : 4235 + }, + { + "id" : "minecraft:copper_ore", + "blockRuntimeId" : 3559 + }, + { + "id" : "minecraft:emerald_ore", + "blockRuntimeId" : 7289 + }, + { + "id" : "minecraft:quartz_ore", + "blockRuntimeId" : 4433 + }, + { + "id" : "minecraft:nether_gold_ore", + "blockRuntimeId" : 27 + }, + { + "id" : "minecraft:ancient_debris", + "blockRuntimeId" : 6031 + }, + { + "id" : "minecraft:deepslate_iron_ore", + "blockRuntimeId" : 7215 + }, + { + "id" : "minecraft:deepslate_gold_ore", + "blockRuntimeId" : 6030 + }, + { + "id" : "minecraft:deepslate_diamond_ore", + "blockRuntimeId" : 7980 + }, + { + "id" : "minecraft:deepslate_lapis_ore", + "blockRuntimeId" : 7204 + }, + { + "id" : "minecraft:deepslate_redstone_ore", + "blockRuntimeId" : 6507 + }, + { + "id" : "minecraft:deepslate_emerald_ore", + "blockRuntimeId" : 6315 + }, + { + "id" : "minecraft:deepslate_coal_ore", + "blockRuntimeId" : 7138 + }, + { + "id" : "minecraft:deepslate_copper_ore", + "blockRuntimeId" : 105 + }, + { + "id" : "minecraft:gravel", + "blockRuntimeId" : 8226 + }, + { + "id" : "minecraft:stone", + "blockRuntimeId" : 662 + }, + { + "id" : "minecraft:stone", + "blockRuntimeId" : 664 + }, + { + "id" : "minecraft:stone", + "blockRuntimeId" : 666 + }, + { + "id" : "minecraft:blackstone", + "blockRuntimeId" : 7527 + }, + { + "id" : "minecraft:deepslate", + "blockRuntimeId" : 267 + }, + { + "id" : "minecraft:stone", + "blockRuntimeId" : 663 + }, + { + "id" : "minecraft:stone", + "blockRuntimeId" : 665 + }, + { + "id" : "minecraft:stone", + "blockRuntimeId" : 667 + }, + { + "id" : "minecraft:polished_blackstone", + "blockRuntimeId" : 3687 + }, + { + "id" : "minecraft:polished_deepslate", + "blockRuntimeId" : 7696 + }, + { + "id" : "minecraft:sand", + "blockRuntimeId" : 4178 + }, + { + "id" : "minecraft:sand", + "blockRuntimeId" : 4179 + }, + { + "id" : "minecraft:cactus", + "blockRuntimeId" : 6940 + }, + { + "id" : "minecraft:log", + "blockRuntimeId" : 6546 + }, + { + "id" : "minecraft:stripped_oak_log", + "blockRuntimeId" : 7485 + }, + { + "id" : "minecraft:log", + "blockRuntimeId" : 6547 + }, + { + "id" : "minecraft:stripped_spruce_log", + "blockRuntimeId" : 6253 + }, + { + "id" : "minecraft:log", + "blockRuntimeId" : 6548 + }, + { + "id" : "minecraft:stripped_birch_log", + "blockRuntimeId" : 5896 + }, + { + "id" : "minecraft:log", + "blockRuntimeId" : 6549 + }, + { + "id" : "minecraft:stripped_jungle_log", + "blockRuntimeId" : 650 + }, + { + "id" : "minecraft:log2", + "blockRuntimeId" : 3835 + }, + { + "id" : "minecraft:stripped_acacia_log", + "blockRuntimeId" : 5772 + }, + { + "id" : "minecraft:log2", + "blockRuntimeId" : 3836 + }, + { + "id" : "minecraft:stripped_dark_oak_log", + "blockRuntimeId" : 216 + }, + { + "id" : "minecraft:crimson_stem", + "blockRuntimeId" : 5821 + }, + { + "id" : "minecraft:stripped_crimson_stem", + "blockRuntimeId" : 6864 + }, + { + "id" : "minecraft:warped_stem", + "blockRuntimeId" : 6377 + }, + { + "id" : "minecraft:stripped_warped_stem", + "blockRuntimeId" : 7342 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3479 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3485 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3480 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3486 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3481 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3487 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3482 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3488 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3483 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3489 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3484 + }, + { + "id" : "minecraft:wood", + "blockRuntimeId" : 3490 + }, + { + "id" : "minecraft:crimson_hyphae", + "blockRuntimeId" : 4242 + }, + { + "id" : "minecraft:stripped_crimson_hyphae", + "blockRuntimeId" : 6390 + }, + { + "id" : "minecraft:warped_hyphae", + "blockRuntimeId" : 5826 + }, + { + "id" : "minecraft:stripped_warped_hyphae", + "blockRuntimeId" : 5529 + }, + { + "id" : "minecraft:leaves", + "blockRuntimeId" : 6014 + }, + { + "id" : "minecraft:leaves", + "blockRuntimeId" : 6015 + }, + { + "id" : "minecraft:leaves", + "blockRuntimeId" : 6016 + }, + { + "id" : "minecraft:leaves", + "blockRuntimeId" : 6017 + }, + { + "id" : "minecraft:leaves2", + "blockRuntimeId" : 4301 + }, + { + "id" : "minecraft:leaves2", + "blockRuntimeId" : 4302 + }, + { + "id" : "minecraft:azalea_leaves", + "blockRuntimeId" : 7652 + }, + { + "id" : "minecraft:azalea_leaves_flowered", + "blockRuntimeId" : 6304 + }, + { + "id" : "minecraft:sapling", + "blockRuntimeId" : 720 + }, + { + "id" : "minecraft:sapling", + "blockRuntimeId" : 721 + }, + { + "id" : "minecraft:sapling", + "blockRuntimeId" : 722 + }, + { + "id" : "minecraft:sapling", + "blockRuntimeId" : 723 + }, + { + "id" : "minecraft:sapling", + "blockRuntimeId" : 724 + }, + { + "id" : "minecraft:sapling", + "blockRuntimeId" : 725 + }, + { + "id" : "minecraft:bee_nest", + "blockRuntimeId" : 5704 + }, + { + "id" : "minecraft:wheat_seeds" + }, + { + "id" : "minecraft:pumpkin_seeds" + }, + { + "id" : "minecraft:melon_seeds" + }, + { + "id" : "minecraft:beetroot_seeds" + }, + { + "id" : "minecraft:wheat" + }, + { + "id" : "minecraft:beetroot" + }, + { + "id" : "minecraft:potato" + }, + { + "id" : "minecraft:poisonous_potato" + }, + { + "id" : "minecraft:carrot" + }, + { + "id" : "minecraft:golden_carrot" + }, + { + "id" : "minecraft:apple" + }, + { + "id" : "minecraft:golden_apple" + }, + { + "id" : "minecraft:enchanted_golden_apple" + }, + { + "id" : "minecraft:melon_block", + "blockRuntimeId" : 402 + }, + { + "id" : "minecraft:melon_slice" + }, + { + "id" : "minecraft:glistering_melon_slice" + }, + { + "id" : "minecraft:sweet_berries" + }, + { + "id" : "minecraft:glow_berries" + }, + { + "id" : "minecraft:pumpkin", + "blockRuntimeId" : 4509 + }, + { + "id" : "minecraft:carved_pumpkin", + "blockRuntimeId" : 7320 + }, + { + "id" : "minecraft:lit_pumpkin", + "blockRuntimeId" : 6559 + }, + { + "id" : "minecraft:honeycomb" + }, + { + "id" : "minecraft:tallgrass", + "blockRuntimeId" : 937 + }, + { + "id" : "minecraft:double_plant", + "blockRuntimeId" : 5405 + }, + { + "id" : "minecraft:tallgrass", + "blockRuntimeId" : 936 + }, + { + "id" : "minecraft:double_plant", + "blockRuntimeId" : 5404 + }, + { + "id" : "minecraft:nether_sprouts" + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6383 + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6381 + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6382 + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6380 + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6384 + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6388 + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6386 + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6387 + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6385 + }, + { + "id" : "minecraft:coral", + "blockRuntimeId" : 6389 + }, + { + "id" : "minecraft:coral_fan", + "blockRuntimeId" : 4540 + }, + { + "id" : "minecraft:coral_fan", + "blockRuntimeId" : 4538 + }, + { + "id" : "minecraft:coral_fan", + "blockRuntimeId" : 4539 + }, + { + "id" : "minecraft:coral_fan", + "blockRuntimeId" : 4537 + }, + { + "id" : "minecraft:coral_fan", + "blockRuntimeId" : 4541 + }, + { + "id" : "minecraft:coral_fan_dead", + "blockRuntimeId" : 69 + }, + { + "id" : "minecraft:coral_fan_dead", + "blockRuntimeId" : 67 + }, + { + "id" : "minecraft:coral_fan_dead", + "blockRuntimeId" : 68 + }, + { + "id" : "minecraft:coral_fan_dead", + "blockRuntimeId" : 66 + }, + { + "id" : "minecraft:coral_fan_dead", + "blockRuntimeId" : 70 + }, + { + "id" : "minecraft:kelp" + }, + { + "id" : "minecraft:seagrass", + "blockRuntimeId" : 244 + }, + { + "id" : "minecraft:crimson_roots", + "blockRuntimeId" : 7515 + }, + { + "id" : "minecraft:warped_roots", + "blockRuntimeId" : 4310 + }, + { + "id" : "minecraft:yellow_flower", + "blockRuntimeId" : 316 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3621 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3622 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3623 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3624 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3625 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3626 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3627 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3628 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3629 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3630 + }, + { + "id" : "minecraft:red_flower", + "blockRuntimeId" : 3631 + }, + { + "id" : "minecraft:double_plant", + "blockRuntimeId" : 5402 + }, + { + "id" : "minecraft:double_plant", + "blockRuntimeId" : 5403 + }, + { + "id" : "minecraft:double_plant", + "blockRuntimeId" : 5406 + }, + { + "id" : "minecraft:double_plant", + "blockRuntimeId" : 5407 + }, + { + "id" : "minecraft:wither_rose", + "blockRuntimeId" : 6089 + }, + { + "id" : "minecraft:white_dye" + }, + { + "id" : "minecraft:light_gray_dye" + }, + { + "id" : "minecraft:gray_dye" + }, + { + "id" : "minecraft:black_dye" + }, + { + "id" : "minecraft:brown_dye" + }, + { + "id" : "minecraft:red_dye" + }, + { + "id" : "minecraft:orange_dye" + }, + { + "id" : "minecraft:yellow_dye" + }, + { + "id" : "minecraft:lime_dye" + }, + { + "id" : "minecraft:green_dye" + }, + { + "id" : "minecraft:cyan_dye" + }, + { + "id" : "minecraft:light_blue_dye" + }, + { + "id" : "minecraft:blue_dye" + }, + { + "id" : "minecraft:purple_dye" + }, + { + "id" : "minecraft:magenta_dye" + }, + { + "id" : "minecraft:pink_dye" + }, + { + "id" : "minecraft:ink_sac" + }, + { + "id" : "minecraft:glow_ink_sac" + }, + { + "id" : "minecraft:cocoa_beans" + }, + { + "id" : "minecraft:lapis_lazuli" + }, + { + "id" : "minecraft:bone_meal" + }, + { + "id" : "minecraft:vine", + "blockRuntimeId" : 902 + }, + { + "id" : "minecraft:weeping_vines", + "blockRuntimeId" : 5429 + }, + { + "id" : "minecraft:twisting_vines", + "blockRuntimeId" : 5641 + }, + { + "id" : "minecraft:waterlily", + "blockRuntimeId" : 1163 + }, + { + "id" : "minecraft:deadbush", + "blockRuntimeId" : 4633 + }, + { + "id" : "minecraft:bamboo", + "blockRuntimeId" : 3689 + }, + { + "id" : "minecraft:snow", + "blockRuntimeId" : 4177 + }, + { + "id" : "minecraft:ice", + "blockRuntimeId" : 6563 + }, + { + "id" : "minecraft:packed_ice", + "blockRuntimeId" : 296 + }, + { + "id" : "minecraft:blue_ice", + "blockRuntimeId" : 6981 + }, + { + "id" : "minecraft:snow_layer", + "blockRuntimeId" : 155 + }, + { + "id" : "minecraft:pointed_dripstone", + "blockRuntimeId" : 7358 + }, + { + "id" : "minecraft:dripstone_block", + "blockRuntimeId" : 901 + }, + { + "id" : "minecraft:moss_carpet", + "blockRuntimeId" : 300 + }, + { + "id" : "minecraft:moss_block", + "blockRuntimeId" : 6429 + }, + { + "id" : "minecraft:dirt_with_roots", + "blockRuntimeId" : 5347 + }, + { + "id" : "minecraft:hanging_roots", + "blockRuntimeId" : 205 + }, + { + "id" : "minecraft:big_dripleaf", + "blockRuntimeId" : 5904 + }, + { + "id" : "minecraft:small_dripleaf_block", + "blockRuntimeId" : 4268 + }, + { + "id" : "minecraft:spore_blossom", + "blockRuntimeId" : 7254 + }, + { + "id" : "minecraft:azalea", + "blockRuntimeId" : 6804 + }, + { + "id" : "minecraft:flowering_azalea", + "blockRuntimeId" : 5427 + }, + { + "id" : "minecraft:glow_lichen", + "blockRuntimeId" : 5634 + }, + { + "id" : "minecraft:amethyst_block", + "blockRuntimeId" : 304 + }, + { + "id" : "minecraft:budding_amethyst", + "blockRuntimeId" : 6956 + }, + { + "id" : "minecraft:amethyst_cluster", + "blockRuntimeId" : 7752 + }, + { + "id" : "minecraft:large_amethyst_bud", + "blockRuntimeId" : 4684 + }, + { + "id" : "minecraft:medium_amethyst_bud", + "blockRuntimeId" : 4324 + }, + { + "id" : "minecraft:small_amethyst_bud", + "blockRuntimeId" : 318 + }, + { + "id" : "minecraft:tuff", + "blockRuntimeId" : 360 + }, + { + "id" : "minecraft:calcite", + "blockRuntimeId" : 215 + }, + { + "id" : "minecraft:chicken" + }, + { + "id" : "minecraft:porkchop" + }, + { + "id" : "minecraft:beef" + }, + { + "id" : "minecraft:mutton" + }, + { + "id" : "minecraft:rabbit" + }, + { + "id" : "minecraft:cod" + }, + { + "id" : "minecraft:salmon" + }, + { + "id" : "minecraft:tropical_fish" + }, + { + "id" : "minecraft:pufferfish" + }, + { + "id" : "minecraft:brown_mushroom", + "blockRuntimeId" : 3551 + }, + { + "id" : "minecraft:red_mushroom", + "blockRuntimeId" : 4517 + }, + { + "id" : "minecraft:crimson_fungus", + "blockRuntimeId" : 7695 + }, + { + "id" : "minecraft:warped_fungus", + "blockRuntimeId" : 301 + }, + { + "id" : "minecraft:brown_mushroom_block", + "blockRuntimeId" : 7304 + }, + { + "id" : "minecraft:red_mushroom_block", + "blockRuntimeId" : 3616 + }, + { + "id" : "minecraft:brown_mushroom_block", + "blockRuntimeId" : 7305 + }, + { + "id" : "minecraft:brown_mushroom_block", + "blockRuntimeId" : 7290 + }, + { + "id" : "minecraft:egg" + }, + { + "id" : "minecraft:sugar_cane" + }, + { + "id" : "minecraft:sugar" + }, + { + "id" : "minecraft:rotten_flesh" + }, + { + "id" : "minecraft:bone" + }, + { + "id" : "minecraft:web", + "blockRuntimeId" : 6587 + }, + { + "id" : "minecraft:spider_eye" + }, + { + "id" : "minecraft:mob_spawner", + "blockRuntimeId" : 411 + }, + { + "id" : "minecraft:monster_egg", + "blockRuntimeId" : 4133 + }, + { + "id" : "minecraft:monster_egg", + "blockRuntimeId" : 4134 + }, + { + "id" : "minecraft:monster_egg", + "blockRuntimeId" : 4135 + }, + { + "id" : "minecraft:monster_egg", + "blockRuntimeId" : 4136 + }, + { + "id" : "minecraft:monster_egg", + "blockRuntimeId" : 4137 + }, + { + "id" : "minecraft:monster_egg", + "blockRuntimeId" : 4138 + }, + { + "id" : "minecraft:infested_deepslate", + "blockRuntimeId" : 4597 + }, + { + "id" : "minecraft:dragon_egg", + "blockRuntimeId" : 7213 + }, + { + "id" : "minecraft:turtle_egg", + "blockRuntimeId" : 7939 + }, + { + "id" : "minecraft:chicken_spawn_egg" + }, + { + "id" : "minecraft:bee_spawn_egg" + }, + { + "id" : "minecraft:cow_spawn_egg" + }, + { + "id" : "minecraft:pig_spawn_egg" + }, + { + "id" : "minecraft:sheep_spawn_egg" + }, + { + "id" : "minecraft:wolf_spawn_egg" + }, + { + "id" : "minecraft:polar_bear_spawn_egg" + }, + { + "id" : "minecraft:ocelot_spawn_egg" + }, + { + "id" : "minecraft:cat_spawn_egg" + }, + { + "id" : "minecraft:mooshroom_spawn_egg" + }, + { + "id" : "minecraft:bat_spawn_egg" + }, + { + "id" : "minecraft:parrot_spawn_egg" + }, + { + "id" : "minecraft:rabbit_spawn_egg" + }, + { + "id" : "minecraft:llama_spawn_egg" + }, + { + "id" : "minecraft:horse_spawn_egg" + }, + { + "id" : "minecraft:donkey_spawn_egg" + }, + { + "id" : "minecraft:mule_spawn_egg" + }, + { + "id" : "minecraft:skeleton_horse_spawn_egg" + }, + { + "id" : "minecraft:zombie_horse_spawn_egg" + }, + { + "id" : "minecraft:tropical_fish_spawn_egg" + }, + { + "id" : "minecraft:cod_spawn_egg" + }, + { + "id" : "minecraft:pufferfish_spawn_egg" + }, + { + "id" : "minecraft:salmon_spawn_egg" + }, + { + "id" : "minecraft:dolphin_spawn_egg" + }, + { + "id" : "minecraft:turtle_spawn_egg" + }, + { + "id" : "minecraft:panda_spawn_egg" + }, + { + "id" : "minecraft:fox_spawn_egg" + }, + { + "id" : "minecraft:creeper_spawn_egg" + }, + { + "id" : "minecraft:enderman_spawn_egg" + }, + { + "id" : "minecraft:silverfish_spawn_egg" + }, + { + "id" : "minecraft:skeleton_spawn_egg" + }, + { + "id" : "minecraft:wither_skeleton_spawn_egg" + }, + { + "id" : "minecraft:stray_spawn_egg" + }, + { + "id" : "minecraft:slime_spawn_egg" + }, + { + "id" : "minecraft:spider_spawn_egg" + }, + { + "id" : "minecraft:zombie_spawn_egg" + }, + { + "id" : "minecraft:zombie_pigman_spawn_egg" + }, + { + "id" : "minecraft:husk_spawn_egg" + }, + { + "id" : "minecraft:drowned_spawn_egg" + }, + { + "id" : "minecraft:squid_spawn_egg" + }, + { + "id" : "minecraft:glow_squid_spawn_egg" + }, + { + "id" : "minecraft:cave_spider_spawn_egg" + }, + { + "id" : "minecraft:witch_spawn_egg" + }, + { + "id" : "minecraft:guardian_spawn_egg" + }, + { + "id" : "minecraft:elder_guardian_spawn_egg" + }, + { + "id" : "minecraft:endermite_spawn_egg" + }, + { + "id" : "minecraft:magma_cube_spawn_egg" + }, + { + "id" : "minecraft:strider_spawn_egg" + }, + { + "id" : "minecraft:hoglin_spawn_egg" + }, + { + "id" : "minecraft:piglin_spawn_egg" + }, + { + "id" : "minecraft:zoglin_spawn_egg" + }, + { + "id" : "minecraft:piglin_brute_spawn_egg" + }, + { + "id" : "minecraft:goat_spawn_egg" + }, + { + "id" : "minecraft:axolotl_spawn_egg" + }, + { + "id" : "minecraft:ghast_spawn_egg" + }, + { + "id" : "minecraft:blaze_spawn_egg" + }, + { + "id" : "minecraft:shulker_spawn_egg" + }, + { + "id" : "minecraft:vindicator_spawn_egg" + }, + { + "id" : "minecraft:evoker_spawn_egg" + }, + { + "id" : "minecraft:vex_spawn_egg" + }, + { + "id" : "minecraft:villager_spawn_egg" + }, + { + "id" : "minecraft:wandering_trader_spawn_egg" + }, + { + "id" : "minecraft:zombie_villager_spawn_egg" + }, + { + "id" : "minecraft:phantom_spawn_egg" + }, + { + "id" : "minecraft:pillager_spawn_egg" + }, + { + "id" : "minecraft:ravager_spawn_egg" + }, + { + "id" : "minecraft:obsidian", + "blockRuntimeId" : 436 + }, + { + "id" : "minecraft:crying_obsidian", + "blockRuntimeId" : 6596 + }, + { + "id" : "minecraft:bedrock", + "blockRuntimeId" : 6971 + }, + { + "id" : "minecraft:soul_sand", + "blockRuntimeId" : 5739 + }, + { + "id" : "minecraft:netherrack", + "blockRuntimeId" : 6991 + }, + { + "id" : "minecraft:magma", + "blockRuntimeId" : 7951 + }, + { + "id" : "minecraft:nether_wart" + }, + { + "id" : "minecraft:end_stone", + "blockRuntimeId" : 3841 + }, + { + "id" : "minecraft:chorus_flower", + "blockRuntimeId" : 4462 + }, + { + "id" : "minecraft:chorus_plant", + "blockRuntimeId" : 5455 + }, + { + "id" : "minecraft:chorus_fruit" + }, + { + "id" : "minecraft:popped_chorus_fruit" + }, + { + "id" : "minecraft:sponge", + "blockRuntimeId" : 637 + }, + { + "id" : "minecraft:sponge", + "blockRuntimeId" : 638 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5193 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5194 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5195 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5196 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5197 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5198 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5199 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5200 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5201 + }, + { + "id" : "minecraft:coral_block", + "blockRuntimeId" : 5202 + }, + { + "id" : "minecraft:leather_helmet" + }, + { + "id" : "minecraft:chainmail_helmet" + }, + { + "id" : "minecraft:iron_helmet" + }, + { + "id" : "minecraft:golden_helmet" + }, + { + "id" : "minecraft:diamond_helmet" + }, + { + "id" : "minecraft:netherite_helmet" + }, + { + "id" : "minecraft:leather_chestplate" + }, + { + "id" : "minecraft:chainmail_chestplate" + }, + { + "id" : "minecraft:iron_chestplate" + }, + { + "id" : "minecraft:golden_chestplate" + }, + { + "id" : "minecraft:diamond_chestplate" + }, + { + "id" : "minecraft:netherite_chestplate" + }, + { + "id" : "minecraft:leather_leggings" + }, + { + "id" : "minecraft:chainmail_leggings" + }, + { + "id" : "minecraft:iron_leggings" + }, + { + "id" : "minecraft:golden_leggings" + }, + { + "id" : "minecraft:diamond_leggings" + }, + { + "id" : "minecraft:netherite_leggings" + }, + { + "id" : "minecraft:leather_boots" + }, + { + "id" : "minecraft:chainmail_boots" + }, + { + "id" : "minecraft:iron_boots" + }, + { + "id" : "minecraft:golden_boots" + }, + { + "id" : "minecraft:diamond_boots" + }, + { + "id" : "minecraft:netherite_boots" + }, + { + "id" : "minecraft:wooden_sword" + }, + { + "id" : "minecraft:stone_sword" + }, + { + "id" : "minecraft:iron_sword" + }, + { + "id" : "minecraft:golden_sword" + }, + { + "id" : "minecraft:diamond_sword" + }, + { + "id" : "minecraft:netherite_sword" + }, + { + "id" : "minecraft:wooden_axe" + }, + { + "id" : "minecraft:stone_axe" + }, + { + "id" : "minecraft:iron_axe" + }, + { + "id" : "minecraft:golden_axe" + }, + { + "id" : "minecraft:diamond_axe" + }, + { + "id" : "minecraft:netherite_axe" + }, + { + "id" : "minecraft:wooden_pickaxe" + }, + { + "id" : "minecraft:stone_pickaxe" + }, + { + "id" : "minecraft:iron_pickaxe" + }, + { + "id" : "minecraft:golden_pickaxe" + }, + { + "id" : "minecraft:diamond_pickaxe" + }, + { + "id" : "minecraft:netherite_pickaxe" + }, + { + "id" : "minecraft:wooden_shovel" + }, + { + "id" : "minecraft:stone_shovel" + }, + { + "id" : "minecraft:iron_shovel" + }, + { + "id" : "minecraft:golden_shovel" + }, + { + "id" : "minecraft:diamond_shovel" + }, + { + "id" : "minecraft:netherite_shovel" + }, + { + "id" : "minecraft:wooden_hoe" + }, + { + "id" : "minecraft:stone_hoe" + }, + { + "id" : "minecraft:iron_hoe" + }, + { + "id" : "minecraft:golden_hoe" + }, + { + "id" : "minecraft:diamond_hoe" + }, + { + "id" : "minecraft:netherite_hoe" + }, + { + "id" : "minecraft:bow" + }, + { + "id" : "minecraft:crossbow" + }, + { + "id" : "minecraft:arrow" + }, + { + "id" : "minecraft:arrow", + "damage" : 6 + }, + { + "id" : "minecraft:arrow", + "damage" : 7 + }, + { + "id" : "minecraft:arrow", + "damage" : 8 + }, + { + "id" : "minecraft:arrow", + "damage" : 9 + }, + { + "id" : "minecraft:arrow", + "damage" : 10 + }, + { + "id" : "minecraft:arrow", + "damage" : 11 + }, + { + "id" : "minecraft:arrow", + "damage" : 12 + }, + { + "id" : "minecraft:arrow", + "damage" : 13 + }, + { + "id" : "minecraft:arrow", + "damage" : 14 + }, + { + "id" : "minecraft:arrow", + "damage" : 15 + }, + { + "id" : "minecraft:arrow", + "damage" : 16 + }, + { + "id" : "minecraft:arrow", + "damage" : 17 + }, + { + "id" : "minecraft:arrow", + "damage" : 18 + }, + { + "id" : "minecraft:arrow", + "damage" : 19 + }, + { + "id" : "minecraft:arrow", + "damage" : 20 + }, + { + "id" : "minecraft:arrow", + "damage" : 21 + }, + { + "id" : "minecraft:arrow", + "damage" : 22 + }, + { + "id" : "minecraft:arrow", + "damage" : 23 + }, + { + "id" : "minecraft:arrow", + "damage" : 24 + }, + { + "id" : "minecraft:arrow", + "damage" : 25 + }, + { + "id" : "minecraft:arrow", + "damage" : 26 + }, + { + "id" : "minecraft:arrow", + "damage" : 27 + }, + { + "id" : "minecraft:arrow", + "damage" : 28 + }, + { + "id" : "minecraft:arrow", + "damage" : 29 + }, + { + "id" : "minecraft:arrow", + "damage" : 30 + }, + { + "id" : "minecraft:arrow", + "damage" : 31 + }, + { + "id" : "minecraft:arrow", + "damage" : 32 + }, + { + "id" : "minecraft:arrow", + "damage" : 33 + }, + { + "id" : "minecraft:arrow", + "damage" : 34 + }, + { + "id" : "minecraft:arrow", + "damage" : 35 + }, + { + "id" : "minecraft:arrow", + "damage" : 36 + }, + { + "id" : "minecraft:arrow", + "damage" : 37 + }, + { + "id" : "minecraft:arrow", + "damage" : 38 + }, + { + "id" : "minecraft:arrow", + "damage" : 39 + }, + { + "id" : "minecraft:arrow", + "damage" : 40 + }, + { + "id" : "minecraft:arrow", + "damage" : 41 + }, + { + "id" : "minecraft:arrow", + "damage" : 42 + }, + { + "id" : "minecraft:arrow", + "damage" : 43 + }, + { + "id" : "minecraft:shield" + }, + { + "id" : "minecraft:cooked_chicken" + }, + { + "id" : "minecraft:cooked_porkchop" + }, + { + "id" : "minecraft:cooked_beef" + }, + { + "id" : "minecraft:cooked_mutton" + }, + { + "id" : "minecraft:cooked_rabbit" + }, + { + "id" : "minecraft:cooked_cod" + }, + { + "id" : "minecraft:cooked_salmon" + }, + { + "id" : "minecraft:bread" + }, + { + "id" : "minecraft:mushroom_stew" + }, + { + "id" : "minecraft:beetroot_soup" + }, + { + "id" : "minecraft:rabbit_stew" + }, + { + "id" : "minecraft:baked_potato" + }, + { + "id" : "minecraft:cookie" + }, + { + "id" : "minecraft:pumpkin_pie" + }, + { + "id" : "minecraft:cake" + }, + { + "id" : "minecraft:dried_kelp" + }, + { + "id" : "minecraft:fishing_rod" + }, + { + "id" : "minecraft:carrot_on_a_stick" + }, + { + "id" : "minecraft:warped_fungus_on_a_stick" + }, + { + "id" : "minecraft:snowball" + }, + { + "id" : "minecraft:shears" + }, + { + "id" : "minecraft:flint_and_steel" + }, + { + "id" : "minecraft:lead" + }, + { + "id" : "minecraft:clock" + }, + { + "id" : "minecraft:compass" + }, + { + "id" : "minecraft:empty_map" + }, + { + "id" : "minecraft:empty_map", + "damage" : 2 + }, + { + "id" : "minecraft:saddle" + }, + { + "id" : "minecraft:leather_horse_armor" + }, + { + "id" : "minecraft:iron_horse_armor" + }, + { + "id" : "minecraft:golden_horse_armor" + }, + { + "id" : "minecraft:diamond_horse_armor" + }, + { + "id" : "minecraft:trident" + }, + { + "id" : "minecraft:turtle_helmet" + }, + { + "id" : "minecraft:elytra" + }, + { + "id" : "minecraft:totem_of_undying" + }, + { + "id" : "minecraft:glass_bottle" + }, + { + "id" : "minecraft:experience_bottle" + }, + { + "id" : "minecraft:potion" + }, + { + "id" : "minecraft:potion", + "damage" : 1 + }, + { + "id" : "minecraft:potion", + "damage" : 2 + }, + { + "id" : "minecraft:potion", + "damage" : 3 + }, + { + "id" : "minecraft:potion", + "damage" : 4 + }, + { + "id" : "minecraft:potion", + "damage" : 5 + }, + { + "id" : "minecraft:potion", + "damage" : 6 + }, + { + "id" : "minecraft:potion", + "damage" : 7 + }, + { + "id" : "minecraft:potion", + "damage" : 8 + }, + { + "id" : "minecraft:potion", + "damage" : 9 + }, + { + "id" : "minecraft:potion", + "damage" : 10 + }, + { + "id" : "minecraft:potion", + "damage" : 11 + }, + { + "id" : "minecraft:potion", + "damage" : 12 + }, + { + "id" : "minecraft:potion", + "damage" : 13 + }, + { + "id" : "minecraft:potion", + "damage" : 14 + }, + { + "id" : "minecraft:potion", + "damage" : 15 + }, + { + "id" : "minecraft:potion", + "damage" : 16 + }, + { + "id" : "minecraft:potion", + "damage" : 17 + }, + { + "id" : "minecraft:potion", + "damage" : 18 + }, + { + "id" : "minecraft:potion", + "damage" : 19 + }, + { + "id" : "minecraft:potion", + "damage" : 20 + }, + { + "id" : "minecraft:potion", + "damage" : 21 + }, + { + "id" : "minecraft:potion", + "damage" : 22 + }, + { + "id" : "minecraft:potion", + "damage" : 23 + }, + { + "id" : "minecraft:potion", + "damage" : 24 + }, + { + "id" : "minecraft:potion", + "damage" : 25 + }, + { + "id" : "minecraft:potion", + "damage" : 26 + }, + { + "id" : "minecraft:potion", + "damage" : 27 + }, + { + "id" : "minecraft:potion", + "damage" : 28 + }, + { + "id" : "minecraft:potion", + "damage" : 29 + }, + { + "id" : "minecraft:potion", + "damage" : 30 + }, + { + "id" : "minecraft:potion", + "damage" : 31 + }, + { + "id" : "minecraft:potion", + "damage" : 32 + }, + { + "id" : "minecraft:potion", + "damage" : 33 + }, + { + "id" : "minecraft:potion", + "damage" : 34 + }, + { + "id" : "minecraft:potion", + "damage" : 35 + }, + { + "id" : "minecraft:potion", + "damage" : 36 + }, + { + "id" : "minecraft:potion", + "damage" : 37 + }, + { + "id" : "minecraft:potion", + "damage" : 38 + }, + { + "id" : "minecraft:potion", + "damage" : 39 + }, + { + "id" : "minecraft:potion", + "damage" : 40 + }, + { + "id" : "minecraft:potion", + "damage" : 41 + }, + { + "id" : "minecraft:potion", + "damage" : 42 + }, + { + "id" : "minecraft:splash_potion" + }, + { + "id" : "minecraft:splash_potion", + "damage" : 1 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 2 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 3 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 4 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 5 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 6 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 7 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 8 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 9 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 10 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 11 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 12 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 13 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 14 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 15 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 16 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 17 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 18 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 19 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 20 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 21 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 22 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 23 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 24 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 25 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 26 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 27 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 28 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 29 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 30 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 31 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 32 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 33 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 34 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 35 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 36 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 37 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 38 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 39 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 40 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 41 + }, + { + "id" : "minecraft:splash_potion", + "damage" : 42 + }, + { + "id" : "minecraft:lingering_potion" + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 1 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 2 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 3 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 4 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 5 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 6 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 7 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 8 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 9 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 10 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 11 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 12 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 13 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 14 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 15 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 16 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 17 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 18 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 19 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 20 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 21 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 22 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 23 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 24 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 25 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 26 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 27 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 28 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 29 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 30 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 31 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 32 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 33 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 34 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 35 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 36 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 37 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 38 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 39 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 40 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 41 + }, + { + "id" : "minecraft:lingering_potion", + "damage" : 42 + }, + { + "id" : "minecraft:spyglass" + }, + { + "id" : "minecraft:stick" + }, + { + "id" : "minecraft:bed" + }, + { + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "id" : "minecraft:torch", + "blockRuntimeId" : 732 + }, + { + "id" : "minecraft:soul_torch", + "blockRuntimeId" : 4600 + }, + { + "id" : "minecraft:sea_pickle", + "blockRuntimeId" : 5779 + }, + { + "id" : "minecraft:lantern", + "blockRuntimeId" : 7016 + }, + { + "id" : "minecraft:soul_lantern", + "blockRuntimeId" : 5699 + }, + { + "id" : "minecraft:candle", + "blockRuntimeId" : 7345 + }, + { + "id" : "minecraft:white_candle", + "blockRuntimeId" : 5250 + }, + { + "id" : "minecraft:orange_candle", + "blockRuntimeId" : 372 + }, + { + "id" : "minecraft:magenta_candle", + "blockRuntimeId" : 428 + }, + { + "id" : "minecraft:light_blue_candle", + "blockRuntimeId" : 4501 + }, + { + "id" : "minecraft:yellow_candle", + "blockRuntimeId" : 6115 + }, + { + "id" : "minecraft:lime_candle", + "blockRuntimeId" : 6333 + }, + { + "id" : "minecraft:pink_candle", + "blockRuntimeId" : 7312 + }, + { + "id" : "minecraft:gray_candle", + "blockRuntimeId" : 947 + }, + { + "id" : "minecraft:light_gray_candle", + "blockRuntimeId" : 6147 + }, + { + "id" : "minecraft:cyan_candle", + "blockRuntimeId" : 7668 + }, + { + "id" : "minecraft:purple_candle", + "blockRuntimeId" : 6992 + }, + { + "id" : "minecraft:blue_candle" + }, + { + "id" : "minecraft:brown_candle", + "blockRuntimeId" : 5799 + }, + { + "id" : "minecraft:green_candle", + "blockRuntimeId" : 694 + }, + { + "id" : "minecraft:red_candle", + "blockRuntimeId" : 4637 + }, + { + "id" : "minecraft:black_candle", + "blockRuntimeId" : 171 + }, + { + "id" : "minecraft:crafting_table", + "blockRuntimeId" : 5778 + }, + { + "id" : "minecraft:cartography_table", + "blockRuntimeId" : 8227 + }, + { + "id" : "minecraft:fletching_table", + "blockRuntimeId" : 5757 + }, + { + "id" : "minecraft:smithing_table", + "blockRuntimeId" : 3731 + }, + { + "id" : "minecraft:beehive", + "blockRuntimeId" : 6032 + }, + { + "id" : "minecraft:campfire" + }, + { + "id" : "minecraft:soul_campfire" + }, + { + "id" : "minecraft:furnace", + "blockRuntimeId" : 7744 + }, + { + "id" : "minecraft:blast_furnace", + "blockRuntimeId" : 7509 + }, + { + "id" : "minecraft:smoker", + "blockRuntimeId" : 655 + }, + { + "id" : "minecraft:respawn_anchor", + "blockRuntimeId" : 689 + }, + { + "id" : "minecraft:brewing_stand" + }, + { + "id" : "minecraft:anvil", + "blockRuntimeId" : 6508 + }, + { + "id" : "minecraft:anvil", + "blockRuntimeId" : 6512 + }, + { + "id" : "minecraft:anvil", + "blockRuntimeId" : 6516 + }, + { + "id" : "minecraft:grindstone", + "blockRuntimeId" : 7981 + }, + { + "id" : "minecraft:enchanting_table", + "blockRuntimeId" : 6597 + }, + { + "id" : "minecraft:bookshelf", + "blockRuntimeId" : 6545 + }, + { + "id" : "minecraft:lectern", + "blockRuntimeId" : 6856 + }, + { + "id" : "minecraft:cauldron" + }, + { + "id" : "minecraft:composter", + "blockRuntimeId" : 5365 + }, + { + "id" : "minecraft:chest", + "blockRuntimeId" : 7057 + }, + { + "id" : "minecraft:trapped_chest", + "blockRuntimeId" : 5533 + }, + { + "id" : "minecraft:ender_chest", + "blockRuntimeId" : 4317 + }, + { + "id" : "minecraft:barrel", + "blockRuntimeId" : 4450 + }, + { + "id" : "minecraft:undyed_shulker_box", + "blockRuntimeId" : 3686 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5274 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5273 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5280 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5267 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5270 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5271 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5279 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5275 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5269 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5276 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5268 + }, + { + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5272 + }, + { + "id" : "minecraft:armor_stand" + }, + { + "id" : "minecraft:noteblock", + "blockRuntimeId" : 359 + }, + { + "id" : "minecraft:jukebox", + "blockRuntimeId" : 4830 + }, + { + "id" : "minecraft:music_disc_13" + }, + { + "id" : "minecraft:music_disc_cat" + }, + { + "id" : "minecraft:music_disc_blocks" + }, + { + "id" : "minecraft:music_disc_chirp" + }, + { + "id" : "minecraft:music_disc_far" + }, + { + "id" : "minecraft:music_disc_mall" + }, + { + "id" : "minecraft:music_disc_mellohi" + }, + { + "id" : "minecraft:music_disc_stal" + }, + { + "id" : "minecraft:music_disc_strad" + }, + { + "id" : "minecraft:music_disc_ward" + }, + { + "id" : "minecraft:music_disc_11" + }, + { + "id" : "minecraft:music_disc_wait" + }, + { + "id" : "minecraft:music_disc_otherside" + }, + { + "id" : "minecraft:music_disc_pigstep" + }, + { + "id" : "minecraft:glowstone_dust" + }, + { + "id" : "minecraft:glowstone", + "blockRuntimeId" : 3874 + }, + { + "id" : "minecraft:redstone_lamp", + "blockRuntimeId" : 265 + }, + { + "id" : "minecraft:sea_lantern", + "blockRuntimeId" : 7488 + }, + { + "id" : "minecraft:oak_sign" + }, + { + "id" : "minecraft:spruce_sign" + }, + { + "id" : "minecraft:birch_sign" + }, + { + "id" : "minecraft:jungle_sign" + }, + { + "id" : "minecraft:acacia_sign" + }, + { + "id" : "minecraft:dark_oak_sign" + }, + { + "id" : "minecraft:crimson_sign" + }, + { + "id" : "minecraft:warped_sign" + }, + { + "id" : "minecraft:painting" + }, + { + "id" : "minecraft:frame" + }, + { + "id" : "minecraft:glow_frame" + }, + { + "id" : "minecraft:honey_bottle" + }, + { + "id" : "minecraft:flower_pot" + }, + { + "id" : "minecraft:bowl" + }, + { + "id" : "minecraft:bucket" + }, + { + "id" : "minecraft:milk_bucket" + }, + { + "id" : "minecraft:water_bucket" + }, + { + "id" : "minecraft:lava_bucket" + }, + { + "id" : "minecraft:cod_bucket" + }, + { + "id" : "minecraft:salmon_bucket" + }, + { + "id" : "minecraft:tropical_fish_bucket" + }, + { + "id" : "minecraft:pufferfish_bucket" + }, + { + "id" : "minecraft:powder_snow_bucket" + }, + { + "id" : "minecraft:axolotl_bucket" + }, + { + "id" : "minecraft:skull", + "damage" : 3 + }, + { + "id" : "minecraft:skull", + "damage" : 2 + }, + { + "id" : "minecraft:skull", + "damage" : 4 + }, + { + "id" : "minecraft:skull", + "damage" : 5 + }, + { + "id" : "minecraft:skull" + }, + { + "id" : "minecraft:skull", + "damage" : 1 + }, + { + "id" : "minecraft:beacon", + "blockRuntimeId" : 145 + }, + { + "id" : "minecraft:bell", + "blockRuntimeId" : 6824 + }, + { + "id" : "minecraft:conduit", + "blockRuntimeId" : 4196 + }, + { + "id" : "minecraft:stonecutter_block", + "blockRuntimeId" : 7516 + }, + { + "id" : "minecraft:end_portal_frame", + "blockRuntimeId" : 6001 + }, + { + "id" : "minecraft:coal" + }, + { + "id" : "minecraft:charcoal" + }, + { + "id" : "minecraft:diamond" + }, + { + "id" : "minecraft:iron_nugget" + }, + { + "id" : "minecraft:raw_iron" + }, + { + "id" : "minecraft:raw_gold" + }, + { + "id" : "minecraft:raw_copper" + }, + { + "id" : "minecraft:copper_ingot" + }, + { + "id" : "minecraft:iron_ingot" + }, + { + "id" : "minecraft:netherite_scrap" + }, + { + "id" : "minecraft:netherite_ingot" + }, + { + "id" : "minecraft:gold_nugget" + }, + { + "id" : "minecraft:gold_ingot" + }, + { + "id" : "minecraft:emerald" + }, + { + "id" : "minecraft:quartz" + }, + { + "id" : "minecraft:clay_ball" + }, + { + "id" : "minecraft:brick" + }, + { + "id" : "minecraft:netherbrick" + }, + { + "id" : "minecraft:prismarine_shard" + }, + { + "id" : "minecraft:amethyst_shard" + }, + { + "id" : "minecraft:prismarine_crystals" + }, + { + "id" : "minecraft:nautilus_shell" + }, + { + "id" : "minecraft:heart_of_the_sea" + }, + { + "id" : "minecraft:scute" + }, + { + "id" : "minecraft:phantom_membrane" + }, + { + "id" : "minecraft:string" + }, + { + "id" : "minecraft:feather" + }, + { + "id" : "minecraft:flint" + }, + { + "id" : "minecraft:gunpowder" + }, + { + "id" : "minecraft:leather" + }, + { + "id" : "minecraft:rabbit_hide" + }, + { + "id" : "minecraft:rabbit_foot" + }, + { + "id" : "minecraft:fire_charge" + }, + { + "id" : "minecraft:blaze_rod" + }, + { + "id" : "minecraft:blaze_powder" + }, + { + "id" : "minecraft:magma_cream" + }, + { + "id" : "minecraft:fermented_spider_eye" + }, + { + "id" : "minecraft:dragon_breath" + }, + { + "id" : "minecraft:shulker_shell" + }, + { + "id" : "minecraft:ghast_tear" + }, + { + "id" : "minecraft:slime_ball" + }, + { + "id" : "minecraft:ender_pearl" + }, + { + "id" : "minecraft:ender_eye" + }, + { + "id" : "minecraft:nether_star" + }, + { + "id" : "minecraft:end_rod", + "blockRuntimeId" : 5815 + }, + { + "id" : "minecraft:lightning_rod", + "blockRuntimeId" : 1181 + }, + { + "id" : "minecraft:end_crystal" + }, + { + "id" : "minecraft:paper" + }, + { + "id" : "minecraft:book" + }, + { + "id" : "minecraft:writable_book" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQAAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQAAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQAAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQAAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQBAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQBAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQBAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQBAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQCAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQCAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQCAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQCAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQDAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQDAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQDAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQDAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQEAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQEAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQEAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQEAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQFAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQFAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQFAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQGAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQGAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQGAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQHAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQHAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQHAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQIAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQJAAIDAGx2bAUAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQKAAIDAGx2bAUAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQLAAIDAGx2bAUAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQMAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQMAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQNAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQNAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQOAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQOAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQOAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQPAAIDAGx2bAUAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQQAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQRAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQRAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQRAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQSAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQSAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQSAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQTAAIDAGx2bAUAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQUAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQUAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQVAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQWAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQXAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQXAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQXAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQYAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQYAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQYAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQZAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQZAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQaAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQbAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQcAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQdAAIDAGx2bAUAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQeAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQeAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQeAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQfAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQfAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQfAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQgAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQhAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQiAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQiAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQiAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQiAAIDAGx2bAQAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQjAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQjAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQjAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQkAAIDAGx2bAEAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQkAAIDAGx2bAIAAAA=" + }, + { + "id" : "minecraft:enchanted_book", + "nbt_b64" : "CgAACQQAZW5jaAoBAAAAAgIAaWQkAAIDAGx2bAMAAAA=" + }, + { + "id" : "minecraft:oak_boat" + }, + { + "id" : "minecraft:spruce_boat" + }, + { + "id" : "minecraft:birch_boat" + }, + { + "id" : "minecraft:jungle_boat" + }, + { + "id" : "minecraft:acacia_boat" + }, + { + "id" : "minecraft:dark_oak_boat" + }, + { + "id" : "minecraft:rail", + "blockRuntimeId" : 3909 + }, + { + "id" : "minecraft:golden_rail", + "blockRuntimeId" : 5282 + }, + { + "id" : "minecraft:detector_rail", + "blockRuntimeId" : 4121 + }, + { + "id" : "minecraft:activator_rail", + "blockRuntimeId" : 323 + }, + { + "id" : "minecraft:minecart" + }, + { + "id" : "minecraft:chest_minecart" + }, + { + "id" : "minecraft:hopper_minecart" + }, + { + "id" : "minecraft:tnt_minecart" + }, + { + "id" : "minecraft:redstone" + }, + { + "id" : "minecraft:redstone_block", + "blockRuntimeId" : 3781 + }, + { + "id" : "minecraft:redstone_torch", + "blockRuntimeId" : 3530 + }, + { + "id" : "minecraft:lever", + "blockRuntimeId" : 6405 + }, + { + "id" : "minecraft:wooden_button", + "blockRuntimeId" : 6356 + }, + { + "id" : "minecraft:spruce_button", + "blockRuntimeId" : 4269 + }, + { + "id" : "minecraft:birch_button", + "blockRuntimeId" : 7708 + }, + { + "id" : "minecraft:jungle_button", + "blockRuntimeId" : 116 + }, + { + "id" : "minecraft:acacia_button", + "blockRuntimeId" : 7173 + }, + { + "id" : "minecraft:dark_oak_button", + "blockRuntimeId" : 93 + }, + { + "id" : "minecraft:stone_button", + "blockRuntimeId" : 604 + }, + { + "id" : "minecraft:crimson_button", + "blockRuntimeId" : 4380 + }, + { + "id" : "minecraft:warped_button", + "blockRuntimeId" : 7192 + }, + { + "id" : "minecraft:polished_blackstone_button", + "blockRuntimeId" : 7732 + }, + { + "id" : "minecraft:tripwire_hook", + "blockRuntimeId" : 5838 + }, + { + "id" : "minecraft:wooden_pressure_plate", + "blockRuntimeId" : 8005 + }, + { + "id" : "minecraft:spruce_pressure_plate", + "blockRuntimeId" : 3764 + }, + { + "id" : "minecraft:birch_pressure_plate", + "blockRuntimeId" : 3560 + }, + { + "id" : "minecraft:jungle_pressure_plate", + "blockRuntimeId" : 3640 + }, + { + "id" : "minecraft:acacia_pressure_plate", + "blockRuntimeId" : 5203 + }, + { + "id" : "minecraft:dark_oak_pressure_plate", + "blockRuntimeId" : 5880 + }, + { + "id" : "minecraft:crimson_pressure_plate", + "blockRuntimeId" : 8210 + }, + { + "id" : "minecraft:warped_pressure_plate", + "blockRuntimeId" : 270 + }, + { + "id" : "minecraft:stone_pressure_plate", + "blockRuntimeId" : 3875 + }, + { + "id" : "minecraft:light_weighted_pressure_plate", + "blockRuntimeId" : 3670 + }, + { + "id" : "minecraft:heavy_weighted_pressure_plate", + "blockRuntimeId" : 1165 + }, + { + "id" : "minecraft:polished_blackstone_pressure_plate", + "blockRuntimeId" : 6197 + }, + { + "id" : "minecraft:observer", + "blockRuntimeId" : 3518 + }, + { + "id" : "minecraft:daylight_detector", + "blockRuntimeId" : 4180 + }, + { + "id" : "minecraft:repeater" + }, + { + "id" : "minecraft:comparator" + }, + { + "id" : "minecraft:hopper" + }, + { + "id" : "minecraft:dropper", + "blockRuntimeId" : 7327 + }, + { + "id" : "minecraft:dispenser", + "blockRuntimeId" : 7955 + }, + { + "id" : "minecraft:piston", + "blockRuntimeId" : 930 + }, + { + "id" : "minecraft:sticky_piston", + "blockRuntimeId" : 4312 + }, + { + "id" : "minecraft:tnt", + "blockRuntimeId" : 6581 + }, + { + "id" : "minecraft:name_tag" + }, + { + "id" : "minecraft:loom", + "blockRuntimeId" : 3831 + }, + { + "id" : "minecraft:banner" + }, + { + "id" : "minecraft:banner", + "damage" : 8 + }, + { + "id" : "minecraft:banner", + "damage" : 7 + }, + { + "id" : "minecraft:banner", + "damage" : 15 + }, + { + "id" : "minecraft:banner", + "damage" : 12 + }, + { + "id" : "minecraft:banner", + "damage" : 14 + }, + { + "id" : "minecraft:banner", + "damage" : 1 + }, + { + "id" : "minecraft:banner", + "damage" : 4 + }, + { + "id" : "minecraft:banner", + "damage" : 5 + }, + { + "id" : "minecraft:banner", + "damage" : 13 + }, + { + "id" : "minecraft:banner", + "damage" : 9 + }, + { + "id" : "minecraft:banner", + "damage" : 3 + }, + { + "id" : "minecraft:banner", + "damage" : 11 + }, + { + "id" : "minecraft:banner", + "damage" : 10 + }, + { + "id" : "minecraft:banner", + "damage" : 2 + }, + { + "id" : "minecraft:banner", + "damage" : 6 + }, + { + "id" : "minecraft:banner", + "damage" : 15, + "nbt_b64" : "CgAAAwQAVHlwZQEAAAAA" + }, + { + "id" : "minecraft:creeper_banner_pattern" + }, + { + "id" : "minecraft:skull_banner_pattern" + }, + { + "id" : "minecraft:flower_banner_pattern" + }, + { + "id" : "minecraft:mojang_banner_pattern" + }, + { + "id" : "minecraft:field_masoned_banner_pattern" + }, + { + "id" : "minecraft:bordure_indented_banner_pattern" + }, + { + "id" : "minecraft:piglin_banner_pattern" + }, + { + "id" : "minecraft:globe_banner_pattern" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwAAAAAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAABwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAIBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAHBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAPBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAMBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAOBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAABBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAEBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAFBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAANBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAJBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAADBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAALBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAKBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAACBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_rocket", + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAGBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + }, + { + "id" : "minecraft:firework_star", + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yIR0d/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 8, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yUk9H/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 7, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yl52d/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 15, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9y8PDw/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 12, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9y2rM6/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 14, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yHYD5/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 1, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yJi6w/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 4, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yqkQ8/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 5, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yuDKJ/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 13, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yvU7H/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 9, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yqovz/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 3, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yMlSD/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 11, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yPdj+/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 10, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yH8eA/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 2, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yFnxe/wA=" + }, + { + "id" : "minecraft:firework_star", + "damage" : 6, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9ynJwW/wA=" + }, + { + "id" : "minecraft:chain" + }, + { + "id" : "minecraft:target", + "blockRuntimeId" : 6355 + }, + { + "id" : "minecraft:lodestone_compass" + } + ] +} \ No newline at end of file diff --git a/src/test/resources/org/powernukkit/updater/dumps/proxypass/recipes.json b/src/test/resources/org/powernukkit/updater/dumps/proxypass/recipes.json new file mode 100644 index 00000000000..db244a55385 --- /dev/null +++ b/src/test/resources/org/powernukkit/updater/dumps/proxypass/recipes.json @@ -0,0 +1,59528 @@ +{ + "version" : 503, + "recipes" : [ + { + "id" : "minecraft:smithingtable_diamond_axe_to_netherite_axe", + "type" : 0, + "input" : [ + { + "legacyId" : 319, + "id" : "minecraft:diamond_axe", + "damage" : 32767 + }, + { + "legacyId" : 603, + "id" : "minecraft:netherite_ingot", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 607, + "id" : "minecraft:netherite_axe" + } + ], + "block" : "smithing_table", + "priority" : 2 + }, + { + "id" : "minecraft:smithingtable_diamond_boots_to_netherite_boots", + "type" : 0, + "input" : [ + { + "legacyId" : 350, + "id" : "minecraft:diamond_boots", + "damage" : 32767 + }, + { + "legacyId" : 603, + "id" : "minecraft:netherite_ingot", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 612, + "id" : "minecraft:netherite_boots" + } + ], + "block" : "smithing_table", + "priority" : 2 + }, + { + "id" : "minecraft:smithingtable_diamond_chestplate_to_netherite_chestplate", + "type" : 0, + "input" : [ + { + "legacyId" : 348, + "id" : "minecraft:diamond_chestplate", + "damage" : 32767 + }, + { + "legacyId" : 603, + "id" : "minecraft:netherite_ingot", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 610, + "id" : "minecraft:netherite_chestplate" + } + ], + "block" : "smithing_table", + "priority" : 2 + }, + { + "id" : "minecraft:smithingtable_diamond_helmet_to_netherite_helmet", + "type" : 0, + "input" : [ + { + "legacyId" : 347, + "id" : "minecraft:diamond_helmet", + "damage" : 32767 + }, + { + "legacyId" : 603, + "id" : "minecraft:netherite_ingot", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 609, + "id" : "minecraft:netherite_helmet" + } + ], + "block" : "smithing_table", + "priority" : 2 + }, + { + "id" : "minecraft:smithingtable_diamond_hoe_to_netherite_hoe", + "type" : 0, + "input" : [ + { + "legacyId" : 332, + "id" : "minecraft:diamond_hoe", + "damage" : 32767 + }, + { + "legacyId" : 603, + "id" : "minecraft:netherite_ingot", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 608, + "id" : "minecraft:netherite_hoe" + } + ], + "block" : "smithing_table", + "priority" : 2 + }, + { + "id" : "minecraft:smithingtable_diamond_leggings_to_netherite_leggings", + "type" : 0, + "input" : [ + { + "legacyId" : 349, + "id" : "minecraft:diamond_leggings", + "damage" : 32767 + }, + { + "legacyId" : 603, + "id" : "minecraft:netherite_ingot", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 611, + "id" : "minecraft:netherite_leggings" + } + ], + "block" : "smithing_table", + "priority" : 2 + }, + { + "id" : "minecraft:smithingtable_diamond_pickaxe_to_netherite_pickaxe", + "type" : 0, + "input" : [ + { + "legacyId" : 318, + "id" : "minecraft:diamond_pickaxe", + "damage" : 32767 + }, + { + "legacyId" : 603, + "id" : "minecraft:netherite_ingot", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 606, + "id" : "minecraft:netherite_pickaxe" + } + ], + "block" : "smithing_table", + "priority" : 2 + }, + { + "id" : "minecraft:smithingtable_diamond_shovel_to_netherite_shovel", + "type" : 0, + "input" : [ + { + "legacyId" : 317, + "id" : "minecraft:diamond_shovel", + "damage" : 32767 + }, + { + "legacyId" : 603, + "id" : "minecraft:netherite_ingot", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 605, + "id" : "minecraft:netherite_shovel" + } + ], + "block" : "smithing_table", + "priority" : 2 + }, + { + "id" : "minecraft:smithingtable_diamond_sword_to_netherite_sword", + "type" : 0, + "input" : [ + { + "legacyId" : 316, + "id" : "minecraft:diamond_sword", + "damage" : 32767 + }, + { + "legacyId" : 603, + "id" : "minecraft:netherite_ingot", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 604, + "id" : "minecraft:netherite_sword" + } + ], + "block" : "smithing_table", + "priority" : 2 + }, + { + "type" : 4, + "uuid" : "442d85ed-8272-4543-a6f1-418f90ded05d" + }, + { + "type" : 4, + "uuid" : "8b36268c-1829-483c-a0f1-993b7156a8f2" + }, + { + "type" : 4, + "uuid" : "602234e4-cac1-4353-8bb7-b1ebff70024b" + }, + { + "id" : "minecraft:cartography_table_locator_map", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 391, + "id" : "minecraft:compass", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 515, + "id" : "minecraft:empty_map", + "damage" : 2 + } + ], + "block" : "cartography_table", + "priority" : 0 + }, + { + "id" : "minecraft:cartography_table_map", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 515, + "id" : "minecraft:empty_map" + } + ], + "block" : "cartography_table", + "priority" : 0 + }, + { + "type" : 4, + "uuid" : "98c84b38-1085-46bd-b1ce-dd38c159e6cc" + }, + { + "id" : "minecraft:chiseled_deepslate_from_cobbled_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate" + } + ], + "output" : [ + { + "legacyId" : -395, + "id" : "minecraft:chiseled_deepslate", + "blockRuntimeId" : 5190 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:cobbled_deepslate_slab_from_cobbled_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate" + } + ], + "output" : [ + { + "legacyId" : -380, + "id" : "minecraft:cobbled_deepslate_slab", + "count" : 2, + "blockRuntimeId" : 7252 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:cobbled_deepslate_stairs_from_cobbled_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate" + } + ], + "output" : [ + { + "legacyId" : -381, + "id" : "minecraft:cobbled_deepslate_stairs", + "blockRuntimeId" : 147 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:cobbled_deepslate_wall_from_cobbled_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate" + } + ], + "output" : [ + { + "legacyId" : -382, + "id" : "minecraft:cobbled_deepslate_wall", + "blockRuntimeId" : 8024 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_brick_slab_from_cobbled_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate" + } + ], + "output" : [ + { + "legacyId" : -392, + "id" : "minecraft:deepslate_brick_slab", + "count" : 2, + "blockRuntimeId" : 3721 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_brick_slab_from_deepslate_bricks_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -391, + "id" : "minecraft:deepslate_bricks" + } + ], + "output" : [ + { + "legacyId" : -392, + "id" : "minecraft:deepslate_brick_slab", + "count" : 2, + "blockRuntimeId" : 3721 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_brick_slab_from_polished_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -383, + "id" : "minecraft:polished_deepslate" + } + ], + "output" : [ + { + "legacyId" : -392, + "id" : "minecraft:deepslate_brick_slab", + "count" : 2, + "blockRuntimeId" : 3721 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_brick_stairs_from_cobbled_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate" + } + ], + "output" : [ + { + "legacyId" : -393, + "id" : "minecraft:deepslate_brick_stairs", + "blockRuntimeId" : 7364 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_brick_stairs_from_deepslate_bricks_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -391, + "id" : "minecraft:deepslate_bricks" + } + ], + "output" : [ + { + "legacyId" : -393, + "id" : "minecraft:deepslate_brick_stairs", + "blockRuntimeId" : 7364 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_brick_stairs_from_polished_deepslate_stonecut", + "type" : 0, + "input" : [ + { + "legacyId" : -383, + "id" : "minecraft:polished_deepslate" + } + ], + "output" : [ + { + "legacyId" : -393, + "id" : "minecraft:deepslate_brick_stairs", + "blockRuntimeId" : 7364 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_brick_wall_from_cobbled_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate" + } + ], + "output" : [ + { + "legacyId" : -394, + "id" : "minecraft:deepslate_brick_wall", + "blockRuntimeId" : 437 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_brick_wall_from_deepslate_bricks_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -391, + "id" : "minecraft:deepslate_bricks" + } + ], + "output" : [ + { + "legacyId" : -394, + "id" : "minecraft:deepslate_brick_wall", + "blockRuntimeId" : 437 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_brick_wall_from_polished_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -383, + "id" : "minecraft:polished_deepslate" + } + ], + "output" : [ + { + "legacyId" : -394, + "id" : "minecraft:deepslate_brick_wall", + "blockRuntimeId" : 437 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_bricks_from_cobbled_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate" + } + ], + "output" : [ + { + "legacyId" : -391, + "id" : "minecraft:deepslate_bricks", + "blockRuntimeId" : 5414 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_bricks_from_polished_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -383, + "id" : "minecraft:polished_deepslate" + } + ], + "output" : [ + { + "legacyId" : -391, + "id" : "minecraft:deepslate_bricks", + "blockRuntimeId" : 5414 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_tile_slab_from_cobbled_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate" + } + ], + "output" : [ + { + "legacyId" : -388, + "id" : "minecraft:deepslate_tile_slab", + "count" : 2, + "blockRuntimeId" : 4239 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_tile_slab_from_deepslate_bricks_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -391, + "id" : "minecraft:deepslate_bricks" + } + ], + "output" : [ + { + "legacyId" : -388, + "id" : "minecraft:deepslate_tile_slab", + "count" : 2, + "blockRuntimeId" : 4239 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_tile_slab_from_deepslate_tiles_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -387, + "id" : "minecraft:deepslate_tiles" + } + ], + "output" : [ + { + "legacyId" : -388, + "id" : "minecraft:deepslate_tile_slab", + "count" : 2, + "blockRuntimeId" : 4239 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_tile_slab_from_polished_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -383, + "id" : "minecraft:polished_deepslate" + } + ], + "output" : [ + { + "legacyId" : -388, + "id" : "minecraft:deepslate_tile_slab", + "count" : 2, + "blockRuntimeId" : 4239 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_tile_stairs_from_cobbled_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate" + } + ], + "output" : [ + { + "legacyId" : -389, + "id" : "minecraft:deepslate_tile_stairs", + "blockRuntimeId" : 4609 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_tile_stairs_from_deepslate_bricks_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -391, + "id" : "minecraft:deepslate_bricks" + } + ], + "output" : [ + { + "legacyId" : -389, + "id" : "minecraft:deepslate_tile_stairs", + "blockRuntimeId" : 4609 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_tile_stairs_from_deepslate_tiles_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -387, + "id" : "minecraft:deepslate_tiles" + } + ], + "output" : [ + { + "legacyId" : -389, + "id" : "minecraft:deepslate_tile_stairs", + "blockRuntimeId" : 4609 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_tile_stairs_from_polished_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -383, + "id" : "minecraft:polished_deepslate" + } + ], + "output" : [ + { + "legacyId" : -389, + "id" : "minecraft:deepslate_tile_stairs", + "blockRuntimeId" : 4609 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_tile_wall_from_cobbled_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate" + } + ], + "output" : [ + { + "legacyId" : -390, + "id" : "minecraft:deepslate_tile_wall", + "blockRuntimeId" : 5027 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_tile_wall_from_deepslate_bricks_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -391, + "id" : "minecraft:deepslate_bricks" + } + ], + "output" : [ + { + "legacyId" : -390, + "id" : "minecraft:deepslate_tile_wall", + "blockRuntimeId" : 5027 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_tile_wall_from_deepslate_tiles_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -387, + "id" : "minecraft:deepslate_tiles" + } + ], + "output" : [ + { + "legacyId" : -390, + "id" : "minecraft:deepslate_tile_wall", + "blockRuntimeId" : 5027 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_tile_wall_from_polished_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -383, + "id" : "minecraft:polished_deepslate" + } + ], + "output" : [ + { + "legacyId" : -390, + "id" : "minecraft:deepslate_tile_wall", + "blockRuntimeId" : 5027 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_tiles_from_cobbled_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate" + } + ], + "output" : [ + { + "legacyId" : -387, + "id" : "minecraft:deepslate_tiles", + "blockRuntimeId" : 4513 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_tiles_from_deepslate_bricks_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -391, + "id" : "minecraft:deepslate_bricks" + } + ], + "output" : [ + { + "legacyId" : -387, + "id" : "minecraft:deepslate_tiles", + "blockRuntimeId" : 4513 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:deepslate_tiles_from_polished_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -383, + "id" : "minecraft:polished_deepslate" + } + ], + "output" : [ + { + "legacyId" : -387, + "id" : "minecraft:deepslate_tiles", + "blockRuntimeId" : 4513 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:polished_deepslate_from_cobbled_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate" + } + ], + "output" : [ + { + "legacyId" : -383, + "id" : "minecraft:polished_deepslate", + "blockRuntimeId" : 7696 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:polished_deepslate_slab_from_cobbled_deepslate_stonecut", + "type" : 0, + "input" : [ + { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate" + } + ], + "output" : [ + { + "legacyId" : -384, + "id" : "minecraft:polished_deepslate_slab", + "count" : 2, + "blockRuntimeId" : 302 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:polished_deepslate_slab_from_polished_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -383, + "id" : "minecraft:polished_deepslate" + } + ], + "output" : [ + { + "legacyId" : -384, + "id" : "minecraft:polished_deepslate_slab", + "count" : 2, + "blockRuntimeId" : 302 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:polished_deepslate_stairs_from_cobbled_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate" + } + ], + "output" : [ + { + "legacyId" : -385, + "id" : "minecraft:polished_deepslate_stairs", + "blockRuntimeId" : 308 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:polished_deepslate_stairs_from_polished_deepslate_stonecutting", + "type" : 0, + "input" : [ + { + "legacyId" : -383, + "id" : "minecraft:polished_deepslate" + } + ], + "output" : [ + { + "legacyId" : -385, + "id" : "minecraft:polished_deepslate_stairs", + "blockRuntimeId" : 308 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:polished_deepslate_wall_from_cobbled_deepslate_stonecut", + "type" : 0, + "input" : [ + { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate" + } + ], + "output" : [ + { + "legacyId" : -386, + "id" : "minecraft:polished_deepslate_wall", + "blockRuntimeId" : 7759 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:polished_deepslate_wall_from_polished_deepslate_stonecut", + "type" : 0, + "input" : [ + { + "legacyId" : -383, + "id" : "minecraft:polished_deepslate" + } + ], + "output" : [ + { + "legacyId" : -386, + "id" : "minecraft:polished_deepslate_wall", + "blockRuntimeId" : 7759 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_andesite_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 2, + "blockRuntimeId" : 6617 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_andesite_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : -171, + "id" : "minecraft:andesite_stairs", + "blockRuntimeId" : 5258 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_andesite_wall", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1191 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_blackstone_slab_from_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -282, + "id" : "minecraft:blackstone_slab", + "count" : 2, + "blockRuntimeId" : 918 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_blackstone_stairs_from_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -276, + "id" : "minecraft:blackstone_stairs", + "blockRuntimeId" : 6973 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_blackstone_wall_from_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -277, + "id" : "minecraft:blackstone_wall", + "blockRuntimeId" : 3919 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_brick_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 45, + "id" : "minecraft:brick_block" + } + ], + "output" : [ + { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "count" : 2, + "blockRuntimeId" : 253 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_brick_slab_from_polished_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -291, + "id" : "minecraft:polished_blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -284, + "id" : "minecraft:polished_blackstone_brick_slab", + "count" : 2, + "blockRuntimeId" : 4175 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_brick_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 45, + "id" : "minecraft:brick_block" + } + ], + "output" : [ + { + "legacyId" : 108, + "id" : "minecraft:brick_stairs", + "blockRuntimeId" : 6421 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_brick_stairs_from_polished_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -291, + "id" : "minecraft:polished_blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -275, + "id" : "minecraft:polished_blackstone_brick_stairs", + "blockRuntimeId" : 4425 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_brick_wall", + "type" : 0, + "input" : [ + { + "legacyId" : 45, + "id" : "minecraft:brick_block" + } + ], + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1193 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_brick_wall_from_polished_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -291, + "id" : "minecraft:polished_blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -278, + "id" : "minecraft:polished_blackstone_brick_wall", + "blockRuntimeId" : 978 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_bricks_from_polished_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -291, + "id" : "minecraft:polished_blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -274, + "id" : "minecraft:polished_blackstone_bricks", + "blockRuntimeId" : 4636 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_chiseled_from_polished_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -291, + "id" : "minecraft:polished_blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -279, + "id" : "minecraft:chiseled_polished_blackstone", + "blockRuntimeId" : 5018 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_chiseled_nether_bricks_from_nether_brick", + "type" : 0, + "input" : [ + { + "legacyId" : 112, + "id" : "minecraft:nether_brick", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -302, + "id" : "minecraft:chiseled_nether_bricks", + "blockRuntimeId" : 7191 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_chiseled_polished_from_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -279, + "id" : "minecraft:chiseled_polished_blackstone", + "blockRuntimeId" : 5018 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_cobbledouble_stone_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 4, + "id" : "minecraft:cobblestone" + } + ], + "output" : [ + { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "count" : 2, + "blockRuntimeId" : 252 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_cobblestone_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 4, + "id" : "minecraft:cobblestone" + } + ], + "output" : [ + { + "legacyId" : 67, + "id" : "minecraft:stone_stairs", + "blockRuntimeId" : 3713 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_cobblestone_wall", + "type" : 0, + "input" : [ + { + "legacyId" : 4, + "id" : "minecraft:cobblestone" + } + ], + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1187 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_copper_block_to_cut_copper", + "type" : 0, + "input" : [ + { + "legacyId" : -340, + "id" : "minecraft:copper_block", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -347, + "id" : "minecraft:cut_copper", + "count" : 4, + "blockRuntimeId" : 4645 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_copper_block_to_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -340, + "id" : "minecraft:copper_block", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -361, + "id" : "minecraft:cut_copper_slab", + "count" : 8, + "blockRuntimeId" : 5191 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_copper_block_to_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -340, + "id" : "minecraft:copper_block", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -354, + "id" : "minecraft:cut_copper_stairs", + "count" : 4, + "blockRuntimeId" : 4528 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_cut_copper_to_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -347, + "id" : "minecraft:cut_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -361, + "id" : "minecraft:cut_copper_slab", + "count" : 2, + "blockRuntimeId" : 5191 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_cut_copper_to_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -347, + "id" : "minecraft:cut_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -354, + "id" : "minecraft:cut_copper_stairs", + "blockRuntimeId" : 4528 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_dark_prismarine_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 168, + "id" : "minecraft:prismarine", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "count" : 2, + "blockRuntimeId" : 6601 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_dark_prismarine_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 168, + "id" : "minecraft:prismarine", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : -3, + "id" : "minecraft:dark_prismarine_stairs", + "blockRuntimeId" : 7372 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_diorite_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 2, + "blockRuntimeId" : 6618 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_diorite_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : -170, + "id" : "minecraft:diorite_stairs", + "blockRuntimeId" : 4339 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_diorite_wall", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1190 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_double_stone_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone" + } + ], + "output" : [ + { + "legacyId" : -166, + "id" : "minecraft:double_stone_slab4", + "count" : 2, + "blockRuntimeId" : 6632 + } + ], + "block" : "stonecutter", + "priority" : 5 + }, + { + "id" : "minecraft:stonecutter_endbrick_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 121, + "id" : "minecraft:end_stone" + } + ], + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 2, + "blockRuntimeId" : 6614 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_endbrick_slab2", + "type" : 0, + "input" : [ + { + "legacyId" : 206, + "id" : "minecraft:end_bricks" + } + ], + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 2, + "blockRuntimeId" : 6614 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_endbrick_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 121, + "id" : "minecraft:end_stone" + } + ], + "output" : [ + { + "legacyId" : -178, + "id" : "minecraft:end_brick_stairs", + "blockRuntimeId" : 6347 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_endbrick_stairs2", + "type" : 0, + "input" : [ + { + "legacyId" : 206, + "id" : "minecraft:end_bricks" + } + ], + "output" : [ + { + "legacyId" : -178, + "id" : "minecraft:end_brick_stairs", + "blockRuntimeId" : 6347 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_endbrick_wall", + "type" : 0, + "input" : [ + { + "legacyId" : 121, + "id" : "minecraft:end_stone" + } + ], + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1197 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_endbrick_wall2", + "type" : 0, + "input" : [ + { + "legacyId" : 206, + "id" : "minecraft:end_bricks" + } + ], + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1197 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_endbricks", + "type" : 0, + "input" : [ + { + "legacyId" : 121, + "id" : "minecraft:end_stone" + } + ], + "output" : [ + { + "legacyId" : 206, + "id" : "minecraft:end_bricks", + "blockRuntimeId" : 295 + } + ], + "block" : "stonecutter", + "priority" : 3 + }, + { + "id" : "minecraft:stonecutter_exposed_copper_to_cut_copper", + "type" : 0, + "input" : [ + { + "legacyId" : -341, + "id" : "minecraft:exposed_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -348, + "id" : "minecraft:exposed_cut_copper", + "count" : 4, + "blockRuntimeId" : 6090 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_exposed_copper_to_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -341, + "id" : "minecraft:exposed_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -355, + "id" : "minecraft:exposed_cut_copper_stairs", + "count" : 4, + "blockRuntimeId" : 4519 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_exposed_copper_to_exposed_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -341, + "id" : "minecraft:exposed_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -362, + "id" : "minecraft:exposed_cut_copper_slab", + "count" : 8, + "blockRuntimeId" : 6491 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_exposed_cut_copper_to_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -348, + "id" : "minecraft:exposed_cut_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -362, + "id" : "minecraft:exposed_cut_copper_slab", + "count" : 2, + "blockRuntimeId" : 6491 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_exposed_cut_copper_to_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -348, + "id" : "minecraft:exposed_cut_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -355, + "id" : "minecraft:exposed_cut_copper_stairs", + "blockRuntimeId" : 4519 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_granite_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 2, + "blockRuntimeId" : 6620 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_granite_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : -169, + "id" : "minecraft:granite_stairs", + "blockRuntimeId" : 3542 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_granite_wall", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1189 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_mossy_cobbledouble_stone_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 48, + "id" : "minecraft:mossy_cobblestone" + } + ], + "output" : [ + { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "count" : 2, + "blockRuntimeId" : 6603 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_mossy_cobblestone_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 48, + "id" : "minecraft:mossy_cobblestone" + } + ], + "output" : [ + { + "legacyId" : -179, + "id" : "minecraft:mossy_cobblestone_stairs", + "blockRuntimeId" : 4081 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_mossy_cobblestone_wall", + "type" : 0, + "input" : [ + { + "legacyId" : 48, + "id" : "minecraft:mossy_cobblestone" + } + ], + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1188 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_mossy_stonebrick_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 98, + "id" : "minecraft:stonebrick", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : -166, + "id" : "minecraft:double_stone_slab4", + "count" : 2, + "blockRuntimeId" : 6630 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_mossy_stonebrick_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 98, + "id" : "minecraft:stonebrick", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : -175, + "id" : "minecraft:mossy_stone_brick_stairs", + "blockRuntimeId" : 5807 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_mossy_stonebrick_wall", + "type" : 0, + "input" : [ + { + "legacyId" : 98, + "id" : "minecraft:stonebrick", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1195 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_nether_brick_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 112, + "id" : "minecraft:nether_brick" + } + ], + "output" : [ + { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "count" : 2, + "blockRuntimeId" : 256 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_nether_brick_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 112, + "id" : "minecraft:nether_brick" + } + ], + "output" : [ + { + "legacyId" : 114, + "id" : "minecraft:nether_brick_stairs", + "blockRuntimeId" : 106 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_nether_brick_wall", + "type" : 0, + "input" : [ + { + "legacyId" : 112, + "id" : "minecraft:nether_brick" + } + ], + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1196 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_oxidized_copper_to_cut_copper", + "type" : 0, + "input" : [ + { + "legacyId" : -343, + "id" : "minecraft:oxidized_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -350, + "id" : "minecraft:oxidized_cut_copper", + "count" : 4, + "blockRuntimeId" : 5428 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_oxidized_copper_to_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -343, + "id" : "minecraft:oxidized_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -364, + "id" : "minecraft:oxidized_cut_copper_slab", + "count" : 8, + "blockRuntimeId" : 5232 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_oxidized_copper_to_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -343, + "id" : "minecraft:oxidized_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -357, + "id" : "minecraft:oxidized_cut_copper_stairs", + "count" : 4, + "blockRuntimeId" : 361 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_oxidized_cut_copper_to_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -350, + "id" : "minecraft:oxidized_cut_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -364, + "id" : "minecraft:oxidized_cut_copper_slab", + "count" : 2, + "blockRuntimeId" : 5232 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_oxidized_cut_copper_to_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -350, + "id" : "minecraft:oxidized_cut_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -357, + "id" : "minecraft:oxidized_cut_copper_stairs", + "blockRuntimeId" : 361 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_polished_andesite", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "blockRuntimeId" : 667 + } + ], + "block" : "stonecutter", + "priority" : 3 + }, + { + "id" : "minecraft:stonecutter_polished_andesite_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 2, + "blockRuntimeId" : 6616 + } + ], + "block" : "stonecutter", + "priority" : 4 + }, + { + "id" : "minecraft:stonecutter_polished_andesite_slab2", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 2, + "blockRuntimeId" : 6616 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_polished_andesite_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : -174, + "id" : "minecraft:polished_andesite_stairs", + "blockRuntimeId" : 6982 + } + ], + "block" : "stonecutter", + "priority" : 5 + }, + { + "id" : "minecraft:stonecutter_polished_andesite_stairs2", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : -174, + "id" : "minecraft:polished_andesite_stairs", + "blockRuntimeId" : 6982 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_polished_basalt_from_basalt", + "type" : 0, + "input" : [ + { + "legacyId" : -234, + "id" : "minecraft:basalt", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -235, + "id" : "minecraft:polished_basalt", + "blockRuntimeId" : 24 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_polished_brick_slab_from_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -284, + "id" : "minecraft:polished_blackstone_brick_slab", + "count" : 2, + "blockRuntimeId" : 4175 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_polished_brick_stairs_from_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -275, + "id" : "minecraft:polished_blackstone_brick_stairs", + "blockRuntimeId" : 4425 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_polished_brick_wall_from_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -278, + "id" : "minecraft:polished_blackstone_brick_wall", + "blockRuntimeId" : 978 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_polished_bricks_from_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -274, + "id" : "minecraft:polished_blackstone_bricks", + "blockRuntimeId" : 4636 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_polished_diorite", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "blockRuntimeId" : 665 + } + ], + "block" : "stonecutter", + "priority" : 3 + }, + { + "id" : "minecraft:stonecutter_polished_diorite_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 2, + "blockRuntimeId" : 6619 + } + ], + "block" : "stonecutter", + "priority" : 4 + }, + { + "id" : "minecraft:stonecutter_polished_diorite_slab2", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 2, + "blockRuntimeId" : 6619 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_polished_diorite_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : -173, + "id" : "minecraft:polished_diorite_stairs", + "blockRuntimeId" : 6588 + } + ], + "block" : "stonecutter", + "priority" : 5 + }, + { + "id" : "minecraft:stonecutter_polished_diorite_stairs2", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : -173, + "id" : "minecraft:polished_diorite_stairs", + "blockRuntimeId" : 6588 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_polished_from_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -291, + "id" : "minecraft:polished_blackstone", + "blockRuntimeId" : 3687 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_polished_granite", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "blockRuntimeId" : 663 + } + ], + "block" : "stonecutter", + "priority" : 3 + }, + { + "id" : "minecraft:stonecutter_polished_granite_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 2, + "blockRuntimeId" : 6621 + } + ], + "block" : "stonecutter", + "priority" : 4 + }, + { + "id" : "minecraft:stonecutter_polished_granite_slab2", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 2, + "blockRuntimeId" : 6621 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_polished_granite_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : -172, + "id" : "minecraft:polished_granite_stairs", + "blockRuntimeId" : 4139 + } + ], + "block" : "stonecutter", + "priority" : 5 + }, + { + "id" : "minecraft:stonecutter_polished_granite_stairs2", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : -172, + "id" : "minecraft:polished_granite_stairs", + "blockRuntimeId" : 4139 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_polished_slab_from_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -293, + "id" : "minecraft:polished_blackstone_slab", + "count" : 2, + "blockRuntimeId" : 5942 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_polished_stairs_from_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -292, + "id" : "minecraft:polished_blackstone_stairs", + "blockRuntimeId" : 4245 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_polished_wall_from_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -297, + "id" : "minecraft:polished_blackstone_wall", + "blockRuntimeId" : 6640 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_prismarine_brick_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 168, + "id" : "minecraft:prismarine", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "count" : 2, + "blockRuntimeId" : 6602 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_prismarine_brick_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 168, + "id" : "minecraft:prismarine", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : -4, + "id" : "minecraft:prismarine_bricks_stairs", + "blockRuntimeId" : 206 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_prismarine_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 168, + "id" : "minecraft:prismarine" + } + ], + "output" : [ + { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "count" : 2, + "blockRuntimeId" : 6600 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_prismarine_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 168, + "id" : "minecraft:prismarine" + } + ], + "output" : [ + { + "legacyId" : -2, + "id" : "minecraft:prismarine_stairs", + "blockRuntimeId" : 7205 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_prismarine_wall", + "type" : 0, + "input" : [ + { + "legacyId" : 168, + "id" : "minecraft:prismarine" + } + ], + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1198 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_purpur_lines", + "type" : 0, + "input" : [ + { + "legacyId" : 201, + "id" : "minecraft:purpur_block" + } + ], + "output" : [ + { + "legacyId" : 201, + "id" : "minecraft:purpur_block", + "blockRuntimeId" : 7658 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_purpur_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 201, + "id" : "minecraft:purpur_block" + } + ], + "output" : [ + { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "count" : 2, + "blockRuntimeId" : 6599 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_purpur_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 201, + "id" : "minecraft:purpur_block" + } + ], + "output" : [ + { + "legacyId" : 203, + "id" : "minecraft:purpur_stairs", + "blockRuntimeId" : 7697 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_quartz_bricks_from_quartz_block", + "type" : 0, + "input" : [ + { + "legacyId" : 155, + "id" : "minecraft:quartz_block" + } + ], + "output" : [ + { + "legacyId" : -304, + "id" : "minecraft:quartz_bricks", + "blockRuntimeId" : 6316 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_quartz_chiseled", + "type" : 0, + "input" : [ + { + "legacyId" : 155, + "id" : "minecraft:quartz_block" + } + ], + "output" : [ + { + "legacyId" : 155, + "id" : "minecraft:quartz_block", + "blockRuntimeId" : 3702 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_quartz_lines", + "type" : 0, + "input" : [ + { + "legacyId" : 155, + "id" : "minecraft:quartz_block" + } + ], + "output" : [ + { + "legacyId" : 155, + "id" : "minecraft:quartz_block", + "blockRuntimeId" : 3703 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_quartz_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 155, + "id" : "minecraft:quartz_block" + } + ], + "output" : [ + { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "count" : 2, + "blockRuntimeId" : 255 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_quartz_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 155, + "id" : "minecraft:quartz_block" + } + ], + "output" : [ + { + "legacyId" : 156, + "id" : "minecraft:quartz_stairs", + "blockRuntimeId" : 4723 + } + ], + "block" : "stonecutter", + "priority" : 3 + }, + { + "id" : "minecraft:stonecutter_red_nether_brick_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 215, + "id" : "minecraft:red_nether_brick" + } + ], + "output" : [ + { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "count" : 2, + "blockRuntimeId" : 6605 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_red_nether_brick_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 215, + "id" : "minecraft:red_nether_brick" + } + ], + "output" : [ + { + "legacyId" : -184, + "id" : "minecraft:red_nether_brick_stairs", + "blockRuntimeId" : 6493 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_red_nether_brick_wall", + "type" : 0, + "input" : [ + { + "legacyId" : 215, + "id" : "minecraft:red_nether_brick" + } + ], + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1200 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_red_sanddouble_stone_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 179, + "id" : "minecraft:red_sandstone" + } + ], + "output" : [ + { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "count" : 2, + "blockRuntimeId" : 6598 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_red_sandstone_cut", + "type" : 0, + "input" : [ + { + "legacyId" : 179, + "id" : "minecraft:red_sandstone" + } + ], + "output" : [ + { + "legacyId" : 179, + "id" : "minecraft:red_sandstone", + "blockRuntimeId" : 6473 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_red_sandstone_heiroglyphs", + "type" : 0, + "input" : [ + { + "legacyId" : 179, + "id" : "minecraft:red_sandstone" + } + ], + "output" : [ + { + "legacyId" : 179, + "id" : "minecraft:red_sandstone", + "blockRuntimeId" : 6472 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_red_sandstone_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 179, + "id" : "minecraft:red_sandstone" + } + ], + "output" : [ + { + "legacyId" : 180, + "id" : "minecraft:red_sandstone_stairs", + "blockRuntimeId" : 5300 + } + ], + "block" : "stonecutter", + "priority" : 3 + }, + { + "id" : "minecraft:stonecutter_red_sandstone_wall", + "type" : 0, + "input" : [ + { + "legacyId" : 179, + "id" : "minecraft:red_sandstone" + } + ], + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1199 + } + ], + "block" : "stonecutter", + "priority" : 4 + }, + { + "id" : "minecraft:stonecutter_sanddouble_stone_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 24, + "id" : "minecraft:sandstone" + } + ], + "output" : [ + { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "count" : 2, + "blockRuntimeId" : 250 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_sandstone_cut", + "type" : 0, + "input" : [ + { + "legacyId" : 24, + "id" : "minecraft:sandstone" + } + ], + "output" : [ + { + "legacyId" : 24, + "id" : "minecraft:sandstone", + "blockRuntimeId" : 3660 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_sandstone_heiroglyphs", + "type" : 0, + "input" : [ + { + "legacyId" : 24, + "id" : "minecraft:sandstone" + } + ], + "output" : [ + { + "legacyId" : 24, + "id" : "minecraft:sandstone", + "blockRuntimeId" : 3659 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_sandstone_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 24, + "id" : "minecraft:sandstone" + } + ], + "output" : [ + { + "legacyId" : 128, + "id" : "minecraft:sandstone_stairs", + "blockRuntimeId" : 3592 + } + ], + "block" : "stonecutter", + "priority" : 3 + }, + { + "id" : "minecraft:stonecutter_sandstone_wall", + "type" : 0, + "input" : [ + { + "legacyId" : 24, + "id" : "minecraft:sandstone" + } + ], + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1192 + } + ], + "block" : "stonecutter", + "priority" : 4 + }, + { + "id" : "minecraft:stonecutter_slab_from_polished_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -291, + "id" : "minecraft:polished_blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -293, + "id" : "minecraft:polished_blackstone_slab", + "count" : 2, + "blockRuntimeId" : 5942 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_slab_from_polished_blackstone_bricks", + "type" : 0, + "input" : [ + { + "legacyId" : -274, + "id" : "minecraft:polished_blackstone_bricks", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -284, + "id" : "minecraft:polished_blackstone_brick_slab", + "count" : 2, + "blockRuntimeId" : 4175 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_smooth_double_stone_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -183, + "id" : "minecraft:smooth_stone" + } + ], + "output" : [ + { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "count" : 2, + "blockRuntimeId" : 249 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_smooth_quartz_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 155, + "id" : "minecraft:quartz_block", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : -166, + "id" : "minecraft:double_stone_slab4", + "count" : 2, + "blockRuntimeId" : 6631 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_smooth_quartz_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 155, + "id" : "minecraft:quartz_block", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : -185, + "id" : "minecraft:smooth_quartz_stairs", + "blockRuntimeId" : 7642 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_smooth_red_sanddouble_stone_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 179, + "id" : "minecraft:red_sandstone", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 2, + "blockRuntimeId" : 6615 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_smooth_red_sandstone_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 179, + "id" : "minecraft:red_sandstone", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : -176, + "id" : "minecraft:smooth_red_sandstone_stairs", + "blockRuntimeId" : 5496 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_smooth_sanddouble_stone_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 24, + "id" : "minecraft:sandstone", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "count" : 2, + "blockRuntimeId" : 6604 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_smooth_sandstone_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 24, + "id" : "minecraft:sandstone", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : -177, + "id" : "minecraft:smooth_sandstone_stairs", + "blockRuntimeId" : 3632 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_stairs_from_polished_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -291, + "id" : "minecraft:polished_blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -292, + "id" : "minecraft:polished_blackstone_stairs", + "blockRuntimeId" : 4245 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_stone_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone" + } + ], + "output" : [ + { + "legacyId" : -180, + "id" : "minecraft:normal_stone_stairs", + "blockRuntimeId" : 641 + } + ], + "block" : "stonecutter", + "priority" : 6 + }, + { + "id" : "minecraft:stonecutter_stonebrick", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone" + } + ], + "output" : [ + { + "legacyId" : 98, + "id" : "minecraft:stonebrick", + "blockRuntimeId" : 6438 + } + ], + "block" : "stonecutter", + "priority" : 4 + }, + { + "id" : "minecraft:stonecutter_stonebrick_chiseled", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone" + } + ], + "output" : [ + { + "legacyId" : 98, + "id" : "minecraft:stonebrick", + "blockRuntimeId" : 6441 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_stonebrick_slab", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone" + } + ], + "output" : [ + { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "count" : 2, + "blockRuntimeId" : 254 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_stonebrick_slab2", + "type" : 0, + "input" : [ + { + "legacyId" : 98, + "id" : "minecraft:stonebrick" + } + ], + "output" : [ + { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "count" : 2, + "blockRuntimeId" : 254 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_stonebrick_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone" + } + ], + "output" : [ + { + "legacyId" : 109, + "id" : "minecraft:stone_brick_stairs", + "blockRuntimeId" : 939 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_stonebrick_stairs2", + "type" : 0, + "input" : [ + { + "legacyId" : 98, + "id" : "minecraft:stonebrick" + } + ], + "output" : [ + { + "legacyId" : 109, + "id" : "minecraft:stone_brick_stairs", + "blockRuntimeId" : 939 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_stonebrick_wall", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone" + } + ], + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1194 + } + ], + "block" : "stonecutter", + "priority" : 3 + }, + { + "id" : "minecraft:stonecutter_stonebrick_wall2", + "type" : 0, + "input" : [ + { + "legacyId" : 98, + "id" : "minecraft:stonebrick" + } + ], + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "blockRuntimeId" : 1194 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_wall_from_polished_blackstone", + "type" : 0, + "input" : [ + { + "legacyId" : -291, + "id" : "minecraft:polished_blackstone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -297, + "id" : "minecraft:polished_blackstone_wall", + "blockRuntimeId" : 6640 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_wall_from_polished_blackstone_bricks", + "type" : 0, + "input" : [ + { + "legacyId" : -274, + "id" : "minecraft:polished_blackstone_bricks", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -278, + "id" : "minecraft:polished_blackstone_brick_wall", + "blockRuntimeId" : 978 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_waxed_copper_to_cut_copper", + "type" : 0, + "input" : [ + { + "legacyId" : -344, + "id" : "minecraft:waxed_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -351, + "id" : "minecraft:waxed_cut_copper", + "count" : 4, + "blockRuntimeId" : 7235 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_waxed_copper_to_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -344, + "id" : "minecraft:waxed_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -365, + "id" : "minecraft:waxed_cut_copper_slab", + "count" : 8, + "blockRuntimeId" : 7757 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_waxed_copper_to_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -344, + "id" : "minecraft:waxed_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -358, + "id" : "minecraft:waxed_cut_copper_stairs", + "count" : 4, + "blockRuntimeId" : 403 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_waxed_copper_to_exposed_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -345, + "id" : "minecraft:waxed_exposed_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -366, + "id" : "minecraft:waxed_exposed_cut_copper_slab", + "count" : 8, + "blockRuntimeId" : 247 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_waxed_cut_copper_to_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -351, + "id" : "minecraft:waxed_cut_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -365, + "id" : "minecraft:waxed_cut_copper_slab", + "count" : 2, + "blockRuntimeId" : 7757 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_waxed_cut_copper_to_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -351, + "id" : "minecraft:waxed_cut_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -358, + "id" : "minecraft:waxed_cut_copper_stairs", + "blockRuntimeId" : 403 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_waxed_exposed_copper_to_cut_copper", + "type" : 0, + "input" : [ + { + "legacyId" : -345, + "id" : "minecraft:waxed_exposed_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -352, + "id" : "minecraft:waxed_exposed_cut_copper", + "count" : 4, + "blockRuntimeId" : 3814 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_waxed_exposed_copper_to_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -345, + "id" : "minecraft:waxed_exposed_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -359, + "id" : "minecraft:waxed_exposed_cut_copper_stairs", + "count" : 4, + "blockRuntimeId" : 3891 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_waxed_exposed_cut_copper_to_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -352, + "id" : "minecraft:waxed_exposed_cut_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -366, + "id" : "minecraft:waxed_exposed_cut_copper_slab", + "count" : 2, + "blockRuntimeId" : 247 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_waxed_exposed_cut_copper_to_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -352, + "id" : "minecraft:waxed_exposed_cut_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -359, + "id" : "minecraft:waxed_exposed_cut_copper_stairs", + "blockRuntimeId" : 3891 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_waxed_oxidized_copper_to_cut_copper", + "type" : 0, + "input" : [ + { + "legacyId" : -446, + "id" : "minecraft:waxed_oxidized_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -447, + "id" : "minecraft:waxed_oxidized_cut_copper", + "count" : 4, + "blockRuntimeId" : 214 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_waxed_oxidized_copper_to_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -446, + "id" : "minecraft:waxed_oxidized_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -449, + "id" : "minecraft:waxed_oxidized_cut_copper_slab", + "count" : 8, + "blockRuntimeId" : 716 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_waxed_oxidized_copper_to_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -446, + "id" : "minecraft:waxed_oxidized_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -448, + "id" : "minecraft:waxed_oxidized_cut_copper_stairs", + "count" : 4, + "blockRuntimeId" : 5764 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_waxed_oxidized_cut_copper_to_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -447, + "id" : "minecraft:waxed_oxidized_cut_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -449, + "id" : "minecraft:waxed_oxidized_cut_copper_slab", + "blockRuntimeId" : 716 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_waxed_oxidized_cut_copper_to_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -447, + "id" : "minecraft:waxed_oxidized_cut_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -448, + "id" : "minecraft:waxed_oxidized_cut_copper_stairs", + "blockRuntimeId" : 5764 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_waxed_weathered_copper_to_cut_copper", + "type" : 0, + "input" : [ + { + "legacyId" : -346, + "id" : "minecraft:waxed_weathered_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -353, + "id" : "minecraft:waxed_weathered_cut_copper", + "count" : 4, + "blockRuntimeId" : 4807 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_waxed_weathered_copper_to_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -346, + "id" : "minecraft:waxed_weathered_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -367, + "id" : "minecraft:waxed_weathered_cut_copper_slab", + "count" : 8, + "blockRuntimeId" : 6436 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_waxed_weathered_copper_to_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -346, + "id" : "minecraft:waxed_weathered_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -360, + "id" : "minecraft:waxed_weathered_cut_copper_stairs", + "count" : 4, + "blockRuntimeId" : 6091 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_waxed_weathered_cut_copper_to_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -353, + "id" : "minecraft:waxed_weathered_cut_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -367, + "id" : "minecraft:waxed_weathered_cut_copper_slab", + "count" : 2, + "blockRuntimeId" : 6436 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_waxed_weathered_cut_copper_to_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -353, + "id" : "minecraft:waxed_weathered_cut_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -360, + "id" : "minecraft:waxed_weathered_cut_copper_stairs", + "blockRuntimeId" : 6091 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_weathered_copper_to_cut_copper", + "type" : 0, + "input" : [ + { + "legacyId" : -342, + "id" : "minecraft:weathered_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -349, + "id" : "minecraft:weathered_cut_copper", + "count" : 4, + "blockRuntimeId" : 7139 + } + ], + "block" : "stonecutter", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter_weathered_copper_to_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -342, + "id" : "minecraft:weathered_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -363, + "id" : "minecraft:weathered_cut_copper_slab", + "count" : 8, + "blockRuntimeId" : 5977 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_weathered_copper_to_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -342, + "id" : "minecraft:weathered_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -356, + "id" : "minecraft:weathered_cut_copper_stairs", + "count" : 4, + "blockRuntimeId" : 4253 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "minecraft:stonecutter_weathered_cut_copper_to_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -349, + "id" : "minecraft:weathered_cut_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -363, + "id" : "minecraft:weathered_cut_copper_slab", + "count" : 2, + "blockRuntimeId" : 5977 + } + ], + "block" : "stonecutter", + "priority" : 1 + }, + { + "id" : "minecraft:stonecutter_weathered_cut_copper_to_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -349, + "id" : "minecraft:weathered_cut_copper", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -356, + "id" : "minecraft:weathered_cut_copper_stairs", + "blockRuntimeId" : 4253 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "stonecutter_stairs_from_polished_blackstone_bricks", + "type" : 0, + "input" : [ + { + "legacyId" : -274, + "id" : "minecraft:polished_blackstone_bricks", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -275, + "id" : "minecraft:polished_blackstone_brick_stairs", + "blockRuntimeId" : 4425 + } + ], + "block" : "stonecutter", + "priority" : 2 + }, + { + "id" : "Bookshelf_woodplanks_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 387, + "id" : "minecraft:book", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 47, + "id" : "minecraft:bookshelf", + "blockRuntimeId" : 6545 + } + ], + "shape" : [ + "AAA", + "BBB", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "Bowl_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "count" : 4 + } + ], + "shape" : [ + "A A", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "ButtonAcacia_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 4 + } + }, + "output" : [ + { + "legacyId" : -140, + "id" : "minecraft:acacia_button", + "blockRuntimeId" : 7173 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "ButtonBirch_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 2 + } + }, + "output" : [ + { + "legacyId" : -141, + "id" : "minecraft:birch_button", + "blockRuntimeId" : 7708 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "ButtonDarkOak_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 5 + } + }, + "output" : [ + { + "legacyId" : -142, + "id" : "minecraft:dark_oak_button", + "blockRuntimeId" : 93 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "ButtonJungle_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : -143, + "id" : "minecraft:jungle_button", + "blockRuntimeId" : 116 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "ButtonSpruce_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : -144, + "id" : "minecraft:spruce_button", + "blockRuntimeId" : 4269 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "Chest_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 54, + "id" : "minecraft:chest", + "blockRuntimeId" : 7057 + } + ], + "shape" : [ + "AAA", + "A A", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "DaylightDetector_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass" + }, + "B" : { + "legacyId" : 524, + "id" : "minecraft:quartz", + "damage" : 32767 + }, + "C" : { + "legacyId" : 158, + "id" : "minecraft:wooden_slab", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 151, + "id" : "minecraft:daylight_detector", + "blockRuntimeId" : 4180 + } + ], + "shape" : [ + "AAA", + "BBB", + "CCC" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "FireCharge_blaze_powder_coal_sulphur_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 429, + "id" : "minecraft:blaze_powder", + "damage" : 32767 + }, + { + "legacyId" : 303, + "id" : "minecraft:charcoal", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 509, + "id" : "minecraft:fire_charge", + "count" : 3 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "FireCharge_coal_sulphur_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 429, + "id" : "minecraft:blaze_powder", + "damage" : 32767 + }, + { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 509, + "id" : "minecraft:fire_charge", + "count" : 3 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "Jukebox_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 304, + "id" : "minecraft:diamond", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 84, + "id" : "minecraft:jukebox", + "blockRuntimeId" : 4830 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "Note_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 25, + "id" : "minecraft:noteblock", + "blockRuntimeId" : 359 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "Painting_Cobblestone_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 4, + "id" : "minecraft:cobblestone" + } + }, + "output" : [ + { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "count" : 6, + "blockRuntimeId" : 252 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "Painting_NetherBrick_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 112, + "id" : "minecraft:nether_brick" + } + }, + "output" : [ + { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "count" : 6, + "blockRuntimeId" : 256 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "Painting_VanillaBlocks_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 24, + "id" : "minecraft:sandstone" + } + }, + "output" : [ + { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "count" : 6, + "blockRuntimeId" : 250 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "Painting_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 357, + "id" : "minecraft:painting" + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "Piston_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 4, + "id" : "minecraft:cobblestone" + }, + "C" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "D" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 33, + "id" : "minecraft:piston", + "blockRuntimeId" : 930 + } + ], + "shape" : [ + "AAA", + "BCB", + "BDB" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "PressurePlateAcacia_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 4 + } + }, + "output" : [ + { + "legacyId" : -150, + "id" : "minecraft:acacia_pressure_plate", + "blockRuntimeId" : 5203 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "PressurePlateBirch_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 2 + } + }, + "output" : [ + { + "legacyId" : -151, + "id" : "minecraft:birch_pressure_plate", + "blockRuntimeId" : 3560 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "PressurePlateDarkOak_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 5 + } + }, + "output" : [ + { + "legacyId" : -152, + "id" : "minecraft:dark_oak_pressure_plate", + "blockRuntimeId" : 5880 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "PressurePlateJungle_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : -153, + "id" : "minecraft:jungle_pressure_plate", + "blockRuntimeId" : 3640 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "PressurePlateSpruce_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : -154, + "id" : "minecraft:spruce_pressure_plate", + "blockRuntimeId" : 3764 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "Stick_bamboo_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -163, + "id" : "minecraft:bamboo" + } + }, + "output" : [ + { + "legacyId" : 320, + "id" : "minecraft:stick" + } + ], + "shape" : [ + "A", + "A" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "StoneSlab4_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone" + } + }, + "output" : [ + { + "legacyId" : -166, + "id" : "minecraft:double_stone_slab4", + "count" : 6, + "blockRuntimeId" : 6632 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "StoneSlab4_stoneBrick_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 98, + "id" : "minecraft:stonebrick", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : -166, + "id" : "minecraft:double_stone_slab4", + "count" : 6, + "blockRuntimeId" : 6630 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "StoneSlab_Brick_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 45, + "id" : "minecraft:brick_block" + } + }, + "output" : [ + { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "count" : 6, + "blockRuntimeId" : 253 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "StoneSlab_StoneBrick_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 98, + "id" : "minecraft:stonebrick" + } + }, + "output" : [ + { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "count" : 6, + "blockRuntimeId" : 254 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "StoneSlab_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -183, + "id" : "minecraft:smooth_stone" + } + }, + "output" : [ + { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "count" : 6, + "blockRuntimeId" : 249 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "Torch_charcoal_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 303, + "id" : "minecraft:charcoal", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 50, + "id" : "minecraft:torch", + "count" : 4, + "blockRuntimeId" : 732 + } + ], + "shape" : [ + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "Torch_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 50, + "id" : "minecraft:torch", + "count" : 4, + "blockRuntimeId" : 732 + } + ], + "shape" : [ + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "TrapdoorAcacia_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 4 + } + }, + "output" : [ + { + "legacyId" : -145, + "id" : "minecraft:acacia_trapdoor", + "count" : 2, + "blockRuntimeId" : 5539 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "TrapdoorBirch_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 2 + } + }, + "output" : [ + { + "legacyId" : -146, + "id" : "minecraft:birch_trapdoor", + "count" : 2, + "blockRuntimeId" : 6524 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "TrapdoorDarkOak_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 5 + } + }, + "output" : [ + { + "legacyId" : -147, + "id" : "minecraft:dark_oak_trapdoor", + "count" : 2, + "blockRuntimeId" : 7444 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "TrapdoorJungle_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : -148, + "id" : "minecraft:jungle_trapdoor", + "count" : 2, + "blockRuntimeId" : 5331 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "TrapdoorSpruce_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : -149, + "id" : "minecraft:spruce_trapdoor", + "count" : 2, + "blockRuntimeId" : 6443 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "Trapdoor_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks" + } + }, + "output" : [ + { + "legacyId" : 96, + "id" : "minecraft:trapdoor", + "count" : 2, + "blockRuntimeId" : 227 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "TripwireHook_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "C" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 131, + "id" : "minecraft:tripwire_hook", + "count" : 2, + "blockRuntimeId" : 5838 + } + ], + "shape" : [ + "A", + "B", + "C" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "WoodButton_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks" + } + }, + "output" : [ + { + "legacyId" : 143, + "id" : "minecraft:wooden_button", + "blockRuntimeId" : 6356 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "WoodPressurePlate_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks" + } + }, + "output" : [ + { + "legacyId" : 72, + "id" : "minecraft:wooden_pressure_plate", + "blockRuntimeId" : 8005 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "WorkBench_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 58, + "id" : "minecraft:crafting_table", + "blockRuntimeId" : 5778 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "acacia_stairs_acacia_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 4 + } + }, + "output" : [ + { + "legacyId" : 163, + "id" : "minecraft:acacia_stairs", + "count" : 4, + "blockRuntimeId" : 6123 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "type" : 4, + "uuid" : "d81aaeaf-e172-4440-9225-868df030d27b" + }, + { + "type" : 4, + "uuid" : "b5c5d105-75a2-4076-af2b-923ea2bf4bf0" + }, + { + "type" : 4, + "uuid" : "00000000-0000-0000-0000-000000000002" + }, + { + "id" : "bed_color_0", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool" + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "bed_color_1", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "bed_color_10", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "bed_color_11", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "bed_color_12", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "bed_color_13", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "bed_color_14", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "bed_color_15", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "bed_color_2", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "bed_color_3", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "bed_color_4", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "bed_color_5", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "bed_color_6", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "bed_color_7", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "bed_color_8", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "bed_color_9", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "bed_color_crimson_0", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool" + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_crimson_1", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_crimson_10", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_crimson_11", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_crimson_12", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_crimson_13", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_crimson_14", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_crimson_15", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_crimson_2", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_crimson_3", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_crimson_4", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_crimson_5", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_crimson_6", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_crimson_7", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_crimson_8", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_crimson_9", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_warped_0", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool" + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_warped_1", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_warped_10", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_warped_11", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_warped_12", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_warped_13", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_warped_14", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_warped_15", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_warped_2", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_warped_3", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_warped_4", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_warped_5", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_warped_6", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_warped_7", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_warped_8", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_color_warped_9", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + } + ], + "shape" : [ + "AAA", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "bed_dye_0_1", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_0_10", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_0_11", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_0_12", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_0_13", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_0_14", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_0_15", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_0_2", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_0_3", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_0_4", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_0_5", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_0_6", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_0_7", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_0_8", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_0_9", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_10_0", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_10_1", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_10_11", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_10_12", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_10_13", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_10_14", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_10_15", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_10_2", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_10_3", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_10_4", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_10_5", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_10_6", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_10_7", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_10_8", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_10_9", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_11_0", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_11_1", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_11_10", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_11_12", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_11_13", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_11_14", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_11_15", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_11_2", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_11_3", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_11_4", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_11_5", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_11_6", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_11_7", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_11_8", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_11_9", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_12_0", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_12_1", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_12_10", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_12_11", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_12_13", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_12_14", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_12_15", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_12_2", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_12_3", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_12_4", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_12_5", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_12_6", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_12_7", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_12_8", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_12_9", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_13_0", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_13_1", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_13_10", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_13_11", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_13_12", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_13_14", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_13_15", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_13_2", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_13_3", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_13_4", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_13_5", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_13_6", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_13_7", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_13_8", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_13_9", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_14_0", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_14_1", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_14_10", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_14_11", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_14_12", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_14_13", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_14_15", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_14_2", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_14_3", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_14_4", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_14_5", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_14_6", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_14_7", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_14_8", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_14_9", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_15_0", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_15_1", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_15_10", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_15_11", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_15_12", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_15_13", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_15_14", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_15_2", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_15_3", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_15_4", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_15_5", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_15_6", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_15_7", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_15_8", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_15_9", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_16_1", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_16_10", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_16_11", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_16_12", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_16_13", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_16_14", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_16_15", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_16_2", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_16_3", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_16_4", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_16_5", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_16_6", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_16_7", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_16_8", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_16_9", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_17_0", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_17_1", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_17_10", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_17_11", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_17_12", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_17_13", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_17_14", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_17_15", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_17_2", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_17_4", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_17_5", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_17_6", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_17_7", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_17_8", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_17_9", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_18_0", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_18_1", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_18_10", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_18_11", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_18_12", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_18_13", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_18_14", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_18_15", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_18_2", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_18_3", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_18_5", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_18_6", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_18_7", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_18_8", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_18_9", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_19_0", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_19_1", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_19_10", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_19_11", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_19_12", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_19_13", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_19_14", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_19_2", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_19_3", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_19_4", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_19_5", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_19_6", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_19_7", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_19_8", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_19_9", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_1_0", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_1_10", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_1_11", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_1_12", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_1_13", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_1_14", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_1_15", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_1_2", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_1_3", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_1_4", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_1_5", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_1_6", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_1_7", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_1_8", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_1_9", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_2_0", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_2_1", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_2_10", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_2_11", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_2_12", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_2_13", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_2_14", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_2_15", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_2_3", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_2_4", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_2_5", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_2_6", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_2_7", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_2_8", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_2_9", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_3_0", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_3_1", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_3_10", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_3_11", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_3_12", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_3_13", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_3_14", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_3_15", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_3_2", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_3_4", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_3_5", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_3_6", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_3_7", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_3_8", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_3_9", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_4_0", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_4_1", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_4_10", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_4_11", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_4_12", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_4_13", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_4_14", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_4_15", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_4_2", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_4_3", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_4_5", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_4_6", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_4_7", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_4_8", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_4_9", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_5_0", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_5_1", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_5_10", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_5_11", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_5_12", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_5_13", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_5_14", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_5_15", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_5_2", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_5_3", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_5_4", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_5_6", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_5_7", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_5_8", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_5_9", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_6_0", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_6_1", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_6_10", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_6_11", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_6_12", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_6_13", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_6_14", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_6_15", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_6_2", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_6_3", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_6_4", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_6_5", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_6_7", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_6_8", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_6_9", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_7_0", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_7_1", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_7_10", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_7_11", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_7_12", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_7_13", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_7_14", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_7_15", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_7_2", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_7_3", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_7_4", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_7_5", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_7_6", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_7_8", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_7_9", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_8_0", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_8_1", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_8_10", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_8_11", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_8_12", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_8_13", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_8_14", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_8_15", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_8_2", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_8_3", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_8_4", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_8_5", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_8_6", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_8_7", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_8_9", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_9_0", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 15 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_9_1", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 14 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_9_10", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 5 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_9_11", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 4 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_9_12", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 3 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_9_13", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 2 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_9_14", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 1 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_9_15", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed" + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_9_2", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 13 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_9_3", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 12 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_9_4", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 11 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_9_5", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 10 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_9_6", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 9 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_9_7", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 8 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "bed_dye_9_8", + "type" : 0, + "input" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 7 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 418, + "id" : "minecraft:bed", + "damage" : 6 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "birch_stairs_birch_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 2 + } + }, + "output" : [ + { + "legacyId" : 135, + "id" : "minecraft:birch_stairs", + "count" : 4, + "blockRuntimeId" : 6957 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "type" : 4, + "uuid" : "d1ca6b84-338e-4f2f-9c6b-76cc8b4bd98d" + }, + { + "id" : "chiseled_quartz_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "damage" : 6 + } + }, + "output" : [ + { + "legacyId" : 155, + "id" : "minecraft:quartz_block", + "blockRuntimeId" : 3702 + } + ], + "shape" : [ + "A", + "A" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "chiseled_stonebrick_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "damage" : 5 + } + }, + "output" : [ + { + "legacyId" : 98, + "id" : "minecraft:stonebrick", + "blockRuntimeId" : 6441 + } + ], + "shape" : [ + "A", + "A" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "type" : 4, + "uuid" : "85939755-ba10-4d9d-a4cc-efb7a8e943c4" + }, + { + "id" : "dark_oak_stairs_dark_oak_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 5 + } + }, + "output" : [ + { + "legacyId" : 164, + "id" : "minecraft:dark_oak_stairs", + "count" : 4, + "blockRuntimeId" : 5019 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "type" : 4, + "uuid" : "d392b075-4ba1-40ae-8789-af868d56f6ce" + }, + { + "id" : "heiroglyphs_redsandstone_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2" + } + }, + "output" : [ + { + "legacyId" : 179, + "id" : "minecraft:red_sandstone", + "blockRuntimeId" : 6472 + } + ], + "shape" : [ + "A", + "A" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "heiroglyphs_sandstone_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : 24, + "id" : "minecraft:sandstone", + "blockRuntimeId" : 3659 + } + ], + "shape" : [ + "A", + "A" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "jungle_stairs_jungle_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : 136, + "id" : "minecraft:jungle_stairs", + "count" : 4, + "blockRuntimeId" : 6883 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "lines_purpur_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : 201, + "id" : "minecraft:purpur_block", + "blockRuntimeId" : 7658 + } + ], + "shape" : [ + "A", + "A" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "loom_block_wood_planks_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 326, + "id" : "minecraft:string", + "damage" : 32767 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -204, + "id" : "minecraft:loom", + "blockRuntimeId" : 3831 + } + ], + "shape" : [ + "AA", + "BB" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:acacia_boat", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 4 + }, + "B" : { + "legacyId" : 309, + "id" : "minecraft:wooden_shovel", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 379, + "id" : "minecraft:acacia_boat" + } + ], + "shape" : [ + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:acacia_door", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 4 + } + }, + "output" : [ + { + "legacyId" : 556, + "id" : "minecraft:acacia_door", + "count" : 3 + } + ], + "shape" : [ + "AA", + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:acacia_fence", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 4 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 85, + "id" : "minecraft:fence", + "count" : 3, + "blockRuntimeId" : 7310 + } + ], + "shape" : [ + "ABA", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:acacia_fence_gate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 4 + } + }, + "output" : [ + { + "legacyId" : 187, + "id" : "minecraft:acacia_fence_gate", + "blockRuntimeId" : 7528 + } + ], + "shape" : [ + "ABA", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:acacia_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 162, + "id" : "minecraft:log2" + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5999 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:acacia_planks_from_stripped", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -8, + "id" : "minecraft:stripped_acacia_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5999 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:acacia_planks_from_stripped_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 12 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5999 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:acacia_planks_from_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 4 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5999 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:acacia_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 4 + } + }, + "output" : [ + { + "legacyId" : 163, + "id" : "minecraft:acacia_stairs", + "count" : 4, + "blockRuntimeId" : 6123 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:acacia_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 162, + "id" : "minecraft:log2" + } + }, + "output" : [ + { + "legacyId" : -212, + "id" : "minecraft:wood", + "count" : 3, + "blockRuntimeId" : 3483 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:acacia_wood_stripped", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -8, + "id" : "minecraft:stripped_acacia_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -212, + "id" : "minecraft:wood", + "count" : 3, + "blockRuntimeId" : 3489 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:acacia_wooden_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 4 + } + }, + "output" : [ + { + "legacyId" : 158, + "id" : "minecraft:wooden_slab", + "count" : 6, + "blockRuntimeId" : 5224 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:activator_rail", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "C" : { + "legacyId" : 76, + "id" : "minecraft:redstone_torch", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 126, + "id" : "minecraft:activator_rail", + "count" : 6, + "blockRuntimeId" : 323 + } + ], + "shape" : [ + "ABA", + "ACA", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:amethyst_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 624, + "id" : "minecraft:amethyst_shard", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -327, + "id" : "minecraft:amethyst_block", + "blockRuntimeId" : 304 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:andesite", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 3 + }, + { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "count" : 2, + "blockRuntimeId" : 666 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:andesite_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 5 + } + }, + "output" : [ + { + "legacyId" : -171, + "id" : "minecraft:andesite_stairs", + "count" : 4, + "blockRuntimeId" : 5258 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:andesite_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 5 + } + }, + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "count" : 6, + "blockRuntimeId" : 1191 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:anvil", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 42, + "id" : "minecraft:iron_block", + "damage" : 32767 + }, + "B" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 145, + "id" : "minecraft:anvil", + "blockRuntimeId" : 6508 + } + ], + "shape" : [ + "AAA", + " B ", + "BBB" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:armor_stand", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab" + } + }, + "output" : [ + { + "legacyId" : 552, + "id" : "minecraft:armor_stand" + } + ], + "shape" : [ + "AAA", + " A ", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:arrow", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 356, + "id" : "minecraft:flint", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "C" : { + "legacyId" : 327, + "id" : "minecraft:feather", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "count" : 4 + } + ], + "shape" : [ + "A", + "B", + "C" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:banner_pattern_bricks", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 45, + "id" : "minecraft:brick_block", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 585, + "id" : "minecraft:field_masoned_banner_pattern" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:banner_pattern_creeper", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 516, + "id" : "minecraft:skull", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 582, + "id" : "minecraft:creeper_banner_pattern" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:banner_pattern_flower", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 581, + "id" : "minecraft:flower_banner_pattern" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:banner_pattern_skull", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 516, + "id" : "minecraft:skull", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 583, + "id" : "minecraft:skull_banner_pattern" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:banner_pattern_thing", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 259, + "id" : "minecraft:enchanted_golden_apple", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 584, + "id" : "minecraft:mojang_banner_pattern" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:banner_pattern_vines", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 106, + "id" : "minecraft:vine", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 586, + "id" : "minecraft:bordure_indented_banner_pattern" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:barrel", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 158, + "id" : "minecraft:wooden_slab", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -203, + "id" : "minecraft:barrel", + "blockRuntimeId" : 4450 + } + ], + "shape" : [ + "ABA", + "A A", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:barrel_from_crimson_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -264, + "id" : "minecraft:crimson_slab", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -203, + "id" : "minecraft:barrel", + "blockRuntimeId" : 4450 + } + ], + "shape" : [ + "ABA", + "A A", + "ABA" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:barrel_from_warped_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -265, + "id" : "minecraft:warped_slab", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -203, + "id" : "minecraft:barrel", + "blockRuntimeId" : 4450 + } + ], + "shape" : [ + "ABA", + "A A", + "ABA" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:basic_map_to_enhanced", + "type" : 0, + "input" : [ + { + "legacyId" : 515, + "id" : "minecraft:empty_map", + "damage" : 1 + }, + { + "legacyId" : 391, + "id" : "minecraft:compass", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 515, + "id" : "minecraft:empty_map", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:beacon", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 518, + "id" : "minecraft:nether_star", + "damage" : 32767 + }, + "C" : { + "legacyId" : 49, + "id" : "minecraft:obsidian", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 138, + "id" : "minecraft:beacon", + "blockRuntimeId" : 145 + } + ], + "shape" : [ + "AAA", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:beehive", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -219, + "id" : "minecraft:beehive", + "blockRuntimeId" : 6032 + } + ], + "shape" : [ + "AAA", + "BBB", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:beehive_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -219, + "id" : "minecraft:beehive", + "blockRuntimeId" : 6032 + } + ], + "shape" : [ + "AAA", + "BBB", + "AAA" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:beehive_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -219, + "id" : "minecraft:beehive", + "blockRuntimeId" : 6032 + } + ], + "shape" : [ + "AAA", + "BBB", + "AAA" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:beetroot_soup", + "type" : 0, + "input" : [ + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "damage" : 32767 + }, + { + "legacyId" : 285, + "id" : "minecraft:beetroot", + "damage" : 32767 + }, + { + "legacyId" : 285, + "id" : "minecraft:beetroot", + "damage" : 32767 + }, + { + "legacyId" : 285, + "id" : "minecraft:beetroot", + "damage" : 32767 + }, + { + "legacyId" : 285, + "id" : "minecraft:beetroot", + "damage" : 32767 + }, + { + "legacyId" : 285, + "id" : "minecraft:beetroot", + "damage" : 32767 + }, + { + "legacyId" : 285, + "id" : "minecraft:beetroot", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 286, + "id" : "minecraft:beetroot_soup" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:birch_boat", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 2 + }, + "B" : { + "legacyId" : 309, + "id" : "minecraft:wooden_shovel", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 376, + "id" : "minecraft:birch_boat" + } + ], + "shape" : [ + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:birch_door", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 2 + } + }, + "output" : [ + { + "legacyId" : 554, + "id" : "minecraft:birch_door", + "count" : 3 + } + ], + "shape" : [ + "AA", + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:birch_fence", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 2 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 85, + "id" : "minecraft:fence", + "count" : 3, + "blockRuntimeId" : 7308 + } + ], + "shape" : [ + "ABA", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:birch_fence_gate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 2 + } + }, + "output" : [ + { + "legacyId" : 184, + "id" : "minecraft:birch_fence_gate", + "blockRuntimeId" : 3782 + } + ], + "shape" : [ + "ABA", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:birch_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 17, + "id" : "minecraft:log", + "damage" : 2 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5997 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:birch_planks_from_stripped", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -6, + "id" : "minecraft:stripped_birch_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5997 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:birch_planks_from_stripped_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 10 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5997 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:birch_planks_from_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 2 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5997 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:birch_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 2 + } + }, + "output" : [ + { + "legacyId" : 135, + "id" : "minecraft:birch_stairs", + "count" : 4, + "blockRuntimeId" : 6957 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:birch_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 17, + "id" : "minecraft:log", + "damage" : 2 + } + }, + "output" : [ + { + "legacyId" : -212, + "id" : "minecraft:wood", + "count" : 3, + "blockRuntimeId" : 3481 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:birch_wood_stripped", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -6, + "id" : "minecraft:stripped_birch_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -212, + "id" : "minecraft:wood", + "count" : 3, + "blockRuntimeId" : 3487 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:birch_wooden_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 2 + } + }, + "output" : [ + { + "legacyId" : 158, + "id" : "minecraft:wooden_slab", + "count" : 6, + "blockRuntimeId" : 5222 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:black_banner", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 567, + "id" : "minecraft:banner" + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:black_candle", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye" + } + ], + "output" : [ + { + "legacyId" : -428, + "id" : "minecraft:black_candle", + "blockRuntimeId" : 171 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:black_candle_from_ink_sac", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac" + } + ], + "output" : [ + { + "legacyId" : -428, + "id" : "minecraft:black_candle", + "blockRuntimeId" : 171 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:black_carpet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 3, + "blockRuntimeId" : 971 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:black_carpet_from_white", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 171, + "id" : "minecraft:carpet" + }, + "B" : { + "legacyId" : 395, + "id" : "minecraft:black_dye" + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 8, + "blockRuntimeId" : 971 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:black_concrete_powder", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6244 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:black_concrete_powder_from_ink_sac", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6244 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:black_dye_from_ink_sac", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac" + } + ], + "output" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:black_dye_from_wither_rose", + "type" : 0, + "input" : [ + { + "legacyId" : -216, + "id" : "minecraft:wither_rose", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:black_stained_glass", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 395, + "id" : "minecraft:black_dye" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1155 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:black_stained_glass_from_ink_sac", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 413, + "id" : "minecraft:ink_sac" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1155 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:black_stained_glass_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "damage" : 15 + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 16, + "blockRuntimeId" : 4823 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:black_stained_glass_pane_from_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 102, + "id" : "minecraft:glass_pane", + "damage" : 32767 + }, + "B" : { + "legacyId" : 395, + "id" : "minecraft:black_dye" + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 8, + "blockRuntimeId" : 4823 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:black_stained_hardened_clay", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 395, + "id" : "minecraft:black_dye" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6114 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:black_stained_hardened_clay_from_ink_sac", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 413, + "id" : "minecraft:ink_sac" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6114 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:blackstone_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -282, + "id" : "minecraft:blackstone_slab", + "count" : 6, + "blockRuntimeId" : 918 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:blackstone_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -276, + "id" : "minecraft:blackstone_stairs", + "count" : 4, + "blockRuntimeId" : 6973 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:blackstone_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -277, + "id" : "minecraft:blackstone_wall", + "count" : 6, + "blockRuntimeId" : 3919 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:blast_furnace", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 61, + "id" : "minecraft:furnace", + "damage" : 32767 + }, + "C" : { + "legacyId" : -183, + "id" : "minecraft:smooth_stone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -196, + "id" : "minecraft:blast_furnace", + "blockRuntimeId" : 7509 + } + ], + "shape" : [ + "AAA", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:blaze_powder", + "type" : 0, + "input" : [ + { + "legacyId" : 423, + "id" : "minecraft:blaze_rod", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 429, + "id" : "minecraft:blaze_powder", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:blue_banner", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 567, + "id" : "minecraft:banner", + "damage" : 4 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:blue_candle", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye" + } + ], + "output" : [ + { + "legacyId" : -424, + "id" : "minecraft:blue_candle" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:blue_candle_from_lapis_lazuli", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli" + } + ], + "output" : [ + { + "legacyId" : -424, + "id" : "minecraft:blue_candle" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:blue_carpet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 3, + "blockRuntimeId" : 967 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:blue_carpet_from_white", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 171, + "id" : "minecraft:carpet" + }, + "B" : { + "legacyId" : 399, + "id" : "minecraft:blue_dye" + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 8, + "blockRuntimeId" : 967 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:blue_concrete_powder", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6240 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:blue_concrete_powder_from_lapis_lazuli", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6240 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:blue_dye_from_cornflower", + "type" : 0, + "input" : [ + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:blue_dye_from_lapis_lazuli", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli" + } + ], + "output" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:blue_ice", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 174, + "id" : "minecraft:packed_ice", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -11, + "id" : "minecraft:blue_ice", + "blockRuntimeId" : 6981 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:blue_stained_glass", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 399, + "id" : "minecraft:blue_dye" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1151 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:blue_stained_glass_from_lapis_lazuli", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1151 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:blue_stained_glass_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "damage" : 11 + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 16, + "blockRuntimeId" : 4819 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:blue_stained_glass_pane_from_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 102, + "id" : "minecraft:glass_pane", + "damage" : 32767 + }, + "B" : { + "legacyId" : 399, + "id" : "minecraft:blue_dye" + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 8, + "blockRuntimeId" : 4819 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:blue_stained_hardened_clay", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 399, + "id" : "minecraft:blue_dye" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6110 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:blue_stained_hardened_clay_from_lapis_lazuli", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6110 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:boat", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks" + }, + "B" : { + "legacyId" : 309, + "id" : "minecraft:wooden_shovel", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 375, + "id" : "minecraft:oak_boat" + } + ], + "shape" : [ + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:bone_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 411, + "id" : "minecraft:bone_meal" + } + }, + "output" : [ + { + "legacyId" : 216, + "id" : "minecraft:bone_block", + "blockRuntimeId" : 4198 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:bone_meal_from_block", + "type" : 0, + "input" : [ + { + "legacyId" : 216, + "id" : "minecraft:bone_block", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "count" : 9 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:bone_meal_from_bone", + "type" : 0, + "input" : [ + { + "legacyId" : 415, + "id" : "minecraft:bone", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "count" : 3 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:book", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper" + }, + { + "legacyId" : 386, + "id" : "minecraft:paper" + }, + { + "legacyId" : 386, + "id" : "minecraft:paper" + }, + { + "legacyId" : 381, + "id" : "minecraft:leather" + } + ], + "output" : [ + { + "legacyId" : 387, + "id" : "minecraft:book" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:bookshelf_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 387, + "id" : "minecraft:book", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 47, + "id" : "minecraft:bookshelf", + "blockRuntimeId" : 6545 + } + ], + "shape" : [ + "AAA", + "BBB", + "AAA" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:bookshelf_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 387, + "id" : "minecraft:book", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 47, + "id" : "minecraft:bookshelf", + "blockRuntimeId" : 6545 + } + ], + "shape" : [ + "AAA", + "BBB", + "AAA" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:bow", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 326, + "id" : "minecraft:string", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 300, + "id" : "minecraft:bow" + } + ], + "shape" : [ + " AB", + "A B", + " AB" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:bowl_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "count" : 4 + } + ], + "shape" : [ + "A A", + " A " + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:bowl_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "count" : 4 + } + ], + "shape" : [ + "A A", + " A " + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:bread", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 334, + "id" : "minecraft:wheat", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 261, + "id" : "minecraft:bread" + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:brewing_stand", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 423, + "id" : "minecraft:blaze_rod", + "damage" : 32767 + }, + "B" : { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 431, + "id" : "minecraft:brewing_stand" + } + ], + "shape" : [ + " A ", + "BBB" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:brewing_stand_from_blackstone", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 423, + "id" : "minecraft:blaze_rod", + "damage" : 32767 + }, + "B" : { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 431, + "id" : "minecraft:brewing_stand" + } + ], + "shape" : [ + " A ", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:brewing_stand_from_cobbled_deepslate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 423, + "id" : "minecraft:blaze_rod", + "damage" : 32767 + }, + "B" : { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 431, + "id" : "minecraft:brewing_stand" + } + ], + "shape" : [ + " A ", + "BBB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:brick_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 383, + "id" : "minecraft:brick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 45, + "id" : "minecraft:brick_block", + "blockRuntimeId" : 4721 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:brick_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 45, + "id" : "minecraft:brick_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 108, + "id" : "minecraft:brick_stairs", + "count" : 4, + "blockRuntimeId" : 6421 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:brick_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 45, + "id" : "minecraft:brick_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "count" : 6, + "blockRuntimeId" : 1193 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:brown_banner", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 567, + "id" : "minecraft:banner", + "damage" : 3 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:brown_candle", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye" + } + ], + "output" : [ + { + "legacyId" : -425, + "id" : "minecraft:brown_candle", + "blockRuntimeId" : 5799 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:brown_candle_from_cocoa_beans", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans" + } + ], + "output" : [ + { + "legacyId" : -425, + "id" : "minecraft:brown_candle", + "blockRuntimeId" : 5799 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:brown_carpet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 3, + "blockRuntimeId" : 968 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:brown_carpet_from_white", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 171, + "id" : "minecraft:carpet" + }, + "B" : { + "legacyId" : 398, + "id" : "minecraft:brown_dye" + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 8, + "blockRuntimeId" : 968 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:brown_concrete_powder", + "type" : 0, + "input" : [ + { + "legacyId" : 398, + "id" : "minecraft:brown_dye" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6241 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:brown_concrete_powder_from_cocoa_beans", + "type" : 0, + "input" : [ + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6241 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:brown_dye_from_cocoa_beans", + "type" : 0, + "input" : [ + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans" + } + ], + "output" : [ + { + "legacyId" : 398, + "id" : "minecraft:brown_dye" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:brown_stained_glass", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 398, + "id" : "minecraft:brown_dye" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1152 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:brown_stained_glass_from_cocoa_beans", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1152 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:brown_stained_glass_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "damage" : 12 + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 16, + "blockRuntimeId" : 4820 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:brown_stained_glass_pane_from_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 102, + "id" : "minecraft:glass_pane", + "damage" : 32767 + }, + "B" : { + "legacyId" : 398, + "id" : "minecraft:brown_dye" + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 8, + "blockRuntimeId" : 4820 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:brown_stained_hardened_clay", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 398, + "id" : "minecraft:brown_dye" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6111 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:brown_stained_hardened_clay_from_cocoa_beans", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6111 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:bucket", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 360, + "id" : "minecraft:bucket" + } + ], + "shape" : [ + "A A", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:cake", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 361, + "id" : "minecraft:milk_bucket" + }, + "B" : { + "legacyId" : 416, + "id" : "minecraft:sugar", + "damage" : 32767 + }, + "C" : { + "legacyId" : 390, + "id" : "minecraft:egg", + "damage" : 32767 + }, + "D" : { + "legacyId" : 334, + "id" : "minecraft:wheat", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 417, + "id" : "minecraft:cake" + }, + { + "legacyId" : 360, + "id" : "minecraft:bucket", + "count" : 3 + } + ], + "shape" : [ + "AAA", + "BCB", + "DDD" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:campfire", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "C" : { + "legacyId" : 17, + "id" : "minecraft:log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:campfire_from_charcoal", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 303, + "id" : "minecraft:charcoal", + "damage" : 32767 + }, + "C" : { + "legacyId" : 17, + "id" : "minecraft:log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:campfire_from_charcoal_log2", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 303, + "id" : "minecraft:charcoal", + "damage" : 32767 + }, + "C" : { + "legacyId" : 162, + "id" : "minecraft:log2", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:campfire_from_charcoal_stripped_acacia_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 303, + "id" : "minecraft:charcoal", + "damage" : 32767 + }, + "C" : { + "legacyId" : -8, + "id" : "minecraft:stripped_acacia_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:campfire_from_charcoal_stripped_birch_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 303, + "id" : "minecraft:charcoal", + "damage" : 32767 + }, + "C" : { + "legacyId" : -6, + "id" : "minecraft:stripped_birch_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:campfire_from_charcoal_stripped_dark_oak_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 303, + "id" : "minecraft:charcoal", + "damage" : 32767 + }, + "C" : { + "legacyId" : -9, + "id" : "minecraft:stripped_dark_oak_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:campfire_from_charcoal_stripped_jungle_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 303, + "id" : "minecraft:charcoal", + "damage" : 32767 + }, + "C" : { + "legacyId" : -7, + "id" : "minecraft:stripped_jungle_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:campfire_from_charcoal_stripped_oak_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 303, + "id" : "minecraft:charcoal", + "damage" : 32767 + }, + "C" : { + "legacyId" : -10, + "id" : "minecraft:stripped_oak_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:campfire_from_charcoal_stripped_spruce_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 303, + "id" : "minecraft:charcoal", + "damage" : 32767 + }, + "C" : { + "legacyId" : -5, + "id" : "minecraft:stripped_spruce_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:campfire_from_charcoal_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 303, + "id" : "minecraft:charcoal", + "damage" : 32767 + }, + "C" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:campfire_from_crimson_stem", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "C" : { + "legacyId" : -225, + "id" : "minecraft:crimson_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:campfire_from_log2", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "C" : { + "legacyId" : 162, + "id" : "minecraft:log2", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:campfire_from_stripped_acacia_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "C" : { + "legacyId" : -8, + "id" : "minecraft:stripped_acacia_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:campfire_from_stripped_birch_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "C" : { + "legacyId" : -6, + "id" : "minecraft:stripped_birch_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:campfire_from_stripped_crimson_stem", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "C" : { + "legacyId" : -240, + "id" : "minecraft:stripped_crimson_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:campfire_from_stripped_dark_oak_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "C" : { + "legacyId" : -9, + "id" : "minecraft:stripped_dark_oak_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:campfire_from_stripped_jungle_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "C" : { + "legacyId" : -7, + "id" : "minecraft:stripped_jungle_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:campfire_from_stripped_oak_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "C" : { + "legacyId" : -10, + "id" : "minecraft:stripped_oak_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:campfire_from_stripped_spruce_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "C" : { + "legacyId" : -5, + "id" : "minecraft:stripped_spruce_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:campfire_from_stripped_warped_stem", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "C" : { + "legacyId" : -241, + "id" : "minecraft:stripped_warped_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:campfire_from_warped_stem", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "C" : { + "legacyId" : -226, + "id" : "minecraft:warped_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:campfire_from_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "C" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 589, + "id" : "minecraft:campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:candle", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 326, + "id" : "minecraft:string", + "damage" : 32767 + }, + "B" : { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "blockRuntimeId" : 7345 + } + ], + "shape" : [ + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:carrot_on_a_stick", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 392, + "id" : "minecraft:fishing_rod", + "damage" : 32767 + }, + "B" : { + "legacyId" : 279, + "id" : "minecraft:carrot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 517, + "id" : "minecraft:carrot_on_a_stick" + } + ], + "shape" : [ + "A ", + " B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:cartography_table", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -200, + "id" : "minecraft:cartography_table", + "blockRuntimeId" : 8227 + } + ], + "shape" : [ + "AA", + "BB", + "BB" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:cartography_table_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -200, + "id" : "minecraft:cartography_table", + "blockRuntimeId" : 8227 + } + ], + "shape" : [ + "AA", + "BB", + "BB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:cartography_table_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -200, + "id" : "minecraft:cartography_table", + "blockRuntimeId" : 8227 + } + ], + "shape" : [ + "AA", + "BB", + "BB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:cauldron", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 432, + "id" : "minecraft:cauldron" + } + ], + "shape" : [ + "A A", + "A A", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:chain", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "B" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 619, + "id" : "minecraft:chain" + } + ], + "shape" : [ + "A", + "B", + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:chest_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 54, + "id" : "minecraft:chest", + "blockRuntimeId" : 7057 + } + ], + "shape" : [ + "AAA", + "A A", + "AAA" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:chest_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 54, + "id" : "minecraft:chest", + "blockRuntimeId" : 7057 + } + ], + "shape" : [ + "AAA", + "A A", + "AAA" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:chest_minecart", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 54, + "id" : "minecraft:chest", + "damage" : 32767 + }, + "B" : { + "legacyId" : 370, + "id" : "minecraft:minecart", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 389, + "id" : "minecraft:chest_minecart" + } + ], + "shape" : [ + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:chiseled_deepslate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -380, + "id" : "minecraft:cobbled_deepslate_slab", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -395, + "id" : "minecraft:chiseled_deepslate", + "blockRuntimeId" : 5190 + } + ], + "shape" : [ + "A", + "A" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:chiseled_nether_bricks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "damage" : 7 + } + }, + "output" : [ + { + "legacyId" : -302, + "id" : "minecraft:chiseled_nether_bricks", + "blockRuntimeId" : 7191 + } + ], + "shape" : [ + "A", + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:chiseled_polished_blackstone", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -293, + "id" : "minecraft:polished_blackstone_slab", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -279, + "id" : "minecraft:chiseled_polished_blackstone", + "blockRuntimeId" : 5018 + } + ], + "shape" : [ + "A", + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:clay", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 384, + "id" : "minecraft:clay_ball", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 82, + "id" : "minecraft:clay", + "blockRuntimeId" : 7066 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:clock", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 393, + "id" : "minecraft:clock" + } + ], + "shape" : [ + " A ", + "ABA", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:coal", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 173, + "id" : "minecraft:coal_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 302, + "id" : "minecraft:coal", + "count" : 9 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:coal_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 302, + "id" : "minecraft:coal" + } + }, + "output" : [ + { + "legacyId" : 173, + "id" : "minecraft:coal_block", + "blockRuntimeId" : 5348 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:coarse_dirt", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 3, + "id" : "minecraft:dirt" + }, + "B" : { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 3, + "id" : "minecraft:dirt", + "count" : 4, + "blockRuntimeId" : 5702 + } + ], + "shape" : [ + "AB", + "BA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:cobbled_deepslate_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -380, + "id" : "minecraft:cobbled_deepslate_slab", + "count" : 6, + "blockRuntimeId" : 7252 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:cobbled_deepslate_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -381, + "id" : "minecraft:cobbled_deepslate_stairs", + "count" : 4, + "blockRuntimeId" : 147 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:cobbled_deepslate_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -382, + "id" : "minecraft:cobbled_deepslate_wall", + "count" : 6, + "blockRuntimeId" : 8024 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:cobblestone_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 67, + "id" : "minecraft:stone_stairs", + "count" : 4, + "blockRuntimeId" : 3713 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:cobblestone_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "count" : 6, + "blockRuntimeId" : 1187 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:cobweb_to_string", + "type" : 0, + "input" : [ + { + "legacyId" : 30, + "id" : "minecraft:web", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 326, + "id" : "minecraft:string", + "count" : 9 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:comparator", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 76, + "id" : "minecraft:redstone_torch", + "damage" : 32767 + }, + "B" : { + "legacyId" : 524, + "id" : "minecraft:quartz", + "damage" : 32767 + }, + "C" : { + "legacyId" : 1, + "id" : "minecraft:stone" + } + }, + "output" : [ + { + "legacyId" : 522, + "id" : "minecraft:comparator" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:compass", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 391, + "id" : "minecraft:compass" + } + ], + "shape" : [ + " A ", + "ABA", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:composter", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 158, + "id" : "minecraft:wooden_slab", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -213, + "id" : "minecraft:composter", + "blockRuntimeId" : 5365 + } + ], + "shape" : [ + "A A", + "A A", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:composter_from_crimson_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -264, + "id" : "minecraft:crimson_slab", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -213, + "id" : "minecraft:composter", + "blockRuntimeId" : 5365 + } + ], + "shape" : [ + "A A", + "A A", + "AAA" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:composter_from_warped_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -265, + "id" : "minecraft:warped_slab", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -213, + "id" : "minecraft:composter", + "blockRuntimeId" : 5365 + } + ], + "shape" : [ + "A A", + "A A", + "AAA" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:conduit", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 570, + "id" : "minecraft:nautilus_shell", + "damage" : 32767 + }, + "B" : { + "legacyId" : 571, + "id" : "minecraft:heart_of_the_sea", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -157, + "id" : "minecraft:conduit", + "blockRuntimeId" : 4196 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:cookie", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 334, + "id" : "minecraft:wheat", + "damage" : 32767 + }, + "B" : { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans" + } + }, + "output" : [ + { + "legacyId" : 271, + "id" : "minecraft:cookie", + "count" : 8 + } + ], + "shape" : [ + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:copper_block_from_ingots", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 504, + "id" : "minecraft:copper_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -340, + "id" : "minecraft:copper_block", + "blockRuntimeId" : 4607 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_cut_copper", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -340, + "id" : "minecraft:copper_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -347, + "id" : "minecraft:cut_copper", + "count" : 4, + "blockRuntimeId" : 4645 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_cut_copper_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -347, + "id" : "minecraft:cut_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -361, + "id" : "minecraft:cut_copper_slab", + "count" : 6, + "blockRuntimeId" : 5191 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_cut_copper_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -347, + "id" : "minecraft:cut_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -354, + "id" : "minecraft:cut_copper_stairs", + "count" : 4, + "blockRuntimeId" : 4528 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_exposed_cut_copper", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -341, + "id" : "minecraft:exposed_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -348, + "id" : "minecraft:exposed_cut_copper", + "count" : 4, + "blockRuntimeId" : 6090 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_exposed_cut_copper_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -348, + "id" : "minecraft:exposed_cut_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -362, + "id" : "minecraft:exposed_cut_copper_slab", + "count" : 6, + "blockRuntimeId" : 6491 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_exposed_cut_copper_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -348, + "id" : "minecraft:exposed_cut_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -355, + "id" : "minecraft:exposed_cut_copper_stairs", + "count" : 4, + "blockRuntimeId" : 4519 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 58, + "id" : "minecraft:crafting_table", + "blockRuntimeId" : 5778 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:crafting_table_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 58, + "id" : "minecraft:crafting_table", + "blockRuntimeId" : 5778 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:crafting_table_oxidized_cut_copper", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -343, + "id" : "minecraft:oxidized_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -350, + "id" : "minecraft:oxidized_cut_copper", + "count" : 4, + "blockRuntimeId" : 5428 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_oxidized_cut_copper_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -350, + "id" : "minecraft:oxidized_cut_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -364, + "id" : "minecraft:oxidized_cut_copper_slab", + "count" : 6, + "blockRuntimeId" : 5232 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_oxidized_cut_copper_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -350, + "id" : "minecraft:oxidized_cut_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -357, + "id" : "minecraft:oxidized_cut_copper_stairs", + "count" : 4, + "blockRuntimeId" : 361 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_waxed_cut_copper", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -344, + "id" : "minecraft:waxed_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -351, + "id" : "minecraft:waxed_cut_copper", + "count" : 4, + "blockRuntimeId" : 7235 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_waxed_cut_copper_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -351, + "id" : "minecraft:waxed_cut_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -365, + "id" : "minecraft:waxed_cut_copper_slab", + "count" : 6, + "blockRuntimeId" : 7757 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_waxed_cut_copper_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -351, + "id" : "minecraft:waxed_cut_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -358, + "id" : "minecraft:waxed_cut_copper_stairs", + "count" : 4, + "blockRuntimeId" : 403 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_waxed_exposed_cut_copper", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -345, + "id" : "minecraft:waxed_exposed_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -352, + "id" : "minecraft:waxed_exposed_cut_copper", + "count" : 4, + "blockRuntimeId" : 3814 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_waxed_exposed_cut_copper_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -352, + "id" : "minecraft:waxed_exposed_cut_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -366, + "id" : "minecraft:waxed_exposed_cut_copper_slab", + "count" : 6, + "blockRuntimeId" : 247 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_waxed_exposed_cut_copper_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -352, + "id" : "minecraft:waxed_exposed_cut_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -359, + "id" : "minecraft:waxed_exposed_cut_copper_stairs", + "count" : 4, + "blockRuntimeId" : 3891 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_waxed_oxidized_cut_copper", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -446, + "id" : "minecraft:waxed_oxidized_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -447, + "id" : "minecraft:waxed_oxidized_cut_copper", + "count" : 4, + "blockRuntimeId" : 214 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_waxed_oxidized_cut_copper_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -447, + "id" : "minecraft:waxed_oxidized_cut_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -449, + "id" : "minecraft:waxed_oxidized_cut_copper_slab", + "count" : 6, + "blockRuntimeId" : 716 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_waxed_oxidized_cut_copper_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -447, + "id" : "minecraft:waxed_oxidized_cut_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -448, + "id" : "minecraft:waxed_oxidized_cut_copper_stairs", + "count" : 4, + "blockRuntimeId" : 5764 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_waxed_weathered_cut_copper", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -346, + "id" : "minecraft:waxed_weathered_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -353, + "id" : "minecraft:waxed_weathered_cut_copper", + "count" : 4, + "blockRuntimeId" : 4807 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_waxed_weathered_cut_copper_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -353, + "id" : "minecraft:waxed_weathered_cut_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -367, + "id" : "minecraft:waxed_weathered_cut_copper_slab", + "count" : 6, + "blockRuntimeId" : 6436 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_waxed_weathered_cut_copper_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -353, + "id" : "minecraft:waxed_weathered_cut_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -360, + "id" : "minecraft:waxed_weathered_cut_copper_stairs", + "count" : 4, + "blockRuntimeId" : 6091 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_weathered_cut_copper", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -342, + "id" : "minecraft:weathered_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -349, + "id" : "minecraft:weathered_cut_copper", + "count" : 4, + "blockRuntimeId" : 7139 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_weathered_cut_copper_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -349, + "id" : "minecraft:weathered_cut_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -363, + "id" : "minecraft:weathered_cut_copper_slab", + "count" : 6, + "blockRuntimeId" : 5977 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crafting_table_weathered_cut_copper_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -349, + "id" : "minecraft:weathered_cut_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -356, + "id" : "minecraft:weathered_cut_copper_stairs", + "count" : 4, + "blockRuntimeId" : 4253 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:crimson_button", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -260, + "id" : "minecraft:crimson_button", + "blockRuntimeId" : 4380 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:crimson_door", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 616, + "id" : "minecraft:crimson_door", + "count" : 3 + } + ], + "shape" : [ + "AA", + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:crimson_fence", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -256, + "id" : "minecraft:crimson_fence", + "count" : 3, + "blockRuntimeId" : 7938 + } + ], + "shape" : [ + "ABA", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:crimson_fence_gate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -258, + "id" : "minecraft:crimson_fence_gate", + "blockRuntimeId" : 4617 + } + ], + "shape" : [ + "ABA", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:crimson_hyphae", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -225, + "id" : "minecraft:crimson_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -299, + "id" : "minecraft:crimson_hyphae", + "count" : 3, + "blockRuntimeId" : 4242 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -225, + "id" : "minecraft:crimson_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "count" : 4, + "blockRuntimeId" : 4806 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:crimson_planks_from_crimson_hyphae", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -299, + "id" : "minecraft:crimson_hyphae", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "count" : 4, + "blockRuntimeId" : 4806 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:crimson_planks_from_stripped_crimson_hyphae", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -300, + "id" : "minecraft:stripped_crimson_hyphae", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "count" : 4, + "blockRuntimeId" : 4806 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:crimson_planks_from_stripped_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -240, + "id" : "minecraft:stripped_crimson_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "count" : 4, + "blockRuntimeId" : 4806 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:crimson_pressure_plate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -262, + "id" : "minecraft:crimson_pressure_plate", + "blockRuntimeId" : 8210 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:crimson_sign", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 614, + "id" : "minecraft:crimson_sign", + "count" : 3 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:crimson_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -264, + "id" : "minecraft:crimson_slab", + "count" : 6, + "blockRuntimeId" : 5824 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:crimson_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -254, + "id" : "minecraft:crimson_stairs", + "count" : 4, + "blockRuntimeId" : 6245 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:crimson_trapdoor", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -246, + "id" : "minecraft:crimson_trapdoor", + "count" : 2, + "blockRuntimeId" : 4281 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:crossbow", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "C" : { + "legacyId" : 326, + "id" : "minecraft:string", + "damage" : 32767 + }, + "D" : { + "legacyId" : 131, + "id" : "minecraft:tripwire_hook", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 575, + "id" : "minecraft:crossbow" + } + ], + "shape" : [ + "ABA", + "CDC", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:cyan_banner", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 567, + "id" : "minecraft:banner", + "damage" : 6 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:cyan_candle", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye" + } + ], + "output" : [ + { + "legacyId" : -422, + "id" : "minecraft:cyan_candle", + "blockRuntimeId" : 7668 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:cyan_carpet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 3, + "blockRuntimeId" : 965 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:cyan_carpet_from_white", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 171, + "id" : "minecraft:carpet" + }, + "B" : { + "legacyId" : 401, + "id" : "minecraft:cyan_dye" + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 8, + "blockRuntimeId" : 965 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:cyan_concrete_powder", + "type" : 0, + "input" : [ + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6238 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:cyan_dye", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye" + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye" + } + ], + "output" : [ + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:cyan_dye_from_lapis_lazuli", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli" + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye" + } + ], + "output" : [ + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:cyan_stained_glass", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 401, + "id" : "minecraft:cyan_dye" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1149 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:cyan_stained_glass_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "damage" : 9 + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 16, + "blockRuntimeId" : 4817 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:cyan_stained_glass_pane_from_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 102, + "id" : "minecraft:glass_pane", + "damage" : 32767 + }, + "B" : { + "legacyId" : 401, + "id" : "minecraft:cyan_dye" + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 8, + "blockRuntimeId" : 4817 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:cyan_stained_hardened_clay", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 401, + "id" : "minecraft:cyan_dye" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6108 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dark_oak_boat", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 5 + }, + "B" : { + "legacyId" : 309, + "id" : "minecraft:wooden_shovel", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 380, + "id" : "minecraft:dark_oak_boat" + } + ], + "shape" : [ + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dark_oak_door", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 5 + } + }, + "output" : [ + { + "legacyId" : 557, + "id" : "minecraft:dark_oak_door", + "count" : 3 + } + ], + "shape" : [ + "AA", + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dark_oak_fence", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 5 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 85, + "id" : "minecraft:fence", + "count" : 3, + "blockRuntimeId" : 7311 + } + ], + "shape" : [ + "ABA", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dark_oak_fence_gate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 5 + } + }, + "output" : [ + { + "legacyId" : 186, + "id" : "minecraft:dark_oak_fence_gate", + "blockRuntimeId" : 4156 + } + ], + "shape" : [ + "ABA", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dark_oak_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 162, + "id" : "minecraft:log2", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 6000 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dark_oak_planks_from_stripped", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -9, + "id" : "minecraft:stripped_dark_oak_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 6000 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dark_oak_planks_from_stripped_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 13 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 6000 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dark_oak_planks_from_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 5 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 6000 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dark_oak_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 5 + } + }, + "output" : [ + { + "legacyId" : 164, + "id" : "minecraft:dark_oak_stairs", + "count" : 4, + "blockRuntimeId" : 5019 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dark_oak_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 162, + "id" : "minecraft:log2", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : -212, + "id" : "minecraft:wood", + "count" : 3, + "blockRuntimeId" : 3484 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dark_oak_wood_stripped", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -9, + "id" : "minecraft:stripped_dark_oak_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -212, + "id" : "minecraft:wood", + "count" : 3, + "blockRuntimeId" : 3490 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dark_oak_wooden_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 5 + } + }, + "output" : [ + { + "legacyId" : 158, + "id" : "minecraft:wooden_slab", + "count" : 6, + "blockRuntimeId" : 5225 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dark_prismarine", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 565, + "id" : "minecraft:prismarine_shard", + "damage" : 32767 + }, + "B" : { + "legacyId" : 395, + "id" : "minecraft:black_dye" + } + }, + "output" : [ + { + "legacyId" : 168, + "id" : "minecraft:prismarine", + "blockRuntimeId" : 6010 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dark_prismarine_from_ink_sac", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 565, + "id" : "minecraft:prismarine_shard", + "damage" : 32767 + }, + "B" : { + "legacyId" : 413, + "id" : "minecraft:ink_sac" + } + }, + "output" : [ + { + "legacyId" : 168, + "id" : "minecraft:prismarine", + "blockRuntimeId" : 6010 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:daylight_detector_from_crimson_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 524, + "id" : "minecraft:quartz", + "damage" : 32767 + }, + "C" : { + "legacyId" : -264, + "id" : "minecraft:crimson_slab", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 151, + "id" : "minecraft:daylight_detector", + "blockRuntimeId" : 4180 + } + ], + "shape" : [ + "AAA", + "BBB", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:daylight_detector_from_warped_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 524, + "id" : "minecraft:quartz", + "damage" : 32767 + }, + "C" : { + "legacyId" : -265, + "id" : "minecraft:warped_slab", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 151, + "id" : "minecraft:daylight_detector", + "blockRuntimeId" : 4180 + } + ], + "shape" : [ + "AAA", + "BBB", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:deepslate_brick_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -391, + "id" : "minecraft:deepslate_bricks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -392, + "id" : "minecraft:deepslate_brick_slab", + "count" : 6, + "blockRuntimeId" : 3721 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:deepslate_brick_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -391, + "id" : "minecraft:deepslate_bricks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -393, + "id" : "minecraft:deepslate_brick_stairs", + "count" : 4, + "blockRuntimeId" : 7364 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:deepslate_brick_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -391, + "id" : "minecraft:deepslate_bricks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -394, + "id" : "minecraft:deepslate_brick_wall", + "count" : 6, + "blockRuntimeId" : 437 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:deepslate_bricks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -383, + "id" : "minecraft:polished_deepslate", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -391, + "id" : "minecraft:deepslate_bricks", + "count" : 4, + "blockRuntimeId" : 5414 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:deepslate_tile_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -387, + "id" : "minecraft:deepslate_tiles", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -388, + "id" : "minecraft:deepslate_tile_slab", + "count" : 6, + "blockRuntimeId" : 4239 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:deepslate_tile_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -387, + "id" : "minecraft:deepslate_tiles", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -389, + "id" : "minecraft:deepslate_tile_stairs", + "count" : 4, + "blockRuntimeId" : 4609 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:deepslate_tile_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -387, + "id" : "minecraft:deepslate_tiles", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -390, + "id" : "minecraft:deepslate_tile_wall", + "count" : 6, + "blockRuntimeId" : 5027 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:deepslate_tiles", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -391, + "id" : "minecraft:deepslate_bricks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -387, + "id" : "minecraft:deepslate_tiles", + "count" : 4, + "blockRuntimeId" : 4513 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:detector_rail", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 70, + "id" : "minecraft:stone_pressure_plate", + "damage" : 32767 + }, + "C" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 28, + "id" : "minecraft:detector_rail", + "count" : 6, + "blockRuntimeId" : 4121 + } + ], + "shape" : [ + "A A", + "ABA", + "ACA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:diamond", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 57, + "id" : "minecraft:diamond_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 304, + "id" : "minecraft:diamond", + "count" : 9 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:diamond_axe", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 304, + "id" : "minecraft:diamond", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 319, + "id" : "minecraft:diamond_axe" + } + ], + "shape" : [ + "AA", + "AB", + " B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:diamond_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 304, + "id" : "minecraft:diamond", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 57, + "id" : "minecraft:diamond_block", + "blockRuntimeId" : 286 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:diamond_boots", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 304, + "id" : "minecraft:diamond", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 350, + "id" : "minecraft:diamond_boots" + } + ], + "shape" : [ + "A A", + "A A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:diamond_chestplate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 304, + "id" : "minecraft:diamond", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 348, + "id" : "minecraft:diamond_chestplate" + } + ], + "shape" : [ + "A A", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:diamond_helmet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 304, + "id" : "minecraft:diamond", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 347, + "id" : "minecraft:diamond_helmet" + } + ], + "shape" : [ + "AAA", + "A A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:diamond_hoe", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 304, + "id" : "minecraft:diamond", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 332, + "id" : "minecraft:diamond_hoe" + } + ], + "shape" : [ + "AA", + " B", + " B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:diamond_leggings", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 304, + "id" : "minecraft:diamond", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 349, + "id" : "minecraft:diamond_leggings" + } + ], + "shape" : [ + "AAA", + "A A", + "A A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:diamond_pickaxe", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 304, + "id" : "minecraft:diamond", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 318, + "id" : "minecraft:diamond_pickaxe" + } + ], + "shape" : [ + "AAA", + " B ", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:diamond_shovel", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 304, + "id" : "minecraft:diamond", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 317, + "id" : "minecraft:diamond_shovel" + } + ], + "shape" : [ + "A", + "B", + "B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:diamond_sword", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 304, + "id" : "minecraft:diamond", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 316, + "id" : "minecraft:diamond_sword" + } + ], + "shape" : [ + "A", + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:diorite", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : 32767 + }, + "B" : { + "legacyId" : 524, + "id" : "minecraft:quartz", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "count" : 2, + "blockRuntimeId" : 664 + } + ], + "shape" : [ + "AB", + "BA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:diorite_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : -170, + "id" : "minecraft:diorite_stairs", + "count" : 4, + "blockRuntimeId" : 4339 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:diorite_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "count" : 6, + "blockRuntimeId" : 1190 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dispenser", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : 32767 + }, + "B" : { + "legacyId" : 300, + "id" : "minecraft:bow", + "damage" : 32767 + }, + "C" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 23, + "id" : "minecraft:dispenser", + "blockRuntimeId" : 7955 + } + ], + "shape" : [ + "AAA", + "ABA", + "ACA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dried_kelp", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -139, + "id" : "minecraft:dried_kelp_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 270, + "id" : "minecraft:dried_kelp", + "count" : 9 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dried_kelp_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 270, + "id" : "minecraft:dried_kelp", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -139, + "id" : "minecraft:dried_kelp_block", + "blockRuntimeId" : 7921 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dripstone_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -308, + "id" : "minecraft:pointed_dripstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -317, + "id" : "minecraft:dripstone_block", + "blockRuntimeId" : 901 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dripstone_block_from_pointed_dripstone", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -308, + "id" : "minecraft:pointed_dripstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -317, + "id" : "minecraft:dripstone_block", + "blockRuntimeId" : 901 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:dropper", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : 32767 + }, + "B" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 125, + "id" : "minecraft:dropper", + "blockRuntimeId" : 7327 + } + ], + "shape" : [ + "AAA", + "A A", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:emerald", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 133, + "id" : "minecraft:emerald_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 512, + "id" : "minecraft:emerald", + "count" : 9 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:emerald_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 512, + "id" : "minecraft:emerald", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 133, + "id" : "minecraft:emerald_block", + "blockRuntimeId" : 1164 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:empty_map_to_enhanced", + "type" : 0, + "input" : [ + { + "legacyId" : 515, + "id" : "minecraft:empty_map" + }, + { + "legacyId" : 391, + "id" : "minecraft:compass", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 515, + "id" : "minecraft:empty_map", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:enchanting_table", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 387, + "id" : "minecraft:book", + "damage" : 32767 + }, + "B" : { + "legacyId" : 304, + "id" : "minecraft:diamond", + "damage" : 32767 + }, + "C" : { + "legacyId" : 49, + "id" : "minecraft:obsidian", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 116, + "id" : "minecraft:enchanting_table", + "blockRuntimeId" : 6597 + } + ], + "shape" : [ + " A ", + "BCB", + "CCC" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:end_brick_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 206, + "id" : "minecraft:end_bricks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -178, + "id" : "minecraft:end_brick_stairs", + "count" : 4, + "blockRuntimeId" : 6347 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:end_brick_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 206, + "id" : "minecraft:end_bricks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "count" : 6, + "blockRuntimeId" : 1197 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:end_bricks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 121, + "id" : "minecraft:end_stone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 206, + "id" : "minecraft:end_bricks", + "count" : 4, + "blockRuntimeId" : 295 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:end_crystal", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 433, + "id" : "minecraft:ender_eye", + "damage" : 32767 + }, + "C" : { + "legacyId" : 424, + "id" : "minecraft:ghast_tear", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 644, + "id" : "minecraft:end_crystal" + } + ], + "shape" : [ + "AAA", + "ABA", + "ACA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:end_rod", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 423, + "id" : "minecraft:blaze_rod", + "damage" : 32767 + }, + "B" : { + "legacyId" : 559, + "id" : "minecraft:popped_chorus_fruit", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 208, + "id" : "minecraft:end_rod", + "count" : 4, + "blockRuntimeId" : 5815 + } + ], + "shape" : [ + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:ender_chest", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 49, + "id" : "minecraft:obsidian", + "damage" : 32767 + }, + "B" : { + "legacyId" : 433, + "id" : "minecraft:ender_eye", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 130, + "id" : "minecraft:ender_chest", + "blockRuntimeId" : 4317 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:ender_eye", + "type" : 0, + "input" : [ + { + "legacyId" : 422, + "id" : "minecraft:ender_pearl", + "damage" : 32767 + }, + { + "legacyId" : 429, + "id" : "minecraft:blaze_powder", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 433, + "id" : "minecraft:ender_eye" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:fence", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks" + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 85, + "id" : "minecraft:fence", + "count" : 3, + "blockRuntimeId" : 7306 + } + ], + "shape" : [ + "ABA", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:fence_gate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks" + } + }, + "output" : [ + { + "legacyId" : 107, + "id" : "minecraft:fence_gate", + "blockRuntimeId" : 76 + } + ], + "shape" : [ + "ABA", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:fermented_spider_eye", + "type" : 0, + "input" : [ + { + "legacyId" : 278, + "id" : "minecraft:spider_eye", + "damage" : 32767 + }, + { + "legacyId" : 39, + "id" : "minecraft:brown_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 416, + "id" : "minecraft:sugar", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 428, + "id" : "minecraft:fermented_spider_eye" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:fishing_rod", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 326, + "id" : "minecraft:string", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 392, + "id" : "minecraft:fishing_rod" + } + ], + "shape" : [ + " A", + " AB", + "A B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:fletching_table", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 356, + "id" : "minecraft:flint", + "damage" : 32767 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -201, + "id" : "minecraft:fletching_table", + "blockRuntimeId" : 5757 + } + ], + "shape" : [ + "AA", + "BB", + "BB" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:fletching_table_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 356, + "id" : "minecraft:flint", + "damage" : 32767 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -201, + "id" : "minecraft:fletching_table", + "blockRuntimeId" : 5757 + } + ], + "shape" : [ + "AA", + "BB", + "BB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:fletching_table_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 356, + "id" : "minecraft:flint", + "damage" : 32767 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -201, + "id" : "minecraft:fletching_table", + "blockRuntimeId" : 5757 + } + ], + "shape" : [ + "AA", + "BB", + "BB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:flint_and_steel", + "type" : 0, + "input" : [ + { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + { + "legacyId" : 356, + "id" : "minecraft:flint", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 299, + "id" : "minecraft:flint_and_steel" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:flower_pot", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 383, + "id" : "minecraft:brick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 514, + "id" : "minecraft:flower_pot" + } + ], + "shape" : [ + "A A", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:furnace", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 61, + "id" : "minecraft:furnace", + "blockRuntimeId" : 7744 + } + ], + "shape" : [ + "AAA", + "A A", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:furnace_from_blackstone", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 61, + "id" : "minecraft:furnace", + "blockRuntimeId" : 7744 + } + ], + "shape" : [ + "AAA", + "A A", + "AAA" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:furnace_from_cobbled_deepslate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 61, + "id" : "minecraft:furnace", + "blockRuntimeId" : 7744 + } + ], + "shape" : [ + "AAA", + "A A", + "AAA" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:glass_bottle", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 427, + "id" : "minecraft:glass_bottle", + "count" : 3 + } + ], + "shape" : [ + "A A", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:glass_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 102, + "id" : "minecraft:glass_pane", + "count" : 16, + "blockRuntimeId" : 5189 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:glow_frame", + "type" : 0, + "input" : [ + { + "legacyId" : 513, + "id" : "minecraft:frame", + "damage" : 32767 + }, + { + "legacyId" : 503, + "id" : "minecraft:glow_ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 623, + "id" : "minecraft:glow_frame" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:glowstone", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 394, + "id" : "minecraft:glowstone_dust", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 89, + "id" : "minecraft:glowstone", + "blockRuntimeId" : 3874 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:gold_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 41, + "id" : "minecraft:gold_block", + "blockRuntimeId" : 305 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:gold_ingot_from_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 41, + "id" : "minecraft:gold_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "count" : 9 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:gold_ingot_from_nuggets", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 306, + "id" : "minecraft:gold_ingot" + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:gold_nugget", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "count" : 9 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:golden_apple", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 257, + "id" : "minecraft:apple", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 258, + "id" : "minecraft:golden_apple" + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:golden_axe", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 325, + "id" : "minecraft:golden_axe" + } + ], + "shape" : [ + "AA", + "AB", + " B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:golden_boots", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 354, + "id" : "minecraft:golden_boots" + } + ], + "shape" : [ + "A A", + "A A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:golden_carrot", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "B" : { + "legacyId" : 279, + "id" : "minecraft:carrot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 283, + "id" : "minecraft:golden_carrot" + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:golden_chestplate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 352, + "id" : "minecraft:golden_chestplate" + } + ], + "shape" : [ + "A A", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:golden_helmet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 351, + "id" : "minecraft:golden_helmet" + } + ], + "shape" : [ + "AAA", + "A A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:golden_hoe", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 333, + "id" : "minecraft:golden_hoe" + } + ], + "shape" : [ + "AA", + " B", + " B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:golden_leggings", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 353, + "id" : "minecraft:golden_leggings" + } + ], + "shape" : [ + "AAA", + "A A", + "A A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:golden_pickaxe", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 324, + "id" : "minecraft:golden_pickaxe" + } + ], + "shape" : [ + "AAA", + " B ", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:golden_rail", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "C" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 27, + "id" : "minecraft:golden_rail", + "count" : 6, + "blockRuntimeId" : 5282 + } + ], + "shape" : [ + "A A", + "ABA", + "ACA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:golden_shovel", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 323, + "id" : "minecraft:golden_shovel" + } + ], + "shape" : [ + "A", + "B", + "B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:golden_sword", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 322, + "id" : "minecraft:golden_sword" + } + ], + "shape" : [ + "A", + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:granite", + "type" : 0, + "input" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 3 + }, + { + "legacyId" : 524, + "id" : "minecraft:quartz", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "blockRuntimeId" : 662 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:granite_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : -169, + "id" : "minecraft:granite_stairs", + "count" : 4, + "blockRuntimeId" : 3542 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:granite_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "count" : 6, + "blockRuntimeId" : 1189 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:gray_banner", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 567, + "id" : "minecraft:banner", + "damage" : 8 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:gray_candle", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye" + } + ], + "output" : [ + { + "legacyId" : -420, + "id" : "minecraft:gray_candle", + "blockRuntimeId" : 947 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:gray_carpet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 3, + "blockRuntimeId" : 963 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:gray_carpet_from_white", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 171, + "id" : "minecraft:carpet" + }, + "B" : { + "legacyId" : 403, + "id" : "minecraft:gray_dye" + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 8, + "blockRuntimeId" : 963 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:gray_concrete_powder", + "type" : 0, + "input" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6236 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:gray_dye", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye" + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye" + } + ], + "output" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:gray_dye_from_black_bonemeal", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye" + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal" + } + ], + "output" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:gray_dye_from_ink_bonemeal", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac" + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal" + } + ], + "output" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 3 + }, + { + "id" : "minecraft:gray_dye_from_ink_white", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac" + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye" + } + ], + "output" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:gray_stained_glass", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 403, + "id" : "minecraft:gray_dye" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1147 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:gray_stained_glass_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "damage" : 7 + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 16, + "blockRuntimeId" : 4815 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:gray_stained_glass_pane_from_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 102, + "id" : "minecraft:glass_pane", + "damage" : 32767 + }, + "B" : { + "legacyId" : 403, + "id" : "minecraft:gray_dye" + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 8, + "blockRuntimeId" : 4815 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:gray_stained_hardened_clay", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 403, + "id" : "minecraft:gray_dye" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6106 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:green_banner", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 567, + "id" : "minecraft:banner", + "damage" : 2 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:green_candle", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye" + } + ], + "output" : [ + { + "legacyId" : -426, + "id" : "minecraft:green_candle", + "blockRuntimeId" : 694 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:green_carpet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 3, + "blockRuntimeId" : 969 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:green_carpet_from_white", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 171, + "id" : "minecraft:carpet" + }, + "B" : { + "legacyId" : 397, + "id" : "minecraft:green_dye" + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 8, + "blockRuntimeId" : 969 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:green_concrete_powder", + "type" : 0, + "input" : [ + { + "legacyId" : 397, + "id" : "minecraft:green_dye" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6242 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:green_stained_glass", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 397, + "id" : "minecraft:green_dye" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1153 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:green_stained_glass_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "damage" : 13 + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 16, + "blockRuntimeId" : 4821 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:green_stained_glass_pane_from_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 102, + "id" : "minecraft:glass_pane", + "damage" : 32767 + }, + "B" : { + "legacyId" : 397, + "id" : "minecraft:green_dye" + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 8, + "blockRuntimeId" : 4821 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:green_stained_hardened_clay", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 397, + "id" : "minecraft:green_dye" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6112 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:grindstone", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -166, + "id" : "minecraft:double_stone_slab4", + "damage" : 2 + }, + "C" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -195, + "id" : "minecraft:grindstone", + "blockRuntimeId" : 7981 + } + ], + "shape" : [ + "ABA", + "C C" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:grindstone_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "damage" : 32767 + }, + "C" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -195, + "id" : "minecraft:grindstone", + "blockRuntimeId" : 7981 + } + ], + "shape" : [ + "ABA", + "C C" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:grindstone_from_crimson_planks2", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "damage" : 32767 + }, + "C" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -195, + "id" : "minecraft:grindstone", + "blockRuntimeId" : 7981 + } + ], + "shape" : [ + "ABA", + "C C" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:grindstone_from_crimson_planks3", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "damage" : 32767 + }, + "C" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -195, + "id" : "minecraft:grindstone", + "blockRuntimeId" : 7981 + } + ], + "shape" : [ + "ABA", + "C C" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:grindstone_from_crimson_planks4", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -166, + "id" : "minecraft:double_stone_slab4", + "damage" : 32767 + }, + "C" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -195, + "id" : "minecraft:grindstone", + "blockRuntimeId" : 7981 + } + ], + "shape" : [ + "ABA", + "C C" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:grindstone_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "damage" : 32767 + }, + "C" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -195, + "id" : "minecraft:grindstone", + "blockRuntimeId" : 7981 + } + ], + "shape" : [ + "ABA", + "C C" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:grindstone_from_warped_planks2", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "damage" : 32767 + }, + "C" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -195, + "id" : "minecraft:grindstone", + "blockRuntimeId" : 7981 + } + ], + "shape" : [ + "ABA", + "C C" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:grindstone_from_warped_planks3", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "damage" : 32767 + }, + "C" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -195, + "id" : "minecraft:grindstone", + "blockRuntimeId" : 7981 + } + ], + "shape" : [ + "ABA", + "C C" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:grindstone_from_warped_planks4", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -166, + "id" : "minecraft:double_stone_slab4", + "damage" : 32767 + }, + "C" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -195, + "id" : "minecraft:grindstone", + "blockRuntimeId" : 7981 + } + ], + "shape" : [ + "ABA", + "C C" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:hay_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 334, + "id" : "minecraft:wheat", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 170, + "id" : "minecraft:hay_block", + "blockRuntimeId" : 703 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:heavy_weighted_pressure_plate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 148, + "id" : "minecraft:heavy_weighted_pressure_plate", + "blockRuntimeId" : 1165 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:honey_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 592, + "id" : "minecraft:honey_bottle", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -220, + "id" : "minecraft:honey_block", + "blockRuntimeId" : 900 + }, + { + "legacyId" : 427, + "id" : "minecraft:glass_bottle", + "count" : 4 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:honey_bottle", + "type" : 0, + "input" : [ + { + "legacyId" : -220, + "id" : "minecraft:honey_block", + "damage" : 32767 + }, + { + "legacyId" : 427, + "id" : "minecraft:glass_bottle", + "damage" : 32767 + }, + { + "legacyId" : 427, + "id" : "minecraft:glass_bottle", + "damage" : 32767 + }, + { + "legacyId" : 427, + "id" : "minecraft:glass_bottle", + "damage" : 32767 + }, + { + "legacyId" : 427, + "id" : "minecraft:glass_bottle", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 592, + "id" : "minecraft:honey_bottle", + "count" : 4 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:honey_bottle_to_sugar", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 592, + "id" : "minecraft:honey_bottle", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 416, + "id" : "minecraft:sugar", + "count" : 3 + }, + { + "legacyId" : 427, + "id" : "minecraft:glass_bottle" + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:honeycomb_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -221, + "id" : "minecraft:honeycomb_block", + "blockRuntimeId" : 4424 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:hopper", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 54, + "id" : "minecraft:chest", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 527, + "id" : "minecraft:hopper" + } + ], + "shape" : [ + "A A", + "ABA", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:hopper_minecart", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 527, + "id" : "minecraft:hopper", + "damage" : 32767 + }, + "B" : { + "legacyId" : 370, + "id" : "minecraft:minecart", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 526, + "id" : "minecraft:hopper_minecart" + } + ], + "shape" : [ + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:ingots_from_copper", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -340, + "id" : "minecraft:copper_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 504, + "id" : "minecraft:copper_ingot", + "count" : 9 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:ingots_from_waxed_copper", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -344, + "id" : "minecraft:waxed_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 504, + "id" : "minecraft:copper_ingot", + "count" : 9 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:iron_axe", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 298, + "id" : "minecraft:iron_axe" + } + ], + "shape" : [ + "AA", + "AB", + " B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:iron_bars", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 101, + "id" : "minecraft:iron_bars", + "count" : 16, + "blockRuntimeId" : 4757 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:iron_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 42, + "id" : "minecraft:iron_block", + "blockRuntimeId" : 8203 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:iron_boots", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 346, + "id" : "minecraft:iron_boots" + } + ], + "shape" : [ + "A A", + "A A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:iron_chestplate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 344, + "id" : "minecraft:iron_chestplate" + } + ], + "shape" : [ + "A A", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:iron_door", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 372, + "id" : "minecraft:iron_door", + "count" : 3 + } + ], + "shape" : [ + "AA", + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:iron_helmet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 343, + "id" : "minecraft:iron_helmet" + } + ], + "shape" : [ + "AAA", + "A A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:iron_hoe", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 331, + "id" : "minecraft:iron_hoe" + } + ], + "shape" : [ + "AA", + " B", + " B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:iron_ingot_from_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 42, + "id" : "minecraft:iron_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "count" : 9 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:iron_ingot_from_nuggets", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 305, + "id" : "minecraft:iron_ingot" + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:iron_leggings", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 345, + "id" : "minecraft:iron_leggings" + } + ], + "shape" : [ + "AAA", + "A A", + "A A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:iron_nugget", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "count" : 9 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:iron_pickaxe", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 297, + "id" : "minecraft:iron_pickaxe" + } + ], + "shape" : [ + "AAA", + " B ", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:iron_shovel", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 296, + "id" : "minecraft:iron_shovel" + } + ], + "shape" : [ + "A", + "B", + "B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:iron_sword", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 307, + "id" : "minecraft:iron_sword" + } + ], + "shape" : [ + "A", + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:iron_trapdoor", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 167, + "id" : "minecraft:iron_trapdoor", + "blockRuntimeId" : 335 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:item_frame", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 381, + "id" : "minecraft:leather", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 513, + "id" : "minecraft:frame" + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:jukebox_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 304, + "id" : "minecraft:diamond", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 84, + "id" : "minecraft:jukebox", + "blockRuntimeId" : 4830 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:jukebox_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 304, + "id" : "minecraft:diamond", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 84, + "id" : "minecraft:jukebox", + "blockRuntimeId" : 4830 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:jungle_boat", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 3 + }, + "B" : { + "legacyId" : 309, + "id" : "minecraft:wooden_shovel", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 377, + "id" : "minecraft:jungle_boat" + } + ], + "shape" : [ + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:jungle_door", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : 555, + "id" : "minecraft:jungle_door", + "count" : 3 + } + ], + "shape" : [ + "AA", + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:jungle_fence", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 3 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 85, + "id" : "minecraft:fence", + "count" : 3, + "blockRuntimeId" : 7309 + } + ], + "shape" : [ + "ABA", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:jungle_fence_gate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : 185, + "id" : "minecraft:jungle_fence_gate", + "blockRuntimeId" : 5315 + } + ], + "shape" : [ + "ABA", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:jungle_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 17, + "id" : "minecraft:log", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5998 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:jungle_planks_from_stripped", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -7, + "id" : "minecraft:stripped_jungle_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5998 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:jungle_planks_from_stripped_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 11 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5998 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:jungle_planks_from_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5998 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:jungle_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : 136, + "id" : "minecraft:jungle_stairs", + "count" : 4, + "blockRuntimeId" : 6883 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:jungle_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 17, + "id" : "minecraft:log", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : -212, + "id" : "minecraft:wood", + "count" : 3, + "blockRuntimeId" : 3482 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:jungle_wood_stripped", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -7, + "id" : "minecraft:stripped_jungle_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -212, + "id" : "minecraft:wood", + "count" : 3, + "blockRuntimeId" : 3488 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:jungle_wooden_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : 158, + "id" : "minecraft:wooden_slab", + "count" : 6, + "blockRuntimeId" : 5223 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:ladder", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 65, + "id" : "minecraft:ladder", + "count" : 3, + "blockRuntimeId" : 8204 + } + ], + "shape" : [ + "A A", + "AAA", + "A A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:lantern", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "B" : { + "legacyId" : 50, + "id" : "minecraft:torch", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -208, + "id" : "minecraft:lantern", + "blockRuntimeId" : 7016 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:lapis_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli" + } + }, + "output" : [ + { + "legacyId" : 22, + "id" : "minecraft:lapis_block", + "blockRuntimeId" : 4234 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:lapis_lazuli", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 22, + "id" : "minecraft:lapis_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "count" : 9 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:lead", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 326, + "id" : "minecraft:string", + "damage" : 32767 + }, + "B" : { + "legacyId" : 388, + "id" : "minecraft:slime_ball", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 547, + "id" : "minecraft:lead", + "count" : 2 + } + ], + "shape" : [ + "AA ", + "AB ", + " A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:leather", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 529, + "id" : "minecraft:rabbit_hide", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 381, + "id" : "minecraft:leather" + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:leather_boots", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 381, + "id" : "minecraft:leather", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 338, + "id" : "minecraft:leather_boots" + } + ], + "shape" : [ + "A A", + "A A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:leather_chestplate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 381, + "id" : "minecraft:leather", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 336, + "id" : "minecraft:leather_chestplate" + } + ], + "shape" : [ + "A A", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:leather_helmet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 381, + "id" : "minecraft:leather", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 335, + "id" : "minecraft:leather_helmet" + } + ], + "shape" : [ + "AAA", + "A A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:leather_horse_armor", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 381, + "id" : "minecraft:leather", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 530, + "id" : "minecraft:leather_horse_armor" + } + ], + "shape" : [ + "A A", + "AAA", + "A A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:leather_leggings", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 381, + "id" : "minecraft:leather", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 337, + "id" : "minecraft:leather_leggings" + } + ], + "shape" : [ + "AAA", + "A A", + "A A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:lectern", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 158, + "id" : "minecraft:wooden_slab", + "damage" : 32767 + }, + "B" : { + "legacyId" : 47, + "id" : "minecraft:bookshelf", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -194, + "id" : "minecraft:lectern", + "blockRuntimeId" : 6856 + } + ], + "shape" : [ + "AAA", + " B ", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:lectern_from_crimson_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -264, + "id" : "minecraft:crimson_slab", + "damage" : 32767 + }, + "B" : { + "legacyId" : 47, + "id" : "minecraft:bookshelf", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -194, + "id" : "minecraft:lectern", + "blockRuntimeId" : 6856 + } + ], + "shape" : [ + "AAA", + " B ", + " A " + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:lectern_from_warped_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -265, + "id" : "minecraft:warped_slab", + "damage" : 32767 + }, + "B" : { + "legacyId" : 47, + "id" : "minecraft:bookshelf", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -194, + "id" : "minecraft:lectern", + "blockRuntimeId" : 6856 + } + ], + "shape" : [ + "AAA", + " B ", + " A " + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:lever", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 69, + "id" : "minecraft:lever", + "blockRuntimeId" : 6405 + } + ], + "shape" : [ + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_blue_banner", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 567, + "id" : "minecraft:banner", + "damage" : 12 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_blue_candle", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye" + } + ], + "output" : [ + { + "legacyId" : -416, + "id" : "minecraft:light_blue_candle", + "blockRuntimeId" : 4501 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_blue_carpet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 3, + "blockRuntimeId" : 959 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_blue_carpet_from_white", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 171, + "id" : "minecraft:carpet" + }, + "B" : { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye" + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 8, + "blockRuntimeId" : 959 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_blue_concrete_powder", + "type" : 0, + "input" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6232 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_blue_dye", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye" + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye" + } + ], + "output" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:light_blue_dye_from_blue_bonemeal", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye" + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal" + } + ], + "output" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:light_blue_dye_from_blue_orchid", + "type" : 0, + "input" : [ + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_blue_dye_from_lapis_bonemeal", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli" + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal" + } + ], + "output" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 4 + }, + { + "id" : "minecraft:light_blue_dye_from_lapis_white", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli" + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye" + } + ], + "output" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 3 + }, + { + "id" : "minecraft:light_blue_stained_glass", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1143 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_blue_stained_glass_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 16, + "blockRuntimeId" : 4811 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_blue_stained_glass_pane_from_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 102, + "id" : "minecraft:glass_pane", + "damage" : 32767 + }, + "B" : { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye" + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 8, + "blockRuntimeId" : 4811 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_blue_stained_hardened_clay", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6102 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_gray__carpet_from_white", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 171, + "id" : "minecraft:carpet" + }, + "B" : { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye" + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 8, + "blockRuntimeId" : 964 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_gray_banner", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 567, + "id" : "minecraft:banner", + "damage" : 7 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_gray_candle", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye" + } + ], + "output" : [ + { + "legacyId" : -421, + "id" : "minecraft:light_gray_candle", + "blockRuntimeId" : 6147 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_gray_carpet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 3, + "blockRuntimeId" : 964 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_gray_concrete_powder", + "type" : 0, + "input" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6237 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_gray_dye", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye" + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye" + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye" + } + ], + "output" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "count" : 3 + } + ], + "block" : "crafting_table", + "priority" : 3 + }, + { + "id" : "minecraft:light_gray_dye_from_azure_bluet", + "type" : 0, + "input" : [ + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye" + } + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:light_gray_dye_from_black_bonemeal", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye" + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal" + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal" + } + ], + "output" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "count" : 3 + } + ], + "block" : "crafting_table", + "priority" : 7 + }, + { + "id" : "minecraft:light_gray_dye_from_gray_bonemeal", + "type" : 0, + "input" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye" + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal" + } + ], + "output" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 6 + }, + { + "id" : "minecraft:light_gray_dye_from_gray_white", + "type" : 0, + "input" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye" + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye" + } + ], + "output" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 4 + }, + { + "id" : "minecraft:light_gray_dye_from_ink_bonemeal", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac" + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal" + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal" + } + ], + "output" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "count" : 3 + } + ], + "block" : "crafting_table", + "priority" : 8 + }, + { + "id" : "minecraft:light_gray_dye_from_ink_white", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac" + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye" + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye" + } + ], + "output" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "count" : 3 + } + ], + "block" : "crafting_table", + "priority" : 5 + }, + { + "id" : "minecraft:light_gray_dye_from_oxeye_daisy", + "type" : 0, + "input" : [ + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye" + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:light_gray_dye_from_white_tulip", + "type" : 0, + "input" : [ + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_gray_stained_glass", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1148 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_gray_stained_glass_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "damage" : 8 + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 16, + "blockRuntimeId" : 4816 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_gray_stained_glass_pane_from_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 102, + "id" : "minecraft:glass_pane", + "damage" : 32767 + }, + "B" : { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye" + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 8, + "blockRuntimeId" : 4816 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_gray_stained_hardened_clay", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6107 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:light_weighted_pressure_plate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 147, + "id" : "minecraft:light_weighted_pressure_plate", + "blockRuntimeId" : 3670 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:lightning_rod", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 504, + "id" : "minecraft:copper_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -312, + "id" : "minecraft:lightning_rod", + "blockRuntimeId" : 1181 + } + ], + "shape" : [ + "A", + "A", + "A" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:lime__carpet_from_white", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 171, + "id" : "minecraft:carpet" + }, + "B" : { + "legacyId" : 405, + "id" : "minecraft:lime_dye" + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 8, + "blockRuntimeId" : 961 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:lime_banner", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 567, + "id" : "minecraft:banner", + "damage" : 10 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:lime_candle", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye" + } + ], + "output" : [ + { + "legacyId" : -418, + "id" : "minecraft:lime_candle", + "blockRuntimeId" : 6333 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:lime_carpet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 3, + "blockRuntimeId" : 961 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:lime_concrete_powder", + "type" : 0, + "input" : [ + { + "legacyId" : 405, + "id" : "minecraft:lime_dye" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6234 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:lime_dye", + "type" : 0, + "input" : [ + { + "legacyId" : 397, + "id" : "minecraft:green_dye" + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye" + } + ], + "output" : [ + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:lime_dye_from_bonemeal", + "type" : 0, + "input" : [ + { + "legacyId" : 397, + "id" : "minecraft:green_dye" + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal" + } + ], + "output" : [ + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:lime_stained_glass", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 405, + "id" : "minecraft:lime_dye" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1145 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:lime_stained_glass_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "damage" : 5 + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 16, + "blockRuntimeId" : 4813 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:lime_stained_glass_pane_from_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 102, + "id" : "minecraft:glass_pane", + "damage" : 32767 + }, + "B" : { + "legacyId" : 405, + "id" : "minecraft:lime_dye" + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 8, + "blockRuntimeId" : 4813 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:lime_stained_hardened_clay", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 405, + "id" : "minecraft:lime_dye" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6104 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:lit_pumpkin", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -155, + "id" : "minecraft:carved_pumpkin", + "damage" : 32767 + }, + "B" : { + "legacyId" : 50, + "id" : "minecraft:torch", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 91, + "id" : "minecraft:lit_pumpkin", + "blockRuntimeId" : 6559 + } + ], + "shape" : [ + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:locator_map", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + "B" : { + "legacyId" : 391, + "id" : "minecraft:compass", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 515, + "id" : "minecraft:empty_map", + "damage" : 2 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:lodestone", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 98, + "id" : "minecraft:stonebrick", + "damage" : 3 + }, + "B" : { + "legacyId" : 603, + "id" : "minecraft:netherite_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -222, + "id" : "minecraft:lodestone", + "blockRuntimeId" : 8201 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:loom_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 326, + "id" : "minecraft:string", + "damage" : 32767 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -204, + "id" : "minecraft:loom", + "blockRuntimeId" : 3831 + } + ], + "shape" : [ + "AA", + "BB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:loom_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 326, + "id" : "minecraft:string", + "damage" : 32767 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -204, + "id" : "minecraft:loom", + "blockRuntimeId" : 3831 + } + ], + "shape" : [ + "AA", + "BB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:magenta_banner", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 567, + "id" : "minecraft:banner", + "damage" : 13 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:magenta_candle", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye" + } + ], + "output" : [ + { + "legacyId" : -415, + "id" : "minecraft:magenta_candle", + "blockRuntimeId" : 428 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:magenta_carpet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 3, + "blockRuntimeId" : 958 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:magenta_carpet_from_white", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 171, + "id" : "minecraft:carpet" + }, + "B" : { + "legacyId" : 408, + "id" : "minecraft:magenta_dye" + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 8, + "blockRuntimeId" : 958 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:magenta_concrete_powder", + "type" : 0, + "input" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6231 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:magenta_dye", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye" + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye" + } + ], + "output" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "count" : 3 + } + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:magenta_dye_from_allium", + "type" : 0, + "input" : [ + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye" + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:magenta_dye_from_blue_ink_bonemeal", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye" + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal" + } + ], + "output" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "count" : 4 + } + ], + "block" : "crafting_table", + "priority" : 6 + }, + { + "id" : "minecraft:magenta_dye_from_blue_ink_white", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye" + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye" + } + ], + "output" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "count" : 4 + } + ], + "block" : "crafting_table", + "priority" : 4 + }, + { + "id" : "minecraft:magenta_dye_from_lapis_ink_bonemeal", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli" + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal" + } + ], + "output" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "count" : 4 + } + ], + "block" : "crafting_table", + "priority" : 8 + }, + { + "id" : "minecraft:magenta_dye_from_lapis_ink_white", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli" + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye" + } + ], + "output" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "count" : 4 + } + ], + "block" : "crafting_table", + "priority" : 7 + }, + { + "id" : "minecraft:magenta_dye_from_lapis_red_pink", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli" + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye" + } + ], + "output" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "count" : 3 + } + ], + "block" : "crafting_table", + "priority" : 5 + }, + { + "id" : "minecraft:magenta_dye_from_lilac", + "type" : 0, + "input" : [ + { + "legacyId" : 175, + "id" : "minecraft:double_plant", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:magenta_dye_from_purple_and_pink", + "type" : 0, + "input" : [ + { + "legacyId" : 400, + "id" : "minecraft:purple_dye" + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye" + } + ], + "output" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 3 + }, + { + "id" : "minecraft:magenta_stained_glass", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 408, + "id" : "minecraft:magenta_dye" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1142 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:magenta_stained_glass_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "damage" : 2 + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 16, + "blockRuntimeId" : 4810 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:magenta_stained_glass_pane_from_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 102, + "id" : "minecraft:glass_pane", + "damage" : 32767 + }, + "B" : { + "legacyId" : 408, + "id" : "minecraft:magenta_dye" + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 8, + "blockRuntimeId" : 4810 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:magenta_stained_hardened_clay", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 408, + "id" : "minecraft:magenta_dye" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6101 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:magma", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 430, + "id" : "minecraft:magma_cream", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 213, + "id" : "minecraft:magma", + "blockRuntimeId" : 7951 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:magma_cream", + "type" : 0, + "input" : [ + { + "legacyId" : 429, + "id" : "minecraft:blaze_powder", + "damage" : 32767 + }, + { + "legacyId" : 388, + "id" : "minecraft:slime_ball", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 430, + "id" : "minecraft:magma_cream" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:map", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 515, + "id" : "minecraft:empty_map" + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:melon_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 272, + "id" : "minecraft:melon_slice", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 103, + "id" : "minecraft:melon_block", + "blockRuntimeId" : 402 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:melon_seeds", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 272, + "id" : "minecraft:melon_slice", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 293, + "id" : "minecraft:melon_seeds" + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:minecart", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 370, + "id" : "minecraft:minecart" + } + ], + "shape" : [ + "A A", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:moss_carpet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -320, + "id" : "minecraft:moss_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -335, + "id" : "minecraft:moss_carpet", + "count" : 3, + "blockRuntimeId" : 300 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:mossy_cobblestone", + "type" : 0, + "input" : [ + { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : 32767 + }, + { + "legacyId" : 106, + "id" : "minecraft:vine", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 48, + "id" : "minecraft:mossy_cobblestone", + "blockRuntimeId" : 266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:mossy_cobblestone_from_moss", + "type" : 0, + "input" : [ + { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : 32767 + }, + { + "legacyId" : -320, + "id" : "minecraft:moss_block", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 48, + "id" : "minecraft:mossy_cobblestone", + "blockRuntimeId" : 266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:mossy_cobblestone_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 48, + "id" : "minecraft:mossy_cobblestone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -179, + "id" : "minecraft:mossy_cobblestone_stairs", + "count" : 4, + "blockRuntimeId" : 4081 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:mossy_cobblestone_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 48, + "id" : "minecraft:mossy_cobblestone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "count" : 6, + "blockRuntimeId" : 1188 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:mossy_stone_brick_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 98, + "id" : "minecraft:stonebrick", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : -175, + "id" : "minecraft:mossy_stone_brick_stairs", + "count" : 4, + "blockRuntimeId" : 5807 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:mossy_stone_brick_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 98, + "id" : "minecraft:stonebrick", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "count" : 6, + "blockRuntimeId" : 1195 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:mossy_stonebrick", + "type" : 0, + "input" : [ + { + "legacyId" : 98, + "id" : "minecraft:stonebrick" + }, + { + "legacyId" : 106, + "id" : "minecraft:vine", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 98, + "id" : "minecraft:stonebrick", + "blockRuntimeId" : 6439 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:mossy_stonebrick_from_moss", + "type" : 0, + "input" : [ + { + "legacyId" : 98, + "id" : "minecraft:stonebrick" + }, + { + "legacyId" : -320, + "id" : "minecraft:moss_block", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 98, + "id" : "minecraft:stonebrick", + "blockRuntimeId" : 6439 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:mushroom_stew", + "type" : 0, + "input" : [ + { + "legacyId" : 39, + "id" : "minecraft:brown_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 40, + "id" : "minecraft:red_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 260, + "id" : "minecraft:mushroom_stew" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:nether_brick", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 523, + "id" : "minecraft:netherbrick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 112, + "id" : "minecraft:nether_brick", + "blockRuntimeId" : 7214 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:nether_brick_fence", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 112, + "id" : "minecraft:nether_brick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 523, + "id" : "minecraft:netherbrick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 113, + "id" : "minecraft:nether_brick_fence", + "count" : 6, + "blockRuntimeId" : 4238 + } + ], + "shape" : [ + "ABA", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:nether_brick_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 112, + "id" : "minecraft:nether_brick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 114, + "id" : "minecraft:nether_brick_stairs", + "count" : 4, + "blockRuntimeId" : 106 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:nether_brick_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 112, + "id" : "minecraft:nether_brick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "count" : 6, + "blockRuntimeId" : 1196 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:nether_wart_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 294, + "id" : "minecraft:nether_wart", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 214, + "id" : "minecraft:nether_wart_block", + "blockRuntimeId" : 4241 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:netherite_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 603, + "id" : "minecraft:netherite_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -270, + "id" : "minecraft:netherite_block", + "blockRuntimeId" : 3780 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:netherite_ingot", + "type" : 0, + "input" : [ + { + "legacyId" : 613, + "id" : "minecraft:netherite_scrap", + "damage" : 32767 + }, + { + "legacyId" : 613, + "id" : "minecraft:netherite_scrap", + "damage" : 32767 + }, + { + "legacyId" : 613, + "id" : "minecraft:netherite_scrap", + "damage" : 32767 + }, + { + "legacyId" : 613, + "id" : "minecraft:netherite_scrap", + "damage" : 32767 + }, + { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + }, + { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + }, + { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + }, + { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 603, + "id" : "minecraft:netherite_ingot" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:netherite_ingot_from_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -270, + "id" : "minecraft:netherite_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 603, + "id" : "minecraft:netherite_ingot", + "count" : 9 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:noteblock_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 25, + "id" : "minecraft:noteblock", + "blockRuntimeId" : 359 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:noteblock_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 25, + "id" : "minecraft:noteblock", + "blockRuntimeId" : 359 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:oak_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 17, + "id" : "minecraft:log" + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5995 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:oak_planks_from_stripped", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -10, + "id" : "minecraft:stripped_oak_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5995 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:oak_planks_from_stripped_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 8 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5995 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:oak_planks_from_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -212, + "id" : "minecraft:wood" + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5995 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:oak_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks" + } + }, + "output" : [ + { + "legacyId" : 53, + "id" : "minecraft:oak_stairs", + "count" : 4, + "blockRuntimeId" : 287 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:oak_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 17, + "id" : "minecraft:log" + } + }, + "output" : [ + { + "legacyId" : -212, + "id" : "minecraft:wood", + "count" : 3, + "blockRuntimeId" : 3479 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:oak_wood_stripped", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -10, + "id" : "minecraft:stripped_oak_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -212, + "id" : "minecraft:wood", + "count" : 3, + "blockRuntimeId" : 3485 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:oak_wooden_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks" + } + }, + "output" : [ + { + "legacyId" : 158, + "id" : "minecraft:wooden_slab", + "count" : 6, + "blockRuntimeId" : 5220 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:observer", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : 32767 + }, + "B" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + }, + "C" : { + "legacyId" : 524, + "id" : "minecraft:quartz", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 251, + "id" : "minecraft:observer", + "blockRuntimeId" : 3518 + } + ], + "shape" : [ + "AAA", + "BBC", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:orange_banner", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 567, + "id" : "minecraft:banner", + "damage" : 14 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:orange_candle", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye" + } + ], + "output" : [ + { + "legacyId" : -414, + "id" : "minecraft:orange_candle", + "blockRuntimeId" : 372 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:orange_carpet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 3, + "blockRuntimeId" : 957 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:orange_carpet_from_white", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 171, + "id" : "minecraft:carpet" + }, + "B" : { + "legacyId" : 409, + "id" : "minecraft:orange_dye" + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 8, + "blockRuntimeId" : 957 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:orange_concrete_powder", + "type" : 0, + "input" : [ + { + "legacyId" : 409, + "id" : "minecraft:orange_dye" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6230 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:orange_dye_from_orange_tulip", + "type" : 0, + "input" : [ + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 409, + "id" : "minecraft:orange_dye" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:orange_dye_from_red_yellow", + "type" : 0, + "input" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye" + } + ], + "output" : [ + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:orange_stained_glass", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 409, + "id" : "minecraft:orange_dye" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1141 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:orange_stained_glass_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 16, + "blockRuntimeId" : 4809 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:orange_stained_glass_pane_from_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 102, + "id" : "minecraft:glass_pane", + "damage" : 32767 + }, + "B" : { + "legacyId" : 409, + "id" : "minecraft:orange_dye" + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 8, + "blockRuntimeId" : 4809 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:orange_stained_hardened_clay", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 409, + "id" : "minecraft:orange_dye" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6100 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:packed_ice", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 79, + "id" : "minecraft:ice", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 174, + "id" : "minecraft:packed_ice", + "blockRuntimeId" : 296 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:paper", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 385, + "id" : "minecraft:sugar_cane", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "count" : 3 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:pillar_quartz_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 155, + "id" : "minecraft:quartz_block" + } + }, + "output" : [ + { + "legacyId" : 155, + "id" : "minecraft:quartz_block", + "count" : 2, + "blockRuntimeId" : 3703 + } + ], + "shape" : [ + "A", + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:pink_banner", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 567, + "id" : "minecraft:banner", + "damage" : 9 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:pink_candle", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye" + } + ], + "output" : [ + { + "legacyId" : -419, + "id" : "minecraft:pink_candle", + "blockRuntimeId" : 7312 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:pink_carpet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 3, + "blockRuntimeId" : 962 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:pink_carpet_from_white", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 171, + "id" : "minecraft:carpet" + }, + "B" : { + "legacyId" : 404, + "id" : "minecraft:pink_dye" + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 8, + "blockRuntimeId" : 962 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:pink_concrete_powder", + "type" : 0, + "input" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6235 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:pink_dye", + "type" : 0, + "input" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye" + } + ], + "output" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:pink_dye_from_peony", + "type" : 0, + "input" : [ + { + "legacyId" : 175, + "id" : "minecraft:double_plant", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:pink_dye_from_pink_tulip", + "type" : 0, + "input" : [ + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:pink_dye_from_red_bonemeal", + "type" : 0, + "input" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal" + } + ], + "output" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:pink_stained_glass", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 404, + "id" : "minecraft:pink_dye" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1146 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:pink_stained_glass_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "damage" : 6 + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 16, + "blockRuntimeId" : 4814 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:pink_stained_glass_pane_from_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 102, + "id" : "minecraft:glass_pane", + "damage" : 32767 + }, + "B" : { + "legacyId" : 404, + "id" : "minecraft:pink_dye" + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 8, + "blockRuntimeId" : 4814 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:pink_stained_hardened_clay", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 404, + "id" : "minecraft:pink_dye" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6105 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:piston_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : 32767 + }, + "C" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "D" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 33, + "id" : "minecraft:piston", + "blockRuntimeId" : 930 + } + ], + "shape" : [ + "AAA", + "BCB", + "BDB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:piston_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : 32767 + }, + "C" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "D" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 33, + "id" : "minecraft:piston", + "blockRuntimeId" : 930 + } + ], + "shape" : [ + "AAA", + "BCB", + "BDB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:polished_andesite", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 5 + } + }, + "output" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "count" : 4, + "blockRuntimeId" : 667 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:polished_andesite_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 6 + } + }, + "output" : [ + { + "legacyId" : -174, + "id" : "minecraft:polished_andesite_stairs", + "count" : 4, + "blockRuntimeId" : 6982 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:polished_basalt", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -234, + "id" : "minecraft:basalt", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -235, + "id" : "minecraft:polished_basalt", + "count" : 4, + "blockRuntimeId" : 24 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:polished_blackstone", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -291, + "id" : "minecraft:polished_blackstone", + "count" : 4, + "blockRuntimeId" : 3687 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:polished_blackstone_brick_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -274, + "id" : "minecraft:polished_blackstone_bricks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -284, + "id" : "minecraft:polished_blackstone_brick_slab", + "count" : 6, + "blockRuntimeId" : 4175 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:polished_blackstone_brick_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -274, + "id" : "minecraft:polished_blackstone_bricks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -275, + "id" : "minecraft:polished_blackstone_brick_stairs", + "count" : 4, + "blockRuntimeId" : 4425 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:polished_blackstone_brick_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -274, + "id" : "minecraft:polished_blackstone_bricks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -278, + "id" : "minecraft:polished_blackstone_brick_wall", + "count" : 6, + "blockRuntimeId" : 978 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:polished_blackstone_bricks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -291, + "id" : "minecraft:polished_blackstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -274, + "id" : "minecraft:polished_blackstone_bricks", + "count" : 4, + "blockRuntimeId" : 4636 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:polished_blackstone_button", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -291, + "id" : "minecraft:polished_blackstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -296, + "id" : "minecraft:polished_blackstone_button", + "blockRuntimeId" : 7732 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:polished_blackstone_pressure_plate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -291, + "id" : "minecraft:polished_blackstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -295, + "id" : "minecraft:polished_blackstone_pressure_plate", + "blockRuntimeId" : 6197 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:polished_blackstone_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -291, + "id" : "minecraft:polished_blackstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -293, + "id" : "minecraft:polished_blackstone_slab", + "count" : 6, + "blockRuntimeId" : 5942 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:polished_blackstone_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -291, + "id" : "minecraft:polished_blackstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -292, + "id" : "minecraft:polished_blackstone_stairs", + "count" : 4, + "blockRuntimeId" : 4245 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:polished_blackstone_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -291, + "id" : "minecraft:polished_blackstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -297, + "id" : "minecraft:polished_blackstone_wall", + "count" : 6, + "blockRuntimeId" : 6640 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:polished_deepslate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -383, + "id" : "minecraft:polished_deepslate", + "count" : 4, + "blockRuntimeId" : 7696 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:polished_deepslate_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -383, + "id" : "minecraft:polished_deepslate", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -384, + "id" : "minecraft:polished_deepslate_slab", + "count" : 6, + "blockRuntimeId" : 302 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:polished_deepslate_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -383, + "id" : "minecraft:polished_deepslate", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -385, + "id" : "minecraft:polished_deepslate_stairs", + "count" : 4, + "blockRuntimeId" : 308 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:polished_deepslate_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -383, + "id" : "minecraft:polished_deepslate", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -386, + "id" : "minecraft:polished_deepslate_wall", + "count" : 6, + "blockRuntimeId" : 7759 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:polished_diorite", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "count" : 4, + "blockRuntimeId" : 665 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:polished_diorite_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 4 + } + }, + "output" : [ + { + "legacyId" : -173, + "id" : "minecraft:polished_diorite_stairs", + "count" : 4, + "blockRuntimeId" : 6588 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:polished_granite", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : 1, + "id" : "minecraft:stone", + "count" : 4, + "blockRuntimeId" : 663 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:polished_granite_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 2 + } + }, + "output" : [ + { + "legacyId" : -172, + "id" : "minecraft:polished_granite_stairs", + "count" : 4, + "blockRuntimeId" : 4139 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:prismarine", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 565, + "id" : "minecraft:prismarine_shard", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 168, + "id" : "minecraft:prismarine", + "blockRuntimeId" : 6009 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:prismarine_bricks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 565, + "id" : "minecraft:prismarine_shard", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 168, + "id" : "minecraft:prismarine", + "blockRuntimeId" : 6011 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:prismarine_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 168, + "id" : "minecraft:prismarine" + } + }, + "output" : [ + { + "legacyId" : -2, + "id" : "minecraft:prismarine_stairs", + "count" : 4, + "blockRuntimeId" : 7205 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:prismarine_stairs_bricks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 168, + "id" : "minecraft:prismarine", + "damage" : 2 + } + }, + "output" : [ + { + "legacyId" : -4, + "id" : "minecraft:prismarine_bricks_stairs", + "count" : 4, + "blockRuntimeId" : 206 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:prismarine_stairs_dark", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 168, + "id" : "minecraft:prismarine", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : -3, + "id" : "minecraft:dark_prismarine_stairs", + "count" : 4, + "blockRuntimeId" : 7372 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:prismarine_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 168, + "id" : "minecraft:prismarine" + } + }, + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "count" : 6, + "blockRuntimeId" : 1198 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:pumpkin_pie", + "type" : 0, + "input" : [ + { + "legacyId" : 86, + "id" : "minecraft:pumpkin", + "damage" : 32767 + }, + { + "legacyId" : 416, + "id" : "minecraft:sugar", + "damage" : 32767 + }, + { + "legacyId" : 390, + "id" : "minecraft:egg", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 284, + "id" : "minecraft:pumpkin_pie" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:pumpkin_seeds", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 86, + "id" : "minecraft:pumpkin", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 292, + "id" : "minecraft:pumpkin_seeds", + "count" : 4 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:purple_banner", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 567, + "id" : "minecraft:banner", + "damage" : 5 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:purple_candle", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye" + } + ], + "output" : [ + { + "legacyId" : -423, + "id" : "minecraft:purple_candle", + "blockRuntimeId" : 6992 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:purple_carpet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 3, + "blockRuntimeId" : 966 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:purple_carpet_from_white", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 171, + "id" : "minecraft:carpet" + }, + "B" : { + "legacyId" : 400, + "id" : "minecraft:purple_dye" + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 8, + "blockRuntimeId" : 966 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:purple_concrete_powder", + "type" : 0, + "input" : [ + { + "legacyId" : 400, + "id" : "minecraft:purple_dye" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6239 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:purple_dye", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye" + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + } + ], + "output" : [ + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:purple_dye_from_lapis_lazuli", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli" + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + } + ], + "output" : [ + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:purple_stained_glass", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 400, + "id" : "minecraft:purple_dye" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1150 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:purple_stained_glass_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "damage" : 10 + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 16, + "blockRuntimeId" : 4818 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:purple_stained_glass_pane_from_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 102, + "id" : "minecraft:glass_pane", + "damage" : 32767 + }, + "B" : { + "legacyId" : 400, + "id" : "minecraft:purple_dye" + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 8, + "blockRuntimeId" : 4818 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:purple_stained_hardened_clay", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 400, + "id" : "minecraft:purple_dye" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6109 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:purpur_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 559, + "id" : "minecraft:popped_chorus_fruit", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 201, + "id" : "minecraft:purpur_block", + "count" : 4, + "blockRuntimeId" : 7656 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:purpur_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 201, + "id" : "minecraft:purpur_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 203, + "id" : "minecraft:purpur_stairs", + "count" : 4, + "blockRuntimeId" : 7697 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:quartz_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 524, + "id" : "minecraft:quartz", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 155, + "id" : "minecraft:quartz_block", + "blockRuntimeId" : 3701 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:quartz_bricks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 155, + "id" : "minecraft:quartz_block" + } + }, + "output" : [ + { + "legacyId" : -304, + "id" : "minecraft:quartz_bricks", + "blockRuntimeId" : 6316 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:quartz_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 155, + "id" : "minecraft:quartz_block" + } + }, + "output" : [ + { + "legacyId" : 156, + "id" : "minecraft:quartz_stairs", + "count" : 4, + "blockRuntimeId" : 4723 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:rabbit_stew_from_brown_mushroom", + "type" : 0, + "input" : [ + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "damage" : 32767 + }, + { + "legacyId" : 281, + "id" : "minecraft:baked_potato", + "damage" : 32767 + }, + { + "legacyId" : 279, + "id" : "minecraft:carrot", + "damage" : 32767 + }, + { + "legacyId" : 39, + "id" : "minecraft:brown_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 289, + "id" : "minecraft:cooked_rabbit", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 290, + "id" : "minecraft:rabbit_stew" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:rabbit_stew_from_red_mushroom", + "type" : 0, + "input" : [ + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "damage" : 32767 + }, + { + "legacyId" : 281, + "id" : "minecraft:baked_potato", + "damage" : 32767 + }, + { + "legacyId" : 279, + "id" : "minecraft:carrot", + "damage" : 32767 + }, + { + "legacyId" : 40, + "id" : "minecraft:red_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 289, + "id" : "minecraft:cooked_rabbit", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 290, + "id" : "minecraft:rabbit_stew" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:rail", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 66, + "id" : "minecraft:rail", + "count" : 16, + "blockRuntimeId" : 3909 + } + ], + "shape" : [ + "A A", + "ABA", + "A A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:raw_copper", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -452, + "id" : "minecraft:raw_copper_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 507, + "id" : "minecraft:raw_copper", + "count" : 9 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:raw_copper_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 507, + "id" : "minecraft:raw_copper", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -452, + "id" : "minecraft:raw_copper_block", + "blockRuntimeId" : 5219 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:raw_gold", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -453, + "id" : "minecraft:raw_gold_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 506, + "id" : "minecraft:raw_gold", + "count" : 9 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:raw_gold_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 506, + "id" : "minecraft:raw_gold", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -453, + "id" : "minecraft:raw_gold_block", + "blockRuntimeId" : 371 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:raw_iron", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -451, + "id" : "minecraft:raw_iron_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 505, + "id" : "minecraft:raw_iron", + "count" : 9 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:raw_iron_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 505, + "id" : "minecraft:raw_iron", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -451, + "id" : "minecraft:raw_iron_block", + "blockRuntimeId" : 8202 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:red_banner", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 567, + "id" : "minecraft:banner", + "damage" : 1 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:red_candle", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + } + ], + "output" : [ + { + "legacyId" : -427, + "id" : "minecraft:red_candle", + "blockRuntimeId" : 4637 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:red_carpet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 3, + "blockRuntimeId" : 970 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:red_carpet_from_white", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 171, + "id" : "minecraft:carpet" + }, + "B" : { + "legacyId" : 396, + "id" : "minecraft:red_dye" + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 8, + "blockRuntimeId" : 970 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:red_concrete_powder", + "type" : 0, + "input" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6243 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:red_dye_from_beetroot", + "type" : 0, + "input" : [ + { + "legacyId" : 285, + "id" : "minecraft:beetroot", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:red_dye_from_poppy", + "type" : 0, + "input" : [ + { + "legacyId" : 38, + "id" : "minecraft:red_flower" + } + ], + "output" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:red_dye_from_rose_bush", + "type" : 0, + "input" : [ + { + "legacyId" : 175, + "id" : "minecraft:double_plant", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:red_dye_from_tulip", + "type" : 0, + "input" : [ + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:red_nether_brick", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 523, + "id" : "minecraft:netherbrick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 294, + "id" : "minecraft:nether_wart", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 215, + "id" : "minecraft:red_nether_brick", + "blockRuntimeId" : 146 + } + ], + "shape" : [ + "AB", + "BA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:red_nether_brick_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 215, + "id" : "minecraft:red_nether_brick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -184, + "id" : "minecraft:red_nether_brick_stairs", + "count" : 4, + "blockRuntimeId" : 6493 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:red_nether_brick_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 215, + "id" : "minecraft:red_nether_brick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "count" : 6, + "blockRuntimeId" : 1200 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:red_sandstone", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 12, + "id" : "minecraft:sand", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : 179, + "id" : "minecraft:red_sandstone", + "blockRuntimeId" : 6471 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:red_sandstone_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 179, + "id" : "minecraft:red_sandstone" + } + }, + "output" : [ + { + "legacyId" : 180, + "id" : "minecraft:red_sandstone_stairs", + "count" : 4, + "blockRuntimeId" : 5300 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:red_sandstone_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 179, + "id" : "minecraft:red_sandstone" + } + }, + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "count" : 6, + "blockRuntimeId" : 1199 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:red_stained_glass", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 396, + "id" : "minecraft:red_dye" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1154 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:red_stained_glass_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "damage" : 14 + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 16, + "blockRuntimeId" : 4822 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:red_stained_glass_pane_from_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 102, + "id" : "minecraft:glass_pane", + "damage" : 32767 + }, + "B" : { + "legacyId" : 396, + "id" : "minecraft:red_dye" + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 8, + "blockRuntimeId" : 4822 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:red_stained_hardened_clay", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 396, + "id" : "minecraft:red_dye" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6113 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:redstone", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 152, + "id" : "minecraft:redstone_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 373, + "id" : "minecraft:redstone", + "count" : 9 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:redstone_block", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 152, + "id" : "minecraft:redstone_block", + "blockRuntimeId" : 3781 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:redstone_lamp", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + }, + "B" : { + "legacyId" : 89, + "id" : "minecraft:glowstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 123, + "id" : "minecraft:redstone_lamp", + "blockRuntimeId" : 265 + } + ], + "shape" : [ + " A ", + "ABA", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:redstone_torch", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 76, + "id" : "minecraft:redstone_torch", + "blockRuntimeId" : 3530 + } + ], + "shape" : [ + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:repeater", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 76, + "id" : "minecraft:redstone_torch", + "damage" : 32767 + }, + "B" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + }, + "C" : { + "legacyId" : 1, + "id" : "minecraft:stone" + } + }, + "output" : [ + { + "legacyId" : 419, + "id" : "minecraft:repeater" + } + ], + "shape" : [ + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:respawn_anchor", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -289, + "id" : "minecraft:crying_obsidian", + "damage" : 32767 + }, + "B" : { + "legacyId" : 89, + "id" : "minecraft:glowstone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -272, + "id" : "minecraft:respawn_anchor", + "blockRuntimeId" : 689 + } + ], + "shape" : [ + "AAA", + "BBB", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:sandstone", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 12, + "id" : "minecraft:sand" + } + }, + "output" : [ + { + "legacyId" : 24, + "id" : "minecraft:sandstone", + "blockRuntimeId" : 3658 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:sandstone_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 24, + "id" : "minecraft:sandstone" + } + }, + "output" : [ + { + "legacyId" : 128, + "id" : "minecraft:sandstone_stairs", + "count" : 4, + "blockRuntimeId" : 3592 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:sandstone_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 24, + "id" : "minecraft:sandstone" + } + }, + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "count" : 6, + "blockRuntimeId" : 1192 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:scaffolding", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -163, + "id" : "minecraft:bamboo", + "damage" : 32767 + }, + "B" : { + "legacyId" : 326, + "id" : "minecraft:string", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -165, + "id" : "minecraft:scaffolding", + "count" : 6, + "blockRuntimeId" : 3576 + } + ], + "shape" : [ + "ABA", + "A A", + "A A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:sealantern", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 565, + "id" : "minecraft:prismarine_shard", + "damage" : 32767 + }, + "B" : { + "legacyId" : 549, + "id" : "minecraft:prismarine_crystals", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 169, + "id" : "minecraft:sea_lantern", + "blockRuntimeId" : 7488 + } + ], + "shape" : [ + "ABA", + "BBB", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:shears", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 421, + "id" : "minecraft:shears" + } + ], + "shape" : [ + " A", + "A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:shield", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 355, + "id" : "minecraft:shield" + } + ], + "shape" : [ + "ABA", + "AAA", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:shield_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 355, + "id" : "minecraft:shield" + } + ], + "shape" : [ + "ABA", + "AAA", + " A " + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:shield_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 355, + "id" : "minecraft:shield" + } + ], + "shape" : [ + "ABA", + "AAA", + " A " + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:shulker_box", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 566, + "id" : "minecraft:shulker_shell", + "damage" : 32767 + }, + "B" : { + "legacyId" : 54, + "id" : "minecraft:chest", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box", + "blockRuntimeId" : 3686 + } + ], + "shape" : [ + "A", + "B", + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:sign_acacia", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 4 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 579, + "id" : "minecraft:acacia_sign", + "count" : 3 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:sign_birch", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 2 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 577, + "id" : "minecraft:birch_sign", + "count" : 3 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:sign_darkoak", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 5 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 580, + "id" : "minecraft:dark_oak_sign", + "count" : 3 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:sign_jungle", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 3 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 578, + "id" : "minecraft:jungle_sign", + "count" : 3 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:sign_oak", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks" + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 358, + "id" : "minecraft:oak_sign", + "count" : 3 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:sign_spruce", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 1 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 576, + "id" : "minecraft:spruce_sign", + "count" : 3 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:slime", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 388, + "id" : "minecraft:slime_ball", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 165, + "id" : "minecraft:slime", + "blockRuntimeId" : 4197 + } + ], + "shape" : [ + "AAA", + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:slime_ball", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 165, + "id" : "minecraft:slime", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 388, + "id" : "minecraft:slime_ball", + "count" : 9 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:smithing_table", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -202, + "id" : "minecraft:smithing_table", + "blockRuntimeId" : 3731 + } + ], + "shape" : [ + "AA", + "BB", + "BB" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:smithing_table_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -202, + "id" : "minecraft:smithing_table", + "blockRuntimeId" : 3731 + } + ], + "shape" : [ + "AA", + "BB", + "BB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:smithing_table_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -202, + "id" : "minecraft:smithing_table", + "blockRuntimeId" : 3731 + } + ], + "shape" : [ + "AA", + "BB", + "BB" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:smoker", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 17, + "id" : "minecraft:log", + "damage" : 32767 + }, + "B" : { + "legacyId" : 61, + "id" : "minecraft:furnace", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -198, + "id" : "minecraft:smoker", + "blockRuntimeId" : 655 + } + ], + "shape" : [ + " A ", + "ABA", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:smoker_from_crimson_stem", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -225, + "id" : "minecraft:crimson_stem", + "damage" : 32767 + }, + "B" : { + "legacyId" : 61, + "id" : "minecraft:furnace", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -198, + "id" : "minecraft:smoker", + "blockRuntimeId" : 655 + } + ], + "shape" : [ + " A ", + "ABA", + " A " + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:smoker_from_log2", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 162, + "id" : "minecraft:log2", + "damage" : 32767 + }, + "B" : { + "legacyId" : 61, + "id" : "minecraft:furnace", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -198, + "id" : "minecraft:smoker", + "blockRuntimeId" : 655 + } + ], + "shape" : [ + " A ", + "ABA", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:smoker_from_stripped_acacia", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -8, + "id" : "minecraft:stripped_acacia_log", + "damage" : 32767 + }, + "B" : { + "legacyId" : 61, + "id" : "minecraft:furnace", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -198, + "id" : "minecraft:smoker", + "blockRuntimeId" : 655 + } + ], + "shape" : [ + " A ", + "ABA", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:smoker_from_stripped_birch", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -6, + "id" : "minecraft:stripped_birch_log", + "damage" : 32767 + }, + "B" : { + "legacyId" : 61, + "id" : "minecraft:furnace", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -198, + "id" : "minecraft:smoker", + "blockRuntimeId" : 655 + } + ], + "shape" : [ + " A ", + "ABA", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:smoker_from_stripped_crimson_stem", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -240, + "id" : "minecraft:stripped_crimson_stem", + "damage" : 32767 + }, + "B" : { + "legacyId" : 61, + "id" : "minecraft:furnace", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -198, + "id" : "minecraft:smoker", + "blockRuntimeId" : 655 + } + ], + "shape" : [ + " A ", + "ABA", + " A " + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:smoker_from_stripped_dark_oak", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -9, + "id" : "minecraft:stripped_dark_oak_log", + "damage" : 32767 + }, + "B" : { + "legacyId" : 61, + "id" : "minecraft:furnace", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -198, + "id" : "minecraft:smoker", + "blockRuntimeId" : 655 + } + ], + "shape" : [ + " A ", + "ABA", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:smoker_from_stripped_jungle", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -7, + "id" : "minecraft:stripped_jungle_log", + "damage" : 32767 + }, + "B" : { + "legacyId" : 61, + "id" : "minecraft:furnace", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -198, + "id" : "minecraft:smoker", + "blockRuntimeId" : 655 + } + ], + "shape" : [ + " A ", + "ABA", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:smoker_from_stripped_oak", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -10, + "id" : "minecraft:stripped_oak_log", + "damage" : 32767 + }, + "B" : { + "legacyId" : 61, + "id" : "minecraft:furnace", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -198, + "id" : "minecraft:smoker", + "blockRuntimeId" : 655 + } + ], + "shape" : [ + " A ", + "ABA", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:smoker_from_stripped_spruce", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -5, + "id" : "minecraft:stripped_spruce_log", + "damage" : 32767 + }, + "B" : { + "legacyId" : 61, + "id" : "minecraft:furnace", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -198, + "id" : "minecraft:smoker", + "blockRuntimeId" : 655 + } + ], + "shape" : [ + " A ", + "ABA", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:smoker_from_stripped_warped_stem", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -241, + "id" : "minecraft:stripped_warped_stem", + "damage" : 32767 + }, + "B" : { + "legacyId" : 61, + "id" : "minecraft:furnace", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -198, + "id" : "minecraft:smoker", + "blockRuntimeId" : 655 + } + ], + "shape" : [ + " A ", + "ABA", + " A " + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:smoker_from_warped_stem", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -226, + "id" : "minecraft:warped_stem", + "damage" : 32767 + }, + "B" : { + "legacyId" : 61, + "id" : "minecraft:furnace", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -198, + "id" : "minecraft:smoker", + "blockRuntimeId" : 655 + } + ], + "shape" : [ + " A ", + "ABA", + " A " + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:smooth_quartz_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 155, + "id" : "minecraft:quartz_block", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : -185, + "id" : "minecraft:smooth_quartz_stairs", + "count" : 4, + "blockRuntimeId" : 7642 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:smooth_red_sandstone", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 179, + "id" : "minecraft:red_sandstone" + } + }, + "output" : [ + { + "legacyId" : 179, + "id" : "minecraft:red_sandstone", + "count" : 4, + "blockRuntimeId" : 6473 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:smooth_red_sandstone_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 179, + "id" : "minecraft:red_sandstone", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : -176, + "id" : "minecraft:smooth_red_sandstone_stairs", + "count" : 4, + "blockRuntimeId" : 5496 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:smooth_sandstone", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 24, + "id" : "minecraft:sandstone" + } + }, + "output" : [ + { + "legacyId" : 24, + "id" : "minecraft:sandstone", + "count" : 4, + "blockRuntimeId" : 3660 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:smooth_sandstone_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 24, + "id" : "minecraft:sandstone", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : -177, + "id" : "minecraft:smooth_sandstone_stairs", + "count" : 4, + "blockRuntimeId" : 3632 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:snow", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 374, + "id" : "minecraft:snowball", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 80, + "id" : "minecraft:snow", + "blockRuntimeId" : 4177 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:snow_layer", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 80, + "id" : "minecraft:snow", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 78, + "id" : "minecraft:snow_layer", + "count" : 6, + "blockRuntimeId" : 155 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:soul_campfire_from_crimson_stem", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -236, + "id" : "minecraft:soul_soil", + "damage" : 32767 + }, + "C" : { + "legacyId" : -225, + "id" : "minecraft:crimson_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_crimson_stem2", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 88, + "id" : "minecraft:soul_sand", + "damage" : 32767 + }, + "C" : { + "legacyId" : -225, + "id" : "minecraft:crimson_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_soul_sand", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 88, + "id" : "minecraft:soul_sand", + "damage" : 32767 + }, + "C" : { + "legacyId" : 17, + "id" : "minecraft:log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:soul_campfire_from_soul_sand_and_log2", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 88, + "id" : "minecraft:soul_sand", + "damage" : 32767 + }, + "C" : { + "legacyId" : 162, + "id" : "minecraft:log2", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_soul_sand_and_stripped_acacia_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 88, + "id" : "minecraft:soul_sand", + "damage" : 32767 + }, + "C" : { + "legacyId" : -8, + "id" : "minecraft:stripped_acacia_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_soul_sand_and_stripped_birch_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 88, + "id" : "minecraft:soul_sand", + "damage" : 32767 + }, + "C" : { + "legacyId" : -6, + "id" : "minecraft:stripped_birch_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_soul_sand_and_stripped_dark_oak_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 88, + "id" : "minecraft:soul_sand", + "damage" : 32767 + }, + "C" : { + "legacyId" : -9, + "id" : "minecraft:stripped_dark_oak_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_soul_sand_and_stripped_jungle_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 88, + "id" : "minecraft:soul_sand", + "damage" : 32767 + }, + "C" : { + "legacyId" : -7, + "id" : "minecraft:stripped_jungle_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_soul_sand_and_stripped_oak_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 88, + "id" : "minecraft:soul_sand", + "damage" : 32767 + }, + "C" : { + "legacyId" : -10, + "id" : "minecraft:stripped_oak_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_soul_sand_and_stripped_spruce_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 88, + "id" : "minecraft:soul_sand", + "damage" : 32767 + }, + "C" : { + "legacyId" : -5, + "id" : "minecraft:stripped_spruce_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_soul_sand_and_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 88, + "id" : "minecraft:soul_sand", + "damage" : 32767 + }, + "C" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_soul_soil", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -236, + "id" : "minecraft:soul_soil", + "damage" : 32767 + }, + "C" : { + "legacyId" : 17, + "id" : "minecraft:log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:soul_campfire_from_soul_soil_and_log2", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -236, + "id" : "minecraft:soul_soil", + "damage" : 32767 + }, + "C" : { + "legacyId" : 162, + "id" : "minecraft:log2", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_soul_soil_and_stripped_acacia_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -236, + "id" : "minecraft:soul_soil", + "damage" : 32767 + }, + "C" : { + "legacyId" : -8, + "id" : "minecraft:stripped_acacia_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_soul_soil_and_stripped_birch_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -236, + "id" : "minecraft:soul_soil", + "damage" : 32767 + }, + "C" : { + "legacyId" : -6, + "id" : "minecraft:stripped_birch_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_soul_soil_and_stripped_dark_oak_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -236, + "id" : "minecraft:soul_soil", + "damage" : 32767 + }, + "C" : { + "legacyId" : -9, + "id" : "minecraft:stripped_dark_oak_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_soul_soil_and_stripped_jungle_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -236, + "id" : "minecraft:soul_soil", + "damage" : 32767 + }, + "C" : { + "legacyId" : -7, + "id" : "minecraft:stripped_jungle_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_soul_soil_and_stripped_oak_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -236, + "id" : "minecraft:soul_soil", + "damage" : 32767 + }, + "C" : { + "legacyId" : -10, + "id" : "minecraft:stripped_oak_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_soul_soil_and_stripped_spruce_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -236, + "id" : "minecraft:soul_soil", + "damage" : 32767 + }, + "C" : { + "legacyId" : -5, + "id" : "minecraft:stripped_spruce_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_soul_soil_and_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -236, + "id" : "minecraft:soul_soil", + "damage" : 32767 + }, + "C" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_stripped_crimson_stem", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -236, + "id" : "minecraft:soul_soil", + "damage" : 32767 + }, + "C" : { + "legacyId" : -240, + "id" : "minecraft:stripped_crimson_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_stripped_crimson_stem2", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 88, + "id" : "minecraft:soul_sand", + "damage" : 32767 + }, + "C" : { + "legacyId" : -240, + "id" : "minecraft:stripped_crimson_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_stripped_warped_stem", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -236, + "id" : "minecraft:soul_soil", + "damage" : 32767 + }, + "C" : { + "legacyId" : -241, + "id" : "minecraft:stripped_warped_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_stripped_warped_stem2", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 88, + "id" : "minecraft:soul_sand", + "damage" : 32767 + }, + "C" : { + "legacyId" : -241, + "id" : "minecraft:stripped_warped_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_warped_stem", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -236, + "id" : "minecraft:soul_soil", + "damage" : 32767 + }, + "C" : { + "legacyId" : -226, + "id" : "minecraft:warped_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_campfire_from_warped_stem2", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 88, + "id" : "minecraft:soul_sand", + "damage" : 32767 + }, + "C" : { + "legacyId" : -226, + "id" : "minecraft:warped_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 622, + "id" : "minecraft:soul_campfire" + } + ], + "shape" : [ + " A ", + "ABA", + "CCC" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:soul_lantern", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "B" : { + "legacyId" : -268, + "id" : "minecraft:soul_torch", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -269, + "id" : "minecraft:soul_lantern", + "blockRuntimeId" : 5699 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:soul_torch_from_soul_sand", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "C" : { + "legacyId" : 88, + "id" : "minecraft:soul_sand", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -268, + "id" : "minecraft:soul_torch", + "count" : 4, + "blockRuntimeId" : 4600 + } + ], + "shape" : [ + "A", + "B", + "C" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:soul_torch_from_soul_soil", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "C" : { + "legacyId" : -236, + "id" : "minecraft:soul_soil", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -268, + "id" : "minecraft:soul_torch", + "count" : 4, + "blockRuntimeId" : 4600 + } + ], + "shape" : [ + "A", + "B", + "C" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:speckled_melon", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "B" : { + "legacyId" : 272, + "id" : "minecraft:melon_slice", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 434, + "id" : "minecraft:glistering_melon_slice" + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:spruce_boat", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 1 + }, + "B" : { + "legacyId" : 309, + "id" : "minecraft:wooden_shovel", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 378, + "id" : "minecraft:spruce_boat" + } + ], + "shape" : [ + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:spruce_door", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : 553, + "id" : "minecraft:spruce_door", + "count" : 3 + } + ], + "shape" : [ + "AA", + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:spruce_fence", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 1 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 85, + "id" : "minecraft:fence", + "count" : 3, + "blockRuntimeId" : 7307 + } + ], + "shape" : [ + "ABA", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:spruce_fence_gate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : 183, + "id" : "minecraft:spruce_fence_gate", + "blockRuntimeId" : 6475 + } + ], + "shape" : [ + "ABA", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:spruce_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 17, + "id" : "minecraft:log", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5996 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:spruce_planks_from_stripped", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -5, + "id" : "minecraft:stripped_spruce_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5996 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:spruce_planks_from_stripped_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 9 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5996 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:spruce_planks_from_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : 5, + "id" : "minecraft:planks", + "count" : 4, + "blockRuntimeId" : 5996 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:spruce_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : 134, + "id" : "minecraft:spruce_stairs", + "count" : 4, + "blockRuntimeId" : 128 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:spruce_wood", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 17, + "id" : "minecraft:log", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : -212, + "id" : "minecraft:wood", + "count" : 3, + "blockRuntimeId" : 3480 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:spruce_wood_stripped", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -5, + "id" : "minecraft:stripped_spruce_log", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -212, + "id" : "minecraft:wood", + "count" : 3, + "blockRuntimeId" : 3486 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:spruce_wooden_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : 158, + "id" : "minecraft:wooden_slab", + "count" : 6, + "blockRuntimeId" : 5221 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:spyglass", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 624, + "id" : "minecraft:amethyst_shard", + "damage" : 32767 + }, + "B" : { + "legacyId" : 504, + "id" : "minecraft:copper_ingot", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 625, + "id" : "minecraft:spyglass" + } + ], + "shape" : [ + "A", + "B", + "B" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:stick_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 320, + "id" : "minecraft:stick", + "count" : 4 + } + ], + "shape" : [ + "A", + "A" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:stick_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 320, + "id" : "minecraft:stick", + "count" : 4 + } + ], + "shape" : [ + "A", + "A" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:sticky_piston", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 388, + "id" : "minecraft:slime_ball", + "damage" : 32767 + }, + "B" : { + "legacyId" : 33, + "id" : "minecraft:piston", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 29, + "id" : "minecraft:sticky_piston", + "blockRuntimeId" : 4312 + } + ], + "shape" : [ + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:stone_axe", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 315, + "id" : "minecraft:stone_axe" + } + ], + "shape" : [ + "AA", + "AB", + " B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:stone_axe_from_blackstone", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 315, + "id" : "minecraft:stone_axe" + } + ], + "shape" : [ + "AA", + "AB", + " B" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:stone_axe_from_cobbled_deepslate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 315, + "id" : "minecraft:stone_axe" + } + ], + "shape" : [ + "AA", + "AB", + " B" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:stone_brick_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 98, + "id" : "minecraft:stonebrick" + } + }, + "output" : [ + { + "legacyId" : 109, + "id" : "minecraft:stone_brick_stairs", + "count" : 4, + "blockRuntimeId" : 939 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:stone_brick_wall", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 98, + "id" : "minecraft:stonebrick" + } + }, + "output" : [ + { + "legacyId" : 139, + "id" : "minecraft:cobblestone_wall", + "count" : 6, + "blockRuntimeId" : 1194 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:stone_button", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone" + } + }, + "output" : [ + { + "legacyId" : 77, + "id" : "minecraft:stone_button", + "blockRuntimeId" : 604 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:stone_hoe", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 330, + "id" : "minecraft:stone_hoe" + } + ], + "shape" : [ + "AA", + " B", + " B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:stone_hoe_from_blackstone", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 330, + "id" : "minecraft:stone_hoe" + } + ], + "shape" : [ + "AA", + " B", + " B" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:stone_hoe_from_cobbled_deepslate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 330, + "id" : "minecraft:stone_hoe" + } + ], + "shape" : [ + "AA", + " B", + " B" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:stone_pickaxe", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 314, + "id" : "minecraft:stone_pickaxe" + } + ], + "shape" : [ + "AAA", + " B ", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:stone_pickaxe_from_blackstone", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 314, + "id" : "minecraft:stone_pickaxe" + } + ], + "shape" : [ + "AAA", + " B ", + " B " + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:stone_pickaxe_from_cobbled_deepslate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 314, + "id" : "minecraft:stone_pickaxe" + } + ], + "shape" : [ + "AAA", + " B ", + " B " + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:stone_pressure_plate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone" + } + }, + "output" : [ + { + "legacyId" : 70, + "id" : "minecraft:stone_pressure_plate", + "blockRuntimeId" : 3875 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:stone_shovel", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 313, + "id" : "minecraft:stone_shovel" + } + ], + "shape" : [ + "A", + "B", + "B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:stone_shovel_from_blackstone", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 313, + "id" : "minecraft:stone_shovel" + } + ], + "shape" : [ + "A", + "B", + "B" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:stone_shovel_from_cobbled_deepslate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 313, + "id" : "minecraft:stone_shovel" + } + ], + "shape" : [ + "A", + "B", + "B" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:stone_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone" + } + }, + "output" : [ + { + "legacyId" : -180, + "id" : "minecraft:normal_stone_stairs", + "count" : 4, + "blockRuntimeId" : 641 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:stone_sword", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 312, + "id" : "minecraft:stone_sword" + } + ], + "shape" : [ + "A", + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:stone_sword_from_blackstone", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -273, + "id" : "minecraft:blackstone", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 312, + "id" : "minecraft:stone_sword" + } + ], + "shape" : [ + "A", + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:stone_sword_from_cobbled_deepslate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 312, + "id" : "minecraft:stone_sword" + } + ], + "shape" : [ + "A", + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:stonebrick", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone" + } + }, + "output" : [ + { + "legacyId" : 98, + "id" : "minecraft:stonebrick", + "count" : 4, + "blockRuntimeId" : 6438 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:stonecutter", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -197, + "id" : "minecraft:stonecutter_block", + "blockRuntimeId" : 7516 + } + ], + "shape" : [ + " A ", + "BBB" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:string_to_wool", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 326, + "id" : "minecraft:string", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:stripped_crimson_hyphae", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -240, + "id" : "minecraft:stripped_crimson_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -300, + "id" : "minecraft:stripped_crimson_hyphae", + "count" : 3, + "blockRuntimeId" : 6390 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:stripped_warped_hyphae", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -241, + "id" : "minecraft:stripped_warped_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -301, + "id" : "minecraft:stripped_warped_hyphae", + "count" : 3, + "blockRuntimeId" : 5529 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:sugar", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 385, + "id" : "minecraft:sugar_cane", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 416, + "id" : "minecraft:sugar" + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:suspicious_stew_from_allium", + "type" : 0, + "input" : [ + { + "legacyId" : 39, + "id" : "minecraft:brown_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 40, + "id" : "minecraft:red_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "damage" : 32767 + }, + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 590, + "id" : "minecraft:suspicious_stew", + "damage" : 7 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:suspicious_stew_from_azure_bluet", + "type" : 0, + "input" : [ + { + "legacyId" : 39, + "id" : "minecraft:brown_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 40, + "id" : "minecraft:red_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "damage" : 32767 + }, + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 590, + "id" : "minecraft:suspicious_stew", + "damage" : 3 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:suspicious_stew_from_blue_orchid", + "type" : 0, + "input" : [ + { + "legacyId" : 39, + "id" : "minecraft:brown_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 40, + "id" : "minecraft:red_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "damage" : 32767 + }, + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 590, + "id" : "minecraft:suspicious_stew", + "damage" : 6 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:suspicious_stew_from_cornflower", + "type" : 0, + "input" : [ + { + "legacyId" : 39, + "id" : "minecraft:brown_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 40, + "id" : "minecraft:red_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "damage" : 32767 + }, + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 590, + "id" : "minecraft:suspicious_stew", + "damage" : 1 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:suspicious_stew_from_dandelion", + "type" : 0, + "input" : [ + { + "legacyId" : 39, + "id" : "minecraft:brown_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 40, + "id" : "minecraft:red_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "damage" : 32767 + }, + { + "legacyId" : 37, + "id" : "minecraft:yellow_flower", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 590, + "id" : "minecraft:suspicious_stew", + "damage" : 5 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:suspicious_stew_from_lily_of_the_valley", + "type" : 0, + "input" : [ + { + "legacyId" : 39, + "id" : "minecraft:brown_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 40, + "id" : "minecraft:red_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "damage" : 32767 + }, + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 590, + "id" : "minecraft:suspicious_stew", + "damage" : 4 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:suspicious_stew_from_oxeye_daisy", + "type" : 0, + "input" : [ + { + "legacyId" : 39, + "id" : "minecraft:brown_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 40, + "id" : "minecraft:red_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "damage" : 32767 + }, + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 590, + "id" : "minecraft:suspicious_stew", + "damage" : 8 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:suspicious_stew_from_poppy", + "type" : 0, + "input" : [ + { + "legacyId" : 39, + "id" : "minecraft:brown_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 40, + "id" : "minecraft:red_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "damage" : 32767 + }, + { + "legacyId" : 38, + "id" : "minecraft:red_flower" + } + ], + "output" : [ + { + "legacyId" : 590, + "id" : "minecraft:suspicious_stew" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:suspicious_stew_from_tulip_orange", + "type" : 0, + "input" : [ + { + "legacyId" : 39, + "id" : "minecraft:brown_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 40, + "id" : "minecraft:red_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "damage" : 32767 + }, + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 590, + "id" : "minecraft:suspicious_stew", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:suspicious_stew_from_tulip_pink", + "type" : 0, + "input" : [ + { + "legacyId" : 39, + "id" : "minecraft:brown_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 40, + "id" : "minecraft:red_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "damage" : 32767 + }, + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 590, + "id" : "minecraft:suspicious_stew", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:suspicious_stew_from_tulip_red", + "type" : 0, + "input" : [ + { + "legacyId" : 39, + "id" : "minecraft:brown_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 40, + "id" : "minecraft:red_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "damage" : 32767 + }, + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 590, + "id" : "minecraft:suspicious_stew", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:suspicious_stew_from_tulip_white", + "type" : 0, + "input" : [ + { + "legacyId" : 39, + "id" : "minecraft:brown_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 40, + "id" : "minecraft:red_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "damage" : 32767 + }, + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 590, + "id" : "minecraft:suspicious_stew", + "damage" : 2 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:suspicious_stew_from_wither_rose", + "type" : 0, + "input" : [ + { + "legacyId" : 39, + "id" : "minecraft:brown_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 40, + "id" : "minecraft:red_mushroom", + "damage" : 32767 + }, + { + "legacyId" : 321, + "id" : "minecraft:bowl", + "damage" : 32767 + }, + { + "legacyId" : -216, + "id" : "minecraft:wither_rose", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 590, + "id" : "minecraft:suspicious_stew", + "damage" : 9 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:target", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + }, + "B" : { + "legacyId" : 170, + "id" : "minecraft:hay_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -239, + "id" : "minecraft:target", + "blockRuntimeId" : 6355 + } + ], + "shape" : [ + " A ", + "ABA", + " A " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:tinted_glass", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 624, + "id" : "minecraft:amethyst_shard", + "damage" : 32767 + }, + "B" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -334, + "id" : "minecraft:tinted_glass", + "count" : 2, + "blockRuntimeId" : 5899 + } + ], + "shape" : [ + " A ", + "ABA", + " A " + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:tnt", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + "B" : { + "legacyId" : 12, + "id" : "minecraft:sand", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 46, + "id" : "minecraft:tnt", + "blockRuntimeId" : 6581 + } + ], + "shape" : [ + "ABA", + "BAB", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:tnt_minecart", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 46, + "id" : "minecraft:tnt" + }, + "B" : { + "legacyId" : 370, + "id" : "minecraft:minecart", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 525, + "id" : "minecraft:tnt_minecart" + } + ], + "shape" : [ + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:trapped_chest", + "type" : 0, + "input" : [ + { + "legacyId" : 54, + "id" : "minecraft:chest", + "damage" : 32767 + }, + { + "legacyId" : 131, + "id" : "minecraft:tripwire_hook", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 146, + "id" : "minecraft:trapped_chest", + "blockRuntimeId" : 5533 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:tripwire_hook_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "C" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 131, + "id" : "minecraft:tripwire_hook", + "blockRuntimeId" : 5838 + } + ], + "shape" : [ + "A", + "B", + "C" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:tripwire_hook_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "C" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 131, + "id" : "minecraft:tripwire_hook", + "blockRuntimeId" : 5838 + } + ], + "shape" : [ + "A", + "B", + "C" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:turtle_helmet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 572, + "id" : "minecraft:scute", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 573, + "id" : "minecraft:turtle_helmet" + } + ], + "shape" : [ + "AAA", + "A A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:warped_button", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -261, + "id" : "minecraft:warped_button", + "blockRuntimeId" : 7192 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:warped_door", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 617, + "id" : "minecraft:warped_door", + "count" : 3 + } + ], + "shape" : [ + "AA", + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:warped_fence", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -257, + "id" : "minecraft:warped_fence", + "count" : 3, + "blockRuntimeId" : 5777 + } + ], + "shape" : [ + "ABA", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:warped_fence_gate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + }, + "B" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -259, + "id" : "minecraft:warped_fence_gate", + "blockRuntimeId" : 5349 + } + ], + "shape" : [ + "ABA", + "ABA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:warped_fungus_on_a_stick", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 392, + "id" : "minecraft:fishing_rod", + "damage" : 32767 + }, + "B" : { + "legacyId" : -229, + "id" : "minecraft:warped_fungus", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 618, + "id" : "minecraft:warped_fungus_on_a_stick" + } + ], + "shape" : [ + "A ", + " B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:warped_hyphae", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -226, + "id" : "minecraft:warped_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -298, + "id" : "minecraft:warped_hyphae", + "count" : 3, + "blockRuntimeId" : 5826 + } + ], + "shape" : [ + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -226, + "id" : "minecraft:warped_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "count" : 4, + "blockRuntimeId" : 928 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:warped_planks_from_stripped_log", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -241, + "id" : "minecraft:stripped_warped_stem", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "count" : 4, + "blockRuntimeId" : 928 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:warped_planks_from_stripped_warped_hyphae", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -301, + "id" : "minecraft:stripped_warped_hyphae", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "count" : 4, + "blockRuntimeId" : 928 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:warped_planks_from_warped_hyphae", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -298, + "id" : "minecraft:warped_hyphae", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "count" : 4, + "blockRuntimeId" : 928 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:warped_pressure_plate", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -263, + "id" : "minecraft:warped_pressure_plate", + "blockRuntimeId" : 270 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:warped_sign", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 615, + "id" : "minecraft:warped_sign", + "count" : 3 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:warped_slab", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -265, + "id" : "minecraft:warped_slab", + "count" : 6, + "blockRuntimeId" : 6375 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:warped_stairs", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -255, + "id" : "minecraft:warped_stairs", + "count" : 4, + "blockRuntimeId" : 3723 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:warped_trapdoor", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : -247, + "id" : "minecraft:warped_trapdoor", + "count" : 2, + "blockRuntimeId" : 4689 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:waxing_copper_block", + "type" : 0, + "input" : [ + { + "legacyId" : -340, + "id" : "minecraft:copper_block", + "damage" : 32767 + }, + { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -344, + "id" : "minecraft:waxed_copper", + "blockRuntimeId" : 7676 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:waxing_cut_copper", + "type" : 0, + "input" : [ + { + "legacyId" : -347, + "id" : "minecraft:cut_copper", + "damage" : 32767 + }, + { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -351, + "id" : "minecraft:waxed_cut_copper", + "blockRuntimeId" : 7235 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:waxing_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -361, + "id" : "minecraft:cut_copper_slab", + "damage" : 32767 + }, + { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -365, + "id" : "minecraft:waxed_cut_copper_slab", + "blockRuntimeId" : 7757 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:waxing_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -354, + "id" : "minecraft:cut_copper_stairs", + "damage" : 32767 + }, + { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -358, + "id" : "minecraft:waxed_cut_copper_stairs", + "blockRuntimeId" : 403 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:waxing_exposed_copper", + "type" : 0, + "input" : [ + { + "legacyId" : -341, + "id" : "minecraft:exposed_copper", + "damage" : 32767 + }, + { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -345, + "id" : "minecraft:waxed_exposed_copper", + "blockRuntimeId" : 702 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:waxing_exposed_cut_copper", + "type" : 0, + "input" : [ + { + "legacyId" : -348, + "id" : "minecraft:exposed_cut_copper", + "damage" : 32767 + }, + { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -352, + "id" : "minecraft:waxed_exposed_cut_copper", + "blockRuntimeId" : 3814 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:waxing_exposed_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -362, + "id" : "minecraft:exposed_cut_copper_slab", + "damage" : 32767 + }, + { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -366, + "id" : "minecraft:waxed_exposed_cut_copper_slab", + "blockRuntimeId" : 247 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:waxing_exposed_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -355, + "id" : "minecraft:exposed_cut_copper_stairs", + "damage" : 32767 + }, + { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -359, + "id" : "minecraft:waxed_exposed_cut_copper_stairs", + "blockRuntimeId" : 3891 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:waxing_oxidized_copper", + "type" : 0, + "input" : [ + { + "legacyId" : -343, + "id" : "minecraft:oxidized_copper", + "damage" : 32767 + }, + { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -446, + "id" : "minecraft:waxed_oxidized_copper", + "blockRuntimeId" : 7484 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:waxing_oxidized_cut_copper", + "type" : 0, + "input" : [ + { + "legacyId" : -350, + "id" : "minecraft:oxidized_cut_copper", + "damage" : 32767 + }, + { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -447, + "id" : "minecraft:waxed_oxidized_cut_copper", + "blockRuntimeId" : 214 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:waxing_oxidized_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -364, + "id" : "minecraft:oxidized_cut_copper_slab", + "damage" : 32767 + }, + { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -449, + "id" : "minecraft:waxed_oxidized_cut_copper_slab", + "blockRuntimeId" : 716 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:waxing_oxidized_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -357, + "id" : "minecraft:oxidized_cut_copper_stairs", + "damage" : 32767 + }, + { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -448, + "id" : "minecraft:waxed_oxidized_cut_copper_stairs", + "blockRuntimeId" : 5764 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:waxing_weathered_copper", + "type" : 0, + "input" : [ + { + "legacyId" : -342, + "id" : "minecraft:weathered_copper", + "damage" : 32767 + }, + { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -346, + "id" : "minecraft:waxed_weathered_copper", + "blockRuntimeId" : 715 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:waxing_weathered_cut_copper", + "type" : 0, + "input" : [ + { + "legacyId" : -349, + "id" : "minecraft:weathered_cut_copper", + "damage" : 32767 + }, + { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -353, + "id" : "minecraft:waxed_weathered_cut_copper", + "blockRuntimeId" : 4807 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:waxing_weathered_cut_copper_slab", + "type" : 0, + "input" : [ + { + "legacyId" : -363, + "id" : "minecraft:weathered_cut_copper_slab", + "damage" : 32767 + }, + { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -367, + "id" : "minecraft:waxed_weathered_cut_copper_slab", + "blockRuntimeId" : 6436 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:waxing_weathered_cut_copper_stairs", + "type" : 0, + "input" : [ + { + "legacyId" : -356, + "id" : "minecraft:weathered_cut_copper_stairs", + "damage" : 32767 + }, + { + "legacyId" : 591, + "id" : "minecraft:honeycomb", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : -360, + "id" : "minecraft:waxed_weathered_cut_copper_stairs", + "blockRuntimeId" : 6091 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:wheat", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 170, + "id" : "minecraft:hay_block", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 334, + "id" : "minecraft:wheat", + "count" : 9 + } + ], + "shape" : [ + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:white_banner", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool" + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 567, + "id" : "minecraft:banner", + "damage" : 15 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:white_candle", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye" + } + ], + "output" : [ + { + "legacyId" : -413, + "id" : "minecraft:white_candle", + "blockRuntimeId" : 5250 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:white_candle_from_bonemeal", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal" + } + ], + "output" : [ + { + "legacyId" : -413, + "id" : "minecraft:white_candle", + "blockRuntimeId" : 5250 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:white_carpet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool" + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 3, + "blockRuntimeId" : 956 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:white_concrete_powder", + "type" : 0, + "input" : [ + { + "legacyId" : 410, + "id" : "minecraft:white_dye" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6229 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:white_concrete_powder_from_bonemeal", + "type" : 0, + "input" : [ + { + "legacyId" : 411, + "id" : "minecraft:bone_meal" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6229 + } + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:white_dye_from_bone_meal", + "type" : 0, + "input" : [ + { + "legacyId" : 411, + "id" : "minecraft:bone_meal" + } + ], + "output" : [ + { + "legacyId" : 410, + "id" : "minecraft:white_dye" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:white_dye_from_lily_of_the_valley", + "type" : 0, + "input" : [ + { + "legacyId" : 38, + "id" : "minecraft:red_flower", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 410, + "id" : "minecraft:white_dye" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:white_stained_glass", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 410, + "id" : "minecraft:white_dye" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1140 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:white_stained_glass_from_bonemeal", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 411, + "id" : "minecraft:bone_meal" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1140 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:white_stained_glass_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 241, + "id" : "minecraft:stained_glass" + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 16, + "blockRuntimeId" : 4808 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:white_stained_glass_pane_from_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 102, + "id" : "minecraft:glass_pane", + "damage" : 32767 + }, + "B" : { + "legacyId" : 410, + "id" : "minecraft:white_dye" + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 8, + "blockRuntimeId" : 4808 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:white_stained_hardened_clay", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 410, + "id" : "minecraft:white_dye" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6099 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:white_stained_hardened_clay_from_bonemeal", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 411, + "id" : "minecraft:bone_meal" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6099 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 1 + }, + { + "id" : "minecraft:wooden_axe_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 311, + "id" : "minecraft:wooden_axe" + } + ], + "shape" : [ + "AA", + "AB", + " B" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:wooden_axe_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 311, + "id" : "minecraft:wooden_axe" + } + ], + "shape" : [ + "AA", + "AB", + " B" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:wooden_door", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks" + } + }, + "output" : [ + { + "legacyId" : 359, + "id" : "minecraft:wooden_door", + "count" : 3 + } + ], + "shape" : [ + "AA", + "AA", + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:wooden_hoe_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 329, + "id" : "minecraft:wooden_hoe" + } + ], + "shape" : [ + "AA ", + " B ", + " B " + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:wooden_hoe_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 329, + "id" : "minecraft:wooden_hoe" + } + ], + "shape" : [ + "AA ", + " B ", + " B " + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:wooden_pickaxe_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 310, + "id" : "minecraft:wooden_pickaxe" + } + ], + "shape" : [ + "AAA", + " B ", + " B " + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:wooden_pickaxe_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 310, + "id" : "minecraft:wooden_pickaxe" + } + ], + "shape" : [ + "AAA", + " B ", + " B " + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:wooden_shovel_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 309, + "id" : "minecraft:wooden_shovel" + } + ], + "shape" : [ + "A", + "B", + "B" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:wooden_shovel_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 309, + "id" : "minecraft:wooden_shovel" + } + ], + "shape" : [ + "A", + "B", + "B" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:wooden_sword_from_crimson_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -242, + "id" : "minecraft:crimson_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 308, + "id" : "minecraft:wooden_sword" + } + ], + "shape" : [ + "A", + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:wooden_sword_from_warped_planks", + "type" : 1, + "input" : { + "A" : { + "legacyId" : -243, + "id" : "minecraft:warped_planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 308, + "id" : "minecraft:wooden_sword" + } + ], + "shape" : [ + "A", + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 2 + }, + { + "id" : "minecraft:writable_book", + "type" : 0, + "input" : [ + { + "legacyId" : 387, + "id" : "minecraft:book", + "damage" : 32767 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac" + }, + { + "legacyId" : 327, + "id" : "minecraft:feather", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 510, + "id" : "minecraft:writable_book" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:yellow_banner", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 567, + "id" : "minecraft:banner", + "damage" : 11 + } + ], + "shape" : [ + "AAA", + "AAA", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:yellow_candle", + "type" : 0, + "input" : [ + { + "legacyId" : -412, + "id" : "minecraft:candle", + "damage" : 32767 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye" + } + ], + "output" : [ + { + "legacyId" : -417, + "id" : "minecraft:yellow_candle", + "blockRuntimeId" : 6115 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:yellow_carpet", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 3, + "blockRuntimeId" : 960 + } + ], + "shape" : [ + "AA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:yellow_carpet_from_white", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 171, + "id" : "minecraft:carpet" + }, + "B" : { + "legacyId" : 406, + "id" : "minecraft:yellow_dye" + } + }, + "output" : [ + { + "legacyId" : 171, + "id" : "minecraft:carpet", + "count" : 8, + "blockRuntimeId" : 960 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:yellow_concrete_powder", + "type" : 0, + "input" : [ + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 12, + "id" : "minecraft:sand" + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + }, + { + "legacyId" : 13, + "id" : "minecraft:gravel", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 237, + "id" : "minecraft:concrete_powder", + "count" : 8, + "blockRuntimeId" : 6233 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:yellow_dye_from_dandelion", + "type" : 0, + "input" : [ + { + "legacyId" : 37, + "id" : "minecraft:yellow_flower" + } + ], + "output" : [ + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye" + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:yellow_dye_from_sunflower", + "type" : 0, + "input" : [ + { + "legacyId" : 175, + "id" : "minecraft:double_plant" + } + ], + "output" : [ + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "count" : 2 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:yellow_stained_glass", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "damage" : 32767 + }, + "B" : { + "legacyId" : 406, + "id" : "minecraft:yellow_dye" + } + }, + "output" : [ + { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "count" : 8, + "blockRuntimeId" : 1144 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:yellow_stained_glass_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 241, + "id" : "minecraft:stained_glass", + "damage" : 4 + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 16, + "blockRuntimeId" : 4812 + } + ], + "shape" : [ + "AAA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:yellow_stained_glass_pane_from_pane", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 102, + "id" : "minecraft:glass_pane", + "damage" : 32767 + }, + "B" : { + "legacyId" : 406, + "id" : "minecraft:yellow_dye" + } + }, + "output" : [ + { + "legacyId" : 160, + "id" : "minecraft:stained_glass_pane", + "count" : 8, + "blockRuntimeId" : 4812 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "minecraft:yellow_stained_hardened_clay", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "damage" : 32767 + }, + "B" : { + "legacyId" : 406, + "id" : "minecraft:yellow_dye" + } + }, + "output" : [ + { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "count" : 8, + "blockRuntimeId" : 6103 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "oak_stairs_oak_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks" + } + }, + "output" : [ + { + "legacyId" : 53, + "id" : "minecraft:oak_stairs", + "count" : 4, + "blockRuntimeId" : 287 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_0_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star" + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAABwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_10_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAKBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_11_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 11 + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAALBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_12_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 12 + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAMBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_13_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAANBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_14_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAOBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_15_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAPBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_16_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star" + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAABwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_17_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAADBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_18_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAEBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_19_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAPBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_1_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAABBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_2_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAACBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_3_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAADBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_4_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAEBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_5_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAFBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_6_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAGBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_7_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAHBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_8_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAIBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_charge_9_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwoBAAAABw0ARmlyZXdvcmtDb2xvcgEAAAAJBwwARmlyZXdvcmtGYWRlAAAAAAEPAEZpcmV3b3JrRmxpY2tlcgABDQBGaXJld29ya1RyYWlsAAEMAEZpcmV3b3JrVHlwZQAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_0_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yIR0d/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_10_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 10, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yH8eA/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_11_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 11, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yPdj+/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_12_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 12, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9y2rM6/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_13_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 13, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yvU7H/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_14_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 14, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yHYD5/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_15_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 15, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9y8PDw/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_16_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yIR0d/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_17_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 3, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yMlSD/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_18_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 4, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yqkQ8/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_19_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 15, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAADwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9y8PDw/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_1_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 1, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yJi6w/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_2_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 2, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yFnxe/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_3_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 3, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAAAwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yMlSD/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_4_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 4, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yqkQ8/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_5_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 5, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yuDKJ/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_6_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 6, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABgcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9ynJwW/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_7_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 7, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAABwcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yl52d/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_8_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 8, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACAcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yUk9H/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_dye_9_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 520, + "id" : "minecraft:firework_star", + "damage" : 9, + "nbt_b64" : "CgAACg0ARmlyZXdvcmtzSXRlbQcNAEZpcmV3b3JrQ29sb3IBAAAACQcMAEZpcmV3b3JrRmFkZQAAAAABDwBGaXJld29ya0ZsaWNrZXIAAQ0ARmlyZXdvcmtUcmFpbAABDABGaXJld29ya1R5cGUAAAMLAGN1c3RvbUNvbG9yqovz/wA=" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "paper_sulphur_recipeId", + "type" : 0, + "input" : [ + { + "legacyId" : 386, + "id" : "minecraft:paper", + "damage" : 32767 + }, + { + "legacyId" : 328, + "id" : "minecraft:gunpowder", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 519, + "id" : "minecraft:firework_rocket", + "count" : 3, + "nbt_b64" : "CgAACgkARmlyZXdvcmtzCQoARXhwbG9zaW9ucwAAAAAAAQYARmxpZ2h0AQAA" + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "type" : 4, + "uuid" : "00000000-0000-0000-0000-000000000001" + }, + { + "id" : "shulkerBox_shulker_box_color_block_0_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 5 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_0_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 4 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_0_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 3 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_0_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 2 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_0_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 1 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_0_15_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box" + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_0_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 14 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_0_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 13 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_0_3_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 12 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_0_4_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 11 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_0_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 10 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_0_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 9 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_0_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 8 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_0_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 7 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_0_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 6 + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_10_0_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 15 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5271 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_10_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 4 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5271 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_10_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 3 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5271 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_10_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 2 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5271 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_10_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 1 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5271 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_10_15_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box" + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5271 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_10_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 14 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5271 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_10_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 13 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5271 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_10_3_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 12 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5271 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_10_4_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 11 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5271 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_10_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 10 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5271 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_10_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 9 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5271 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_10_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 8 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5271 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_10_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 7 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5271 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_10_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 6 + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5271 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_11_0_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 15 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5270 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_11_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 5 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5270 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_11_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 3 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5270 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_11_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 2 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5270 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_11_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 1 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5270 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_11_15_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box" + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5270 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_11_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 14 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5270 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_11_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 13 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5270 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_11_3_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 12 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5270 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_11_4_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 11 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5270 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_11_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 10 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5270 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_11_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 9 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5270 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_11_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 8 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5270 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_11_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 7 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5270 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_11_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 6 + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5270 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_12_0_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 15 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5269 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_12_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 5 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5269 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_12_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 4 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5269 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_12_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 2 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5269 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_12_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 1 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5269 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_12_15_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box" + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5269 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_12_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 14 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5269 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_12_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 13 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5269 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_12_3_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 12 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5269 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_12_4_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 11 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5269 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_12_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 10 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5269 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_12_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 9 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5269 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_12_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 8 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5269 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_12_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 7 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5269 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_12_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 6 + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5269 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_13_0_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 15 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5268 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_13_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 5 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5268 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_13_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 4 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5268 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_13_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 3 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5268 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_13_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 1 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5268 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_13_15_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box" + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5268 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_13_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 14 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5268 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_13_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 13 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5268 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_13_3_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 12 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5268 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_13_4_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 11 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5268 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_13_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 10 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5268 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_13_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 9 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5268 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_13_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 8 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5268 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_13_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 7 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5268 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_13_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 6 + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5268 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_14_0_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 15 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5267 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_14_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 5 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5267 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_14_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 4 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5267 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_14_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 3 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5267 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_14_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 2 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5267 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_14_15_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box" + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5267 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_14_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 14 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5267 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_14_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 13 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5267 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_14_3_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 12 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5267 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_14_4_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 11 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5267 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_14_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 10 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5267 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_14_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 9 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5267 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_14_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 8 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5267 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_14_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 7 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5267 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_14_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 6 + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5267 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_15_0_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 15 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_15_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 5 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_15_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 4 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_15_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 3 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_15_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 2 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_15_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 1 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_15_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 14 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_15_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 13 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_15_3_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 12 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_15_4_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 11 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_15_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 10 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_15_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 9 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_15_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 8 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_15_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 7 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_15_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 6 + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_16_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 5 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_16_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 4 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_16_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 3 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_16_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 2 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_16_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 1 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_16_15_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box" + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_16_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 14 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_16_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 13 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_16_3_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 12 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_16_4_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 11 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_16_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 10 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_16_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 9 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_16_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 8 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_16_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 7 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_16_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 6 + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_17_0_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 15 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_17_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 5 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_17_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 4 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_17_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 3 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_17_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 2 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_17_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 1 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_17_15_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box" + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_17_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 14 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_17_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 13 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_17_4_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 11 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_17_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 10 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_17_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 9 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_17_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 8 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_17_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 7 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_17_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 6 + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_18_0_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 15 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_18_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 5 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_18_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 4 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_18_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 3 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_18_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 2 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_18_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 1 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_18_15_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box" + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_18_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 14 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_18_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 13 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_18_3_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 12 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_18_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 10 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_18_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 9 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_18_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 8 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_18_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 7 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_18_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 6 + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_19_0_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 15 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_19_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 5 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_19_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 4 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_19_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 3 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_19_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 2 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_19_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 1 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_19_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 14 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_19_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 13 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_19_3_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 12 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_19_4_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 11 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_19_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 10 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_19_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 9 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_19_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 8 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_19_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 7 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_19_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 6 + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_1_0_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 15 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5280 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_1_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 5 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5280 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_1_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 4 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5280 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_1_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 3 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5280 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_1_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 2 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5280 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_1_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 1 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5280 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_1_15_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box" + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5280 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_1_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 13 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5280 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_1_3_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 12 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5280 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_1_4_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 11 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5280 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_1_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 10 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5280 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_1_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 9 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5280 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_1_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 8 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5280 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_1_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 7 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5280 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_1_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 6 + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5280 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_2_0_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 15 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5279 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_2_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 5 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5279 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_2_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 4 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5279 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_2_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 3 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5279 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_2_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 2 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5279 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_2_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 1 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5279 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_2_15_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box" + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5279 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_2_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 14 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5279 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_2_3_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 12 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5279 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_2_4_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 11 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5279 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_2_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 10 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5279 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_2_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 9 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5279 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_2_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 8 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5279 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_2_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 7 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5279 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_2_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 6 + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5279 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_3_0_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 15 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_3_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 5 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_3_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 4 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_3_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 3 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_3_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 2 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_3_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 1 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_3_15_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box" + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_3_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 14 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_3_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 13 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_3_4_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 11 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_3_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 10 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_3_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 9 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_3_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 8 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_3_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 7 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_3_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 6 + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_4_0_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 15 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_4_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 5 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_4_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 4 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_4_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 3 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_4_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 2 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_4_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 1 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_4_15_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box" + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_4_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 14 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_4_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 13 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_4_3_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 12 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_4_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 10 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_4_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 9 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_4_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 8 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_4_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 7 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_4_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 6 + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_5_0_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 15 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5276 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_5_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 5 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5276 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_5_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 4 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5276 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_5_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 3 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5276 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_5_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 2 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5276 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_5_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 1 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5276 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_5_15_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box" + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5276 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_5_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 14 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5276 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_5_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 13 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5276 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_5_3_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 12 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5276 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_5_4_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 11 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5276 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_5_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 9 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5276 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_5_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 8 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5276 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_5_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 7 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5276 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_5_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 6 + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5276 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_6_0_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 15 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5275 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_6_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 5 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5275 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_6_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 4 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5275 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_6_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 3 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5275 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_6_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 2 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5275 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_6_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 1 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5275 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_6_15_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box" + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5275 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_6_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 14 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5275 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_6_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 13 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5275 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_6_3_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 12 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5275 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_6_4_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 11 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5275 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_6_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 10 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5275 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_6_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 8 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5275 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_6_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 7 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5275 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_6_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 6 + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5275 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_7_0_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 15 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5274 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_7_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 5 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5274 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_7_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 4 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5274 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_7_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 3 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5274 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_7_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 2 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5274 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_7_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 1 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5274 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_7_15_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box" + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5274 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_7_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 14 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5274 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_7_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 13 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5274 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_7_3_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 12 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5274 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_7_4_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 11 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5274 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_7_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 10 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5274 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_7_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 9 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5274 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_7_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 7 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5274 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_7_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 6 + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5274 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_8_0_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 15 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5273 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_8_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 5 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5273 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_8_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 4 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5273 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_8_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 3 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5273 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_8_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 2 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5273 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_8_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 1 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5273 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_8_15_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box" + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5273 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_8_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 14 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5273 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_8_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 13 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5273 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_8_3_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 12 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5273 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_8_4_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 11 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5273 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_8_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 10 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5273 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_8_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 9 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5273 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_8_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 8 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5273 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_8_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 6 + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5273 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_9_0_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 15 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5272 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_9_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 5 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5272 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_9_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 4 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5272 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_9_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 3 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5272 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_9_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 2 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5272 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_9_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 1 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5272 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_9_15_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box" + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5272 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_9_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 14 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5272 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_9_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 13 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5272 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_9_3_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 12 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5272 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_9_4_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 11 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5272 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_9_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 10 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5272 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_9_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 9 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5272 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_9_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 8 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5272 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_block_9_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "damage" : 7 + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5272 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_0_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_10_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5271 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_11_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5270 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_12_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5269 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_13_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5268 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_14_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5267 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_15_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_16_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5281 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_17_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_18_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_19_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5266 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_1_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5280 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_2_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5279 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_3_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5278 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_4_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5277 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_5_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5276 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_6_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5275 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_7_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5274 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_8_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5273 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "shulkerBox_shulker_box_color_dye_9_0", + "type" : 5, + "input" : [ + { + "legacyId" : 205, + "id" : "minecraft:undyed_shulker_box" + }, + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + } + ], + "output" : [ + { + "legacyId" : 218, + "id" : "minecraft:shulker_box", + "blockRuntimeId" : 5272 + } + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "slab3_endstonebrick_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 206, + "id" : "minecraft:end_bricks" + } + }, + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 6, + "blockRuntimeId" : 6614 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "spruce_stairs_spruce_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : 134, + "id" : "minecraft:spruce_stairs", + "count" : 4, + "blockRuntimeId" : 128 + } + ], + "shape" : [ + "A ", + "AA ", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stick_wood_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 320, + "id" : "minecraft:stick", + "count" : 4 + } + ], + "shape" : [ + "A", + "A" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "stoneslab2_RedSandstone_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 179, + "id" : "minecraft:red_sandstone" + } + }, + "output" : [ + { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "count" : 6, + "blockRuntimeId" : 6598 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab2_prismarine_bricks_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 168, + "id" : "minecraft:prismarine", + "damage" : 2 + } + }, + "output" : [ + { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "count" : 6, + "blockRuntimeId" : 6602 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab2_prismarine_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 168, + "id" : "minecraft:prismarine", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "count" : 6, + "blockRuntimeId" : 6601 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab2_purpur_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 201, + "id" : "minecraft:purpur_block" + } + }, + "output" : [ + { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "count" : 6, + "blockRuntimeId" : 6599 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab2_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 48, + "id" : "minecraft:mossy_cobblestone" + } + }, + "output" : [ + { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "count" : 6, + "blockRuntimeId" : 6603 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab2_rednetherbrick_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 215, + "id" : "minecraft:red_nether_brick" + } + }, + "output" : [ + { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "count" : 6, + "blockRuntimeId" : 6605 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab2_redsandstone_heiroglyphs_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 179, + "id" : "minecraft:red_sandstone", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "count" : 6, + "blockRuntimeId" : 6598 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab2_smoothsandstone_smooth_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 24, + "id" : "minecraft:sandstone", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "count" : 6, + "blockRuntimeId" : 6604 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab3_andesite_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 5 + } + }, + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 6, + "blockRuntimeId" : 6617 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab3_diorite_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 6, + "blockRuntimeId" : 6618 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab3_granite", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 6, + "blockRuntimeId" : 6620 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab3_polishedGranite_GraniteSmooth_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 2 + } + }, + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 6, + "blockRuntimeId" : 6621 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab3_polished_andesite_andesitesmooth_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 6 + } + }, + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 6, + "blockRuntimeId" : 6616 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab3_polished_diorite_dioritesmooth_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "damage" : 4 + } + }, + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 6, + "blockRuntimeId" : 6619 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab3_smooth_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 179, + "id" : "minecraft:red_sandstone", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : -162, + "id" : "minecraft:double_stone_slab3", + "count" : 6, + "blockRuntimeId" : 6615 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab4_cut_redsandstone_cut_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 179, + "id" : "minecraft:red_sandstone", + "damage" : 2 + } + }, + "output" : [ + { + "legacyId" : -166, + "id" : "minecraft:double_stone_slab4", + "count" : 6, + "blockRuntimeId" : 6634 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab4_cut_sandstone_cut_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 24, + "id" : "minecraft:sandstone", + "damage" : 2 + } + }, + "output" : [ + { + "legacyId" : -166, + "id" : "minecraft:double_stone_slab4", + "count" : 6, + "blockRuntimeId" : 6633 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab4_smoothquartz_smooth_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 155, + "id" : "minecraft:quartz_block", + "damage" : 3 + } + }, + "output" : [ + { + "legacyId" : -166, + "id" : "minecraft:double_stone_slab4", + "count" : 6, + "blockRuntimeId" : 6631 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab_quartz_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 155, + "id" : "minecraft:quartz_block" + } + }, + "output" : [ + { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "count" : 6, + "blockRuntimeId" : 255 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 168, + "id" : "minecraft:prismarine" + } + }, + "output" : [ + { + "legacyId" : 182, + "id" : "minecraft:double_stone_slab2", + "count" : 6, + "blockRuntimeId" : 6600 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "stoneslab_sandstone_heiroglyphs_recipeId", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 24, + "id" : "minecraft:sandstone", + "damage" : 1 + } + }, + "output" : [ + { + "legacyId" : 44, + "id" : "minecraft:double_stone_slab", + "count" : 6, + "blockRuntimeId" : 250 + } + ], + "shape" : [ + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "tool_material_recipe_0_0", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 310, + "id" : "minecraft:wooden_pickaxe" + } + ], + "shape" : [ + "AAA", + " B ", + " B " + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "tool_material_recipe_0_1", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 309, + "id" : "minecraft:wooden_shovel" + } + ], + "shape" : [ + "A", + "B", + "B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "tool_material_recipe_0_2", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 311, + "id" : "minecraft:wooden_axe" + } + ], + "shape" : [ + "AA", + "AB", + " B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "tool_material_recipe_0_3", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 329, + "id" : "minecraft:wooden_hoe" + } + ], + "shape" : [ + "AA", + " B", + " B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "type" : 4, + "uuid" : "aecd2294-4b94-434b-8667-4499bb2c9327" + }, + { + "id" : "weapon_arrow_recipe_10", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 10 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 11, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_11", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 11 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 12, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_12", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 12 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 13, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_13", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 13 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 14, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_14", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 14 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 15, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_15", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 15 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 16, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_16", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 16 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 17, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_17", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 17 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 18, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_18", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 18 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 19, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_19", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 19 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 20, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_20", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 20 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 21, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_21", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 21 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 22, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_22", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 22 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 23, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_23", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 23 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 24, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_24", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 24 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 25, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_25", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 25 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 26, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_26", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 26 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 27, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_27", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 27 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 28, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_28", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 28 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 29, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_29", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 29 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 30, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_30", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 30 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 31, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_31", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 31 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 32, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_32", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 32 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 33, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_33", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 33 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 34, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_34", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 34 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 35, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_35", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 35 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 36, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_36", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 36 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 37, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_37", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 37 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 38, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_38", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 38 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 39, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_39", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 39 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 40, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_40", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 40 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 41, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_41", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 41 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 42, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_42", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 42 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 43, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_5", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 5 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 6, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_6", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 6 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 7, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_7", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 7 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 8, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_8", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 8 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 9, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_arrow_recipe_9", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 301, + "id" : "minecraft:arrow" + }, + "B" : { + "legacyId" : 562, + "id" : "minecraft:lingering_potion", + "damage" : 9 + } + }, + "output" : [ + { + "legacyId" : 301, + "id" : "minecraft:arrow", + "damage" : 10, + "count" : 8 + } + ], + "shape" : [ + "AAA", + "ABA", + "AAA" + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "weapon_stick_recipe_0_0", + "type" : 1, + "input" : { + "A" : { + "legacyId" : 5, + "id" : "minecraft:planks", + "damage" : 32767 + }, + "B" : { + "legacyId" : 320, + "id" : "minecraft:stick", + "damage" : 32767 + } + }, + "output" : [ + { + "legacyId" : 308, + "id" : "minecraft:wooden_sword" + } + ], + "shape" : [ + "A", + "A", + "B" + ], + "block" : "crafting_table", + "priority" : 0 + }, + { + "id" : "wool_dye_wool_0_1", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_0_10", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_0_11", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_0_12", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_0_13", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_0_14", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_0_15", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool" + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_0_2", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_0_3", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_0_4", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_0_5", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_0_6", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_0_7", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_0_8", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_0_9", + "type" : 0, + "input" : [ + { + "legacyId" : 413, + "id" : "minecraft:ink_sac", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_10_0", + "type" : 0, + "input" : [ + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3468 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_10_1", + "type" : 0, + "input" : [ + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3468 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_10_11", + "type" : 0, + "input" : [ + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3468 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_10_12", + "type" : 0, + "input" : [ + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3468 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_10_13", + "type" : 0, + "input" : [ + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3468 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_10_14", + "type" : 0, + "input" : [ + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3468 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_10_15", + "type" : 0, + "input" : [ + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool" + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3468 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_10_2", + "type" : 0, + "input" : [ + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3468 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_10_3", + "type" : 0, + "input" : [ + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3468 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_10_4", + "type" : 0, + "input" : [ + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3468 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_10_5", + "type" : 0, + "input" : [ + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3468 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_10_6", + "type" : 0, + "input" : [ + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3468 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_10_7", + "type" : 0, + "input" : [ + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3468 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_10_8", + "type" : 0, + "input" : [ + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3468 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_10_9", + "type" : 0, + "input" : [ + { + "legacyId" : 405, + "id" : "minecraft:lime_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3468 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_11_0", + "type" : 0, + "input" : [ + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3467 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_11_1", + "type" : 0, + "input" : [ + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3467 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_11_10", + "type" : 0, + "input" : [ + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3467 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_11_12", + "type" : 0, + "input" : [ + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3467 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_11_13", + "type" : 0, + "input" : [ + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3467 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_11_14", + "type" : 0, + "input" : [ + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3467 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_11_15", + "type" : 0, + "input" : [ + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool" + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3467 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_11_2", + "type" : 0, + "input" : [ + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3467 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_11_3", + "type" : 0, + "input" : [ + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3467 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_11_4", + "type" : 0, + "input" : [ + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3467 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_11_5", + "type" : 0, + "input" : [ + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3467 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_11_6", + "type" : 0, + "input" : [ + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3467 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_11_7", + "type" : 0, + "input" : [ + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3467 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_11_8", + "type" : 0, + "input" : [ + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3467 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_11_9", + "type" : 0, + "input" : [ + { + "legacyId" : 406, + "id" : "minecraft:yellow_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3467 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_12_0", + "type" : 0, + "input" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3466 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_12_1", + "type" : 0, + "input" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3466 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_12_10", + "type" : 0, + "input" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3466 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_12_11", + "type" : 0, + "input" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3466 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_12_13", + "type" : 0, + "input" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3466 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_12_14", + "type" : 0, + "input" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3466 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_12_15", + "type" : 0, + "input" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool" + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3466 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_12_2", + "type" : 0, + "input" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3466 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_12_3", + "type" : 0, + "input" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3466 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_12_4", + "type" : 0, + "input" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3466 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_12_5", + "type" : 0, + "input" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3466 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_12_6", + "type" : 0, + "input" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3466 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_12_7", + "type" : 0, + "input" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3466 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_12_8", + "type" : 0, + "input" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3466 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_12_9", + "type" : 0, + "input" : [ + { + "legacyId" : 407, + "id" : "minecraft:light_blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3466 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_13_0", + "type" : 0, + "input" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3465 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_13_1", + "type" : 0, + "input" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3465 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_13_10", + "type" : 0, + "input" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3465 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_13_11", + "type" : 0, + "input" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3465 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_13_12", + "type" : 0, + "input" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3465 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_13_14", + "type" : 0, + "input" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3465 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_13_15", + "type" : 0, + "input" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool" + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3465 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_13_2", + "type" : 0, + "input" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3465 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_13_3", + "type" : 0, + "input" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3465 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_13_4", + "type" : 0, + "input" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3465 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_13_5", + "type" : 0, + "input" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3465 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_13_6", + "type" : 0, + "input" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3465 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_13_7", + "type" : 0, + "input" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3465 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_13_8", + "type" : 0, + "input" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3465 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_13_9", + "type" : 0, + "input" : [ + { + "legacyId" : 408, + "id" : "minecraft:magenta_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3465 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_14_0", + "type" : 0, + "input" : [ + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3464 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_14_1", + "type" : 0, + "input" : [ + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3464 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_14_10", + "type" : 0, + "input" : [ + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3464 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_14_11", + "type" : 0, + "input" : [ + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3464 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_14_12", + "type" : 0, + "input" : [ + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3464 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_14_13", + "type" : 0, + "input" : [ + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3464 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_14_15", + "type" : 0, + "input" : [ + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool" + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3464 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_14_2", + "type" : 0, + "input" : [ + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3464 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_14_3", + "type" : 0, + "input" : [ + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3464 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_14_4", + "type" : 0, + "input" : [ + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3464 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_14_5", + "type" : 0, + "input" : [ + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3464 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_14_6", + "type" : 0, + "input" : [ + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3464 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_14_7", + "type" : 0, + "input" : [ + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3464 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_14_8", + "type" : 0, + "input" : [ + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3464 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_14_9", + "type" : 0, + "input" : [ + { + "legacyId" : 409, + "id" : "minecraft:orange_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3464 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_15_0", + "type" : 0, + "input" : [ + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_15_1", + "type" : 0, + "input" : [ + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_15_10", + "type" : 0, + "input" : [ + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_15_11", + "type" : 0, + "input" : [ + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_15_12", + "type" : 0, + "input" : [ + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_15_13", + "type" : 0, + "input" : [ + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_15_14", + "type" : 0, + "input" : [ + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_15_2", + "type" : 0, + "input" : [ + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_15_3", + "type" : 0, + "input" : [ + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_15_4", + "type" : 0, + "input" : [ + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_15_5", + "type" : 0, + "input" : [ + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_15_6", + "type" : 0, + "input" : [ + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_15_7", + "type" : 0, + "input" : [ + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_15_8", + "type" : 0, + "input" : [ + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_15_9", + "type" : 0, + "input" : [ + { + "legacyId" : 411, + "id" : "minecraft:bone_meal", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_16_1", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_16_10", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_16_11", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_16_12", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_16_13", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_16_14", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_16_15", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool" + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_16_2", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_16_3", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_16_4", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_16_5", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_16_6", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_16_7", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_16_8", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_16_9", + "type" : 0, + "input" : [ + { + "legacyId" : 395, + "id" : "minecraft:black_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3478 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_17_0", + "type" : 0, + "input" : [ + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_17_1", + "type" : 0, + "input" : [ + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_17_10", + "type" : 0, + "input" : [ + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_17_11", + "type" : 0, + "input" : [ + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_17_12", + "type" : 0, + "input" : [ + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_17_13", + "type" : 0, + "input" : [ + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_17_14", + "type" : 0, + "input" : [ + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_17_15", + "type" : 0, + "input" : [ + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool" + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_17_2", + "type" : 0, + "input" : [ + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_17_4", + "type" : 0, + "input" : [ + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_17_5", + "type" : 0, + "input" : [ + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_17_6", + "type" : 0, + "input" : [ + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_17_7", + "type" : 0, + "input" : [ + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_17_8", + "type" : 0, + "input" : [ + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_17_9", + "type" : 0, + "input" : [ + { + "legacyId" : 398, + "id" : "minecraft:brown_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_18_0", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_18_1", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_18_10", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_18_11", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_18_12", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_18_13", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_18_14", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_18_15", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool" + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_18_2", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_18_3", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_18_5", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_18_6", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_18_7", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_18_8", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_18_9", + "type" : 0, + "input" : [ + { + "legacyId" : 399, + "id" : "minecraft:blue_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_19_0", + "type" : 0, + "input" : [ + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_19_1", + "type" : 0, + "input" : [ + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_19_10", + "type" : 0, + "input" : [ + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_19_11", + "type" : 0, + "input" : [ + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_19_12", + "type" : 0, + "input" : [ + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_19_13", + "type" : 0, + "input" : [ + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_19_14", + "type" : 0, + "input" : [ + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_19_2", + "type" : 0, + "input" : [ + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_19_3", + "type" : 0, + "input" : [ + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_19_4", + "type" : 0, + "input" : [ + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_19_5", + "type" : 0, + "input" : [ + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_19_6", + "type" : 0, + "input" : [ + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_19_7", + "type" : 0, + "input" : [ + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_19_8", + "type" : 0, + "input" : [ + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_19_9", + "type" : 0, + "input" : [ + { + "legacyId" : 410, + "id" : "minecraft:white_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3463 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_1_0", + "type" : 0, + "input" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3477 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_1_10", + "type" : 0, + "input" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3477 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_1_11", + "type" : 0, + "input" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3477 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_1_12", + "type" : 0, + "input" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3477 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_1_13", + "type" : 0, + "input" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3477 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_1_14", + "type" : 0, + "input" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3477 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_1_15", + "type" : 0, + "input" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool" + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3477 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_1_2", + "type" : 0, + "input" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3477 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_1_3", + "type" : 0, + "input" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3477 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_1_4", + "type" : 0, + "input" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3477 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_1_5", + "type" : 0, + "input" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3477 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_1_6", + "type" : 0, + "input" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3477 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_1_7", + "type" : 0, + "input" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3477 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_1_8", + "type" : 0, + "input" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3477 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_1_9", + "type" : 0, + "input" : [ + { + "legacyId" : 396, + "id" : "minecraft:red_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3477 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_2_0", + "type" : 0, + "input" : [ + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3476 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_2_1", + "type" : 0, + "input" : [ + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3476 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_2_10", + "type" : 0, + "input" : [ + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3476 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_2_11", + "type" : 0, + "input" : [ + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3476 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_2_12", + "type" : 0, + "input" : [ + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3476 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_2_13", + "type" : 0, + "input" : [ + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3476 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_2_14", + "type" : 0, + "input" : [ + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3476 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_2_15", + "type" : 0, + "input" : [ + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool" + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3476 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_2_3", + "type" : 0, + "input" : [ + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3476 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_2_4", + "type" : 0, + "input" : [ + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3476 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_2_5", + "type" : 0, + "input" : [ + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3476 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_2_6", + "type" : 0, + "input" : [ + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3476 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_2_7", + "type" : 0, + "input" : [ + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3476 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_2_8", + "type" : 0, + "input" : [ + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3476 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_2_9", + "type" : 0, + "input" : [ + { + "legacyId" : 397, + "id" : "minecraft:green_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3476 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_3_0", + "type" : 0, + "input" : [ + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_3_1", + "type" : 0, + "input" : [ + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_3_10", + "type" : 0, + "input" : [ + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_3_11", + "type" : 0, + "input" : [ + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_3_12", + "type" : 0, + "input" : [ + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_3_13", + "type" : 0, + "input" : [ + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_3_14", + "type" : 0, + "input" : [ + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_3_15", + "type" : 0, + "input" : [ + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool" + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_3_2", + "type" : 0, + "input" : [ + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_3_4", + "type" : 0, + "input" : [ + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_3_5", + "type" : 0, + "input" : [ + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_3_6", + "type" : 0, + "input" : [ + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_3_7", + "type" : 0, + "input" : [ + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_3_8", + "type" : 0, + "input" : [ + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_3_9", + "type" : 0, + "input" : [ + { + "legacyId" : 412, + "id" : "minecraft:cocoa_beans", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3475 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_4_0", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_4_1", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_4_10", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_4_11", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_4_12", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_4_13", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_4_14", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_4_15", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool" + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_4_2", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_4_3", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_4_5", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_4_6", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_4_7", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_4_8", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_4_9", + "type" : 0, + "input" : [ + { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3474 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_5_0", + "type" : 0, + "input" : [ + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3473 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_5_1", + "type" : 0, + "input" : [ + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3473 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_5_10", + "type" : 0, + "input" : [ + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3473 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_5_11", + "type" : 0, + "input" : [ + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3473 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_5_12", + "type" : 0, + "input" : [ + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3473 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_5_13", + "type" : 0, + "input" : [ + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3473 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_5_14", + "type" : 0, + "input" : [ + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3473 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_5_15", + "type" : 0, + "input" : [ + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool" + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3473 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_5_2", + "type" : 0, + "input" : [ + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3473 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_5_3", + "type" : 0, + "input" : [ + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3473 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_5_4", + "type" : 0, + "input" : [ + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3473 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_5_6", + "type" : 0, + "input" : [ + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3473 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_5_7", + "type" : 0, + "input" : [ + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3473 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_5_8", + "type" : 0, + "input" : [ + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3473 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_5_9", + "type" : 0, + "input" : [ + { + "legacyId" : 400, + "id" : "minecraft:purple_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3473 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_6_0", + "type" : 0, + "input" : [ + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3472 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_6_1", + "type" : 0, + "input" : [ + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3472 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_6_10", + "type" : 0, + "input" : [ + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3472 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_6_11", + "type" : 0, + "input" : [ + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3472 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_6_12", + "type" : 0, + "input" : [ + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3472 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_6_13", + "type" : 0, + "input" : [ + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3472 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_6_14", + "type" : 0, + "input" : [ + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3472 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_6_15", + "type" : 0, + "input" : [ + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool" + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3472 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_6_2", + "type" : 0, + "input" : [ + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3472 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_6_3", + "type" : 0, + "input" : [ + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3472 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_6_4", + "type" : 0, + "input" : [ + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3472 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_6_5", + "type" : 0, + "input" : [ + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3472 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_6_7", + "type" : 0, + "input" : [ + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3472 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_6_8", + "type" : 0, + "input" : [ + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3472 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_6_9", + "type" : 0, + "input" : [ + { + "legacyId" : 401, + "id" : "minecraft:cyan_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3472 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_7_0", + "type" : 0, + "input" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3471 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_7_1", + "type" : 0, + "input" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3471 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_7_10", + "type" : 0, + "input" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3471 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_7_11", + "type" : 0, + "input" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3471 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_7_12", + "type" : 0, + "input" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3471 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_7_13", + "type" : 0, + "input" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3471 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_7_14", + "type" : 0, + "input" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3471 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_7_15", + "type" : 0, + "input" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool" + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3471 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_7_2", + "type" : 0, + "input" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3471 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_7_3", + "type" : 0, + "input" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3471 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_7_4", + "type" : 0, + "input" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3471 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_7_5", + "type" : 0, + "input" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3471 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_7_6", + "type" : 0, + "input" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3471 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_7_8", + "type" : 0, + "input" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3471 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_7_9", + "type" : 0, + "input" : [ + { + "legacyId" : 402, + "id" : "minecraft:light_gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3471 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_8_0", + "type" : 0, + "input" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3470 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_8_1", + "type" : 0, + "input" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3470 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_8_10", + "type" : 0, + "input" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3470 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_8_11", + "type" : 0, + "input" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3470 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_8_12", + "type" : 0, + "input" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3470 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_8_13", + "type" : 0, + "input" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3470 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_8_14", + "type" : 0, + "input" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3470 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_8_15", + "type" : 0, + "input" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool" + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3470 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_8_2", + "type" : 0, + "input" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3470 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_8_3", + "type" : 0, + "input" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3470 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_8_4", + "type" : 0, + "input" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3470 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_8_5", + "type" : 0, + "input" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3470 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_8_6", + "type" : 0, + "input" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3470 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_8_7", + "type" : 0, + "input" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3470 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_8_9", + "type" : 0, + "input" : [ + { + "legacyId" : 403, + "id" : "minecraft:gray_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 6 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3470 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_9_0", + "type" : 0, + "input" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 15 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3469 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_9_1", + "type" : 0, + "input" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 14 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3469 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_9_10", + "type" : 0, + "input" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 5 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3469 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_9_11", + "type" : 0, + "input" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 4 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3469 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_9_12", + "type" : 0, + "input" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 3 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3469 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_9_13", + "type" : 0, + "input" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 2 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3469 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_9_14", + "type" : 0, + "input" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 1 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3469 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_9_15", + "type" : 0, + "input" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool" + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3469 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_9_2", + "type" : 0, + "input" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 13 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3469 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_9_3", + "type" : 0, + "input" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 12 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3469 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_9_4", + "type" : 0, + "input" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 11 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3469 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_9_5", + "type" : 0, + "input" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 10 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3469 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_9_6", + "type" : 0, + "input" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 9 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3469 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_9_7", + "type" : 0, + "input" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 8 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3469 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "id" : "wool_dye_wool_9_8", + "type" : 0, + "input" : [ + { + "legacyId" : 404, + "id" : "minecraft:pink_dye", + "damage" : 32767 + }, + { + "legacyId" : 35, + "id" : "minecraft:wool", + "damage" : 7 + } + ], + "output" : [ + { + "legacyId" : 35, + "id" : "minecraft:wool", + "blockRuntimeId" : 3469 + } + ], + "block" : "crafting_table", + "priority" : 50 + }, + { + "type" : 3, + "input" : { + "legacyId" : -408, + "id" : "minecraft:deepslate_copper_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 504, + "id" : "minecraft:copper_ingot", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -408, + "id" : "minecraft:deepslate_copper_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 504, + "id" : "minecraft:copper_ingot", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -407, + "id" : "minecraft:deepslate_emerald_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 512, + "id" : "minecraft:emerald", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -407, + "id" : "minecraft:deepslate_emerald_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 512, + "id" : "minecraft:emerald", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -406, + "id" : "minecraft:deepslate_coal_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -406, + "id" : "minecraft:deepslate_coal_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -405, + "id" : "minecraft:deepslate_diamond_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 304, + "id" : "minecraft:diamond", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -405, + "id" : "minecraft:deepslate_diamond_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 304, + "id" : "minecraft:diamond", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -403, + "id" : "minecraft:deepslate_redstone_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -403, + "id" : "minecraft:deepslate_redstone_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -402, + "id" : "minecraft:deepslate_gold_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -402, + "id" : "minecraft:deepslate_gold_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -401, + "id" : "minecraft:deepslate_iron_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -401, + "id" : "minecraft:deepslate_iron_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -400, + "id" : "minecraft:deepslate_lapis_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -400, + "id" : "minecraft:deepslate_lapis_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli" + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -391, + "id" : "minecraft:deepslate_bricks", + "damage" : -1 + }, + "output" : { + "legacyId" : -410, + "id" : "minecraft:cracked_deepslate_bricks", + "blockRuntimeId" : 5314 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -387, + "id" : "minecraft:deepslate_tiles", + "damage" : -1 + }, + "output" : { + "legacyId" : -409, + "id" : "minecraft:cracked_deepslate_tiles", + "blockRuntimeId" : 4149 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -379, + "id" : "minecraft:cobbled_deepslate", + "damage" : -1 + }, + "output" : { + "legacyId" : -378, + "id" : "minecraft:deepslate", + "blockRuntimeId" : 267 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -311, + "id" : "minecraft:copper_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 504, + "id" : "minecraft:copper_ingot", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -311, + "id" : "minecraft:copper_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 504, + "id" : "minecraft:copper_ingot", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -288, + "id" : "minecraft:nether_gold_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -288, + "id" : "minecraft:nether_gold_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -274, + "id" : "minecraft:polished_blackstone_bricks", + "damage" : -1 + }, + "output" : { + "legacyId" : -280, + "id" : "minecraft:cracked_polished_blackstone_bricks", + "blockRuntimeId" : 7156 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -271, + "id" : "minecraft:ancient_debris", + "damage" : -1 + }, + "output" : { + "legacyId" : 613, + "id" : "minecraft:netherite_scrap", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -271, + "id" : "minecraft:ancient_debris", + "damage" : -1 + }, + "output" : { + "legacyId" : 613, + "id" : "minecraft:netherite_scrap", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -234, + "id" : "minecraft:basalt", + "damage" : -1 + }, + "output" : { + "legacyId" : -377, + "id" : "minecraft:smooth_basalt", + "blockRuntimeId" : 1162 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -212, + "id" : "minecraft:wood" + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 1 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 2 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 3 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 4 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 5 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 8 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 9 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 10 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 11 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 12 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -212, + "id" : "minecraft:wood", + "damage" : 13 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -156, + "id" : "minecraft:sea_pickle", + "damage" : -1 + }, + "output" : { + "legacyId" : 405, + "id" : "minecraft:lime_dye" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -10, + "id" : "minecraft:stripped_oak_log", + "damage" : -1 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -9, + "id" : "minecraft:stripped_dark_oak_log", + "damage" : -1 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -8, + "id" : "minecraft:stripped_acacia_log", + "damage" : -1 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -7, + "id" : "minecraft:stripped_jungle_log", + "damage" : -1 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -6, + "id" : "minecraft:stripped_birch_log", + "damage" : -1 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : -5, + "id" : "minecraft:stripped_spruce_log", + "damage" : -1 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 1, + "id" : "minecraft:stone" + }, + "output" : { + "legacyId" : -183, + "id" : "minecraft:smooth_stone", + "blockRuntimeId" : 4514 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 4, + "id" : "minecraft:cobblestone", + "damage" : -1 + }, + "output" : { + "legacyId" : 1, + "id" : "minecraft:stone", + "blockRuntimeId" : 661 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 12, + "id" : "minecraft:sand", + "damage" : -1 + }, + "output" : { + "legacyId" : 20, + "id" : "minecraft:glass", + "blockRuntimeId" : 6088 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 14, + "id" : "minecraft:gold_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 14, + "id" : "minecraft:gold_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 15, + "id" : "minecraft:iron_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 15, + "id" : "minecraft:iron_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 16, + "id" : "minecraft:coal_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 16, + "id" : "minecraft:coal_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 302, + "id" : "minecraft:coal" + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 17, + "id" : "minecraft:log" + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 17, + "id" : "minecraft:log", + "damage" : 1 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 17, + "id" : "minecraft:log", + "damage" : 2 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 17, + "id" : "minecraft:log", + "damage" : 3 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 19, + "id" : "minecraft:sponge", + "damage" : 1 + }, + "output" : { + "legacyId" : 19, + "id" : "minecraft:sponge", + "blockRuntimeId" : 637 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 21, + "id" : "minecraft:lapis_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 21, + "id" : "minecraft:lapis_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 414, + "id" : "minecraft:lapis_lazuli" + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 24, + "id" : "minecraft:sandstone", + "damage" : -1 + }, + "output" : { + "legacyId" : 24, + "id" : "minecraft:sandstone", + "blockRuntimeId" : 3661 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 56, + "id" : "minecraft:diamond_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 304, + "id" : "minecraft:diamond", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 56, + "id" : "minecraft:diamond_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 304, + "id" : "minecraft:diamond", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 73, + "id" : "minecraft:redstone_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 73, + "id" : "minecraft:redstone_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 373, + "id" : "minecraft:redstone", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 81, + "id" : "minecraft:cactus", + "damage" : -1 + }, + "output" : { + "legacyId" : 397, + "id" : "minecraft:green_dye" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 82, + "id" : "minecraft:clay", + "damage" : -1 + }, + "output" : { + "legacyId" : 172, + "id" : "minecraft:hardened_clay", + "blockRuntimeId" : 649 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 87, + "id" : "minecraft:netherrack", + "damage" : -1 + }, + "output" : { + "legacyId" : 523, + "id" : "minecraft:netherbrick", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 98, + "id" : "minecraft:stonebrick" + }, + "output" : { + "legacyId" : 98, + "id" : "minecraft:stonebrick", + "blockRuntimeId" : 6440 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 112, + "id" : "minecraft:nether_brick", + "damage" : -1 + }, + "output" : { + "legacyId" : -303, + "id" : "minecraft:cracked_nether_bricks", + "blockRuntimeId" : 4484 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 129, + "id" : "minecraft:emerald_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 512, + "id" : "minecraft:emerald", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 129, + "id" : "minecraft:emerald_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 512, + "id" : "minecraft:emerald", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 153, + "id" : "minecraft:quartz_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 524, + "id" : "minecraft:quartz", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 153, + "id" : "minecraft:quartz_ore", + "damage" : -1 + }, + "output" : { + "legacyId" : 524, + "id" : "minecraft:quartz", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 155, + "id" : "minecraft:quartz_block" + }, + "output" : { + "legacyId" : 155, + "id" : "minecraft:quartz_block", + "blockRuntimeId" : 3704 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay" + }, + "output" : { + "legacyId" : 220, + "id" : "minecraft:white_glazed_terracotta", + "blockRuntimeId" : 5523 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "damage" : 1 + }, + "output" : { + "legacyId" : 221, + "id" : "minecraft:orange_glazed_terracotta", + "blockRuntimeId" : 1156 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "damage" : 2 + }, + "output" : { + "legacyId" : 222, + "id" : "minecraft:magenta_glazed_terracotta", + "blockRuntimeId" : 972 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "damage" : 3 + }, + "output" : { + "legacyId" : 223, + "id" : "minecraft:light_blue_glazed_terracotta", + "blockRuntimeId" : 5421 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "damage" : 4 + }, + "output" : { + "legacyId" : 224, + "id" : "minecraft:yellow_glazed_terracotta", + "blockRuntimeId" : 921 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "damage" : 5 + }, + "output" : { + "legacyId" : 225, + "id" : "minecraft:lime_glazed_terracotta", + "blockRuntimeId" : 221 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "damage" : 6 + }, + "output" : { + "legacyId" : 226, + "id" : "minecraft:pink_glazed_terracotta", + "blockRuntimeId" : 6430 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "damage" : 7 + }, + "output" : { + "legacyId" : 227, + "id" : "minecraft:gray_glazed_terracotta", + "blockRuntimeId" : 8195 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "damage" : 8 + }, + "output" : { + "legacyId" : 228, + "id" : "minecraft:silver_glazed_terracotta", + "blockRuntimeId" : 3536 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "damage" : 9 + }, + "output" : { + "legacyId" : 229, + "id" : "minecraft:cyan_glazed_terracotta", + "blockRuntimeId" : 5308 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "damage" : 10 + }, + "output" : { + "legacyId" : 219, + "id" : "minecraft:purple_glazed_terracotta", + "blockRuntimeId" : 6965 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "damage" : 11 + }, + "output" : { + "legacyId" : 231, + "id" : "minecraft:blue_glazed_terracotta", + "blockRuntimeId" : 5415 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "damage" : 12 + }, + "output" : { + "legacyId" : 232, + "id" : "minecraft:brown_glazed_terracotta", + "blockRuntimeId" : 3552 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "damage" : 13 + }, + "output" : { + "legacyId" : 233, + "id" : "minecraft:green_glazed_terracotta", + "blockRuntimeId" : 6501 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "damage" : 14 + }, + "output" : { + "legacyId" : 234, + "id" : "minecraft:red_glazed_terracotta", + "blockRuntimeId" : 4150 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 159, + "id" : "minecraft:stained_hardened_clay", + "damage" : 15 + }, + "output" : { + "legacyId" : 235, + "id" : "minecraft:black_glazed_terracotta", + "blockRuntimeId" : 5758 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 162, + "id" : "minecraft:log2" + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 162, + "id" : "minecraft:log2", + "damage" : 1 + }, + "output" : { + "legacyId" : 303, + "id" : "minecraft:charcoal" + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 179, + "id" : "minecraft:red_sandstone", + "damage" : -1 + }, + "output" : { + "legacyId" : 179, + "id" : "minecraft:red_sandstone", + "blockRuntimeId" : 6474 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 262, + "id" : "minecraft:porkchop", + "damage" : -1 + }, + "output" : { + "legacyId" : 263, + "id" : "minecraft:cooked_porkchop", + "damage" : 32767 + }, + "block" : "smoker" + }, + { + "type" : 3, + "input" : { + "legacyId" : 262, + "id" : "minecraft:porkchop", + "damage" : -1 + }, + "output" : { + "legacyId" : 263, + "id" : "minecraft:cooked_porkchop", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 262, + "id" : "minecraft:porkchop", + "damage" : -1 + }, + "output" : { + "legacyId" : 263, + "id" : "minecraft:cooked_porkchop", + "damage" : 32767 + }, + "block" : "soul_campfire" + }, + { + "type" : 3, + "input" : { + "legacyId" : 262, + "id" : "minecraft:porkchop", + "damage" : -1 + }, + "output" : { + "legacyId" : 263, + "id" : "minecraft:cooked_porkchop", + "damage" : 32767 + }, + "block" : "campfire" + }, + { + "type" : 3, + "input" : { + "legacyId" : 264, + "id" : "minecraft:cod", + "damage" : -1 + }, + "output" : { + "legacyId" : 268, + "id" : "minecraft:cooked_cod", + "damage" : 32767 + }, + "block" : "smoker" + }, + { + "type" : 3, + "input" : { + "legacyId" : 264, + "id" : "minecraft:cod", + "damage" : -1 + }, + "output" : { + "legacyId" : 268, + "id" : "minecraft:cooked_cod", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 264, + "id" : "minecraft:cod", + "damage" : -1 + }, + "output" : { + "legacyId" : 268, + "id" : "minecraft:cooked_cod", + "damage" : 32767 + }, + "block" : "soul_campfire" + }, + { + "type" : 3, + "input" : { + "legacyId" : 264, + "id" : "minecraft:cod", + "damage" : -1 + }, + "output" : { + "legacyId" : 268, + "id" : "minecraft:cooked_cod", + "damage" : 32767 + }, + "block" : "campfire" + }, + { + "type" : 3, + "input" : { + "legacyId" : 265, + "id" : "minecraft:salmon", + "damage" : -1 + }, + "output" : { + "legacyId" : 269, + "id" : "minecraft:cooked_salmon", + "damage" : 32767 + }, + "block" : "smoker" + }, + { + "type" : 3, + "input" : { + "legacyId" : 265, + "id" : "minecraft:salmon", + "damage" : -1 + }, + "output" : { + "legacyId" : 269, + "id" : "minecraft:cooked_salmon", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 265, + "id" : "minecraft:salmon", + "damage" : -1 + }, + "output" : { + "legacyId" : 269, + "id" : "minecraft:cooked_salmon", + "damage" : 32767 + }, + "block" : "soul_campfire" + }, + { + "type" : 3, + "input" : { + "legacyId" : 265, + "id" : "minecraft:salmon", + "damage" : -1 + }, + "output" : { + "legacyId" : 269, + "id" : "minecraft:cooked_salmon", + "damage" : 32767 + }, + "block" : "campfire" + }, + { + "type" : 3, + "input" : { + "legacyId" : 273, + "id" : "minecraft:beef", + "damage" : -1 + }, + "output" : { + "legacyId" : 274, + "id" : "minecraft:cooked_beef", + "damage" : 32767 + }, + "block" : "smoker" + }, + { + "type" : 3, + "input" : { + "legacyId" : 273, + "id" : "minecraft:beef", + "damage" : -1 + }, + "output" : { + "legacyId" : 274, + "id" : "minecraft:cooked_beef", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 273, + "id" : "minecraft:beef", + "damage" : -1 + }, + "output" : { + "legacyId" : 274, + "id" : "minecraft:cooked_beef", + "damage" : 32767 + }, + "block" : "soul_campfire" + }, + { + "type" : 3, + "input" : { + "legacyId" : 273, + "id" : "minecraft:beef", + "damage" : -1 + }, + "output" : { + "legacyId" : 274, + "id" : "minecraft:cooked_beef", + "damage" : 32767 + }, + "block" : "campfire" + }, + { + "type" : 3, + "input" : { + "legacyId" : 275, + "id" : "minecraft:chicken", + "damage" : -1 + }, + "output" : { + "legacyId" : 276, + "id" : "minecraft:cooked_chicken", + "damage" : 32767 + }, + "block" : "smoker" + }, + { + "type" : 3, + "input" : { + "legacyId" : 275, + "id" : "minecraft:chicken", + "damage" : -1 + }, + "output" : { + "legacyId" : 276, + "id" : "minecraft:cooked_chicken", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 275, + "id" : "minecraft:chicken", + "damage" : -1 + }, + "output" : { + "legacyId" : 276, + "id" : "minecraft:cooked_chicken", + "damage" : 32767 + }, + "block" : "soul_campfire" + }, + { + "type" : 3, + "input" : { + "legacyId" : 275, + "id" : "minecraft:chicken", + "damage" : -1 + }, + "output" : { + "legacyId" : 276, + "id" : "minecraft:cooked_chicken", + "damage" : 32767 + }, + "block" : "campfire" + }, + { + "type" : 3, + "input" : { + "legacyId" : 280, + "id" : "minecraft:potato", + "damage" : -1 + }, + "output" : { + "legacyId" : 281, + "id" : "minecraft:baked_potato", + "damage" : 32767 + }, + "block" : "smoker" + }, + { + "type" : 3, + "input" : { + "legacyId" : 280, + "id" : "minecraft:potato", + "damage" : -1 + }, + "output" : { + "legacyId" : 281, + "id" : "minecraft:baked_potato", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 280, + "id" : "minecraft:potato", + "damage" : -1 + }, + "output" : { + "legacyId" : 281, + "id" : "minecraft:baked_potato", + "damage" : 32767 + }, + "block" : "soul_campfire" + }, + { + "type" : 3, + "input" : { + "legacyId" : 280, + "id" : "minecraft:potato", + "damage" : -1 + }, + "output" : { + "legacyId" : 281, + "id" : "minecraft:baked_potato", + "damage" : 32767 + }, + "block" : "campfire" + }, + { + "type" : 3, + "input" : { + "legacyId" : 288, + "id" : "minecraft:rabbit", + "damage" : -1 + }, + "output" : { + "legacyId" : 289, + "id" : "minecraft:cooked_rabbit", + "damage" : 32767 + }, + "block" : "smoker" + }, + { + "type" : 3, + "input" : { + "legacyId" : 288, + "id" : "minecraft:rabbit", + "damage" : -1 + }, + "output" : { + "legacyId" : 289, + "id" : "minecraft:cooked_rabbit", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 288, + "id" : "minecraft:rabbit", + "damage" : -1 + }, + "output" : { + "legacyId" : 289, + "id" : "minecraft:cooked_rabbit", + "damage" : 32767 + }, + "block" : "soul_campfire" + }, + { + "type" : 3, + "input" : { + "legacyId" : 288, + "id" : "minecraft:rabbit", + "damage" : -1 + }, + "output" : { + "legacyId" : 289, + "id" : "minecraft:cooked_rabbit", + "damage" : 32767 + }, + "block" : "campfire" + }, + { + "type" : 3, + "input" : { + "legacyId" : 296, + "id" : "minecraft:iron_shovel", + "damage" : -1 + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 296, + "id" : "minecraft:iron_shovel", + "damage" : -1 + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 297, + "id" : "minecraft:iron_pickaxe", + "damage" : -1 + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 297, + "id" : "minecraft:iron_pickaxe", + "damage" : -1 + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 298, + "id" : "minecraft:iron_axe", + "damage" : -1 + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 298, + "id" : "minecraft:iron_axe", + "damage" : -1 + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 307, + "id" : "minecraft:iron_sword", + "damage" : -1 + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 307, + "id" : "minecraft:iron_sword", + "damage" : -1 + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 322, + "id" : "minecraft:golden_sword", + "damage" : -1 + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 322, + "id" : "minecraft:golden_sword", + "damage" : -1 + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 323, + "id" : "minecraft:golden_shovel", + "damage" : -1 + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 323, + "id" : "minecraft:golden_shovel", + "damage" : -1 + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 324, + "id" : "minecraft:golden_pickaxe", + "damage" : -1 + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 324, + "id" : "minecraft:golden_pickaxe", + "damage" : -1 + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 325, + "id" : "minecraft:golden_axe", + "damage" : -1 + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 325, + "id" : "minecraft:golden_axe", + "damage" : -1 + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 331, + "id" : "minecraft:iron_hoe", + "damage" : -1 + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 331, + "id" : "minecraft:iron_hoe", + "damage" : -1 + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 333, + "id" : "minecraft:golden_hoe", + "damage" : -1 + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 333, + "id" : "minecraft:golden_hoe", + "damage" : -1 + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 339, + "id" : "minecraft:chainmail_helmet" + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 339, + "id" : "minecraft:chainmail_helmet" + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 340, + "id" : "minecraft:chainmail_chestplate" + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 340, + "id" : "minecraft:chainmail_chestplate" + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 341, + "id" : "minecraft:chainmail_leggings" + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 341, + "id" : "minecraft:chainmail_leggings" + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 342, + "id" : "minecraft:chainmail_boots" + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 342, + "id" : "minecraft:chainmail_boots" + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 343, + "id" : "minecraft:iron_helmet" + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 343, + "id" : "minecraft:iron_helmet" + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 344, + "id" : "minecraft:iron_chestplate" + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 344, + "id" : "minecraft:iron_chestplate" + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 345, + "id" : "minecraft:iron_leggings" + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 345, + "id" : "minecraft:iron_leggings" + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 346, + "id" : "minecraft:iron_boots" + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 346, + "id" : "minecraft:iron_boots" + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 351, + "id" : "minecraft:golden_helmet" + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 351, + "id" : "minecraft:golden_helmet" + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 352, + "id" : "minecraft:golden_chestplate" + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 352, + "id" : "minecraft:golden_chestplate" + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 353, + "id" : "minecraft:golden_leggings" + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 353, + "id" : "minecraft:golden_leggings" + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 354, + "id" : "minecraft:golden_boots" + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 354, + "id" : "minecraft:golden_boots" + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 382, + "id" : "minecraft:kelp", + "damage" : -1 + }, + "output" : { + "legacyId" : 270, + "id" : "minecraft:dried_kelp", + "damage" : 32767 + }, + "block" : "smoker" + }, + { + "type" : 3, + "input" : { + "legacyId" : 382, + "id" : "minecraft:kelp", + "damage" : -1 + }, + "output" : { + "legacyId" : 270, + "id" : "minecraft:dried_kelp", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 382, + "id" : "minecraft:kelp", + "damage" : -1 + }, + "output" : { + "legacyId" : 270, + "id" : "minecraft:dried_kelp", + "damage" : 32767 + }, + "block" : "soul_campfire" + }, + { + "type" : 3, + "input" : { + "legacyId" : 382, + "id" : "minecraft:kelp", + "damage" : -1 + }, + "output" : { + "legacyId" : 270, + "id" : "minecraft:dried_kelp", + "damage" : 32767 + }, + "block" : "campfire" + }, + { + "type" : 3, + "input" : { + "legacyId" : 384, + "id" : "minecraft:clay_ball", + "damage" : -1 + }, + "output" : { + "legacyId" : 383, + "id" : "minecraft:brick", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 505, + "id" : "minecraft:raw_iron", + "damage" : -1 + }, + "output" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 505, + "id" : "minecraft:raw_iron", + "damage" : -1 + }, + "output" : { + "legacyId" : 305, + "id" : "minecraft:iron_ingot", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 506, + "id" : "minecraft:raw_gold", + "damage" : -1 + }, + "output" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 506, + "id" : "minecraft:raw_gold", + "damage" : -1 + }, + "output" : { + "legacyId" : 306, + "id" : "minecraft:gold_ingot", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 507, + "id" : "minecraft:raw_copper", + "damage" : -1 + }, + "output" : { + "legacyId" : 504, + "id" : "minecraft:copper_ingot", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 507, + "id" : "minecraft:raw_copper", + "damage" : -1 + }, + "output" : { + "legacyId" : 504, + "id" : "minecraft:copper_ingot", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 531, + "id" : "minecraft:iron_horse_armor", + "damage" : -1 + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 531, + "id" : "minecraft:iron_horse_armor", + "damage" : -1 + }, + "output" : { + "legacyId" : 569, + "id" : "minecraft:iron_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 532, + "id" : "minecraft:golden_horse_armor", + "damage" : -1 + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 532, + "id" : "minecraft:golden_horse_armor", + "damage" : -1 + }, + "output" : { + "legacyId" : 425, + "id" : "minecraft:gold_nugget", + "damage" : 32767 + }, + "block" : "blast_furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 550, + "id" : "minecraft:mutton", + "damage" : -1 + }, + "output" : { + "legacyId" : 551, + "id" : "minecraft:cooked_mutton", + "damage" : 32767 + }, + "block" : "smoker" + }, + { + "type" : 3, + "input" : { + "legacyId" : 550, + "id" : "minecraft:mutton", + "damage" : -1 + }, + "output" : { + "legacyId" : 551, + "id" : "minecraft:cooked_mutton", + "damage" : 32767 + }, + "block" : "furnace" + }, + { + "type" : 3, + "input" : { + "legacyId" : 550, + "id" : "minecraft:mutton", + "damage" : -1 + }, + "output" : { + "legacyId" : 551, + "id" : "minecraft:cooked_mutton", + "damage" : 32767 + }, + "block" : "soul_campfire" + }, + { + "type" : 3, + "input" : { + "legacyId" : 550, + "id" : "minecraft:mutton", + "damage" : -1 + }, + "output" : { + "legacyId" : 551, + "id" : "minecraft:cooked_mutton", + "damage" : 32767 + }, + "block" : "campfire" + }, + { + "type" : 3, + "input" : { + "legacyId" : 558, + "id" : "minecraft:chorus_fruit", + "damage" : -1 + }, + "output" : { + "legacyId" : 559, + "id" : "minecraft:popped_chorus_fruit", + "damage" : 32767 + }, + "block" : "furnace" + } + ], + "potionMixes" : [ + { + "inputId" : "minecraft:potion", + "inputMeta" : 27, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 24 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 27, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 24 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 27, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 24 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 17, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 42 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 17, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 42 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 17, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 42 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 0, + "reagentId" : "minecraft:magma_cream", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:magma_cream", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:magma_cream", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 0, + "reagentId" : "minecraft:spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 4, + "reagentId" : "minecraft:blaze_powder", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 31 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:blaze_powder", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 31 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:blaze_powder", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 31 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 33, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 34 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 33, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 34 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 33, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 34 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 25, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 27 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 25, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 27 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 25, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 27 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 1, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 34 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 1, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 34 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 1, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 34 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 0, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 3 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 3 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 3 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 23, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 24 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 23, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 24 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 23, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 24 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 4, + "reagentId" : "minecraft:ghast_tear", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 28 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:ghast_tear", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 28 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:ghast_tear", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 28 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 0, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 34 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 34 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 34 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 7, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 8 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 7, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 8 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 7, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 8 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 12, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 13 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 12, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 13 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 12, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 13 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 28, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 30 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 28, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 30 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 28, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 30 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 14, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 15 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 14, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 15 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 14, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 15 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 3, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 34 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 3, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 34 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 3, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 34 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 37, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 39 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 37, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 39 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 37, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 39 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 4, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 34 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 34 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 34 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 31, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 33 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 31, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 33 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 31, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 33 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 2, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 35 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 2, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 35 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 2, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 35 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 17, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 18 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 17, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 18 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 17, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 18 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 15, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 18 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 15, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 18 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 15, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 18 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 0, + "reagentId" : "minecraft:rabbit_foot", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:rabbit_foot", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:rabbit_foot", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 0, + "reagentId" : "minecraft:blaze_powder", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:blaze_powder", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:blaze_powder", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 32, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 35 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 32, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 35 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 32, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 35 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 4, + "reagentId" : "minecraft:golden_carrot", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 5 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:golden_carrot", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 5 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:golden_carrot", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 5 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 14, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 16 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 14, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 16 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 14, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 16 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 21, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 23 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 21, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 23 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 21, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 23 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 10, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 18 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 10, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 18 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 10, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 18 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 4, + "reagentId" : "minecraft:magma_cream", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 12 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:magma_cream", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 12 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:magma_cream", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 12 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 0, + "reagentId" : "minecraft:glistering_melon_slice", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:glistering_melon_slice", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:glistering_melon_slice", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 5, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 7 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 5, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 7 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 5, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 7 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 22, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 24 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 22, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 24 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 22, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 24 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 4, + "reagentId" : "minecraft:pufferfish", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 19 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:pufferfish", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 19 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:pufferfish", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 19 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 25, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 23 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 25, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 23 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 25, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 23 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 0, + "reagentId" : "minecraft:sugar", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:sugar", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:sugar", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 40, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 41 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 40, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 41 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 40, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 41 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 4, + "reagentId" : "minecraft:rabbit_foot", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 9 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:rabbit_foot", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 9 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:rabbit_foot", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 9 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 0, + "reagentId" : "minecraft:nether_wart", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 4 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:nether_wart", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 4 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:nether_wart", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 4 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 9, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 10 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 9, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 10 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 9, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 10 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 0, + "reagentId" : "minecraft:ghast_tear", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:ghast_tear", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:ghast_tear", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 4, + "reagentId" : "minecraft:turtle_helmet", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 37 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:turtle_helmet", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 37 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:turtle_helmet", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 37 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 4, + "reagentId" : "minecraft:glistering_melon_slice", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 21 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:glistering_melon_slice", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 21 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:glistering_melon_slice", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 21 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 0, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 0, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 1 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 25, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 26 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 25, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 26 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 25, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 26 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 19, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 20 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 19, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 20 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 19, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 20 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 9, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 17 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 9, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 17 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 9, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 17 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 31, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 32 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 31, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 32 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 31, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 32 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 4, + "reagentId" : "minecraft:spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 25 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 25 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 25 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 34, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 35 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 34, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 35 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 34, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 35 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 14, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 17 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 14, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 17 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 14, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 17 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 6, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 8 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 6, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 8 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 6, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 8 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 9, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 11 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 9, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 11 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 9, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 11 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 4, + "reagentId" : "minecraft:phantom_membrane", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 40 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:phantom_membrane", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 40 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:phantom_membrane", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 40 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 4, + "reagentId" : "minecraft:sugar", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 14 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:sugar", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 14 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 4, + "reagentId" : "minecraft:sugar", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 14 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 5, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 6 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 5, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 6 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 5, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 6 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 31, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 34 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 31, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 34 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 31, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 34 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 26, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 23 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 26, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 23 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 26, + "reagentId" : "minecraft:fermented_spider_eye", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 23 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 28, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 29 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 28, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 29 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 28, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 29 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 21, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 22 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 21, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 22 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 21, + "reagentId" : "minecraft:glowstone_dust", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 22 + }, + { + "inputId" : "minecraft:potion", + "inputMeta" : 37, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:potion", + "outputMeta" : 38 + }, + { + "inputId" : "minecraft:splash_potion", + "inputMeta" : 37, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:splash_potion", + "outputMeta" : 38 + }, + { + "inputId" : "minecraft:lingering_potion", + "inputMeta" : 37, + "reagentId" : "minecraft:redstone", + "reagentMeta" : 0, + "outputId" : "minecraft:lingering_potion", + "outputMeta" : 38 + } + ], + "containerMixes" : [ + { + "inputId" : "minecraft:potion", + "reagentId" : "minecraft:gunpowder", + "outputId" : "minecraft:splash_potion" + }, + { + "inputId" : "minecraft:splash_potion", + "reagentId" : "minecraft:dragon_breath", + "outputId" : "minecraft:lingering_potion" + } + ] +} \ No newline at end of file diff --git a/src/test/resources/org/powernukkit/updater/dumps/proxypass/runtime_item_states.json b/src/test/resources/org/powernukkit/updater/dumps/proxypass/runtime_item_states.json new file mode 100644 index 00000000000..5c6bf0f60b8 --- /dev/null +++ b/src/test/resources/org/powernukkit/updater/dumps/proxypass/runtime_item_states.json @@ -0,0 +1,5532 @@ +[ + { + "name" : "minecraft:mud_brick_wall", + "id" : -481, + "runtimeId" : 1036 + }, + { + "name" : "minecraft:mud_brick_stairs", + "id" : -480, + "runtimeId" : 88 + }, + { + "name" : "minecraft:mud_brick_double_slab", + "id" : -479, + "runtimeId" : 703 + }, + { + "name" : "minecraft:mud_brick_slab", + "id" : -478, + "runtimeId" : 935 + }, + { + "name" : "minecraft:packed_mud", + "id" : -477, + "runtimeId" : 232 + }, + { + "name" : "minecraft:mangrove_propagule_hanging", + "id" : -476, + "runtimeId" : 1029 + }, + { + "name" : "minecraft:mud_bricks", + "id" : -475, + "runtimeId" : 45 + }, + { + "name" : "minecraft:mangrove_propagule", + "id" : -474, + "runtimeId" : 974 + }, + { + "name" : "minecraft:mud", + "id" : -473, + "runtimeId" : 51 + }, + { + "name" : "minecraft:mangrove_leaves", + "id" : -472, + "runtimeId" : 972 + }, + { + "name" : "minecraft:ochre_froglight", + "id" : -471, + "runtimeId" : 178 + }, + { + "name" : "minecraft:verdant_froglight", + "id" : -470, + "runtimeId" : 115 + }, + { + "name" : "minecraft:pearlescent_froglight", + "id" : -469, + "runtimeId" : 202 + }, + { + "name" : "minecraft:frog_spawn", + "id" : -468, + "runtimeId" : 925 + }, + { + "name" : "minecraft:reinforced_deepslate", + "id" : -466, + "runtimeId" : 959 + }, + { + "name" : "minecraft:client_request_placeholder_block", + "id" : -465, + "runtimeId" : 148 + }, + { + "name" : "minecraft:sculk_shrieker", + "id" : -461, + "runtimeId" : 630 + }, + { + "name" : "minecraft:sculk_catalyst", + "id" : -460, + "runtimeId" : 169 + }, + { + "name" : "minecraft:sculk_vein", + "id" : -459, + "runtimeId" : 36 + }, + { + "name" : "minecraft:sculk", + "id" : -458, + "runtimeId" : 731 + }, + { + "name" : "minecraft:infested_deepslate", + "id" : -454, + "runtimeId" : 503 + }, + { + "name" : "minecraft:raw_gold_block", + "id" : -453, + "runtimeId" : 218 + }, + { + "name" : "minecraft:raw_copper_block", + "id" : -452, + "runtimeId" : 105 + }, + { + "name" : "minecraft:raw_iron_block", + "id" : -451, + "runtimeId" : 161 + }, + { + "name" : "minecraft:waxed_oxidized_double_cut_copper_slab", + "id" : -450, + "runtimeId" : 611 + }, + { + "name" : "minecraft:waxed_oxidized_cut_copper_slab", + "id" : -449, + "runtimeId" : 797 + }, + { + "name" : "minecraft:waxed_oxidized_cut_copper_stairs", + "id" : -448, + "runtimeId" : 430 + }, + { + "name" : "minecraft:waxed_oxidized_cut_copper", + "id" : -447, + "runtimeId" : 243 + }, + { + "name" : "minecraft:waxed_oxidized_copper", + "id" : -446, + "runtimeId" : 892 + }, + { + "name" : "minecraft:black_candle_cake", + "id" : -445, + "runtimeId" : 133 + }, + { + "name" : "minecraft:red_candle_cake", + "id" : -444, + "runtimeId" : 880 + }, + { + "name" : "minecraft:green_candle_cake", + "id" : -443, + "runtimeId" : 254 + }, + { + "name" : "minecraft:brown_candle_cake", + "id" : -442, + "runtimeId" : 492 + }, + { + "name" : "minecraft:blue_candle_cake", + "id" : -441, + "runtimeId" : 852 + }, + { + "name" : "minecraft:purple_candle_cake", + "id" : -440, + "runtimeId" : 50 + }, + { + "name" : "minecraft:cyan_candle_cake", + "id" : -439, + "runtimeId" : 201 + }, + { + "name" : "minecraft:light_gray_candle_cake", + "id" : -438, + "runtimeId" : 102 + }, + { + "name" : "minecraft:gray_candle_cake", + "id" : -437, + "runtimeId" : 638 + }, + { + "name" : "minecraft:pink_candle_cake", + "id" : -436, + "runtimeId" : 341 + }, + { + "name" : "minecraft:lime_candle_cake", + "id" : -435, + "runtimeId" : 8 + }, + { + "name" : "minecraft:yellow_candle_cake", + "id" : -434, + "runtimeId" : 130 + }, + { + "name" : "minecraft:light_blue_candle_cake", + "id" : -433, + "runtimeId" : 230 + }, + { + "name" : "minecraft:magenta_candle_cake", + "id" : -432, + "runtimeId" : 948 + }, + { + "name" : "minecraft:orange_candle_cake", + "id" : -431, + "runtimeId" : 1032 + }, + { + "name" : "minecraft:white_candle_cake", + "id" : -430, + "runtimeId" : 38 + }, + { + "name" : "minecraft:candle_cake", + "id" : -429, + "runtimeId" : 600 + }, + { + "name" : "minecraft:black_candle", + "id" : -428, + "runtimeId" : 1082 + }, + { + "name" : "minecraft:red_candle", + "id" : -427, + "runtimeId" : 781 + }, + { + "name" : "minecraft:green_candle", + "id" : -426, + "runtimeId" : 1080 + }, + { + "name" : "minecraft:brown_candle", + "id" : -425, + "runtimeId" : 964 + }, + { + "name" : "minecraft:blue_candle", + "id" : -424, + "runtimeId" : 1046 + }, + { + "name" : "minecraft:purple_candle", + "id" : -423, + "runtimeId" : 1079 + }, + { + "name" : "minecraft:cyan_candle", + "id" : -422, + "runtimeId" : 1077 + }, + { + "name" : "minecraft:light_gray_candle", + "id" : -421, + "runtimeId" : 1075 + }, + { + "name" : "minecraft:gray_candle", + "id" : -420, + "runtimeId" : 1073 + }, + { + "name" : "minecraft:pink_candle", + "id" : -419, + "runtimeId" : 1071 + }, + { + "name" : "minecraft:lime_candle", + "id" : -418, + "runtimeId" : 986 + }, + { + "name" : "minecraft:yellow_candle", + "id" : -417, + "runtimeId" : 956 + }, + { + "name" : "minecraft:light_blue_candle", + "id" : -416, + "runtimeId" : 885 + }, + { + "name" : "minecraft:magenta_candle", + "id" : -415, + "runtimeId" : 644 + }, + { + "name" : "minecraft:orange_candle", + "id" : -414, + "runtimeId" : 729 + }, + { + "name" : "minecraft:white_candle", + "id" : -413, + "runtimeId" : 486 + }, + { + "name" : "minecraft:candle", + "id" : -412, + "runtimeId" : 800 + }, + { + "name" : "minecraft:glow_lichen", + "id" : -411, + "runtimeId" : 725 + }, + { + "name" : "minecraft:cracked_deepslate_bricks", + "id" : -410, + "runtimeId" : 98 + }, + { + "name" : "minecraft:cracked_deepslate_tiles", + "id" : -409, + "runtimeId" : 903 + }, + { + "name" : "minecraft:deepslate_copper_ore", + "id" : -408, + "runtimeId" : 636 + }, + { + "name" : "minecraft:deepslate_emerald_ore", + "id" : -407, + "runtimeId" : 343 + }, + { + "name" : "minecraft:deepslate_coal_ore", + "id" : -406, + "runtimeId" : 357 + }, + { + "name" : "minecraft:deepslate_diamond_ore", + "id" : -405, + "runtimeId" : 2 + }, + { + "name" : "minecraft:lit_deepslate_redstone_ore", + "id" : -404, + "runtimeId" : 12 + }, + { + "name" : "minecraft:deepslate_redstone_ore", + "id" : -403, + "runtimeId" : 53 + }, + { + "name" : "minecraft:deepslate_gold_ore", + "id" : -402, + "runtimeId" : 70 + }, + { + "name" : "minecraft:deepslate_iron_ore", + "id" : -401, + "runtimeId" : 437 + }, + { + "name" : "minecraft:deepslate_lapis_ore", + "id" : -400, + "runtimeId" : 362 + }, + { + "name" : "minecraft:deepslate_brick_double_slab", + "id" : -399, + "runtimeId" : 180 + }, + { + "name" : "minecraft:deepslate_tile_double_slab", + "id" : -398, + "runtimeId" : 377 + }, + { + "name" : "minecraft:polished_deepslate_double_slab", + "id" : -397, + "runtimeId" : 261 + }, + { + "name" : "minecraft:cobbled_deepslate_double_slab", + "id" : -396, + "runtimeId" : 249 + }, + { + "name" : "minecraft:chiseled_deepslate", + "id" : -395, + "runtimeId" : 107 + }, + { + "name" : "minecraft:deepslate_brick_wall", + "id" : -394, + "runtimeId" : 213 + }, + { + "name" : "minecraft:deepslate_brick_stairs", + "id" : -393, + "runtimeId" : 21 + }, + { + "name" : "minecraft:deepslate_brick_slab", + "id" : -392, + "runtimeId" : 954 + }, + { + "name" : "minecraft:deepslate_bricks", + "id" : -391, + "runtimeId" : 92 + }, + { + "name" : "minecraft:deepslate_tile_wall", + "id" : -390, + "runtimeId" : 853 + }, + { + "name" : "minecraft:deepslate_tile_stairs", + "id" : -389, + "runtimeId" : 128 + }, + { + "name" : "minecraft:deepslate_tile_slab", + "id" : -388, + "runtimeId" : 1064 + }, + { + "name" : "minecraft:deepslate_tiles", + "id" : -387, + "runtimeId" : 513 + }, + { + "name" : "minecraft:polished_deepslate_wall", + "id" : -386, + "runtimeId" : 3 + }, + { + "name" : "minecraft:polished_deepslate_stairs", + "id" : -385, + "runtimeId" : 224 + }, + { + "name" : "minecraft:polished_deepslate_slab", + "id" : -384, + "runtimeId" : 533 + }, + { + "name" : "minecraft:polished_deepslate", + "id" : -383, + "runtimeId" : 1016 + }, + { + "name" : "minecraft:cobbled_deepslate_wall", + "id" : -382, + "runtimeId" : 385 + }, + { + "name" : "minecraft:cobbled_deepslate_stairs", + "id" : -381, + "runtimeId" : 338 + }, + { + "name" : "minecraft:cobbled_deepslate_slab", + "id" : -380, + "runtimeId" : 922 + }, + { + "name" : "minecraft:cobbled_deepslate", + "id" : -379, + "runtimeId" : 434 + }, + { + "name" : "minecraft:deepslate", + "id" : -378, + "runtimeId" : 366 + }, + { + "name" : "minecraft:smooth_basalt", + "id" : -377, + "runtimeId" : 774 + }, + { + "name" : "minecraft:cave_vines_head_with_berries", + "id" : -376, + "runtimeId" : 468 + }, + { + "name" : "minecraft:cave_vines_body_with_berries", + "id" : -375, + "runtimeId" : 932 + }, + { + "name" : "minecraft:waxed_weathered_double_cut_copper_slab", + "id" : -374, + "runtimeId" : 125 + }, + { + "name" : "minecraft:waxed_exposed_double_cut_copper_slab", + "id" : -373, + "runtimeId" : 47 + }, + { + "name" : "minecraft:waxed_double_cut_copper_slab", + "id" : -372, + "runtimeId" : 93 + }, + { + "name" : "minecraft:oxidized_double_cut_copper_slab", + "id" : -371, + "runtimeId" : 212 + }, + { + "name" : "minecraft:weathered_double_cut_copper_slab", + "id" : -370, + "runtimeId" : 24 + }, + { + "name" : "minecraft:exposed_double_cut_copper_slab", + "id" : -369, + "runtimeId" : 674 + }, + { + "name" : "minecraft:double_cut_copper_slab", + "id" : -368, + "runtimeId" : 570 + }, + { + "name" : "minecraft:waxed_weathered_cut_copper_slab", + "id" : -367, + "runtimeId" : 428 + }, + { + "name" : "minecraft:waxed_exposed_cut_copper_slab", + "id" : -366, + "runtimeId" : 1092 + }, + { + "name" : "minecraft:waxed_cut_copper_slab", + "id" : -365, + "runtimeId" : 382 + }, + { + "name" : "minecraft:oxidized_cut_copper_slab", + "id" : -364, + "runtimeId" : 344 + }, + { + "name" : "minecraft:weathered_cut_copper_slab", + "id" : -363, + "runtimeId" : 545 + }, + { + "name" : "minecraft:exposed_cut_copper_slab", + "id" : -362, + "runtimeId" : 901 + }, + { + "name" : "minecraft:cut_copper_slab", + "id" : -361, + "runtimeId" : 351 + }, + { + "name" : "minecraft:waxed_weathered_cut_copper_stairs", + "id" : -360, + "runtimeId" : 67 + }, + { + "name" : "minecraft:waxed_exposed_cut_copper_stairs", + "id" : -359, + "runtimeId" : 155 + }, + { + "name" : "minecraft:waxed_cut_copper_stairs", + "id" : -358, + "runtimeId" : 215 + }, + { + "name" : "minecraft:oxidized_cut_copper_stairs", + "id" : -357, + "runtimeId" : 750 + }, + { + "name" : "minecraft:weathered_cut_copper_stairs", + "id" : -356, + "runtimeId" : 144 + }, + { + "name" : "minecraft:exposed_cut_copper_stairs", + "id" : -355, + "runtimeId" : 762 + }, + { + "name" : "minecraft:cut_copper_stairs", + "id" : -354, + "runtimeId" : 368 + }, + { + "name" : "minecraft:waxed_weathered_cut_copper", + "id" : -353, + "runtimeId" : 799 + }, + { + "name" : "minecraft:waxed_exposed_cut_copper", + "id" : -352, + "runtimeId" : 457 + }, + { + "name" : "minecraft:waxed_cut_copper", + "id" : -351, + "runtimeId" : 28 + }, + { + "name" : "minecraft:oxidized_cut_copper", + "id" : -350, + "runtimeId" : 90 + }, + { + "name" : "minecraft:weathered_cut_copper", + "id" : -349, + "runtimeId" : 35 + }, + { + "name" : "minecraft:exposed_cut_copper", + "id" : -348, + "runtimeId" : 406 + }, + { + "name" : "minecraft:cut_copper", + "id" : -347, + "runtimeId" : 369 + }, + { + "name" : "minecraft:waxed_weathered_copper", + "id" : -346, + "runtimeId" : 336 + }, + { + "name" : "minecraft:waxed_exposed_copper", + "id" : -345, + "runtimeId" : 203 + }, + { + "name" : "minecraft:waxed_copper", + "id" : -344, + "runtimeId" : 9 + }, + { + "name" : "minecraft:oxidized_copper", + "id" : -343, + "runtimeId" : 865 + }, + { + "name" : "minecraft:weathered_copper", + "id" : -342, + "runtimeId" : 1019 + }, + { + "name" : "minecraft:exposed_copper", + "id" : -341, + "runtimeId" : 211 + }, + { + "name" : "minecraft:copper_block", + "id" : -340, + "runtimeId" : 347 + }, + { + "name" : "minecraft:item.glow_frame", + "id" : -339, + "runtimeId" : 687 + }, + { + "name" : "minecraft:flowering_azalea", + "id" : -338, + "runtimeId" : 365 + }, + { + "name" : "minecraft:azalea", + "id" : -337, + "runtimeId" : 46 + }, + { + "name" : "minecraft:small_dripleaf_block", + "id" : -336, + "runtimeId" : 216 + }, + { + "name" : "minecraft:moss_carpet", + "id" : -335, + "runtimeId" : 228 + }, + { + "name" : "minecraft:tinted_glass", + "id" : -334, + "runtimeId" : 132 + }, + { + "name" : "minecraft:tuff", + "id" : -333, + "runtimeId" : 219 + }, + { + "name" : "minecraft:small_amethyst_bud", + "id" : -332, + "runtimeId" : 223 + }, + { + "name" : "minecraft:medium_amethyst_bud", + "id" : -331, + "runtimeId" : 142 + }, + { + "name" : "minecraft:large_amethyst_bud", + "id" : -330, + "runtimeId" : 438 + }, + { + "name" : "minecraft:amethyst_cluster", + "id" : -329, + "runtimeId" : 173 + }, + { + "name" : "minecraft:budding_amethyst", + "id" : -328, + "runtimeId" : 195 + }, + { + "name" : "minecraft:amethyst_block", + "id" : -327, + "runtimeId" : 226 + }, + { + "name" : "minecraft:calcite", + "id" : -326, + "runtimeId" : 747 + }, + { + "name" : "minecraft:azalea_leaves_flowered", + "id" : -325, + "runtimeId" : 867 + }, + { + "name" : "minecraft:azalea_leaves", + "id" : -324, + "runtimeId" : 1057 + }, + { + "name" : "minecraft:big_dripleaf", + "id" : -323, + "runtimeId" : 312 + }, + { + "name" : "minecraft:cave_vines", + "id" : -322, + "runtimeId" : 883 + }, + { + "name" : "minecraft:spore_blossom", + "id" : -321, + "runtimeId" : 27 + }, + { + "name" : "minecraft:moss_block", + "id" : -320, + "runtimeId" : 56 + }, + { + "name" : "minecraft:hanging_roots", + "id" : -319, + "runtimeId" : 246 + }, + { + "name" : "minecraft:dirt_with_roots", + "id" : -318, + "runtimeId" : 95 + }, + { + "name" : "minecraft:dripstone_block", + "id" : -317, + "runtimeId" : 197 + }, + { + "name" : "minecraft:lightning_rod", + "id" : -312, + "runtimeId" : 183 + }, + { + "name" : "minecraft:copper_ore", + "id" : -311, + "runtimeId" : 170 + }, + { + "name" : "minecraft:pointed_dripstone", + "id" : -308, + "runtimeId" : 22 + }, + { + "name" : "minecraft:sculk_sensor", + "id" : -307, + "runtimeId" : 141 + }, + { + "name" : "minecraft:powder_snow", + "id" : -306, + "runtimeId" : 350 + }, + { + "name" : "minecraft:unknown", + "id" : -305, + "runtimeId" : 131 + }, + { + "name" : "minecraft:quartz_bricks", + "id" : -304, + "runtimeId" : 449 + }, + { + "name" : "minecraft:cracked_nether_bricks", + "id" : -303, + "runtimeId" : 934 + }, + { + "name" : "minecraft:chiseled_nether_bricks", + "id" : -302, + "runtimeId" : 32 + }, + { + "name" : "minecraft:stripped_warped_hyphae", + "id" : -301, + "runtimeId" : 222 + }, + { + "name" : "minecraft:stripped_crimson_hyphae", + "id" : -300, + "runtimeId" : 393 + }, + { + "name" : "minecraft:crimson_hyphae", + "id" : -299, + "runtimeId" : 417 + }, + { + "name" : "minecraft:warped_hyphae", + "id" : -298, + "runtimeId" : 970 + }, + { + "name" : "minecraft:polished_blackstone_wall", + "id" : -297, + "runtimeId" : 48 + }, + { + "name" : "minecraft:polished_blackstone_button", + "id" : -296, + "runtimeId" : 6 + }, + { + "name" : "minecraft:polished_blackstone_pressure_plate", + "id" : -295, + "runtimeId" : 86 + }, + { + "name" : "minecraft:polished_blackstone_double_slab", + "id" : -294, + "runtimeId" : 207 + }, + { + "name" : "minecraft:polished_blackstone_slab", + "id" : -293, + "runtimeId" : 602 + }, + { + "name" : "minecraft:polished_blackstone_stairs", + "id" : -292, + "runtimeId" : 282 + }, + { + "name" : "minecraft:polished_blackstone", + "id" : -291, + "runtimeId" : 166 + }, + { + "name" : "minecraft:item.soul_campfire", + "id" : -290, + "runtimeId" : 327 + }, + { + "name" : "minecraft:crying_obsidian", + "id" : -289, + "runtimeId" : 268 + }, + { + "name" : "minecraft:nether_gold_ore", + "id" : -288, + "runtimeId" : 257 + }, + { + "name" : "minecraft:twisting_vines", + "id" : -287, + "runtimeId" : 82 + }, + { + "name" : "minecraft:item.chain", + "id" : -286, + "runtimeId" : 118 + }, + { + "name" : "minecraft:polished_blackstone_brick_double_slab", + "id" : -285, + "runtimeId" : 206 + }, + { + "name" : "minecraft:polished_blackstone_brick_slab", + "id" : -284, + "runtimeId" : 583 + }, + { + "name" : "minecraft:blackstone_double_slab", + "id" : -283, + "runtimeId" : 743 + }, + { + "name" : "minecraft:blackstone_slab", + "id" : -282, + "runtimeId" : 949 + }, + { + "name" : "minecraft:gilded_blackstone", + "id" : -281, + "runtimeId" : 794 + }, + { + "name" : "minecraft:cracked_polished_blackstone_bricks", + "id" : -280, + "runtimeId" : 33 + }, + { + "name" : "minecraft:chiseled_polished_blackstone", + "id" : -279, + "runtimeId" : 293 + }, + { + "name" : "minecraft:polished_blackstone_brick_wall", + "id" : -278, + "runtimeId" : 187 + }, + { + "name" : "minecraft:blackstone_wall", + "id" : -277, + "runtimeId" : 982 + }, + { + "name" : "minecraft:blackstone_stairs", + "id" : -276, + "runtimeId" : 859 + }, + { + "name" : "minecraft:polished_blackstone_brick_stairs", + "id" : -275, + "runtimeId" : 1040 + }, + { + "name" : "minecraft:polished_blackstone_bricks", + "id" : -274, + "runtimeId" : 124 + }, + { + "name" : "minecraft:blackstone", + "id" : -273, + "runtimeId" : 14 + }, + { + "name" : "minecraft:respawn_anchor", + "id" : -272, + "runtimeId" : 269 + }, + { + "name" : "minecraft:ancient_debris", + "id" : -271, + "runtimeId" : 270 + }, + { + "name" : "minecraft:netherite_block", + "id" : -270, + "runtimeId" : 272 + }, + { + "name" : "minecraft:soul_lantern", + "id" : -269, + "runtimeId" : 694 + }, + { + "name" : "minecraft:soul_torch", + "id" : -268, + "runtimeId" : 129 + }, + { + "name" : "minecraft:warped_double_slab", + "id" : -267, + "runtimeId" : 164 + }, + { + "name" : "minecraft:crimson_double_slab", + "id" : -266, + "runtimeId" : 204 + }, + { + "name" : "minecraft:warped_slab", + "id" : -265, + "runtimeId" : 392 + }, + { + "name" : "minecraft:crimson_slab", + "id" : -264, + "runtimeId" : 836 + }, + { + "name" : "minecraft:warped_pressure_plate", + "id" : -263, + "runtimeId" : 271 + }, + { + "name" : "minecraft:crimson_pressure_plate", + "id" : -262, + "runtimeId" : 179 + }, + { + "name" : "minecraft:warped_button", + "id" : -261, + "runtimeId" : 80 + }, + { + "name" : "minecraft:crimson_button", + "id" : -260, + "runtimeId" : 294 + }, + { + "name" : "minecraft:warped_fence_gate", + "id" : -259, + "runtimeId" : 790 + }, + { + "name" : "minecraft:crimson_fence_gate", + "id" : -258, + "runtimeId" : 127 + }, + { + "name" : "minecraft:warped_fence", + "id" : -257, + "runtimeId" : 77 + }, + { + "name" : "minecraft:crimson_fence", + "id" : -256, + "runtimeId" : 550 + }, + { + "name" : "minecraft:warped_stairs", + "id" : -255, + "runtimeId" : 163 + }, + { + "name" : "minecraft:crimson_stairs", + "id" : -254, + "runtimeId" : 64 + }, + { + "name" : "minecraft:warped_wall_sign", + "id" : -253, + "runtimeId" : 217 + }, + { + "name" : "minecraft:crimson_wall_sign", + "id" : -252, + "runtimeId" : 990 + }, + { + "name" : "minecraft:warped_standing_sign", + "id" : -251, + "runtimeId" : 34 + }, + { + "name" : "minecraft:crimson_standing_sign", + "id" : -250, + "runtimeId" : 26 + }, + { + "name" : "minecraft:warped_trapdoor", + "id" : -247, + "runtimeId" : 119 + }, + { + "name" : "minecraft:crimson_trapdoor", + "id" : -246, + "runtimeId" : 763 + }, + { + "name" : "minecraft:item.warped_door", + "id" : -245, + "runtimeId" : 255 + }, + { + "name" : "minecraft:item.crimson_door", + "id" : -244, + "runtimeId" : 613 + }, + { + "name" : "minecraft:warped_planks", + "id" : -243, + "runtimeId" : 189 + }, + { + "name" : "minecraft:crimson_planks", + "id" : -242, + "runtimeId" : 112 + }, + { + "name" : "minecraft:stripped_warped_stem", + "id" : -241, + "runtimeId" : 23 + }, + { + "name" : "minecraft:stripped_crimson_stem", + "id" : -240, + "runtimeId" : 355 + }, + { + "name" : "minecraft:target", + "id" : -239, + "runtimeId" : 796 + }, + { + "name" : "minecraft:item.nether_sprouts", + "id" : -238, + "runtimeId" : 409 + }, + { + "name" : "minecraft:soul_fire", + "id" : -237, + "runtimeId" : 736 + }, + { + "name" : "minecraft:soul_soil", + "id" : -236, + "runtimeId" : 318 + }, + { + "name" : "minecraft:polished_basalt", + "id" : -235, + "runtimeId" : 258 + }, + { + "name" : "minecraft:basalt", + "id" : -234, + "runtimeId" : 459 + }, + { + "name" : "minecraft:warped_nylium", + "id" : -233, + "runtimeId" : 60 + }, + { + "name" : "minecraft:crimson_nylium", + "id" : -232, + "runtimeId" : 153 + }, + { + "name" : "minecraft:weeping_vines", + "id" : -231, + "runtimeId" : 536 + }, + { + "name" : "minecraft:shroomlight", + "id" : -230, + "runtimeId" : 109 + }, + { + "name" : "minecraft:warped_fungus", + "id" : -229, + "runtimeId" : 227 + }, + { + "name" : "minecraft:crimson_fungus", + "id" : -228, + "runtimeId" : 502 + }, + { + "name" : "minecraft:warped_wart_block", + "id" : -227, + "runtimeId" : 74 + }, + { + "name" : "minecraft:warped_stem", + "id" : -226, + "runtimeId" : 472 + }, + { + "name" : "minecraft:crimson_stem", + "id" : -225, + "runtimeId" : 83 + }, + { + "name" : "minecraft:warped_roots", + "id" : -224, + "runtimeId" : 1001 + }, + { + "name" : "minecraft:crimson_roots", + "id" : -223, + "runtimeId" : 1018 + }, + { + "name" : "minecraft:lodestone", + "id" : -222, + "runtimeId" : 208 + }, + { + "name" : "minecraft:honeycomb_block", + "id" : -221, + "runtimeId" : 139 + }, + { + "name" : "minecraft:honey_block", + "id" : -220, + "runtimeId" : 759 + }, + { + "name" : "minecraft:beehive", + "id" : -219, + "runtimeId" : 147 + }, + { + "name" : "minecraft:bee_nest", + "id" : -218, + "runtimeId" : 386 + }, + { + "name" : "minecraft:sticky_piston_arm_collision", + "id" : -217, + "runtimeId" : 61 + }, + { + "name" : "minecraft:wither_rose", + "id" : -216, + "runtimeId" : 68 + }, + { + "name" : "minecraft:light_block", + "id" : -215, + "runtimeId" : 1051 + }, + { + "name" : "minecraft:lit_blast_furnace", + "id" : -214, + "runtimeId" : 39 + }, + { + "name" : "minecraft:composter", + "id" : -213, + "runtimeId" : 273 + }, + { + "name" : "minecraft:wood", + "id" : -212, + "runtimeId" : 888 + }, + { + "name" : "minecraft:jigsaw", + "id" : -211, + "runtimeId" : 162 + }, + { + "name" : "minecraft:lava_cauldron", + "id" : -210, + "runtimeId" : 210 + }, + { + "name" : "minecraft:item.campfire", + "id" : -209, + "runtimeId" : 451 + }, + { + "name" : "minecraft:lantern", + "id" : -208, + "runtimeId" : 953 + }, + { + "name" : "minecraft:sweet_berry_bush", + "id" : -207, + "runtimeId" : 72 + }, + { + "name" : "minecraft:bell", + "id" : -206, + "runtimeId" : 716 + }, + { + "name" : "minecraft:loom", + "id" : -204, + "runtimeId" : 672 + }, + { + "name" : "minecraft:barrel", + "id" : -203, + "runtimeId" : 402 + }, + { + "name" : "minecraft:smithing_table", + "id" : -202, + "runtimeId" : 481 + }, + { + "name" : "minecraft:fletching_table", + "id" : -201, + "runtimeId" : 1065 + }, + { + "name" : "minecraft:cartography_table", + "id" : -200, + "runtimeId" : 1063 + }, + { + "name" : "minecraft:lit_smoker", + "id" : -199, + "runtimeId" : 11 + }, + { + "name" : "minecraft:smoker", + "id" : -198, + "runtimeId" : 721 + }, + { + "name" : "minecraft:stonecutter_block", + "id" : -197, + "runtimeId" : 15 + }, + { + "name" : "minecraft:blast_furnace", + "id" : -196, + "runtimeId" : 700 + }, + { + "name" : "minecraft:grindstone", + "id" : -195, + "runtimeId" : 1062 + }, + { + "name" : "minecraft:lectern", + "id" : -194, + "runtimeId" : 905 + }, + { + "name" : "minecraft:darkoak_wall_sign", + "id" : -193, + "runtimeId" : 100 + }, + { + "name" : "minecraft:darkoak_standing_sign", + "id" : -192, + "runtimeId" : 25 + }, + { + "name" : "minecraft:acacia_wall_sign", + "id" : -191, + "runtimeId" : 1090 + }, + { + "name" : "minecraft:acacia_standing_sign", + "id" : -190, + "runtimeId" : 120 + }, + { + "name" : "minecraft:jungle_wall_sign", + "id" : -189, + "runtimeId" : 301 + }, + { + "name" : "minecraft:jungle_standing_sign", + "id" : -188, + "runtimeId" : 572 + }, + { + "name" : "minecraft:birch_wall_sign", + "id" : -187, + "runtimeId" : 44 + }, + { + "name" : "minecraft:birch_standing_sign", + "id" : -186, + "runtimeId" : 259 + }, + { + "name" : "minecraft:smooth_quartz_stairs", + "id" : -185, + "runtimeId" : 205 + }, + { + "name" : "minecraft:red_nether_brick_stairs", + "id" : -184, + "runtimeId" : 54 + }, + { + "name" : "minecraft:smooth_stone", + "id" : -183, + "runtimeId" : 732 + }, + { + "name" : "minecraft:spruce_wall_sign", + "id" : -182, + "runtimeId" : 96 + }, + { + "name" : "minecraft:spruce_standing_sign", + "id" : -181, + "runtimeId" : 136 + }, + { + "name" : "minecraft:normal_stone_stairs", + "id" : -180, + "runtimeId" : 424 + }, + { + "name" : "minecraft:mossy_cobblestone_stairs", + "id" : -179, + "runtimeId" : 555 + }, + { + "name" : "minecraft:end_brick_stairs", + "id" : -178, + "runtimeId" : 58 + }, + { + "name" : "minecraft:smooth_sandstone_stairs", + "id" : -177, + "runtimeId" : 168 + }, + { + "name" : "minecraft:smooth_red_sandstone_stairs", + "id" : -176, + "runtimeId" : 87 + }, + { + "name" : "minecraft:mossy_stone_brick_stairs", + "id" : -175, + "runtimeId" : 75 + }, + { + "name" : "minecraft:polished_andesite_stairs", + "id" : -174, + "runtimeId" : 40 + }, + { + "name" : "minecraft:polished_diorite_stairs", + "id" : -173, + "runtimeId" : 49 + }, + { + "name" : "minecraft:polished_granite_stairs", + "id" : -172, + "runtimeId" : 1068 + }, + { + "name" : "minecraft:andesite_stairs", + "id" : -171, + "runtimeId" : 256 + }, + { + "name" : "minecraft:diorite_stairs", + "id" : -170, + "runtimeId" : 140 + }, + { + "name" : "minecraft:granite_stairs", + "id" : -169, + "runtimeId" : 174 + }, + { + "name" : "minecraft:real_double_stone_slab4", + "id" : -168, + "runtimeId" : 1009 + }, + { + "name" : "minecraft:real_double_stone_slab3", + "id" : -167, + "runtimeId" : 1008 + }, + { + "name" : "minecraft:double_stone_slab4", + "id" : -166, + "runtimeId" : 1002 + }, + { + "name" : "minecraft:scaffolding", + "id" : -165, + "runtimeId" : 359 + }, + { + "name" : "minecraft:bamboo_sapling", + "id" : -164, + "runtimeId" : 1010 + }, + { + "name" : "minecraft:bamboo", + "id" : -163, + "runtimeId" : 1060 + }, + { + "name" : "minecraft:double_stone_slab3", + "id" : -162, + "runtimeId" : 999 + }, + { + "name" : "minecraft:barrier", + "id" : -161, + "runtimeId" : 989 + }, + { + "name" : "minecraft:bubble_column", + "id" : -160, + "runtimeId" : 79 + }, + { + "name" : "minecraft:turtle_egg", + "id" : -159, + "runtimeId" : 580 + }, + { + "name" : "minecraft:air", + "id" : -158, + "runtimeId" : 826 + }, + { + "name" : "minecraft:conduit", + "id" : -157, + "runtimeId" : 1043 + }, + { + "name" : "minecraft:sea_pickle", + "id" : -156, + "runtimeId" : 653 + }, + { + "name" : "minecraft:carved_pumpkin", + "id" : -155, + "runtimeId" : 1061 + }, + { + "name" : "minecraft:spruce_pressure_plate", + "id" : -154, + "runtimeId" : 510 + }, + { + "name" : "minecraft:jungle_pressure_plate", + "id" : -153, + "runtimeId" : 863 + }, + { + "name" : "minecraft:dark_oak_pressure_plate", + "id" : -152, + "runtimeId" : 320 + }, + { + "name" : "minecraft:birch_pressure_plate", + "id" : -151, + "runtimeId" : 389 + }, + { + "name" : "minecraft:acacia_pressure_plate", + "id" : -150, + "runtimeId" : 106 + }, + { + "name" : "minecraft:spruce_trapdoor", + "id" : -149, + "runtimeId" : 196 + }, + { + "name" : "minecraft:jungle_trapdoor", + "id" : -148, + "runtimeId" : 1000 + }, + { + "name" : "minecraft:dark_oak_trapdoor", + "id" : -147, + "runtimeId" : 63 + }, + { + "name" : "minecraft:birch_trapdoor", + "id" : -146, + "runtimeId" : 52 + }, + { + "name" : "minecraft:acacia_trapdoor", + "id" : -145, + "runtimeId" : 94 + }, + { + "name" : "minecraft:spruce_button", + "id" : -144, + "runtimeId" : 705 + }, + { + "name" : "minecraft:jungle_button", + "id" : -143, + "runtimeId" : 737 + }, + { + "name" : "minecraft:dark_oak_button", + "id" : -142, + "runtimeId" : 250 + }, + { + "name" : "minecraft:birch_button", + "id" : -141, + "runtimeId" : 810 + }, + { + "name" : "minecraft:acacia_button", + "id" : -140, + "runtimeId" : 349 + }, + { + "name" : "minecraft:dried_kelp_block", + "id" : -139, + "runtimeId" : 487 + }, + { + "name" : "minecraft:item.kelp", + "id" : -138, + "runtimeId" : 779 + }, + { + "name" : "minecraft:coral_fan_hang3", + "id" : -137, + "runtimeId" : 154 + }, + { + "name" : "minecraft:coral_fan_hang2", + "id" : -136, + "runtimeId" : 1103 + }, + { + "name" : "minecraft:coral_fan_hang", + "id" : -135, + "runtimeId" : 718 + }, + { + "name" : "minecraft:coral_fan_dead", + "id" : -134, + "runtimeId" : 505 + }, + { + "name" : "minecraft:coral_fan", + "id" : -133, + "runtimeId" : 363 + }, + { + "name" : "minecraft:coral_block", + "id" : -132, + "runtimeId" : 480 + }, + { + "name" : "minecraft:coral", + "id" : -131, + "runtimeId" : 447 + }, + { + "name" : "minecraft:seagrass", + "id" : -130, + "runtimeId" : 804 + }, + { + "name" : "minecraft:element_118", + "id" : -129, + "runtimeId" : 274 + }, + { + "name" : "minecraft:element_117", + "id" : -128, + "runtimeId" : 275 + }, + { + "name" : "minecraft:element_116", + "id" : -127, + "runtimeId" : 276 + }, + { + "name" : "minecraft:element_115", + "id" : -126, + "runtimeId" : 277 + }, + { + "name" : "minecraft:element_114", + "id" : -125, + "runtimeId" : 278 + }, + { + "name" : "minecraft:element_113", + "id" : -124, + "runtimeId" : 279 + }, + { + "name" : "minecraft:element_112", + "id" : -123, + "runtimeId" : 280 + }, + { + "name" : "minecraft:element_111", + "id" : -122, + "runtimeId" : 530 + }, + { + "name" : "minecraft:element_110", + "id" : -121, + "runtimeId" : 488 + }, + { + "name" : "minecraft:element_109", + "id" : -120, + "runtimeId" : 281 + }, + { + "name" : "minecraft:element_108", + "id" : -119, + "runtimeId" : 283 + }, + { + "name" : "minecraft:element_107", + "id" : -118, + "runtimeId" : 1052 + }, + { + "name" : "minecraft:element_106", + "id" : -117, + "runtimeId" : 631 + }, + { + "name" : "minecraft:element_105", + "id" : -116, + "runtimeId" : 587 + }, + { + "name" : "minecraft:element_104", + "id" : -115, + "runtimeId" : 659 + }, + { + "name" : "minecraft:element_103", + "id" : -114, + "runtimeId" : 285 + }, + { + "name" : "minecraft:element_102", + "id" : -113, + "runtimeId" : 286 + }, + { + "name" : "minecraft:element_101", + "id" : -112, + "runtimeId" : 287 + }, + { + "name" : "minecraft:element_100", + "id" : -111, + "runtimeId" : 288 + }, + { + "name" : "minecraft:element_99", + "id" : -110, + "runtimeId" : 916 + }, + { + "name" : "minecraft:element_98", + "id" : -109, + "runtimeId" : 289 + }, + { + "name" : "minecraft:element_97", + "id" : -108, + "runtimeId" : 290 + }, + { + "name" : "minecraft:element_96", + "id" : -107, + "runtimeId" : 291 + }, + { + "name" : "minecraft:element_95", + "id" : -106, + "runtimeId" : 292 + }, + { + "name" : "minecraft:element_94", + "id" : -105, + "runtimeId" : 973 + }, + { + "name" : "minecraft:element_93", + "id" : -104, + "runtimeId" : 295 + }, + { + "name" : "minecraft:element_92", + "id" : -103, + "runtimeId" : 297 + }, + { + "name" : "minecraft:element_91", + "id" : -102, + "runtimeId" : 640 + }, + { + "name" : "minecraft:element_90", + "id" : -101, + "runtimeId" : 298 + }, + { + "name" : "minecraft:element_89", + "id" : -100, + "runtimeId" : 299 + }, + { + "name" : "minecraft:element_88", + "id" : -99, + "runtimeId" : 300 + }, + { + "name" : "minecraft:element_87", + "id" : -98, + "runtimeId" : 302 + }, + { + "name" : "minecraft:element_86", + "id" : -97, + "runtimeId" : 303 + }, + { + "name" : "minecraft:element_85", + "id" : -96, + "runtimeId" : 304 + }, + { + "name" : "minecraft:element_84", + "id" : -95, + "runtimeId" : 695 + }, + { + "name" : "minecraft:element_83", + "id" : -94, + "runtimeId" : 305 + }, + { + "name" : "minecraft:element_82", + "id" : -93, + "runtimeId" : 548 + }, + { + "name" : "minecraft:element_81", + "id" : -92, + "runtimeId" : 307 + }, + { + "name" : "minecraft:element_80", + "id" : -91, + "runtimeId" : 308 + }, + { + "name" : "minecraft:element_79", + "id" : -90, + "runtimeId" : 309 + }, + { + "name" : "minecraft:element_78", + "id" : -89, + "runtimeId" : 311 + }, + { + "name" : "minecraft:element_77", + "id" : -88, + "runtimeId" : 784 + }, + { + "name" : "minecraft:element_76", + "id" : -87, + "runtimeId" : 313 + }, + { + "name" : "minecraft:element_75", + "id" : -86, + "runtimeId" : 314 + }, + { + "name" : "minecraft:element_74", + "id" : -85, + "runtimeId" : 315 + }, + { + "name" : "minecraft:element_73", + "id" : -84, + "runtimeId" : 517 + }, + { + "name" : "minecraft:element_72", + "id" : -83, + "runtimeId" : 316 + }, + { + "name" : "minecraft:element_71", + "id" : -82, + "runtimeId" : 477 + }, + { + "name" : "minecraft:element_70", + "id" : -81, + "runtimeId" : 407 + }, + { + "name" : "minecraft:element_69", + "id" : -80, + "runtimeId" : 414 + }, + { + "name" : "minecraft:element_68", + "id" : -79, + "runtimeId" : 317 + }, + { + "name" : "minecraft:element_67", + "id" : -78, + "runtimeId" : 319 + }, + { + "name" : "minecraft:element_66", + "id" : -77, + "runtimeId" : 322 + }, + { + "name" : "minecraft:element_65", + "id" : -76, + "runtimeId" : 849 + }, + { + "name" : "minecraft:element_64", + "id" : -75, + "runtimeId" : 1044 + }, + { + "name" : "minecraft:element_63", + "id" : -74, + "runtimeId" : 525 + }, + { + "name" : "minecraft:element_62", + "id" : -73, + "runtimeId" : 425 + }, + { + "name" : "minecraft:element_61", + "id" : -72, + "runtimeId" : 323 + }, + { + "name" : "minecraft:element_60", + "id" : -71, + "runtimeId" : 751 + }, + { + "name" : "minecraft:element_59", + "id" : -70, + "runtimeId" : 324 + }, + { + "name" : "minecraft:element_58", + "id" : -69, + "runtimeId" : 325 + }, + { + "name" : "minecraft:element_57", + "id" : -68, + "runtimeId" : 326 + }, + { + "name" : "minecraft:element_56", + "id" : -67, + "runtimeId" : 328 + }, + { + "name" : "minecraft:element_55", + "id" : -66, + "runtimeId" : 500 + }, + { + "name" : "minecraft:element_54", + "id" : -65, + "runtimeId" : 345 + }, + { + "name" : "minecraft:element_53", + "id" : -64, + "runtimeId" : 861 + }, + { + "name" : "minecraft:element_52", + "id" : -63, + "runtimeId" : 329 + }, + { + "name" : "minecraft:element_51", + "id" : -62, + "runtimeId" : 929 + }, + { + "name" : "minecraft:element_50", + "id" : -61, + "runtimeId" : 698 + }, + { + "name" : "minecraft:element_49", + "id" : -60, + "runtimeId" : 614 + }, + { + "name" : "minecraft:element_48", + "id" : -59, + "runtimeId" : 372 + }, + { + "name" : "minecraft:element_47", + "id" : -58, + "runtimeId" : 331 + }, + { + "name" : "minecraft:element_46", + "id" : -57, + "runtimeId" : 573 + }, + { + "name" : "minecraft:element_45", + "id" : -56, + "runtimeId" : 711 + }, + { + "name" : "minecraft:element_44", + "id" : -55, + "runtimeId" : 332 + }, + { + "name" : "minecraft:element_43", + "id" : -54, + "runtimeId" : 1070 + }, + { + "name" : "minecraft:element_42", + "id" : -53, + "runtimeId" : 608 + }, + { + "name" : "minecraft:element_41", + "id" : -52, + "runtimeId" : 914 + }, + { + "name" : "minecraft:element_40", + "id" : -51, + "runtimeId" : 333 + }, + { + "name" : "minecraft:element_39", + "id" : -50, + "runtimeId" : 334 + }, + { + "name" : "minecraft:element_38", + "id" : -49, + "runtimeId" : 802 + }, + { + "name" : "minecraft:element_37", + "id" : -48, + "runtimeId" : 733 + }, + { + "name" : "minecraft:element_36", + "id" : -47, + "runtimeId" : 540 + }, + { + "name" : "minecraft:element_35", + "id" : -46, + "runtimeId" : 604 + }, + { + "name" : "minecraft:element_34", + "id" : -45, + "runtimeId" : 335 + }, + { + "name" : "minecraft:element_33", + "id" : -44, + "runtimeId" : 337 + }, + { + "name" : "minecraft:element_32", + "id" : -43, + "runtimeId" : 339 + }, + { + "name" : "minecraft:element_31", + "id" : -42, + "runtimeId" : 340 + }, + { + "name" : "minecraft:element_30", + "id" : -41, + "runtimeId" : 552 + }, + { + "name" : "minecraft:element_29", + "id" : -40, + "runtimeId" : 399 + }, + { + "name" : "minecraft:element_28", + "id" : -39, + "runtimeId" : 342 + }, + { + "name" : "minecraft:element_27", + "id" : -38, + "runtimeId" : 396 + }, + { + "name" : "minecraft:element_26", + "id" : -37, + "runtimeId" : 1105 + }, + { + "name" : "minecraft:element_25", + "id" : -36, + "runtimeId" : 708 + }, + { + "name" : "minecraft:element_24", + "id" : -35, + "runtimeId" : 1088 + }, + { + "name" : "minecraft:element_23", + "id" : -34, + "runtimeId" : 1027 + }, + { + "name" : "minecraft:element_22", + "id" : -33, + "runtimeId" : 1102 + }, + { + "name" : "minecraft:element_21", + "id" : -32, + "runtimeId" : 773 + }, + { + "name" : "minecraft:element_20", + "id" : -31, + "runtimeId" : 1085 + }, + { + "name" : "minecraft:element_19", + "id" : -30, + "runtimeId" : 1098 + }, + { + "name" : "minecraft:element_18", + "id" : -29, + "runtimeId" : 557 + }, + { + "name" : "minecraft:element_17", + "id" : -28, + "runtimeId" : 977 + }, + { + "name" : "minecraft:element_16", + "id" : -27, + "runtimeId" : 1097 + }, + { + "name" : "minecraft:element_15", + "id" : -26, + "runtimeId" : 471 + }, + { + "name" : "minecraft:element_14", + "id" : -25, + "runtimeId" : 1094 + }, + { + "name" : "minecraft:element_13", + "id" : -24, + "runtimeId" : 1093 + }, + { + "name" : "minecraft:element_12", + "id" : -23, + "runtimeId" : 701 + }, + { + "name" : "minecraft:element_11", + "id" : -22, + "runtimeId" : 1091 + }, + { + "name" : "minecraft:element_10", + "id" : -21, + "runtimeId" : 983 + }, + { + "name" : "minecraft:element_9", + "id" : -20, + "runtimeId" : 709 + }, + { + "name" : "minecraft:element_8", + "id" : -19, + "runtimeId" : 1089 + }, + { + "name" : "minecraft:element_7", + "id" : -18, + "runtimeId" : 1025 + }, + { + "name" : "minecraft:element_6", + "id" : -17, + "runtimeId" : 1101 + }, + { + "name" : "minecraft:element_5", + "id" : -16, + "runtimeId" : 772 + }, + { + "name" : "minecraft:element_4", + "id" : -15, + "runtimeId" : 1086 + }, + { + "name" : "minecraft:element_3", + "id" : -14, + "runtimeId" : 1031 + }, + { + "name" : "minecraft:element_2", + "id" : -13, + "runtimeId" : 667 + }, + { + "name" : "minecraft:element_1", + "id" : -12, + "runtimeId" : 1083 + }, + { + "name" : "minecraft:blue_ice", + "id" : -11, + "runtimeId" : 41 + }, + { + "name" : "minecraft:stripped_oak_log", + "id" : -10, + "runtimeId" : 17 + }, + { + "name" : "minecraft:stripped_dark_oak_log", + "id" : -9, + "runtimeId" : 242 + }, + { + "name" : "minecraft:stripped_acacia_log", + "id" : -8, + "runtimeId" : 722 + }, + { + "name" : "minecraft:stripped_jungle_log", + "id" : -7, + "runtimeId" : 727 + }, + { + "name" : "minecraft:stripped_birch_log", + "id" : -6, + "runtimeId" : 156 + }, + { + "name" : "minecraft:stripped_spruce_log", + "id" : -5, + "runtimeId" : 62 + }, + { + "name" : "minecraft:prismarine_bricks_stairs", + "id" : -4, + "runtimeId" : 244 + }, + { + "name" : "minecraft:dark_prismarine_stairs", + "id" : -3, + "runtimeId" : 626 + }, + { + "name" : "minecraft:prismarine_stairs", + "id" : -2, + "runtimeId" : 31 + }, + { + "name" : "minecraft:stone", + "id" : 1, + "runtimeId" : 981 + }, + { + "name" : "minecraft:grass", + "id" : 2, + "runtimeId" : 43 + }, + { + "name" : "minecraft:dirt", + "id" : 3, + "runtimeId" : 803 + }, + { + "name" : "minecraft:cobblestone", + "id" : 4, + "runtimeId" : 371 + }, + { + "name" : "minecraft:planks", + "id" : 5, + "runtimeId" : 1014 + }, + { + "name" : "minecraft:sapling", + "id" : 6, + "runtimeId" : 926 + }, + { + "name" : "minecraft:bedrock", + "id" : 7, + "runtimeId" : 65 + }, + { + "name" : "minecraft:flowing_water", + "id" : 8, + "runtimeId" : 529 + }, + { + "name" : "minecraft:water", + "id" : 9, + "runtimeId" : 1087 + }, + { + "name" : "minecraft:flowing_lava", + "id" : 10, + "runtimeId" : 1056 + }, + { + "name" : "minecraft:lava", + "id" : 11, + "runtimeId" : 837 + }, + { + "name" : "minecraft:sand", + "id" : 12, + "runtimeId" : 984 + }, + { + "name" : "minecraft:gravel", + "id" : 13, + "runtimeId" : 0 + }, + { + "name" : "minecraft:gold_ore", + "id" : 14, + "runtimeId" : 192 + }, + { + "name" : "minecraft:iron_ore", + "id" : 15, + "runtimeId" : 123 + }, + { + "name" : "minecraft:coal_ore", + "id" : 16, + "runtimeId" : 149 + }, + { + "name" : "minecraft:log", + "id" : 17, + "runtimeId" : 992 + }, + { + "name" : "minecraft:leaves", + "id" : 18, + "runtimeId" : 985 + }, + { + "name" : "minecraft:sponge", + "id" : 19, + "runtimeId" : 1024 + }, + { + "name" : "minecraft:glass", + "id" : 20, + "runtimeId" : 69 + }, + { + "name" : "minecraft:lapis_ore", + "id" : 21, + "runtimeId" : 10 + }, + { + "name" : "minecraft:lapis_block", + "id" : 22, + "runtimeId" : 720 + }, + { + "name" : "minecraft:dispenser", + "id" : 23, + "runtimeId" : 923 + }, + { + "name" : "minecraft:sandstone", + "id" : 24, + "runtimeId" : 1012 + }, + { + "name" : "minecraft:noteblock", + "id" : 25, + "runtimeId" : 623 + }, + { + "name" : "minecraft:item.bed", + "id" : 26, + "runtimeId" : 617 + }, + { + "name" : "minecraft:golden_rail", + "id" : 27, + "runtimeId" : 321 + }, + { + "name" : "minecraft:detector_rail", + "id" : 28, + "runtimeId" : 521 + }, + { + "name" : "minecraft:sticky_piston", + "id" : 29, + "runtimeId" : 420 + }, + { + "name" : "minecraft:web", + "id" : 30, + "runtimeId" : 589 + }, + { + "name" : "minecraft:tallgrass", + "id" : 31, + "runtimeId" : 818 + }, + { + "name" : "minecraft:deadbush", + "id" : 32, + "runtimeId" : 126 + }, + { + "name" : "minecraft:piston", + "id" : 33, + "runtimeId" : 761 + }, + { + "name" : "minecraft:piston_arm_collision", + "id" : 34, + "runtimeId" : 253 + }, + { + "name" : "minecraft:wool", + "id" : 35, + "runtimeId" : 991 + }, + { + "name" : "minecraft:element_0", + "id" : 36, + "runtimeId" : 795 + }, + { + "name" : "minecraft:yellow_flower", + "id" : 37, + "runtimeId" : 1020 + }, + { + "name" : "minecraft:red_flower", + "id" : 38, + "runtimeId" : 1022 + }, + { + "name" : "minecraft:brown_mushroom", + "id" : 39, + "runtimeId" : 182 + }, + { + "name" : "minecraft:red_mushroom", + "id" : 40, + "runtimeId" : 893 + }, + { + "name" : "minecraft:gold_block", + "id" : 41, + "runtimeId" : 816 + }, + { + "name" : "minecraft:iron_block", + "id" : 42, + "runtimeId" : 682 + }, + { + "name" : "minecraft:real_double_stone_slab", + "id" : 43, + "runtimeId" : 1042 + }, + { + "name" : "minecraft:double_stone_slab", + "id" : 44, + "runtimeId" : 996 + }, + { + "name" : "minecraft:brick_block", + "id" : 45, + "runtimeId" : 117 + }, + { + "name" : "minecraft:tnt", + "id" : 46, + "runtimeId" : 1067 + }, + { + "name" : "minecraft:bookshelf", + "id" : 47, + "runtimeId" : 975 + }, + { + "name" : "minecraft:mossy_cobblestone", + "id" : 48, + "runtimeId" : 237 + }, + { + "name" : "minecraft:obsidian", + "id" : 49, + "runtimeId" : 214 + }, + { + "name" : "minecraft:torch", + "id" : 50, + "runtimeId" : 199 + }, + { + "name" : "minecraft:fire", + "id" : 51, + "runtimeId" : 876 + }, + { + "name" : "minecraft:mob_spawner", + "id" : 52, + "runtimeId" : 831 + }, + { + "name" : "minecraft:oak_stairs", + "id" : 53, + "runtimeId" : 235 + }, + { + "name" : "minecraft:chest", + "id" : 54, + "runtimeId" : 1033 + }, + { + "name" : "minecraft:redstone_wire", + "id" : 55, + "runtimeId" : 1095 + }, + { + "name" : "minecraft:diamond_ore", + "id" : 56, + "runtimeId" : 143 + }, + { + "name" : "minecraft:diamond_block", + "id" : 57, + "runtimeId" : 236 + }, + { + "name" : "minecraft:crafting_table", + "id" : 58, + "runtimeId" : 692 + }, + { + "name" : "minecraft:item.wheat", + "id" : 59, + "runtimeId" : 875 + }, + { + "name" : "minecraft:farmland", + "id" : 60, + "runtimeId" : 697 + }, + { + "name" : "minecraft:furnace", + "id" : 61, + "runtimeId" : 5 + }, + { + "name" : "minecraft:lit_furnace", + "id" : 62, + "runtimeId" : 678 + }, + { + "name" : "minecraft:standing_sign", + "id" : 63, + "runtimeId" : 190 + }, + { + "name" : "minecraft:item.wooden_door", + "id" : 64, + "runtimeId" : 160 + }, + { + "name" : "minecraft:ladder", + "id" : 65, + "runtimeId" : 482 + }, + { + "name" : "minecraft:rail", + "id" : 66, + "runtimeId" : 387 + }, + { + "name" : "minecraft:stone_stairs", + "id" : 67, + "runtimeId" : 165 + }, + { + "name" : "minecraft:wall_sign", + "id" : 68, + "runtimeId" : 1039 + }, + { + "name" : "minecraft:lever", + "id" : 69, + "runtimeId" : 554 + }, + { + "name" : "minecraft:stone_pressure_plate", + "id" : 70, + "runtimeId" : 157 + }, + { + "name" : "minecraft:item.iron_door", + "id" : 71, + "runtimeId" : 410 + }, + { + "name" : "minecraft:wooden_pressure_plate", + "id" : 72, + "runtimeId" : 1 + }, + { + "name" : "minecraft:redstone_ore", + "id" : 73, + "runtimeId" : 146 + }, + { + "name" : "minecraft:lit_redstone_ore", + "id" : 74, + "runtimeId" : 668 + }, + { + "name" : "minecraft:unlit_redstone_torch", + "id" : 75, + "runtimeId" : 186 + }, + { + "name" : "minecraft:redstone_torch", + "id" : 76, + "runtimeId" : 176 + }, + { + "name" : "minecraft:stone_button", + "id" : 77, + "runtimeId" : 940 + }, + { + "name" : "minecraft:snow_layer", + "id" : 78, + "runtimeId" : 1028 + }, + { + "name" : "minecraft:ice", + "id" : 79, + "runtimeId" : 440 + }, + { + "name" : "minecraft:snow", + "id" : 80, + "runtimeId" : 152 + }, + { + "name" : "minecraft:cactus", + "id" : 81, + "runtimeId" : 101 + }, + { + "name" : "minecraft:clay", + "id" : 82, + "runtimeId" : 562 + }, + { + "name" : "minecraft:item.reeds", + "id" : 83, + "runtimeId" : 71 + }, + { + "name" : "minecraft:jukebox", + "id" : 84, + "runtimeId" : 111 + }, + { + "name" : "minecraft:fence", + "id" : 85, + "runtimeId" : 375 + }, + { + "name" : "minecraft:pumpkin", + "id" : 86, + "runtimeId" : 689 + }, + { + "name" : "minecraft:netherrack", + "id" : 87, + "runtimeId" : 724 + }, + { + "name" : "minecraft:soul_sand", + "id" : 88, + "runtimeId" : 413 + }, + { + "name" : "minecraft:glowstone", + "id" : 89, + "runtimeId" : 158 + }, + { + "name" : "minecraft:portal", + "id" : 90, + "runtimeId" : 715 + }, + { + "name" : "minecraft:lit_pumpkin", + "id" : 91, + "runtimeId" : 740 + }, + { + "name" : "minecraft:item.cake", + "id" : 92, + "runtimeId" : 1011 + }, + { + "name" : "minecraft:unpowered_repeater", + "id" : 93, + "runtimeId" : 122 + }, + { + "name" : "minecraft:powered_repeater", + "id" : 94, + "runtimeId" : 134 + }, + { + "name" : "minecraft:invisible_bedrock", + "id" : 95, + "runtimeId" : 1072 + }, + { + "name" : "minecraft:trapdoor", + "id" : 96, + "runtimeId" : 240 + }, + { + "name" : "minecraft:monster_egg", + "id" : 97, + "runtimeId" : 967 + }, + { + "name" : "minecraft:stonebrick", + "id" : 98, + "runtimeId" : 994 + }, + { + "name" : "minecraft:brown_mushroom_block", + "id" : 99, + "runtimeId" : 441 + }, + { + "name" : "minecraft:red_mushroom_block", + "id" : 100, + "runtimeId" : 1100 + }, + { + "name" : "minecraft:iron_bars", + "id" : 101, + "runtimeId" : 113 + }, + { + "name" : "minecraft:glass_pane", + "id" : 102, + "runtimeId" : 812 + }, + { + "name" : "minecraft:melon_block", + "id" : 103, + "runtimeId" : 622 + }, + { + "name" : "minecraft:pumpkin_stem", + "id" : 104, + "runtimeId" : 353 + }, + { + "name" : "minecraft:melon_stem", + "id" : 105, + "runtimeId" : 939 + }, + { + "name" : "minecraft:vine", + "id" : 106, + "runtimeId" : 194 + }, + { + "name" : "minecraft:fence_gate", + "id" : 107, + "runtimeId" : 251 + }, + { + "name" : "minecraft:brick_stairs", + "id" : 108, + "runtimeId" : 57 + }, + { + "name" : "minecraft:stone_brick_stairs", + "id" : 109, + "runtimeId" : 453 + }, + { + "name" : "minecraft:mycelium", + "id" : 110, + "runtimeId" : 330 + }, + { + "name" : "minecraft:waterlily", + "id" : 111, + "runtimeId" : 1023 + }, + { + "name" : "minecraft:nether_brick", + "id" : 112, + "runtimeId" : 233 + }, + { + "name" : "minecraft:nether_brick_fence", + "id" : 113, + "runtimeId" : 906 + }, + { + "name" : "minecraft:nether_brick_stairs", + "id" : 114, + "runtimeId" : 248 + }, + { + "name" : "minecraft:item.nether_wart", + "id" : 115, + "runtimeId" : 805 + }, + { + "name" : "minecraft:enchanting_table", + "id" : 116, + "runtimeId" : 193 + }, + { + "name" : "minecraft:item.brewing_stand", + "id" : 117, + "runtimeId" : 16 + }, + { + "name" : "minecraft:item.cauldron", + "id" : 118, + "runtimeId" : 18 + }, + { + "name" : "minecraft:end_portal", + "id" : 119, + "runtimeId" : 229 + }, + { + "name" : "minecraft:end_portal_frame", + "id" : 120, + "runtimeId" : 1035 + }, + { + "name" : "minecraft:end_stone", + "id" : 121, + "runtimeId" : 159 + }, + { + "name" : "minecraft:dragon_egg", + "id" : 122, + "runtimeId" : 30 + }, + { + "name" : "minecraft:redstone_lamp", + "id" : 123, + "runtimeId" : 238 + }, + { + "name" : "minecraft:lit_redstone_lamp", + "id" : 124, + "runtimeId" : 380 + }, + { + "name" : "minecraft:dropper", + "id" : 125, + "runtimeId" : 265 + }, + { + "name" : "minecraft:activator_rail", + "id" : 126, + "runtimeId" : 221 + }, + { + "name" : "minecraft:cocoa", + "id" : 127, + "runtimeId" : 987 + }, + { + "name" : "minecraft:sandstone_stairs", + "id" : 128, + "runtimeId" : 490 + }, + { + "name" : "minecraft:emerald_ore", + "id" : 129, + "runtimeId" : 579 + }, + { + "name" : "minecraft:ender_chest", + "id" : 130, + "runtimeId" : 306 + }, + { + "name" : "minecraft:tripwire_hook", + "id" : 131, + "runtimeId" : 789 + }, + { + "name" : "minecraft:trip_wire", + "id" : 132, + "runtimeId" : 19 + }, + { + "name" : "minecraft:emerald_block", + "id" : 133, + "runtimeId" : 185 + }, + { + "name" : "minecraft:spruce_stairs", + "id" : 134, + "runtimeId" : 1084 + }, + { + "name" : "minecraft:birch_stairs", + "id" : 135, + "runtimeId" : 245 + }, + { + "name" : "minecraft:jungle_stairs", + "id" : 136, + "runtimeId" : 1005 + }, + { + "name" : "minecraft:command_block", + "id" : 137, + "runtimeId" : 171 + }, + { + "name" : "minecraft:beacon", + "id" : 138, + "runtimeId" : 1038 + }, + { + "name" : "minecraft:cobblestone_wall", + "id" : 139, + "runtimeId" : 754 + }, + { + "name" : "minecraft:item.flower_pot", + "id" : 140, + "runtimeId" : 225 + }, + { + "name" : "minecraft:carrots", + "id" : 141, + "runtimeId" : 73 + }, + { + "name" : "minecraft:potatoes", + "id" : 142, + "runtimeId" : 252 + }, + { + "name" : "minecraft:wooden_button", + "id" : 143, + "runtimeId" : 909 + }, + { + "name" : "minecraft:item.skull", + "id" : 144, + "runtimeId" : 103 + }, + { + "name" : "minecraft:anvil", + "id" : 145, + "runtimeId" : 993 + }, + { + "name" : "minecraft:trapped_chest", + "id" : 146, + "runtimeId" : 702 + }, + { + "name" : "minecraft:light_weighted_pressure_plate", + "id" : 147, + "runtimeId" : 167 + }, + { + "name" : "minecraft:heavy_weighted_pressure_plate", + "id" : 148, + "runtimeId" : 184 + }, + { + "name" : "minecraft:unpowered_comparator", + "id" : 149, + "runtimeId" : 612 + }, + { + "name" : "minecraft:powered_comparator", + "id" : 150, + "runtimeId" : 443 + }, + { + "name" : "minecraft:daylight_detector", + "id" : 151, + "runtimeId" : 198 + }, + { + "name" : "minecraft:redstone_block", + "id" : 152, + "runtimeId" : 376 + }, + { + "name" : "minecraft:quartz_ore", + "id" : 153, + "runtimeId" : 138 + }, + { + "name" : "minecraft:item.hopper", + "id" : 154, + "runtimeId" : 673 + }, + { + "name" : "minecraft:quartz_block", + "id" : 155, + "runtimeId" : 436 + }, + { + "name" : "minecraft:quartz_stairs", + "id" : 156, + "runtimeId" : 114 + }, + { + "name" : "minecraft:double_wooden_slab", + "id" : 157, + "runtimeId" : 76 + }, + { + "name" : "minecraft:wooden_slab", + "id" : 158, + "runtimeId" : 822 + }, + { + "name" : "minecraft:stained_hardened_clay", + "id" : 159, + "runtimeId" : 988 + }, + { + "name" : "minecraft:stained_glass_pane", + "id" : 160, + "runtimeId" : 1055 + }, + { + "name" : "minecraft:leaves2", + "id" : 161, + "runtimeId" : 616 + }, + { + "name" : "minecraft:log2", + "id" : 162, + "runtimeId" : 637 + }, + { + "name" : "minecraft:acacia_stairs", + "id" : 163, + "runtimeId" : 66 + }, + { + "name" : "minecraft:dark_oak_stairs", + "id" : 164, + "runtimeId" : 108 + }, + { + "name" : "minecraft:slime", + "id" : 165, + "runtimeId" : 151 + }, + { + "name" : "minecraft:iron_trapdoor", + "id" : 167, + "runtimeId" : 220 + }, + { + "name" : "minecraft:prismarine", + "id" : 168, + "runtimeId" : 625 + }, + { + "name" : "minecraft:sea_lantern", + "id" : 169, + "runtimeId" : 1045 + }, + { + "name" : "minecraft:hay_block", + "id" : 170, + "runtimeId" : 912 + }, + { + "name" : "minecraft:carpet", + "id" : 171, + "runtimeId" : 890 + }, + { + "name" : "minecraft:hardened_clay", + "id" : 172, + "runtimeId" : 209 + }, + { + "name" : "minecraft:coal_block", + "id" : 173, + "runtimeId" : 886 + }, + { + "name" : "minecraft:packed_ice", + "id" : 174, + "runtimeId" : 866 + }, + { + "name" : "minecraft:double_plant", + "id" : 175, + "runtimeId" : 952 + }, + { + "name" : "minecraft:standing_banner", + "id" : 176, + "runtimeId" : 448 + }, + { + "name" : "minecraft:wall_banner", + "id" : 177, + "runtimeId" : 84 + }, + { + "name" : "minecraft:daylight_detector_inverted", + "id" : 178, + "runtimeId" : 137 + }, + { + "name" : "minecraft:red_sandstone", + "id" : 179, + "runtimeId" : 1015 + }, + { + "name" : "minecraft:red_sandstone_stairs", + "id" : 180, + "runtimeId" : 99 + }, + { + "name" : "minecraft:real_double_stone_slab2", + "id" : 181, + "runtimeId" : 1007 + }, + { + "name" : "minecraft:double_stone_slab2", + "id" : 182, + "runtimeId" : 998 + }, + { + "name" : "minecraft:spruce_fence_gate", + "id" : 183, + "runtimeId" : 200 + }, + { + "name" : "minecraft:birch_fence_gate", + "id" : 184, + "runtimeId" : 684 + }, + { + "name" : "minecraft:jungle_fence_gate", + "id" : 185, + "runtimeId" : 97 + }, + { + "name" : "minecraft:dark_oak_fence_gate", + "id" : 186, + "runtimeId" : 707 + }, + { + "name" : "minecraft:acacia_fence_gate", + "id" : 187, + "runtimeId" : 13 + }, + { + "name" : "minecraft:repeating_command_block", + "id" : 188, + "runtimeId" : 7 + }, + { + "name" : "minecraft:chain_command_block", + "id" : 189, + "runtimeId" : 519 + }, + { + "name" : "minecraft:hard_glass_pane", + "id" : 190, + "runtimeId" : 446 + }, + { + "name" : "minecraft:hard_stained_glass_pane", + "id" : 191, + "runtimeId" : 868 + }, + { + "name" : "minecraft:chemical_heat", + "id" : 192, + "runtimeId" : 20 + }, + { + "name" : "minecraft:item.spruce_door", + "id" : 193, + "runtimeId" : 121 + }, + { + "name" : "minecraft:item.birch_door", + "id" : 194, + "runtimeId" : 37 + }, + { + "name" : "minecraft:item.jungle_door", + "id" : 195, + "runtimeId" : 741 + }, + { + "name" : "minecraft:item.acacia_door", + "id" : 196, + "runtimeId" : 231 + }, + { + "name" : "minecraft:item.dark_oak_door", + "id" : 197, + "runtimeId" : 81 + }, + { + "name" : "minecraft:grass_path", + "id" : 198, + "runtimeId" : 497 + }, + { + "name" : "minecraft:item.frame", + "id" : 199, + "runtimeId" : 150 + }, + { + "name" : "minecraft:chorus_flower", + "id" : 200, + "runtimeId" : 135 + }, + { + "name" : "minecraft:purpur_block", + "id" : 201, + "runtimeId" : 793 + }, + { + "name" : "minecraft:colored_torch_rg", + "id" : 202, + "runtimeId" : 456 + }, + { + "name" : "minecraft:purpur_stairs", + "id" : 203, + "runtimeId" : 484 + }, + { + "name" : "minecraft:colored_torch_bp", + "id" : 204, + "runtimeId" : 1069 + }, + { + "name" : "minecraft:undyed_shulker_box", + "id" : 205, + "runtimeId" : 1058 + }, + { + "name" : "minecraft:end_bricks", + "id" : 206, + "runtimeId" : 234 + }, + { + "name" : "minecraft:frosted_ice", + "id" : 207, + "runtimeId" : 544 + }, + { + "name" : "minecraft:end_rod", + "id" : 208, + "runtimeId" : 778 + }, + { + "name" : "minecraft:end_gateway", + "id" : 209, + "runtimeId" : 247 + }, + { + "name" : "minecraft:allow", + "id" : 210, + "runtimeId" : 629 + }, + { + "name" : "minecraft:deny", + "id" : 211, + "runtimeId" : 798 + }, + { + "name" : "minecraft:border_block", + "id" : 212, + "runtimeId" : 110 + }, + { + "name" : "minecraft:magma", + "id" : 213, + "runtimeId" : 1053 + }, + { + "name" : "minecraft:nether_wart_block", + "id" : 214, + "runtimeId" : 145 + }, + { + "name" : "minecraft:red_nether_brick", + "id" : 215, + "runtimeId" : 591 + }, + { + "name" : "minecraft:bone_block", + "id" : 216, + "runtimeId" : 455 + }, + { + "name" : "minecraft:structure_void", + "id" : 217, + "runtimeId" : 971 + }, + { + "name" : "minecraft:shulker_box", + "id" : 218, + "runtimeId" : 889 + }, + { + "name" : "minecraft:purple_glazed_terracotta", + "id" : 219, + "runtimeId" : 42 + }, + { + "name" : "minecraft:white_glazed_terracotta", + "id" : 220, + "runtimeId" : 520 + }, + { + "name" : "minecraft:orange_glazed_terracotta", + "id" : 221, + "runtimeId" : 310 + }, + { + "name" : "minecraft:magenta_glazed_terracotta", + "id" : 222, + "runtimeId" : 188 + }, + { + "name" : "minecraft:light_blue_glazed_terracotta", + "id" : 223, + "runtimeId" : 284 + }, + { + "name" : "minecraft:yellow_glazed_terracotta", + "id" : 224, + "runtimeId" : 191 + }, + { + "name" : "minecraft:lime_glazed_terracotta", + "id" : 225, + "runtimeId" : 241 + }, + { + "name" : "minecraft:pink_glazed_terracotta", + "id" : 226, + "runtimeId" : 55 + }, + { + "name" : "minecraft:gray_glazed_terracotta", + "id" : 227, + "runtimeId" : 978 + }, + { + "name" : "minecraft:silver_glazed_terracotta", + "id" : 228, + "runtimeId" : 175 + }, + { + "name" : "minecraft:cyan_glazed_terracotta", + "id" : 229, + "runtimeId" : 266 + }, + { + "name" : "minecraft:blue_glazed_terracotta", + "id" : 231, + "runtimeId" : 91 + }, + { + "name" : "minecraft:brown_glazed_terracotta", + "id" : 232, + "runtimeId" : 669 + }, + { + "name" : "minecraft:green_glazed_terracotta", + "id" : 233, + "runtimeId" : 841 + }, + { + "name" : "minecraft:red_glazed_terracotta", + "id" : 234, + "runtimeId" : 814 + }, + { + "name" : "minecraft:black_glazed_terracotta", + "id" : 235, + "runtimeId" : 78 + }, + { + "name" : "minecraft:concrete", + "id" : 236, + "runtimeId" : 1004 + }, + { + "name" : "minecraft:concrete_powder", + "id" : 237, + "runtimeId" : 1047 + }, + { + "name" : "minecraft:chemistry_table", + "id" : 238, + "runtimeId" : 561 + }, + { + "name" : "minecraft:underwater_torch", + "id" : 239, + "runtimeId" : 181 + }, + { + "name" : "minecraft:chorus_plant", + "id" : 240, + "runtimeId" : 89 + }, + { + "name" : "minecraft:stained_glass", + "id" : 241, + "runtimeId" : 590 + }, + { + "name" : "minecraft:item.camera", + "id" : 242, + "runtimeId" : 29 + }, + { + "name" : "minecraft:podzol", + "id" : 243, + "runtimeId" : 395 + }, + { + "name" : "minecraft:item.beetroot", + "id" : 244, + "runtimeId" : 104 + }, + { + "name" : "minecraft:stonecutter", + "id" : 245, + "runtimeId" : 749 + }, + { + "name" : "minecraft:glowingobsidian", + "id" : 246, + "runtimeId" : 172 + }, + { + "name" : "minecraft:netherreactor", + "id" : 247, + "runtimeId" : 924 + }, + { + "name" : "minecraft:info_update", + "id" : 248, + "runtimeId" : 239 + }, + { + "name" : "minecraft:info_update2", + "id" : 249, + "runtimeId" : 4 + }, + { + "name" : "minecraft:moving_block", + "id" : 250, + "runtimeId" : 85 + }, + { + "name" : "minecraft:observer", + "id" : 251, + "runtimeId" : 177 + }, + { + "name" : "minecraft:structure_block", + "id" : 252, + "runtimeId" : 59 + }, + { + "name" : "minecraft:hard_glass", + "id" : 253, + "runtimeId" : 116 + }, + { + "name" : "minecraft:hard_stained_glass", + "id" : 254, + "runtimeId" : 432 + }, + { + "name" : "minecraft:reserved6", + "id" : 255, + "runtimeId" : 296 + }, + { + "name" : "minecraft:apple", + "id" : 257, + "runtimeId" : 680 + }, + { + "name" : "minecraft:golden_apple", + "id" : 258, + "runtimeId" : 578 + }, + { + "name" : "minecraft:enchanted_golden_apple", + "id" : 259, + "runtimeId" : 584 + }, + { + "name" : "minecraft:mushroom_stew", + "id" : 260, + "runtimeId" : 627 + }, + { + "name" : "minecraft:bread", + "id" : 261, + "runtimeId" : 619 + }, + { + "name" : "minecraft:porkchop", + "id" : 262, + "runtimeId" : 628 + }, + { + "name" : "minecraft:cooked_porkchop", + "id" : 263, + "runtimeId" : 679 + }, + { + "name" : "minecraft:cod", + "id" : 264, + "runtimeId" : 955 + }, + { + "name" : "minecraft:salmon", + "id" : 265, + "runtimeId" : 586 + }, + { + "name" : "minecraft:tropical_fish", + "id" : 266, + "runtimeId" : 787 + }, + { + "name" : "minecraft:pufferfish", + "id" : 267, + "runtimeId" : 581 + }, + { + "name" : "minecraft:cooked_cod", + "id" : 268, + "runtimeId" : 346 + }, + { + "name" : "minecraft:cooked_salmon", + "id" : 269, + "runtimeId" : 645 + }, + { + "name" : "minecraft:dried_kelp", + "id" : 270, + "runtimeId" : 610 + }, + { + "name" : "minecraft:cookie", + "id" : 271, + "runtimeId" : 452 + }, + { + "name" : "minecraft:melon_slice", + "id" : 272, + "runtimeId" : 766 + }, + { + "name" : "minecraft:beef", + "id" : 273, + "runtimeId" : 665 + }, + { + "name" : "minecraft:cooked_beef", + "id" : 274, + "runtimeId" : 632 + }, + { + "name" : "minecraft:chicken", + "id" : 275, + "runtimeId" : 539 + }, + { + "name" : "minecraft:cooked_chicken", + "id" : 276, + "runtimeId" : 661 + }, + { + "name" : "minecraft:rotten_flesh", + "id" : 277, + "runtimeId" : 846 + }, + { + "name" : "minecraft:spider_eye", + "id" : 278, + "runtimeId" : 877 + }, + { + "name" : "minecraft:carrot", + "id" : 279, + "runtimeId" : 670 + }, + { + "name" : "minecraft:potato", + "id" : 280, + "runtimeId" : 528 + }, + { + "name" : "minecraft:baked_potato", + "id" : 281, + "runtimeId" : 658 + }, + { + "name" : "minecraft:poisonous_potato", + "id" : 282, + "runtimeId" : 896 + }, + { + "name" : "minecraft:golden_carrot", + "id" : 283, + "runtimeId" : 681 + }, + { + "name" : "minecraft:pumpkin_pie", + "id" : 284, + "runtimeId" : 466 + }, + { + "name" : "minecraft:beetroot", + "id" : 285, + "runtimeId" : 575 + }, + { + "name" : "minecraft:beetroot_soup", + "id" : 286, + "runtimeId" : 662 + }, + { + "name" : "minecraft:sweet_berries", + "id" : 287, + "runtimeId" : 657 + }, + { + "name" : "minecraft:rabbit", + "id" : 288, + "runtimeId" : 605 + }, + { + "name" : "minecraft:cooked_rabbit", + "id" : 289, + "runtimeId" : 756 + }, + { + "name" : "minecraft:rabbit_stew", + "id" : 290, + "runtimeId" : 666 + }, + { + "name" : "minecraft:wheat_seeds", + "id" : 291, + "runtimeId" : 639 + }, + { + "name" : "minecraft:pumpkin_seeds", + "id" : 292, + "runtimeId" : 354 + }, + { + "name" : "minecraft:melon_seeds", + "id" : 293, + "runtimeId" : 654 + }, + { + "name" : "minecraft:nether_wart", + "id" : 294, + "runtimeId" : 710 + }, + { + "name" : "minecraft:beetroot_seeds", + "id" : 295, + "runtimeId" : 543 + }, + { + "name" : "minecraft:iron_shovel", + "id" : 296, + "runtimeId" : 1041 + }, + { + "name" : "minecraft:iron_pickaxe", + "id" : 297, + "runtimeId" : 765 + }, + { + "name" : "minecraft:iron_axe", + "id" : 298, + "runtimeId" : 660 + }, + { + "name" : "minecraft:flint_and_steel", + "id" : 299, + "runtimeId" : 655 + }, + { + "name" : "minecraft:bow", + "id" : 300, + "runtimeId" : 690 + }, + { + "name" : "minecraft:arrow", + "id" : 301, + "runtimeId" : 526 + }, + { + "name" : "minecraft:coal", + "id" : 302, + "runtimeId" : 878 + }, + { + "name" : "minecraft:charcoal", + "id" : 303, + "runtimeId" : 588 + }, + { + "name" : "minecraft:diamond", + "id" : 304, + "runtimeId" : 601 + }, + { + "name" : "minecraft:iron_ingot", + "id" : 305, + "runtimeId" : 563 + }, + { + "name" : "minecraft:gold_ingot", + "id" : 306, + "runtimeId" : 594 + }, + { + "name" : "minecraft:iron_sword", + "id" : 307, + "runtimeId" : 523 + }, + { + "name" : "minecraft:wooden_sword", + "id" : 308, + "runtimeId" : 1003 + }, + { + "name" : "minecraft:wooden_shovel", + "id" : 309, + "runtimeId" : 706 + }, + { + "name" : "minecraft:wooden_pickaxe", + "id" : 310, + "runtimeId" : 501 + }, + { + "name" : "minecraft:wooden_axe", + "id" : 311, + "runtimeId" : 560 + }, + { + "name" : "minecraft:stone_sword", + "id" : 312, + "runtimeId" : 677 + }, + { + "name" : "minecraft:stone_shovel", + "id" : 313, + "runtimeId" : 634 + }, + { + "name" : "minecraft:stone_pickaxe", + "id" : 314, + "runtimeId" : 542 + }, + { + "name" : "minecraft:stone_axe", + "id" : 315, + "runtimeId" : 531 + }, + { + "name" : "minecraft:diamond_sword", + "id" : 316, + "runtimeId" : 597 + }, + { + "name" : "minecraft:diamond_shovel", + "id" : 317, + "runtimeId" : 509 + }, + { + "name" : "minecraft:diamond_pickaxe", + "id" : 318, + "runtimeId" : 691 + }, + { + "name" : "minecraft:diamond_axe", + "id" : 319, + "runtimeId" : 388 + }, + { + "name" : "minecraft:stick", + "id" : 320, + "runtimeId" : 1059 + }, + { + "name" : "minecraft:bowl", + "id" : 321, + "runtimeId" : 592 + }, + { + "name" : "minecraft:golden_sword", + "id" : 322, + "runtimeId" : 549 + }, + { + "name" : "minecraft:golden_shovel", + "id" : 323, + "runtimeId" : 633 + }, + { + "name" : "minecraft:golden_pickaxe", + "id" : 324, + "runtimeId" : 775 + }, + { + "name" : "minecraft:golden_axe", + "id" : 325, + "runtimeId" : 1049 + }, + { + "name" : "minecraft:string", + "id" : 326, + "runtimeId" : 704 + }, + { + "name" : "minecraft:feather", + "id" : 327, + "runtimeId" : 370 + }, + { + "name" : "minecraft:gunpowder", + "id" : 328, + "runtimeId" : 527 + }, + { + "name" : "minecraft:wooden_hoe", + "id" : 329, + "runtimeId" : 1099 + }, + { + "name" : "minecraft:stone_hoe", + "id" : 330, + "runtimeId" : 713 + }, + { + "name" : "minecraft:iron_hoe", + "id" : 331, + "runtimeId" : 714 + }, + { + "name" : "minecraft:diamond_hoe", + "id" : 332, + "runtimeId" : 558 + }, + { + "name" : "minecraft:golden_hoe", + "id" : 333, + "runtimeId" : 717 + }, + { + "name" : "minecraft:wheat", + "id" : 334, + "runtimeId" : 734 + }, + { + "name" : "minecraft:leather_helmet", + "id" : 335, + "runtimeId" : 881 + }, + { + "name" : "minecraft:leather_chestplate", + "id" : 336, + "runtimeId" : 541 + }, + { + "name" : "minecraft:leather_leggings", + "id" : 337, + "runtimeId" : 507 + }, + { + "name" : "minecraft:leather_boots", + "id" : 338, + "runtimeId" : 516 + }, + { + "name" : "minecraft:chainmail_helmet", + "id" : 339, + "runtimeId" : 719 + }, + { + "name" : "minecraft:chainmail_chestplate", + "id" : 340, + "runtimeId" : 723 + }, + { + "name" : "minecraft:chainmail_leggings", + "id" : 341, + "runtimeId" : 461 + }, + { + "name" : "minecraft:chainmail_boots", + "id" : 342, + "runtimeId" : 735 + }, + { + "name" : "minecraft:iron_helmet", + "id" : 343, + "runtimeId" : 431 + }, + { + "name" : "minecraft:iron_chestplate", + "id" : 344, + "runtimeId" : 522 + }, + { + "name" : "minecraft:iron_leggings", + "id" : 345, + "runtimeId" : 870 + }, + { + "name" : "minecraft:iron_boots", + "id" : 346, + "runtimeId" : 742 + }, + { + "name" : "minecraft:diamond_helmet", + "id" : 347, + "runtimeId" : 752 + }, + { + "name" : "minecraft:diamond_chestplate", + "id" : 348, + "runtimeId" : 730 + }, + { + "name" : "minecraft:diamond_leggings", + "id" : 349, + "runtimeId" : 962 + }, + { + "name" : "minecraft:diamond_boots", + "id" : 350, + "runtimeId" : 675 + }, + { + "name" : "minecraft:golden_helmet", + "id" : 351, + "runtimeId" : 676 + }, + { + "name" : "minecraft:golden_chestplate", + "id" : 352, + "runtimeId" : 753 + }, + { + "name" : "minecraft:golden_leggings", + "id" : 353, + "runtimeId" : 686 + }, + { + "name" : "minecraft:golden_boots", + "id" : 354, + "runtimeId" : 646 + }, + { + "name" : "minecraft:shield", + "id" : 355, + "runtimeId" : 758 + }, + { + "name" : "minecraft:flint", + "id" : 356, + "runtimeId" : 937 + }, + { + "name" : "minecraft:painting", + "id" : 357, + "runtimeId" : 693 + }, + { + "name" : "minecraft:oak_sign", + "id" : 358, + "runtimeId" : 764 + }, + { + "name" : "minecraft:wooden_door", + "id" : 359, + "runtimeId" : 767 + }, + { + "name" : "minecraft:bucket", + "id" : 360, + "runtimeId" : 511 + }, + { + "name" : "minecraft:milk_bucket", + "id" : 361, + "runtimeId" : 748 + }, + { + "name" : "minecraft:water_bucket", + "id" : 362, + "runtimeId" : 839 + }, + { + "name" : "minecraft:lava_bucket", + "id" : 363, + "runtimeId" : 534 + }, + { + "name" : "minecraft:cod_bucket", + "id" : 364, + "runtimeId" : 656 + }, + { + "name" : "minecraft:salmon_bucket", + "id" : 365, + "runtimeId" : 571 + }, + { + "name" : "minecraft:tropical_fish_bucket", + "id" : 366, + "runtimeId" : 768 + }, + { + "name" : "minecraft:pufferfish_bucket", + "id" : 367, + "runtimeId" : 518 + }, + { + "name" : "minecraft:powder_snow_bucket", + "id" : 368, + "runtimeId" : 688 + }, + { + "name" : "minecraft:axolotl_bucket", + "id" : 369, + "runtimeId" : 506 + }, + { + "name" : "minecraft:minecart", + "id" : 370, + "runtimeId" : 576 + }, + { + "name" : "minecraft:saddle", + "id" : 371, + "runtimeId" : 771 + }, + { + "name" : "minecraft:iron_door", + "id" : 372, + "runtimeId" : 585 + }, + { + "name" : "minecraft:redstone", + "id" : 373, + "runtimeId" : 553 + }, + { + "name" : "minecraft:snowball", + "id" : 374, + "runtimeId" : 649 + }, + { + "name" : "minecraft:oak_boat", + "id" : 375, + "runtimeId" : 699 + }, + { + "name" : "minecraft:birch_boat", + "id" : 376, + "runtimeId" : 643 + }, + { + "name" : "minecraft:jungle_boat", + "id" : 377, + "runtimeId" : 835 + }, + { + "name" : "minecraft:spruce_boat", + "id" : 378, + "runtimeId" : 776 + }, + { + "name" : "minecraft:acacia_boat", + "id" : 379, + "runtimeId" : 910 + }, + { + "name" : "minecraft:dark_oak_boat", + "id" : 380, + "runtimeId" : 786 + }, + { + "name" : "minecraft:leather", + "id" : 381, + "runtimeId" : 850 + }, + { + "name" : "minecraft:kelp", + "id" : 382, + "runtimeId" : 788 + }, + { + "name" : "minecraft:brick", + "id" : 383, + "runtimeId" : 499 + }, + { + "name" : "minecraft:clay_ball", + "id" : 384, + "runtimeId" : 498 + }, + { + "name" : "minecraft:sugar_cane", + "id" : 385, + "runtimeId" : 495 + }, + { + "name" : "minecraft:paper", + "id" : 386, + "runtimeId" : 559 + }, + { + "name" : "minecraft:book", + "id" : 387, + "runtimeId" : 547 + }, + { + "name" : "minecraft:slime_ball", + "id" : 388, + "runtimeId" : 785 + }, + { + "name" : "minecraft:chest_minecart", + "id" : 389, + "runtimeId" : 494 + }, + { + "name" : "minecraft:egg", + "id" : 390, + "runtimeId" : 361 + }, + { + "name" : "minecraft:compass", + "id" : 391, + "runtimeId" : 493 + }, + { + "name" : "minecraft:fishing_rod", + "id" : 392, + "runtimeId" : 1021 + }, + { + "name" : "minecraft:clock", + "id" : 393, + "runtimeId" : 726 + }, + { + "name" : "minecraft:glowstone_dust", + "id" : 394, + "runtimeId" : 489 + }, + { + "name" : "minecraft:black_dye", + "id" : 395, + "runtimeId" : 421 + }, + { + "name" : "minecraft:red_dye", + "id" : 396, + "runtimeId" : 671 + }, + { + "name" : "minecraft:green_dye", + "id" : 397, + "runtimeId" : 1050 + }, + { + "name" : "minecraft:brown_dye", + "id" : 398, + "runtimeId" : 755 + }, + { + "name" : "minecraft:blue_dye", + "id" : 399, + "runtimeId" : 483 + }, + { + "name" : "minecraft:purple_dye", + "id" : 400, + "runtimeId" : 478 + }, + { + "name" : "minecraft:cyan_dye", + "id" : 401, + "runtimeId" : 538 + }, + { + "name" : "minecraft:light_gray_dye", + "id" : 402, + "runtimeId" : 476 + }, + { + "name" : "minecraft:gray_dye", + "id" : 403, + "runtimeId" : 473 + }, + { + "name" : "minecraft:pink_dye", + "id" : 404, + "runtimeId" : 1066 + }, + { + "name" : "minecraft:lime_dye", + "id" : 405, + "runtimeId" : 685 + }, + { + "name" : "minecraft:yellow_dye", + "id" : 406, + "runtimeId" : 593 + }, + { + "name" : "minecraft:light_blue_dye", + "id" : 407, + "runtimeId" : 599 + }, + { + "name" : "minecraft:magenta_dye", + "id" : 408, + "runtimeId" : 595 + }, + { + "name" : "minecraft:orange_dye", + "id" : 409, + "runtimeId" : 415 + }, + { + "name" : "minecraft:white_dye", + "id" : 410, + "runtimeId" : 791 + }, + { + "name" : "minecraft:bone_meal", + "id" : 411, + "runtimeId" : 465 + }, + { + "name" : "minecraft:cocoa_beans", + "id" : 412, + "runtimeId" : 546 + }, + { + "name" : "minecraft:ink_sac", + "id" : 413, + "runtimeId" : 782 + }, + { + "name" : "minecraft:lapis_lazuli", + "id" : 414, + "runtimeId" : 744 + }, + { + "name" : "minecraft:bone", + "id" : 415, + "runtimeId" : 770 + }, + { + "name" : "minecraft:sugar", + "id" : 416, + "runtimeId" : 470 + }, + { + "name" : "minecraft:cake", + "id" : 417, + "runtimeId" : 463 + }, + { + "name" : "minecraft:bed", + "id" : 418, + "runtimeId" : 462 + }, + { + "name" : "minecraft:repeater", + "id" : 419, + "runtimeId" : 1054 + }, + { + "name" : "minecraft:filled_map", + "id" : 420, + "runtimeId" : 408 + }, + { + "name" : "minecraft:shears", + "id" : 421, + "runtimeId" : 635 + }, + { + "name" : "minecraft:ender_pearl", + "id" : 422, + "runtimeId" : 422 + }, + { + "name" : "minecraft:blaze_rod", + "id" : 423, + "runtimeId" : 806 + }, + { + "name" : "minecraft:ghast_tear", + "id" : 424, + "runtimeId" : 454 + }, + { + "name" : "minecraft:gold_nugget", + "id" : 425, + "runtimeId" : 445 + }, + { + "name" : "minecraft:potion", + "id" : 426, + "runtimeId" : 442 + }, + { + "name" : "minecraft:glass_bottle", + "id" : 427, + "runtimeId" : 381 + }, + { + "name" : "minecraft:fermented_spider_eye", + "id" : 428, + "runtimeId" : 647 + }, + { + "name" : "minecraft:blaze_powder", + "id" : 429, + "runtimeId" : 444 + }, + { + "name" : "minecraft:magma_cream", + "id" : 430, + "runtimeId" : 458 + }, + { + "name" : "minecraft:brewing_stand", + "id" : 431, + "runtimeId" : 607 + }, + { + "name" : "minecraft:cauldron", + "id" : 432, + "runtimeId" : 760 + }, + { + "name" : "minecraft:ender_eye", + "id" : 433, + "runtimeId" : 961 + }, + { + "name" : "minecraft:glistering_melon_slice", + "id" : 434, + "runtimeId" : 450 + }, + { + "name" : "minecraft:chicken_spawn_egg", + "id" : 435, + "runtimeId" : 574 + }, + { + "name" : "minecraft:cow_spawn_egg", + "id" : 436, + "runtimeId" : 429 + }, + { + "name" : "minecraft:pig_spawn_egg", + "id" : 437, + "runtimeId" : 460 + }, + { + "name" : "minecraft:sheep_spawn_egg", + "id" : 438, + "runtimeId" : 427 + }, + { + "name" : "minecraft:wolf_spawn_egg", + "id" : 439, + "runtimeId" : 1030 + }, + { + "name" : "minecraft:mooshroom_spawn_egg", + "id" : 440, + "runtimeId" : 651 + }, + { + "name" : "minecraft:creeper_spawn_egg", + "id" : 441, + "runtimeId" : 995 + }, + { + "name" : "minecraft:enderman_spawn_egg", + "id" : 442, + "runtimeId" : 423 + }, + { + "name" : "minecraft:silverfish_spawn_egg", + "id" : 443, + "runtimeId" : 416 + }, + { + "name" : "minecraft:skeleton_spawn_egg", + "id" : 444, + "runtimeId" : 951 + }, + { + "name" : "minecraft:slime_spawn_egg", + "id" : 445, + "runtimeId" : 412 + }, + { + "name" : "minecraft:spider_spawn_egg", + "id" : 446, + "runtimeId" : 508 + }, + { + "name" : "minecraft:zombie_spawn_egg", + "id" : 447, + "runtimeId" : 512 + }, + { + "name" : "minecraft:zombie_pigman_spawn_egg", + "id" : 448, + "runtimeId" : 642 + }, + { + "name" : "minecraft:villager_spawn_egg", + "id" : 449, + "runtimeId" : 411 + }, + { + "name" : "minecraft:squid_spawn_egg", + "id" : 450, + "runtimeId" : 769 + }, + { + "name" : "minecraft:ocelot_spawn_egg", + "id" : 451, + "runtimeId" : 515 + }, + { + "name" : "minecraft:witch_spawn_egg", + "id" : 452, + "runtimeId" : 621 + }, + { + "name" : "minecraft:bat_spawn_egg", + "id" : 453, + "runtimeId" : 603 + }, + { + "name" : "minecraft:ghast_spawn_egg", + "id" : 454, + "runtimeId" : 968 + }, + { + "name" : "minecraft:magma_cube_spawn_egg", + "id" : 455, + "runtimeId" : 1013 + }, + { + "name" : "minecraft:blaze_spawn_egg", + "id" : 456, + "runtimeId" : 405 + }, + { + "name" : "minecraft:cave_spider_spawn_egg", + "id" : 457, + "runtimeId" : 403 + }, + { + "name" : "minecraft:horse_spawn_egg", + "id" : 458, + "runtimeId" : 400 + }, + { + "name" : "minecraft:rabbit_spawn_egg", + "id" : 459, + "runtimeId" : 433 + }, + { + "name" : "minecraft:endermite_spawn_egg", + "id" : 460, + "runtimeId" : 819 + }, + { + "name" : "minecraft:guardian_spawn_egg", + "id" : 461, + "runtimeId" : 397 + }, + { + "name" : "minecraft:stray_spawn_egg", + "id" : 462, + "runtimeId" : 565 + }, + { + "name" : "minecraft:husk_spawn_egg", + "id" : 463, + "runtimeId" : 394 + }, + { + "name" : "minecraft:wither_skeleton_spawn_egg", + "id" : 464, + "runtimeId" : 569 + }, + { + "name" : "minecraft:donkey_spawn_egg", + "id" : 465, + "runtimeId" : 577 + }, + { + "name" : "minecraft:mule_spawn_egg", + "id" : 466, + "runtimeId" : 652 + }, + { + "name" : "minecraft:skeleton_horse_spawn_egg", + "id" : 467, + "runtimeId" : 1026 + }, + { + "name" : "minecraft:zombie_horse_spawn_egg", + "id" : 468, + "runtimeId" : 857 + }, + { + "name" : "minecraft:shulker_spawn_egg", + "id" : 469, + "runtimeId" : 390 + }, + { + "name" : "minecraft:npc_spawn_egg", + "id" : 470, + "runtimeId" : 624 + }, + { + "name" : "minecraft:elder_guardian_spawn_egg", + "id" : 471, + "runtimeId" : 641 + }, + { + "name" : "minecraft:polar_bear_spawn_egg", + "id" : 472, + "runtimeId" : 941 + }, + { + "name" : "minecraft:llama_spawn_egg", + "id" : 473, + "runtimeId" : 834 + }, + { + "name" : "minecraft:vindicator_spawn_egg", + "id" : 474, + "runtimeId" : 568 + }, + { + "name" : "minecraft:evoker_spawn_egg", + "id" : 475, + "runtimeId" : 379 + }, + { + "name" : "minecraft:vex_spawn_egg", + "id" : 476, + "runtimeId" : 378 + }, + { + "name" : "minecraft:zombie_villager_spawn_egg", + "id" : 477, + "runtimeId" : 739 + }, + { + "name" : "minecraft:parrot_spawn_egg", + "id" : 478, + "runtimeId" : 367 + }, + { + "name" : "minecraft:tropical_fish_spawn_egg", + "id" : 479, + "runtimeId" : 532 + }, + { + "name" : "minecraft:cod_spawn_egg", + "id" : 480, + "runtimeId" : 783 + }, + { + "name" : "minecraft:pufferfish_spawn_egg", + "id" : 481, + "runtimeId" : 391 + }, + { + "name" : "minecraft:salmon_spawn_egg", + "id" : 482, + "runtimeId" : 374 + }, + { + "name" : "minecraft:drowned_spawn_egg", + "id" : 483, + "runtimeId" : 373 + }, + { + "name" : "minecraft:dolphin_spawn_egg", + "id" : 484, + "runtimeId" : 1078 + }, + { + "name" : "minecraft:turtle_spawn_egg", + "id" : 485, + "runtimeId" : 475 + }, + { + "name" : "minecraft:phantom_spawn_egg", + "id" : 486, + "runtimeId" : 1017 + }, + { + "name" : "minecraft:agent_spawn_egg", + "id" : 487, + "runtimeId" : 474 + }, + { + "name" : "minecraft:cat_spawn_egg", + "id" : 488, + "runtimeId" : 1074 + }, + { + "name" : "minecraft:panda_spawn_egg", + "id" : 489, + "runtimeId" : 364 + }, + { + "name" : "minecraft:fox_spawn_egg", + "id" : 490, + "runtimeId" : 551 + }, + { + "name" : "minecraft:pillager_spawn_egg", + "id" : 491, + "runtimeId" : 439 + }, + { + "name" : "minecraft:wandering_trader_spawn_egg", + "id" : 492, + "runtimeId" : 582 + }, + { + "name" : "minecraft:ravager_spawn_egg", + "id" : 493, + "runtimeId" : 824 + }, + { + "name" : "minecraft:bee_spawn_egg", + "id" : 494, + "runtimeId" : 464 + }, + { + "name" : "minecraft:strider_spawn_egg", + "id" : 495, + "runtimeId" : 360 + }, + { + "name" : "minecraft:hoglin_spawn_egg", + "id" : 496, + "runtimeId" : 496 + }, + { + "name" : "minecraft:piglin_spawn_egg", + "id" : 497, + "runtimeId" : 606 + }, + { + "name" : "minecraft:zoglin_spawn_egg", + "id" : 498, + "runtimeId" : 356 + }, + { + "name" : "minecraft:piglin_brute_spawn_egg", + "id" : 499, + "runtimeId" : 419 + }, + { + "name" : "minecraft:axolotl_spawn_egg", + "id" : 500, + "runtimeId" : 352 + }, + { + "name" : "minecraft:goat_spawn_egg", + "id" : 501, + "runtimeId" : 348 + }, + { + "name" : "minecraft:glow_squid_spawn_egg", + "id" : 502, + "runtimeId" : 618 + }, + { + "name" : "minecraft:glow_ink_sac", + "id" : 503, + "runtimeId" : 780 + }, + { + "name" : "minecraft:copper_ingot", + "id" : 504, + "runtimeId" : 945 + }, + { + "name" : "minecraft:raw_iron", + "id" : 505, + "runtimeId" : 807 + }, + { + "name" : "minecraft:raw_gold", + "id" : 506, + "runtimeId" : 809 + }, + { + "name" : "minecraft:raw_copper", + "id" : 507, + "runtimeId" : 811 + }, + { + "name" : "minecraft:experience_bottle", + "id" : 508, + "runtimeId" : 663 + }, + { + "name" : "minecraft:fire_charge", + "id" : 509, + "runtimeId" : 813 + }, + { + "name" : "minecraft:writable_book", + "id" : 510, + "runtimeId" : 817 + }, + { + "name" : "minecraft:written_book", + "id" : 511, + "runtimeId" : 426 + }, + { + "name" : "minecraft:emerald", + "id" : 512, + "runtimeId" : 820 + }, + { + "name" : "minecraft:frame", + "id" : 513, + "runtimeId" : 821 + }, + { + "name" : "minecraft:flower_pot", + "id" : 514, + "runtimeId" : 823 + }, + { + "name" : "minecraft:empty_map", + "id" : 515, + "runtimeId" : 827 + }, + { + "name" : "minecraft:skull", + "id" : 516, + "runtimeId" : 535 + }, + { + "name" : "minecraft:carrot_on_a_stick", + "id" : 517, + "runtimeId" : 828 + }, + { + "name" : "minecraft:nether_star", + "id" : 518, + "runtimeId" : 830 + }, + { + "name" : "minecraft:firework_rocket", + "id" : 519, + "runtimeId" : 832 + }, + { + "name" : "minecraft:firework_star", + "id" : 520, + "runtimeId" : 1081 + }, + { + "name" : "minecraft:enchanted_book", + "id" : 521, + "runtimeId" : 801 + }, + { + "name" : "minecraft:comparator", + "id" : 522, + "runtimeId" : 838 + }, + { + "name" : "minecraft:netherbrick", + "id" : 523, + "runtimeId" : 746 + }, + { + "name" : "minecraft:quartz", + "id" : 524, + "runtimeId" : 556 + }, + { + "name" : "minecraft:tnt_minecart", + "id" : 525, + "runtimeId" : 840 + }, + { + "name" : "minecraft:hopper_minecart", + "id" : 526, + "runtimeId" : 842 + }, + { + "name" : "minecraft:hopper", + "id" : 527, + "runtimeId" : 843 + }, + { + "name" : "minecraft:rabbit_foot", + "id" : 528, + "runtimeId" : 927 + }, + { + "name" : "minecraft:rabbit_hide", + "id" : 529, + "runtimeId" : 845 + }, + { + "name" : "minecraft:leather_horse_armor", + "id" : 530, + "runtimeId" : 848 + }, + { + "name" : "minecraft:iron_horse_armor", + "id" : 531, + "runtimeId" : 404 + }, + { + "name" : "minecraft:golden_horse_armor", + "id" : 532, + "runtimeId" : 358 + }, + { + "name" : "minecraft:diamond_horse_armor", + "id" : 533, + "runtimeId" : 738 + }, + { + "name" : "minecraft:music_disc_13", + "id" : 534, + "runtimeId" : 564 + }, + { + "name" : "minecraft:music_disc_cat", + "id" : 535, + "runtimeId" : 745 + }, + { + "name" : "minecraft:music_disc_blocks", + "id" : 536, + "runtimeId" : 1034 + }, + { + "name" : "minecraft:music_disc_chirp", + "id" : 537, + "runtimeId" : 851 + }, + { + "name" : "minecraft:music_disc_far", + "id" : 538, + "runtimeId" : 965 + }, + { + "name" : "minecraft:music_disc_mall", + "id" : 539, + "runtimeId" : 609 + }, + { + "name" : "minecraft:music_disc_mellohi", + "id" : 540, + "runtimeId" : 418 + }, + { + "name" : "minecraft:music_disc_stal", + "id" : 541, + "runtimeId" : 854 + }, + { + "name" : "minecraft:music_disc_strad", + "id" : 542, + "runtimeId" : 856 + }, + { + "name" : "minecraft:music_disc_ward", + "id" : 543, + "runtimeId" : 858 + }, + { + "name" : "minecraft:music_disc_11", + "id" : 544, + "runtimeId" : 829 + }, + { + "name" : "minecraft:music_disc_wait", + "id" : 545, + "runtimeId" : 862 + }, + { + "name" : "minecraft:trident", + "id" : 546, + "runtimeId" : 897 + }, + { + "name" : "minecraft:lead", + "id" : 547, + "runtimeId" : 728 + }, + { + "name" : "minecraft:name_tag", + "id" : 548, + "runtimeId" : 485 + }, + { + "name" : "minecraft:prismarine_crystals", + "id" : 549, + "runtimeId" : 833 + }, + { + "name" : "minecraft:mutton", + "id" : 550, + "runtimeId" : 864 + }, + { + "name" : "minecraft:cooked_mutton", + "id" : 551, + "runtimeId" : 757 + }, + { + "name" : "minecraft:armor_stand", + "id" : 552, + "runtimeId" : 383 + }, + { + "name" : "minecraft:spruce_door", + "id" : 553, + "runtimeId" : 615 + }, + { + "name" : "minecraft:birch_door", + "id" : 554, + "runtimeId" : 469 + }, + { + "name" : "minecraft:jungle_door", + "id" : 555, + "runtimeId" : 479 + }, + { + "name" : "minecraft:acacia_door", + "id" : 556, + "runtimeId" : 1104 + }, + { + "name" : "minecraft:dark_oak_door", + "id" : 557, + "runtimeId" : 777 + }, + { + "name" : "minecraft:chorus_fruit", + "id" : 558, + "runtimeId" : 966 + }, + { + "name" : "minecraft:popped_chorus_fruit", + "id" : 559, + "runtimeId" : 567 + }, + { + "name" : "minecraft:dragon_breath", + "id" : 560, + "runtimeId" : 871 + }, + { + "name" : "minecraft:splash_potion", + "id" : 561, + "runtimeId" : 873 + }, + { + "name" : "minecraft:lingering_potion", + "id" : 562, + "runtimeId" : 384 + }, + { + "name" : "minecraft:command_block_minecart", + "id" : 563, + "runtimeId" : 874 + }, + { + "name" : "minecraft:elytra", + "id" : 564, + "runtimeId" : 882 + }, + { + "name" : "minecraft:prismarine_shard", + "id" : 565, + "runtimeId" : 884 + }, + { + "name" : "minecraft:shulker_shell", + "id" : 566, + "runtimeId" : 650 + }, + { + "name" : "minecraft:banner", + "id" : 567, + "runtimeId" : 1096 + }, + { + "name" : "minecraft:totem_of_undying", + "id" : 568, + "runtimeId" : 887 + }, + { + "name" : "minecraft:iron_nugget", + "id" : 569, + "runtimeId" : 891 + }, + { + "name" : "minecraft:nautilus_shell", + "id" : 570, + "runtimeId" : 894 + }, + { + "name" : "minecraft:heart_of_the_sea", + "id" : 571, + "runtimeId" : 566 + }, + { + "name" : "minecraft:scute", + "id" : 572, + "runtimeId" : 898 + }, + { + "name" : "minecraft:turtle_helmet", + "id" : 573, + "runtimeId" : 900 + }, + { + "name" : "minecraft:phantom_membrane", + "id" : 574, + "runtimeId" : 902 + }, + { + "name" : "minecraft:crossbow", + "id" : 575, + "runtimeId" : 847 + }, + { + "name" : "minecraft:spruce_sign", + "id" : 576, + "runtimeId" : 904 + }, + { + "name" : "minecraft:birch_sign", + "id" : 577, + "runtimeId" : 815 + }, + { + "name" : "minecraft:jungle_sign", + "id" : 578, + "runtimeId" : 792 + }, + { + "name" : "minecraft:acacia_sign", + "id" : 579, + "runtimeId" : 907 + }, + { + "name" : "minecraft:dark_oak_sign", + "id" : 580, + "runtimeId" : 825 + }, + { + "name" : "minecraft:flower_banner_pattern", + "id" : 581, + "runtimeId" : 908 + }, + { + "name" : "minecraft:creeper_banner_pattern", + "id" : 582, + "runtimeId" : 911 + }, + { + "name" : "minecraft:skull_banner_pattern", + "id" : 583, + "runtimeId" : 648 + }, + { + "name" : "minecraft:mojang_banner_pattern", + "id" : 584, + "runtimeId" : 620 + }, + { + "name" : "minecraft:field_masoned_banner_pattern", + "id" : 585, + "runtimeId" : 913 + }, + { + "name" : "minecraft:bordure_indented_banner_pattern", + "id" : 586, + "runtimeId" : 879 + }, + { + "name" : "minecraft:piglin_banner_pattern", + "id" : 587, + "runtimeId" : 598 + }, + { + "name" : "minecraft:globe_banner_pattern", + "id" : 588, + "runtimeId" : 915 + }, + { + "name" : "minecraft:campfire", + "id" : 589, + "runtimeId" : 1006 + }, + { + "name" : "minecraft:suspicious_stew", + "id" : 590, + "runtimeId" : 467 + }, + { + "name" : "minecraft:honeycomb", + "id" : 591, + "runtimeId" : 1037 + }, + { + "name" : "minecraft:honey_bottle", + "id" : 592, + "runtimeId" : 514 + }, + { + "name" : "minecraft:camera", + "id" : 593, + "runtimeId" : 664 + }, + { + "name" : "minecraft:compound", + "id" : 594, + "runtimeId" : 918 + }, + { + "name" : "minecraft:ice_bomb", + "id" : 595, + "runtimeId" : 920 + }, + { + "name" : "minecraft:bleach", + "id" : 596, + "runtimeId" : 401 + }, + { + "name" : "minecraft:rapid_fertilizer", + "id" : 597, + "runtimeId" : 895 + }, + { + "name" : "minecraft:balloon", + "id" : 598, + "runtimeId" : 869 + }, + { + "name" : "minecraft:medicine", + "id" : 599, + "runtimeId" : 917 + }, + { + "name" : "minecraft:sparkler", + "id" : 600, + "runtimeId" : 921 + }, + { + "name" : "minecraft:glow_stick", + "id" : 601, + "runtimeId" : 435 + }, + { + "name" : "minecraft:lodestone_compass", + "id" : 602, + "runtimeId" : 928 + }, + { + "name" : "minecraft:netherite_ingot", + "id" : 603, + "runtimeId" : 930 + }, + { + "name" : "minecraft:netherite_sword", + "id" : 604, + "runtimeId" : 931 + }, + { + "name" : "minecraft:netherite_shovel", + "id" : 605, + "runtimeId" : 933 + }, + { + "name" : "minecraft:netherite_pickaxe", + "id" : 606, + "runtimeId" : 491 + }, + { + "name" : "minecraft:netherite_axe", + "id" : 607, + "runtimeId" : 936 + }, + { + "name" : "minecraft:netherite_hoe", + "id" : 608, + "runtimeId" : 938 + }, + { + "name" : "minecraft:netherite_helmet", + "id" : 609, + "runtimeId" : 596 + }, + { + "name" : "minecraft:netherite_chestplate", + "id" : 610, + "runtimeId" : 942 + }, + { + "name" : "minecraft:netherite_leggings", + "id" : 611, + "runtimeId" : 860 + }, + { + "name" : "minecraft:netherite_boots", + "id" : 612, + "runtimeId" : 997 + }, + { + "name" : "minecraft:netherite_scrap", + "id" : 613, + "runtimeId" : 943 + }, + { + "name" : "minecraft:crimson_sign", + "id" : 614, + "runtimeId" : 712 + }, + { + "name" : "minecraft:warped_sign", + "id" : 615, + "runtimeId" : 979 + }, + { + "name" : "minecraft:crimson_door", + "id" : 616, + "runtimeId" : 944 + }, + { + "name" : "minecraft:warped_door", + "id" : 617, + "runtimeId" : 524 + }, + { + "name" : "minecraft:warped_fungus_on_a_stick", + "id" : 618, + "runtimeId" : 946 + }, + { + "name" : "minecraft:chain", + "id" : 619, + "runtimeId" : 947 + }, + { + "name" : "minecraft:music_disc_pigstep", + "id" : 620, + "runtimeId" : 855 + }, + { + "name" : "minecraft:nether_sprouts", + "id" : 621, + "runtimeId" : 899 + }, + { + "name" : "minecraft:soul_campfire", + "id" : 622, + "runtimeId" : 950 + }, + { + "name" : "minecraft:glow_frame", + "id" : 623, + "runtimeId" : 504 + }, + { + "name" : "minecraft:amethyst_shard", + "id" : 624, + "runtimeId" : 957 + }, + { + "name" : "minecraft:spyglass", + "id" : 625, + "runtimeId" : 398 + }, + { + "name" : "minecraft:music_disc_otherside", + "id" : 626, + "runtimeId" : 960 + }, + { + "name" : "minecraft:frog_spawn_egg", + "id" : 627, + "runtimeId" : 963 + }, + { + "name" : "minecraft:tadpole_spawn_egg", + "id" : 628, + "runtimeId" : 969 + }, + { + "name" : "minecraft:tadpole_bucket", + "id" : 629, + "runtimeId" : 1076 + }, + { + "name" : "minecraft:allay_spawn_egg", + "id" : 630, + "runtimeId" : 537 + }, + { + "name" : "minecraft:warden_spawn_egg", + "id" : 631, + "runtimeId" : 872 + }, + { + "name" : "minecraft:firefly_spawn_egg", + "id" : 632, + "runtimeId" : 844 + }, + { + "name" : "minecraft:oak_chest_boat", + "id" : 633, + "runtimeId" : 976 + }, + { + "name" : "minecraft:birch_chest_boat", + "id" : 634, + "runtimeId" : 980 + }, + { + "name" : "minecraft:jungle_chest_boat", + "id" : 635, + "runtimeId" : 919 + }, + { + "name" : "minecraft:spruce_chest_boat", + "id" : 636, + "runtimeId" : 958 + }, + { + "name" : "minecraft:acacia_chest_boat", + "id" : 637, + "runtimeId" : 696 + }, + { + "name" : "minecraft:dark_oak_chest_boat", + "id" : 638, + "runtimeId" : 683 + }, + { + "name" : "minecraft:chest_boat", + "id" : 639, + "runtimeId" : 808 + }, + { + "name" : "minecraft:boat", + "id" : 640, + "runtimeId" : 267 + }, + { + "name" : "minecraft:dye", + "id" : 641, + "runtimeId" : 264 + }, + { + "name" : "minecraft:banner_pattern", + "id" : 642, + "runtimeId" : 263 + }, + { + "name" : "minecraft:spawn_egg", + "id" : 643, + "runtimeId" : 262 + }, + { + "name" : "minecraft:end_crystal", + "id" : 644, + "runtimeId" : 1048 + }, + { + "name" : "minecraft:glow_berries", + "id" : 645, + "runtimeId" : 260 + } +] \ No newline at end of file