diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml new file mode 100644 index 000000000..2bca6f5e2 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug.yml @@ -0,0 +1,41 @@ +name: I found a bug! +description: "Report some other kind of issue. You should ask in the Discord first to make sure it's actually a bug with Create." +labels: [ "type: bug" ] +body: + - type: textarea + attributes: + label: Description + description: " + Please describe the issue with as much detail as possible. + Explain what happened, and what should have happened instead. + Add images, screenshots, or videos if they could be useful." + validations: + required: true + + - type: input + attributes: + label: Game Log + description: " + We need the game log for additional information about the bug. + This file can be found in the \"logs\" folder of your Minecraft folder as \"latest.log\". + Please upload the file to https://mclo.gs/ and put the link here. + Do **not** paste the *contents* of the file here, because that will make this issue very hard to read. + " + validations: + required: true + + - type: textarea + attributes: + label: Debug Information + description: " + Please run the \"/create debuginfo\" command in-game. + This will copy useful information to your clipboard that will greatly help with debugging. + Please paste this information here. + If this command does not exist, you can skip this part. + " + validations: + required: false + + - type: markdown + attributes: + value: "Thank you for taking the time to make a report and help improve Create!" diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml deleted file mode 100644 index ade86dc99..000000000 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ /dev/null @@ -1,155 +0,0 @@ -name: Bug Report -description: Create a bug report to help us improve Create -labels: [ "type: bug" ] -body: - - type: textarea - attributes: - label: Describe the Bug - description: A clear and concise description of what the bug is - validations: - required: true - - type: textarea - attributes: - label: Reproduction Steps - description: Tell us about the steps to reproduce the bug. - value: | - 1. - 2. - 3. - ... - validations: - required: true - - type: textarea - attributes: - label: Expected Result - description: A clear and concise description of what you expected to happen - validations: - required: true - - type: textarea - attributes: - label: Screenshots and Videos - description: If applicable, add screenshots or videos to help explain your problem. - validations: - required: false - - type: input - attributes: - label: Crash Report or Log - description: If applicable, please add a **link** to the crash report or log that was created when this issue occured. You can upload the crash report to a site like Pastebin or GitHub Gist. Please **do not** paste the whole crash report in this issue. - validations: - required: false - - type: input - attributes: - label: Operating System - description: The operating system you were using when the bug occured - placeholder: Windows 11 - validations: - required: true - - type: dropdown - attributes: - label: Mod Version - description: The version of the mod you were using when the bug occured - options: - - "0.5.1f" - - "0.5.1e" - - "0.5.1d" - - "0.5.1c" - - "0.5.1b" - - "0.5.1a" - - "0.5.0i" - - "0.5.0h" - - "0.5.0g" - - "0.5.0f" - - "0.5.0e" - - "0.5.0d" - - "0.5.0c" - - "0.5.0b" - - "0.5.0a" - - "0.5.0" - - "0.4.1" - - "0.4.0f" - - "0.4.0e" - - "0.4.0d" - - "0.4.0c" - - "0.4.0b" - - "0.4.0a" - - "0.4.0" - - "0.3.2g" - - "0.3.2f" - - "0.3.2e" - - "0.3.2d" - - "0.3.2c" - - "0.3.2b" - - "0.3.2a" - - "0.3.2" - - "0.3.1c" - - "0.3.1b" - - "0.3.1a" - - "0.3.1" - - "0.3.0e" - - "0.3.0d" - - "0.3.0c" - - "0.3.0b" - - "0.3.0a" - - "0.3.0" - - "0.2.4e" - - "0.2.4d" - - "0.2.4c" - - "0.2.4b" - - "0.2.4a" - - "0.2.4" - - "0.2.3" - - "0.2.2b" - - "0.2.2a" - - "0.2.2" - - "0.2.1" - - "0.2.0" - - "0.1.1a" - - "0.1.1" - - "0.1.0" - - "0.0.5" - - "0.0.4" - - "0.0.3" - - "0.0.2" - - "0.0.1" - validations: - required: true - - type: dropdown - attributes: - label: Minecraft Version - description: The version of Minecraft you were using when the bug occured - options: - - "1.20.1" - - "1.19.2" - - "1.18.2" - - "1.18.1" - - "1.18" - - "1.17.1" - - "1.16.5" - - "1.16.4" - - "1.16.3" - - "1.15.2" - - "1.14.4" - validations: - required: true - - type: input - attributes: - label: Forge Version - description: The version of Forge you were using when the bug occured - placeholder: 36.2.0 - validations: - required: true - - type: textarea - attributes: - label: Other Mods - description: Please list any other mods that were running when the crash happened. - validations: - required: false - - type: textarea - attributes: - label: Additional Context - description: Add any extra context about the bug here - validations: - required: false - - type: markdown - attributes: - value: "Thank you for taking the time to make this bug report and help improve Create!" diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 000000000..c9c7595f4 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,11 @@ +blank_issues_enabled: true +contact_links: + - name: I have a question! + url: https://discord.gg/hmaD7Se + about: Join us on Discord and ask the community. + - name: I have a suggestion or idea! + url: https://discord.gg/hmaD7Se + about: These are best discussed with the community and submitted on Discord. + - name: Talk to us on Discord. + url: https://discord.gg/hmaD7Se + about: Ask questions and get help from the community. diff --git a/.github/ISSUE_TEMPLATE/crash.yml b/.github/ISSUE_TEMPLATE/crash.yml new file mode 100644 index 000000000..a5d70e2c5 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/crash.yml @@ -0,0 +1,27 @@ +name: My game crashed! +description: Report an issue that crashes the game. +labels: [ "type: crash" ] +body: + - type: textarea + attributes: + label: Context + description: What were you doing when the game crashed? Add images, screenshots, or videos if they could be useful. + validations: + required: true + + - type: input + attributes: + label: Crash Report + description: " + We need the crash report to figure out why the crash happened. + This file can be found in the \"crash-reports\" folder of your Minecraft folder. + It will be the newest file there. + Please upload the file to https://mclo.gs/ and put the link here. + Do **not** paste the *contents* of the file here, because that will make this issue very hard to read. + " + validations: + required: true + + - type: markdown + attributes: + value: "Thank you for taking the time to make a report and help improve Create!" diff --git a/.github/ISSUE_TEMPLATE/suggestion.yml b/.github/ISSUE_TEMPLATE/suggestion.yml deleted file mode 100644 index ff5acdb33..000000000 --- a/.github/ISSUE_TEMPLATE/suggestion.yml +++ /dev/null @@ -1,25 +0,0 @@ -name: Suggestion -description: Suggest something that would improve Create -labels: [ "type: suggestion" ] -body: - - type: textarea - attributes: - label: Describe the Suggestion - description: What should we add or change to make Create better? - validations: - required: true - - type: textarea - attributes: - label: Screenshots and Videos - description: If applicable, add screenshots or videos to help explain your suggestion. - validations: - required: false - - type: textarea - attributes: - label: Additional Context - description: Add any extra context about the suggestion here. - validations: - required: false - - type: markdown - attributes: - value: "Thank you for taking the time to make this suggestion and help improve Create!" diff --git a/.github/config/labels.yml b/.github/config/labels.yml deleted file mode 100644 index 29e1fdc47..000000000 --- a/.github/config/labels.yml +++ /dev/null @@ -1,12 +0,0 @@ -'version: 1.14': - - '1\.14(?:\.\d)?' -'version: 1.15': - - '1\.15(?:\.\d)?' -'version: 1.16': - - '1\.16(?:\.\d)?' -'version: 1.17': - - '1\.17(?:\.\d)?' -'version: 1.18': - - '1\.18(?:\.\d)?' -'version: 1.19': - - '1\.19(?:\.\d)?' diff --git a/.github/workflows/label_issues.yml b/.github/workflows/label_issues.yml deleted file mode 100644 index 02ae70908..000000000 --- a/.github/workflows/label_issues.yml +++ /dev/null @@ -1,15 +0,0 @@ -name: "Label Issues" -on: - issues: - types: [opened, edited] - -jobs: - label: - runs-on: ubuntu-latest - steps: - - uses: github/issue-labeler@v3.0 - with: - configuration-path: .github/config/labels.yml - enable-versioned-regex: 0 - repo-token: ${{ secrets.GITHUB_TOKEN }} - sync-labels: 1 diff --git a/.idea/icon.png b/.idea/icon.png new file mode 100644 index 000000000..63aabf0ae Binary files /dev/null and b/.idea/icon.png differ diff --git a/build.gradle b/build.gradle index ae5d883dd..52719cb87 100644 --- a/build.gradle +++ b/build.gradle @@ -53,6 +53,7 @@ minecraft { workingDirectory project.file('run') arg '-mixin.config=create.mixins.json' //jvmArgs '-XX:+UnlockCommercialFeatures' // uncomment for profiling + //jvmArgs '-XX:+IgnoreUnrecognizedVMOptions', '-XX:+AllowEnhancedClassRedefinition' // uncomment with jbr property 'forge.logging.console.level', 'info' mods { create { @@ -193,16 +194,46 @@ dependencies { runtimeOnly fg.deobf("cc.tweaked:cc-tweaked-${cc_tweaked_minecraft_version}-forge:${cc_tweaked_version}") } + if (dynamic_trees_enable.toBoolean()) { + compileOnly fg.deobf("com.ferreusveritas.dynamictrees:DynamicTrees-${dynamic_trees_minecraft_version}:${dynamic_trees_version}") + } + + // implementation fg.deobf("curse.maven:ic2-classic-242942:4563059") // implementation fg.deobf("curse.maven:druidcraft-340991:3101903") + // implementation fg.deobf("com.ferreusveritas.dynamictrees:DynamicTrees-1.16.5:0.10.0-Beta25") + runtimeOnly fg.deobf("curse.maven:framedblocks-441647:5399211") + // runtimeOnly fg.deobf("curse.maven:galosphere-631098:4398234") + // runtimeOnly fg.deobf("curse.maven:elementary-ores-332609:3956498") + // runtimeOnly fg.deobf("curse.maven:flib-661261:3956196") + // runtimeOnly fg.deobf("curse.maven:infernal-expansion-395078:3854062") // runtimeOnly fg.deobf("vazkii.arl:AutoRegLib:1.4-35.69") // runtimeOnly fg.deobf("vazkii.quark:Quark:r2.0-212.984") - // runtimeOnly fg.deobf("slimeknights.mantle:Mantle:1.16.5-1.6.115") - // runtimeOnly fg.deobf("slimeknights.tconstruct:TConstruct:1.16.5-3.1.1.252") + // runtimeOnly fg.deobf("curse.maven:mantle-74924:4509007") + // runtimeOnly fg.deobf("curse.maven:tinkers-construct-74072:4509008") // runtimeOnly fg.deobf("maven.modrinth:rubidium:0.5.3") // implementation fg.deobf("com.railwayteam.railways:railways-1.18.2-1.1.1:all") { transitive = false } // runtimeOnly fg.deobf("maven.modrinth:aether:1.19.2-1.0.0-beta.1.1-forge") // runtimeOnly fg.deobf("maven.modrinth:spark:1.10.38-forge") + // runtimeOnly fg.deobf("curse.maven:forbidden-arcanus-309858:4729924") + // runtimeOnly fg.deobf("curse.maven:valhelsia-core-416935:3886212") + // implementation fg.deobf("curse.maven:modern-ui-352491:5229350") + // runtimeOnly fg.deobf("curse.maven:sophisticated-storage-619320:5194748") + // runtimeOnly fg.deobf("curse.maven:sophisticated-core-618298:5296312") + // runtimeOnly fg.deobf("curse.maven:functional-storage-556861:5271589") + // runtimeOnly fg.deobf("curse.maven:titanium-287342:5151207") + // runtimeOnly fg.deobf("curse.maven:storage-drawers-223852:3807626") + // implementation fg.deobf("curse.maven:ftb-chunks-forge-314906:4494633") + // implementation fg.deobf("curse.maven:architectury-api-419699:4521465") + // implementation fg.deobf("curse.maven:ftb-library-forge-404465:4396792") + // implementation fg.deobf("curse.maven:ftb-teams-forge-404468:4579981") + // runtimeOnly fg.deobf("curse.maven:forbidden-arcanus-309858:4729924") + // runtimeOnly fg.deobf("curse.maven:valhelsia-core-416935:3886212") + // runtimeOnly fg.deobf("curse.maven:citadel-331936:3783096") + // runtimeOnly fg.deobf("curse.maven:ice-and-fire-dragons-264231:4614465") + // runtimeOnly fg.deobf("curse.maven:exnihilosequentia-400012:4083676") + // runtimeOnly fg.deobf("curse.maven:upgrade-aquatic-326895:4365140") + // runtimeOnly fg.deobf("curse.maven:blueprint-382216:3991478") // https://discord.com/channels/313125603924639766/725850371834118214/910619168821354497 // Prevent Mixin annotation processor from getting into IntelliJ's annotation processor settings diff --git a/gradle.properties b/gradle.properties index e20117fbc..6eec806c7 100644 --- a/gradle.properties +++ b/gradle.properties @@ -4,7 +4,7 @@ org.gradle.jvmargs = -Xmx3G org.gradle.daemon = false # mod version info -mod_version = 0.5.1.f +mod_version = 0.5.1.g artifact_minecraft_version = 1.20.1 minecraft_version = 1.20.1 @@ -25,7 +25,7 @@ registrate_version = MC1.20-1.3.3 flywheel_minecraft_version = 1.20.1 flywheel_version = 0.6.10-7 jei_minecraft_version = 1.20.1 -jei_version = 15.2.0.22 +jei_version = 15.10.0.39 curios_minecraft_version = 1.20.1 curios_version = 5.3.1 @@ -33,6 +33,10 @@ cc_tweaked_enable = true cc_tweaked_minecraft_version = 1.20.1 cc_tweaked_version = 1.105.0 +dynamic_trees_enable = true +dynamic_trees_minecraft_version = 1.20.1 +dynamic_trees_version = 1.3.0-BETA13 + # curseforge information projectId = 328085 curse_type = beta diff --git a/src/generated/resources/.cache/12afe0d97856fb2040b8407470e6d13529994eaa b/src/generated/resources/.cache/12afe0d97856fb2040b8407470e6d13529994eaa index 68c4ca973..050b8a233 100644 --- a/src/generated/resources/.cache/12afe0d97856fb2040b8407470e6d13529994eaa +++ b/src/generated/resources/.cache/12afe0d97856fb2040b8407470e6d13529994eaa @@ -1,4 +1,4 @@ -// 1.20.1 2023-09-20T19:40:25.4471912 Create's Sequenced Assembly Recipes +// 1.20.1 2024-08-07T16:05:58.7625129 Create's Sequenced Assembly Recipes dbaca5a5aa312f3bc7b826e51e665d32e798a5d7 data/create/recipes/sequenced_assembly/precision_mechanism.json -0cdbd4f583aa0a2aa8f3ca2827199bede1732722 data/create/recipes/sequenced_assembly/sturdy_sheet.json +dacafdb106304d183b00e21fb01517ac45eca800 data/create/recipes/sequenced_assembly/sturdy_sheet.json 1274315b5c570722d6f5b2ed7f5e53fe01b6288a data/create/recipes/sequenced_assembly/track.json diff --git a/src/generated/resources/.cache/455c485c9c8ef171bbc1ce4d435b3110ba1557ba b/src/generated/resources/.cache/455c485c9c8ef171bbc1ce4d435b3110ba1557ba index 8e85fcbb8..eac7d90b4 100644 --- a/src/generated/resources/.cache/455c485c9c8ef171bbc1ce4d435b3110ba1557ba +++ b/src/generated/resources/.cache/455c485c9c8ef171bbc1ce4d435b3110ba1557ba @@ -1,4 +1,4 @@ -// 1.20.1 2023-09-20T19:40:25.3622264 Create's Advancements +// 1.20.1 2024-08-07T16:05:58.6895379 Create's Advancements 2661a689fdcf729494f46e3c719f71c62e31582e data/create/advancements/andesite_alloy.json fa16c4afe0496edc3f157858a6e0ff177a1622ff data/create/advancements/andesite_casing.json 5a694002d0a663bc869b09d15924a10c43dc522f data/create/advancements/anvil_plough.json @@ -77,7 +77,7 @@ b3c18b1d41126d135318769f83ccc6fe51da2c54 data/create/advancements/steam_engine_m b77e7b17c397cc88ca2f75f68c52d60488ece97a data/create/advancements/stressometer_maxed.json cc75b35e53137d229896c334f09ebc5930f56307 data/create/advancements/sturdy_sheet.json 4794a7d7ea140333809bb78b77a30997bbb606bd data/create/advancements/super_glue.json -7431347d2edcda21fbc05541bb5fb8b12c17965b data/create/advancements/track_0.json +cbc796a4bd3dd9bb3e66ab437b27fcf5a1fdc050 data/create/advancements/track_0.json 916a9a75900fa36aa3c5422d4e35eeeb57d20f61 data/create/advancements/track_crafting_factory.json 4938c2be415c15a70a41570bbb49f772eaed5af0 data/create/advancements/track_signal.json 797f76512083d562549a20e9abc679846cce885f data/create/advancements/train.json diff --git a/src/generated/resources/.cache/6ec3b5a261c9ae3df674f7595dc66530ce54feb9 b/src/generated/resources/.cache/6ec3b5a261c9ae3df674f7595dc66530ce54feb9 index 5f7745127..cafd8c123 100644 --- a/src/generated/resources/.cache/6ec3b5a261c9ae3df674f7595dc66530ce54feb9 +++ b/src/generated/resources/.cache/6ec3b5a261c9ae3df674f7595dc66530ce54feb9 @@ -1,4 +1,4 @@ -// 1.20.1 2023-09-20T19:40:25.4511802 Create's Mechanical Crafting Recipes +// 1.20.1 2024-08-07T16:05:58.768009 Create's Mechanical Crafting Recipes f076d64d9f30709bed34775136c9241097b28aa9 data/create/recipes/mechanical_crafting/crushing_wheel.json 694dca9dcff246bb7f560b3304fcc244c53217d5 data/create/recipes/mechanical_crafting/extendo_grip.json 3b2837b08607c1ca466fa3eb418209b2e55da6ba data/create/recipes/mechanical_crafting/potato_cannon.json diff --git a/src/generated/resources/.cache/82992cbf8f2794d83ac94034835eac0acd7915b9 b/src/generated/resources/.cache/82992cbf8f2794d83ac94034835eac0acd7915b9 index 115b97527..dffa06f52 100644 --- a/src/generated/resources/.cache/82992cbf8f2794d83ac94034835eac0acd7915b9 +++ b/src/generated/resources/.cache/82992cbf8f2794d83ac94034835eac0acd7915b9 @@ -1,4 +1,4 @@ -// 1.20.1 2023-09-20T19:40:25.4471912 Create's Standard Recipes +// 1.20.1 2024-08-07T16:05:58.7635096 Create's Standard Recipes a8cc4af26f6c7c45a9eef12e92af1452fe042454 data/create/advancements/recipes/combat/crafting/appliances/netherite_backtank.json 2c2639c7b307ee7c7a4e97e5efebf496788998ad data/create/advancements/recipes/combat/crafting/appliances/netherite_backtank_from_netherite.json 81dcf0cb1aa99e39bc7d1a386e07cad4cee7d8b9 data/create/advancements/recipes/combat/crafting/appliances/netherite_diving_boots.json @@ -7,18 +7,26 @@ a8cc4af26f6c7c45a9eef12e92af1452fe042454 data/create/advancements/recipes/combat c1f2e6d1d955fb2d6d7ccc7a6d45d051bbcab315 data/create/advancements/recipes/combat/crafting/appliances/netherite_diving_helmet_from_netherite.json 6418408e9fe53c03eae1e2b17b2229a548abc226 data/create/advancements/recipes/misc/blasting/copper_ingot_from_crushed.json d88c5c8b6751f389d9eea30acbd566c120e77705 data/create/advancements/recipes/misc/blasting/gold_ingot_from_crushed.json +c5eabab1b28eaf8d83007b303480f12d8c319c4d data/create/advancements/recipes/misc/blasting/ingot_aluminum_compat_ic2.json 2532dd0af4124639c26525b6c4bbaf8059132903 data/create/advancements/recipes/misc/blasting/ingot_aluminum_compat_immersiveengineering.json 6b62cf9551e30b3560349e8d905cd10b446a98fd data/create/advancements/recipes/misc/blasting/ingot_lead_compat_immersiveengineering.json 4568168d851832c9eefd177c64a2de9c40e9954b data/create/advancements/recipes/misc/blasting/ingot_lead_compat_mekanism.json cdcf764d3eb5fba5ebaf17be87398ed68edfa43c data/create/advancements/recipes/misc/blasting/ingot_nickel_compat_immersiveengineering.json 556013ab3ed25759da841832ff373e2a5421049b data/create/advancements/recipes/misc/blasting/ingot_osmium_compat_mekanism.json +8c1a984764bf4a9f1b1be8988d174c5aed827b00 data/create/advancements/recipes/misc/blasting/ingot_silver_compat_ic2.json f013cfdc88c5e93d7f351aea6db34ce30870cb2c data/create/advancements/recipes/misc/blasting/ingot_silver_compat_immersiveengineering.json +a92969c36b7aad976b8212d1dd8893a6ff4273d2 data/create/advancements/recipes/misc/blasting/ingot_tin_compat_ic2.json e6ff5fab7af4a92a28be16484cb580423a6bc898 data/create/advancements/recipes/misc/blasting/ingot_tin_compat_mekanism.json +33b46fd8c73dd6c2436347fff471bec173b7e373 data/create/advancements/recipes/misc/blasting/ingot_uranium_compat_ic2.json b02cf7e00ee7b0d12a37e7ba5b5134ac31ae9bd4 data/create/advancements/recipes/misc/blasting/ingot_uranium_compat_immersiveengineering.json ee732ef02b3d210dd10aeec1799da1ca6230276b data/create/advancements/recipes/misc/blasting/ingot_uranium_compat_mekanism.json b90af96817d6c38ec446f7464642a473a55c2027 data/create/advancements/recipes/misc/blasting/iron_ingot_from_crushed.json +97bc03e4bb939ad037b6a2d139b9510030cdbd74 data/create/advancements/recipes/misc/blasting/lead_ingot_compat_oreganized.json 39420bdfe874164a75a4df767483a6903d24e8ab data/create/advancements/recipes/misc/blasting/lead_ingot_compat_thermal.json 6b918d2552c2c764f62ae8a68f1bdd8cf3b4d2a6 data/create/advancements/recipes/misc/blasting/nickel_ingot_compat_thermal.json +7c201c88e77c537d30b6be5571b418dcfafda2e9 data/create/advancements/recipes/misc/blasting/silver_ingot_compat_galosphere.json +39a325925c92012ff849877846ecea4224c06dc8 data/create/advancements/recipes/misc/blasting/silver_ingot_compat_iceandfire.json +5b10d7e8219158fa25c587ba1709ade3ca718500 data/create/advancements/recipes/misc/blasting/silver_ingot_compat_oreganized.json 76ba5762a4b104a84b7501056237cbf15a9a41d0 data/create/advancements/recipes/misc/blasting/silver_ingot_compat_thermal.json 9ec161b962d41a0773cbbff7328947e89cfa0585 data/create/advancements/recipes/misc/blasting/tin_ingot_compat_thermal.json 6e09fdea2fd2fea9cd54d33c9e094c9528ee1603 data/create/advancements/recipes/misc/blasting/zinc_ingot_from_crushed.json @@ -145,6 +153,7 @@ d05bf9eb0708fd08727414a05432119547683c82 data/create/advancements/recipes/misc/c 12dfae029c11896db2ad9fe7bf833d8e2bd4ac73 data/create/advancements/recipes/misc/crafting/kinetics/train_door.json 13c05d4a0d21a98633f332cf4e29fa9d984c2b97 data/create/advancements/recipes/misc/crafting/kinetics/train_trapdoor.json 2a765b5135e700fc7051d4b66e6be8d971445bda data/create/advancements/recipes/misc/crafting/kinetics/turntable.json +32a8453e28678b0efb9cc70cf38e72801a718793 data/create/advancements/recipes/misc/crafting/kinetics/vertical_gearbox.json 8eca7b132f53c805ef71bbe148a4b6eb482d5d0d data/create/advancements/recipes/misc/crafting/kinetics/vertical_gearboxfrom_conversion.json dd4849e6ac91a82a4663477dd2ea51375d184bb3 data/create/advancements/recipes/misc/crafting/kinetics/water_wheel.json 3bee8e0d4e324868eff29a6a86080d7a8656f298 data/create/advancements/recipes/misc/crafting/kinetics/weighted_ejector.json @@ -196,6 +205,7 @@ ec99015f13bb194dfb197ea0839cceaed5135148 data/create/advancements/recipes/misc/c 3e73c3336f3ab13365d439c491b2e2ce6de6e401 data/create/advancements/recipes/misc/crafting/schematics/schematicannon.json 6e0b7056d229fc949cc7386aa307d0870929f555 data/create/advancements/recipes/misc/crafting/schematics/schematic_and_quill.json f0d041509b3752b3ec6c4ce2b2c6eef9825a0685 data/create/advancements/recipes/misc/crafting/schematics/schematic_table.json +a8003bd4c06bdf5f2aa3d1789eab2445df9513be data/create/advancements/recipes/misc/crafting/tree_fertilizer.json 0ac95fd4b991a6c61c1d03cc6a6f2f345530f62a data/create/advancements/recipes/misc/smelting/bread.json 53cb4643430e3fd69f81c375f3e334a3d6014128 data/create/advancements/recipes/misc/smelting/copper_ingot_from_crushed.json cd04ca4af45d96bfba198f770257d58bdd508bec data/create/advancements/recipes/misc/smelting/glass_from_framed_glass.json @@ -207,19 +217,27 @@ bb87cb8787644e20b3418d6f57726f2ca70b0aae data/create/advancements/recipes/misc/s 70342b3f5c5482caa82e0afcd559c7b200d9f247 data/create/advancements/recipes/misc/smelting/glass_pane_from_tiled_glass_pane.json 8635e2becb91b0e4e754fd79d231300492b8afce data/create/advancements/recipes/misc/smelting/glass_pane_from_vertical_framed_glass_pane.json d76d08c3efcf9174ee2980796aa04c67fe9443eb data/create/advancements/recipes/misc/smelting/gold_ingot_from_crushed.json +6a53b4a956a5560dfa7a6ed3d3279fe502a45574 data/create/advancements/recipes/misc/smelting/ingot_aluminum_compat_ic2.json 1e88edf27ed1f83031f9d71cad8f3f4388f57b85 data/create/advancements/recipes/misc/smelting/ingot_aluminum_compat_immersiveengineering.json 2b6b739a2f0ad1f33db8090aa0e77c8149d67dbf data/create/advancements/recipes/misc/smelting/ingot_lead_compat_immersiveengineering.json 7392d585e5409438f70ddb43ebba58b35609265b data/create/advancements/recipes/misc/smelting/ingot_lead_compat_mekanism.json ded4f782c4ff86ffeeae15a26cae065401285181 data/create/advancements/recipes/misc/smelting/ingot_nickel_compat_immersiveengineering.json 471da96bdc50929e50a4255998c365f6dd74f66b data/create/advancements/recipes/misc/smelting/ingot_osmium_compat_mekanism.json +862dbabc5443de70fdd8a032dc6b9f7f17d9ab5d data/create/advancements/recipes/misc/smelting/ingot_silver_compat_ic2.json ef01495983cd871247bf756bcc4289a0fac0ddca data/create/advancements/recipes/misc/smelting/ingot_silver_compat_immersiveengineering.json +c5412d6466ce207be939599115ef45c00f441101 data/create/advancements/recipes/misc/smelting/ingot_tin_compat_ic2.json 600ffc56676b16e543526880d4a3e6d99a13fcc6 data/create/advancements/recipes/misc/smelting/ingot_tin_compat_mekanism.json +8408242e67c1f2c62e9f65e705a724c49b8afdcc data/create/advancements/recipes/misc/smelting/ingot_uranium_compat_ic2.json 288ad82d27d3565e474e37ee692c8b4f286654ec data/create/advancements/recipes/misc/smelting/ingot_uranium_compat_immersiveengineering.json fee6714c2f63317cfb01bd5ce2ea91ba891b4e46 data/create/advancements/recipes/misc/smelting/ingot_uranium_compat_mekanism.json c31f83bd1e3fc96c4317f9fbf096f6d62786302d data/create/advancements/recipes/misc/smelting/iron_ingot_from_crushed.json +1afa741f81b8ccb94aa587f05294f62292aa6c1d data/create/advancements/recipes/misc/smelting/lead_ingot_compat_oreganized.json c8978574ede8f2c9c5a55c9d7ecfeac5e32ceba3 data/create/advancements/recipes/misc/smelting/lead_ingot_compat_thermal.json 497978714e828b74dddf12d32d0dcc1908b2c7c9 data/create/advancements/recipes/misc/smelting/nickel_ingot_compat_thermal.json 3e7f0954559c7f2d6e0e39b74f16aea9ce355c75 data/create/advancements/recipes/misc/smelting/scoria.json +8ae18bbf987001f34a5a4c3258f1265bf73808ab data/create/advancements/recipes/misc/smelting/silver_ingot_compat_galosphere.json +51d70536297006c6ac067950cba88cbac5c757f4 data/create/advancements/recipes/misc/smelting/silver_ingot_compat_iceandfire.json +17e72b6dc1113f3b66327166ac2fb361ae70d285 data/create/advancements/recipes/misc/smelting/silver_ingot_compat_oreganized.json c03382450df717eed0c0c8583a08a07200fadd14 data/create/advancements/recipes/misc/smelting/silver_ingot_compat_thermal.json 0e5699d5a440d258fb8bdb1a1f85930f6eb32cd8 data/create/advancements/recipes/misc/smelting/tin_ingot_compat_thermal.json 1e22edba76fc82d3d06d72e3325fa015259561cb data/create/advancements/recipes/misc/smelting/zinc_ingot_from_crushed.json @@ -228,18 +246,26 @@ e4ffb421edd14254dc06028c7c43c58df2f42d18 data/create/advancements/recipes/misc/s 42f1375bf3004cfd891a5fbb05352f578636dd75 data/create/advancements/recipes/misc/smoking/bread.json 3c9dcf347eef42d0cca69ae5bc4a61fe90fb27c8 data/create/recipes/blasting/copper_ingot_from_crushed.json cbd86c583643e65a0d9b7950dcf593cdf6d43d77 data/create/recipes/blasting/gold_ingot_from_crushed.json +053d94339f3b64e02b0eae56fe714b6f4a05986f data/create/recipes/blasting/ingot_aluminum_compat_ic2.json 5b1b7981636b211a956e37356423c2ba65c8042c data/create/recipes/blasting/ingot_aluminum_compat_immersiveengineering.json f794d2eab3922ea7765866d473eb61c74a2678c5 data/create/recipes/blasting/ingot_lead_compat_immersiveengineering.json 7acb7c5bc88b238e914abc07f979c33f8d33123e data/create/recipes/blasting/ingot_lead_compat_mekanism.json 79ad6f95b7f4c75cc0c3fadcf8e16be077bd5874 data/create/recipes/blasting/ingot_nickel_compat_immersiveengineering.json f403ea128ab6c8bc3e4c4b660bea3d8edb8c8c30 data/create/recipes/blasting/ingot_osmium_compat_mekanism.json +76394ca6f1b6aedd00facaab9e151451da914e47 data/create/recipes/blasting/ingot_silver_compat_ic2.json 2010401b8c4225226fb213375ba9d3b1ee8a451b data/create/recipes/blasting/ingot_silver_compat_immersiveengineering.json +1f08600db1e19f0dc0764c3fe0a0d8c2e62cb9e6 data/create/recipes/blasting/ingot_tin_compat_ic2.json b979e859e631de8d229f08b0924d37212c7d92ee data/create/recipes/blasting/ingot_tin_compat_mekanism.json +40ff33cbc9d560f54aeb9de91eaf1fb3a31e556b data/create/recipes/blasting/ingot_uranium_compat_ic2.json 011179ff485992666fdad594d7daa050e44844c7 data/create/recipes/blasting/ingot_uranium_compat_immersiveengineering.json 0f6e3a23e0e1bb6bac077fac2b9cfcf50f3459f1 data/create/recipes/blasting/ingot_uranium_compat_mekanism.json 19d33cb473f7ba1065a7747700248cd8d6738732 data/create/recipes/blasting/iron_ingot_from_crushed.json +820fc633a9f2b4e04dc281bf356f0f1e30ee96ef data/create/recipes/blasting/lead_ingot_compat_oreganized.json 701da66616d4d9c3293e410af5e0dd764c9f63e1 data/create/recipes/blasting/lead_ingot_compat_thermal.json 6a10c8bb0b2a939edd79f159ec5acb9b137283c3 data/create/recipes/blasting/nickel_ingot_compat_thermal.json +3f4e9eca5646c4ef39e8f297e0d320a285360699 data/create/recipes/blasting/silver_ingot_compat_galosphere.json +1930c939c893aa3ffc2e6cccf87095ea0f1ae017 data/create/recipes/blasting/silver_ingot_compat_iceandfire.json +d57e0c60f865fb655e9d001369b89f5395590843 data/create/recipes/blasting/silver_ingot_compat_oreganized.json e1481cbde99b04ce08c7fffdbd24233eb3bb8d0d data/create/recipes/blasting/silver_ingot_compat_thermal.json 150e9b6eaab4b98a326d915bbfe33fcdb95e2beb data/create/recipes/blasting/tin_ingot_compat_thermal.json b3c4585dc6ed9c4a38d7923ae399b88ab8912df9 data/create/recipes/blasting/zinc_ingot_from_crushed.json @@ -373,6 +399,7 @@ af645fe446e0df755fb748383a51facbe9101ede data/create/recipes/crafting/kinetics/t 35037a92ef619eea8c02fe21c1ab3fa567e9fb72 data/create/recipes/crafting/kinetics/train_door.json 26d9401533332cbc7580b32b45cdebf6ad3c523d data/create/recipes/crafting/kinetics/train_trapdoor.json a02e799451c8051250ab077ee94bec8f17705d5f data/create/recipes/crafting/kinetics/turntable.json +c2644263571eb8a14ed535c1e88924a6098e2e6f data/create/recipes/crafting/kinetics/vertical_gearbox.json 613d2ef5c381445d9a0bb1020f9d0ab9fb04d766 data/create/recipes/crafting/kinetics/vertical_gearboxfrom_conversion.json af2fc528dacef0300115977c681976b793329c8d data/create/recipes/crafting/kinetics/water_wheel.json 97054ad290c974f60d9be41c642e661442a98bca data/create/recipes/crafting/kinetics/weighted_ejector.json @@ -424,6 +451,7 @@ d849fafedd10c68e6bc6dc1e5a85be82aae1b139 data/create/recipes/crafting/palettes/s 9a687ee9dab44c439ab669aa596117064fb13457 data/create/recipes/crafting/schematics/schematicannon.json 4a20356c9ce01ebfbcacbdc5d3c31094a5599a17 data/create/recipes/crafting/schematics/schematic_and_quill.json 4a297162a630b48407dbc8ff8ca713387dcd3206 data/create/recipes/crafting/schematics/schematic_table.json +dd2b5bfb7ebd836e8b5639894736c226f2cac8c0 data/create/recipes/crafting/tree_fertilizer.json 78526658ca5ccaa3729c967b5283069945d183b7 data/create/recipes/smelting/bread.json 04bb0c80f3b5a6fe86fc4a8ed5293fc74c2d9aba data/create/recipes/smelting/copper_ingot_from_crushed.json d5b29fa27977691c3c50eb36c28bfe33b8462d09 data/create/recipes/smelting/glass_from_framed_glass.json @@ -435,19 +463,27 @@ ab1a181eb787f501ae7b8a8c6da2d3adb35a8f2b data/create/recipes/smelting/glass_pane ad412d18c2084dc74fff8a079a2e7ffb20f9a0c6 data/create/recipes/smelting/glass_pane_from_tiled_glass_pane.json 67c1143c7aac88a9cc91b98dbca60770cb1422a5 data/create/recipes/smelting/glass_pane_from_vertical_framed_glass_pane.json 461e4dede50a4a318281ae9c086c8094470e21a1 data/create/recipes/smelting/gold_ingot_from_crushed.json +ae05209f9f639c7709bb25d0ff5f09f1af6cffcf data/create/recipes/smelting/ingot_aluminum_compat_ic2.json fa0d3d6f50d344aa83ddf4ac8abf4a80deb9fb32 data/create/recipes/smelting/ingot_aluminum_compat_immersiveengineering.json 4e8cf8775719219849b1a0e95903a3605b665015 data/create/recipes/smelting/ingot_lead_compat_immersiveengineering.json cfa90e7ba56d1ec6caa11bd019244bddd51da841 data/create/recipes/smelting/ingot_lead_compat_mekanism.json 921031330fc9d1d5cf8293d7863145d9b7c8becf data/create/recipes/smelting/ingot_nickel_compat_immersiveengineering.json e718631b4ac8e8bb036435dd2b39c0ce77fa290d data/create/recipes/smelting/ingot_osmium_compat_mekanism.json +9126190da9b9bf21ef6a9681daa61ac01582dd71 data/create/recipes/smelting/ingot_silver_compat_ic2.json ba80d1df860afa164dfba71ee3f16438f288b6aa data/create/recipes/smelting/ingot_silver_compat_immersiveengineering.json +fb556ed9c7405d4aba35cdbc306c000530d51774 data/create/recipes/smelting/ingot_tin_compat_ic2.json 9f8472e42fc3b1db65cbf5c878f4788846cf88b6 data/create/recipes/smelting/ingot_tin_compat_mekanism.json +2abae5f5258ed4c5c7fa8b9f1db3e648a0bc2b30 data/create/recipes/smelting/ingot_uranium_compat_ic2.json b7830b774bfab54957b55c8ddc414b2427a49191 data/create/recipes/smelting/ingot_uranium_compat_immersiveengineering.json a7b6ae172fb21be2d2b66da82a603300fae16185 data/create/recipes/smelting/ingot_uranium_compat_mekanism.json 5865b56a6e7dfc486235b635cf5a40e9d82cb79d data/create/recipes/smelting/iron_ingot_from_crushed.json +4711b10a0ab97bf933106ac5e397ffa17e92abf7 data/create/recipes/smelting/lead_ingot_compat_oreganized.json 76336bf2c2f35386a997cbc3125ae423595dd207 data/create/recipes/smelting/lead_ingot_compat_thermal.json cc1e46b361bffebdf63c970d6f8bf09068e28e5b data/create/recipes/smelting/nickel_ingot_compat_thermal.json 0421f39da684e9cdd35c43d6e7e4706a2438d9d5 data/create/recipes/smelting/scoria.json +bb9e0e7f5526a52355e12979373bcdaefe01c1a6 data/create/recipes/smelting/silver_ingot_compat_galosphere.json +764525c2a2e345d3aaed9723e73cef70ed09d7df data/create/recipes/smelting/silver_ingot_compat_iceandfire.json +a7f1b27faf285dbb0867d7ab636e40c6a1326864 data/create/recipes/smelting/silver_ingot_compat_oreganized.json 51d4140efc896d4cf426426101048405fc4243bc data/create/recipes/smelting/silver_ingot_compat_thermal.json fd994dc211b5da51c440703f3b3e14caa04de562 data/create/recipes/smelting/tin_ingot_compat_thermal.json 8ea35f78211932c11630cb03625b269ef55ef11a data/create/recipes/smelting/zinc_ingot_from_crushed.json diff --git a/src/generated/resources/.cache/ad9bf59631726a3f24738ebf1a6cd44c7f88ba0f b/src/generated/resources/.cache/ad9bf59631726a3f24738ebf1a6cd44c7f88ba0f index f273a75fb..271b57aa4 100644 --- a/src/generated/resources/.cache/ad9bf59631726a3f24738ebf1a6cd44c7f88ba0f +++ b/src/generated/resources/.cache/ad9bf59631726a3f24738ebf1a6cd44c7f88ba0f @@ -1,4 +1,4 @@ -// 1.20.1 2023-09-20T19:47:44.9018689 Create's Damage Type Tags +// 1.20.1 2024-08-07T16:05:58.761516 Create's Damage Type Tags 7884716b2f4bb1330ff215366bb4bab06e4728c2 data/minecraft/tags/damage_type/bypasses_armor.json 1fcad1f89265fba8bdb05b03a1dfcc88d7b7a550 data/minecraft/tags/damage_type/is_explosion.json 08324c61115b72bb8a6370d7f34d84d9a31afd16 data/minecraft/tags/damage_type/is_fire.json diff --git a/src/generated/resources/.cache/b256105d8411632b0d585496ea8944a751a08034 b/src/generated/resources/.cache/b256105d8411632b0d585496ea8944a751a08034 index d38f48fa9..59070f3bb 100644 --- a/src/generated/resources/.cache/b256105d8411632b0d585496ea8944a751a08034 +++ b/src/generated/resources/.cache/b256105d8411632b0d585496ea8944a751a08034 @@ -1,10 +1,11 @@ -// 1.20.1 2023-09-20T19:40:25.3652491 Create's Processing Recipes +// 1.20.1 2024-08-07T16:05:58.6925297 Create's Processing Recipes 3c94326fb730f68c1e44fe1e2ef09c9db6ffd92b data/create/recipes/compacting/andesite_from_flint.json 8d3d5b31f3601b9f681ff710e0545a483a1494c6 data/create/recipes/compacting/blaze_cake.json 8bd7f4e3a686ab520b2d55594d2018d0e9a50c91 data/create/recipes/compacting/chocolate.json 5e2514e027cc0dbad48160e6b8e5bf0f25eba8f0 data/create/recipes/compacting/diorite_from_flint.json 54c94ae8d964dba1de2441088f6a312c687cbf71 data/create/recipes/compacting/granite_from_flint.json c558dddeacf6f8bfa29d74b68093ecfea619d43f data/create/recipes/compacting/honey.json +d4dc546ff711eae1a0621ede8b63897037a88bd1 data/create/recipes/compacting/ice.json e00be6905b6bcf72de937e3fe8bbceee6440a6b1 data/create/recipes/crushing/aluminum_ore.json 60262e911676a7f8309408fd15b373f1498493b9 data/create/recipes/crushing/amethyst_block.json 8e20ddc94fda889dbac25de59e7a3158984098c3 data/create/recipes/crushing/amethyst_cluster.json @@ -12,10 +13,113 @@ e00be6905b6bcf72de937e3fe8bbceee6440a6b1 data/create/recipes/crushing/aluminum_o c444abdd432670f6a2b508c513302e119cb07186 data/create/recipes/crushing/asurine_recycling.json 66b51fd1036641802667338a1d79a825a338077c data/create/recipes/crushing/blaze_rod.json 29e7e74108755e0a07b1d3d1e8d4dcaf2b401572 data/create/recipes/crushing/coal_ore.json +fe351d413ff95ed8dc5da8fc50190492739ed61b data/create/recipes/crushing/compat/ae2/deepslate_quartz_ore.json +29ba89eb04c808cc8a03e2c75ae741090f0fb0b4 data/create/recipes/crushing/compat/ae2/quartz_ore.json +d9a48b3aa36cfe4f792a31fd3ee50b442c1177f9 data/create/recipes/crushing/compat/aether/ambrosium_ore.json +81bdb03461bec6f8ca1201caa93805a751d7cda6 data/create/recipes/crushing/compat/aether/zanite_ore.json +73914b149bbd72251c1bd9a54cf6d087f6b2ba0b data/create/recipes/crushing/compat/byg/ametrine_ore.json +d468d9fbd206bd78dc3cc37ce6fcccbc3a89bc5c data/create/recipes/crushing/compat/byg/anthracite_ore.json +3481a8838049addc6d3514615fccab01a7eda830 data/create/recipes/crushing/compat/byg/blue_nether_gold_ore.json +d7ad1072113e56e3efa572c3d7d1508499015818 data/create/recipes/crushing/compat/byg/blue_nether_quartz_ore.json +ea09b911ec971760574868ffc48da4dafd836d3d data/create/recipes/crushing/compat/byg/brimstone_nether_gold_ore.json +f9cf46d9d2fc78a3d4092ae0baf9cf90fb7f38ca data/create/recipes/crushing/compat/byg/brimstone_nether_quartz_ore.json +94274bdc8fd928576ea380dd90f33b79b507b647 data/create/recipes/crushing/compat/byg/cryptic_redstone_ore.json +b4e8eed87747da8dfdfe2ad3ffd8534b900b38ad data/create/recipes/crushing/compat/byg/emeraldite_ore.json +9c6b0c1f78c5027b4e781f3126a734b65cb40f46 data/create/recipes/crushing/compat/byg/lignite_ore.json +06bae2f87dfe431c1f5df9675de5ce2a6aac7802 data/create/recipes/crushing/compat/byg/pervaded_netherrack.json +a7177964fe7921dbca27197c6271d6d8c5264665 data/create/recipes/crushing/compat/byg/red_rock.json +808305f43b6a4d3fe2030ba55a86c510346ff164 data/create/recipes/crushing/compat/druidcraft/amber_ore.json +ae0691d4885a8b67c1ba1f7f3b4f8fc6db9de403 data/create/recipes/crushing/compat/druidcraft/fiery_glass_ore.json +375daf4d1a5d847a253ce817b8fe99d47526cbb5 data/create/recipes/crushing/compat/druidcraft/moonstone_ore.json +6a2927807d18873b9eccfe4e9eb915ea7d829cba data/create/recipes/crushing/compat/elementaryores/ore_coal_end.json +fb4bbcf76c49643f0e4afc1bcf343d1eb07e5236 data/create/recipes/crushing/compat/elementaryores/ore_coal_nether.json +e8c0e1258cf047b986693609b19d94c603d12d14 data/create/recipes/crushing/compat/elementaryores/ore_copper_end.json +f66bc876f13b7523917f60ef4cf0d9faa99883df data/create/recipes/crushing/compat/elementaryores/ore_copper_nether.json +e0b7f9cd217387dfacb9e6e3741ef226ee519d6c data/create/recipes/crushing/compat/elementaryores/ore_diamond_end.json +8e1898aeccb293ba69b19678576eabb870a22ad7 data/create/recipes/crushing/compat/elementaryores/ore_diamond_nether.json +fd27de35297f21376e9d1054409f6c2ed1fe68ed data/create/recipes/crushing/compat/elementaryores/ore_emerald_end.json +587cfb12b91ac731f9e9a9dd7ee387b221bd286c data/create/recipes/crushing/compat/elementaryores/ore_emerald_nether.json +f1303c38024d102c2885babd59f50fcfb2f20b8c data/create/recipes/crushing/compat/elementaryores/ore_ender_end.json +fa4af21ec7ca9d6bd96278135b2007ebca0f70cc data/create/recipes/crushing/compat/elementaryores/ore_ghast_nether.json +c39a4ad9ef83dec45c38394d99d3b9f9e0d1d824 data/create/recipes/crushing/compat/elementaryores/ore_iron_end.json +4222415db5c5c0cc8aafbfdbcebd295c377bb44b data/create/recipes/crushing/compat/elementaryores/ore_iron_nether.json +42a9c2ddfac196865694db470638c81f73c46bb9 data/create/recipes/crushing/compat/elementaryores/ore_lapis_end.json +eac0542063e8718c9788c8b60144e35bbfdfcb24 data/create/recipes/crushing/compat/elementaryores/ore_lapis_nether.json +afed14982eb85caf831e84a7e4309aa166f53823 data/create/recipes/crushing/compat/elementaryores/ore_redstone_end.json +cc42c9d452ac585f5ef91627d96ba6218bb36663 data/create/recipes/crushing/compat/elementaryores/ore_redstone_nether.json +d98fab5641d0b4245d27bf0e3ce60676fb1980eb data/create/recipes/crushing/compat/exnihilosequentia/andesite.json +4153b4d4aaa532f93af0b12b8c65c665687d7dcd data/create/recipes/crushing/compat/exnihilosequentia/crushed_diorite.json +dc2553cb5b88b17b50b39d4f1177b3985d7d2700 data/create/recipes/crushing/compat/exnihilosequentia/crushed_netherrack.json +b45d8a7aaad59c5168140f185c74555c1d78770f data/create/recipes/crushing/compat/exnihilosequentia/diorite.json +4fd1a7c2a564dd60b11688cfed12f9531bd7e0f1 data/create/recipes/crushing/compat/exnihilosequentia/dust.json +92b384f37ff0b4b95a4e0f0a9a373b8439c5c3cf data/create/recipes/crushing/compat/exnihilosequentia/end_stone.json +9ad3bd8dce2178bcda4990681a7845365fb30a77 data/create/recipes/crushing/compat/exnihilosequentia/granite.json +c9f6c53c34c4891a245dd9515eb573b40b4f3e0b data/create/recipes/crushing/compat/exnihilosequentia/netherrack.json +0fedb41388b4f04e544f45d7182d91b2e9230bc6 data/create/recipes/crushing/compat/galosphere/allurite.json +9e255904c7a3277d6084183c0921392df0c7918d data/create/recipes/crushing/compat/galosphere/amethyst.json +b04f95c02f37a0398c209a02ad08a8b0e9aaaaa9 data/create/recipes/crushing/compat/galosphere/lumiere.json +bea05bc584958f479078cd6c16a06c50eae859cc data/create/recipes/crushing/compat/neapolitan/ice.json +2358ce4b7a3acb08d3d0a3e64295fb97dea2ec02 data/create/recipes/crushing/compat/quark/moss_block.json +3012e1a64f2889b2a735a4690b3562cabd2119a6 data/create/recipes/crushing/compat/silentgems/agate_ore.json +2631b2bdcf091f4d400e0a9d2be6f1f772edfdc9 data/create/recipes/crushing/compat/silentgems/alexandrite_ore.json +7a52da99e52f635b5e25d506891e14a0c9203a1d data/create/recipes/crushing/compat/silentgems/amber_ore.json +7e888d9baf81588c7af937e02144800643358507 data/create/recipes/crushing/compat/silentgems/amethyst_ore.json +218b568bfef559c54503ebba99188f9743220b58 data/create/recipes/crushing/compat/silentgems/ametrine_ore.json +d11b5a993f5ed0105eb63361d8e9e8739d8a5273 data/create/recipes/crushing/compat/silentgems/ammolite_ore.json +1511e1507ad8b159c5688deb8a7a1c7288c38a46 data/create/recipes/crushing/compat/silentgems/apatite_ore.json +9af4c73eb8b6c8687ff0ed748103f7b9da244955 data/create/recipes/crushing/compat/silentgems/aquamarine_ore.json +dce6de74ea0923bf1029b92d939eb3edcf5ee2f2 data/create/recipes/crushing/compat/silentgems/beniotite_ore.json +3f60a2cdfec1d15ad4dd8ccc5fd4e7d14ccafc14 data/create/recipes/crushing/compat/silentgems/black_diamond_ore.json +21c0ee3b80c3c9b5612367b63a981fe526d5d996 data/create/recipes/crushing/compat/silentgems/carnelian_ore.json +3e7d1732bfc2a2055b67b4bc06b3df7a605ce770 data/create/recipes/crushing/compat/silentgems/cats_eye_ore.json +8529f8f88beb4b69f234838974178a3554a06596 data/create/recipes/crushing/compat/silentgems/chrysoprase_ore.json +1f5eaa337f7b3262b83d99b2d8e8179bbf20fc89 data/create/recipes/crushing/compat/silentgems/citrine_ore.json +1bf6fb3289fdf61ac465e1653fb17f89515bb4c7 data/create/recipes/crushing/compat/silentgems/coral_ore.json +51750d1bb1c47fe28a0bedf3572b128b02407280 data/create/recipes/crushing/compat/silentgems/eculase_ore.json +d4402f6d504889a735c1b1a5c61e74edab052d67 data/create/recipes/crushing/compat/silentgems/flourite_ore.json +c04259acb68b96e6feb3e1736ac1340d85b7c6fc data/create/recipes/crushing/compat/silentgems/garnet_ore.json +e4f99efcba49c5603dd124e0845671d563e429a2 data/create/recipes/crushing/compat/silentgems/green_sapphire_ore.json +3b2ee5a7ecffb1dad32d7240f6c42708760ba338 data/create/recipes/crushing/compat/silentgems/helidor_ore.json +f3257c0e08c4da373862ab9128df3a28fec17d26 data/create/recipes/crushing/compat/silentgems/iolite_ore.json +41d6e410fa32e53651c9c46d52311685a7dc946c data/create/recipes/crushing/compat/silentgems/jade_ore.json +45a3bc9fe0e66e8ffb2bf3349dfa091e80710a27 data/create/recipes/crushing/compat/silentgems/jasper_ore.json +872fcc361cf08203549f6223206e523709f4537a data/create/recipes/crushing/compat/silentgems/kunzite_ore.json +ea65f0bb86c444401491f2f020dc040d263f4def data/create/recipes/crushing/compat/silentgems/kyanite_ore.json +fc82de6fb3d4d273a3f2c6d8ad478bdc32ac999c data/create/recipes/crushing/compat/silentgems/lepidolite_ore.json +7c505b5d2f30427a1e8c48d2d8c4b38366246284 data/create/recipes/crushing/compat/silentgems/malachite_ore.json +36f7fe4671a8ec1f8aa7a78260ce306033501691 data/create/recipes/crushing/compat/silentgems/moldavite_ore.json +d7e1a32643316bd16b447467b7a3b09afa87bc42 data/create/recipes/crushing/compat/silentgems/moonstone_ore.json +3c639cd381bca99d3eda87e7fb2174efaba72dd5 data/create/recipes/crushing/compat/silentgems/morganite_ore.json +a63a9a5a183fde65793f9856c987512b612a6b83 data/create/recipes/crushing/compat/silentgems/onyx_ore.json +6529e9e8289a2808647291f27bbcfabd340b5e57 data/create/recipes/crushing/compat/silentgems/opal_ore.json +9fa1bd00dcde3d7962bb93cf2500501143a37aa9 data/create/recipes/crushing/compat/silentgems/pearl_ore.json +466501f69b3c8b3ca7ad63f8db29f23136269e94 data/create/recipes/crushing/compat/silentgems/peridot_ore.json +e697a2ad8aa0580606a9bf27819107d9d0ba41df data/create/recipes/crushing/compat/silentgems/phosphophyllite_ore.json +90c3c7ac36a3664c0ffbe31810369756ce010cfe data/create/recipes/crushing/compat/silentgems/pyrope_ore.json +ff54345899fa142839e496a737fa0a740b0d32db data/create/recipes/crushing/compat/silentgems/rose_quartz_ore.json +701ed26488cda81ee2ddd48e51f96890dee99899 data/create/recipes/crushing/compat/silentgems/ruby_ore.json +f71bbcece1d63299ccf5bf892883abc67bab1d7d data/create/recipes/crushing/compat/silentgems/sapphire_ore.json +90ee28fbd167d9b3a35229a88739d642f7fecc82 data/create/recipes/crushing/compat/silentgems/sodalite_ore.json +4fa0967bfe4b9017ea3d58fd6d56300506b8ba69 data/create/recipes/crushing/compat/silentgems/spinel_ore.json +a66d3ddd2e214fd730e695a3c076507a09cc21ed data/create/recipes/crushing/compat/silentgems/sunstone_ore.json +403e9e40b2dfbb3c8b1f5c2e56af520d8567de3b data/create/recipes/crushing/compat/silentgems/tanzite_ore.json +57dcf6539dd33f043b8a99f72f7b43e9380688d9 data/create/recipes/crushing/compat/silentgems/tektite_ore.json +7e65a919156d62f2316b91198477eb3745285711 data/create/recipes/crushing/compat/silentgems/topaz_ore.json +4fb0c49b9385436cd85445c1ff0d7c0a69121596 data/create/recipes/crushing/compat/silentgems/turquoise_ore.json +70a01ee6bc686cda8390d77d304d9e5fcb715a89 data/create/recipes/crushing/compat/silentgems/yellow_diamond_ore.json +000995de66f5883cf0e24dcb5895860e4fc5a69f data/create/recipes/crushing/compat/silentgems/zircon_ore.json +5198e4e42ba81b048e1c2512fff64ecd4f9afe70 data/create/recipes/crushing/compat/simplefarming/barley.json +7a3f91add5e9cbaafd5ab29acf2b26fa6f0f9eec data/create/recipes/crushing/compat/simplefarming/oat.json +4c344201ebf58640d386d68adf864446bd3d8389 data/create/recipes/crushing/compat/simplefarming/rice.json +a5537631def291e7da320d2bc8c6256db45ea622 data/create/recipes/crushing/compat/simplefarming/rye.json +4774b880ce6d1b0e4dc5fe95c65ce697253a43d7 data/create/recipes/crushing/compat/thermal/apatite_ore.json +ef8e75c897962c4bc4fa4ccaa42b374bbeb633e8 data/create/recipes/crushing/compat/thermal/cinnabar_ore.json +e16232b73076c46164a7b0352398e19db30af6c5 data/create/recipes/crushing/compat/thermal/niter_ore.json +05da2e5ca7871402b29ace6e543aeb008a78af80 data/create/recipes/crushing/compat/thermal/sulfur_ore.json ad91e6a560bdb8ef311862a0fee1f316529ed439 data/create/recipes/crushing/copper_ore.json 0ff7fa09b2ae808bc29c4d87985deccab5de2de5 data/create/recipes/crushing/crimsite.json 50c9a45e77d266852317fa1bac6c17443cfd986c data/create/recipes/crushing/crimsite_recycling.json -b6995978092ed3080efd49e52571ff59205f7c85 data/create/recipes/crushing/deepslate_coal_ore.json +091602442de918ea38482277fcdd98443111d585 data/create/recipes/crushing/deepslate_coal_ore.json 9aa9bcd71da7ebb25301211426e988e71c9bff97 data/create/recipes/crushing/deepslate_copper_ore.json 4afc9cc723bdee47ed2176f32323f1fca152765f data/create/recipes/crushing/deepslate_diamond_ore.json 94d706cac7779cf8dc3aa8822605a4ee9d0ba047 data/create/recipes/crushing/deepslate_emerald_ore.json @@ -26,22 +130,24 @@ e266d091252d692dcd0618f34754536fe0aa98b3 data/create/recipes/crushing/deepslate_ 64688579de20cbc0f4a7e4a589140fbbce408fcf data/create/recipes/crushing/deepslate_zinc_ore.json 69e0a401b424cb82ab3387a0b23bd7241f80f56e data/create/recipes/crushing/diamond_horse_armor.json 35cff9ebc59e837a2beafd2d4ec80e088459344c data/create/recipes/crushing/diamond_ore.json -a0511a15499653d983ad8b85b9f763643cca3aca data/create/recipes/crushing/diorite.json +5cc17c5a45855d82d471f96c1c82d8d031bd3e16 data/create/recipes/crushing/diorite.json df364151c75a7d84446b2c6213e339115bc9d298 data/create/recipes/crushing/diorite_recycling.json 9e89294e53a94a05af47948c21ad192ef18f7710 data/create/recipes/crushing/emerald_ore.json +9c3989fd9e72e21353803f475a08b8f199717c1f data/create/recipes/crushing/gilded_blackstone.json 3c4c78e3a7137022f8f6e90324af6c8f97050e80 data/create/recipes/crushing/glowstone.json -95b76da439260151355fff74b3b7398ce13d6968 data/create/recipes/crushing/golden_horse_armor.json b036b1654d2deec20aca95ff43b60c7d0b28b2fc data/create/recipes/crushing/gold_ore.json +95b76da439260151355fff74b3b7398ce13d6968 data/create/recipes/crushing/golden_horse_armor.json cc939ba59b95db1c7a034df6f9e656772074a5fd data/create/recipes/crushing/gravel.json 17ab2d789c9c2df122b6a96ab06bbe2c02592a93 data/create/recipes/crushing/iron_horse_armor.json c9a47b29ba75ba29c8cb630fe32c4bf2f1f1d1ae data/create/recipes/crushing/iron_ore.json 855b6655dea911724ee68d07b993f17440ac422e data/create/recipes/crushing/lapis_ore.json 492827ab3d55ca3edfef5eb006b1f77d62e1b446 data/create/recipes/crushing/lead_ore.json e170bc17a796c73a05d2d77a85c086cfaac55c31 data/create/recipes/crushing/leather_horse_armor.json -4317165fc125d179cfbe66d15ba6368cdf1d7811 data/create/recipes/crushing/netherrack.json +606ccdf3119a62ab461028192d191ffb10332e21 data/create/recipes/crushing/netherrack.json 07e8991a2161aab4dd73bb74900fd0c70aad2847 data/create/recipes/crushing/nether_gold_ore.json c7c0d94707c2858a87d01cff6b284d7fb85acdbe data/create/recipes/crushing/nether_quartz_ore.json 0380b9416b263de2ee6a6cd1f4064df2e243c047 data/create/recipes/crushing/nether_wart_block.json +4317165fc125d179cfbe66d15ba6368cdf1d7811 data/create/recipes/crushing/netherrack.json d3534d606382ec7c1d34275c5f069543d0955906 data/create/recipes/crushing/nickel_ore.json 66f75530e30d8572bdbf4696a32edc5a7850ac00 data/create/recipes/crushing/obsidian.json 17cacb19493b9bbe7236b19a2a50a817c449a915 data/create/recipes/crushing/ochrum.json @@ -115,6 +221,36 @@ af1ca00e05d554bba1d85c766e52560d5ea8fe4d data/create/recipes/cutting/compat/ars_ 1a66e7e6dfba9531bbb5a1d0bf014e16d6cbb6be data/create/recipes/cutting/compat/ars_nouveau/stripped_purple_archwood_wood.json 5c1c8275b2e30fdf387dcf358fd41e995e817c86 data/create/recipes/cutting/compat/ars_nouveau/stripped_red_archwood_log.json 9dc5bd8a1002b9d299d60a405720950eb0b4e9ab data/create/recipes/cutting/compat/ars_nouveau/stripped_red_archwood_wood.json +08337ca1d46e04197fa31ccc21c3fcbbc0efde5a data/create/recipes/cutting/compat/atmospheric/aspen_log.json +1077e644ee8e83e39dbd695e5ed7b12591aedcfa data/create/recipes/cutting/compat/atmospheric/aspen_wood.json +339cc9026c5d89c8b78283baf5f21cb8b4471bad data/create/recipes/cutting/compat/atmospheric/grimwood.json +a8c2ff06f663881b1edbf7eab5e91083e59cf568 data/create/recipes/cutting/compat/atmospheric/grimwood_log.json +16640492eab4c22bf18e06fdf7a0469e1326f10b data/create/recipes/cutting/compat/atmospheric/kousa_log.json +0f2b8fa779cd3bc6e2ac04aa16596e08bda29578 data/create/recipes/cutting/compat/atmospheric/kousa_wood.json +0689201dddce046ef830ae791dc614ebcd6bb26d data/create/recipes/cutting/compat/atmospheric/morado_log.json +f3968dddde6ace179c0b6463aba17e212a93629a data/create/recipes/cutting/compat/atmospheric/morado_wood.json +41bb788e28c66d8a7415ec3731ca09f440864a9a data/create/recipes/cutting/compat/atmospheric/rosewood.json +4c49e3ac52fd466929a63e5009dce631040ba6ba data/create/recipes/cutting/compat/atmospheric/rosewood_log.json +a90a322d3acc2115e9a52c0e288215991c5ed143 data/create/recipes/cutting/compat/atmospheric/stripped_aspen_log.json +482e9a0464c877c21cf37925e20b6aeff633676c data/create/recipes/cutting/compat/atmospheric/stripped_aspen_wood.json +2d05a0460606960c7e73d2a67012b7dc55c00356 data/create/recipes/cutting/compat/atmospheric/stripped_grimwood.json +c2bfa5fa40905cb3bd2511d94907252e86afe7b8 data/create/recipes/cutting/compat/atmospheric/stripped_grimwood_log.json +092cae4bd9d8dd5626fd4b5c072520977dfa8a4e data/create/recipes/cutting/compat/atmospheric/stripped_kousa_log.json +cc69f0162e8fdd56e2e6a8d3423acd09a977f56d data/create/recipes/cutting/compat/atmospheric/stripped_kousa_wood.json +e9d88cf3cd60e6d43af7d1d16a174f88fcf1233d data/create/recipes/cutting/compat/atmospheric/stripped_morado_log.json +5f55e43d57c00b48c010609da73e7aa009f6c49a data/create/recipes/cutting/compat/atmospheric/stripped_morado_wood.json +ecfda5a9474fda3772c4cdfbe213c1350ed9ee38 data/create/recipes/cutting/compat/atmospheric/stripped_rosewood.json +c4e9a1327e2926f0517feaaf39c9629da8629312 data/create/recipes/cutting/compat/atmospheric/stripped_rosewood_log.json +924b4b9d24d2544aa04e7a713e6ce4674450b616 data/create/recipes/cutting/compat/atmospheric/stripped_yucca_log.json +ec6c644a9381526ea5c507a1968627fc880041ac data/create/recipes/cutting/compat/atmospheric/stripped_yucca_wood.json +c528538d50280aa575d642076b4d82e905cd5742 data/create/recipes/cutting/compat/atmospheric/yucca_log.json +fa41576ce1f7524bcd5c9d0bd755872c61594906 data/create/recipes/cutting/compat/atmospheric/yucca_wood.json +bca0cb14b60f7982d3e25f1fa082fc6c1d297cac data/create/recipes/cutting/compat/autumnity/maple_log.json +d95f86b26b21356ce3a9305d31143984489bd044 data/create/recipes/cutting/compat/autumnity/maple_wood.json +b66953dee0ea9804e22aa6f296c49e81f34d2d18 data/create/recipes/cutting/compat/autumnity/sappy_maple_log.json +bf5a4170f365901a3d850387ff6338e576f8e8eb data/create/recipes/cutting/compat/autumnity/sappy_maple_wood.json +598201da89849526cc316b63b297814bc52d75d1 data/create/recipes/cutting/compat/autumnity/stripped_maple_log.json +b93e929d2078211fd70d6df8d4eb065e6d4cc112 data/create/recipes/cutting/compat/autumnity/stripped_maple_wood.json 2469ee3ee07486d125fa476845533ef6bb1c9eb6 data/create/recipes/cutting/compat/biomesoplenty/cherry_log.json 0b80cdc4c48ce36d300aaa54be2f49fa684d2b41 data/create/recipes/cutting/compat/biomesoplenty/cherry_wood.json 76872508fd1b302d4e94a2017ea72f7d38de6273 data/create/recipes/cutting/compat/biomesoplenty/dead_log.json @@ -133,8 +269,6 @@ fa8a8440905213675dd769ae29509a1cbcabb1c1 data/create/recipes/cutting/compat/biom 184b9042633580815a6d1e2e1f1d3c543f26a3e4 data/create/recipes/cutting/compat/biomesoplenty/palm_wood.json 919a8fbf9f8e7f398a28a8af71ca4ad48ed8d6db data/create/recipes/cutting/compat/biomesoplenty/redwood_log.json 165e2642f98885734b3f815579ff589b8f0b870e data/create/recipes/cutting/compat/biomesoplenty/redwood_wood.json -e01b8ec89beb25e803d5c7a3cc02b8623065584c data/create/recipes/cutting/compat/biomesoplenty/stripped_cherry_log.json -c7290c1339ca052176a1907ae9264ad106cd0238 data/create/recipes/cutting/compat/biomesoplenty/stripped_cherry_wood.json 1a3f84111c5027304bfe8d037fa853125b2183c2 data/create/recipes/cutting/compat/biomesoplenty/stripped_dead_log.json 8f2c2015927767d627be865dc603530dd05328ee data/create/recipes/cutting/compat/biomesoplenty/stripped_dead_wood.json 822d84a550496c7f2c3ee127314a50512dfe5c8c data/create/recipes/cutting/compat/biomesoplenty/stripped_fir_log.json @@ -161,8 +295,6 @@ f3c630ba88419ea2fdf55b03eac22aac88acd56c data/create/recipes/cutting/compat/biom f661dc5faff7e08489ef6ac4996864b79e53804a data/create/recipes/cutting/compat/biomesoplenty/willow_wood.json c3c4999b33f2f29f31f1ac2cd0256694e530b6ab data/create/recipes/cutting/compat/blue_skies/bluebright_log.json 686bb3eab9fd2fc0439ffe7c31c08dee37eb17c3 data/create/recipes/cutting/compat/blue_skies/bluebright_wood.json -297eec4fefb378592eb2f74c082379cd93e5c2a9 data/create/recipes/cutting/compat/blue_skies/cherry_log.json -62b05ddc8d5d634d9fe0262490f3bf08435ba9ee data/create/recipes/cutting/compat/blue_skies/cherry_wood.json dfcee56f35b64e0b6d9a86a113f56de78f0ce6b3 data/create/recipes/cutting/compat/blue_skies/crystallized_log.json 0f6fa127bf9fd14a799985437eb1554a527f71c8 data/create/recipes/cutting/compat/blue_skies/crystallized_wood.json a0ca7db3a2a631be843c697347ad70501b4e700c data/create/recipes/cutting/compat/blue_skies/dusk_log.json @@ -177,8 +309,6 @@ a5ceee5b1c402dfcb06851a696c4ba4e3c15d790 data/create/recipes/cutting/compat/blue 1960934756be7cb82421e9428622eb853c96c451 data/create/recipes/cutting/compat/blue_skies/starlit_wood.json c96c5ecb3913b7611cea45dd45be447313a53278 data/create/recipes/cutting/compat/blue_skies/stripped_bluebright_log.json 26af6c6fc9e093d466b8a920de16e95aca9e0fe6 data/create/recipes/cutting/compat/blue_skies/stripped_bluebright_wood.json -92086d7f5a5090e934868726542173c0f4694cfe data/create/recipes/cutting/compat/blue_skies/stripped_cherry_log.json -5b0a7d97c604b80cd81f30c6c9baa02dce908f9b data/create/recipes/cutting/compat/blue_skies/stripped_cherry_wood.json 2ef370bdc202010ef3f3d28a3df050b785178966 data/create/recipes/cutting/compat/blue_skies/stripped_dusk_log.json e64dc0f1b77303152596c2c092783d06cfaed371 data/create/recipes/cutting/compat/blue_skies/stripped_dusk_wood.json 523239c7e97a4d0ea9a602324926ff8c7de21122 data/create/recipes/cutting/compat/blue_skies/stripped_frostbright_log.json @@ -213,8 +343,6 @@ cef520dc7a7c4ec257f2b4ab2b1b134ef29874f0 data/create/recipes/cutting/compat/byg/ 6b32af35555c83fee27c43858ebe03711c825d36 data/create/recipes/cutting/compat/byg/blue_enchanted_wood.json 2325864b4f7a80d466f5eef373f65cccb0557d55 data/create/recipes/cutting/compat/byg/bulbis_stem.json 52320312ae0aa6d957f841b430355d96afdbfe0b data/create/recipes/cutting/compat/byg/bulbis_wood.json -a1aae5af9bc5a95d90d7350330986743e6ddf408 data/create/recipes/cutting/compat/byg/cherry_log.json -82b41df50cfc394aa8e439bf259bba640bb375e8 data/create/recipes/cutting/compat/byg/cherry_wood.json 588ea2463640155d79724a694b5152574ea3f2a7 data/create/recipes/cutting/compat/byg/cika_log.json 880d0190030e3a70fd2a21ab4fc11604fbaac447 data/create/recipes/cutting/compat/byg/cika_wood.json 1fc63cafc946178443d1e362b9730455f2192b25 data/create/recipes/cutting/compat/byg/cypress_log.json @@ -263,8 +391,6 @@ fec45c1d4084c9de211876a3fd313313c18920b2 data/create/recipes/cutting/compat/byg/ 608a3d0bb5ca12e95141016099085821e47f4e98 data/create/recipes/cutting/compat/byg/stripped_blue_enchanted_wood.json 087dd3a1c516f9db9729974781bc68e13ff4b3de data/create/recipes/cutting/compat/byg/stripped_bulbis_stem.json f45c17bea93fc15f10b0c135ebf334a41a2e68d2 data/create/recipes/cutting/compat/byg/stripped_bulbis_wood.json -cb67e5541cef77a6dafdc825b39040ee95f86652 data/create/recipes/cutting/compat/byg/stripped_cherry_log.json -4fe4537e4e38cbf19e6a2d04481e6d849edc8374 data/create/recipes/cutting/compat/byg/stripped_cherry_wood.json 4187543812af8be22977b2b503ffb16ff82e38e6 data/create/recipes/cutting/compat/byg/stripped_cika_log.json 72c90971b638693cf7425ff59530672f37433b52 data/create/recipes/cutting/compat/byg/stripped_cika_wood.json c66c179d9989be618909104ba8e0f399ca34a630 data/create/recipes/cutting/compat/byg/stripped_cypress_log.json @@ -325,12 +451,12 @@ c6b1455c29d3bd0ff387edad10328ba4dd8b7f44 data/create/recipes/cutting/compat/ecol 0026f35ef1445df9c3bb83bdfe25898cceffd5e4 data/create/recipes/cutting/compat/ecologics/stripped_walnut_wood.json e4c5b799335a71a4259de6519ff9fe86fc014c85 data/create/recipes/cutting/compat/ecologics/walnut_log.json 45734ddd48ac17b25b88cf1f5b0d227431946cf7 data/create/recipes/cutting/compat/ecologics/walnut_wood.json +b0be23a2a268557b1ab26518a9d6ff1e492068fa data/create/recipes/cutting/compat/endergetic/poise_stem.json +1581ae3f152ba5784d6b737ed37e0fe8e6317a76 data/create/recipes/cutting/compat/endergetic/stripped_poise_stem.json cbd3c2674078ba4966965990aaa51ee5afc2cf8f data/create/recipes/cutting/compat/forbidden_arcanus/cherrywood.json 17c1e13d1261454992c6063dcecf7e54d4a645a5 data/create/recipes/cutting/compat/forbidden_arcanus/cherrywood_log.json e5c3b98a78aa3995654583f3ce1c70e7cf8c2130 data/create/recipes/cutting/compat/forbidden_arcanus/mysterywood.json 58166d1cdb0e04952667484b6568de9d081aeba3 data/create/recipes/cutting/compat/forbidden_arcanus/mysterywood_log.json -9cc60d3115f09eee286781905a1d0ca11976dbb5 data/create/recipes/cutting/compat/forbidden_arcanus/stripped_cherrywood.json -4b2e710b98a3fd0a883cf5be9ec75835f8e4631b data/create/recipes/cutting/compat/forbidden_arcanus/stripped_cherrywood_log.json a3035cdad141574294844b8aaa41b92ac76dac2e data/create/recipes/cutting/compat/forbidden_arcanus/stripped_mysterywood.json 20e75208dcb1720de5bbf629911f52b95612227f data/create/recipes/cutting/compat/forbidden_arcanus/stripped_mysterywood_log.json 3a9be23a966c2737c5059474c17a86566bc5505f data/create/recipes/cutting/compat/hexcasting/edified_log.json @@ -341,6 +467,34 @@ f87872a26b790bd29abfc036486474c5db8ee518 data/create/recipes/cutting/compat/inte cd568df5168a0cfccbdaaf767ec63d71871ba3ba data/create/recipes/cutting/compat/integrateddynamics/menril_log_stripped.json b5573785c73cbf3b2c2bd096bb0a12b054819b74 data/create/recipes/cutting/compat/integrateddynamics/menril_wood.json ebca8e98bca0a5c8926c4aa5b197d5d436e2e00b data/create/recipes/cutting/compat/integrateddynamics/menril_wood_stripped.json +1b91f83f2c6e4c6087abc7a136478027b2c7092d data/create/recipes/cutting/compat/nethers_exoticism/jabuticaba_log.json +5f074e7d51d851e95469a234666485ae1f913731 data/create/recipes/cutting/compat/nethers_exoticism/ramboutan_log.json +d8ea31f8eac026d99a26ab200eeca6faee064d9c data/create/recipes/cutting/compat/nethers_exoticism/ramboutan_wood.json +536ed770010fcf8ba56f6333d58fa09b974b95c4 data/create/recipes/cutting/compat/nethers_exoticism/stripped_jabuticaba_log.json +8c84afc4870ff5c8d936dd1363e18531f27c6233 data/create/recipes/cutting/compat/nethers_exoticism/stripped_ramboutan_log.json +4119174e4e7126b66d05e78e7415558a31ba6540 data/create/recipes/cutting/compat/nethers_exoticism/stripped_ramboutan_wood.json +bacf792a68f1a4306c7028e6521a69c26a969183 data/create/recipes/cutting/compat/projectvibrantjourneys/aspen_log.json +3fcc8d12a67b9122396d5c03bbc328841f6c316d data/create/recipes/cutting/compat/projectvibrantjourneys/baobab_log.json +16bb2e61990218008595b6f23920cb2ef6ce03b2 data/create/recipes/cutting/compat/projectvibrantjourneys/cottonwood_log.json +50bc3aa74aa8250e1f99b9b3f245a37ef81dbc0c data/create/recipes/cutting/compat/projectvibrantjourneys/fir_log.json +9b4e50f6d9a09596eea6b638a14b6e1d1ab54b20 data/create/recipes/cutting/compat/projectvibrantjourneys/juniper_log.json +752fcc929aab962c2306cde60f9a676f70d8dfe5 data/create/recipes/cutting/compat/projectvibrantjourneys/mangrove_log.json +99641eeee124922dd259f9755aa66eba560d4cf4 data/create/recipes/cutting/compat/projectvibrantjourneys/maple_log.json +7ec474893ba922ad695bd6a119471646928ce82b data/create/recipes/cutting/compat/projectvibrantjourneys/palm_log.json +355917b2e4e70ccf5c8feba4b5c99526c8fc0a6f data/create/recipes/cutting/compat/projectvibrantjourneys/pine_log.json +9ef4110ba5a7c70ed0e961778b349c3acc620c0f data/create/recipes/cutting/compat/projectvibrantjourneys/redwood_log.json +61a8d67e2f051dd25ac8afdf13be2d8fdc6682d0 data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_aspen_log.json +f38e6e9e18a4b6ae1a0a06a825a525e27af37de0 data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_baobab_log.json +379a5b32938761404f70e88cc4a20c91fc9a5cd8 data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_cottonwood_log.json +e3e91e81ca6751e93073df69482230c751a72efe data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_fir_log.json +d4bccf5e5045eb0bd5be89f96249d7135695e36a data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_juniper_log.json +2b7f66a23ad8b15f0b059259463839faa1b75fef data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_mangrove_log.json +0d6faa369b52b15c903ab24f6894797cdfbd3cde data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_maple_log.json +4d39b74b0ed7b830067135671940ebf79aae866a data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_palm_log.json +b233b2f811b6d4ef1b9595b77f5ba7f0cee8ddeb data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_pine_log.json +0b293cb0b338a3937795c47051dd7131e641e566 data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_redwood_log.json +75559f5d33f679683a9649a2b6e471ee563fcbc0 data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_willow_log.json +bb8114426af3e2e175bd07dd35cd1c8eaafdc309 data/create/recipes/cutting/compat/projectvibrantjourneys/willow_log.json a0194f77f72349786f6b87e641c9628f7fe46fdf data/create/recipes/cutting/compat/quark/azalea_log.json 17daa6e2505ae75e51def1f1523f9d6f120de696 data/create/recipes/cutting/compat/quark/azalea_wood.json 118122fbd3154c0090768d9103e802d2e68b3f06 data/create/recipes/cutting/compat/quark/blossom_log.json @@ -349,6 +503,100 @@ e05b81a5609420153b3ecace758a153bd88a4bef data/create/recipes/cutting/compat/quar f820204e8d99f21203b001da23e8b44cf61e33e2 data/create/recipes/cutting/compat/quark/stripped_azalea_wood.json af71513af8de414036ff73fee0eaca4b823de99c data/create/recipes/cutting/compat/quark/stripped_blossom_log.json 071c8a562233a342875c9cdd392bbebfe719e321 data/create/recipes/cutting/compat/quark/stripped_blossom_wood.json +7974c30fac993848316dad8ad14cac27389d434c data/create/recipes/cutting/compat/regions_unexplored/alpha_wood.json +27585fe96d7e211e4469c437c82c89c1268cf0bf data/create/recipes/cutting/compat/regions_unexplored/ashen_log.json +bf04910ca9246aec3146eff28bc7d5d778c5d6d4 data/create/recipes/cutting/compat/regions_unexplored/ashen_wood.json +371e7f6a13a45006c21837847999e6e1b69e6320 data/create/recipes/cutting/compat/regions_unexplored/baobab_log.json +2cadb9f9d714f8668291122519a73458d6e6afdb data/create/recipes/cutting/compat/regions_unexplored/baobab_wood.json +f124b677daea80e9efdcb58451442403f79ecc59 data/create/recipes/cutting/compat/regions_unexplored/blackwood_log.json +809aba67a96fcf9766c4278697ddfbd89ff63db1 data/create/recipes/cutting/compat/regions_unexplored/blackwood_wood.json +d6263c38f2a54be9310530cfd5f23aaddda0dbca data/create/recipes/cutting/compat/regions_unexplored/blue_bioshroom_hyphae.json +3904212da6e2eb60c453520a44eb22d33fc1c128 data/create/recipes/cutting/compat/regions_unexplored/blue_bioshroom_stem.json +780ddd7800cc138177752ee965ccd7cad8e53c6e data/create/recipes/cutting/compat/regions_unexplored/brimwood_log.json +15ca75b81a207a347e06c730da7afa106714b9ed data/create/recipes/cutting/compat/regions_unexplored/brimwood_log_magma.json +44d643b1724377c9019436f6927b0e1c2de63a42 data/create/recipes/cutting/compat/regions_unexplored/brimwood_wood.json +d449dc8b30400627cb509b0bcdc6b63bbb595172 data/create/recipes/cutting/compat/regions_unexplored/cobalt_log.json +7ff17654f134c7c13f6008619b76b4e19751728c data/create/recipes/cutting/compat/regions_unexplored/cobalt_wood.json +8446d9a9b3ff0140c64d549e33f9f5718fdcceb6 data/create/recipes/cutting/compat/regions_unexplored/cypress_log.json +620d71dee83ac1aa16d30c1b4833e15f00a04208 data/create/recipes/cutting/compat/regions_unexplored/cypress_wood.json +0fa6e6ac5c19c8660111c07b13f0d82cf339910b data/create/recipes/cutting/compat/regions_unexplored/dead_log.json +30a08ae6222bebf4c6fbfc5801ccc30b5d01e417 data/create/recipes/cutting/compat/regions_unexplored/dead_wood.json +696b5f3eb788a5ab8dc35f91ffbc575d987af4b1 data/create/recipes/cutting/compat/regions_unexplored/eucalyptus_log.json +641e17384aa1ed504157ee8b4c3bf839f864199c data/create/recipes/cutting/compat/regions_unexplored/eucalyptus_wood.json +e8b754d24ae46631a97ffa6b15f4676768c4e219 data/create/recipes/cutting/compat/regions_unexplored/green_bioshroom_hyphae.json +3401ba3b7c8fa6023566e99532f035e4d78463ea data/create/recipes/cutting/compat/regions_unexplored/green_bioshroom_stem.json +0e2885c8819270dd0ea9b423eb17aabce17f50b6 data/create/recipes/cutting/compat/regions_unexplored/joshua_log.json +fd296307a65df37d2c952b3de9e79234b36c8bf8 data/create/recipes/cutting/compat/regions_unexplored/joshua_wood.json +b063c34700782af4ba8e5b353faa93a6af63e133 data/create/recipes/cutting/compat/regions_unexplored/kapok_log.json +44375fea18ff6312a05eb4948cf23916cad31bb7 data/create/recipes/cutting/compat/regions_unexplored/kapok_wood.json +74e328e600a2ce311638acf6b0cda2dca7e689bd data/create/recipes/cutting/compat/regions_unexplored/larch_log.json +519d0a467bafd51425e588c1452b326485ac504a data/create/recipes/cutting/compat/regions_unexplored/larch_wood.json +9d8f4845c835ba07d4f1f0f07b8d9ed39fb3514a data/create/recipes/cutting/compat/regions_unexplored/magnolia_log.json +4b367599792101bd5403aba96e973748fc91e8cf data/create/recipes/cutting/compat/regions_unexplored/magnolia_wood.json +caaefb19635f7fbec31d87d7ef40172c25e48b72 data/create/recipes/cutting/compat/regions_unexplored/maple_log.json +b8731d1b36bac59a519a496ce5253595be58ca57 data/create/recipes/cutting/compat/regions_unexplored/maple_wood.json +3cb94f34a0318442ea3a9225366587bf1aa0a01a data/create/recipes/cutting/compat/regions_unexplored/mauve_log.json +587727f7998dd25ee3441aa6f0ed1736262b8a55 data/create/recipes/cutting/compat/regions_unexplored/mauve_wood.json +aecbe7b08f8374331f976434daff89c4e4922efd data/create/recipes/cutting/compat/regions_unexplored/palm_log.json +3a83e8d7cac67638b76a8b30d469faaae71e9d6a data/create/recipes/cutting/compat/regions_unexplored/palm_wood.json +40b46cba392e02498406b90536b8da540df0eb76 data/create/recipes/cutting/compat/regions_unexplored/pine_log.json +9fe88b00cb4c42ed5677f46bccdf2c05fd085c5f data/create/recipes/cutting/compat/regions_unexplored/pine_wood.json +7a11eb2ede6e9d5f1284e6223c52465493901f79 data/create/recipes/cutting/compat/regions_unexplored/pink_bioshroom_hyphae.json +78fb2663e91d8f6494ff1348f2d83633e50713ee data/create/recipes/cutting/compat/regions_unexplored/pink_bioshroom_stem.json +eb7b75678cf8ae102eee91456bd8d4387acfb146 data/create/recipes/cutting/compat/regions_unexplored/redwood_log.json +d1da4369daa6c4fd16dfeff7551c218949e122d5 data/create/recipes/cutting/compat/regions_unexplored/redwood_wood.json +aa75d5f92d23fb24aece736145ac8372f6cff3f3 data/create/recipes/cutting/compat/regions_unexplored/silver_birch_log.json +3218231281a0afda1cef330a022e450efac18927 data/create/recipes/cutting/compat/regions_unexplored/silver_birch_wood.json +2002a66ac280b0a41679cb84422a591760fd88bc data/create/recipes/cutting/compat/regions_unexplored/socotra_log.json +de2954580e05806befc31b2d445577d3fae6ba47 data/create/recipes/cutting/compat/regions_unexplored/socotra_wood.json +7a3bf3bbdb5ff29682d60ac068ffa9f4bb423b34 data/create/recipes/cutting/compat/regions_unexplored/stripped_baobab_log.json +2c961586f828dca3a4107dc181e7e99ef7fecf7d data/create/recipes/cutting/compat/regions_unexplored/stripped_baobab_wood.json +497877a6e23c6f337f46e784e64f725e7507d98a data/create/recipes/cutting/compat/regions_unexplored/stripped_blackwood_log.json +092003ce37ad550040026e2913e9670f5c25169e data/create/recipes/cutting/compat/regions_unexplored/stripped_blackwood_wood.json +fa85fe2cf25bdfffb5bfcb0d7d2fc2733c8e2961 data/create/recipes/cutting/compat/regions_unexplored/stripped_blue_bioshroom_hyphae.json +68b7452484be51a5ca9e1f5daa5ef960e84c4a24 data/create/recipes/cutting/compat/regions_unexplored/stripped_blue_bioshroom_stem.json +25793b4b9d6bd7222da6e49c59a134f36c708d2b data/create/recipes/cutting/compat/regions_unexplored/stripped_brimwood_log.json +cec8ba2be437e8e50f18277dd7464cb5a51783c6 data/create/recipes/cutting/compat/regions_unexplored/stripped_brimwood_wood.json +d131167166b5eaabc2b116920693399624cc969c data/create/recipes/cutting/compat/regions_unexplored/stripped_cobalt_log.json +eb2300ca83bcffaf96fb192cd8f5f6be6ce4d1a5 data/create/recipes/cutting/compat/regions_unexplored/stripped_cobalt_wood.json +2bde40143b3b9e400f3e921dd74100f6e4c2febf data/create/recipes/cutting/compat/regions_unexplored/stripped_cypress_log.json +7dd7b4e0478e42f4141a384f5f5db3d24c6256ba data/create/recipes/cutting/compat/regions_unexplored/stripped_cypress_wood.json +55992382313212af1448785769cb98272736f913 data/create/recipes/cutting/compat/regions_unexplored/stripped_dead_log.json +b1808c9c2afea6f77cbc008d89a0d98c0baacb5b data/create/recipes/cutting/compat/regions_unexplored/stripped_dead_wood.json +4af8a646e1cda8e7cfb54d848af04bcd071cb742 data/create/recipes/cutting/compat/regions_unexplored/stripped_eucalyptus_log.json +892f2b15212cdd1ab5aa94bdced37c8ecd502fad data/create/recipes/cutting/compat/regions_unexplored/stripped_eucalyptus_wood.json +a0b555a70b9c45671175ea9d67c7f9bb6291ce39 data/create/recipes/cutting/compat/regions_unexplored/stripped_green_bioshroom_hyphae.json +0b361b9f1b0fffb0934f347e93e01f7f99c8c598 data/create/recipes/cutting/compat/regions_unexplored/stripped_green_bioshroom_stem.json +7887134005361356b59e3e8f79f747461aa90967 data/create/recipes/cutting/compat/regions_unexplored/stripped_joshua_log.json +12bcc42d67c110b7b57a2c15bfd184a7c8d5ced3 data/create/recipes/cutting/compat/regions_unexplored/stripped_joshua_wood.json +9c192bac86ada1020093ec7a38bae39f890f6867 data/create/recipes/cutting/compat/regions_unexplored/stripped_kapok_log.json +5cf8658dec167a5eae2555e231d86c6dee1e9f86 data/create/recipes/cutting/compat/regions_unexplored/stripped_kapok_wood.json +9b9d6b4ff28a9ee9d38e8ff7e2f66c5d741792d1 data/create/recipes/cutting/compat/regions_unexplored/stripped_larch_log.json +477187045049395be4b50747e70b8682bf627745 data/create/recipes/cutting/compat/regions_unexplored/stripped_larch_wood.json +9444611d488463cf40113a522c0125bcc901f59d data/create/recipes/cutting/compat/regions_unexplored/stripped_magnolia_log.json +c7093db236a350421fb1963233472c8d7b09407b data/create/recipes/cutting/compat/regions_unexplored/stripped_magnolia_wood.json +6ba2945063856e34dfde713c8b6caf9bcd0b59ad data/create/recipes/cutting/compat/regions_unexplored/stripped_maple_log.json +cb536b2a2638a6e378423c2ea2a3c8785f6fc7c7 data/create/recipes/cutting/compat/regions_unexplored/stripped_maple_wood.json +3ff0ebc63da709a8f4958b7439cf9a88c4f9a349 data/create/recipes/cutting/compat/regions_unexplored/stripped_mauve_log.json +a274dadaba1e1f489e7b531ac4eb02e808fc4f01 data/create/recipes/cutting/compat/regions_unexplored/stripped_mauve_wood.json +626e2bb1d62ab57bcadf3732491a6a1efd249035 data/create/recipes/cutting/compat/regions_unexplored/stripped_palm_log.json +50dee41bd5c412aa444a2fcc5c3d7638ab01133d data/create/recipes/cutting/compat/regions_unexplored/stripped_palm_wood.json +9270af6499ef6e5c0e097bee06637a518d3a83d7 data/create/recipes/cutting/compat/regions_unexplored/stripped_pine_log.json +58c10356ba51c77959e8f66f83e178d20cec097b data/create/recipes/cutting/compat/regions_unexplored/stripped_pine_wood.json +01b11c8a041883e21d5374b8afdef2fa47a55aee data/create/recipes/cutting/compat/regions_unexplored/stripped_pink_bioshroom_hyphae.json +0c4826e7e49e2cc704627235c2f1c8fab604019f data/create/recipes/cutting/compat/regions_unexplored/stripped_pink_bioshroom_stem.json +1177ce8821f01c08ab918ea24ea33b61cbd733cf data/create/recipes/cutting/compat/regions_unexplored/stripped_redwood_log.json +af8789a2a697cd2118d6809100a0c04d4c74794e data/create/recipes/cutting/compat/regions_unexplored/stripped_redwood_wood.json +4e441e9502ba4be4fc1c0da98bb53af30f366d1f data/create/recipes/cutting/compat/regions_unexplored/stripped_socotra_log.json +3f93dd9538e68c9b1482c41d531c359e6b144914 data/create/recipes/cutting/compat/regions_unexplored/stripped_socotra_wood.json +bcba754ec947af79701a5ffb0e64ff7a7ff92a09 data/create/recipes/cutting/compat/regions_unexplored/stripped_willow_log.json +f104dc175e416d675e358e6601442c09c356858e data/create/recipes/cutting/compat/regions_unexplored/stripped_willow_wood.json +6c4a98aa0396f330924d5be6a1fb7c1123c5d236 data/create/recipes/cutting/compat/regions_unexplored/stripped_yellow_bioshroom_hyphae.json +b1440d5254bf8dc5b619a7d871f2c51511498184 data/create/recipes/cutting/compat/regions_unexplored/stripped_yellow_bioshroom_stem.json +54ed3844da6abdf55939f1d3ed42394c55ce57c5 data/create/recipes/cutting/compat/regions_unexplored/willow_log.json +d0419337ab011df3685a6fea849c17904a03f2d7 data/create/recipes/cutting/compat/regions_unexplored/willow_wood.json +365f090b94466b7695e7beb7d0fc7b7e084e636c data/create/recipes/cutting/compat/regions_unexplored/yellow_bioshroom_hyphae.json +22d48a8e9cf5a566bbc566a92e6bf9762a33586a data/create/recipes/cutting/compat/regions_unexplored/yellow_bioshroom_stem.json 8a9e25c2c196ab94c9e7b5fcb2cf27bc161a8d1c data/create/recipes/cutting/compat/silentgear/netherwood_log.json 9e869a4b7bbb08fefa140292f0cb0806a795fc59 data/create/recipes/cutting/compat/silentgear/netherwood_wood.json d9cdc0eb674cdf08963ac8f97ee6a7ea2f99e779 data/create/recipes/cutting/compat/silentgear/stripped_netherwood_log.json @@ -365,6 +613,14 @@ e7f542ab1523379f218d47c7365f1d3be41036b4 data/create/recipes/cutting/compat/tcon aaa2b8cde03e0141fc4ccd3702fcb0d13966b391 data/create/recipes/cutting/compat/tconstruct/stripped_greenheart_wood.json dec7bfbdc2c974655110651365f701121370394a data/create/recipes/cutting/compat/tconstruct/stripped_skyroot_log.json 0486cee0f932eee89bb26c2fe5b0ed076d05d1be data/create/recipes/cutting/compat/tconstruct/stripped_skyroot_wood.json +0dcbd6c92adce8bc1fe8a1a6f4c21ad436d4852f data/create/recipes/cutting/compat/the_vault/chromatic_log.json +bb89e77d7cdb54b37434f65c1652112b14fcfcc7 data/create/recipes/cutting/compat/the_vault/driftwood_log.json +e7f497ec5ea4860147d5941df4b594526361886d data/create/recipes/cutting/compat/the_vault/overgrown_wooden_log.json +e04c07431e80d779b2bfdb1227d2b43896ead7f5 data/create/recipes/cutting/compat/the_vault/stripped_chromatic_log.json +e91c945669e5b838e28b73079be0218b7dbb438c data/create/recipes/cutting/compat/the_vault/stripped_driftwood_log.json +dcb888781e53a4bd13a39dc8dcf52d68c70daa11 data/create/recipes/cutting/compat/the_vault/stripped_overgrown_wooden_log.json +95824dae54de5c99be7f108882bb0add80d9f4f4 data/create/recipes/cutting/compat/the_vault/stripped_wooden_log.json +f43130d8c47dbfd21c89d519539e2d8b5437c108 data/create/recipes/cutting/compat/the_vault/wooden_log.json 9a2d7361718e64bf25c3660123ab9f506fad7dba data/create/recipes/cutting/compat/twilightforest/canopy_log.json 35f470c4fb8c1e651bcf8f161ebcaa0f9f888be2 data/create/recipes/cutting/compat/twilightforest/canopy_wood.json 02ef237d075e3033676e0229946c9c2bc9ae27e0 data/create/recipes/cutting/compat/twilightforest/dark_log.json @@ -397,6 +653,14 @@ d9ea151935b7257f9a799be5959d736a20eabf44 data/create/recipes/cutting/compat/twil 29649f4c23ddc00eebe7352dcca0d4c695807c62 data/create/recipes/cutting/compat/twilightforest/transformation_wood.json 10227f5cf8a9995f7e59c509ad20a33f907a1203 data/create/recipes/cutting/compat/twilightforest/twilight_oak_log.json 60c949a998c4ffe6f838faf729ef9a7a247a59df data/create/recipes/cutting/compat/twilightforest/twilight_oak_wood.json +894d91b2cb339406acb48a29cfabe4c8eafe51bf data/create/recipes/cutting/compat/upgrade_aquatic/driftwood.json +b86b4710a31b8ab98d3f61972fd0e3a80d1cb788 data/create/recipes/cutting/compat/upgrade_aquatic/driftwood_log.json +1a155ced39a05ccbaa1fcd57052c8acced381860 data/create/recipes/cutting/compat/upgrade_aquatic/river_log.json +9b29505252b5c529d86e24c9c53d1190e73537d7 data/create/recipes/cutting/compat/upgrade_aquatic/river_wood.json +3fd253db6046bd5276cac5aea203f5293a49f843 data/create/recipes/cutting/compat/upgrade_aquatic/stripped_driftwood_log.json +ab08c98c58c2beab4805d0576cac3874c4774553 data/create/recipes/cutting/compat/upgrade_aquatic/stripped_river_log.json +b368756fa5ec34fa279f53fb99aea8f47757828a data/create/recipes/cutting/compat/upgrade_aquatic/stripped_river_wood.json +b5b38739f5c763a04dd1d8386b9afc1081d1c436 data/create/recipes/cutting/compat/upgrade_aquatic/strippped_driftwood.json 0a3c2e35782d54a28c3c60eae10bdd6247d5977f data/create/recipes/cutting/crimson_hyphae.json cc4d09728d2407c0c972e696037d1b45db9a8bc2 data/create/recipes/cutting/crimson_stem.json ebdf404a6de7880a42527c35727fa4214eb8cff3 data/create/recipes/cutting/dark_oak_log.json @@ -435,60 +699,71 @@ ddb27a32c1b01812db7cc317c962e35d794dae88 data/create/recipes/cutting/warped_hyph 7a01147d3c7d8fb9acb870b33e5a792328f88c3c data/create/recipes/deploying/cogwheel.json 1230f449873262e79585752d3430e5f7f383bcb2 data/create/recipes/deploying/large_cogwheel.json dc35369da8514a5650704fd39e84861cce084b5d data/create/recipes/deploying/waxed_copper_block_from_adding_wax.json -7b7d596cdaa4000222177b405c04c6e8906561b4 data/create/recipes/deploying/waxed_copper_shingles_from_adding_wax.json afbe0c612651ee90651ee7b39683c8baac2a115e data/create/recipes/deploying/waxed_copper_shingle_slab_from_adding_wax.json 66cd83c15d46692f27deaac280ef782bb2bd7909 data/create/recipes/deploying/waxed_copper_shingle_stairs_from_adding_wax.json -bcb9750b7c3504996d6177d5980128af018942a8 data/create/recipes/deploying/waxed_copper_tiles_from_adding_wax.json +7b7d596cdaa4000222177b405c04c6e8906561b4 data/create/recipes/deploying/waxed_copper_shingles_from_adding_wax.json eecd6194b0efc2bee321ba7fac7348cd3f5911ab data/create/recipes/deploying/waxed_copper_tile_slab_from_adding_wax.json dfc1f8f6b0d1b6d23c9125c97eba31dadc370904 data/create/recipes/deploying/waxed_copper_tile_stairs_from_adding_wax.json +bcb9750b7c3504996d6177d5980128af018942a8 data/create/recipes/deploying/waxed_copper_tiles_from_adding_wax.json e260cded2b746bd79afaaa1e086cf2f0faffde76 data/create/recipes/deploying/waxed_cut_copper_from_adding_wax.json 33e338242aff64f9d52169392d2eb8e617b8da5c data/create/recipes/deploying/waxed_cut_copper_slab_from_adding_wax.json 5f4671548b18634ae440d7c64c4c97e5e533601b data/create/recipes/deploying/waxed_cut_copper_stairs_from_adding_wax.json ff182d5c0c4b832ff566691d9b680c9039c55c16 data/create/recipes/deploying/waxed_exposed_copper_from_adding_wax.json -eff2e77f004873e695e419afc71a7011328d3de8 data/create/recipes/deploying/waxed_exposed_copper_shingles_from_adding_wax.json 5a7a622d5b340f83ba2d32fe53620744c5193a32 data/create/recipes/deploying/waxed_exposed_copper_shingle_slab_from_adding_wax.json b895ef423e64936b5d94ee54a6527316ed48d9d6 data/create/recipes/deploying/waxed_exposed_copper_shingle_stairs_from_adding_wax.json -9d566e599cc05aefde637faab1957813a5b6f3f7 data/create/recipes/deploying/waxed_exposed_copper_tiles_from_adding_wax.json +eff2e77f004873e695e419afc71a7011328d3de8 data/create/recipes/deploying/waxed_exposed_copper_shingles_from_adding_wax.json 582083e0fed8760cde2c53aa2b02237eb59a3df0 data/create/recipes/deploying/waxed_exposed_copper_tile_slab_from_adding_wax.json fec9d744770bfc517a72a2be45701aab6f3040b2 data/create/recipes/deploying/waxed_exposed_copper_tile_stairs_from_adding_wax.json +9d566e599cc05aefde637faab1957813a5b6f3f7 data/create/recipes/deploying/waxed_exposed_copper_tiles_from_adding_wax.json 0f18c91f36e3abae99a7dca72f3d80e59f03cf7d data/create/recipes/deploying/waxed_exposed_cut_copper_from_adding_wax.json 7ed36f4f3abfd37aec13a273b87d97c8ccc36cb4 data/create/recipes/deploying/waxed_exposed_cut_copper_slab_from_adding_wax.json 9cd5a6c71b5102ef2660e8a5c650cbd2c2327580 data/create/recipes/deploying/waxed_exposed_cut_copper_stairs_from_adding_wax.json 97b7b3f65807328d0a036cb66ee53d898504da77 data/create/recipes/deploying/waxed_oxidized_copper_from_adding_wax.json -bd37d658666b2912c07b6daa6adaff99a479223a data/create/recipes/deploying/waxed_oxidized_copper_shingles_from_adding_wax.json 07c82e555617f9d9166f2d2c9068ac421eb0b37a data/create/recipes/deploying/waxed_oxidized_copper_shingle_slab_from_adding_wax.json d0c7805681e3ed6a6bc5775d42c702af924e8785 data/create/recipes/deploying/waxed_oxidized_copper_shingle_stairs_from_adding_wax.json -41c879946a24ff330466476bdee9148859398842 data/create/recipes/deploying/waxed_oxidized_copper_tiles_from_adding_wax.json +bd37d658666b2912c07b6daa6adaff99a479223a data/create/recipes/deploying/waxed_oxidized_copper_shingles_from_adding_wax.json af72234311a9abf5c57c767c05274c466dceac53 data/create/recipes/deploying/waxed_oxidized_copper_tile_slab_from_adding_wax.json b35d22f891d1c9cab4340399e3426c96132b3fc7 data/create/recipes/deploying/waxed_oxidized_copper_tile_stairs_from_adding_wax.json +41c879946a24ff330466476bdee9148859398842 data/create/recipes/deploying/waxed_oxidized_copper_tiles_from_adding_wax.json 9d78f4d16273015d181be586f91e77f3b82ee18f data/create/recipes/deploying/waxed_oxidized_cut_copper_from_adding_wax.json 2a9c57a8ca9b013b7bc11d2588d4ba00b402f97f data/create/recipes/deploying/waxed_oxidized_cut_copper_slab_from_adding_wax.json 5670c074c0f1961a5e499953a49c7e3f1f617ebf data/create/recipes/deploying/waxed_oxidized_cut_copper_stairs_from_adding_wax.json 58679c5c37eaa5a52ef9e0f4f7cc695c58ddee96 data/create/recipes/deploying/waxed_weathered_copper_from_adding_wax.json -5817055c1cf3ae572ffbe2765f3e519fda4c3342 data/create/recipes/deploying/waxed_weathered_copper_shingles_from_adding_wax.json e962429c48ed12bb2d7b299719513c23a2088879 data/create/recipes/deploying/waxed_weathered_copper_shingle_slab_from_adding_wax.json 2321ea4ed39d09b12a80be8df2c7c1dc4c6d2c18 data/create/recipes/deploying/waxed_weathered_copper_shingle_stairs_from_adding_wax.json -b635490492a22f88e24003bffb09c4d5e3fa2d61 data/create/recipes/deploying/waxed_weathered_copper_tiles_from_adding_wax.json +5817055c1cf3ae572ffbe2765f3e519fda4c3342 data/create/recipes/deploying/waxed_weathered_copper_shingles_from_adding_wax.json d0fc937a3e7ae42fb1891b7b87adb2b57292e01d data/create/recipes/deploying/waxed_weathered_copper_tile_slab_from_adding_wax.json 6852ea4c7f27520fb3388ec641be4cb94d907199 data/create/recipes/deploying/waxed_weathered_copper_tile_stairs_from_adding_wax.json +b635490492a22f88e24003bffb09c4d5e3fa2d61 data/create/recipes/deploying/waxed_weathered_copper_tiles_from_adding_wax.json 9ab3ba5847c3abbc17c476436978141f2c039ce9 data/create/recipes/deploying/waxed_weathered_cut_copper_from_adding_wax.json 733dd94b46186c19fdecced5d8231e46ea612cf2 data/create/recipes/deploying/waxed_weathered_cut_copper_slab_from_adding_wax.json cd4c050e6ad9227bf293768f2d8b965c0ecafeab data/create/recipes/deploying/waxed_weathered_cut_copper_stairs_from_adding_wax.json 6a9fa669a5cbdc2406ecc5eaf6992e0e8fa83b88 data/create/recipes/emptying/builders_tea.json +0b20bddac967edea53442c05c59ccf3306e9eb76 data/create/recipes/emptying/compat/alexsmobs/lava_bottle.json 5fb7e705b53ed84b607858be1db6a6d2765bea9c data/create/recipes/emptying/compat/farmersdelight/milk_bottle.json +054bd7804a710c498f605b82fd7d5055a4762829 data/create/recipes/emptying/compat/neapolitan/milk_bottle.json ab35f7d885d8f2c8ccf562938ac804f6cb4c38ad data/create/recipes/emptying/honey_bottle.json b4e78bf89677ff211c9a740231836ae0598cf0d8 data/create/recipes/filling/blaze_cake.json aea7837e33bfcbdd1e0b4386372b6595fd00ad1d data/create/recipes/filling/builders_tea.json 0c69ff301d149af8d36be10a1e49b0be53a21a49 data/create/recipes/filling/chocolate_glazed_berries.json +2d3b2d7c28fc0ea9f18be73d9523456b5c5946da data/create/recipes/filling/compat/aether/aether_grass_block.json +f158f5e509b43746871722edf802984e2b9cc024 data/create/recipes/filling/compat/alexsmobs/lava_bottle.json +5770b60bd7e89f2cac74df71b463a1101601d86f data/create/recipes/filling/compat/byg/lush_grass_block.json 1280689ba81877c6583c6941ed307ca35d4f00e4 data/create/recipes/filling/compat/farmersdelight/milk_bottle.json +fd578bb1e05901d0b959b1f445273619b55cde57 data/create/recipes/filling/compat/neapolitan/milk_bottle.json +3f0f458c0c044c7b1c4e203d7394d890ba286d86 data/create/recipes/filling/compat/regions_unexplored/peat_grass_block.json +ff16c74f09edbc67ed969f64270ca376bb8ea955 data/create/recipes/filling/compat/regions_unexplored/silt_grass_block.json +54926ae73f93913f32ec8d6b674c1b0c021bbe9a data/create/recipes/filling/compat/vampirism/cursed_grass_block.json 12c19b46eec5bd371300dfcff5d2a9dd7169bb1b data/create/recipes/filling/glowstone.json afeb566e5f989c58d239a2f66084ce3d813d111a data/create/recipes/filling/grass_block.json 36d0f06ea9fa065ed85fc596e08725a2e6c8d4af data/create/recipes/filling/gunpowder.json -c07c662c2ba8d7e5c72437096acfd7fdb99704f3 data/create/recipes/filling/honeyed_apple.json c4e0373516bc98def80d0a13803cf980e3f905e0 data/create/recipes/filling/honey_bottle.json +c07c662c2ba8d7e5c72437096acfd7fdb99704f3 data/create/recipes/filling/honeyed_apple.json 3acf4a649751c23c8e39d649131939659c105a53 data/create/recipes/filling/redstone.json deab6ea169b756376d89ea2200e0387a865ed2fc data/create/recipes/filling/sweet_roll.json 788cce637f455ea33408e5be5b75ce0e4cc57c95 data/create/recipes/haunting/blackstone.json +798eaf3436e44fe388f9e37063dc5d1ee9f7fe43 data/create/recipes/haunting/compat/farmersdelight/rotten_tomato.json +eee126848cc68c4d9bd12f8ba8638133ad920da2 data/create/recipes/haunting/compat/hauntedharvest/rotten_apple.json 6f4039ea3aa482f15a18deba3d7d5fbd0e907c2e data/create/recipes/haunting/crimson_fungus.json 130d971b626bc871c23bd13d24b4fd23a954dbf2 data/create/recipes/haunting/glow_berries.json 4319a7d8ca417f1f2f1995b867c979e831a4de59 data/create/recipes/haunting/glow_ink_sac.json @@ -529,6 +804,170 @@ d6073794b0be05fb52faf2d78d0daeb6ce3beab5 data/create/recipes/milling/calcite.jso a303570c10fc5ad55646555b1a72d2e2620fa34e data/create/recipes/milling/coal.json 9787581b978c78b40f92233556c6380c6ee9de53 data/create/recipes/milling/cobblestone.json 680b49ceb7d1052e5fe19e33f2eba6b7841ca817 data/create/recipes/milling/cocoa_beans.json +de5a7460348c3301381dd2635ac433a473bec04a data/create/recipes/milling/compat/ae2/certus_quartz.json +42151b6f50df8e05a7399eaa386369474a5a618c data/create/recipes/milling/compat/ae2/ender_pearl.json +b383c64d2559cd757b84fd5651f77c9ea95ebb00 data/create/recipes/milling/compat/ae2/fluix_crystal.json +880cfc22f510351e54a82242d6bc86acab4c3c92 data/create/recipes/milling/compat/ae2/sky_stone_block.json +d6c091225197381abae8bdba35318aa3a8bde1ad data/create/recipes/milling/compat/atmospheric/gilia.json +9dce11179bf92dc0519fad4b41c944a25226abff data/create/recipes/milling/compat/atmospheric/hot_monkey_brush.json +fd427a15577f3ea5612667e6b148ff253d2fd021 data/create/recipes/milling/compat/atmospheric/scalding_monkey_brush.json +80277c7f81e217740643c284f6c23b22373d5877 data/create/recipes/milling/compat/atmospheric/warm_monkey_brush.json +dd37341d15d8a6fdee096470a1eed7686bb40773 data/create/recipes/milling/compat/atmospheric/yucca_flower.json +5b05e3713b0e1e3bbf66cf87fcd8705c9b471ded data/create/recipes/milling/compat/autumnity/autumn_crocus.json +155b38f5087cadd93f268c272ad40ff5ae146a42 data/create/recipes/milling/compat/biomesoplenty/blue_hydrangea.json +b23f8cd24c43a995d11fe7eb8e639baf27556ca2 data/create/recipes/milling/compat/biomesoplenty/burning_blossom.json +8c6d77df0f70a7e46f4f1c8071dadc6388cc5798 data/create/recipes/milling/compat/biomesoplenty/glowflower.json +3eee4227b1ba4d5a27801a1cd7172698d5c9b9d2 data/create/recipes/milling/compat/biomesoplenty/lavender.json +ae27a8d0a76d911164a1dc23124a6b404b37b546 data/create/recipes/milling/compat/biomesoplenty/orange_cosmos.json +e383106ff8f877b5995e20c03af5e41e3db541d9 data/create/recipes/milling/compat/biomesoplenty/pink_daffodil.json +0de05838a8d236803379ea3766ef75883b3f1467 data/create/recipes/milling/compat/biomesoplenty/pink_hibiscus.json +7e69f8ff3f816e176670df7b4eb3340f5e7bc855 data/create/recipes/milling/compat/biomesoplenty/rose.json +213e079f32baa2879702b72bdf08f146877a0bb9 data/create/recipes/milling/compat/biomesoplenty/violet.json +b3f041e005491582f055da15871891357908d998 data/create/recipes/milling/compat/biomesoplenty/wildflower.json +d08c4fcebb79e2e02ac9cb4623124332a05ed661 data/create/recipes/milling/compat/biomesoplenty/wilted_lily.json +ca03746c39143de7867aeab2fb450fe0a67b69e3 data/create/recipes/milling/compat/botania/black_petal.json +3192777eeb363a55174a0eb58197ee686b2e02c7 data/create/recipes/milling/compat/botania/blue_petal.json +ee99c9bdcc4da8d160fc762ce7b394848d6a86d1 data/create/recipes/milling/compat/botania/brown_petal.json +1d8dab24913945268f819c24e132d8bb74f792c2 data/create/recipes/milling/compat/botania/cyan_petal.json +010a111f9810f142315bc94dfb1be03ee02508c4 data/create/recipes/milling/compat/botania/gray_petal.json +dee8b4c26d6b78aceeb8e5a264693dad4e81dbcb data/create/recipes/milling/compat/botania/green_petal.json +285a24e440d6a8cf34f2925a3eed7fa1d16e102b data/create/recipes/milling/compat/botania/light_blue_petal.json +3cc232966240394aaf5a3a5d16a3ceebd41597a0 data/create/recipes/milling/compat/botania/light_gray_petal.json +1225119a7dc1f69dfaf2cec32a0267b1d47ef72d data/create/recipes/milling/compat/botania/lime_petal.json +09e114685483329a78c3cecf8b312f16d26cd981 data/create/recipes/milling/compat/botania/magenta_petal.json +ae3e7eb55dda1846b8fd849ea1c8f1cbd37b9fca data/create/recipes/milling/compat/botania/orange_petal.json +bf13e9807a96efc1ef684f0129cc21110e44cc4c data/create/recipes/milling/compat/botania/pink_petal.json +7e0a167201b9c915579ede71ee7128bccdeee9c2 data/create/recipes/milling/compat/botania/purple_petal.json +4e7c1ae95f10bb3466dd542a2e04c726c599ecd9 data/create/recipes/milling/compat/botania/red_petal.json +28cbeb278022b2ac62cae2f3deaa65cb375c6456 data/create/recipes/milling/compat/botania/white_petal.json +dd1e35234c419b1576410a2590fd33d88c8bb9bd data/create/recipes/milling/compat/botania/yellow_petal.json +c7d2b07396448628123b81e1f34a8b131aa99c83 data/create/recipes/milling/compat/buzzier_bees/buttercup.json +0c4a3c7da1e151868740db2037504e35a02af3d0 data/create/recipes/milling/compat/buzzier_bees/pink_clover.json +355e89a3e003ae65ff06a9277c05699220eec569 data/create/recipes/milling/compat/buzzier_bees/white_clover.json +558968f56003e0e780549b0480baf188a97ab6be data/create/recipes/milling/compat/byg/allium_flower_bush.json +889ef537dc5f143f32c272a68f15c8c81c3f57a9 data/create/recipes/milling/compat/byg/alpine_bellflower.json +7c8697b5edc4dcb69eff85648fa3ae4488a5300f data/create/recipes/milling/compat/byg/amaranth.json +44017aa3e51f8ca54e308dc481386b537d520c1b data/create/recipes/milling/compat/byg/angelica.json +ad85f3711eb0d5ce4fab0bcd6d0cdad653e4917d data/create/recipes/milling/compat/byg/begonia.json +ae68d16d258c3cb7bd7d82ab56a3a923c8688c9a data/create/recipes/milling/compat/byg/bistort.json +ba50b69c307e21de6e2a3c3d7c27fc8be2f18f1b data/create/recipes/milling/compat/byg/black_rose.json +8e70425041f02cb6861baa07e980b709e932e402 data/create/recipes/milling/compat/byg/blue_sage.json +330c757a8405c7f2b100086c1caa2bcd4e7a8170 data/create/recipes/milling/compat/byg/california_poppy.json +307d7c6ad59f49b03f4c60d1c2608f199be0861e data/create/recipes/milling/compat/byg/compat/byg/white_sage.json +8c7dd6080ddf2523213dc4e95728153bef7da8df data/create/recipes/milling/compat/byg/compat/byg/winter_cyclamen.json +7d7ed065bca1702e20728ca7e4015bfbc52c18ce data/create/recipes/milling/compat/byg/crocus.json +16a9406c68544706b3e453a846d4887279ab754a data/create/recipes/milling/compat/byg/cyan_amaranth.json +64d05bb3b14de133bedcd40f3bdc148b424885fa data/create/recipes/milling/compat/byg/cyan_rose.json +2ec5e00a2a35592551a90df16a775230c13ee1f0 data/create/recipes/milling/compat/byg/cyan_tulip.json +d62aca5159ec5af5c8a96cebf4d88b883b46ba8e data/create/recipes/milling/compat/byg/daffodil.json +fc8b36b5e75f81abb96b69a8ae2f73d23614b285 data/create/recipes/milling/compat/byg/delphinium.json +0185737dcd02afe3c953d1785130503e3c56a846 data/create/recipes/milling/compat/byg/fairy_slipper.json +cd17f9e09d4b7e364eb57b3c3d16d4e4e89bcbc8 data/create/recipes/milling/compat/byg/firecracker_flower_bush.json +55032b5eb18a2f915478a8d443672c9c74bac5f7 data/create/recipes/milling/compat/byg/foxglove.json +85201db5be1ff83f242152fbc6f93c94d78943ff data/create/recipes/milling/compat/byg/green_tulip.json +de256ad24623760e3cce64ba8bf92022b23654cc data/create/recipes/milling/compat/byg/guzmania.json +6f0ed2a9f13757eb83b020cb15bea436a1471b79 data/create/recipes/milling/compat/byg/hydrangea_bush.json +81f4d5aa218f29d23e059392e1b38c8006a27734 data/create/recipes/milling/compat/byg/incan_lily.json +ccf127c5b9b737be1163386fef874902bba3b2d6 data/create/recipes/milling/compat/byg/iris.json +cdf0d447001fc2bd7e892eaf5cac44659e362ff7 data/create/recipes/milling/compat/byg/kovan_flower.json +c2e7bf878b81f08615439c8885ad4d87a5c5ef65 data/create/recipes/milling/compat/byg/lazarus_bellflower.json +5097b63f8a0b9f92f2b8c5c4cd455caae6f0e11b data/create/recipes/milling/compat/byg/lolipop_flower.json +1b14f57675eb8e7b993a4d61f7d033af3c02827f data/create/recipes/milling/compat/byg/magenta_amaranth.json +ab7c30e4e3ecbc7c12534ca217dd62f373a6dc9f data/create/recipes/milling/compat/byg/magenta_tulip.json +413ee06756e901592b8cdd860e9e6e4539bf604e data/create/recipes/milling/compat/byg/orange_amaranth.json +221cd8754c18e88ba6fa48b47efc7b707e05def8 data/create/recipes/milling/compat/byg/orange_daisy.json +3506478a12138ac9934c9075b31ac45f4900a4a0 data/create/recipes/milling/compat/byg/orchid.json +a31402be7db0a5a9c96cc021cf53056db5720a50 data/create/recipes/milling/compat/byg/osiria_rose.json +302eef96244c037f9c225ad4440e34b7d46617f3 data/create/recipes/milling/compat/byg/peach_leather_flower.json +784bcccb6e0625df90031dfed9849457c1446d93 data/create/recipes/milling/compat/byg/pink_allium.json +a3f0dbe453c147a72ef02d7b0201dec1cc4b6c91 data/create/recipes/milling/compat/byg/pink_allium_flower_bush.json +adb8e25f4d5492d2d7a6604fca87e1789d3c8d4d data/create/recipes/milling/compat/byg/pink_anemone.json +4b2e0f9ea1b05617a022eaf270561929a1b3d1e4 data/create/recipes/milling/compat/byg/pink_daffodil.json +f60a8fb4853223699d3378482588559062df5f70 data/create/recipes/milling/compat/byg/protea_flower.json +4eda34601212c933e61d8de9485331a35dadfb96 data/create/recipes/milling/compat/byg/purple_amaranth.json +03ccb7eb3bb917179eda10b8a85ee6b095614d60 data/create/recipes/milling/compat/byg/purple_rose.json +c25b26def2016a516b34bb2f37f49aa9f1de7d53 data/create/recipes/milling/compat/byg/purple_tulip.json +433af73467de5cda9658e96a3cc42d9637f7b0cc data/create/recipes/milling/compat/byg/richea.json +2e656dfe3b59617aa2de293338f3aad8bfeaeb2d data/create/recipes/milling/compat/byg/rose.json +a8ca6690e32dc594c03057b529e89d77385bc63b data/create/recipes/milling/compat/byg/silver_vase_flower.json +1fbd9af28ada2330f9f96cbbdd3a33f8cdd245f0 data/create/recipes/milling/compat/byg/snowdrops.json +0e32bf6c937d5773ad863c302da5ab563cbe954b data/create/recipes/milling/compat/byg/tall_allium.json +f16be0f6dbd6c3f4fbff36d7dcb4391b4cbbbe6a data/create/recipes/milling/compat/byg/tall_pink_allium.json +321b60d3b774e468f173a6c4afc520e46ae089c7 data/create/recipes/milling/compat/byg/torch_ginger.json +b50ae491f0732224ac10b005c1f2bfd05e8558b0 data/create/recipes/milling/compat/byg/violet_leather_flower.json +d0964f1cca07620383e41a9e43224a04694e009f data/create/recipes/milling/compat/byg/white_anemone.json +2b31edd1acc8487bd0e744a7f5394e13d1582a7f data/create/recipes/milling/compat/byg/white_puffball_cap.json +eb9606bbb2e4c6fb82b6607c8d5c23834d9e44a8 data/create/recipes/milling/compat/byg/winter_rose.json +1732969a11d677b825758f6c4af2cdbcdc365898 data/create/recipes/milling/compat/byg/winter_scilla.json +9266eaf6e2259fccb6e2aa57a9e19fc1faeb53fe data/create/recipes/milling/compat/byg/yellow_daffodil.json +fda00f49b9a5758ee7d24f2aeab81a3cc690544a data/create/recipes/milling/compat/byg/yellow_tulip.json +2e6a7a1b0e8ab1d6e514a30a21d47b404cfdcd45 data/create/recipes/milling/compat/druidcraft/lavender.json +5be32cdd48cf7d9e3f8273fc3479d559070b9872 data/create/recipes/milling/compat/environmental/bird_of_paradise.json +102130e75ea8f2b8c99ad9641d293a4e588912cf data/create/recipes/milling/compat/environmental/bluebell.json +50df88584dd6086c0dbb23fb16b7f36fee381534 data/create/recipes/milling/compat/environmental/blue_delphinium.json +a4beb691042be811eee8a130ff023065620b20b9 data/create/recipes/milling/compat/environmental/cartwheel.json +d1d388667f9c8a5666cc2a1ef2eb77716a0b18ed data/create/recipes/milling/compat/environmental/dianthus.json +ee3d1989d4a1069909aaeb99374602d0e92d6dfc data/create/recipes/milling/compat/environmental/magenta_hibiscus.json +e2226caf8677a0a63f93573e1d3443f0cc6c7294 data/create/recipes/milling/compat/environmental/orange_hibiscus.json +c5eda065f7f8d2b4e1b057896c96e097d0720e50 data/create/recipes/milling/compat/environmental/pink_delphinium.json +8a9c9d36d91a24f20a3be0d6fdd9c2858e886e0d data/create/recipes/milling/compat/environmental/pink_hibiscus.json +23c8b8a1cad79931bcb52562919108fbf5d114cd data/create/recipes/milling/compat/environmental/purple_delphinium.json +38370b0dd78f75b1d3ba2c11c248c4f17191c7e4 data/create/recipes/milling/compat/environmental/purple_hibiscus.json +b437fd46e7980897b66c285f65f9a2c3ee1213a0 data/create/recipes/milling/compat/environmental/red_hibiscus.json +72e67e7da9d0ad198106c33b34463ba5dd5c4e71 data/create/recipes/milling/compat/environmental/red_lotus_flower.json +c14ba9d30c2a111de9ffba9d3e6a6ca34f2e660c data/create/recipes/milling/compat/environmental/violet.json +15b94ea2ddabb3ac7cea57defae746d6c16e2932 data/create/recipes/milling/compat/environmental/white_delphinium.json +85fcaa71b40ff82c1ba73fc7a186a798af87c042 data/create/recipes/milling/compat/environmental/white_lotus_flower.json +ffa08663414289ab1e6b9af09ac992cc8f4b5571 data/create/recipes/milling/compat/environmental/yellow_hibiscus.json +582ed748a36073e5f6b2f20558a7d640ab204112 data/create/recipes/milling/compat/regions_unexplored/alpha_dandelion.json +08903c2ae46ed55b228f6e5d80e292832ed39996 data/create/recipes/milling/compat/regions_unexplored/alpha_rose.json +28a9a042217a6d2f33a8694a6765677a2d48acf1 data/create/recipes/milling/compat/regions_unexplored/aster.json +851e74bb923dadf08ec08892c807b927daeffd3c data/create/recipes/milling/compat/regions_unexplored/black_snowbelle.json +6b272b558750ccab8d21cf69e8feae4a1b322e3a data/create/recipes/milling/compat/regions_unexplored/bleeding_heart.json +2feb233a3a6a0115ec07177a872b1f212e44348f data/create/recipes/milling/compat/regions_unexplored/blue_lupine.json +0b890ba71a0fed340434e0eb4a18e9b1a94a7945 data/create/recipes/milling/compat/regions_unexplored/blue_snowbelle.json +4b533452bbcb67755c0862c1d9df7b84b51b2aba data/create/recipes/milling/compat/regions_unexplored/brown_snowbelle.json +8428053ea97f5a0b529ba313ede2d4bcfb0ce2d8 data/create/recipes/milling/compat/regions_unexplored/cactus_flower.json +01cd229ba66916d50721e5472393192d673ea879 data/create/recipes/milling/compat/regions_unexplored/cyan_snowbelle.json +ddaee3e58fd3cfdc121d68ea8065405f7c6a7117 data/create/recipes/milling/compat/regions_unexplored/daisy.json +fcc82dcddf53ab03ab0907a3c0a295e5a3c71eea data/create/recipes/milling/compat/regions_unexplored/day_lily.json +5c51e4387b56370ca79d30d41ceca8d693f9f6ed data/create/recipes/milling/compat/regions_unexplored/dorcel.json +7410412917b78ee0fb9a64da9b8aa416265f24ee data/create/recipes/milling/compat/regions_unexplored/felicia_daisy.json +f43ead46910959e5dafc1c685ed6845acf2bf57f data/create/recipes/milling/compat/regions_unexplored/fireweed.json +30101899ecbd9adaf8df2a3e9ca57074109febb4 data/create/recipes/milling/compat/regions_unexplored/glistering_bloom.json +3621368a53d8c4e2fb81456ee5b896e0c2aac944 data/create/recipes/milling/compat/regions_unexplored/gray_snowbelle.json +dee331f46908e076cd8bb016c71c5f2980e6018a data/create/recipes/milling/compat/regions_unexplored/green_snowbelle.json +f27484474c8bc06e9d3eaff6c3a79ee61cb0ee55 data/create/recipes/milling/compat/regions_unexplored/hibiscus.json +fcdb798450ca8d9272b1b08d1ae7061b6513907f data/create/recipes/milling/compat/regions_unexplored/hyssop.json +c8fb81b89bc53f1e1e3043b68d7b05ed9175a0f3 data/create/recipes/milling/compat/regions_unexplored/light_blue_snowbelle.json +f101f15d8344cdff67e982aae840db2b632df3aa data/create/recipes/milling/compat/regions_unexplored/light_gray_snowbelle.json +41dc49152f42ef1596e0b6e6ede5b53cd6bf9cc2 data/create/recipes/milling/compat/regions_unexplored/lime_snowbelle.json +9e7ce1ff212dba0f37e726b7ad1fd2762644de41 data/create/recipes/milling/compat/regions_unexplored/magenta_snowbelle.json +7617fa67342a7efc5529de17e6d90d1bd7bf8148 data/create/recipes/milling/compat/regions_unexplored/mallow.json +889318a4888a2fa9e5015f9f4420bf593c221cff data/create/recipes/milling/compat/regions_unexplored/orange_coneflower.json +75362911685159ba8abf805f942ecd23b1fdfe8b data/create/recipes/milling/compat/regions_unexplored/orange_snowbelle.json +5d912e85b826deed1f61534b594b0b5c869a812a data/create/recipes/milling/compat/regions_unexplored/pink_lupine.json +2c5b1bc633cfdad744a9cf5516cc540902f47d32 data/create/recipes/milling/compat/regions_unexplored/pink_snowbelle.json +ef2dfe9a86fde1e47de3f332277fceb55d360a92 data/create/recipes/milling/compat/regions_unexplored/poppy_bush.json +59b5ede608f6e69054e74d4e20336cd65593698a data/create/recipes/milling/compat/regions_unexplored/purple_coneflower.json +abf4d0179c515640cd99b294333f17f96c3c83c1 data/create/recipes/milling/compat/regions_unexplored/purple_lupine.json +8819da9d593f8f563a682e616ac4fbbacdb4005f data/create/recipes/milling/compat/regions_unexplored/purple_snowbelle.json +918c2d64867c04a7c08527c083e95d82ad239a0d data/create/recipes/milling/compat/regions_unexplored/red_lupine.json +9d45bcdca3599e1ceb46907b64a13202b0f6020d data/create/recipes/milling/compat/regions_unexplored/red_snowbelle.json +349435ceb05a93816e946bfe35ec8d7c92e57762 data/create/recipes/milling/compat/regions_unexplored/salmon_poppy_bush.json +02ce73fd74026ea7583e83c42b0cb30144443d61 data/create/recipes/milling/compat/regions_unexplored/tassel.json +237c432707f8a10ed1492ed6ae0358375e37772d data/create/recipes/milling/compat/regions_unexplored/tsubaki.json +0feba76fe40aa578326ff206ae343331fb382e30 data/create/recipes/milling/compat/regions_unexplored/waratah.json +b70cc5a3d35d438108b2c028f374d5ffb4f6b098 data/create/recipes/milling/compat/regions_unexplored/white_snowbelle.json +a31add17c6cffa1310f4fe3cf2049c75172fe60d data/create/recipes/milling/compat/regions_unexplored/white_trillium.json +e97397980c87cb73e81d4b27fbf7e05c68e473f4 data/create/recipes/milling/compat/regions_unexplored/wilting_trillium.json +a23c2973e496cc3cc6f294c5d06e547c6696b9cf data/create/recipes/milling/compat/regions_unexplored/yellow_lupine.json +ad68b82791487bde56dd7e60ad99da72a67abd68 data/create/recipes/milling/compat/regions_unexplored/yellow_snowbelle.json +e91fedfa7b5ae32a60ffb915b999e16de9f1ed66 data/create/recipes/milling/compat/supplementaries/flax.json +1476cbf643e972cb0c554081ada9b5d583aac6a9 data/create/recipes/milling/compat/tconstruct/nercotic_bone.json +ddc4dbfef080def2e5f0a3a7e22f16b82dadc99a data/create/recipes/milling/compat/upgrade_aquatic/flowering_rush.json +77c588e4860fe29912b13b8d221c559141379d8a data/create/recipes/milling/compat/upgrade_aquatic/pink_searocket.json +04e638f5116c962884ca48efe6c113eecd2cf519 data/create/recipes/milling/compat/upgrade_aquatic/white_searocket.json 0130258652f73a3cad7ec1b1c55aa34a4e2ad062 data/create/recipes/milling/cornflower.json 78eefaaebdcab5ded5bda2b87ecfacc0afa7de7a data/create/recipes/milling/dandelion.json 2833601a45709b33c60d49e5647831df542db7f3 data/create/recipes/milling/dripstone_block.json @@ -564,30 +1003,75 @@ a91dae829938d3f69a7007d3cf8db02b70fe3a7f data/create/recipes/milling/white_tulip b8dfa0e65b356e88f264ac4ee95672e0afc5961c data/create/recipes/mixing/brass_ingot.json 840a9008d4531425beadfcf224d21e938acc4502 data/create/recipes/mixing/chocolate.json e7b86d4ca5de2df474794424d93b447e5f9dcdc3 data/create/recipes/mixing/chocolate_melting.json +39e832016fa5e360434271505d09ced17a40e7eb data/create/recipes/mixing/compat/ae2/fluix_crystal.json +f0648e6b963e1ac1c1756f769988e779963eb1a1 data/create/recipes/mixing/compat/regions_unexplored/peat_mud.json +a2cf143f409a26709ad119f151c611331dca960c data/create/recipes/mixing/compat/regions_unexplored/silt_mud.json 4cf9a0979fb6401c51c763d71f0bb53ea2c8c32b data/create/recipes/mixing/dough_by_mixing.json ac2a2456e2f0ccd74db6dc5ad029eb4e6781a25d data/create/recipes/mixing/honey.json 251c09ac25bb73e092fac483ceb5a9196a479919 data/create/recipes/mixing/lava_from_cobble.json 939c55202f06b50cec3c16e66e85f915f2272db2 data/create/recipes/mixing/mud_by_mixing.json 4454cb7a73571d90e19826ee394b0c9e52ac8620 data/create/recipes/mixing/tea.json +77de88a8d25b974a63a5d132dd5461523e798fe2 data/create/recipes/pressing/aether_dirt_path.json +92a1198c990660458565ca871520b7c32fb0e24b data/create/recipes/pressing/aether_dirt_path_from_grass.json 8bd950c78b4db3b7f5a9a1f42c116677049b77fc data/create/recipes/pressing/brass_ingot.json +1fe1caaec87a1a7b3cd739c372829f48386d2f8a data/create/recipes/pressing/compat/atmospheric/crustose_path.json +4d4821506da8c82eabc6109d1cfcb4fa980e54c8 data/create/recipes/pressing/compat/betterendforge/amber_moss_path.json +16c653a9c8771662d060a6151fa77ab4ce8d2614 data/create/recipes/pressing/compat/betterendforge/cave_moss_path.json +e715dd1d3961de8a817ddcd6a1c411761966e57e data/create/recipes/pressing/compat/betterendforge/chorus_nylium_path.json +29a514bea64e7e3f7fe04c2d19749d174b4e42b3 data/create/recipes/pressing/compat/betterendforge/crystal_moss_path.json +7b377ce79e3e32a7b3fece940fb0b234d255e3fe data/create/recipes/pressing/compat/betterendforge/end_moss_path.json +17c68db229cef447679eeba25da1fe7de17be50d data/create/recipes/pressing/compat/betterendforge/end_myclium_path.json +fb6d54e0ee3c8831060a8573d16814217888ae0e data/create/recipes/pressing/compat/betterendforge/jungle_moss_path.json +77dbbdd01f36f1ede5018bc1feb3dff960988129 data/create/recipes/pressing/compat/betterendforge/pink_moss_path.json +200b0a7f459b4c5f5bd7d6fe46ad1959923b9cb0 data/create/recipes/pressing/compat/betterendforge/shadow_grass_path.json +8a53f6ea8dab59477d462eb929f7815f52b34095 data/create/recipes/pressing/compat/byg/lush_grass_path.json +4454d7dda6c2b5555227c5c147373df195adedb4 data/create/recipes/pressing/compat/environmental/mycelium_path.json +ed3edcf493402051fcff435a5840295b218a078c data/create/recipes/pressing/compat/environmental/podzol_path.json +0afcbaa527a8063982caf9a541d1af43fe6becbb data/create/recipes/pressing/compat/infernalexp/crimson_nylium_path.json +621f9c7eae4f6f5065ecd48ffe1b0c5c9e6147d3 data/create/recipes/pressing/compat/infernalexp/soul_soil_path.json +e049a1c6951c93a53122fc5adb27bee35ca62786 data/create/recipes/pressing/compat/infernalexp/warped_nylium_path.json +955613e743a216b10d54f94b89b23166adb49a40 data/create/recipes/pressing/compat/vampirism/cursed_earth_path.json 8dee39f86784636639790b0ed1bbd5c845522952 data/create/recipes/pressing/copper_ingot.json +45ded8b090292bd1b6928a7fbc2fa47e66a7dcb1 data/create/recipes/pressing/cursed_earth_path_from_grass.json 744e1a66857f20a094ba02a3e3613210a815493e data/create/recipes/pressing/gold_ingot.json fb105ac920ce9dc0b883bfa40029b69709bceb38 data/create/recipes/pressing/iron_ingot.json daf5c0c9e3f13d2004d53c54f4c1c36ae098d1ae data/create/recipes/pressing/path.json +1c1224d02f5f9941d2e99620fa68767ba5578603 data/create/recipes/pressing/peat_dirt_path.json +3fbfc3b129748f2e5f1964f1e797812d331c8719 data/create/recipes/pressing/peat_dirt_path_from_grass.json +a2330ec4b822b3109efdf86a244ffa5b71e3a16c data/create/recipes/pressing/silt_dirt_path.json +0c654a6513d9aef7929f7520309626d93453c52d data/create/recipes/pressing/silt_dirt_path_from_grass.json 629f7feb2048319f575e08effa8f79c3910a7147 data/create/recipes/pressing/sugar_cane.json eaff1b1f905b1073366cb8b504f0ae68a59ad3a3 data/create/recipes/sandpaper_polishing/rose_quartz.json +fea41613d29e56d5995e15be6f0dbfb8578973d9 data/create/recipes/splashing/atmospheric/arid_sand.json +83f10d640ff21fab00fbae099791d84cb82b36d7 data/create/recipes/splashing/atmospheric/red_arid_sand.json 1eb8656f14fffd3e6c3791465e6880ab8c179765 data/create/recipes/splashing/black_concrete_powder.json 5215f9b283ba582e1029de2b21cac5986c1eadbd data/create/recipes/splashing/blue_concrete_powder.json 3ce6bc6cfbdeb52c2514f5620db9f0b95ee18d3a data/create/recipes/splashing/brown_concrete_powder.json +f2cda0bd0d012bd8443bfc7b317df2390acdacc5 data/create/recipes/splashing/byg/cryptic_magma_block.json 20fa6574bd8903f2cc0e352bcd8fd6580b598365 data/create/recipes/splashing/crushed_raw_copper.json 909331cf4a04345ad4be47848d2850f0133240bd data/create/recipes/splashing/crushed_raw_gold.json 7f516ebd70fd756ae6d0f07c625ab72bf1859cb2 data/create/recipes/splashing/crushed_raw_iron.json 84fa67d901de38656af11bbcf644361abf651ebb data/create/recipes/splashing/crushed_raw_zinc.json e0746e69dbfee5a7e226980d496490b534f848a9 data/create/recipes/splashing/cyan_concrete_powder.json +8218d04c2da1ab30e23e1fba6de1248cf8d7c96d data/create/recipes/splashing/endergetic/petrified_end_corrock.json +8ee0a11c90a626d9258d1545cf2f1b85f2049634 data/create/recipes/splashing/endergetic/petrified_end_corrock_block.json +812fd40cea41278148fed3bedafbf5f5ae29672a data/create/recipes/splashing/endergetic/petrified_end_corrock_crown.json +331b103e45442901dfdee8dd1848f5444dd49f26 data/create/recipes/splashing/endergetic/petrified_nether_corrock.json +b555d0a1355e7bef0c196fade709d713f65b551c data/create/recipes/splashing/endergetic/petrified_nether_corrock_block.json +2b51fd84596f9384c0c62a81940e601719a9941e data/create/recipes/splashing/endergetic/petrified_nether_corrock_crown.json +b12bb2d95b58e461da245f427bf2a85986069423 data/create/recipes/splashing/endergetic/petrified_overworld_corrock.json +70682b89453b54bc5bbfba86770443f45a19b8b5 data/create/recipes/splashing/endergetic/petrified_overworld_corrock_block.json +e3f12ec5d449caa54ebe1c453a89373492b8f48a data/create/recipes/splashing/endergetic/petrified_overworld_corrock_crown.json +05d3228c93b9d42489fbd79dd539a664f6206dba data/create/recipes/splashing/galosphere/crushed_raw_silver.json 64535aaa3a5d4b98791337b1a8ce50ad3d39a8ac data/create/recipes/splashing/gravel.json dd9508767f68cc8b5cc2f642690961e0c22c9985 data/create/recipes/splashing/gray_concrete_powder.json 8908b452e6bc1290ebb8cfefc2c066460de93bff data/create/recipes/splashing/green_concrete_powder.json +869a639fd7069495693fd2106165b57ce674201b data/create/recipes/splashing/ic2/crushed_raw_aluminum.json +6fd01478f838507f9e0daf7eb0a19e8315e03cb8 data/create/recipes/splashing/ic2/crushed_raw_silver.json +b5a0a0fc79bf310965aa16e78044b3f6a8a9998f data/create/recipes/splashing/ic2/crushed_raw_tin.json +00b8d0c2577cc36da1c862234b61fb7d1cfe3e65 data/create/recipes/splashing/ic2/crushed_raw_uranium.json 32d3cbf2d10b97a40c9f1f70b004c720782eabda data/create/recipes/splashing/ice.json +571631efe13837db49d24e10efc2a5de78cd84b9 data/create/recipes/splashing/iceandfire/crushed_raw_silver.json 856e240d49ecf0b722ed13f8310d93f388ffcede data/create/recipes/splashing/immersiveengineering/crushed_raw_aluminum.json 5dd083b9e4cf459b9567ee17f2ad71ca31161200 data/create/recipes/splashing/immersiveengineering/crushed_raw_lead.json 6707b4319280ce28e1edd594e58549f65cd8376c data/create/recipes/splashing/immersiveengineering/crushed_raw_nickel.json @@ -603,18 +1087,23 @@ ba674b07d9f6b288ab79917c21e435b7205cbf4f data/create/recipes/splashing/mekanism/ 44ffc1132df9ea418453dc580d8250107c34b1a2 data/create/recipes/splashing/mekanism/crushed_raw_tin.json 7960240bceacdbba1458e354823ae5b4e076d4d0 data/create/recipes/splashing/mekanism/crushed_raw_uranium.json 33010500d02167a49b9e697fdeba3c169a80dee3 data/create/recipes/splashing/orange_concrete_powder.json +5d8d7e3ee9c80e2eca12c1073f5b7ecfb2b60b53 data/create/recipes/splashing/oreganized/crushed_raw_lead.json +1f4e9a5766928ae2302c9736437d04272a305235 data/create/recipes/splashing/oreganized/crushed_raw_silver.json bead7ac4cb59e935f62bb87c077494fcbca6f18f data/create/recipes/splashing/pink_concrete_powder.json 2b2404f137bb0fac204abddd4259e916a0b1c7b5 data/create/recipes/splashing/purple_concrete_powder.json +c9778afebf604c27dfb69b1095e6d7e07c37008d data/create/recipes/splashing/quark/rusty_iron_plate.json 8ad27aeffbd10f19eb9e3e8c71c9851024056999 data/create/recipes/splashing/red_concrete_powder.json c4230c9499ced6d542f7ac2bf8601037f37ec7b5 data/create/recipes/splashing/red_sand.json cccf4ef0891992687dcb7ce5c644499d93210b8a data/create/recipes/splashing/sand.json 5f830a62c14cfa86fdc59d3405ac79fa626c53ea data/create/recipes/splashing/soul_sand.json 0ee6d52e8966b6189f2841bcdf41417df1ab072c data/create/recipes/splashing/stained_glass.json f241ec6a8ad063b28281c18e1fbb03c482d7af8b data/create/recipes/splashing/stained_glass_pane.json +712b367223067cc468346d2fa485779f1501d5ec data/create/recipes/splashing/supplementaries/blackboard.json 43bcc2f22cca830f11a48f4b48f699001f4ffbb5 data/create/recipes/splashing/thermal/crushed_raw_lead.json 4bc875e07f963f417e0a427ca7a6f9f9a40213ac data/create/recipes/splashing/thermal/crushed_raw_nickel.json 0ceeb253b478dde532e4de01d1ff60ed09819388 data/create/recipes/splashing/thermal/crushed_raw_silver.json 5fa818c04cb65048be0246ade3946cc1e01a0772 data/create/recipes/splashing/thermal/crushed_raw_tin.json +a8fd822419fbb47b37412742fe13a785ae147d21 data/create/recipes/splashing/the_vault/ornate_chain_rusty.json 23d70b869e50a1e11df264f3640becac4ec9100d data/create/recipes/splashing/wheat_flour.json a883796342143a5f2b5bc68d230b725964abdb8f data/create/recipes/splashing/white_concrete_powder.json d09bcaa2334e05e6cce37b7342c7de84ce954bb9 data/create/recipes/splashing/wool.json diff --git a/src/generated/resources/.cache/c24b4d2b8d15abff51c78bd94f4403d9eae6c139 b/src/generated/resources/.cache/c24b4d2b8d15abff51c78bd94f4403d9eae6c139 index 202508a62..65752120a 100644 --- a/src/generated/resources/.cache/c24b4d2b8d15abff51c78bd94f4403d9eae6c139 +++ b/src/generated/resources/.cache/c24b4d2b8d15abff51c78bd94f4403d9eae6c139 @@ -1,2 +1,2 @@ -// 1.20.1 2023-09-20T19:40:25.3732177 Create's Custom Sounds -043955db25ffe58e7debb9a4f11e41a9571376e6 assets/create/sounds.json +// 1.20.1 2024-08-07T16:05:58.7085479 Create's Custom Sounds +bcfd9320f8ed54f3282b1757a41da0d1753e1754 assets/create/sounds.json diff --git a/src/generated/resources/.cache/e0a39a97205b7149114f15de91b614248d05fd95 b/src/generated/resources/.cache/e0a39a97205b7149114f15de91b614248d05fd95 index 776c79116..b5735070f 100644 --- a/src/generated/resources/.cache/e0a39a97205b7149114f15de91b614248d05fd95 +++ b/src/generated/resources/.cache/e0a39a97205b7149114f15de91b614248d05fd95 @@ -1,2 +1,2 @@ -// 1.20.1 2023-09-20T19:40:25.4461939 Create's Recipe Serializer Tags +// 1.20.1 2024-08-07T16:05:58.761516 Create's Recipe Serializer Tags 0d8718f7383761bc5d7bc45306ed266ebf25dc1d data/create/tags/recipe_serializer/automation_ignore.json diff --git a/src/generated/resources/.cache/eaed56ca9d9781c7626be345dd9f2c9a1fad638e b/src/generated/resources/.cache/eaed56ca9d9781c7626be345dd9f2c9a1fad638e index 4eb5d0fa0..2f0c2236a 100644 --- a/src/generated/resources/.cache/eaed56ca9d9781c7626be345dd9f2c9a1fad638e +++ b/src/generated/resources/.cache/eaed56ca9d9781c7626be345dd9f2c9a1fad638e @@ -1,4 +1,4 @@ -// 1.20.1 2023-09-20T19:47:44.9028659 Create's Generated Registry Entries +// 1.20.1 2024-08-07T16:05:58.7625129 Create's Generated Registry Entries 030ede1044384c4117ac1e491bf5c78bbd2842f5 data/create/damage_type/crush.json 92b0416950ffeb3ba68811e587177c2f8811c2c5 data/create/damage_type/cuckoo_surprise.json d2a4fdb64f4ba817e13a7b20c73fd1ca34b825fc data/create/damage_type/fan_fire.json diff --git a/src/generated/resources/assets/create/lang/en_ud.json b/src/generated/resources/assets/create/lang/en_ud.json index bc06587c0..d08f0112a 100644 --- a/src/generated/resources/assets/create/lang/en_ud.json +++ b/src/generated/resources/assets/create/lang/en_ud.json @@ -1284,6 +1284,7 @@ "create.item_attributes.smokable.inverted": "pǝʞoɯS ǝq ʇouuɐɔ", "create.item_attributes.washable": "pǝɥsɐM ǝq uɐɔ", "create.item_attributes.washable.inverted": "pǝɥsɐM ǝq ʇouuɐɔ", + "create.keyinfo.ponder": "ɹǝpuoԀ", "create.keyinfo.scrolldown": ")pןɹoʍuı( uʍoᗡ ןǝǝɥʍǝsnoW ǝʇɐןnɯıS", "create.keyinfo.scrollup": ")pןɹoʍuı( d∩ ןǝǝɥʍǝsnoW ǝʇɐןnɯıS", "create.keyinfo.toolbelt": "sǝxoqןoo⟘ ʎqɹɐǝN ssǝɔɔⱯ", @@ -1776,7 +1777,7 @@ "create.ponder.mechanical_arm_redstone.text_1": "ǝʇɐʌıʇɔɐ ʇou ןןıʍ sɯɹⱯ ןɐɔıuɐɥɔǝW 'ǝuoʇspǝᴚ ʎq pǝɹǝʍod uǝɥM", "create.ponder.mechanical_arm_redstone.text_2": "sǝןɔʎɔ pǝʇɹɐʇs ʎuɐ ɥsıuıɟ ןןıʍ ʇı 'buıddoʇs ǝɹoɟǝᗺ", "create.ponder.mechanical_arm_redstone.text_3": "ǝןɔʎɔ uoıʇɐʌıʇɔɐ ǝuo ʎןʇɔɐxǝ ɹǝbbıɹʇ oʇ pǝsn ǝq uɐɔ ǝsןnd ǝʌıʇɐbǝu ɐ 'snɥ⟘", - "create.ponder.mechanical_bearing.header": "buıɹɐǝᗺ ןɐɔıuɐɥɔǝW ǝɥʇ buısn sǝɹnʇɔnɹʇS sbuıʌoW", + "create.ponder.mechanical_bearing.header": "buıɹɐǝᗺ ןɐɔıuɐɥɔǝW ǝɥʇ buısn sǝɹnʇɔnɹʇS buıʌoW", "create.ponder.mechanical_bearing.text_1": "ɯǝɥʇ ɟo ʇuoɹɟ uı ʞɔoןq ǝɥʇ oʇ ɥɔɐʇʇɐ sbuıɹɐǝᗺ ןɐɔıuɐɥɔǝW", "create.ponder.mechanical_bearing.text_2": "uoıʇdɐɹʇuoƆ buıʇɐʇoᴚ ɐ oʇuı ʇı ǝןqɯǝssɐ ןןıʍ ʇı 'ǝɔɹoℲ ןɐuoıʇɐʇoᴚ buıʌıǝɔǝɹ uod∩", "create.ponder.mechanical_crafter.header": "sɹǝʇɟɐɹƆ ןɐɔıuɐɥɔǝW dn buıʇʇǝS", @@ -2513,6 +2514,7 @@ "create.subtitle.schematicannon_launch_block": "sǝɹıɟ uouuɐɔıʇɐɯǝɥɔS", "create.subtitle.scroll_value": "sʞɔıןɔ ʇnduı-ןןoɹɔS", "create.subtitle.slime_added": "sǝɥsınbs ǝɯıןS", + "create.subtitle.spout": "sʇɹnds ʇnodS", "create.subtitle.steam": "sǝsıou ɯɐǝʇS", "create.subtitle.train": "ǝןqɯnɹ sןǝǝɥʍ ʎǝboᗺ", "create.subtitle.train3": "pǝןɟɟnɯ ǝןqɯnɹ sןǝǝɥʍ ʎǝboᗺ", diff --git a/src/generated/resources/assets/create/lang/en_us.json b/src/generated/resources/assets/create/lang/en_us.json index ea53d6371..aaf18c624 100644 --- a/src/generated/resources/assets/create/lang/en_us.json +++ b/src/generated/resources/assets/create/lang/en_us.json @@ -1284,6 +1284,7 @@ "create.item_attributes.smokable.inverted": "cannot be Smoked", "create.item_attributes.washable": "can be Washed", "create.item_attributes.washable.inverted": "cannot be Washed", + "create.keyinfo.ponder": "Ponder", "create.keyinfo.scrolldown": "Simulate Mousewheel Down (inworld)", "create.keyinfo.scrollup": "Simulate Mousewheel Up (inworld)", "create.keyinfo.toolbelt": "Access Nearby Toolboxes", @@ -1776,7 +1777,7 @@ "create.ponder.mechanical_arm_redstone.text_1": "When powered by Redstone, Mechanical Arms will not activate", "create.ponder.mechanical_arm_redstone.text_2": "Before stopping, it will finish any started cycles", "create.ponder.mechanical_arm_redstone.text_3": "Thus, a negative pulse can be used to trigger exactly one activation cycle", - "create.ponder.mechanical_bearing.header": "Movings Structures using the Mechanical Bearing", + "create.ponder.mechanical_bearing.header": "Moving Structures using the Mechanical Bearing", "create.ponder.mechanical_bearing.text_1": "Mechanical Bearings attach to the block in front of them", "create.ponder.mechanical_bearing.text_2": "Upon receiving Rotational Force, it will assemble it into a Rotating Contraption", "create.ponder.mechanical_crafter.header": "Setting up Mechanical Crafters", @@ -2513,6 +2514,7 @@ "create.subtitle.schematicannon_launch_block": "Schematicannon fires", "create.subtitle.scroll_value": "Scroll-input clicks", "create.subtitle.slime_added": "Slime squishes", + "create.subtitle.spout": "Spout spurts", "create.subtitle.steam": "Steam noises", "create.subtitle.train": "Bogey wheels rumble", "create.subtitle.train3": "Bogey wheels rumble muffled", diff --git a/src/generated/resources/assets/create/sounds.json b/src/generated/resources/assets/create/sounds.json index e715f862f..dc904af68 100644 --- a/src/generated/resources/assets/create/sounds.json +++ b/src/generated/resources/assets/create/sounds.json @@ -16,6 +16,22 @@ } ] }, + "clipboard_check": { + "sounds": [ + { + "type": "file", + "name": "create:clipboard_check" + } + ] + }, + "clipboard_erase": { + "sounds": [ + { + "type": "file", + "name": "create:clipboard_erase" + } + ] + }, "cogs": { "sounds": [ { @@ -388,6 +404,27 @@ ], "subtitle": "create.subtitle.slime_added" }, + "spout": { + "sounds": [ + { + "type": "file", + "name": "create:spout" + }, + { + "type": "file", + "name": "create:spout_1" + }, + { + "type": "file", + "name": "create:spout_2" + }, + { + "type": "file", + "name": "create:spout_3" + } + ], + "subtitle": "create.subtitle.spout" + }, "steam": { "sounds": [ { diff --git a/src/generated/resources/data/create/advancements/recipes/misc/blasting/ingot_aluminum_compat_ic2.json b/src/generated/resources/data/create/advancements/recipes/misc/blasting/ingot_aluminum_compat_ic2.json new file mode 100644 index 000000000..cc1c5b704 --- /dev/null +++ b/src/generated/resources/data/create/advancements/recipes/misc/blasting/ingot_aluminum_compat_ic2.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": [ + "create:crushed_raw_aluminum" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "create:blasting/ingot_aluminum_compat_ic2" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "create:blasting/ingot_aluminum_compat_ic2" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/create/advancements/recipes/misc/blasting/ingot_silver_compat_ic2.json b/src/generated/resources/data/create/advancements/recipes/misc/blasting/ingot_silver_compat_ic2.json new file mode 100644 index 000000000..5075c51b4 --- /dev/null +++ b/src/generated/resources/data/create/advancements/recipes/misc/blasting/ingot_silver_compat_ic2.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": [ + "create:crushed_raw_silver" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "create:blasting/ingot_silver_compat_ic2" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "create:blasting/ingot_silver_compat_ic2" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/create/advancements/recipes/misc/blasting/ingot_tin_compat_ic2.json b/src/generated/resources/data/create/advancements/recipes/misc/blasting/ingot_tin_compat_ic2.json new file mode 100644 index 000000000..c824448a6 --- /dev/null +++ b/src/generated/resources/data/create/advancements/recipes/misc/blasting/ingot_tin_compat_ic2.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": [ + "create:crushed_raw_tin" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "create:blasting/ingot_tin_compat_ic2" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "create:blasting/ingot_tin_compat_ic2" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/create/advancements/recipes/misc/blasting/ingot_uranium_compat_ic2.json b/src/generated/resources/data/create/advancements/recipes/misc/blasting/ingot_uranium_compat_ic2.json new file mode 100644 index 000000000..193e4b133 --- /dev/null +++ b/src/generated/resources/data/create/advancements/recipes/misc/blasting/ingot_uranium_compat_ic2.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": [ + "create:crushed_raw_uranium" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "create:blasting/ingot_uranium_compat_ic2" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "create:blasting/ingot_uranium_compat_ic2" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/create/advancements/recipes/misc/blasting/lead_ingot_compat_oreganized.json b/src/generated/resources/data/create/advancements/recipes/misc/blasting/lead_ingot_compat_oreganized.json new file mode 100644 index 000000000..fc4a8bd40 --- /dev/null +++ b/src/generated/resources/data/create/advancements/recipes/misc/blasting/lead_ingot_compat_oreganized.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": [ + "create:crushed_raw_lead" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "create:blasting/lead_ingot_compat_oreganized" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "create:blasting/lead_ingot_compat_oreganized" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/create/advancements/recipes/misc/blasting/silver_ingot_compat_galosphere.json b/src/generated/resources/data/create/advancements/recipes/misc/blasting/silver_ingot_compat_galosphere.json new file mode 100644 index 000000000..51ac7f485 --- /dev/null +++ b/src/generated/resources/data/create/advancements/recipes/misc/blasting/silver_ingot_compat_galosphere.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": [ + "create:crushed_raw_silver" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "create:blasting/silver_ingot_compat_galosphere" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "create:blasting/silver_ingot_compat_galosphere" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/create/advancements/recipes/misc/blasting/silver_ingot_compat_iceandfire.json b/src/generated/resources/data/create/advancements/recipes/misc/blasting/silver_ingot_compat_iceandfire.json new file mode 100644 index 000000000..c82d845d6 --- /dev/null +++ b/src/generated/resources/data/create/advancements/recipes/misc/blasting/silver_ingot_compat_iceandfire.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": [ + "create:crushed_raw_silver" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "create:blasting/silver_ingot_compat_iceandfire" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "create:blasting/silver_ingot_compat_iceandfire" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/create/advancements/recipes/misc/blasting/silver_ingot_compat_oreganized.json b/src/generated/resources/data/create/advancements/recipes/misc/blasting/silver_ingot_compat_oreganized.json new file mode 100644 index 000000000..3ea227fa3 --- /dev/null +++ b/src/generated/resources/data/create/advancements/recipes/misc/blasting/silver_ingot_compat_oreganized.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": [ + "create:crushed_raw_silver" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "create:blasting/silver_ingot_compat_oreganized" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "create:blasting/silver_ingot_compat_oreganized" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/create/advancements/recipes/misc/crafting/kinetics/vertical_gearbox.json b/src/generated/resources/data/create/advancements/recipes/misc/crafting/kinetics/vertical_gearbox.json new file mode 100644 index 000000000..2323a624e --- /dev/null +++ b/src/generated/resources/data/create/advancements/recipes/misc/crafting/kinetics/vertical_gearbox.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": [ + "create:cogwheel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "create:crafting/kinetics/vertical_gearbox" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "create:crafting/kinetics/vertical_gearbox" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/create/advancements/recipes/misc/crafting/tree_fertilizer.json b/src/generated/resources/data/create/advancements/recipes/misc/crafting/tree_fertilizer.json new file mode 100644 index 000000000..5d7728fdc --- /dev/null +++ b/src/generated/resources/data/create/advancements/recipes/misc/crafting/tree_fertilizer.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": [ + "minecraft:bone_meal" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "create:crafting///tree_fertilizer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "create:crafting///tree_fertilizer" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/create/advancements/recipes/misc/smelting/ingot_aluminum_compat_ic2.json b/src/generated/resources/data/create/advancements/recipes/misc/smelting/ingot_aluminum_compat_ic2.json new file mode 100644 index 000000000..c7a9b5d7f --- /dev/null +++ b/src/generated/resources/data/create/advancements/recipes/misc/smelting/ingot_aluminum_compat_ic2.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": [ + "create:crushed_raw_aluminum" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "create:smelting/ingot_aluminum_compat_ic2" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "create:smelting/ingot_aluminum_compat_ic2" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/create/advancements/recipes/misc/smelting/ingot_silver_compat_ic2.json b/src/generated/resources/data/create/advancements/recipes/misc/smelting/ingot_silver_compat_ic2.json new file mode 100644 index 000000000..1135ce8ee --- /dev/null +++ b/src/generated/resources/data/create/advancements/recipes/misc/smelting/ingot_silver_compat_ic2.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": [ + "create:crushed_raw_silver" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "create:smelting/ingot_silver_compat_ic2" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "create:smelting/ingot_silver_compat_ic2" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/create/advancements/recipes/misc/smelting/ingot_tin_compat_ic2.json b/src/generated/resources/data/create/advancements/recipes/misc/smelting/ingot_tin_compat_ic2.json new file mode 100644 index 000000000..a18bb3a45 --- /dev/null +++ b/src/generated/resources/data/create/advancements/recipes/misc/smelting/ingot_tin_compat_ic2.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": [ + "create:crushed_raw_tin" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "create:smelting/ingot_tin_compat_ic2" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "create:smelting/ingot_tin_compat_ic2" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/create/advancements/recipes/misc/smelting/ingot_uranium_compat_ic2.json b/src/generated/resources/data/create/advancements/recipes/misc/smelting/ingot_uranium_compat_ic2.json new file mode 100644 index 000000000..feeaa88aa --- /dev/null +++ b/src/generated/resources/data/create/advancements/recipes/misc/smelting/ingot_uranium_compat_ic2.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": [ + "create:crushed_raw_uranium" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "create:smelting/ingot_uranium_compat_ic2" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "create:smelting/ingot_uranium_compat_ic2" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/create/advancements/recipes/misc/smelting/lead_ingot_compat_oreganized.json b/src/generated/resources/data/create/advancements/recipes/misc/smelting/lead_ingot_compat_oreganized.json new file mode 100644 index 000000000..a4c858457 --- /dev/null +++ b/src/generated/resources/data/create/advancements/recipes/misc/smelting/lead_ingot_compat_oreganized.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": [ + "create:crushed_raw_lead" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "create:smelting/lead_ingot_compat_oreganized" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "create:smelting/lead_ingot_compat_oreganized" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/create/advancements/recipes/misc/smelting/silver_ingot_compat_galosphere.json b/src/generated/resources/data/create/advancements/recipes/misc/smelting/silver_ingot_compat_galosphere.json new file mode 100644 index 000000000..2048b38c1 --- /dev/null +++ b/src/generated/resources/data/create/advancements/recipes/misc/smelting/silver_ingot_compat_galosphere.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": [ + "create:crushed_raw_silver" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "create:smelting/silver_ingot_compat_galosphere" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "create:smelting/silver_ingot_compat_galosphere" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/create/advancements/recipes/misc/smelting/silver_ingot_compat_iceandfire.json b/src/generated/resources/data/create/advancements/recipes/misc/smelting/silver_ingot_compat_iceandfire.json new file mode 100644 index 000000000..03ae30d8e --- /dev/null +++ b/src/generated/resources/data/create/advancements/recipes/misc/smelting/silver_ingot_compat_iceandfire.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": [ + "create:crushed_raw_silver" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "create:smelting/silver_ingot_compat_iceandfire" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "create:smelting/silver_ingot_compat_iceandfire" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/create/advancements/recipes/misc/smelting/silver_ingot_compat_oreganized.json b/src/generated/resources/data/create/advancements/recipes/misc/smelting/silver_ingot_compat_oreganized.json new file mode 100644 index 000000000..e9c035d65 --- /dev/null +++ b/src/generated/resources/data/create/advancements/recipes/misc/smelting/silver_ingot_compat_oreganized.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": [ + "create:crushed_raw_silver" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "create:smelting/silver_ingot_compat_oreganized" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "create:smelting/silver_ingot_compat_oreganized" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/create/advancements/track_0.json b/src/generated/resources/data/create/advancements/track_0.json index dd666bc9f..e8763a142 100644 --- a/src/generated/resources/data/create/advancements/track_0.json +++ b/src/generated/resources/data/create/advancements/track_0.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "create:track" - ] + "tag": "create:tracks" } ] }, diff --git a/src/generated/resources/data/create/loot_tables/blocks/copper_backtank.json b/src/generated/resources/data/create/loot_tables/blocks/copper_backtank.json index af644036b..114e490c7 100644 --- a/src/generated/resources/data/create/loot_tables/blocks/copper_backtank.json +++ b/src/generated/resources/data/create/loot_tables/blocks/copper_backtank.json @@ -12,17 +12,13 @@ { "type": "minecraft:item", "functions": [ - { - "function": "minecraft:copy_name", - "source": "block_entity" - }, { "function": "minecraft:copy_nbt", "ops": [ { - "op": "replace", - "source": "Air", - "target": "Air" + "op": "merge", + "source": "VanillaTag", + "target": "{}" } ], "source": "block_entity" @@ -32,8 +28,8 @@ "ops": [ { "op": "replace", - "source": "Enchantments", - "target": "Enchantments" + "source": "Air", + "target": "Air" } ], "source": "block_entity" diff --git a/src/generated/resources/data/create/loot_tables/blocks/netherite_backtank.json b/src/generated/resources/data/create/loot_tables/blocks/netherite_backtank.json index 763823d31..25e536349 100644 --- a/src/generated/resources/data/create/loot_tables/blocks/netherite_backtank.json +++ b/src/generated/resources/data/create/loot_tables/blocks/netherite_backtank.json @@ -12,17 +12,13 @@ { "type": "minecraft:item", "functions": [ - { - "function": "minecraft:copy_name", - "source": "block_entity" - }, { "function": "minecraft:copy_nbt", "ops": [ { - "op": "replace", - "source": "Air", - "target": "Air" + "op": "merge", + "source": "VanillaTag", + "target": "{}" } ], "source": "block_entity" @@ -32,8 +28,8 @@ "ops": [ { "op": "replace", - "source": "Enchantments", - "target": "Enchantments" + "source": "Air", + "target": "Air" } ], "source": "block_entity" diff --git a/src/generated/resources/data/create/recipes/blasting/ingot_aluminum_compat_ic2.json b/src/generated/resources/data/create/recipes/blasting/ingot_aluminum_compat_ic2.json new file mode 100644 index 000000000..a9a5abda3 --- /dev/null +++ b/src/generated/resources/data/create/recipes/blasting/ingot_aluminum_compat_ic2.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:blasting", + "category": "blocks", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "ic2" + } + ], + "cookingtime": 100, + "experience": 0.1, + "ingredient": { + "item": "create:crushed_raw_aluminum" + }, + "result": "ic2:ingot_aluminum" +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/blasting/ingot_silver_compat_ic2.json b/src/generated/resources/data/create/recipes/blasting/ingot_silver_compat_ic2.json new file mode 100644 index 000000000..1bbdedb92 --- /dev/null +++ b/src/generated/resources/data/create/recipes/blasting/ingot_silver_compat_ic2.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:blasting", + "category": "blocks", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "ic2" + } + ], + "cookingtime": 100, + "experience": 0.1, + "ingredient": { + "item": "create:crushed_raw_silver" + }, + "result": "ic2:ingot_silver" +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/blasting/ingot_tin_compat_ic2.json b/src/generated/resources/data/create/recipes/blasting/ingot_tin_compat_ic2.json new file mode 100644 index 000000000..913c642a8 --- /dev/null +++ b/src/generated/resources/data/create/recipes/blasting/ingot_tin_compat_ic2.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:blasting", + "category": "blocks", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "ic2" + } + ], + "cookingtime": 100, + "experience": 0.1, + "ingredient": { + "item": "create:crushed_raw_tin" + }, + "result": "ic2:ingot_tin" +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/blasting/ingot_uranium_compat_ic2.json b/src/generated/resources/data/create/recipes/blasting/ingot_uranium_compat_ic2.json new file mode 100644 index 000000000..0625e1822 --- /dev/null +++ b/src/generated/resources/data/create/recipes/blasting/ingot_uranium_compat_ic2.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:blasting", + "category": "blocks", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "ic2" + } + ], + "cookingtime": 100, + "experience": 0.1, + "ingredient": { + "item": "create:crushed_raw_uranium" + }, + "result": "ic2:ingot_uranium" +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/blasting/lead_ingot_compat_oreganized.json b/src/generated/resources/data/create/recipes/blasting/lead_ingot_compat_oreganized.json new file mode 100644 index 000000000..d9e7c0409 --- /dev/null +++ b/src/generated/resources/data/create/recipes/blasting/lead_ingot_compat_oreganized.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:blasting", + "category": "blocks", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "oreganized" + } + ], + "cookingtime": 100, + "experience": 0.1, + "ingredient": { + "item": "create:crushed_raw_lead" + }, + "result": "oreganized:lead_ingot" +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/blasting/silver_ingot_compat_galosphere.json b/src/generated/resources/data/create/recipes/blasting/silver_ingot_compat_galosphere.json new file mode 100644 index 000000000..338b707d1 --- /dev/null +++ b/src/generated/resources/data/create/recipes/blasting/silver_ingot_compat_galosphere.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:blasting", + "category": "blocks", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "galosphere" + } + ], + "cookingtime": 100, + "experience": 0.1, + "ingredient": { + "item": "create:crushed_raw_silver" + }, + "result": "galosphere:silver_ingot" +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/blasting/silver_ingot_compat_iceandfire.json b/src/generated/resources/data/create/recipes/blasting/silver_ingot_compat_iceandfire.json new file mode 100644 index 000000000..29b51c4bb --- /dev/null +++ b/src/generated/resources/data/create/recipes/blasting/silver_ingot_compat_iceandfire.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:blasting", + "category": "blocks", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "iceandfire" + } + ], + "cookingtime": 100, + "experience": 0.1, + "ingredient": { + "item": "create:crushed_raw_silver" + }, + "result": "iceandfire:silver_ingot" +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/blasting/silver_ingot_compat_oreganized.json b/src/generated/resources/data/create/recipes/blasting/silver_ingot_compat_oreganized.json new file mode 100644 index 000000000..f95d65264 --- /dev/null +++ b/src/generated/resources/data/create/recipes/blasting/silver_ingot_compat_oreganized.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:blasting", + "category": "blocks", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "oreganized" + } + ], + "cookingtime": 100, + "experience": 0.1, + "ingredient": { + "item": "create:crushed_raw_silver" + }, + "result": "oreganized:silver_ingot" +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/compacting/ice.json b/src/generated/resources/data/create/recipes/compacting/ice.json new file mode 100644 index 000000000..ea1ca1d6c --- /dev/null +++ b/src/generated/resources/data/create/recipes/compacting/ice.json @@ -0,0 +1,37 @@ +{ + "type": "create:compacting", + "ingredients": [ + { + "item": "minecraft:snow_block" + }, + { + "item": "minecraft:snow_block" + }, + { + "item": "minecraft:snow_block" + }, + { + "item": "minecraft:snow_block" + }, + { + "item": "minecraft:snow_block" + }, + { + "item": "minecraft:snow_block" + }, + { + "item": "minecraft:snow_block" + }, + { + "item": "minecraft:snow_block" + }, + { + "item": "minecraft:snow_block" + } + ], + "results": [ + { + "item": "minecraft:ice" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crafting/kinetics/vertical_gearbox.json b/src/generated/resources/data/create/recipes/crafting/kinetics/vertical_gearbox.json new file mode 100644 index 000000000..643a377b2 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crafting/kinetics/vertical_gearbox.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "item": "create:andesite_casing" + }, + "C": { + "item": "create:cogwheel" + } + }, + "pattern": [ + "C C", + " B ", + "C C" + ], + "result": { + "item": "create:vertical_gearbox" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crafting/tree_fertilizer.json b/src/generated/resources/data/create/recipes/crafting/tree_fertilizer.json new file mode 100644 index 000000000..f705b2e53 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crafting/tree_fertilizer.json @@ -0,0 +1,22 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "tag": "minecraft:small_flowers" + }, + { + "tag": "minecraft:small_flowers" + }, + { + "tag": "create:upgrade_aquatic/coral" + }, + { + "item": "minecraft:bone_meal" + } + ], + "result": { + "count": 2, + "item": "create:tree_fertilizer" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/ae2/deepslate_quartz_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/ae2/deepslate_quartz_ore.json new file mode 100644 index 000000000..5ff8fc7a8 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/ae2/deepslate_quartz_ore.json @@ -0,0 +1,32 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "ae2" + } + ], + "ingredients": [ + { + "item": "ae2:deepslate_quartz_ore" + } + ], + "processingTime": 300, + "results": [ + { + "item": "ae2:certus_quartz_crystal" + }, + { + "count": 4, + "item": "ae2:certus_quartz_dust" + }, + { + "chance": 0.5, + "item": "ae2:certus_quartz_dust" + }, + { + "chance": 0.125, + "item": "minecraft:cobbled_deepslate" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/ae2/quartz_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/ae2/quartz_ore.json new file mode 100644 index 000000000..c95675171 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/ae2/quartz_ore.json @@ -0,0 +1,32 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "ae2" + } + ], + "ingredients": [ + { + "item": "ae2:quartz_ore" + } + ], + "processingTime": 300, + "results": [ + { + "item": "ae2:certus_quartz_crystal" + }, + { + "count": 4, + "item": "ae2:certus_quartz_dust" + }, + { + "chance": 0.5, + "item": "ae2:certus_quartz_dust" + }, + { + "chance": 0.125, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/aether/ambrosium_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/aether/ambrosium_ore.json new file mode 100644 index 000000000..55cfc4975 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/aether/ambrosium_ore.json @@ -0,0 +1,32 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "aether" + } + ], + "ingredients": [ + { + "item": "aether:ambrosium_ore" + } + ], + "processingTime": 150, + "results": [ + { + "item": "aether:ambrosium_shard" + }, + { + "chance": 0.75, + "item": "aether:ambrosium_shard" + }, + { + "chance": 0.125, + "item": "aether:holystone" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/aether/zanite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/aether/zanite_ore.json new file mode 100644 index 000000000..c8df0df6c --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/aether/zanite_ore.json @@ -0,0 +1,32 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "aether" + } + ], + "ingredients": [ + { + "item": "aether:zanite_ore" + } + ], + "processingTime": 350, + "results": [ + { + "item": "aether:zanite_gemstone" + }, + { + "chance": 0.75, + "item": "aether:zanite_gemstone" + }, + { + "chance": 0.125, + "item": "aether:holystone" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/byg/ametrine_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/byg/ametrine_ore.json new file mode 100644 index 000000000..155da0f68 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/byg/ametrine_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "byg" + } + ], + "ingredients": [ + { + "tag": "forge:ores/ametrine" + } + ], + "processingTime": 500, + "results": [ + { + "count": 2, + "item": "byg:ametrine_gems" + }, + { + "chance": 0.25, + "item": "byg:ametrine_gems" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.125, + "item": "byg:cobbled_ether_stone" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/crushing/anthracite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/byg/anthracite_ore.json similarity index 51% rename from src/main/resources/data/create/recipes/compat/byg/crushing/anthracite_ore.json rename to src/generated/resources/data/create/recipes/crushing/compat/byg/anthracite_ore.json index 2e20a7719..eaa431efe 100644 --- a/src/main/resources/data/create/recipes/compat/byg/crushing/anthracite_ore.json +++ b/src/generated/resources/data/create/recipes/crushing/compat/byg/anthracite_ore.json @@ -1,33 +1,33 @@ { + "type": "create:crushing", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:crushing", "ingredients": [ { "tag": "forge:ores/anthracite" } ], + "processingTime": 150, "results": [ { - "item": "byg:anthracite", - "count": 2 + "count": 2, + "item": "byg:anthracite" }, { - "item": "byg:anthracite", - "chance": 0.5 + "chance": 0.5, + "item": "byg:anthracite" }, { - "item": "create:experience_nugget", - "chance": 0.75 + "chance": 0.75, + "item": "create:experience_nugget" }, { - "item": "byg:brimstone", - "chance": 0.125 + "chance": 0.125, + "item": "byg:brimstone" } - ], - "processingTime": 150 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/crushing/blue_nether_gold_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/byg/blue_nether_gold_ore.json similarity index 54% rename from src/main/resources/data/create/recipes/compat/byg/crushing/blue_nether_gold_ore.json rename to src/generated/resources/data/create/recipes/crushing/compat/byg/blue_nether_gold_ore.json index b0715e556..7336ba913 100644 --- a/src/main/resources/data/create/recipes/compat/byg/crushing/blue_nether_gold_ore.json +++ b/src/generated/resources/data/create/recipes/crushing/compat/byg/blue_nether_gold_ore.json @@ -1,29 +1,29 @@ { + "type": "create:crushing", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:crushing", "ingredients": [ { "item": "byg:blue_nether_gold_ore" } ], + "processingTime": 350, "results": [ { - "item": "minecraft:gold_nugget", - "count": 18 + "count": 18, + "item": "minecraft:gold_nugget" }, { - "item": "create:experience_nugget", - "chance": 0.75 + "chance": 0.75, + "item": "create:experience_nugget" }, { - "item": "byg:blue_netherrack", - "chance": 0.125 + "chance": 0.125, + "item": "byg:blue_netherrack" } - ], - "processingTime": 350 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/crushing/blue_nether_quartz_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/byg/blue_nether_quartz_ore.json similarity index 50% rename from src/main/resources/data/create/recipes/compat/byg/crushing/blue_nether_quartz_ore.json rename to src/generated/resources/data/create/recipes/crushing/compat/byg/blue_nether_quartz_ore.json index 8be7ff00f..09a725558 100644 --- a/src/main/resources/data/create/recipes/compat/byg/crushing/blue_nether_quartz_ore.json +++ b/src/generated/resources/data/create/recipes/crushing/compat/byg/blue_nether_quartz_ore.json @@ -1,33 +1,33 @@ { + "type": "create:crushing", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:crushing", "ingredients": [ { "item": "byg:blue_nether_quartz_ore" } ], + "processingTime": 350, "results": [ { - "item": "minecraft:quartz", - "count": 2 + "count": 2, + "item": "minecraft:quartz" }, { - "item": "minecraft:quartz", - "chance": 0.25 + "chance": 0.25, + "item": "minecraft:quartz" }, { - "item": "create:experience_nugget", - "chance": 0.75 + "chance": 0.75, + "item": "create:experience_nugget" }, { - "item": "byg:blue_netherrack", - "chance": 0.125 + "chance": 0.125, + "item": "byg:blue_netherrack" } - ], - "processingTime": 350 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/crushing/brimstone_nether_gold_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/byg/brimstone_nether_gold_ore.json similarity index 55% rename from src/main/resources/data/create/recipes/compat/byg/crushing/brimstone_nether_gold_ore.json rename to src/generated/resources/data/create/recipes/crushing/compat/byg/brimstone_nether_gold_ore.json index e7a463b4c..fd0577a97 100644 --- a/src/main/resources/data/create/recipes/compat/byg/crushing/brimstone_nether_gold_ore.json +++ b/src/generated/resources/data/create/recipes/crushing/compat/byg/brimstone_nether_gold_ore.json @@ -1,29 +1,29 @@ { + "type": "create:crushing", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:crushing", "ingredients": [ { "item": "byg:brimstone_nether_gold_ore" } ], + "processingTime": 350, "results": [ { - "item": "minecraft:gold_nugget", - "count": 18 + "count": 18, + "item": "minecraft:gold_nugget" }, { - "item": "create:experience_nugget", - "chance": 0.75 + "chance": 0.75, + "item": "create:experience_nugget" }, { - "item": "byg:brimstone", - "chance": 0.125 + "chance": 0.125, + "item": "byg:brimstone" } - ], - "processingTime": 350 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/crushing/brimstone_nether_quartz_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/byg/brimstone_nether_quartz_ore.json similarity index 52% rename from src/main/resources/data/create/recipes/compat/byg/crushing/brimstone_nether_quartz_ore.json rename to src/generated/resources/data/create/recipes/crushing/compat/byg/brimstone_nether_quartz_ore.json index e61446213..6c3633a68 100644 --- a/src/main/resources/data/create/recipes/compat/byg/crushing/brimstone_nether_quartz_ore.json +++ b/src/generated/resources/data/create/recipes/crushing/compat/byg/brimstone_nether_quartz_ore.json @@ -1,33 +1,33 @@ { + "type": "create:crushing", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:crushing", "ingredients": [ { "item": "byg:brimstone_nether_quartz_ore" } ], + "processingTime": 350, "results": [ { - "item": "minecraft:quartz", - "count": 2 + "count": 2, + "item": "minecraft:quartz" }, { - "item": "minecraft:quartz", - "chance": 0.25 + "chance": 0.25, + "item": "minecraft:quartz" }, { - "item": "create:experience_nugget", - "chance": 0.75 + "chance": 0.75, + "item": "create:experience_nugget" }, { - "item": "byg:brimstone", - "chance": 0.125 + "chance": 0.125, + "item": "byg:brimstone" } - ], - "processingTime": 350 + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/byg/cryptic_redstone_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/byg/cryptic_redstone_ore.json new file mode 100644 index 000000000..d66b76ffc --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/byg/cryptic_redstone_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "byg" + } + ], + "ingredients": [ + { + "item": "byg:cryptic_redstone_ore" + } + ], + "processingTime": 250, + "results": [ + { + "count": 6, + "item": "minecraft:redstone" + }, + { + "chance": 0.5, + "item": "minecraft:redstone" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.125, + "item": "byg:cryptic_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/byg/emeraldite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/byg/emeraldite_ore.json new file mode 100644 index 000000000..27409fbe3 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/byg/emeraldite_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "byg" + } + ], + "ingredients": [ + { + "tag": "forge:ores/emeraldite" + } + ], + "processingTime": 500, + "results": [ + { + "count": 2, + "item": "byg:emeraldite_shards" + }, + { + "chance": 0.25, + "item": "byg:emeraldite_shards" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.125, + "item": "byg:scoria_cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/crushing/lignite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/byg/lignite_ore.json similarity index 52% rename from src/main/resources/data/create/recipes/compat/byg/crushing/lignite_ore.json rename to src/generated/resources/data/create/recipes/crushing/compat/byg/lignite_ore.json index eaa60c70a..d5af3ad28 100644 --- a/src/main/resources/data/create/recipes/compat/byg/crushing/lignite_ore.json +++ b/src/generated/resources/data/create/recipes/crushing/compat/byg/lignite_ore.json @@ -1,34 +1,34 @@ { + "type": "create:crushing", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:crushing", "ingredients": [ { "tag": "forge:ores/lignite" } ], + "processingTime": 300, "results": [ { - "item": "byg:lignite", - "count": 2 - }, - { - "item": "byg:lignite", "count": 2, - "chance": 0.5 + "item": "byg:lignite" }, { - "item": "create:experience_nugget", - "chance": 0.75 + "chance": 0.5, + "count": 2, + "item": "byg:lignite" }, { - "item": "byg:cobbled_ether_stone", - "chance": 0.125 + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.125, + "item": "byg:cobbled_ether_stone" } - ], - "processingTime": 300 + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/byg/pervaded_netherrack.json b/src/generated/resources/data/create/recipes/crushing/compat/byg/pervaded_netherrack.json new file mode 100644 index 000000000..658d7b296 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/byg/pervaded_netherrack.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "byg" + } + ], + "ingredients": [ + { + "tag": "forge:ores/emeraldite" + } + ], + "processingTime": 150, + "results": [ + { + "count": 2, + "item": "minecraft:glowstone" + }, + { + "chance": 0.5, + "item": "minecraft:glowstone" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.125, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/crushing/red_rock.json b/src/generated/resources/data/create/recipes/crushing/compat/byg/red_rock.json similarity index 72% rename from src/main/resources/data/create/recipes/compat/byg/crushing/red_rock.json rename to src/generated/resources/data/create/recipes/crushing/compat/byg/red_rock.json index fd60af196..e3c7047f9 100644 --- a/src/main/resources/data/create/recipes/compat/byg/crushing/red_rock.json +++ b/src/generated/resources/data/create/recipes/crushing/compat/byg/red_rock.json @@ -1,21 +1,20 @@ { + "type": "create:crushing", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:crushing", "ingredients": [ { "item": "byg:red_rock" } ], + "processingTime": 150, "results": [ { - "item": "minecraft:red_sand", - "count": 1 + "item": "minecraft:red_sand" } - ], - "processingTime": 150 + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/druidcraft/amber_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/druidcraft/amber_ore.json new file mode 100644 index 000000000..cf0e810db --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/druidcraft/amber_ore.json @@ -0,0 +1,29 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "druidcraft" + } + ], + "ingredients": [ + { + "item": "druidcraft:amber_ore" + } + ], + "processingTime": 300, + "results": [ + { + "count": 2, + "item": "druidcraft:amber" + }, + { + "chance": 0.5, + "item": "druidcraft:amber" + }, + { + "chance": 0.125, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/druidcraft/fiery_glass_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/druidcraft/fiery_glass_ore.json new file mode 100644 index 000000000..e3455e24c --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/druidcraft/fiery_glass_ore.json @@ -0,0 +1,30 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "druidcraft" + } + ], + "ingredients": [ + { + "item": "druidcraft:fiery_glass_ore" + } + ], + "processingTime": 300, + "results": [ + { + "count": 8, + "item": "druidcraft:fiery_glass" + }, + { + "chance": 0.25, + "count": 6, + "item": "druidcraft:fiery_glass" + }, + { + "chance": 0.125, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/druidcraft/moonstone_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/druidcraft/moonstone_ore.json new file mode 100644 index 000000000..8fb7ab42d --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/druidcraft/moonstone_ore.json @@ -0,0 +1,29 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "druidcraft" + } + ], + "ingredients": [ + { + "item": "druidcraft:moonstone_ore" + } + ], + "processingTime": 300, + "results": [ + { + "count": 2, + "item": "druidcraft:moonstone" + }, + { + "chance": 0.5, + "item": "druidcraft:moonstone" + }, + { + "chance": 0.125, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_coal_end.json b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_coal_end.json new file mode 100644 index 000000000..c75551a69 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_coal_end.json @@ -0,0 +1,32 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "elementaryores" + } + ], + "ingredients": [ + { + "item": "elementaryores:ore_coal_end" + } + ], + "processingTime": 350, + "results": [ + { + "item": "minecraft:coal" + }, + { + "chance": 0.25, + "item": "minecraft:coal" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_coal_nether.json b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_coal_nether.json new file mode 100644 index 000000000..feb8c73ed --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_coal_nether.json @@ -0,0 +1,32 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "elementaryores" + } + ], + "ingredients": [ + { + "item": "elementaryores:ore_coal_nether" + } + ], + "processingTime": 350, + "results": [ + { + "item": "minecraft:coal" + }, + { + "chance": 0.25, + "item": "minecraft:coal" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_copper_end.json b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_copper_end.json new file mode 100644 index 000000000..2ac198b1b --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_copper_end.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "elementaryores" + } + ], + "ingredients": [ + { + "item": "elementaryores:ore_copper_end" + } + ], + "processingTime": 350, + "results": [ + { + "count": 5, + "item": "create:crushed_raw_copper" + }, + { + "chance": 0.25, + "item": "create:crushed_raw_copper" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_copper_nether.json b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_copper_nether.json new file mode 100644 index 000000000..97ff3171d --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_copper_nether.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "elementaryores" + } + ], + "ingredients": [ + { + "item": "elementaryores:ore_copper_nether" + } + ], + "processingTime": 350, + "results": [ + { + "count": 5, + "item": "create:crushed_raw_copper" + }, + { + "chance": 0.25, + "item": "create:crushed_raw_copper" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_diamond_end.json b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_diamond_end.json new file mode 100644 index 000000000..b20bd01bb --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_diamond_end.json @@ -0,0 +1,32 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "elementaryores" + } + ], + "ingredients": [ + { + "item": "elementaryores:ore_diamond_end" + } + ], + "processingTime": 350, + "results": [ + { + "item": "minecraft:diamond" + }, + { + "chance": 0.25, + "item": "minecraft:diamond" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_diamond_nether.json b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_diamond_nether.json new file mode 100644 index 000000000..03b52f864 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_diamond_nether.json @@ -0,0 +1,32 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "elementaryores" + } + ], + "ingredients": [ + { + "item": "elementaryores:ore_diamond_nether" + } + ], + "processingTime": 350, + "results": [ + { + "item": "minecraft:diamond" + }, + { + "chance": 0.25, + "item": "minecraft:diamond" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_emerald_end.json b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_emerald_end.json new file mode 100644 index 000000000..854a0b0b9 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_emerald_end.json @@ -0,0 +1,32 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "elementaryores" + } + ], + "ingredients": [ + { + "item": "elementaryores:ore_emerald_end" + } + ], + "processingTime": 350, + "results": [ + { + "item": "minecraft:emerald" + }, + { + "chance": 0.25, + "item": "minecraft:emerald" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_emerald_nether.json b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_emerald_nether.json new file mode 100644 index 000000000..2e6d238e5 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_emerald_nether.json @@ -0,0 +1,32 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "elementaryores" + } + ], + "ingredients": [ + { + "item": "elementaryores:ore_emerald_nether" + } + ], + "processingTime": 350, + "results": [ + { + "item": "minecraft:emerald" + }, + { + "chance": 0.25, + "item": "minecraft:emerald" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_ender_end.json b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_ender_end.json new file mode 100644 index 000000000..7cd21ffb3 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_ender_end.json @@ -0,0 +1,32 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "elementaryores" + } + ], + "ingredients": [ + { + "item": "elementaryores:ore_ender_end" + } + ], + "processingTime": 350, + "results": [ + { + "item": "minecraft:ender_pearl" + }, + { + "chance": 0.25, + "item": "minecraft:ender_pearl" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_ghast_nether.json b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_ghast_nether.json new file mode 100644 index 000000000..6f36f6082 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_ghast_nether.json @@ -0,0 +1,32 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "elementaryores" + } + ], + "ingredients": [ + { + "item": "elementaryores:ore_ghast_nether" + } + ], + "processingTime": 350, + "results": [ + { + "item": "minecraft:ghast_tear" + }, + { + "chance": 0.25, + "item": "minecraft:ghast_tear" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_iron_end.json b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_iron_end.json new file mode 100644 index 000000000..547c6b134 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_iron_end.json @@ -0,0 +1,32 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "elementaryores" + } + ], + "ingredients": [ + { + "item": "elementaryores:ore_iron_end" + } + ], + "processingTime": 350, + "results": [ + { + "item": "create:crushed_raw_iron" + }, + { + "chance": 0.25, + "item": "create:crushed_raw_iron" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_iron_nether.json b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_iron_nether.json new file mode 100644 index 000000000..695eff57e --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_iron_nether.json @@ -0,0 +1,32 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "elementaryores" + } + ], + "ingredients": [ + { + "item": "elementaryores:ore_iron_nether" + } + ], + "processingTime": 350, + "results": [ + { + "item": "create:crushed_raw_iron" + }, + { + "chance": 0.25, + "item": "create:crushed_raw_iron" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_lapis_end.json b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_lapis_end.json new file mode 100644 index 000000000..3c5214fe2 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_lapis_end.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "elementaryores" + } + ], + "ingredients": [ + { + "item": "elementaryores:ore_lapis_end" + } + ], + "processingTime": 350, + "results": [ + { + "count": 10, + "item": "minecraft:lapis_lazuli" + }, + { + "chance": 0.25, + "item": "minecraft:lapis_lazuli" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_lapis_nether.json b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_lapis_nether.json new file mode 100644 index 000000000..57f528ad1 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_lapis_nether.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "elementaryores" + } + ], + "ingredients": [ + { + "item": "elementaryores:ore_lapis_nether" + } + ], + "processingTime": 350, + "results": [ + { + "count": 10, + "item": "minecraft:lapis_lazuli" + }, + { + "chance": 0.25, + "item": "minecraft:lapis_lazuli" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_redstone_end.json b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_redstone_end.json new file mode 100644 index 000000000..6d72140fc --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_redstone_end.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "elementaryores" + } + ], + "ingredients": [ + { + "item": "elementaryores:ore_redstone_end" + } + ], + "processingTime": 350, + "results": [ + { + "count": 6, + "item": "minecraft:redstone" + }, + { + "chance": 0.25, + "item": "minecraft:redstone" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_redstone_nether.json b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_redstone_nether.json new file mode 100644 index 000000000..0ac983d12 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/elementaryores/ore_redstone_nether.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "elementaryores" + } + ], + "ingredients": [ + { + "item": "elementaryores:ore_redstone_nether" + } + ], + "processingTime": 350, + "results": [ + { + "count": 6, + "item": "minecraft:redstone" + }, + { + "chance": 0.25, + "item": "minecraft:redstone" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/andesite.json b/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/andesite.json new file mode 100644 index 000000000..139ae4dab --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/andesite.json @@ -0,0 +1,20 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "exnihilosequentia" + } + ], + "ingredients": [ + { + "item": "minecraft:andesite" + } + ], + "processingTime": 350, + "results": [ + { + "item": "exnihilosequentia:crushed_andesite" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/crushed_diorite.json b/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/crushed_diorite.json new file mode 100644 index 000000000..86b6571b9 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/crushed_diorite.json @@ -0,0 +1,21 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "exnihilosequentia" + } + ], + "ingredients": [ + { + "item": "exnihilosequentia:crushed_diorite" + } + ], + "processingTime": 100, + "results": [ + { + "chance": 0.25, + "item": "minecraft:quartz" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/crushed_netherrack.json b/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/crushed_netherrack.json new file mode 100644 index 000000000..a66694ddb --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/crushed_netherrack.json @@ -0,0 +1,24 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "exnihilosequentia" + } + ], + "ingredients": [ + { + "item": "exnihilosequentia:crushed_netherrack" + } + ], + "processingTime": 100, + "results": [ + { + "item": "create:cinder_flour" + }, + { + "chance": 0.5, + "item": "create:cinder_flour" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/diorite.json b/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/diorite.json new file mode 100644 index 000000000..c29e08895 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/diorite.json @@ -0,0 +1,20 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "exnihilosequentia" + } + ], + "ingredients": [ + { + "item": "minecraft:diorite" + } + ], + "processingTime": 350, + "results": [ + { + "item": "exnihilosequentia:crushed_diorite" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/dust.json b/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/dust.json new file mode 100644 index 000000000..d8c26a7a1 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/dust.json @@ -0,0 +1,20 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "exnihilosequentia" + } + ], + "ingredients": [ + { + "item": "minecraft:sand" + } + ], + "processingTime": 200, + "results": [ + { + "item": "exnihilosequentia:dust" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/end_stone.json b/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/end_stone.json new file mode 100644 index 000000000..9683c4002 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/end_stone.json @@ -0,0 +1,20 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "exnihilosequentia" + } + ], + "ingredients": [ + { + "item": "minecraft:end_stone" + } + ], + "processingTime": 350, + "results": [ + { + "item": "exnihilosequentia:crushed_end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/granite.json b/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/granite.json new file mode 100644 index 000000000..cf9600bb0 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/granite.json @@ -0,0 +1,20 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "exnihilosequentia" + } + ], + "ingredients": [ + { + "item": "minecraft:granite" + } + ], + "processingTime": 350, + "results": [ + { + "item": "exnihilosequentia:crushed_granite" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/netherrack.json b/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/netherrack.json new file mode 100644 index 000000000..d7a1f305b --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/exnihilosequentia/netherrack.json @@ -0,0 +1,20 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "exnihilosequentia" + } + ], + "ingredients": [ + { + "item": "minecraft:netherrack" + } + ], + "processingTime": 350, + "results": [ + { + "item": "exnihilosequentia:crushed_netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/galosphere/allurite.json b/src/generated/resources/data/create/recipes/crushing/compat/galosphere/allurite.json new file mode 100644 index 000000000..5e57cf341 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/galosphere/allurite.json @@ -0,0 +1,22 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "galosphere" + } + ], + "ingredients": [ + { + "tag": "create:stone_types/galosphere/allurite" + } + ], + "processingTime": 300, + "results": [ + { + "chance": 0.8, + "count": 4, + "item": "galosphere:allurite_shard" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/galosphere/amethyst.json b/src/generated/resources/data/create/recipes/crushing/compat/galosphere/amethyst.json new file mode 100644 index 000000000..a11ee4f80 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/galosphere/amethyst.json @@ -0,0 +1,22 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "galosphere" + } + ], + "ingredients": [ + { + "tag": "create:stone_types/galosphere/amethyst" + } + ], + "processingTime": 300, + "results": [ + { + "chance": 0.8, + "count": 4, + "item": "minecraft:amethyst_shard" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/galosphere/lumiere.json b/src/generated/resources/data/create/recipes/crushing/compat/galosphere/lumiere.json new file mode 100644 index 000000000..5fb56af9d --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/galosphere/lumiere.json @@ -0,0 +1,22 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "galosphere" + } + ], + "ingredients": [ + { + "tag": "create:stone_types/galosphere/lumiere" + } + ], + "processingTime": 300, + "results": [ + { + "chance": 0.8, + "count": 4, + "item": "galosphere:lumiere_shard" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/neapolitan/crushing/ice.json b/src/generated/resources/data/create/recipes/crushing/compat/neapolitan/ice.json similarity index 63% rename from src/main/resources/data/create/recipes/compat/neapolitan/crushing/ice.json rename to src/generated/resources/data/create/recipes/crushing/compat/neapolitan/ice.json index cc093968a..295b6b441 100644 --- a/src/main/resources/data/create/recipes/compat/neapolitan/crushing/ice.json +++ b/src/generated/resources/data/create/recipes/crushing/compat/neapolitan/ice.json @@ -1,26 +1,26 @@ { + "type": "create:crushing", "conditions": [ { "type": "forge:mod_loaded", "modid": "neapolitan" } ], - "type": "create:crushing", "ingredients": [ { "item": "minecraft:ice" } ], + "processingTime": 100, "results": [ { - "item": "neapolitan:ice_cubes", - "count": 3 + "count": 3, + "item": "neapolitan:ice_cubes" }, { - "item": "neapolitan:ice_cubes", + "chance": 0.25, "count": 3, - "chance": 0.25 + "item": "neapolitan:ice_cubes" } - ], - "processingTime": 100 + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/quark/moss_block.json b/src/generated/resources/data/create/recipes/crushing/compat/quark/moss_block.json new file mode 100644 index 000000000..318f4465b --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/quark/moss_block.json @@ -0,0 +1,25 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "quark" + } + ], + "ingredients": [ + { + "item": "minecraft:moss_block" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "quark:moss_paste" + }, + { + "chance": 0.1, + "item": "quark:moss_paste" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/agate_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/agate_ore.json new file mode 100644 index 000000000..0907ba9ee --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/agate_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:agate_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:agate" + }, + { + "chance": 0.25, + "item": "silentgems:agate" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/alexandrite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/alexandrite_ore.json new file mode 100644 index 000000000..99bf81b1d --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/alexandrite_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:alexandrite_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:alexandrite" + }, + { + "chance": 0.25, + "item": "silentgems:alexandrite" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/amber_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/amber_ore.json new file mode 100644 index 000000000..41948fa96 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/amber_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:amber_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:amber" + }, + { + "chance": 0.25, + "item": "silentgems:amber" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/amethyst_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/amethyst_ore.json new file mode 100644 index 000000000..137b32bbe --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/amethyst_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:amethyst_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:amethyst" + }, + { + "chance": 0.25, + "item": "silentgems:amethyst" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/ametrine_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/ametrine_ore.json new file mode 100644 index 000000000..5411e1f25 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/ametrine_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:ametrine_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:ametrine" + }, + { + "chance": 0.25, + "item": "silentgems:ametrine" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/ammolite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/ammolite_ore.json new file mode 100644 index 000000000..5eb30c955 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/ammolite_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:ammolite_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:ammolite" + }, + { + "chance": 0.25, + "item": "silentgems:ammolite" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/apatite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/apatite_ore.json new file mode 100644 index 000000000..652c354b1 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/apatite_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:apatite_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:apatite" + }, + { + "chance": 0.25, + "item": "silentgems:apatite" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/aquamarine_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/aquamarine_ore.json new file mode 100644 index 000000000..da5812aa3 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/aquamarine_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:aquamarine_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:aquamarine" + }, + { + "chance": 0.25, + "item": "silentgems:aquamarine" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/beniotite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/beniotite_ore.json new file mode 100644 index 000000000..cb5bb9654 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/beniotite_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:beniotite_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:beniotite" + }, + { + "chance": 0.25, + "item": "silentgems:beniotite" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/black_diamond_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/black_diamond_ore.json new file mode 100644 index 000000000..5b3f42602 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/black_diamond_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:black_diamond_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:black_diamond" + }, + { + "chance": 0.25, + "item": "silentgems:black_diamond" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/carnelian_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/carnelian_ore.json new file mode 100644 index 000000000..0582446d9 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/carnelian_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:carnelian_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:carnelian" + }, + { + "chance": 0.25, + "item": "silentgems:carnelian" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/cats_eye_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/cats_eye_ore.json new file mode 100644 index 000000000..153c7070f --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/cats_eye_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:cats_eye_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:cats_eye" + }, + { + "chance": 0.25, + "item": "silentgems:cats_eye" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/chrysoprase_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/chrysoprase_ore.json new file mode 100644 index 000000000..14be1d47d --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/chrysoprase_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:chrysoprase_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:chrysoprase" + }, + { + "chance": 0.25, + "item": "silentgems:chrysoprase" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/citrine_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/citrine_ore.json new file mode 100644 index 000000000..d737f82fc --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/citrine_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:citrine_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:citrine" + }, + { + "chance": 0.25, + "item": "silentgems:citrine" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/coral_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/coral_ore.json new file mode 100644 index 000000000..f54f34418 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/coral_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:coral_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:coral" + }, + { + "chance": 0.25, + "item": "silentgems:coral" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/eculase_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/eculase_ore.json new file mode 100644 index 000000000..60eb77334 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/eculase_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:eculase_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:eculase" + }, + { + "chance": 0.25, + "item": "silentgems:eculase" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/flourite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/flourite_ore.json new file mode 100644 index 000000000..29ad921b6 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/flourite_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:flourite_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:flourite" + }, + { + "chance": 0.25, + "item": "silentgems:flourite" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/garnet_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/garnet_ore.json new file mode 100644 index 000000000..3ba4ea24c --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/garnet_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:garnet_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:garnet" + }, + { + "chance": 0.25, + "item": "silentgems:garnet" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/green_sapphire_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/green_sapphire_ore.json new file mode 100644 index 000000000..89c24892f --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/green_sapphire_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:green_sapphire_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:green_sapphire" + }, + { + "chance": 0.25, + "item": "silentgems:green_sapphire" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/helidor_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/helidor_ore.json new file mode 100644 index 000000000..84adb6b09 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/helidor_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:helidor_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:helidor" + }, + { + "chance": 0.25, + "item": "silentgems:helidor" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/iolite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/iolite_ore.json new file mode 100644 index 000000000..4b55d83d9 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/iolite_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:iolite_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:iolite" + }, + { + "chance": 0.25, + "item": "silentgems:iolite" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/jade_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/jade_ore.json new file mode 100644 index 000000000..9f8911cb8 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/jade_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:jade_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:jade" + }, + { + "chance": 0.25, + "item": "silentgems:jade" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/jasper_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/jasper_ore.json new file mode 100644 index 000000000..7bf2610f7 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/jasper_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:jasper_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:jasper" + }, + { + "chance": 0.25, + "item": "silentgems:jasper" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/kunzite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/kunzite_ore.json new file mode 100644 index 000000000..b8c67ebbc --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/kunzite_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:kunzite_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:kunzite" + }, + { + "chance": 0.25, + "item": "silentgems:kunzite" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/kyanite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/kyanite_ore.json new file mode 100644 index 000000000..bebbe2778 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/kyanite_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:kyanite_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:kyanite" + }, + { + "chance": 0.25, + "item": "silentgems:kyanite" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/lepidolite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/lepidolite_ore.json new file mode 100644 index 000000000..6cff3e55e --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/lepidolite_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:lepidolite_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:lepidolite" + }, + { + "chance": 0.25, + "item": "silentgems:lepidolite" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/malachite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/malachite_ore.json new file mode 100644 index 000000000..78bb74728 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/malachite_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:malachite_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:malachite" + }, + { + "chance": 0.25, + "item": "silentgems:malachite" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/moldavite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/moldavite_ore.json new file mode 100644 index 000000000..f719c0928 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/moldavite_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:moldavite_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:moldavite" + }, + { + "chance": 0.25, + "item": "silentgems:moldavite" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/moonstone_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/moonstone_ore.json new file mode 100644 index 000000000..164bad6e7 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/moonstone_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:moonstone_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:moonstone" + }, + { + "chance": 0.25, + "item": "silentgems:moonstone" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/morganite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/morganite_ore.json new file mode 100644 index 000000000..ac549faef --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/morganite_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:morganite_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:morganite" + }, + { + "chance": 0.25, + "item": "silentgems:morganite" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/onyx_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/onyx_ore.json new file mode 100644 index 000000000..51c7ff5f9 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/onyx_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:onyx_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:onyx" + }, + { + "chance": 0.25, + "item": "silentgems:onyx" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/opal_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/opal_ore.json new file mode 100644 index 000000000..10084f70e --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/opal_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:opal_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:opal" + }, + { + "chance": 0.25, + "item": "silentgems:opal" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/pearl_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/pearl_ore.json new file mode 100644 index 000000000..2dc526677 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/pearl_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:pearl_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:pearl" + }, + { + "chance": 0.25, + "item": "silentgems:pearl" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/peridot_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/peridot_ore.json new file mode 100644 index 000000000..ea41823a9 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/peridot_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:peridot_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:peridot" + }, + { + "chance": 0.25, + "item": "silentgems:peridot" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/phosphophyllite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/phosphophyllite_ore.json new file mode 100644 index 000000000..015c1e466 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/phosphophyllite_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:phosphophyllite_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:phosphophyllite" + }, + { + "chance": 0.25, + "item": "silentgems:phosphophyllite" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/pyrope_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/pyrope_ore.json new file mode 100644 index 000000000..12c895d3f --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/pyrope_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:pyrope_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:pyrope" + }, + { + "chance": 0.25, + "item": "silentgems:pyrope" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/rose_quartz_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/rose_quartz_ore.json new file mode 100644 index 000000000..9461fdf55 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/rose_quartz_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:rose_quartz_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:rose_quartz" + }, + { + "chance": 0.25, + "item": "silentgems:rose_quartz" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/ruby_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/ruby_ore.json new file mode 100644 index 000000000..46ac2f9a1 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/ruby_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:ruby_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:ruby" + }, + { + "chance": 0.25, + "item": "silentgems:ruby" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/sapphire_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/sapphire_ore.json new file mode 100644 index 000000000..c0e77418e --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/sapphire_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:sapphire_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:sapphire" + }, + { + "chance": 0.25, + "item": "silentgems:sapphire" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/sodalite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/sodalite_ore.json new file mode 100644 index 000000000..32a117f43 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/sodalite_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:sodalite_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:sodalite" + }, + { + "chance": 0.25, + "item": "silentgems:sodalite" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/spinel_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/spinel_ore.json new file mode 100644 index 000000000..ce8c8fd15 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/spinel_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:spinel_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:spinel" + }, + { + "chance": 0.25, + "item": "silentgems:spinel" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/sunstone_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/sunstone_ore.json new file mode 100644 index 000000000..f259a5572 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/sunstone_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:sunstone_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:sunstone" + }, + { + "chance": 0.25, + "item": "silentgems:sunstone" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/tanzite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/tanzite_ore.json new file mode 100644 index 000000000..1f613386a --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/tanzite_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:tanzite_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:tanzite" + }, + { + "chance": 0.25, + "item": "silentgems:tanzite" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/tektite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/tektite_ore.json new file mode 100644 index 000000000..825f288f9 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/tektite_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:tektite_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:tektite" + }, + { + "chance": 0.25, + "item": "silentgems:tektite" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/topaz_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/topaz_ore.json new file mode 100644 index 000000000..c3cbd8c6d --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/topaz_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:topaz_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:topaz" + }, + { + "chance": 0.25, + "item": "silentgems:topaz" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/turquoise_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/turquoise_ore.json new file mode 100644 index 000000000..e7394660b --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/turquoise_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:turquoise_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:turquoise" + }, + { + "chance": 0.25, + "item": "silentgems:turquoise" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/yellow_diamond_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/yellow_diamond_ore.json new file mode 100644 index 000000000..2af6b1540 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/yellow_diamond_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:yellow_diamond_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:yellow_diamond" + }, + { + "chance": 0.25, + "item": "silentgems:yellow_diamond" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:end_stone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/silentgems/zircon_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/zircon_ore.json new file mode 100644 index 000000000..5d80321dc --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/silentgems/zircon_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "ingredients": [ + { + "item": "silentgems:zircon_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "silentgems:zircon" + }, + { + "chance": 0.25, + "item": "silentgems:zircon" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.12, + "item": "minecraft:netherrack" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/simplefarming/barley.json b/src/generated/resources/data/create/recipes/crushing/compat/simplefarming/barley.json new file mode 100644 index 000000000..111859499 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/simplefarming/barley.json @@ -0,0 +1,29 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "simplefarming" + } + ], + "ingredients": [ + { + "item": "simplefarming:barley" + } + ], + "processingTime": 150, + "results": [ + { + "item": "create:wheat_flour" + }, + { + "chance": 0.25, + "count": 2, + "item": "create:wheat_flour" + }, + { + "chance": 0.25, + "item": "simplefarming:barley_seeds" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/simplefarming/oat.json b/src/generated/resources/data/create/recipes/crushing/compat/simplefarming/oat.json new file mode 100644 index 000000000..a1011611a --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/simplefarming/oat.json @@ -0,0 +1,29 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "simplefarming" + } + ], + "ingredients": [ + { + "item": "simplefarming:oat" + } + ], + "processingTime": 150, + "results": [ + { + "item": "create:wheat_flour" + }, + { + "chance": 0.25, + "count": 2, + "item": "create:wheat_flour" + }, + { + "chance": 0.25, + "item": "simplefarming:oat_seeds" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/simplefarming/rice.json b/src/generated/resources/data/create/recipes/crushing/compat/simplefarming/rice.json new file mode 100644 index 000000000..5277464fd --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/simplefarming/rice.json @@ -0,0 +1,29 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "simplefarming" + } + ], + "ingredients": [ + { + "item": "simplefarming:rice" + } + ], + "processingTime": 150, + "results": [ + { + "item": "create:wheat_flour" + }, + { + "chance": 0.25, + "count": 2, + "item": "create:wheat_flour" + }, + { + "chance": 0.25, + "item": "simplefarming:rice_seeds" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/simplefarming/rye.json b/src/generated/resources/data/create/recipes/crushing/compat/simplefarming/rye.json new file mode 100644 index 000000000..c788749e6 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/simplefarming/rye.json @@ -0,0 +1,29 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "simplefarming" + } + ], + "ingredients": [ + { + "item": "simplefarming:rye" + } + ], + "processingTime": 150, + "results": [ + { + "item": "create:wheat_flour" + }, + { + "chance": 0.25, + "count": 2, + "item": "create:wheat_flour" + }, + { + "chance": 0.25, + "item": "simplefarming:rye_seeds" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/thermal/apatite_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/thermal/apatite_ore.json new file mode 100644 index 000000000..1bdf90d2b --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/thermal/apatite_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "thermal" + } + ], + "ingredients": [ + { + "item": "thermal:apatite_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "thermal:apatite" + }, + { + "chance": 0.25, + "item": "thermal:apatite" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/thermal/cinnabar_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/thermal/cinnabar_ore.json new file mode 100644 index 000000000..755f6c1d3 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/thermal/cinnabar_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "thermal" + } + ], + "ingredients": [ + { + "item": "thermal:cinnabar_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "thermal:cinnabar" + }, + { + "chance": 0.25, + "item": "thermal:cinnabar" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/thermal/niter_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/thermal/niter_ore.json new file mode 100644 index 000000000..bc0aa1659 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/thermal/niter_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "thermal" + } + ], + "ingredients": [ + { + "item": "thermal:niter_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "thermal:niter" + }, + { + "chance": 0.25, + "item": "thermal:niter" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/compat/thermal/sulfur_ore.json b/src/generated/resources/data/create/recipes/crushing/compat/thermal/sulfur_ore.json new file mode 100644 index 000000000..eecd207b9 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/compat/thermal/sulfur_ore.json @@ -0,0 +1,33 @@ +{ + "type": "create:crushing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "thermal" + } + ], + "ingredients": [ + { + "item": "thermal:sulfur_ore" + } + ], + "processingTime": 350, + "results": [ + { + "count": 2, + "item": "thermal:sulfur" + }, + { + "chance": 0.25, + "item": "thermal:sulfur" + }, + { + "chance": 0.12, + "item": "minecraft:cobblestone" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/deepslate_coal_ore.json b/src/generated/resources/data/create/recipes/crushing/deepslate_coal_ore.json index 79ccd9747..cac9ea1c3 100644 --- a/src/generated/resources/data/create/recipes/crushing/deepslate_coal_ore.json +++ b/src/generated/resources/data/create/recipes/crushing/deepslate_coal_ore.json @@ -5,13 +5,14 @@ "item": "minecraft:deepslate_coal_ore" } ], - "processingTime": 250, + "processingTime": 300, "results": [ { + "count": 2, "item": "minecraft:coal" }, { - "chance": 0.75, + "chance": 0.25, "item": "minecraft:coal" }, { diff --git a/src/generated/resources/data/create/recipes/crushing/diorite.json b/src/generated/resources/data/create/recipes/crushing/diorite.json index b6aa817a9..aa35df5d5 100644 --- a/src/generated/resources/data/create/recipes/crushing/diorite.json +++ b/src/generated/resources/data/create/recipes/crushing/diorite.json @@ -1,5 +1,14 @@ { "type": "create:crushing", + "conditions": [ + { + "type": "forge:not", + "value": { + "type": "forge:mod_loaded", + "modid": "exnihilosequentia" + } + } + ], "ingredients": [ { "item": "minecraft:diorite" diff --git a/src/generated/resources/data/create/recipes/crushing/gilded_blackstone.json b/src/generated/resources/data/create/recipes/crushing/gilded_blackstone.json new file mode 100644 index 000000000..96d2d4b33 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/gilded_blackstone.json @@ -0,0 +1,23 @@ +{ + "type": "create:crushing", + "ingredients": [ + { + "item": "minecraft:gilded_blackstone" + } + ], + "processingTime": 400, + "results": [ + { + "count": 18, + "item": "minecraft:gold_nugget" + }, + { + "chance": 0.75, + "item": "create:experience_nugget" + }, + { + "chance": 0.125, + "item": "minecraft:blackstone" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/netherrack.json b/src/generated/resources/data/create/recipes/crushing/netherrack.json index d51f72e63..4d021a25c 100644 --- a/src/generated/resources/data/create/recipes/crushing/netherrack.json +++ b/src/generated/resources/data/create/recipes/crushing/netherrack.json @@ -1,5 +1,14 @@ { "type": "create:crushing", + "conditions": [ + { + "type": "forge:not", + "value": { + "type": "forge:mod_loaded", + "modid": "exnihilosequentia" + } + } + ], "ingredients": [ { "item": "minecraft:netherrack" diff --git a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/aspen_log.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/aspen_log.json similarity index 71% rename from src/main/resources/data/create/recipes/compat/atmospheric/cutting/aspen_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/atmospheric/aspen_log.json index d9a202bb3..7373ae8e4 100644 --- a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/aspen_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/aspen_log.json @@ -1,21 +1,20 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "atmospheric" } ], - "type": "create:cutting", "ingredients": [ { "item": "atmospheric:aspen_log" } ], + "processingTime": 50, "results": [ { - "item": "atmospheric:stripped_aspen_log", - "count": 1 + "item": "atmospheric:stripped_aspen_log" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/blue_skies/cherry_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/aspen_wood.json similarity index 62% rename from src/generated/resources/data/create/recipes/cutting/compat/blue_skies/cherry_wood.json rename to src/generated/resources/data/create/recipes/cutting/compat/atmospheric/aspen_wood.json index a6df130f7..1d978775a 100644 --- a/src/generated/resources/data/create/recipes/cutting/compat/blue_skies/cherry_wood.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/aspen_wood.json @@ -3,18 +3,18 @@ "conditions": [ { "type": "forge:mod_loaded", - "modid": "blue_skies" + "modid": "atmospheric" } ], "ingredients": [ { - "item": "blue_skies:cherry_wood" + "item": "atmospheric:aspen_wood" } ], "processingTime": 50, "results": [ { - "item": "blue_skies:stripped_cherry_wood" + "item": "atmospheric:stripped_aspen_wood" } ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/blue_skies/cherry_log.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/grimwood.json similarity index 62% rename from src/generated/resources/data/create/recipes/cutting/compat/blue_skies/cherry_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/atmospheric/grimwood.json index 31eb122c7..648d0a553 100644 --- a/src/generated/resources/data/create/recipes/cutting/compat/blue_skies/cherry_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/grimwood.json @@ -3,18 +3,18 @@ "conditions": [ { "type": "forge:mod_loaded", - "modid": "blue_skies" + "modid": "atmospheric" } ], "ingredients": [ { - "item": "blue_skies:cherry_log" + "item": "atmospheric:grimwood" } ], "processingTime": 50, "results": [ { - "item": "blue_skies:stripped_cherry_log" + "item": "atmospheric:stripped_grimwood" } ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/grimwood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/grimwood_log.json similarity index 70% rename from src/main/resources/data/create/recipes/compat/atmospheric/cutting/grimwood_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/atmospheric/grimwood_log.json index 8f888461c..e47ba6988 100644 --- a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/grimwood_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/grimwood_log.json @@ -1,21 +1,20 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "atmospheric" } ], - "type": "create:cutting", "ingredients": [ { "item": "atmospheric:grimwood_log" } ], + "processingTime": 50, "results": [ { - "item": "atmospheric:stripped_grimwood_log", - "count": 1 + "item": "atmospheric:stripped_grimwood_log" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/kousa_log.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/kousa_log.json similarity index 71% rename from src/main/resources/data/create/recipes/compat/atmospheric/cutting/kousa_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/atmospheric/kousa_log.json index ecad3012c..aa56e9cb0 100644 --- a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/kousa_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/kousa_log.json @@ -1,21 +1,20 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "atmospheric" } ], - "type": "create:cutting", "ingredients": [ { "item": "atmospheric:kousa_log" } ], + "processingTime": 50, "results": [ { - "item": "atmospheric:stripped_kousa_log", - "count": 1 + "item": "atmospheric:stripped_kousa_log" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/kousa_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/kousa_wood.json new file mode 100644 index 000000000..4958a4087 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/kousa_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "atmospheric" + } + ], + "ingredients": [ + { + "item": "atmospheric:kousa_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "atmospheric:stripped_kousa_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/morado_log.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/morado_log.json new file mode 100644 index 000000000..d10d4088b --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/morado_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "atmospheric" + } + ], + "ingredients": [ + { + "item": "atmospheric:morado_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "atmospheric:stripped_morado_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/morado_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/morado_wood.json new file mode 100644 index 000000000..6747e0e19 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/morado_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "atmospheric" + } + ], + "ingredients": [ + { + "item": "atmospheric:morado_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "atmospheric:stripped_morado_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/rosewood.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/rosewood.json new file mode 100644 index 000000000..41ddadb91 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/rosewood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "atmospheric" + } + ], + "ingredients": [ + { + "item": "atmospheric:rosewood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "atmospheric:stripped_rosewood" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/rosewood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/rosewood_log.json similarity index 70% rename from src/main/resources/data/create/recipes/compat/atmospheric/cutting/rosewood_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/atmospheric/rosewood_log.json index d56aa855e..f68192b89 100644 --- a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/rosewood_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/rosewood_log.json @@ -1,21 +1,20 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "atmospheric" } ], - "type": "create:cutting", "ingredients": [ { "item": "atmospheric:rosewood_log" } ], + "processingTime": 50, "results": [ { - "item": "atmospheric:stripped_rosewood_log", - "count": 1 + "item": "atmospheric:stripped_rosewood_log" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/stripped_aspen_log.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_aspen_log.json similarity index 73% rename from src/main/resources/data/create/recipes/compat/atmospheric/cutting/stripped_aspen_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_aspen_log.json index 9d2a5bfe6..b43591e2a 100644 --- a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/stripped_aspen_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_aspen_log.json @@ -1,21 +1,21 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "atmospheric" } ], - "type": "create:cutting", "ingredients": [ { "item": "atmospheric:stripped_aspen_log" } ], + "processingTime": 50, "results": [ { - "item": "atmospheric:aspen_planks", - "count": 6 + "count": 6, + "item": "atmospheric:aspen_planks" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/blue_skies/stripped_cherry_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_aspen_wood.json similarity index 63% rename from src/generated/resources/data/create/recipes/cutting/compat/blue_skies/stripped_cherry_wood.json rename to src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_aspen_wood.json index c848f788b..9c8566ead 100644 --- a/src/generated/resources/data/create/recipes/cutting/compat/blue_skies/stripped_cherry_wood.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_aspen_wood.json @@ -3,19 +3,19 @@ "conditions": [ { "type": "forge:mod_loaded", - "modid": "blue_skies" + "modid": "atmospheric" } ], "ingredients": [ { - "item": "blue_skies:stripped_cherry_wood" + "item": "atmospheric:stripped_aspen_wood" } ], "processingTime": 50, "results": [ { "count": 6, - "item": "blue_skies:cherry_planks" + "item": "atmospheric:aspen_planks" } ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_grimwood.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_grimwood.json new file mode 100644 index 000000000..b9fbdc7e1 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_grimwood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "atmospheric" + } + ], + "ingredients": [ + { + "item": "atmospheric:stripped_grimwood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "atmospheric:grimwood_planks" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/stripped_grimwood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_grimwood_log.json similarity index 72% rename from src/main/resources/data/create/recipes/compat/atmospheric/cutting/stripped_grimwood_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_grimwood_log.json index 74840a8f1..4724283d8 100644 --- a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/stripped_grimwood_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_grimwood_log.json @@ -1,21 +1,21 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "atmospheric" } ], - "type": "create:cutting", "ingredients": [ { "item": "atmospheric:stripped_grimwood_log" } ], + "processingTime": 50, "results": [ { - "item": "atmospheric:grimwood_planks", - "count": 6 + "count": 6, + "item": "atmospheric:grimwood_planks" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/stripped_kousa_log.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_kousa_log.json similarity index 73% rename from src/main/resources/data/create/recipes/compat/atmospheric/cutting/stripped_kousa_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_kousa_log.json index 3451f9019..9c56af667 100644 --- a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/stripped_kousa_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_kousa_log.json @@ -1,21 +1,21 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "atmospheric" } ], - "type": "create:cutting", "ingredients": [ { "item": "atmospheric:stripped_kousa_log" } ], + "processingTime": 50, "results": [ { - "item": "atmospheric:kousa_planks", - "count": 6 + "count": 6, + "item": "atmospheric:kousa_planks" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_kousa_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_kousa_wood.json new file mode 100644 index 000000000..f6ea5c27b --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_kousa_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "atmospheric" + } + ], + "ingredients": [ + { + "item": "atmospheric:stripped_kousa_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "atmospheric:kousa_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_morado_log.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_morado_log.json new file mode 100644 index 000000000..0dfb1cd98 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_morado_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "atmospheric" + } + ], + "ingredients": [ + { + "item": "atmospheric:stripped_morado_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "atmospheric:morado_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_morado_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_morado_wood.json new file mode 100644 index 000000000..143a19041 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_morado_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "atmospheric" + } + ], + "ingredients": [ + { + "item": "atmospheric:stripped_morado_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "atmospheric:morado_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_rosewood.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_rosewood.json new file mode 100644 index 000000000..23de67670 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_rosewood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "atmospheric" + } + ], + "ingredients": [ + { + "item": "atmospheric:stripped_rosewood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "atmospheric:rosewood_planks" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/stripped_rosewood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_rosewood_log.json similarity index 72% rename from src/main/resources/data/create/recipes/compat/atmospheric/cutting/stripped_rosewood_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_rosewood_log.json index 019a88bac..10a905f8f 100644 --- a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/stripped_rosewood_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_rosewood_log.json @@ -1,21 +1,21 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "atmospheric" } ], - "type": "create:cutting", "ingredients": [ { "item": "atmospheric:stripped_rosewood_log" } ], + "processingTime": 50, "results": [ { - "item": "atmospheric:rosewood_planks", - "count": 6 + "count": 6, + "item": "atmospheric:rosewood_planks" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/stripped_yucca_log.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_yucca_log.json similarity index 73% rename from src/main/resources/data/create/recipes/compat/atmospheric/cutting/stripped_yucca_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_yucca_log.json index 8f1105198..89f13128b 100644 --- a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/stripped_yucca_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_yucca_log.json @@ -1,21 +1,21 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "atmospheric" } ], - "type": "create:cutting", "ingredients": [ { "item": "atmospheric:stripped_yucca_log" } ], + "processingTime": 50, "results": [ { - "item": "atmospheric:yucca_planks", - "count": 6 + "count": 6, + "item": "atmospheric:yucca_planks" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_yucca_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_yucca_wood.json new file mode 100644 index 000000000..065d11f40 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/stripped_yucca_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "atmospheric" + } + ], + "ingredients": [ + { + "item": "atmospheric:stripped_yucca_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "atmospheric:yucca_planks" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/yucca_log.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/yucca_log.json similarity index 71% rename from src/main/resources/data/create/recipes/compat/atmospheric/cutting/yucca_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/atmospheric/yucca_log.json index 45f33c335..4b247132b 100644 --- a/src/main/resources/data/create/recipes/compat/atmospheric/cutting/yucca_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/yucca_log.json @@ -1,21 +1,20 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "atmospheric" } ], - "type": "create:cutting", "ingredients": [ { "item": "atmospheric:yucca_log" } ], + "processingTime": 50, "results": [ { - "item": "atmospheric:stripped_yucca_log", - "count": 1 + "item": "atmospheric:stripped_yucca_log" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/yucca_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/yucca_wood.json new file mode 100644 index 000000000..456bd0973 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/atmospheric/yucca_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "atmospheric" + } + ], + "ingredients": [ + { + "item": "atmospheric:yucca_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "atmospheric:stripped_yucca_wood" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/autumnity/cutting/maple_log.json b/src/generated/resources/data/create/recipes/cutting/compat/autumnity/maple_log.json similarity index 71% rename from src/main/resources/data/create/recipes/compat/autumnity/cutting/maple_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/autumnity/maple_log.json index 55c8871ab..04a37d560 100644 --- a/src/main/resources/data/create/recipes/compat/autumnity/cutting/maple_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/autumnity/maple_log.json @@ -1,21 +1,20 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "autumnity" } ], - "type": "create:cutting", "ingredients": [ { "item": "autumnity:maple_log" } ], + "processingTime": 50, "results": [ { - "item": "autumnity:stripped_maple_log", - "count": 1 + "item": "autumnity:stripped_maple_log" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/byg/cherry_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/autumnity/maple_wood.json similarity index 63% rename from src/generated/resources/data/create/recipes/cutting/compat/byg/cherry_wood.json rename to src/generated/resources/data/create/recipes/cutting/compat/autumnity/maple_wood.json index 99273503b..c62d6a50a 100644 --- a/src/generated/resources/data/create/recipes/cutting/compat/byg/cherry_wood.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/autumnity/maple_wood.json @@ -3,18 +3,18 @@ "conditions": [ { "type": "forge:mod_loaded", - "modid": "byg" + "modid": "autumnity" } ], "ingredients": [ { - "item": "byg:cherry_wood" + "item": "autumnity:maple_wood" } ], "processingTime": 50, "results": [ { - "item": "byg:stripped_cherry_wood" + "item": "autumnity:stripped_maple_wood" } ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/byg/stripped_cherry_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/autumnity/sappy_maple_log.json similarity index 65% rename from src/generated/resources/data/create/recipes/cutting/compat/byg/stripped_cherry_wood.json rename to src/generated/resources/data/create/recipes/cutting/compat/autumnity/sappy_maple_log.json index 73ad04605..c6e57a931 100644 --- a/src/generated/resources/data/create/recipes/cutting/compat/byg/stripped_cherry_wood.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/autumnity/sappy_maple_log.json @@ -3,19 +3,19 @@ "conditions": [ { "type": "forge:mod_loaded", - "modid": "byg" + "modid": "autumnity" } ], "ingredients": [ { - "item": "byg:stripped_cherry_wood" + "item": "autumnity:sappy_maple_log" } ], "processingTime": 50, "results": [ { "count": 6, - "item": "byg:cherry_planks" + "item": "autumnity:maple_planks" } ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/autumnity/sappy_maple_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/autumnity/sappy_maple_wood.json new file mode 100644 index 000000000..6986e9d7d --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/autumnity/sappy_maple_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "autumnity" + } + ], + "ingredients": [ + { + "item": "autumnity:sappy_maple_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "autumnity:sappy_maple_log" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/autumnity/cutting/stripped_maple_log.json b/src/generated/resources/data/create/recipes/cutting/compat/autumnity/stripped_maple_log.json similarity index 73% rename from src/main/resources/data/create/recipes/compat/autumnity/cutting/stripped_maple_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/autumnity/stripped_maple_log.json index 74cfa54af..1257ace06 100644 --- a/src/main/resources/data/create/recipes/compat/autumnity/cutting/stripped_maple_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/autumnity/stripped_maple_log.json @@ -1,21 +1,21 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "autumnity" } ], - "type": "create:cutting", "ingredients": [ { "item": "autumnity:stripped_maple_log" } ], + "processingTime": 50, "results": [ { - "item": "autumnity:maple_planks", - "count": 6 + "count": 6, + "item": "autumnity:maple_planks" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/byg/stripped_cherry_log.json b/src/generated/resources/data/create/recipes/cutting/compat/autumnity/stripped_maple_wood.json similarity index 65% rename from src/generated/resources/data/create/recipes/cutting/compat/byg/stripped_cherry_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/autumnity/stripped_maple_wood.json index 2a43b4fe4..d0b66d0db 100644 --- a/src/generated/resources/data/create/recipes/cutting/compat/byg/stripped_cherry_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/autumnity/stripped_maple_wood.json @@ -3,19 +3,19 @@ "conditions": [ { "type": "forge:mod_loaded", - "modid": "byg" + "modid": "autumnity" } ], "ingredients": [ { - "item": "byg:stripped_cherry_log" + "item": "autumnity:stripped_maple_wood" } ], "processingTime": 50, "results": [ { "count": 6, - "item": "byg:cherry_planks" + "item": "autumnity:maple_planks" } ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/endergetic/poise_stem.json b/src/generated/resources/data/create/recipes/cutting/compat/endergetic/poise_stem.json new file mode 100644 index 000000000..512a1a3b1 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/endergetic/poise_stem.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "endergetic" + } + ], + "ingredients": [ + { + "item": "endergetic:poise_stem" + } + ], + "processingTime": 50, + "results": [ + { + "item": "endergetic:stripped_poise_stem" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/blue_skies/stripped_cherry_log.json b/src/generated/resources/data/create/recipes/cutting/compat/endergetic/stripped_poise_stem.json similarity index 64% rename from src/generated/resources/data/create/recipes/cutting/compat/blue_skies/stripped_cherry_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/endergetic/stripped_poise_stem.json index 25107696c..2e7133393 100644 --- a/src/generated/resources/data/create/recipes/cutting/compat/blue_skies/stripped_cherry_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/endergetic/stripped_poise_stem.json @@ -3,19 +3,19 @@ "conditions": [ { "type": "forge:mod_loaded", - "modid": "blue_skies" + "modid": "endergetic" } ], "ingredients": [ { - "item": "blue_skies:stripped_cherry_log" + "item": "endergetic:stripped_poise_stem" } ], "processingTime": 50, "results": [ { "count": 6, - "item": "blue_skies:cherry_planks" + "item": "endergetic:poise_planks" } ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/forbidden_arcanus/cherrywood.json b/src/generated/resources/data/create/recipes/cutting/compat/forbidden_arcanus/cherrywood.json deleted file mode 100644 index aa4f61729..000000000 --- a/src/generated/resources/data/create/recipes/cutting/compat/forbidden_arcanus/cherrywood.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "create:cutting", - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "forbidden_arcanus" - } - ], - "ingredients": [ - { - "item": "forbidden_arcanus:cherrywood" - } - ], - "processingTime": 50, - "results": [ - { - "item": "forbidden_arcanus:stripped_cherrywood" - } - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/forbidden_arcanus/cherrywood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/forbidden_arcanus/cherrywood_log.json deleted file mode 100644 index 7d6b44ce9..000000000 --- a/src/generated/resources/data/create/recipes/cutting/compat/forbidden_arcanus/cherrywood_log.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "create:cutting", - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "forbidden_arcanus" - } - ], - "ingredients": [ - { - "item": "forbidden_arcanus:cherrywood_log" - } - ], - "processingTime": 50, - "results": [ - { - "item": "forbidden_arcanus:stripped_cherrywood_log" - } - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/forbidden_arcanus/stripped_cherrywood.json b/src/generated/resources/data/create/recipes/cutting/compat/forbidden_arcanus/stripped_cherrywood.json deleted file mode 100644 index 781886ed7..000000000 --- a/src/generated/resources/data/create/recipes/cutting/compat/forbidden_arcanus/stripped_cherrywood.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "create:cutting", - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "forbidden_arcanus" - } - ], - "ingredients": [ - { - "item": "forbidden_arcanus:stripped_cherrywood" - } - ], - "processingTime": 50, - "results": [ - { - "count": 6, - "item": "forbidden_arcanus:cherrywood_planks" - } - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/forbidden_arcanus/stripped_cherrywood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/forbidden_arcanus/stripped_cherrywood_log.json deleted file mode 100644 index 1d2a73111..000000000 --- a/src/generated/resources/data/create/recipes/cutting/compat/forbidden_arcanus/stripped_cherrywood_log.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "create:cutting", - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "forbidden_arcanus" - } - ], - "ingredients": [ - { - "item": "forbidden_arcanus:stripped_cherrywood_log" - } - ], - "processingTime": 50, - "results": [ - { - "count": 6, - "item": "forbidden_arcanus:cherrywood_planks" - } - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/nethers_exoticism/jabuticaba_log.json b/src/generated/resources/data/create/recipes/cutting/compat/nethers_exoticism/jabuticaba_log.json new file mode 100644 index 000000000..67048eb06 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/nethers_exoticism/jabuticaba_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "nethers_exoticism" + } + ], + "ingredients": [ + { + "item": "nethers_exoticism:jabuticaba_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "nethers_exoticism:stripped_jabuticaba_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/nethers_exoticism/ramboutan_log.json b/src/generated/resources/data/create/recipes/cutting/compat/nethers_exoticism/ramboutan_log.json new file mode 100644 index 000000000..ea9a148ef --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/nethers_exoticism/ramboutan_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "nethers_exoticism" + } + ], + "ingredients": [ + { + "item": "nethers_exoticism:ramboutan_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "nethers_exoticism:stripped_ramboutan_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/nethers_exoticism/ramboutan_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/nethers_exoticism/ramboutan_wood.json new file mode 100644 index 000000000..1f2c93927 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/nethers_exoticism/ramboutan_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "nethers_exoticism" + } + ], + "ingredients": [ + { + "item": "nethers_exoticism:ramboutan_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "nethers_exoticism:stripped_ramboutan_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/nethers_exoticism/stripped_jabuticaba_log.json b/src/generated/resources/data/create/recipes/cutting/compat/nethers_exoticism/stripped_jabuticaba_log.json new file mode 100644 index 000000000..39f83ac1f --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/nethers_exoticism/stripped_jabuticaba_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "nethers_exoticism" + } + ], + "ingredients": [ + { + "item": "nethers_exoticism:stripped_jabuticaba_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "nethers_exoticism:jabuticaba_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/nethers_exoticism/stripped_ramboutan_log.json b/src/generated/resources/data/create/recipes/cutting/compat/nethers_exoticism/stripped_ramboutan_log.json new file mode 100644 index 000000000..5d070556c --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/nethers_exoticism/stripped_ramboutan_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "nethers_exoticism" + } + ], + "ingredients": [ + { + "item": "nethers_exoticism:stripped_ramboutan_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "nethers_exoticism:ramboutan_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/nethers_exoticism/stripped_ramboutan_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/nethers_exoticism/stripped_ramboutan_wood.json new file mode 100644 index 000000000..4e27eacc9 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/nethers_exoticism/stripped_ramboutan_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "nethers_exoticism" + } + ], + "ingredients": [ + { + "item": "nethers_exoticism:stripped_ramboutan_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "nethers_exoticism:ramboutan_planks" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/aspen_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/aspen_log.json similarity index 70% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/aspen_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/aspen_log.json index f0f35da28..96d651858 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/aspen_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/aspen_log.json @@ -1,21 +1,20 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:aspen_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:stripped_aspen_log", - "count": 1 + "item": "projectvibrantjourneys:stripped_aspen_log" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/baobab_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/baobab_log.json similarity index 70% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/baobab_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/baobab_log.json index 02808f5ee..421fd2baa 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/baobab_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/baobab_log.json @@ -1,21 +1,20 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:baobab_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:stripped_baobab_log", - "count": 1 + "item": "projectvibrantjourneys:stripped_baobab_log" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/cottonwood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/cottonwood_log.json similarity index 70% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/cottonwood_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/cottonwood_log.json index fee2fb61f..1869db2a8 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/cottonwood_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/cottonwood_log.json @@ -1,21 +1,20 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:cottonwood_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:stripped_cottonwood_log", - "count": 1 + "item": "projectvibrantjourneys:stripped_cottonwood_log" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/fir_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/fir_log.json similarity index 71% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/fir_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/fir_log.json index b133abd81..8aa908d6f 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/fir_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/fir_log.json @@ -1,21 +1,20 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:fir_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:stripped_fir_log", - "count": 1 + "item": "projectvibrantjourneys:stripped_fir_log" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/juniper_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/juniper_log.json similarity index 70% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/juniper_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/juniper_log.json index a9fda021b..b20c8043c 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/juniper_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/juniper_log.json @@ -1,21 +1,20 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:juniper_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:stripped_juniper_log", - "count": 1 + "item": "projectvibrantjourneys:stripped_juniper_log" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/mangrove_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/mangrove_log.json similarity index 70% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/mangrove_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/mangrove_log.json index fc77c21cc..7295bba64 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/mangrove_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/mangrove_log.json @@ -1,21 +1,20 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:mangrove_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:stripped_mangrove_log", - "count": 1 + "item": "projectvibrantjourneys:stripped_mangrove_log" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/maple_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/maple_log.json similarity index 70% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/maple_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/maple_log.json index d9297cf33..23737f6a7 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/maple_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/maple_log.json @@ -1,21 +1,20 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:maple_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:stripped_maple_log", - "count": 1 + "item": "projectvibrantjourneys:stripped_maple_log" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/palm_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/palm_log.json similarity index 70% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/palm_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/palm_log.json index aeefb2a88..f5f63d239 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/palm_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/palm_log.json @@ -1,21 +1,20 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:palm_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:stripped_palm_log", - "count": 1 + "item": "projectvibrantjourneys:stripped_palm_log" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/pine_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/pine_log.json similarity index 70% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/pine_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/pine_log.json index fb27f4696..1d545a3d5 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/pine_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/pine_log.json @@ -1,21 +1,20 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:pine_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:stripped_pine_log", - "count": 1 + "item": "projectvibrantjourneys:stripped_pine_log" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/redwood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/redwood_log.json similarity index 70% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/redwood_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/redwood_log.json index 960514664..15c6ebdf0 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/redwood_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/redwood_log.json @@ -1,21 +1,20 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:redwood_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:stripped_redwood_log", - "count": 1 + "item": "projectvibrantjourneys:stripped_redwood_log" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_aspen_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_aspen_log.json similarity index 72% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_aspen_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_aspen_log.json index de7ab1983..f49f97f13 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_aspen_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_aspen_log.json @@ -1,21 +1,21 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:stripped_aspen_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:aspen_planks", - "count": 6 + "count": 6, + "item": "projectvibrantjourneys:aspen_planks" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_baobab_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_baobab_log.json similarity index 72% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_baobab_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_baobab_log.json index 99b154419..bba250306 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_baobab_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_baobab_log.json @@ -1,21 +1,21 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:stripped_baobab_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:baobab_planks", - "count": 6 + "count": 6, + "item": "projectvibrantjourneys:baobab_planks" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_cottonwood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_cottonwood_log.json similarity index 72% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_cottonwood_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_cottonwood_log.json index fab0bc42a..1d662987e 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_cottonwood_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_cottonwood_log.json @@ -1,21 +1,21 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:stripped_cottonwood_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:cottonwood_planks", - "count": 6 + "count": 6, + "item": "projectvibrantjourneys:cottonwood_planks" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_fir_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_fir_log.json similarity index 72% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_fir_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_fir_log.json index 8bb909152..9f3ecc1a5 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_fir_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_fir_log.json @@ -1,21 +1,21 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:stripped_fir_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:fir_planks", - "count": 6 + "count": 6, + "item": "projectvibrantjourneys:fir_planks" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_juniper_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_juniper_log.json similarity index 72% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_juniper_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_juniper_log.json index 1bf3205e8..303db25a5 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_juniper_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_juniper_log.json @@ -1,21 +1,21 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:stripped_juniper_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:juniper_planks", - "count": 6 + "count": 6, + "item": "projectvibrantjourneys:juniper_planks" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_mangrove_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_mangrove_log.json similarity index 72% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_mangrove_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_mangrove_log.json index 386805201..d6be6b231 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_mangrove_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_mangrove_log.json @@ -1,21 +1,21 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:stripped_mangrove_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:mangrove_planks", - "count": 6 + "count": 6, + "item": "projectvibrantjourneys:mangrove_planks" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_maple_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_maple_log.json similarity index 72% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_maple_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_maple_log.json index d1d630b6a..f6d9e02ec 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_maple_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_maple_log.json @@ -1,21 +1,21 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:stripped_maple_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:maple_planks", - "count": 6 + "count": 6, + "item": "projectvibrantjourneys:maple_planks" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_palm_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_palm_log.json similarity index 72% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_palm_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_palm_log.json index 87ec633da..59e48431b 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_palm_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_palm_log.json @@ -1,21 +1,21 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:stripped_palm_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:palm_planks", - "count": 6 + "count": 6, + "item": "projectvibrantjourneys:palm_planks" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_pine_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_pine_log.json similarity index 72% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_pine_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_pine_log.json index 0a168c62d..8cf9958c9 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_pine_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_pine_log.json @@ -1,21 +1,21 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:stripped_pine_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:pine_planks", - "count": 6 + "count": 6, + "item": "projectvibrantjourneys:pine_planks" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_redwood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_redwood_log.json similarity index 72% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_redwood_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_redwood_log.json index b9ab0965f..e218ce730 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_redwood_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_redwood_log.json @@ -1,21 +1,21 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:stripped_redwood_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:redwood_planks", - "count": 6 + "count": 6, + "item": "projectvibrantjourneys:redwood_planks" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_willow_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_willow_log.json similarity index 72% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_willow_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_willow_log.json index f70c5f243..7bf03755c 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/stripped_willow_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/stripped_willow_log.json @@ -1,21 +1,21 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:stripped_willow_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:willow_planks", - "count": 6 + "count": 6, + "item": "projectvibrantjourneys:willow_planks" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/willow_log.json b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/willow_log.json similarity index 70% rename from src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/willow_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/willow_log.json index dc9b00bde..1ec818a4e 100644 --- a/src/main/resources/data/create/recipes/compat/projectvibrantjourneys/cutting/willow_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/projectvibrantjourneys/willow_log.json @@ -1,21 +1,20 @@ { + "type": "create:cutting", "conditions": [ { "type": "forge:mod_loaded", "modid": "projectvibrantjourneys" } ], - "type": "create:cutting", "ingredients": [ { "item": "projectvibrantjourneys:willow_log" } ], + "processingTime": 50, "results": [ { - "item": "projectvibrantjourneys:stripped_willow_log", - "count": 1 + "item": "projectvibrantjourneys:stripped_willow_log" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/biomesoplenty/stripped_cherry_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/alpha_wood.json similarity index 61% rename from src/generated/resources/data/create/recipes/cutting/compat/biomesoplenty/stripped_cherry_wood.json rename to src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/alpha_wood.json index 8f19cb98e..11c9060c1 100644 --- a/src/generated/resources/data/create/recipes/cutting/compat/biomesoplenty/stripped_cherry_wood.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/alpha_wood.json @@ -3,19 +3,19 @@ "conditions": [ { "type": "forge:mod_loaded", - "modid": "biomesoplenty" + "modid": "regions_unexplored" } ], "ingredients": [ { - "item": "biomesoplenty:stripped_cherry_wood" + "item": "regions_unexplored:alpha_wood" } ], "processingTime": 50, "results": [ { "count": 6, - "item": "biomesoplenty:cherry_planks" + "item": "regions_unexplored:alpha_planks" } ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/ashen_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/ashen_log.json new file mode 100644 index 000000000..9b9ccde88 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/ashen_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:ashen_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_dead_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/ashen_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/ashen_wood.json new file mode 100644 index 000000000..64268cea6 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/ashen_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:ashen_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_dead_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/baobab_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/baobab_log.json new file mode 100644 index 000000000..9e5f04c45 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/baobab_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:baobab_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_baobab_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/baobab_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/baobab_wood.json new file mode 100644 index 000000000..034f89d1d --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/baobab_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:baobab_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_baobab_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/blackwood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/blackwood_log.json new file mode 100644 index 000000000..6c1b24278 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/blackwood_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:blackwood_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_blackwood_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/blackwood_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/blackwood_wood.json new file mode 100644 index 000000000..d91cfe4e3 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/blackwood_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:blackwood_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_blackwood_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/blue_bioshroom_hyphae.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/blue_bioshroom_hyphae.json new file mode 100644 index 000000000..0b3d52d45 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/blue_bioshroom_hyphae.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:blue_bioshroom_hyphae" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_blue_bioshroom_hyphae" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/blue_bioshroom_stem.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/blue_bioshroom_stem.json new file mode 100644 index 000000000..7df03fde0 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/blue_bioshroom_stem.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:blue_bioshroom_stem" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_blue_bioshroom_stem" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/brimwood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/brimwood_log.json new file mode 100644 index 000000000..aa4e9ee8a --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/brimwood_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:brimwood_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_brimwood_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/brimwood_log_magma.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/brimwood_log_magma.json new file mode 100644 index 000000000..73bd278db --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/brimwood_log_magma.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:brimwood_log_magma" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_brimwood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/brimwood_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/brimwood_wood.json new file mode 100644 index 000000000..b36f4e44f --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/brimwood_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:brimwood_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_brimwood_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/cobalt_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/cobalt_log.json new file mode 100644 index 000000000..f5641872a --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/cobalt_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:cobalt_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_cobalt_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/cobalt_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/cobalt_wood.json new file mode 100644 index 000000000..5f96985fd --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/cobalt_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:cobalt_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_cobalt_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/cypress_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/cypress_log.json new file mode 100644 index 000000000..e50d93184 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/cypress_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:cypress_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_cypress_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/cypress_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/cypress_wood.json new file mode 100644 index 000000000..a174c2e27 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/cypress_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:cypress_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_cypress_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/dead_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/dead_log.json new file mode 100644 index 000000000..4e4aba0c6 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/dead_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:dead_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_dead_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/dead_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/dead_wood.json new file mode 100644 index 000000000..f4332d2f5 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/dead_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:dead_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_dead_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/eucalyptus_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/eucalyptus_log.json new file mode 100644 index 000000000..2dff2a3c4 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/eucalyptus_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:eucalyptus_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_eucalyptus_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/eucalyptus_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/eucalyptus_wood.json new file mode 100644 index 000000000..ebdd4b728 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/eucalyptus_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:eucalyptus_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_eucalyptus_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/green_bioshroom_hyphae.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/green_bioshroom_hyphae.json new file mode 100644 index 000000000..564150457 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/green_bioshroom_hyphae.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:green_bioshroom_hyphae" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_green_bioshroom_hyphae" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/green_bioshroom_stem.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/green_bioshroom_stem.json new file mode 100644 index 000000000..234350483 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/green_bioshroom_stem.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:green_bioshroom_stem" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_green_bioshroom_stem" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/joshua_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/joshua_log.json new file mode 100644 index 000000000..943136f33 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/joshua_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:joshua_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_joshua_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/joshua_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/joshua_wood.json new file mode 100644 index 000000000..c574d98ae --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/joshua_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:joshua_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_joshua_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/kapok_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/kapok_log.json new file mode 100644 index 000000000..348e47085 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/kapok_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:kapok_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_kapok_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/kapok_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/kapok_wood.json new file mode 100644 index 000000000..18e2c1e26 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/kapok_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:kapok_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_kapok_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/larch_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/larch_log.json new file mode 100644 index 000000000..58907cf1a --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/larch_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:larch_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_larch_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/larch_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/larch_wood.json new file mode 100644 index 000000000..33b9b2942 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/larch_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:larch_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_larch_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/magnolia_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/magnolia_log.json new file mode 100644 index 000000000..3cb32bcdd --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/magnolia_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:magnolia_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_magnolia_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/magnolia_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/magnolia_wood.json new file mode 100644 index 000000000..b5e032f81 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/magnolia_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:magnolia_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_magnolia_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/maple_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/maple_log.json new file mode 100644 index 000000000..cdef2d267 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/maple_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:maple_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_maple_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/maple_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/maple_wood.json new file mode 100644 index 000000000..05e1fd89b --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/maple_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:maple_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_maple_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/mauve_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/mauve_log.json new file mode 100644 index 000000000..1d0ac841d --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/mauve_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:mauve_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_mauve_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/mauve_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/mauve_wood.json new file mode 100644 index 000000000..14b4dbd83 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/mauve_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:mauve_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_mauve_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/palm_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/palm_log.json new file mode 100644 index 000000000..922d92e8e --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/palm_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:palm_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_palm_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/palm_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/palm_wood.json new file mode 100644 index 000000000..023a3ff25 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/palm_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:palm_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_palm_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/pine_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/pine_log.json new file mode 100644 index 000000000..afcb9dc62 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/pine_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:pine_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_pine_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/pine_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/pine_wood.json new file mode 100644 index 000000000..6e288f7c2 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/pine_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:pine_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_pine_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/pink_bioshroom_hyphae.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/pink_bioshroom_hyphae.json new file mode 100644 index 000000000..a5a5291ad --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/pink_bioshroom_hyphae.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:pink_bioshroom_hyphae" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_pink_bioshroom_hyphae" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/pink_bioshroom_stem.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/pink_bioshroom_stem.json new file mode 100644 index 000000000..19a098d28 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/pink_bioshroom_stem.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:pink_bioshroom_stem" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_pink_bioshroom_stem" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/redwood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/redwood_log.json new file mode 100644 index 000000000..31008d1ed --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/redwood_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:redwood_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_redwood_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/redwood_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/redwood_wood.json new file mode 100644 index 000000000..c9c7162dd --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/redwood_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:redwood_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_redwood_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/silver_birch_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/silver_birch_log.json new file mode 100644 index 000000000..7e7910474 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/silver_birch_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:silver_birch_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "minecraft:stripped_birch_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/silver_birch_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/silver_birch_wood.json new file mode 100644 index 000000000..293d333a5 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/silver_birch_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:silver_birch_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "minecraft:stripped_birch_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/socotra_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/socotra_log.json new file mode 100644 index 000000000..d22f1fd6b --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/socotra_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:socotra_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_socotra_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/socotra_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/socotra_wood.json new file mode 100644 index 000000000..532703122 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/socotra_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:socotra_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_socotra_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_baobab_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_baobab_log.json new file mode 100644 index 000000000..01b71b9e0 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_baobab_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_baobab_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:baobab_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_baobab_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_baobab_wood.json new file mode 100644 index 000000000..01bda3ec0 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_baobab_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_baobab_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:baobab_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_blackwood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_blackwood_log.json new file mode 100644 index 000000000..9a2d679f1 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_blackwood_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_blackwood_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:blackwood_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_blackwood_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_blackwood_wood.json new file mode 100644 index 000000000..917489959 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_blackwood_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_blackwood_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:blackwood_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_blue_bioshroom_hyphae.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_blue_bioshroom_hyphae.json new file mode 100644 index 000000000..844eaa8c2 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_blue_bioshroom_hyphae.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_blue_bioshroom_hyphae" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:blue_bioshroom_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_blue_bioshroom_stem.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_blue_bioshroom_stem.json new file mode 100644 index 000000000..855ce4cd5 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_blue_bioshroom_stem.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_blue_bioshroom_stem" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:blue_bioshroom_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_brimwood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_brimwood_log.json new file mode 100644 index 000000000..314a6de49 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_brimwood_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_brimwood_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:brimwood_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_brimwood_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_brimwood_wood.json new file mode 100644 index 000000000..e98b1096f --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_brimwood_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_brimwood_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:brimwood_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_cobalt_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_cobalt_log.json new file mode 100644 index 000000000..2d90168d8 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_cobalt_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_cobalt_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:cobalt_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_cobalt_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_cobalt_wood.json new file mode 100644 index 000000000..a77efb06b --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_cobalt_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_cobalt_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:cobalt_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_cypress_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_cypress_log.json new file mode 100644 index 000000000..1e77886df --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_cypress_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_cypress_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:cypress_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_cypress_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_cypress_wood.json new file mode 100644 index 000000000..caf0f65cd --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_cypress_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_cypress_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:cypress_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_dead_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_dead_log.json new file mode 100644 index 000000000..c7361c156 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_dead_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_dead_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:dead_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_dead_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_dead_wood.json new file mode 100644 index 000000000..c36ee981a --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_dead_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_dead_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:dead_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_eucalyptus_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_eucalyptus_log.json new file mode 100644 index 000000000..e74e93eb2 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_eucalyptus_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_eucalyptus_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:eucalyptus_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_eucalyptus_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_eucalyptus_wood.json new file mode 100644 index 000000000..118682cd1 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_eucalyptus_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_eucalyptus_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:eucalyptus_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_green_bioshroom_hyphae.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_green_bioshroom_hyphae.json new file mode 100644 index 000000000..636f61ba2 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_green_bioshroom_hyphae.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_green_bioshroom_hyphae" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:green_bioshroom_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_green_bioshroom_stem.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_green_bioshroom_stem.json new file mode 100644 index 000000000..d39b9c4c9 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_green_bioshroom_stem.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_green_bioshroom_stem" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:green_bioshroom_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_joshua_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_joshua_log.json new file mode 100644 index 000000000..96f010d62 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_joshua_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_joshua_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:joshua_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_joshua_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_joshua_wood.json new file mode 100644 index 000000000..117837e72 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_joshua_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_joshua_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:joshua_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_kapok_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_kapok_log.json new file mode 100644 index 000000000..b315cd0df --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_kapok_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_kapok_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:kapok_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_kapok_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_kapok_wood.json new file mode 100644 index 000000000..32714d2e2 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_kapok_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_kapok_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:kapok_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_larch_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_larch_log.json new file mode 100644 index 000000000..f87736664 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_larch_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_larch_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:larch_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_larch_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_larch_wood.json new file mode 100644 index 000000000..ec88a4669 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_larch_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_larch_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:larch_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_magnolia_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_magnolia_log.json new file mode 100644 index 000000000..66d70dbba --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_magnolia_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_magnolia_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:magnolia_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_magnolia_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_magnolia_wood.json new file mode 100644 index 000000000..c7e3952d3 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_magnolia_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_magnolia_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:magnolia_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_maple_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_maple_log.json new file mode 100644 index 000000000..de7f7a4cc --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_maple_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_maple_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:maple_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_maple_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_maple_wood.json new file mode 100644 index 000000000..e619940c2 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_maple_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_maple_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:maple_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_mauve_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_mauve_log.json new file mode 100644 index 000000000..9eea85ca8 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_mauve_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_mauve_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:mauve_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_mauve_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_mauve_wood.json new file mode 100644 index 000000000..fb1ac0903 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_mauve_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_mauve_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:mauve_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_palm_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_palm_log.json new file mode 100644 index 000000000..94f43d9a9 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_palm_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_palm_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:palm_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_palm_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_palm_wood.json new file mode 100644 index 000000000..67c9c5309 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_palm_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_palm_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:palm_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_pine_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_pine_log.json new file mode 100644 index 000000000..8fdf7ffba --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_pine_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_pine_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:pine_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_pine_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_pine_wood.json new file mode 100644 index 000000000..046785afb --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_pine_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_pine_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:pine_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_pink_bioshroom_hyphae.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_pink_bioshroom_hyphae.json new file mode 100644 index 000000000..f40e22a95 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_pink_bioshroom_hyphae.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_pink_bioshroom_hyphae" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:pink_bioshroom_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_pink_bioshroom_stem.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_pink_bioshroom_stem.json new file mode 100644 index 000000000..d04fec240 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_pink_bioshroom_stem.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_pink_bioshroom_stem" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:pink_bioshroom_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_redwood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_redwood_log.json new file mode 100644 index 000000000..04125ad33 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_redwood_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_redwood_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:redwood_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_redwood_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_redwood_wood.json new file mode 100644 index 000000000..326f0a86f --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_redwood_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_redwood_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:redwood_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_socotra_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_socotra_log.json new file mode 100644 index 000000000..eed513e95 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_socotra_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_socotra_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:socotra_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_socotra_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_socotra_wood.json new file mode 100644 index 000000000..7d82d9483 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_socotra_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_socotra_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:socotra_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_willow_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_willow_log.json new file mode 100644 index 000000000..c86252926 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_willow_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_willow_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:willow_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_willow_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_willow_wood.json new file mode 100644 index 000000000..09554a507 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_willow_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_willow_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:willow_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_yellow_bioshroom_hyphae.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_yellow_bioshroom_hyphae.json new file mode 100644 index 000000000..b9d2efd2e --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_yellow_bioshroom_hyphae.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_yellow_bioshroom_hyphae" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:yellow_bioshroom_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_yellow_bioshroom_stem.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_yellow_bioshroom_stem.json new file mode 100644 index 000000000..ef5af31c2 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/stripped_yellow_bioshroom_stem.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:stripped_yellow_bioshroom_stem" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "regions_unexplored:yellow_bioshroom_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/willow_log.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/willow_log.json new file mode 100644 index 000000000..2b368bc07 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/willow_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:willow_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_willow_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/willow_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/willow_wood.json new file mode 100644 index 000000000..1ccced84f --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/willow_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:willow_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_willow_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/yellow_bioshroom_hyphae.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/yellow_bioshroom_hyphae.json new file mode 100644 index 000000000..17320770f --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/yellow_bioshroom_hyphae.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:yellow_bioshroom_hyphae" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_yellow_bioshroom_hyphae" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/yellow_bioshroom_stem.json b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/yellow_bioshroom_stem.json new file mode 100644 index 000000000..75ff49841 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/regions_unexplored/yellow_bioshroom_stem.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:yellow_bioshroom_stem" + } + ], + "processingTime": 50, + "results": [ + { + "item": "regions_unexplored:stripped_yellow_bioshroom_stem" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/the_vault/chromatic_log.json b/src/generated/resources/data/create/recipes/cutting/compat/the_vault/chromatic_log.json new file mode 100644 index 000000000..a78141a80 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/the_vault/chromatic_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "the_vault" + } + ], + "ingredients": [ + { + "item": "the_vault:chromatic_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "the_vault:stripped_chromatic_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/the_vault/driftwood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/the_vault/driftwood_log.json new file mode 100644 index 000000000..32604c3dc --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/the_vault/driftwood_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "the_vault" + } + ], + "ingredients": [ + { + "item": "the_vault:driftwood_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "the_vault:stripped_driftwood_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/the_vault/overgrown_wooden_log.json b/src/generated/resources/data/create/recipes/cutting/compat/the_vault/overgrown_wooden_log.json new file mode 100644 index 000000000..2f920cc0f --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/the_vault/overgrown_wooden_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "the_vault" + } + ], + "ingredients": [ + { + "item": "the_vault:overgrown_wooden_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "the_vault:stripped_overgrown_wooden_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/the_vault/stripped_chromatic_log.json b/src/generated/resources/data/create/recipes/cutting/compat/the_vault/stripped_chromatic_log.json new file mode 100644 index 000000000..6f2a23b23 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/the_vault/stripped_chromatic_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "the_vault" + } + ], + "ingredients": [ + { + "item": "the_vault:stripped_chromatic_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 4, + "item": "the_vault:chromatic_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/the_vault/stripped_driftwood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/the_vault/stripped_driftwood_log.json new file mode 100644 index 000000000..801f599b0 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/the_vault/stripped_driftwood_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "the_vault" + } + ], + "ingredients": [ + { + "item": "the_vault:stripped_driftwood_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 4, + "item": "the_vault:driftwood_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/the_vault/stripped_overgrown_wooden_log.json b/src/generated/resources/data/create/recipes/cutting/compat/the_vault/stripped_overgrown_wooden_log.json new file mode 100644 index 000000000..22849dec9 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/the_vault/stripped_overgrown_wooden_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "the_vault" + } + ], + "ingredients": [ + { + "item": "the_vault:stripped_overgrown_wooden_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 4, + "item": "the_vault:overgrown_wooden_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/the_vault/stripped_wooden_log.json b/src/generated/resources/data/create/recipes/cutting/compat/the_vault/stripped_wooden_log.json new file mode 100644 index 000000000..16e1b0231 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/the_vault/stripped_wooden_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "the_vault" + } + ], + "ingredients": [ + { + "item": "the_vault:stripped_wooden_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 4, + "item": "the_vault:wooden_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/byg/cherry_log.json b/src/generated/resources/data/create/recipes/cutting/compat/the_vault/wooden_log.json similarity index 63% rename from src/generated/resources/data/create/recipes/cutting/compat/byg/cherry_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/the_vault/wooden_log.json index a11961c6d..afc355e09 100644 --- a/src/generated/resources/data/create/recipes/cutting/compat/byg/cherry_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/the_vault/wooden_log.json @@ -3,18 +3,18 @@ "conditions": [ { "type": "forge:mod_loaded", - "modid": "byg" + "modid": "the_vault" } ], "ingredients": [ { - "item": "byg:cherry_log" + "item": "the_vault:wooden_log" } ], "processingTime": 50, "results": [ { - "item": "byg:stripped_cherry_log" + "item": "the_vault:stripped_wooden_log" } ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/driftwood.json b/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/driftwood.json new file mode 100644 index 000000000..e6a84a7d6 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/driftwood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "upgrade_aquatic" + } + ], + "ingredients": [ + { + "item": "upgrade_aquatic:driftwood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "upgrade_aquatic:strippped_driftwood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/driftwood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/driftwood_log.json new file mode 100644 index 000000000..d8860f677 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/driftwood_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "upgrade_aquatic" + } + ], + "ingredients": [ + { + "item": "upgrade_aquatic:driftwood_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "upgrade_aquatic:stripped_driftwood_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/river_log.json b/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/river_log.json new file mode 100644 index 000000000..08073a48f --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/river_log.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "upgrade_aquatic" + } + ], + "ingredients": [ + { + "item": "upgrade_aquatic:river_log" + } + ], + "processingTime": 50, + "results": [ + { + "item": "upgrade_aquatic:stripped_river_log" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/river_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/river_wood.json new file mode 100644 index 000000000..2b5f0b892 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/river_wood.json @@ -0,0 +1,20 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "upgrade_aquatic" + } + ], + "ingredients": [ + { + "item": "upgrade_aquatic:river_wood" + } + ], + "processingTime": 50, + "results": [ + { + "item": "upgrade_aquatic:stripped_river_wood" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/stripped_driftwood_log.json b/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/stripped_driftwood_log.json new file mode 100644 index 000000000..61e26e351 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/stripped_driftwood_log.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "upgrade_aquatic" + } + ], + "ingredients": [ + { + "item": "upgrade_aquatic:stripped_driftwood_log" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "upgrade_aquatic:driftwood_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/biomesoplenty/stripped_cherry_log.json b/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/stripped_river_log.json similarity index 61% rename from src/generated/resources/data/create/recipes/cutting/compat/biomesoplenty/stripped_cherry_log.json rename to src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/stripped_river_log.json index aa9d207ae..6f7911960 100644 --- a/src/generated/resources/data/create/recipes/cutting/compat/biomesoplenty/stripped_cherry_log.json +++ b/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/stripped_river_log.json @@ -3,19 +3,19 @@ "conditions": [ { "type": "forge:mod_loaded", - "modid": "biomesoplenty" + "modid": "upgrade_aquatic" } ], "ingredients": [ { - "item": "biomesoplenty:stripped_cherry_log" + "item": "upgrade_aquatic:stripped_river_log" } ], "processingTime": 50, "results": [ { "count": 6, - "item": "biomesoplenty:cherry_planks" + "item": "upgrade_aquatic:river_planks" } ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/stripped_river_wood.json b/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/stripped_river_wood.json new file mode 100644 index 000000000..7ae737510 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/stripped_river_wood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "upgrade_aquatic" + } + ], + "ingredients": [ + { + "item": "upgrade_aquatic:stripped_river_wood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "upgrade_aquatic:river_planks" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/strippped_driftwood.json b/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/strippped_driftwood.json new file mode 100644 index 000000000..5043703c7 --- /dev/null +++ b/src/generated/resources/data/create/recipes/cutting/compat/upgrade_aquatic/strippped_driftwood.json @@ -0,0 +1,21 @@ +{ + "type": "create:cutting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "upgrade_aquatic" + } + ], + "ingredients": [ + { + "item": "upgrade_aquatic:strippped_driftwood" + } + ], + "processingTime": 50, + "results": [ + { + "count": 6, + "item": "upgrade_aquatic:driftwood_planks" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/alexsmobs/emptying/lava_bottle.json b/src/generated/resources/data/create/recipes/emptying/compat/alexsmobs/lava_bottle.json similarity index 84% rename from src/main/resources/data/create/recipes/compat/alexsmobs/emptying/lava_bottle.json rename to src/generated/resources/data/create/recipes/emptying/compat/alexsmobs/lava_bottle.json index bf3ed681e..d96ab8de4 100644 --- a/src/main/resources/data/create/recipes/compat/alexsmobs/emptying/lava_bottle.json +++ b/src/generated/resources/data/create/recipes/emptying/compat/alexsmobs/lava_bottle.json @@ -1,11 +1,11 @@ { + "type": "create:emptying", "conditions": [ { "type": "forge:mod_loaded", "modid": "alexsmobs" } ], - "type": "create:emptying", "ingredients": [ { "item": "alexsmobs:lava_bottle" @@ -16,8 +16,8 @@ "item": "minecraft:glass_bottle" }, { - "fluid": "minecraft:lava", - "amount": 250 + "amount": 250, + "fluid": "minecraft:lava" } ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/neapolitan/emptying/milk_bottle.json b/src/generated/resources/data/create/recipes/emptying/compat/neapolitan/milk_bottle.json similarity index 71% rename from src/main/resources/data/create/recipes/compat/neapolitan/emptying/milk_bottle.json rename to src/generated/resources/data/create/recipes/emptying/compat/neapolitan/milk_bottle.json index 6248dee4b..dcc62d5f8 100644 --- a/src/main/resources/data/create/recipes/compat/neapolitan/emptying/milk_bottle.json +++ b/src/generated/resources/data/create/recipes/emptying/compat/neapolitan/milk_bottle.json @@ -1,14 +1,14 @@ { + "type": "create:emptying", "conditions": [ { "type": "forge:mod_loaded", "modid": "neapolitan" } ], - "type": "create:emptying", "ingredients": [ { - "item": "neapolitan:milk_bottle" + "item": "farmersdelight:milk_bottle" } ], "results": [ @@ -16,8 +16,8 @@ "item": "minecraft:glass_bottle" }, { - "fluid": "minecraft:milk", - "amount": 250 + "amount": 250, + "fluid": "minecraft:milk" } ] -} +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/filling/compat/aether/aether_grass_block.json b/src/generated/resources/data/create/recipes/filling/compat/aether/aether_grass_block.json new file mode 100644 index 000000000..5c3a7f6ad --- /dev/null +++ b/src/generated/resources/data/create/recipes/filling/compat/aether/aether_grass_block.json @@ -0,0 +1,24 @@ +{ + "type": "create:filling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "aether" + } + ], + "ingredients": [ + { + "item": "aether:aether_dirt" + }, + { + "amount": 500, + "fluid": "minecraft:water", + "nbt": {} + } + ], + "results": [ + { + "item": "aether:aether_grass_block" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/alexsmobs/filling/lava_bottle.json b/src/generated/resources/data/create/recipes/filling/compat/alexsmobs/lava_bottle.json similarity index 89% rename from src/main/resources/data/create/recipes/compat/alexsmobs/filling/lava_bottle.json rename to src/generated/resources/data/create/recipes/filling/compat/alexsmobs/lava_bottle.json index a32b4262b..0d621481e 100644 --- a/src/main/resources/data/create/recipes/compat/alexsmobs/filling/lava_bottle.json +++ b/src/generated/resources/data/create/recipes/filling/compat/alexsmobs/lava_bottle.json @@ -1,18 +1,19 @@ { + "type": "create:filling", "conditions": [ { "type": "forge:mod_loaded", "modid": "alexsmobs" } ], - "type": "create:filling", "ingredients": [ { "item": "minecraft:glass_bottle" }, { + "amount": 250, "fluid": "minecraft:lava", - "amount": 250 + "nbt": {} } ], "results": [ diff --git a/src/main/resources/data/create/recipes/compat/byg/filling/lush_grass_block.json b/src/generated/resources/data/create/recipes/filling/compat/byg/lush_grass_block.json similarity index 86% rename from src/main/resources/data/create/recipes/compat/byg/filling/lush_grass_block.json rename to src/generated/resources/data/create/recipes/filling/compat/byg/lush_grass_block.json index d7d76a5a0..6393480cd 100644 --- a/src/main/resources/data/create/recipes/compat/byg/filling/lush_grass_block.json +++ b/src/generated/resources/data/create/recipes/filling/compat/byg/lush_grass_block.json @@ -1,19 +1,19 @@ { + "type": "create:filling", "conditions": [ - { + { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:filling", "ingredients": [ { "item": "byg:lush_dirt" }, { + "amount": 500, "fluid": "minecraft:water", - "nbt": {}, - "amount": 500 + "nbt": {} } ], "results": [ diff --git a/src/main/resources/data/create/recipes/compat/neapolitan/filling/milk_bottle.json b/src/generated/resources/data/create/recipes/filling/compat/neapolitan/milk_bottle.json similarity index 84% rename from src/main/resources/data/create/recipes/compat/neapolitan/filling/milk_bottle.json rename to src/generated/resources/data/create/recipes/filling/compat/neapolitan/milk_bottle.json index 42ed87174..6c48da273 100644 --- a/src/main/resources/data/create/recipes/compat/neapolitan/filling/milk_bottle.json +++ b/src/generated/resources/data/create/recipes/filling/compat/neapolitan/milk_bottle.json @@ -1,18 +1,18 @@ { + "type": "create:filling", "conditions": [ { "type": "forge:mod_loaded", "modid": "neapolitan" } ], - "type": "create:filling", "ingredients": [ { "item": "minecraft:glass_bottle" }, { - "fluidTag": "forge:milk", - "amount": 250 + "amount": 250, + "fluidTag": "forge:milk" } ], "results": [ diff --git a/src/generated/resources/data/create/recipes/filling/compat/regions_unexplored/peat_grass_block.json b/src/generated/resources/data/create/recipes/filling/compat/regions_unexplored/peat_grass_block.json new file mode 100644 index 000000000..ba8ea3ce3 --- /dev/null +++ b/src/generated/resources/data/create/recipes/filling/compat/regions_unexplored/peat_grass_block.json @@ -0,0 +1,24 @@ +{ + "type": "create:filling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:peat_dirt" + }, + { + "amount": 500, + "fluid": "minecraft:water", + "nbt": {} + } + ], + "results": [ + { + "item": "regions_unexplored:peat_grass_block" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/filling/compat/regions_unexplored/silt_grass_block.json b/src/generated/resources/data/create/recipes/filling/compat/regions_unexplored/silt_grass_block.json new file mode 100644 index 000000000..4f1bcade2 --- /dev/null +++ b/src/generated/resources/data/create/recipes/filling/compat/regions_unexplored/silt_grass_block.json @@ -0,0 +1,24 @@ +{ + "type": "create:filling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:silt_dirt" + }, + { + "amount": 500, + "fluid": "minecraft:water", + "nbt": {} + } + ], + "results": [ + { + "item": "regions_unexplored:silt_grass_block" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/filling/compat/vampirism/cursed_grass_block.json b/src/generated/resources/data/create/recipes/filling/compat/vampirism/cursed_grass_block.json new file mode 100644 index 000000000..cbeff40a9 --- /dev/null +++ b/src/generated/resources/data/create/recipes/filling/compat/vampirism/cursed_grass_block.json @@ -0,0 +1,24 @@ +{ + "type": "create:filling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "vampirism" + } + ], + "ingredients": [ + { + "item": "vampirism:cursed_dirt" + }, + { + "amount": 500, + "fluid": "minecraft:water", + "nbt": {} + } + ], + "results": [ + { + "item": "vampirism:cursed_grass_block" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/farmersdelight/haunting/rotten_tomato.json b/src/generated/resources/data/create/recipes/haunting/compat/farmersdelight/rotten_tomato.json similarity index 100% rename from src/main/resources/data/create/recipes/compat/farmersdelight/haunting/rotten_tomato.json rename to src/generated/resources/data/create/recipes/haunting/compat/farmersdelight/rotten_tomato.json index 06b30d74a..e1eb36c3f 100644 --- a/src/main/resources/data/create/recipes/compat/farmersdelight/haunting/rotten_tomato.json +++ b/src/generated/resources/data/create/recipes/haunting/compat/farmersdelight/rotten_tomato.json @@ -1,11 +1,11 @@ { + "type": "create:haunting", "conditions": [ { "type": "forge:mod_loaded", "modid": "farmersdelight" } ], - "type": "create:haunting", "ingredients": [ { "item": "farmersdelight:tomato" diff --git a/src/generated/resources/data/create/recipes/haunting/compat/hauntedharvest/rotten_apple.json b/src/generated/resources/data/create/recipes/haunting/compat/hauntedharvest/rotten_apple.json new file mode 100644 index 000000000..a67d2e87a --- /dev/null +++ b/src/generated/resources/data/create/recipes/haunting/compat/hauntedharvest/rotten_apple.json @@ -0,0 +1,19 @@ +{ + "type": "create:haunting", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "hauntedharvest" + } + ], + "ingredients": [ + { + "item": "minecraft:apple" + } + ], + "results": [ + { + "item": "hauntedharvest:rotten_apple" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/botania/milling/red_petal.json b/src/generated/resources/data/create/recipes/milling/compat/ae2/certus_quartz.json similarity index 53% rename from src/main/resources/data/create/recipes/compat/botania/milling/red_petal.json rename to src/generated/resources/data/create/recipes/milling/compat/ae2/certus_quartz.json index 7e909f52d..de4c11ee3 100644 --- a/src/main/resources/data/create/recipes/compat/botania/milling/red_petal.json +++ b/src/generated/resources/data/create/recipes/milling/compat/ae2/certus_quartz.json @@ -1,21 +1,20 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", - "modid": "botania" + "modid": "ae2" } ], - "type": "create:milling", "ingredients": [ { - "tag": "botania:petals/red" + "tag": "forge:gems/certus_quartz" } ], + "processingTime": 200, "results": [ { - "item": "minecraft:red_dye", - "count": 1 + "item": "ae2:certus_quartz_dust" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/botania/milling/cyan_petal.json b/src/generated/resources/data/create/recipes/milling/compat/ae2/ender_pearl.json similarity index 53% rename from src/main/resources/data/create/recipes/compat/botania/milling/cyan_petal.json rename to src/generated/resources/data/create/recipes/milling/compat/ae2/ender_pearl.json index 8fc4ffcf5..932323a3e 100644 --- a/src/main/resources/data/create/recipes/compat/botania/milling/cyan_petal.json +++ b/src/generated/resources/data/create/recipes/milling/compat/ae2/ender_pearl.json @@ -1,21 +1,20 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", - "modid": "botania" + "modid": "ae2" } ], - "type": "create:milling", "ingredients": [ { - "tag": "botania:petals/cyan" + "tag": "forge:ender_pearls" } ], + "processingTime": 100, "results": [ { - "item": "minecraft:cyan_dye", - "count": 1 + "item": "ae2:ender_dust" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/ae2/milling/fluix_crystal.json b/src/generated/resources/data/create/recipes/milling/compat/ae2/fluix_crystal.json similarity index 73% rename from src/main/resources/data/create/recipes/compat/ae2/milling/fluix_crystal.json rename to src/generated/resources/data/create/recipes/milling/compat/ae2/fluix_crystal.json index 5c414e995..404fb24ee 100644 --- a/src/main/resources/data/create/recipes/compat/ae2/milling/fluix_crystal.json +++ b/src/generated/resources/data/create/recipes/milling/compat/ae2/fluix_crystal.json @@ -1,21 +1,20 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "ae2" } ], - "type": "create:milling", "ingredients": [ { "item": "ae2:fluix_crystal" } ], + "processingTime": 200, "results": [ { - "item": "ae2:fluix_dust", - "count": 1 + "item": "ae2:fluix_dust" } - ], - "processingTime": 200 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/botania/milling/gray_petal.json b/src/generated/resources/data/create/recipes/milling/compat/ae2/sky_stone_block.json similarity index 53% rename from src/main/resources/data/create/recipes/compat/botania/milling/gray_petal.json rename to src/generated/resources/data/create/recipes/milling/compat/ae2/sky_stone_block.json index 909578920..99cb0a1b7 100644 --- a/src/main/resources/data/create/recipes/compat/botania/milling/gray_petal.json +++ b/src/generated/resources/data/create/recipes/milling/compat/ae2/sky_stone_block.json @@ -1,21 +1,20 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", - "modid": "botania" + "modid": "ae2" } ], - "type": "create:milling", "ingredients": [ { - "tag": "botania:petals/gray" + "item": "ae2:sky_stone_block" } ], + "processingTime": 300, "results": [ { - "item": "minecraft:gray_dye", - "count": 1 + "item": "ae2:sky_dust" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/atmospheric/milling/gilia.json b/src/generated/resources/data/create/recipes/milling/compat/atmospheric/gilia.json similarity index 55% rename from src/main/resources/data/create/recipes/compat/atmospheric/milling/gilia.json rename to src/generated/resources/data/create/recipes/milling/compat/atmospheric/gilia.json index 12d375350..6b69ae4a3 100644 --- a/src/main/resources/data/create/recipes/compat/atmospheric/milling/gilia.json +++ b/src/generated/resources/data/create/recipes/milling/compat/atmospheric/gilia.json @@ -1,31 +1,30 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "atmospheric" } ], - "type": "create:milling", "ingredients": [ { "item": "atmospheric:gilia" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:purple_dye", - "count": 2 - }, - { - "item": "minecraft:magenta_dye", "count": 2, - "chance": 0.1 + "item": "minecraft:purple_dye" }, { - "item": "minecraft:pink_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "count": 2, + "item": "minecraft:magenta_dye" + }, + { + "chance": 0.1, + "item": "minecraft:pink_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/atmospheric/milling/hot_monkey_brush.json b/src/generated/resources/data/create/recipes/milling/compat/atmospheric/hot_monkey_brush.json similarity index 52% rename from src/main/resources/data/create/recipes/compat/atmospheric/milling/hot_monkey_brush.json rename to src/generated/resources/data/create/recipes/milling/compat/atmospheric/hot_monkey_brush.json index 5f9d99cce..4d6ff9cb6 100644 --- a/src/main/resources/data/create/recipes/compat/atmospheric/milling/hot_monkey_brush.json +++ b/src/generated/resources/data/create/recipes/milling/compat/atmospheric/hot_monkey_brush.json @@ -1,31 +1,29 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "atmospheric" } ], - "type": "create:milling", "ingredients": [ { "item": "atmospheric:hot_monkey_brush" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:orange_dye", - "count": 2 + "count": 2, + "item": "minecraft:orange_dye" }, { - "item": "minecraft:red_dye", - "count": 1, - "chance": 0.05 + "chance": 0.05, + "item": "minecraft:red_dye" }, { - "item": "minecraft:yellow_dye", - "count": 1, - "chance": 0.05 + "chance": 0.05, + "item": "minecraft:yellow_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/atmospheric/milling/scalding_monkey_brush.json b/src/generated/resources/data/create/recipes/milling/compat/atmospheric/scalding_monkey_brush.json similarity index 57% rename from src/main/resources/data/create/recipes/compat/atmospheric/milling/scalding_monkey_brush.json rename to src/generated/resources/data/create/recipes/milling/compat/atmospheric/scalding_monkey_brush.json index 171991b0d..8fad06443 100644 --- a/src/main/resources/data/create/recipes/compat/atmospheric/milling/scalding_monkey_brush.json +++ b/src/generated/resources/data/create/recipes/milling/compat/atmospheric/scalding_monkey_brush.json @@ -1,31 +1,30 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "atmospheric" } ], - "type": "create:milling", "ingredients": [ { "item": "atmospheric:scalding_monkey_brush" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:red_dye", - "count": 2 - }, - { - "item": "minecraft:red_dye", "count": 2, - "chance": 0.1 + "item": "minecraft:red_dye" }, { - "item": "minecraft:orange_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "count": 2, + "item": "minecraft:red_dye" + }, + { + "chance": 0.1, + "item": "minecraft:orange_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/atmospheric/warm_monkey_brush.json b/src/generated/resources/data/create/recipes/milling/compat/atmospheric/warm_monkey_brush.json new file mode 100644 index 000000000..20d5b76e6 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/atmospheric/warm_monkey_brush.json @@ -0,0 +1,30 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "atmospheric" + } + ], + "ingredients": [ + { + "item": "atmospheric:scalding_monkey_brush" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:yellow_dye" + }, + { + "chance": 0.1, + "count": 2, + "item": "minecraft:yellow_dye" + }, + { + "chance": 0.1, + "item": "minecraft:orange_dye" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/atmospheric/milling/yucca_flower.json b/src/generated/resources/data/create/recipes/milling/compat/atmospheric/yucca_flower.json similarity index 60% rename from src/main/resources/data/create/recipes/compat/atmospheric/milling/yucca_flower.json rename to src/generated/resources/data/create/recipes/milling/compat/atmospheric/yucca_flower.json index 2dad00a71..6ffacd6b2 100644 --- a/src/main/resources/data/create/recipes/compat/atmospheric/milling/yucca_flower.json +++ b/src/generated/resources/data/create/recipes/milling/compat/atmospheric/yucca_flower.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "atmospheric" } ], - "type": "create:milling", "ingredients": [ { "item": "atmospheric:yucca_flower" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:light_gray_dye", - "count": 2 + "count": 2, + "item": "minecraft:light_gray_dye" }, { - "item": "minecraft:white_dye", - "count": 1, - "chance": 0.05 + "chance": 0.05, + "item": "minecraft:white_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/autumnity/milling/autumn_crocus.json b/src/generated/resources/data/create/recipes/milling/compat/autumnity/autumn_crocus.json similarity index 55% rename from src/main/resources/data/create/recipes/compat/autumnity/milling/autumn_crocus.json rename to src/generated/resources/data/create/recipes/milling/compat/autumnity/autumn_crocus.json index 16e48a60e..13205e561 100644 --- a/src/main/resources/data/create/recipes/compat/autumnity/milling/autumn_crocus.json +++ b/src/generated/resources/data/create/recipes/milling/compat/autumnity/autumn_crocus.json @@ -1,31 +1,30 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "autumnity" } ], - "type": "create:milling", "ingredients": [ { "item": "autumnity:autumn_crocus" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:magenta_dye", - "count": 2 - }, - { - "item": "minecraft:pink_dye", "count": 2, - "chance": 0.1 + "item": "minecraft:magenta_dye" }, { - "item": "minecraft:purple_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "count": 2, + "item": "minecraft:pink_dye" + }, + { + "chance": 0.1, + "item": "minecraft:purple_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/blue_hydrangea.json b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/blue_hydrangea.json new file mode 100644 index 000000000..f957284d7 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/blue_hydrangea.json @@ -0,0 +1,31 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "ingredients": [ + { + "item": "biomesoplenty:blue_hydrangea" + } + ], + "processingTime": 50, + "results": [ + { + "count": 3, + "item": "minecraft:light_blue_dye" + }, + { + "chance": 0.05, + "count": 2, + "item": "minecraft:green_dye" + }, + { + "chance": 0.25, + "count": 2, + "item": "minecraft:light_blue_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/burning_blossom.json b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/burning_blossom.json new file mode 100644 index 000000000..eada9a108 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/burning_blossom.json @@ -0,0 +1,25 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "ingredients": [ + { + "item": "biomesoplenty:burning_blossom" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:orange_dye" + }, + { + "chance": 0.1, + "item": "minecraft:lime_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/glowflower.json b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/glowflower.json new file mode 100644 index 000000000..854082c91 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/glowflower.json @@ -0,0 +1,25 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "ingredients": [ + { + "item": "biomesoplenty:glowflower" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:cyan_dye" + }, + { + "chance": 0.1, + "item": "minecraft:white_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/lavender.json b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/lavender.json new file mode 100644 index 000000000..1c56b0ee2 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/lavender.json @@ -0,0 +1,25 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "ingredients": [ + { + "item": "biomesoplenty:lavender" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:purple_dye" + }, + { + "chance": 0.05, + "item": "minecraft:green_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/orange_cosmos.json b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/orange_cosmos.json new file mode 100644 index 000000000..454680ac2 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/orange_cosmos.json @@ -0,0 +1,25 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "ingredients": [ + { + "item": "biomesoplenty:orange_cosmos" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:orange_dye" + }, + { + "chance": 0.1, + "item": "minecraft:lime_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/pink_daffodil.json b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/pink_daffodil.json new file mode 100644 index 000000000..150fa8853 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/pink_daffodil.json @@ -0,0 +1,29 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "ingredients": [ + { + "item": "biomesoplenty:pink_daffodil" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:pink_dye" + }, + { + "chance": 0.25, + "item": "minecraft:magenta_dye" + }, + { + "chance": 0.05, + "item": "minecraft:cyan_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/pink_hibiscus.json b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/pink_hibiscus.json new file mode 100644 index 000000000..d135ab7d7 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/pink_hibiscus.json @@ -0,0 +1,29 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "ingredients": [ + { + "item": "biomesoplenty:pink_hibiscus" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:pink_dye" + }, + { + "chance": 0.25, + "item": "minecraft:yellow_dye" + }, + { + "chance": 0.1, + "item": "minecraft:green_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/rose.json b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/rose.json new file mode 100644 index 000000000..9be1566f5 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/rose.json @@ -0,0 +1,25 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "ingredients": [ + { + "item": "biomesoplenty:rose" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:red_dye" + }, + { + "chance": 0.05, + "item": "minecraft:green_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/biomesoplenty/cherry_log.json b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/violet.json similarity index 61% rename from src/generated/resources/data/create/recipes/cutting/compat/biomesoplenty/cherry_log.json rename to src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/violet.json index 437fcd31d..d4a51a461 100644 --- a/src/generated/resources/data/create/recipes/cutting/compat/biomesoplenty/cherry_log.json +++ b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/violet.json @@ -1,5 +1,5 @@ { - "type": "create:cutting", + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", @@ -8,13 +8,14 @@ ], "ingredients": [ { - "item": "biomesoplenty:cherry_log" + "item": "biomesoplenty:violet" } ], "processingTime": 50, "results": [ { - "item": "biomesoplenty:stripped_cherry_log" + "count": 2, + "item": "minecraft:purple_dye" } ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/wildflower.json b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/wildflower.json new file mode 100644 index 000000000..ccf47b408 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/wildflower.json @@ -0,0 +1,25 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "ingredients": [ + { + "item": "biomesoplenty:wildflower" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:magenta_dye" + }, + { + "chance": 0.1, + "item": "minecraft:lime_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/cutting/compat/biomesoplenty/cherry_wood.json b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/wilted_lily.json similarity index 61% rename from src/generated/resources/data/create/recipes/cutting/compat/biomesoplenty/cherry_wood.json rename to src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/wilted_lily.json index 84be1f3a3..a5f200cbd 100644 --- a/src/generated/resources/data/create/recipes/cutting/compat/biomesoplenty/cherry_wood.json +++ b/src/generated/resources/data/create/recipes/milling/compat/biomesoplenty/wilted_lily.json @@ -1,5 +1,5 @@ { - "type": "create:cutting", + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", @@ -8,13 +8,14 @@ ], "ingredients": [ { - "item": "biomesoplenty:cherry_wood" + "item": "biomesoplenty:wilted_lily" } ], "processingTime": 50, "results": [ { - "item": "biomesoplenty:stripped_cherry_wood" + "count": 2, + "item": "minecraft:gray_dye" } ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/botania/black_petal.json b/src/generated/resources/data/create/recipes/milling/compat/botania/black_petal.json new file mode 100644 index 000000000..66f3fe09d --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/botania/black_petal.json @@ -0,0 +1,14 @@ +{ + "type": "create:milling", + "ingredients": [ + { + "tag": "botania:petals/black" + } + ], + "processingTime": 50, + "results": [ + { + "item": "minecraft:black_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/botania/blue_petal.json b/src/generated/resources/data/create/recipes/milling/compat/botania/blue_petal.json new file mode 100644 index 000000000..d47e82023 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/botania/blue_petal.json @@ -0,0 +1,14 @@ +{ + "type": "create:milling", + "ingredients": [ + { + "tag": "botania:petals/blue" + } + ], + "processingTime": 50, + "results": [ + { + "item": "minecraft:blue_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/botania/brown_petal.json b/src/generated/resources/data/create/recipes/milling/compat/botania/brown_petal.json new file mode 100644 index 000000000..d1f3eb495 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/botania/brown_petal.json @@ -0,0 +1,14 @@ +{ + "type": "create:milling", + "ingredients": [ + { + "tag": "botania:petals/brown" + } + ], + "processingTime": 50, + "results": [ + { + "item": "minecraft:brown_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/botania/cyan_petal.json b/src/generated/resources/data/create/recipes/milling/compat/botania/cyan_petal.json new file mode 100644 index 000000000..05fe7d87b --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/botania/cyan_petal.json @@ -0,0 +1,14 @@ +{ + "type": "create:milling", + "ingredients": [ + { + "tag": "botania:petals/cyan" + } + ], + "processingTime": 50, + "results": [ + { + "item": "minecraft:cyan_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/botania/gray_petal.json b/src/generated/resources/data/create/recipes/milling/compat/botania/gray_petal.json new file mode 100644 index 000000000..9bb0bcd24 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/botania/gray_petal.json @@ -0,0 +1,14 @@ +{ + "type": "create:milling", + "ingredients": [ + { + "tag": "botania:petals/gray" + } + ], + "processingTime": 50, + "results": [ + { + "item": "minecraft:gray_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/botania/green_petal.json b/src/generated/resources/data/create/recipes/milling/compat/botania/green_petal.json new file mode 100644 index 000000000..ed4641482 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/botania/green_petal.json @@ -0,0 +1,14 @@ +{ + "type": "create:milling", + "ingredients": [ + { + "tag": "botania:petals/green" + } + ], + "processingTime": 50, + "results": [ + { + "item": "minecraft:green_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/botania/light_blue_petal.json b/src/generated/resources/data/create/recipes/milling/compat/botania/light_blue_petal.json new file mode 100644 index 000000000..595e18953 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/botania/light_blue_petal.json @@ -0,0 +1,14 @@ +{ + "type": "create:milling", + "ingredients": [ + { + "tag": "botania:petals/light_blue" + } + ], + "processingTime": 50, + "results": [ + { + "item": "minecraft:light_blue_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/botania/light_gray_petal.json b/src/generated/resources/data/create/recipes/milling/compat/botania/light_gray_petal.json new file mode 100644 index 000000000..5b9a6bd52 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/botania/light_gray_petal.json @@ -0,0 +1,14 @@ +{ + "type": "create:milling", + "ingredients": [ + { + "tag": "botania:petals/light_gray" + } + ], + "processingTime": 50, + "results": [ + { + "item": "minecraft:light_gray_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/botania/lime_petal.json b/src/generated/resources/data/create/recipes/milling/compat/botania/lime_petal.json new file mode 100644 index 000000000..51bac8733 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/botania/lime_petal.json @@ -0,0 +1,14 @@ +{ + "type": "create:milling", + "ingredients": [ + { + "tag": "botania:petals/lime" + } + ], + "processingTime": 50, + "results": [ + { + "item": "minecraft:lime_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/botania/magenta_petal.json b/src/generated/resources/data/create/recipes/milling/compat/botania/magenta_petal.json new file mode 100644 index 000000000..8001d8fd7 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/botania/magenta_petal.json @@ -0,0 +1,14 @@ +{ + "type": "create:milling", + "ingredients": [ + { + "tag": "botania:petals/magenta" + } + ], + "processingTime": 50, + "results": [ + { + "item": "minecraft:magenta_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/botania/orange_petal.json b/src/generated/resources/data/create/recipes/milling/compat/botania/orange_petal.json new file mode 100644 index 000000000..b0d9957e1 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/botania/orange_petal.json @@ -0,0 +1,14 @@ +{ + "type": "create:milling", + "ingredients": [ + { + "tag": "botania:petals/orange" + } + ], + "processingTime": 50, + "results": [ + { + "item": "minecraft:orange_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/botania/pink_petal.json b/src/generated/resources/data/create/recipes/milling/compat/botania/pink_petal.json new file mode 100644 index 000000000..c875d311e --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/botania/pink_petal.json @@ -0,0 +1,14 @@ +{ + "type": "create:milling", + "ingredients": [ + { + "tag": "botania:petals/pink" + } + ], + "processingTime": 50, + "results": [ + { + "item": "minecraft:pink_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/botania/purple_petal.json b/src/generated/resources/data/create/recipes/milling/compat/botania/purple_petal.json new file mode 100644 index 000000000..13ad6984c --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/botania/purple_petal.json @@ -0,0 +1,14 @@ +{ + "type": "create:milling", + "ingredients": [ + { + "tag": "botania:petals/purple" + } + ], + "processingTime": 50, + "results": [ + { + "item": "minecraft:purple_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/botania/red_petal.json b/src/generated/resources/data/create/recipes/milling/compat/botania/red_petal.json new file mode 100644 index 000000000..0fee03469 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/botania/red_petal.json @@ -0,0 +1,14 @@ +{ + "type": "create:milling", + "ingredients": [ + { + "tag": "botania:petals/red" + } + ], + "processingTime": 50, + "results": [ + { + "item": "minecraft:red_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/botania/white_petal.json b/src/generated/resources/data/create/recipes/milling/compat/botania/white_petal.json new file mode 100644 index 000000000..0b8c714a9 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/botania/white_petal.json @@ -0,0 +1,14 @@ +{ + "type": "create:milling", + "ingredients": [ + { + "tag": "botania:petals/white" + } + ], + "processingTime": 50, + "results": [ + { + "item": "minecraft:white_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/botania/yellow_petal.json b/src/generated/resources/data/create/recipes/milling/compat/botania/yellow_petal.json new file mode 100644 index 000000000..ea71b8e71 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/botania/yellow_petal.json @@ -0,0 +1,14 @@ +{ + "type": "create:milling", + "ingredients": [ + { + "tag": "botania:petals/yellow" + } + ], + "processingTime": 50, + "results": [ + { + "item": "minecraft:yellow_dye" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/buzzier_bees/milling/buttercup.json b/src/generated/resources/data/create/recipes/milling/compat/buzzier_bees/buttercup.json similarity index 60% rename from src/main/resources/data/create/recipes/compat/buzzier_bees/milling/buttercup.json rename to src/generated/resources/data/create/recipes/milling/compat/buzzier_bees/buttercup.json index daf89729b..e0162facf 100644 --- a/src/main/resources/data/create/recipes/compat/buzzier_bees/milling/buttercup.json +++ b/src/generated/resources/data/create/recipes/milling/compat/buzzier_bees/buttercup.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "buzzier_bees" } ], - "type": "create:milling", "ingredients": [ { "item": "buzzier_bees:buttercup" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:yellow_dye", - "count": 2 + "count": 2, + "item": "minecraft:yellow_dye" }, { - "item": "minecraft:lime_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:lime_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/buzzier_bees/milling/pink_clover.json b/src/generated/resources/data/create/recipes/milling/compat/buzzier_bees/pink_clover.json similarity index 51% rename from src/main/resources/data/create/recipes/compat/buzzier_bees/milling/pink_clover.json rename to src/generated/resources/data/create/recipes/milling/compat/buzzier_bees/pink_clover.json index f52886520..94ecf9bda 100644 --- a/src/main/resources/data/create/recipes/compat/buzzier_bees/milling/pink_clover.json +++ b/src/generated/resources/data/create/recipes/milling/compat/buzzier_bees/pink_clover.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "buzzier_bees" } ], - "type": "create:milling", "ingredients": [ { - "item": "buzzier_bees:pink_clover" + "item": "buzzier_bees:buttercup" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:pink_dye", - "count": 2 + "count": 2, + "item": "minecraft:pink_dye" }, { - "item": "minecraft:lime_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:lime_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/buzzier_bees/milling/white_clover.json b/src/generated/resources/data/create/recipes/milling/compat/buzzier_bees/white_clover.json similarity index 50% rename from src/main/resources/data/create/recipes/compat/buzzier_bees/milling/white_clover.json rename to src/generated/resources/data/create/recipes/milling/compat/buzzier_bees/white_clover.json index 1542d6ddb..a6732531c 100644 --- a/src/main/resources/data/create/recipes/compat/buzzier_bees/milling/white_clover.json +++ b/src/generated/resources/data/create/recipes/milling/compat/buzzier_bees/white_clover.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "buzzier_bees" } ], - "type": "create:milling", "ingredients": [ { - "item": "buzzier_bees:white_clover" + "item": "buzzier_bees:buttercup" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:white_dye", - "count": 2 + "count": 2, + "item": "minecraft:white_dye" }, { - "item": "minecraft:lime_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:lime_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/allium_flower_bush.json b/src/generated/resources/data/create/recipes/milling/compat/byg/allium_flower_bush.json similarity index 58% rename from src/main/resources/data/create/recipes/compat/byg/milling/allium_flower_bush.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/allium_flower_bush.json index 7e1b13591..a16f7e6bb 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/allium_flower_bush.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/allium_flower_bush.json @@ -1,31 +1,31 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:allium_flower_bush" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:purple_dye", - "count": 3 + "count": 3, + "item": "minecraft:purple_dye" }, { - "item": "minecraft:green_dye", + "chance": 0.05, "count": 2, - "chance": 0.05 + "item": "minecraft:green_dye" }, { - "item": "minecraft:magenta_dye", + "chance": 0.25, "count": 2, - "chance": 0.25 + "item": "minecraft:magenta_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/alpine_bellflower.json b/src/generated/resources/data/create/recipes/milling/compat/byg/alpine_bellflower.json similarity index 57% rename from src/main/resources/data/create/recipes/compat/byg/milling/alpine_bellflower.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/alpine_bellflower.json index d79446013..1e4f97cb3 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/alpine_bellflower.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/alpine_bellflower.json @@ -1,30 +1,30 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:alpine_bellflower" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:purple_dye", - "count": 2 - }, - { - "item": "minecraft:blue_dye", "count": 2, - "chance": 0.1 + "item": "minecraft:purple_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "count": 2, + "item": "minecraft:blue_dye" + }, + { + "chance": 0.1, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/amaranth.json b/src/generated/resources/data/create/recipes/milling/compat/byg/amaranth.json similarity index 58% rename from src/main/resources/data/create/recipes/compat/byg/milling/amaranth.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/amaranth.json index 41ee3a5a1..8c85c23dc 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/amaranth.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/amaranth.json @@ -1,31 +1,31 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:amaranth" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:red_dye", - "count": 3 + "count": 3, + "item": "minecraft:red_dye" }, { - "item": "minecraft:green_dye", + "chance": 0.05, "count": 2, - "chance": 0.05 + "item": "minecraft:green_dye" }, { - "item": "minecraft:red_dye", + "chance": 0.25, "count": 2, - "chance": 0.25 + "item": "minecraft:red_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/angelica.json b/src/generated/resources/data/create/recipes/milling/compat/byg/angelica.json similarity index 61% rename from src/main/resources/data/create/recipes/compat/byg/milling/angelica.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/angelica.json index d1b5b85cf..be65dcdd4 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/angelica.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/angelica.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:angelica" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:white_dye", - "count": 2 + "count": 2, + "item": "minecraft:white_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/begonia.json b/src/generated/resources/data/create/recipes/milling/compat/byg/begonia.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/byg/milling/begonia.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/begonia.json index b78736a4c..914786d4e 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/begonia.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/begonia.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:begonia" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:red_dye", - "count": 2 + "count": 2, + "item": "minecraft:red_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/bistort.json b/src/generated/resources/data/create/recipes/milling/compat/byg/bistort.json similarity index 57% rename from src/main/resources/data/create/recipes/compat/byg/milling/bistort.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/bistort.json index b551a5796..b6f090492 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/bistort.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/bistort.json @@ -1,30 +1,30 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:bistort" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:pink_dye", - "count": 2 - }, - { - "item": "minecraft:red_dye", "count": 2, - "chance": 0.1 + "item": "minecraft:pink_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "count": 2, + "item": "minecraft:red_dye" + }, + { + "chance": 0.1, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/black_rose.json b/src/generated/resources/data/create/recipes/milling/compat/byg/black_rose.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/byg/milling/black_rose.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/black_rose.json index 8befbc2be..957082c46 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/black_rose.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/black_rose.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:black_rose" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:black_dye", - "count": 2 + "count": 2, + "item": "minecraft:black_dye" }, { - "item": "minecraft:black_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:black_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/blue_sage.json b/src/generated/resources/data/create/recipes/milling/compat/byg/blue_sage.json similarity index 57% rename from src/main/resources/data/create/recipes/compat/byg/milling/blue_sage.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/blue_sage.json index 2572c98aa..b7a1e33ea 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/blue_sage.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/blue_sage.json @@ -1,30 +1,30 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:blue_sage" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:blue_dye", - "count": 2 - }, - { - "item": "minecraft:cyan_dye", "count": 2, - "chance": 0.1 + "item": "minecraft:blue_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "count": 2, + "item": "minecraft:cyan_dye" + }, + { + "chance": 0.1, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/california_poppy.json b/src/generated/resources/data/create/recipes/milling/compat/byg/california_poppy.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/byg/milling/california_poppy.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/california_poppy.json index 28f1afab2..ecb8c43b3 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/california_poppy.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/california_poppy.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:california_poppy" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:orange_dye", - "count": 2 + "count": 2, + "item": "minecraft:orange_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.05 + "chance": 0.05, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/white_sage.json b/src/generated/resources/data/create/recipes/milling/compat/byg/compat/byg/white_sage.json similarity index 52% rename from src/main/resources/data/create/recipes/compat/byg/milling/white_sage.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/compat/byg/white_sage.json index 5f2588938..d58006504 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/white_sage.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/compat/byg/white_sage.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { - "item": "byg:white_sage" + "item": "byg:compat/byg/white_sage" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:white_dye", - "count": 2 + "count": 2, + "item": "minecraft:white_dye" }, { - "item": "minecraft:gray_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:gray_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/winter_cyclamen.json b/src/generated/resources/data/create/recipes/milling/compat/byg/compat/byg/winter_cyclamen.json similarity index 51% rename from src/main/resources/data/create/recipes/compat/byg/milling/winter_cyclamen.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/compat/byg/winter_cyclamen.json index 9c5f840ba..2c5b99408 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/winter_cyclamen.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/compat/byg/winter_cyclamen.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { - "item": "byg:winter_cyclamen" + "item": "byg:compat/byg/winter_cyclamen" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:cyan_dye", - "count": 2 + "count": 2, + "item": "minecraft:cyan_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/crocus.json b/src/generated/resources/data/create/recipes/milling/compat/byg/crocus.json similarity index 56% rename from src/main/resources/data/create/recipes/compat/byg/milling/crocus.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/crocus.json index 6787f77c5..26cb4fe12 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/crocus.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/crocus.json @@ -1,30 +1,30 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:crocus" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:purple_dye", - "count": 2 - }, - { - "item": "minecraft:magenta_dye", "count": 2, - "chance": 0.1 + "item": "minecraft:purple_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "count": 2, + "item": "minecraft:blue_dye" + }, + { + "chance": 0.1, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/cyan_amaranth.json b/src/generated/resources/data/create/recipes/milling/compat/byg/cyan_amaranth.json similarity index 58% rename from src/main/resources/data/create/recipes/compat/byg/milling/cyan_amaranth.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/cyan_amaranth.json index 43b6e6df3..891502a55 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/cyan_amaranth.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/cyan_amaranth.json @@ -1,31 +1,31 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:cyan_amaranth" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:cyan_dye", - "count": 3 + "count": 3, + "item": "minecraft:red_dye" }, { - "item": "minecraft:green_dye", + "chance": 0.05, "count": 2, - "chance": 0.05 + "item": "minecraft:green_dye" }, { - "item": "minecraft:light_blue_dye", + "chance": 0.25, "count": 2, - "chance": 0.25 + "item": "minecraft:red_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/cyan_rose.json b/src/generated/resources/data/create/recipes/milling/compat/byg/cyan_rose.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/byg/milling/cyan_rose.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/cyan_rose.json index 274212fa7..78b211919 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/cyan_rose.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/cyan_rose.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:cyan_rose" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:cyan_dye", - "count": 2 + "count": 2, + "item": "minecraft:cyan_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/cyan_tulip.json b/src/generated/resources/data/create/recipes/milling/compat/byg/cyan_tulip.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/byg/milling/cyan_tulip.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/cyan_tulip.json index 25ce67168..bdcc32295 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/cyan_tulip.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/cyan_tulip.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:cyan_tulip" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:cyan_dye", - "count": 2 + "count": 2, + "item": "minecraft:cyan_dye" }, { - "item": "minecraft:lime_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:lime_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/daffodil.json b/src/generated/resources/data/create/recipes/milling/compat/byg/daffodil.json similarity index 54% rename from src/main/resources/data/create/recipes/compat/byg/milling/daffodil.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/daffodil.json index 4a6e2a751..1df355232 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/daffodil.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/daffodil.json @@ -1,29 +1,29 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:daffodil" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:pink_dye", - "count": 2 + "count": 2, + "item": "minecraft:pink_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:green_dye" }, { - "item": "minecraft:magenta_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:magenta_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/delphinium.json b/src/generated/resources/data/create/recipes/milling/compat/byg/delphinium.json similarity index 59% rename from src/main/resources/data/create/recipes/compat/byg/milling/delphinium.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/delphinium.json index 88ef340b6..9e7c00bc3 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/delphinium.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/delphinium.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:delphinium" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:blue_dye", - "count": 3 + "count": 3, + "item": "minecraft:blue_dye" }, { - "item": "minecraft:blue_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:blue_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/fairy_slipper.json b/src/generated/resources/data/create/recipes/milling/compat/byg/fairy_slipper.json similarity index 56% rename from src/main/resources/data/create/recipes/compat/byg/milling/fairy_slipper.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/fairy_slipper.json index 8d1b62956..5e1c79ae9 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/fairy_slipper.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/fairy_slipper.json @@ -1,30 +1,30 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:fairy_slipper" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:magenta_dye", - "count": 2 - }, - { - "item": "minecraft:pink_dye", "count": 2, - "chance": 0.1 + "item": "minecraft:magenta_dye" }, { - "item": "minecraft:yellow_dye", - "chance": 0.1 + "chance": 0.1, + "count": 2, + "item": "minecraft:pink_dye" + }, + { + "chance": 0.1, + "item": "minecraft:yellow_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/firecracker_flower_bush.json b/src/generated/resources/data/create/recipes/milling/compat/byg/firecracker_flower_bush.json similarity index 59% rename from src/main/resources/data/create/recipes/compat/byg/milling/firecracker_flower_bush.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/firecracker_flower_bush.json index 3df31f5ec..c5d1362bd 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/firecracker_flower_bush.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/firecracker_flower_bush.json @@ -1,31 +1,31 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:firecracker_flower_bush" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:pink_dye", - "count": 3 + "count": 3, + "item": "minecraft:pink_dye" }, { - "item": "minecraft:green_dye", + "chance": 0.05, "count": 2, - "chance": 0.05 + "item": "minecraft:green_dye" }, { - "item": "minecraft:red_dye", + "chance": 0.25, "count": 2, - "chance": 0.25 + "item": "minecraft:red_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/foxglove.json b/src/generated/resources/data/create/recipes/milling/compat/byg/foxglove.json similarity index 54% rename from src/main/resources/data/create/recipes/compat/byg/milling/foxglove.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/foxglove.json index ee00d0258..3dbd80251 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/foxglove.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/foxglove.json @@ -1,29 +1,29 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:foxglove" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:cyan_dye", - "count": 2 + "count": 2, + "item": "minecraft:magenta_dye" }, { - "item": "minecraft:purple_dye", - "chance": 0.25 + "chance": 0.25, + "item": "minecraft:pink_dye" }, { - "item": "minecraft:light_gray_dye", - "chance": 0.25 + "chance": 0.25, + "item": "minecraft:yellow_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/green_tulip.json b/src/generated/resources/data/create/recipes/milling/compat/byg/green_tulip.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/byg/milling/green_tulip.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/green_tulip.json index 9a3cce6e9..55ccc50eb 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/green_tulip.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/green_tulip.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:green_tulip" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:lime_dye", - "count": 2 + "count": 2, + "item": "minecraft:lime_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/guzmania.json b/src/generated/resources/data/create/recipes/milling/compat/byg/guzmania.json similarity index 50% rename from src/main/resources/data/create/recipes/compat/byg/milling/guzmania.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/guzmania.json index 066fc3f0b..5d0ba6f12 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/guzmania.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/guzmania.json @@ -1,31 +1,29 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:guzmania" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:orange_dye", - "count": 2 + "count": 2, + "item": "minecraft:magenta_dye" }, { - "item": "minecraft:red_dye", - "count": 1, - "chance": 0.25 + "chance": 0.25, + "item": "minecraft:pink_dye" }, { - "item": "minecraft:green_dye", - "count": 1, - "chance": 0.25 + "chance": 0.25, + "item": "minecraft:yellow_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/hydrangea_bush.json b/src/generated/resources/data/create/recipes/milling/compat/byg/hydrangea_bush.json similarity index 57% rename from src/main/resources/data/create/recipes/compat/byg/milling/hydrangea_bush.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/hydrangea_bush.json index 7dfd9e135..50845daec 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/hydrangea_bush.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/hydrangea_bush.json @@ -1,30 +1,30 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:hydrangea_bush" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:purple_dye", - "count": 2 - }, - { - "item": "minecraft:blue_dye", "count": 2, - "chance": 0.1 + "item": "minecraft:purple_dye" }, { - "item": "minecraft:white_dye", - "chance": 0.1 + "chance": 0.1, + "count": 2, + "item": "minecraft:blue_dye" + }, + { + "chance": 0.1, + "item": "minecraft:white_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/incan_lily.json b/src/generated/resources/data/create/recipes/milling/compat/byg/incan_lily.json similarity index 55% rename from src/main/resources/data/create/recipes/compat/byg/milling/incan_lily.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/incan_lily.json index c1fda1066..e5f97ece8 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/incan_lily.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/incan_lily.json @@ -1,29 +1,29 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:incan_lily" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:orange_dye", - "count": 2 + "count": 2, + "item": "minecraft:orange_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:green_dye" }, { - "item": "minecraft:red_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:red_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/iris.json b/src/generated/resources/data/create/recipes/milling/compat/byg/iris.json similarity index 61% rename from src/main/resources/data/create/recipes/compat/byg/milling/iris.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/iris.json index baf1db16e..59a43846a 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/iris.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/iris.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:iris" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:purple_dye", - "count": 2 + "count": 2, + "item": "minecraft:purple_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.05 + "chance": 0.05, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/kovan_flower.json b/src/generated/resources/data/create/recipes/milling/compat/byg/kovan_flower.json similarity index 55% rename from src/main/resources/data/create/recipes/compat/byg/milling/kovan_flower.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/kovan_flower.json index d39001b79..1eebfeaba 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/kovan_flower.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/kovan_flower.json @@ -1,29 +1,29 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:kovan_flower" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:red_dye", - "count": 2 + "count": 2, + "item": "minecraft:red_dye" }, { - "item": "minecraft:lime_dye", - "chance": 0.2 + "chance": 0.2, + "item": "minecraft:lime_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.05 + "chance": 0.05, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/lazarus_bellflower.json b/src/generated/resources/data/create/recipes/milling/compat/byg/lazarus_bellflower.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/byg/milling/lazarus_bellflower.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/lazarus_bellflower.json index 03ddff8b6..1a77f2a42 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/lazarus_bellflower.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/lazarus_bellflower.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:lazarus_bellflower" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:magenta_dye", - "count": 2 + "count": 2, + "item": "minecraft:magenta_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/byg/lolipop_flower.json b/src/generated/resources/data/create/recipes/milling/compat/byg/lolipop_flower.json new file mode 100644 index 000000000..01f7073d4 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/lolipop_flower.json @@ -0,0 +1,29 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "byg" + } + ], + "ingredients": [ + { + "item": "byg:lolipop_flower" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:yellow_dye" + }, + { + "chance": 0.25, + "item": "minecraft:yellow_dye" + }, + { + "chance": 0.05, + "item": "minecraft:green_dye" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/magenta_amaranth.json b/src/generated/resources/data/create/recipes/milling/compat/byg/magenta_amaranth.json similarity index 58% rename from src/main/resources/data/create/recipes/compat/byg/milling/magenta_amaranth.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/magenta_amaranth.json index 7bd6881b2..55047328e 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/magenta_amaranth.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/magenta_amaranth.json @@ -1,31 +1,31 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:magenta_amaranth" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:magenta_dye", - "count": 3 + "count": 3, + "item": "minecraft:magenta_dye" }, { - "item": "minecraft:green_dye", + "chance": 0.05, "count": 2, - "chance": 0.05 + "item": "minecraft:green_dye" }, { - "item": "minecraft:magenta_dye", + "chance": 0.25, "count": 2, - "chance": 0.25 + "item": "minecraft:magenta_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/magenta_tulip.json b/src/generated/resources/data/create/recipes/milling/compat/byg/magenta_tulip.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/byg/milling/magenta_tulip.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/magenta_tulip.json index 896d92759..56009087d 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/magenta_tulip.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/magenta_tulip.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:magenta_tulip" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:magenta_dye", - "count": 2 + "count": 2, + "item": "minecraft:magenta_dye" }, { - "item": "minecraft:lime_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:lime_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/orange_amaranth.json b/src/generated/resources/data/create/recipes/milling/compat/byg/orange_amaranth.json similarity index 58% rename from src/main/resources/data/create/recipes/compat/byg/milling/orange_amaranth.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/orange_amaranth.json index 651d96b3f..e0a1b0f06 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/orange_amaranth.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/orange_amaranth.json @@ -1,31 +1,31 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:orange_amaranth" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:orange_dye", - "count": 3 + "count": 3, + "item": "minecraft:red_dye" }, { - "item": "minecraft:green_dye", + "chance": 0.05, "count": 2, - "chance": 0.05 + "item": "minecraft:green_dye" }, { - "item": "minecraft:orange_dye", + "chance": 0.25, "count": 2, - "chance": 0.25 + "item": "minecraft:red_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/orange_daisy.json b/src/generated/resources/data/create/recipes/milling/compat/byg/orange_daisy.json similarity index 55% rename from src/main/resources/data/create/recipes/compat/byg/milling/orange_daisy.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/orange_daisy.json index e9899d178..5e1db0b0f 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/orange_daisy.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/orange_daisy.json @@ -1,29 +1,29 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:orange_daisy" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:orange_dye", - "count": 2 + "count": 2, + "item": "minecraft:orange_dye" }, { - "item": "minecraft:yellow_dye", - "chance": 0.2 + "chance": 0.2, + "item": "minecraft:yellow_dye" }, { - "item": "minecraft:lime_dye", - "chance": 0.05 + "chance": 0.05, + "item": "minecraft:lime_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/byg/orchid.json b/src/generated/resources/data/create/recipes/milling/compat/byg/orchid.json new file mode 100644 index 000000000..9dc53cb59 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/orchid.json @@ -0,0 +1,25 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "byg" + } + ], + "ingredients": [ + { + "item": "byg:orchid" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:pink_dye" + }, + { + "chance": 0.05, + "item": "minecraft:white_dye" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/osiria_rose.json b/src/generated/resources/data/create/recipes/milling/compat/byg/osiria_rose.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/byg/milling/osiria_rose.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/osiria_rose.json index f48b02772..09460ff13 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/osiria_rose.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/osiria_rose.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:osiria_rose" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:pink_dye", - "count": 2 + "count": 2, + "item": "minecraft:black_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.05 + "chance": 0.1, + "item": "minecraft:black_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/peach_leather_flower.json b/src/generated/resources/data/create/recipes/milling/compat/byg/peach_leather_flower.json similarity index 63% rename from src/main/resources/data/create/recipes/compat/byg/milling/peach_leather_flower.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/peach_leather_flower.json index 1dab952c8..69dea4d27 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/peach_leather_flower.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/peach_leather_flower.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:peach_leather_flower" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:pink_dye", - "count": 2 + "count": 2, + "item": "minecraft:pink_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.25 + "chance": 0.25, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/pink_allium.json b/src/generated/resources/data/create/recipes/milling/compat/byg/pink_allium.json similarity index 56% rename from src/main/resources/data/create/recipes/compat/byg/milling/pink_allium.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/pink_allium.json index d84264494..cccfb07e9 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/pink_allium.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/pink_allium.json @@ -1,30 +1,30 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:pink_allium" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:magenta_dye", - "count": 2 - }, - { - "item": "minecraft:pink_dye", "count": 2, - "chance": 0.1 + "item": "minecraft:magenta_dye" }, { - "item": "minecraft:purple_dye", - "chance": 0.1 + "chance": 0.1, + "count": 2, + "item": "minecraft:pink_dye" + }, + { + "chance": 0.1, + "item": "minecraft:purple_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/pink_allium_flower_bush.json b/src/generated/resources/data/create/recipes/milling/compat/byg/pink_allium_flower_bush.json similarity index 59% rename from src/main/resources/data/create/recipes/compat/byg/milling/pink_allium_flower_bush.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/pink_allium_flower_bush.json index b64c9e751..f5501ce3a 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/pink_allium_flower_bush.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/pink_allium_flower_bush.json @@ -1,31 +1,31 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:pink_allium_flower_bush" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:pink_dye", - "count": 3 + "count": 3, + "item": "minecraft:purple_dye" }, { - "item": "minecraft:green_dye", + "chance": 0.05, "count": 2, - "chance": 0.05 + "item": "minecraft:green_dye" }, { - "item": "minecraft:magenta_dye", + "chance": 0.25, "count": 2, - "chance": 0.25 + "item": "minecraft:magenta_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/pink_anemone.json b/src/generated/resources/data/create/recipes/milling/compat/byg/pink_anemone.json similarity index 64% rename from src/main/resources/data/create/recipes/compat/byg/milling/pink_anemone.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/pink_anemone.json index 662ec8559..a0a769e35 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/pink_anemone.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/pink_anemone.json @@ -1,26 +1,26 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:pink_anemone" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:pink_dye", - "count": 2 + "count": 2, + "item": "minecraft:pink_dye" }, { - "item": "minecraft:purple_dye", + "chance": 0.1, "count": 2, - "chance": 0.1 + "item": "minecraft:purple_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/pink_daffodil.json b/src/generated/resources/data/create/recipes/milling/compat/byg/pink_daffodil.json similarity index 55% rename from src/main/resources/data/create/recipes/compat/byg/milling/pink_daffodil.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/pink_daffodil.json index 1260be7bf..212e58202 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/pink_daffodil.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/pink_daffodil.json @@ -1,29 +1,29 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:pink_daffodil" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:pink_dye", - "count": 2 + "count": 2, + "item": "minecraft:pink_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:green_dye" }, { - "item": "minecraft:white_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:white_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/protea_flower.json b/src/generated/resources/data/create/recipes/milling/compat/byg/protea_flower.json similarity index 55% rename from src/main/resources/data/create/recipes/compat/byg/milling/protea_flower.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/protea_flower.json index 92ef8901c..5481ac03c 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/protea_flower.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/protea_flower.json @@ -1,29 +1,29 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:protea_flower" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:magenta_dye", - "count": 2 + "count": 2, + "item": "minecraft:magenta_dye" }, { - "item": "minecraft:lime_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:lime_dye" }, { - "item": "minecraft:purple_dye", - "chance": 0.05 + "chance": 0.05, + "item": "minecraft:purple_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/purple_amaranth.json b/src/generated/resources/data/create/recipes/milling/compat/byg/purple_amaranth.json similarity index 58% rename from src/main/resources/data/create/recipes/compat/byg/milling/purple_amaranth.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/purple_amaranth.json index c687f173a..47cb86a32 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/purple_amaranth.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/purple_amaranth.json @@ -1,31 +1,31 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:purple_amaranth" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:purple_dye", - "count": 3 + "count": 3, + "item": "minecraft:purple_dye" }, { - "item": "minecraft:green_dye", + "chance": 0.05, "count": 2, - "chance": 0.05 + "item": "minecraft:green_dye" }, { - "item": "minecraft:purple_dye", + "chance": 0.25, "count": 2, - "chance": 0.25 + "item": "minecraft:purple_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/byg/purple_rose.json b/src/generated/resources/data/create/recipes/milling/compat/byg/purple_rose.json new file mode 100644 index 000000000..e5833afc6 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/purple_rose.json @@ -0,0 +1,25 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "byg" + } + ], + "ingredients": [ + { + "item": "byg:purple_rose" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:purple_dye" + }, + { + "chance": 0.1, + "item": "minecraft:magenta_dye" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/purple_tulip.json b/src/generated/resources/data/create/recipes/milling/compat/byg/purple_tulip.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/byg/milling/purple_tulip.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/purple_tulip.json index b6bae22b5..8eed22f5a 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/purple_tulip.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/purple_tulip.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:purple_tulip" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:purple_dye", - "count": 2 + "count": 2, + "item": "minecraft:purple_dye" }, { - "item": "minecraft:lime_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:lime_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/richea.json b/src/generated/resources/data/create/recipes/milling/compat/byg/richea.json similarity index 53% rename from src/main/resources/data/create/recipes/compat/byg/milling/richea.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/richea.json index 80f30e43f..64ee4998e 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/richea.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/richea.json @@ -1,29 +1,29 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:richea" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:light_gray_dye", - "count": 2 + "count": 2, + "item": "minecraft:magenta_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:pink_dye" }, { - "item": "minecraft:brown_dye", - "chance": 0.05 + "chance": 0.05, + "item": "minecraft:yellow_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/rose.json b/src/generated/resources/data/create/recipes/milling/compat/byg/rose.json similarity index 61% rename from src/main/resources/data/create/recipes/compat/byg/milling/rose.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/rose.json index 199b7c819..74e4e25ec 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/rose.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/rose.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:rose" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:red_dye", - "count": 2 + "count": 2, + "item": "minecraft:red_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/silver_vase_flower.json b/src/generated/resources/data/create/recipes/milling/compat/byg/silver_vase_flower.json similarity index 55% rename from src/main/resources/data/create/recipes/compat/byg/milling/silver_vase_flower.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/silver_vase_flower.json index a35be9df4..0a1ada960 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/silver_vase_flower.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/silver_vase_flower.json @@ -1,29 +1,29 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:silver_vase_flower" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:pink_dye", - "count": 2 + "count": 2, + "item": "minecraft:pink_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:green_dye" }, { - "item": "minecraft:white_dye", - "chance": 0.05 + "chance": 0.05, + "item": "minecraft:white_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/snowdrops.json b/src/generated/resources/data/create/recipes/milling/compat/byg/snowdrops.json similarity index 55% rename from src/main/resources/data/create/recipes/compat/byg/milling/snowdrops.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/snowdrops.json index 7d951f554..76899f805 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/snowdrops.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/snowdrops.json @@ -1,29 +1,29 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:snowdrops" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:white_dye", - "count": 2 + "count": 2, + "item": "minecraft:white_dye" }, { - "item": "minecraft:lime_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:lime_dye" }, { - "item": "minecraft:white_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:white_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/tall_allium.json b/src/generated/resources/data/create/recipes/milling/compat/byg/tall_allium.json similarity index 57% rename from src/main/resources/data/create/recipes/compat/byg/milling/tall_allium.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/tall_allium.json index bd3572e89..48b179315 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/tall_allium.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/tall_allium.json @@ -1,31 +1,31 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:tall_allium" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:purple_dye", - "count": 3 + "count": 3, + "item": "minecraft:purple_dye" }, { - "item": "minecraft:purple_dye", + "chance": 0.05, "count": 2, - "chance": 0.05 + "item": "minecraft:purple_dye" }, { - "item": "minecraft:magenta_dye", + "chance": 0.25, "count": 2, - "chance": 0.25 + "item": "minecraft:magenta_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/tall_pink_allium.json b/src/generated/resources/data/create/recipes/milling/compat/byg/tall_pink_allium.json similarity index 58% rename from src/main/resources/data/create/recipes/compat/byg/milling/tall_pink_allium.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/tall_pink_allium.json index d74d86fd6..41518e222 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/tall_pink_allium.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/tall_pink_allium.json @@ -1,31 +1,31 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:tall_pink_allium" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:pink_dye", - "count": 3 + "count": 3, + "item": "minecraft:pink_dye" }, { - "item": "minecraft:pink_dye", + "chance": 0.05, "count": 2, - "chance": 0.05 + "item": "minecraft:pink_dye" }, { - "item": "minecraft:magenta_dye", + "chance": 0.25, "count": 2, - "chance": 0.25 + "item": "minecraft:magenta_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/torch_ginger.json b/src/generated/resources/data/create/recipes/milling/compat/byg/torch_ginger.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/byg/milling/torch_ginger.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/torch_ginger.json index a8d711643..25f8b6299 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/torch_ginger.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/torch_ginger.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:torch_ginger" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:red_dye", - "count": 2 + "count": 2, + "item": "minecraft:red_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/violet_leather_flower.json b/src/generated/resources/data/create/recipes/milling/compat/byg/violet_leather_flower.json similarity index 63% rename from src/main/resources/data/create/recipes/compat/byg/milling/violet_leather_flower.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/violet_leather_flower.json index 2e4603d9e..a9e58a6e0 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/violet_leather_flower.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/violet_leather_flower.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:violet_leather_flower" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:blue_dye", - "count": 2 + "count": 2, + "item": "minecraft:blue_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.25 + "chance": 0.25, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/white_anemone.json b/src/generated/resources/data/create/recipes/milling/compat/byg/white_anemone.json similarity index 63% rename from src/main/resources/data/create/recipes/compat/byg/milling/white_anemone.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/white_anemone.json index 117cf07b5..fb1e94a8d 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/white_anemone.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/white_anemone.json @@ -1,26 +1,26 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:white_anemone" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:white_dye", - "count": 2 + "count": 2, + "item": "minecraft:white_dye" }, { - "item": "minecraft:light_gray_dye", + "chance": 0.1, "count": 2, - "chance": 0.1 + "item": "minecraft:light_gray_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/white_puffball_cap.json b/src/generated/resources/data/create/recipes/milling/compat/byg/white_puffball_cap.json similarity index 70% rename from src/main/resources/data/create/recipes/compat/byg/milling/white_puffball_cap.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/white_puffball_cap.json index 24a0873df..bbec105f9 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/white_puffball_cap.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/white_puffball_cap.json @@ -1,21 +1,21 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:white_puffball_cap" } ], + "processingTime": 150, "results": [ { - "item": "byg:white_puffball_spores", - "chance": 0.25 + "chance": 0.25, + "item": "byg:white_puffball_spores" } - ], - "processingTime": 150 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/winter_rose.json b/src/generated/resources/data/create/recipes/milling/compat/byg/winter_rose.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/byg/milling/winter_rose.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/winter_rose.json index 9716223a9..313b04a51 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/winter_rose.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/winter_rose.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:winter_rose" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:white_dye", - "count": 2 + "count": 2, + "item": "minecraft:white_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/winter_scilla.json b/src/generated/resources/data/create/recipes/milling/compat/byg/winter_scilla.json similarity index 61% rename from src/main/resources/data/create/recipes/compat/byg/milling/winter_scilla.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/winter_scilla.json index b06c7cc56..22410e5f2 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/winter_scilla.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/winter_scilla.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:winter_scilla" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:light_blue_dye", - "count": 2 + "count": 2, + "item": "minecraft:light_blue_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/yellow_daffodil.json b/src/generated/resources/data/create/recipes/milling/compat/byg/yellow_daffodil.json similarity index 55% rename from src/main/resources/data/create/recipes/compat/byg/milling/yellow_daffodil.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/yellow_daffodil.json index fa33746ec..5bcdaa5db 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/yellow_daffodil.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/yellow_daffodil.json @@ -1,29 +1,29 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:yellow_daffodil" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:yellow_dye", - "count": 2 + "count": 2, + "item": "minecraft:yellow_dye" }, { - "item": "minecraft:green_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:green_dye" }, { - "item": "minecraft:pink_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:pink_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/yellow_tulip.json b/src/generated/resources/data/create/recipes/milling/compat/byg/yellow_tulip.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/byg/milling/yellow_tulip.json rename to src/generated/resources/data/create/recipes/milling/compat/byg/yellow_tulip.json index d1a947c79..54d0fdbe8 100644 --- a/src/main/resources/data/create/recipes/compat/byg/milling/yellow_tulip.json +++ b/src/generated/resources/data/create/recipes/milling/compat/byg/yellow_tulip.json @@ -1,25 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:milling", "ingredients": [ { "item": "byg:yellow_tulip" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:yellow_dye", - "count": 2 + "count": 2, + "item": "minecraft:yellow_dye" }, { - "item": "minecraft:lime_dye", - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:lime_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/druidcraft/milling/lavender.json b/src/generated/resources/data/create/recipes/milling/compat/druidcraft/lavender.json similarity index 60% rename from src/main/resources/data/create/recipes/compat/druidcraft/milling/lavender.json rename to src/generated/resources/data/create/recipes/milling/compat/druidcraft/lavender.json index 9b5847bda..711221da5 100644 --- a/src/main/resources/data/create/recipes/compat/druidcraft/milling/lavender.json +++ b/src/generated/resources/data/create/recipes/milling/compat/druidcraft/lavender.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "druidcraft" } ], - "type": "create:milling", "ingredients": [ { "item": "druidcraft:lavender" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:purple_dye", - "count": 2 + "count": 2, + "item": "minecraft:purple_dye" }, { - "item": "minecraft:purple_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:purple_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/environmental/milling/bird_of_paradise.json b/src/generated/resources/data/create/recipes/milling/compat/environmental/bird_of_paradise.json similarity index 53% rename from src/main/resources/data/create/recipes/compat/environmental/milling/bird_of_paradise.json rename to src/generated/resources/data/create/recipes/milling/compat/environmental/bird_of_paradise.json index 0128172cc..a32f76a19 100644 --- a/src/main/resources/data/create/recipes/compat/environmental/milling/bird_of_paradise.json +++ b/src/generated/resources/data/create/recipes/milling/compat/environmental/bird_of_paradise.json @@ -1,31 +1,29 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "environmental" } ], - "type": "create:milling", "ingredients": [ { "item": "environmental:bird_of_paradise" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:orange_dye", - "count": 3 + "count": 3, + "item": "minecraft:orange_dye" }, { - "item": "minecraft:blue_dye", - "count": 1, - "chance": 0.25 + "chance": 0.25, + "item": "minecraft:blue_dye" }, { - "item": "minecraft:red_dye", - "count": 1, - "chance": 0.25 + "chance": 0.25, + "item": "minecraft:red_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/environmental/milling/blue_delphinium.json b/src/generated/resources/data/create/recipes/milling/compat/environmental/blue_delphinium.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/environmental/milling/blue_delphinium.json rename to src/generated/resources/data/create/recipes/milling/compat/environmental/blue_delphinium.json index c37ac70bb..809d16d69 100644 --- a/src/main/resources/data/create/recipes/compat/environmental/milling/blue_delphinium.json +++ b/src/generated/resources/data/create/recipes/milling/compat/environmental/blue_delphinium.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "environmental" } ], - "type": "create:milling", "ingredients": [ { "item": "environmental:blue_delphinium" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:blue_dye", - "count": 3 + "count": 3, + "item": "minecraft:blue_dye" }, { - "item": "minecraft:blue_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:blue_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/environmental/milling/bluebell.json b/src/generated/resources/data/create/recipes/milling/compat/environmental/bluebell.json similarity index 74% rename from src/main/resources/data/create/recipes/compat/environmental/milling/bluebell.json rename to src/generated/resources/data/create/recipes/milling/compat/environmental/bluebell.json index b56eb9e8c..8dc2ede69 100644 --- a/src/main/resources/data/create/recipes/compat/environmental/milling/bluebell.json +++ b/src/generated/resources/data/create/recipes/milling/compat/environmental/bluebell.json @@ -1,21 +1,21 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "environmental" } ], - "type": "create:milling", "ingredients": [ { "item": "environmental:bluebell" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:blue_dye", - "count": 2 + "count": 2, + "item": "minecraft:blue_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/environmental/milling/cartwheel.json b/src/generated/resources/data/create/recipes/milling/compat/environmental/cartwheel.json similarity index 61% rename from src/main/resources/data/create/recipes/compat/environmental/milling/cartwheel.json rename to src/generated/resources/data/create/recipes/milling/compat/environmental/cartwheel.json index 2659d0528..a2733eb1b 100644 --- a/src/main/resources/data/create/recipes/compat/environmental/milling/cartwheel.json +++ b/src/generated/resources/data/create/recipes/milling/compat/environmental/cartwheel.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "environmental" } ], - "type": "create:milling", "ingredients": [ { "item": "environmental:cartwheel" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:pink_dye", - "count": 2 + "count": 2, + "item": "minecraft:pink_dye" }, { - "item": "minecraft:orange_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:orange_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/environmental/milling/dianthus.json b/src/generated/resources/data/create/recipes/milling/compat/environmental/dianthus.json similarity index 61% rename from src/main/resources/data/create/recipes/compat/environmental/milling/dianthus.json rename to src/generated/resources/data/create/recipes/milling/compat/environmental/dianthus.json index 646c2c6ee..35f489446 100644 --- a/src/main/resources/data/create/recipes/compat/environmental/milling/dianthus.json +++ b/src/generated/resources/data/create/recipes/milling/compat/environmental/dianthus.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "environmental" } ], - "type": "create:milling", "ingredients": [ { "item": "environmental:dianthus" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:green_dye", - "count": 2 + "count": 2, + "item": "minecraft:green_dye" }, { - "item": "minecraft:green_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/environmental/milling/magenta_hibiscus.json b/src/generated/resources/data/create/recipes/milling/compat/environmental/magenta_hibiscus.json similarity index 61% rename from src/main/resources/data/create/recipes/compat/environmental/milling/magenta_hibiscus.json rename to src/generated/resources/data/create/recipes/milling/compat/environmental/magenta_hibiscus.json index f33e7bda3..50764da6b 100644 --- a/src/main/resources/data/create/recipes/compat/environmental/milling/magenta_hibiscus.json +++ b/src/generated/resources/data/create/recipes/milling/compat/environmental/magenta_hibiscus.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "environmental" } ], - "type": "create:milling", "ingredients": [ { "item": "environmental:magenta_hibiscus" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:magenta_dye", - "count": 2 + "count": 2, + "item": "minecraft:magenta_dye" }, { - "item": "minecraft:magenta_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:magenta_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/environmental/milling/orange_hibiscus.json b/src/generated/resources/data/create/recipes/milling/compat/environmental/orange_hibiscus.json similarity index 61% rename from src/main/resources/data/create/recipes/compat/environmental/milling/orange_hibiscus.json rename to src/generated/resources/data/create/recipes/milling/compat/environmental/orange_hibiscus.json index ab7f0b6e9..62961f2af 100644 --- a/src/main/resources/data/create/recipes/compat/environmental/milling/orange_hibiscus.json +++ b/src/generated/resources/data/create/recipes/milling/compat/environmental/orange_hibiscus.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "environmental" } ], - "type": "create:milling", "ingredients": [ { "item": "environmental:orange_hibiscus" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:orange_dye", - "count": 2 + "count": 2, + "item": "minecraft:orange_dye" }, { - "item": "minecraft:orange_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:orange_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/environmental/milling/pink_delphinium.json b/src/generated/resources/data/create/recipes/milling/compat/environmental/pink_delphinium.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/environmental/milling/pink_delphinium.json rename to src/generated/resources/data/create/recipes/milling/compat/environmental/pink_delphinium.json index 9c2e2591c..3d88c420b 100644 --- a/src/main/resources/data/create/recipes/compat/environmental/milling/pink_delphinium.json +++ b/src/generated/resources/data/create/recipes/milling/compat/environmental/pink_delphinium.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "environmental" } ], - "type": "create:milling", "ingredients": [ { "item": "environmental:pink_delphinium" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:pink_dye", - "count": 3 + "count": 3, + "item": "minecraft:pink_dye" }, { - "item": "minecraft:pink_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:pink_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/environmental/milling/pink_hibiscus.json b/src/generated/resources/data/create/recipes/milling/compat/environmental/pink_hibiscus.json similarity index 61% rename from src/main/resources/data/create/recipes/compat/environmental/milling/pink_hibiscus.json rename to src/generated/resources/data/create/recipes/milling/compat/environmental/pink_hibiscus.json index a85f2e64b..ab1ba0769 100644 --- a/src/main/resources/data/create/recipes/compat/environmental/milling/pink_hibiscus.json +++ b/src/generated/resources/data/create/recipes/milling/compat/environmental/pink_hibiscus.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "environmental" } ], - "type": "create:milling", "ingredients": [ { "item": "environmental:pink_hibiscus" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:pink_dye", - "count": 2 + "count": 2, + "item": "minecraft:pink_dye" }, { - "item": "minecraft:pink_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:pink_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/environmental/milling/purple_delphinium.json b/src/generated/resources/data/create/recipes/milling/compat/environmental/purple_delphinium.json similarity index 61% rename from src/main/resources/data/create/recipes/compat/environmental/milling/purple_delphinium.json rename to src/generated/resources/data/create/recipes/milling/compat/environmental/purple_delphinium.json index b99812be8..88cc5ebbf 100644 --- a/src/main/resources/data/create/recipes/compat/environmental/milling/purple_delphinium.json +++ b/src/generated/resources/data/create/recipes/milling/compat/environmental/purple_delphinium.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "environmental" } ], - "type": "create:milling", "ingredients": [ { "item": "environmental:purple_delphinium" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:purple_dye", - "count": 3 + "count": 3, + "item": "minecraft:purple_dye" }, { - "item": "minecraft:purple_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:purple_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/environmental/milling/purple_hibiscus.json b/src/generated/resources/data/create/recipes/milling/compat/environmental/purple_hibiscus.json similarity index 61% rename from src/main/resources/data/create/recipes/compat/environmental/milling/purple_hibiscus.json rename to src/generated/resources/data/create/recipes/milling/compat/environmental/purple_hibiscus.json index 2615523eb..b69ceaf30 100644 --- a/src/main/resources/data/create/recipes/compat/environmental/milling/purple_hibiscus.json +++ b/src/generated/resources/data/create/recipes/milling/compat/environmental/purple_hibiscus.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "environmental" } ], - "type": "create:milling", "ingredients": [ { "item": "environmental:purple_hibiscus" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:purple_dye", - "count": 2 + "count": 2, + "item": "minecraft:purple_dye" }, { - "item": "minecraft:purple_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:purple_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/environmental/milling/red_hibiscus.json b/src/generated/resources/data/create/recipes/milling/compat/environmental/red_hibiscus.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/environmental/milling/red_hibiscus.json rename to src/generated/resources/data/create/recipes/milling/compat/environmental/red_hibiscus.json index 6424ad955..528c4933c 100644 --- a/src/main/resources/data/create/recipes/compat/environmental/milling/red_hibiscus.json +++ b/src/generated/resources/data/create/recipes/milling/compat/environmental/red_hibiscus.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "environmental" } ], - "type": "create:milling", "ingredients": [ { "item": "environmental:red_hibiscus" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:red_dye", - "count": 2 + "count": 2, + "item": "minecraft:red_dye" }, { - "item": "minecraft:red_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:red_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/environmental/milling/red_lotus_flower.json b/src/generated/resources/data/create/recipes/milling/compat/environmental/red_lotus_flower.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/environmental/milling/red_lotus_flower.json rename to src/generated/resources/data/create/recipes/milling/compat/environmental/red_lotus_flower.json index 7e3f96013..d93297a42 100644 --- a/src/main/resources/data/create/recipes/compat/environmental/milling/red_lotus_flower.json +++ b/src/generated/resources/data/create/recipes/milling/compat/environmental/red_lotus_flower.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "environmental" } ], - "type": "create:milling", "ingredients": [ { "item": "environmental:red_lotus_flower" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:red_dye", - "count": 2 + "count": 2, + "item": "minecraft:red_dye" }, { - "item": "minecraft:red_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:red_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/environmental/milling/violet.json b/src/generated/resources/data/create/recipes/milling/compat/environmental/violet.json similarity index 60% rename from src/main/resources/data/create/recipes/compat/environmental/milling/violet.json rename to src/generated/resources/data/create/recipes/milling/compat/environmental/violet.json index b9be9005f..4f9e0c7c8 100644 --- a/src/main/resources/data/create/recipes/compat/environmental/milling/violet.json +++ b/src/generated/resources/data/create/recipes/milling/compat/environmental/violet.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "environmental" } ], - "type": "create:milling", "ingredients": [ { "item": "environmental:violet" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:purple_dye", - "count": 2 + "count": 2, + "item": "minecraft:purple_dye" }, { - "item": "minecraft:purple_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:purple_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/environmental/milling/white_delphinium.json b/src/generated/resources/data/create/recipes/milling/compat/environmental/white_delphinium.json similarity index 61% rename from src/main/resources/data/create/recipes/compat/environmental/milling/white_delphinium.json rename to src/generated/resources/data/create/recipes/milling/compat/environmental/white_delphinium.json index 9f49ca4d4..e64483b37 100644 --- a/src/main/resources/data/create/recipes/compat/environmental/milling/white_delphinium.json +++ b/src/generated/resources/data/create/recipes/milling/compat/environmental/white_delphinium.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "environmental" } ], - "type": "create:milling", "ingredients": [ { "item": "environmental:white_delphinium" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:white_dye", - "count": 3 + "count": 3, + "item": "minecraft:white_dye" }, { - "item": "minecraft:white_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:white_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/environmental/milling/white_lotus_flower.json b/src/generated/resources/data/create/recipes/milling/compat/environmental/white_lotus_flower.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/environmental/milling/white_lotus_flower.json rename to src/generated/resources/data/create/recipes/milling/compat/environmental/white_lotus_flower.json index e024f73c5..8a2992754 100644 --- a/src/main/resources/data/create/recipes/compat/environmental/milling/white_lotus_flower.json +++ b/src/generated/resources/data/create/recipes/milling/compat/environmental/white_lotus_flower.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "environmental" } ], - "type": "create:milling", "ingredients": [ { "item": "environmental:white_lotus_flower" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:white_dye", - "count": 2 + "count": 2, + "item": "minecraft:white_dye" }, { - "item": "minecraft:lime_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:lime_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/environmental/milling/yellow_hibiscus.json b/src/generated/resources/data/create/recipes/milling/compat/environmental/yellow_hibiscus.json similarity index 61% rename from src/main/resources/data/create/recipes/compat/environmental/milling/yellow_hibiscus.json rename to src/generated/resources/data/create/recipes/milling/compat/environmental/yellow_hibiscus.json index bd9b8453c..b5ac1c3a3 100644 --- a/src/main/resources/data/create/recipes/compat/environmental/milling/yellow_hibiscus.json +++ b/src/generated/resources/data/create/recipes/milling/compat/environmental/yellow_hibiscus.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "environmental" } ], - "type": "create:milling", "ingredients": [ { "item": "environmental:yellow_hibiscus" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:yellow_dye", - "count": 2 + "count": 2, + "item": "minecraft:yellow_dye" }, { - "item": "minecraft:yellow_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:yellow_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/alpha_dandelion.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/alpha_dandelion.json new file mode 100644 index 000000000..3b926ac0a --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/alpha_dandelion.json @@ -0,0 +1,25 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:alpha_dandelion" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:yellow_dye" + }, + { + "chance": 0.05, + "item": "minecraft:yellow_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/alpha_rose.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/alpha_rose.json new file mode 100644 index 000000000..86a159187 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/alpha_rose.json @@ -0,0 +1,25 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:alpha_rose" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:red_dye" + }, + { + "chance": 0.05, + "item": "minecraft:red_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/aster.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/aster.json new file mode 100644 index 000000000..c18eba4af --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/aster.json @@ -0,0 +1,29 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:aster" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:light_blue_dye" + }, + { + "chance": 0.2, + "item": "minecraft:white_dye" + }, + { + "chance": 0.05, + "item": "minecraft:light_gray_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/black_snowbelle.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/black_snowbelle.json new file mode 100644 index 000000000..a9d2b4c89 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/black_snowbelle.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:black_snowbelle" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:black_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/bleeding_heart.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/bleeding_heart.json new file mode 100644 index 000000000..e7cb9a4b2 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/bleeding_heart.json @@ -0,0 +1,25 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:bleeding_heart" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:magenta_dye" + }, + { + "chance": 0.1, + "item": "minecraft:pink_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/blue_lupine.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/blue_lupine.json new file mode 100644 index 000000000..516ee8a1a --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/blue_lupine.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:blue_lupine" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:blue_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/blue_snowbelle.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/blue_snowbelle.json new file mode 100644 index 000000000..6c08fa011 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/blue_snowbelle.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:blue_snowbelle" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:blue_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/brown_snowbelle.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/brown_snowbelle.json new file mode 100644 index 000000000..1011252b7 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/brown_snowbelle.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:brown_snowbelle" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:brown_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/cactus_flower.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/cactus_flower.json new file mode 100644 index 000000000..5465085fe --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/cactus_flower.json @@ -0,0 +1,29 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:cactus_flower" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:magenta_dye" + }, + { + "chance": 0.2, + "item": "minecraft:purple_dye" + }, + { + "chance": 0.1, + "item": "minecraft:green_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/cyan_snowbelle.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/cyan_snowbelle.json new file mode 100644 index 000000000..6bfcded9d --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/cyan_snowbelle.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:cyan_snowbelle" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:cyan_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/daisy.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/daisy.json new file mode 100644 index 000000000..9d4b0f028 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/daisy.json @@ -0,0 +1,29 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:daisy" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:light_gray_dye" + }, + { + "chance": 0.2, + "item": "minecraft:white_dye" + }, + { + "chance": 0.05, + "item": "minecraft:yellow_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/day_lily.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/day_lily.json new file mode 100644 index 000000000..a88b364eb --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/day_lily.json @@ -0,0 +1,29 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:day_lily" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:orange_dye" + }, + { + "chance": 0.1, + "item": "minecraft:lime_dye" + }, + { + "chance": 0.1, + "item": "minecraft:red_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/dorcel.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/dorcel.json new file mode 100644 index 000000000..ca2c44c32 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/dorcel.json @@ -0,0 +1,25 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:dorcel" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:black_dye" + }, + { + "chance": 0.1, + "item": "minecraft:brown_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/felicia_daisy.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/felicia_daisy.json new file mode 100644 index 000000000..ce52cfd95 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/felicia_daisy.json @@ -0,0 +1,29 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:felicia_daisy" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:light_blue_dye" + }, + { + "chance": 0.2, + "item": "minecraft:blue_dye" + }, + { + "chance": 0.05, + "item": "minecraft:white_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/fireweed.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/fireweed.json new file mode 100644 index 000000000..7acc2b5d0 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/fireweed.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:fireweed" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:magenta_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/glistering_bloom.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/glistering_bloom.json new file mode 100644 index 000000000..9115801c8 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/glistering_bloom.json @@ -0,0 +1,29 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:glistering_bloom" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:pink_dye" + }, + { + "chance": 0.25, + "item": "minecraft:magenta_dye" + }, + { + "chance": 0.25, + "item": "minecraft:light_blue_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/gray_snowbelle.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/gray_snowbelle.json new file mode 100644 index 000000000..193551c0a --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/gray_snowbelle.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:gray_snowbelle" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:gray_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/green_snowbelle.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/green_snowbelle.json new file mode 100644 index 000000000..0b268a693 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/green_snowbelle.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:green_snowbelle" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:green_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/hibiscus.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/hibiscus.json new file mode 100644 index 000000000..dbd51c2f2 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/hibiscus.json @@ -0,0 +1,25 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:hibiscus" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:yellow_dye" + }, + { + "chance": 0.2, + "item": "minecraft:red_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/hyssop.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/hyssop.json new file mode 100644 index 000000000..5496943f8 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/hyssop.json @@ -0,0 +1,29 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:hyssop" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:purple_dye" + }, + { + "chance": 0.1, + "item": "minecraft:magenta_dye" + }, + { + "chance": 0.1, + "item": "minecraft:green_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/light_blue_snowbelle.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/light_blue_snowbelle.json new file mode 100644 index 000000000..bb6f06586 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/light_blue_snowbelle.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:light_blue_snowbelle" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:light_blue_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/light_gray_snowbelle.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/light_gray_snowbelle.json new file mode 100644 index 000000000..95463c23f --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/light_gray_snowbelle.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:light_gray_snowbelle" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:light_gray_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/lime_snowbelle.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/lime_snowbelle.json new file mode 100644 index 000000000..952b06a2f --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/lime_snowbelle.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:lime_snowbelle" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:lime_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/magenta_snowbelle.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/magenta_snowbelle.json new file mode 100644 index 000000000..ec782f9b8 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/magenta_snowbelle.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:magenta_snowbelle" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:magenta_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/mallow.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/mallow.json new file mode 100644 index 000000000..9dbf18797 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/mallow.json @@ -0,0 +1,25 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:mallow" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:orange_dye" + }, + { + "chance": 0.1, + "item": "minecraft:lime_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/orange_coneflower.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/orange_coneflower.json new file mode 100644 index 000000000..4abcad284 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/orange_coneflower.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:orange_coneflower" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:orange_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/orange_snowbelle.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/orange_snowbelle.json new file mode 100644 index 000000000..9c76ecf45 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/orange_snowbelle.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:orange_snowbelle" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:orange_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/pink_lupine.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/pink_lupine.json new file mode 100644 index 000000000..1024969d5 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/pink_lupine.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:pink_lupine" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:pink_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/pink_snowbelle.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/pink_snowbelle.json new file mode 100644 index 000000000..ce4563e98 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/pink_snowbelle.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:pink_snowbelle" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:pink_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/poppy_bush.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/poppy_bush.json new file mode 100644 index 000000000..8b435264d --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/poppy_bush.json @@ -0,0 +1,25 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:poppy_bush" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:red_dye" + }, + { + "chance": 0.1, + "item": "minecraft:green_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/purple_coneflower.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/purple_coneflower.json new file mode 100644 index 000000000..58c5cad7d --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/purple_coneflower.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:purple_coneflower" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:purple_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/purple_lupine.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/purple_lupine.json new file mode 100644 index 000000000..f196152b3 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/purple_lupine.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:purple_lupine" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:purple_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/purple_snowbelle.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/purple_snowbelle.json new file mode 100644 index 000000000..c272a2a62 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/purple_snowbelle.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:purple_snowbelle" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:purple_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/red_lupine.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/red_lupine.json new file mode 100644 index 000000000..b3a1169cf --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/red_lupine.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:red_lupine" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:red_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/red_snowbelle.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/red_snowbelle.json new file mode 100644 index 000000000..25586a0e9 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/red_snowbelle.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:red_snowbelle" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:red_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/salmon_poppy_bush.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/salmon_poppy_bush.json new file mode 100644 index 000000000..eb1d7f916 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/salmon_poppy_bush.json @@ -0,0 +1,25 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:salmon_poppy_bush" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:pink_dye" + }, + { + "chance": 0.1, + "item": "minecraft:green_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/tassel.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/tassel.json new file mode 100644 index 000000000..638bdcacc --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/tassel.json @@ -0,0 +1,29 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:tassel" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:light_gray_dye" + }, + { + "chance": 0.2, + "item": "minecraft:white_dye" + }, + { + "chance": 0.05, + "item": "minecraft:yellow_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/tsubaki.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/tsubaki.json new file mode 100644 index 000000000..d0ffb178b --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/tsubaki.json @@ -0,0 +1,25 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:tsubaki" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:red_dye" + }, + { + "chance": 0.1, + "item": "minecraft:green_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/waratah.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/waratah.json new file mode 100644 index 000000000..a97183e8a --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/waratah.json @@ -0,0 +1,29 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:waratah" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:red_dye" + }, + { + "chance": 0.2, + "item": "minecraft:red_dye" + }, + { + "chance": 0.1, + "item": "minecraft:green_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/white_snowbelle.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/white_snowbelle.json new file mode 100644 index 000000000..47329f928 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/white_snowbelle.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:white_snowbelle" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:white_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/white_trillium.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/white_trillium.json new file mode 100644 index 000000000..e50550128 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/white_trillium.json @@ -0,0 +1,29 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:white_trillium" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:light_gray_dye" + }, + { + "chance": 0.2, + "item": "minecraft:white_dye" + }, + { + "chance": 0.05, + "item": "minecraft:yellow_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/wilting_trillium.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/wilting_trillium.json new file mode 100644 index 000000000..ec793b2e2 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/wilting_trillium.json @@ -0,0 +1,25 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:wilting_trillium" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:brown_dye" + }, + { + "chance": 0.1, + "item": "minecraft:light_gray_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/yellow_lupine.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/yellow_lupine.json new file mode 100644 index 000000000..7213a83f2 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/yellow_lupine.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:yellow_lupine" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:yellow_dye" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/yellow_snowbelle.json b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/yellow_snowbelle.json new file mode 100644 index 000000000..0f6deaa12 --- /dev/null +++ b/src/generated/resources/data/create/recipes/milling/compat/regions_unexplored/yellow_snowbelle.json @@ -0,0 +1,21 @@ +{ + "type": "create:milling", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:yellow_snowbelle" + } + ], + "processingTime": 50, + "results": [ + { + "count": 2, + "item": "minecraft:yellow_dye" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/supplementaries/milling/flax.json b/src/generated/resources/data/create/recipes/milling/compat/supplementaries/flax.json similarity index 67% rename from src/main/resources/data/create/recipes/compat/supplementaries/milling/flax.json rename to src/generated/resources/data/create/recipes/milling/compat/supplementaries/flax.json index 178dfd21d..3e48e9335 100644 --- a/src/main/resources/data/create/recipes/compat/supplementaries/milling/flax.json +++ b/src/generated/resources/data/create/recipes/milling/compat/supplementaries/flax.json @@ -1,29 +1,29 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "supplementaries" } ], - "type": "create:milling", "ingredients": [ { "item": "supplementaries:flax" } ], + "processingTime": 150, "results": [ { "item": "minecraft:string" }, { - "item": "minecraft:string", + "chance": 0.25, "count": 2, - "chance": 0.25 + "item": "minecraft:string" }, { - "item": "supplementaries:flax_seeds", - "chance": 0.25 + "chance": 0.25, + "item": "supplementaries:flax_seeds" } - ], - "processingTime": 150 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/tconstruct/milling/necrotic_bone.json b/src/generated/resources/data/create/recipes/milling/compat/tconstruct/nercotic_bone.json similarity index 58% rename from src/main/resources/data/create/recipes/compat/tconstruct/milling/necrotic_bone.json rename to src/generated/resources/data/create/recipes/milling/compat/tconstruct/nercotic_bone.json index bf66d163f..2dc1a9f26 100644 --- a/src/main/resources/data/create/recipes/compat/tconstruct/milling/necrotic_bone.json +++ b/src/generated/resources/data/create/recipes/milling/compat/tconstruct/nercotic_bone.json @@ -1,30 +1,30 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "tconstruct" } ], - "type": "create:milling", "ingredients": [ { "item": "tconstruct:necrotic_bone" } ], + "processingTime": 100, "results": [ { - "item": "minecraft:bone_meal", - "count": 3 - }, - { - "item": "minecraft:black_dye", - "chance": 0.25 - }, - { - "item": "minecraft:bone_meal", "count": 3, - "chance": 0.25 + "item": "minecraft:bone_meal" + }, + { + "chance": 0.25, + "item": "minecraft:black_dye" + }, + { + "chance": 0.25, + "count": 3, + "item": "minecraft:bone_meal" } - ], - "processingTime": 100 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/upgrade_aquatic/milling/flowering_rush.json b/src/generated/resources/data/create/recipes/milling/compat/upgrade_aquatic/flowering_rush.json similarity index 66% rename from src/main/resources/data/create/recipes/compat/upgrade_aquatic/milling/flowering_rush.json rename to src/generated/resources/data/create/recipes/milling/compat/upgrade_aquatic/flowering_rush.json index 3f8a63e24..b0b8c97bb 100644 --- a/src/main/resources/data/create/recipes/compat/upgrade_aquatic/milling/flowering_rush.json +++ b/src/generated/resources/data/create/recipes/milling/compat/upgrade_aquatic/flowering_rush.json @@ -1,26 +1,26 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "upgrade_aquatic" } ], - "type": "create:milling", "ingredients": [ { "item": "upgrade_aquatic:flowering_rush" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:pink_dye", - "count": 3 + "count": 3, + "item": "minecraft:pink_dye" }, { - "item": "minecraft:pink_dye", + "chance": 0.25, "count": 2, - "chance": 0.25 + "item": "minecraft:pink_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/upgrade_aquatic/milling/pink_searocket.json b/src/generated/resources/data/create/recipes/milling/compat/upgrade_aquatic/pink_searocket.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/upgrade_aquatic/milling/pink_searocket.json rename to src/generated/resources/data/create/recipes/milling/compat/upgrade_aquatic/pink_searocket.json index 5e758b22d..dddc91967 100644 --- a/src/main/resources/data/create/recipes/compat/upgrade_aquatic/milling/pink_searocket.json +++ b/src/generated/resources/data/create/recipes/milling/compat/upgrade_aquatic/pink_searocket.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "upgrade_aquatic" } ], - "type": "create:milling", "ingredients": [ { "item": "upgrade_aquatic:pink_searocket" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:pink_dye", - "count": 2 + "count": 2, + "item": "minecraft:pink_dye" }, { - "item": "minecraft:green_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/upgrade_aquatic/milling/white_searocket.json b/src/generated/resources/data/create/recipes/milling/compat/upgrade_aquatic/white_searocket.json similarity index 62% rename from src/main/resources/data/create/recipes/compat/upgrade_aquatic/milling/white_searocket.json rename to src/generated/resources/data/create/recipes/milling/compat/upgrade_aquatic/white_searocket.json index 0efbcccb3..69aeef982 100644 --- a/src/main/resources/data/create/recipes/compat/upgrade_aquatic/milling/white_searocket.json +++ b/src/generated/resources/data/create/recipes/milling/compat/upgrade_aquatic/white_searocket.json @@ -1,26 +1,25 @@ { + "type": "create:milling", "conditions": [ { "type": "forge:mod_loaded", "modid": "upgrade_aquatic" } ], - "type": "create:milling", "ingredients": [ { "item": "upgrade_aquatic:white_searocket" } ], + "processingTime": 50, "results": [ { - "item": "minecraft:white_dye", - "count": 2 + "count": 2, + "item": "minecraft:white_dye" }, { - "item": "minecraft:green_dye", - "count": 1, - "chance": 0.1 + "chance": 0.1, + "item": "minecraft:green_dye" } - ], - "processingTime": 50 + ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/ae2/mixing/fluix_crystal.json b/src/generated/resources/data/create/recipes/mixing/compat/ae2/fluix_crystal.json similarity index 75% rename from src/main/resources/data/create/recipes/compat/ae2/mixing/fluix_crystal.json rename to src/generated/resources/data/create/recipes/mixing/compat/ae2/fluix_crystal.json index a3d6de188..2f09ce743 100644 --- a/src/main/resources/data/create/recipes/compat/ae2/mixing/fluix_crystal.json +++ b/src/generated/resources/data/create/recipes/mixing/compat/ae2/fluix_crystal.json @@ -1,32 +1,31 @@ { + "type": "create:mixing", "conditions": [ { "type": "forge:mod_loaded", "modid": "ae2" } ], - "type": "create:mixing", "ingredients": [ { "tag": "forge:dusts/redstone" }, - { - "fluid": "minecraft:water", - "nbt": {}, - "amount": 250 - }, { "item": "ae2:charged_certus_quartz_crystal" }, { "tag": "forge:gems/quartz" + }, + { + "amount": 250, + "fluid": "minecraft:water", + "nbt": {} } ], "results": [ { - "item": "ae2:fluix_crystal", - "count": 2 + "count": 2, + "item": "ae2:fluix_crystal" } - ], - "heatRequirement": "none" + ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/mixing/compat/regions_unexplored/peat_mud.json b/src/generated/resources/data/create/recipes/mixing/compat/regions_unexplored/peat_mud.json new file mode 100644 index 000000000..8e5e62229 --- /dev/null +++ b/src/generated/resources/data/create/recipes/mixing/compat/regions_unexplored/peat_mud.json @@ -0,0 +1,24 @@ +{ + "type": "create:mixing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:peat_dirt" + }, + { + "amount": 250, + "fluid": "minecraft:water", + "nbt": {} + } + ], + "results": [ + { + "item": "regions_unexplored:peat_mud" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/mixing/compat/regions_unexplored/silt_mud.json b/src/generated/resources/data/create/recipes/mixing/compat/regions_unexplored/silt_mud.json new file mode 100644 index 000000000..5f0dca08a --- /dev/null +++ b/src/generated/resources/data/create/recipes/mixing/compat/regions_unexplored/silt_mud.json @@ -0,0 +1,24 @@ +{ + "type": "create:mixing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:silt_dirt" + }, + { + "amount": 250, + "fluid": "minecraft:water", + "nbt": {} + } + ], + "results": [ + { + "item": "regions_unexplored:silt_mud" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/pressing/aether_dirt_path.json b/src/generated/resources/data/create/recipes/pressing/aether_dirt_path.json new file mode 100644 index 000000000..903bc8eff --- /dev/null +++ b/src/generated/resources/data/create/recipes/pressing/aether_dirt_path.json @@ -0,0 +1,19 @@ +{ + "type": "create:pressing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "aether" + } + ], + "ingredients": [ + { + "item": "aether:aether_dirt" + } + ], + "results": [ + { + "item": "aether:aether_dirt_path" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/pressing/aether_dirt_path_from_grass.json b/src/generated/resources/data/create/recipes/pressing/aether_dirt_path_from_grass.json new file mode 100644 index 000000000..169ed8a68 --- /dev/null +++ b/src/generated/resources/data/create/recipes/pressing/aether_dirt_path_from_grass.json @@ -0,0 +1,19 @@ +{ + "type": "create:pressing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "aether" + } + ], + "ingredients": [ + { + "item": "aether:aether_grass_block" + } + ], + "results": [ + { + "item": "aether:aether_dirt_path" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/atmospheric/pressing/crustose_path.json b/src/generated/resources/data/create/recipes/pressing/compat/atmospheric/crustose_path.json similarity index 77% rename from src/main/resources/data/create/recipes/compat/atmospheric/pressing/crustose_path.json rename to src/generated/resources/data/create/recipes/pressing/compat/atmospheric/crustose_path.json index d46e53cd2..fc2e9711c 100644 --- a/src/main/resources/data/create/recipes/compat/atmospheric/pressing/crustose_path.json +++ b/src/generated/resources/data/create/recipes/pressing/compat/atmospheric/crustose_path.json @@ -1,17 +1,15 @@ { + "type": "create:pressing", "conditions": [ { "type": "forge:mod_loaded", "modid": "atmospheric" } ], - "type": "create:pressing", "ingredients": [ - [ - { - "item": "atmospheric:crustose" - } - ] + { + "item": "atmospheric:crustose" + } ], "results": [ { diff --git a/src/main/resources/data/create/recipes/compat/betterendforge/pressing/amber_moss_path.json b/src/generated/resources/data/create/recipes/pressing/compat/betterendforge/amber_moss_path.json similarity index 76% rename from src/main/resources/data/create/recipes/compat/betterendforge/pressing/amber_moss_path.json rename to src/generated/resources/data/create/recipes/pressing/compat/betterendforge/amber_moss_path.json index 4a580ce1d..738c3491c 100644 --- a/src/main/resources/data/create/recipes/compat/betterendforge/pressing/amber_moss_path.json +++ b/src/generated/resources/data/create/recipes/pressing/compat/betterendforge/amber_moss_path.json @@ -1,17 +1,15 @@ { + "type": "create:pressing", "conditions": [ { "type": "forge:mod_loaded", "modid": "betterendforge" } ], - "type": "create:pressing", "ingredients": [ - [ - { - "item": "betterendforge:amber_moss" - } - ] + { + "item": "betterendforge:amber_moss" + } ], "results": [ { diff --git a/src/main/resources/data/create/recipes/compat/betterendforge/pressing/cave_moss_path.json b/src/generated/resources/data/create/recipes/pressing/compat/betterendforge/cave_moss_path.json similarity index 76% rename from src/main/resources/data/create/recipes/compat/betterendforge/pressing/cave_moss_path.json rename to src/generated/resources/data/create/recipes/pressing/compat/betterendforge/cave_moss_path.json index ee93ce6f5..d5f79d647 100644 --- a/src/main/resources/data/create/recipes/compat/betterendforge/pressing/cave_moss_path.json +++ b/src/generated/resources/data/create/recipes/pressing/compat/betterendforge/cave_moss_path.json @@ -1,17 +1,15 @@ { + "type": "create:pressing", "conditions": [ { "type": "forge:mod_loaded", "modid": "betterendforge" } ], - "type": "create:pressing", "ingredients": [ - [ - { - "item": "betterendforge:cave_moss" - } - ] + { + "item": "betterendforge:cave_moss" + } ], "results": [ { diff --git a/src/main/resources/data/create/recipes/compat/betterendforge/pressing/chorus_nylium_path.json b/src/generated/resources/data/create/recipes/pressing/compat/betterendforge/chorus_nylium_path.json similarity index 76% rename from src/main/resources/data/create/recipes/compat/betterendforge/pressing/chorus_nylium_path.json rename to src/generated/resources/data/create/recipes/pressing/compat/betterendforge/chorus_nylium_path.json index 96c02b035..2352a6aeb 100644 --- a/src/main/resources/data/create/recipes/compat/betterendforge/pressing/chorus_nylium_path.json +++ b/src/generated/resources/data/create/recipes/pressing/compat/betterendforge/chorus_nylium_path.json @@ -1,17 +1,15 @@ { + "type": "create:pressing", "conditions": [ { "type": "forge:mod_loaded", "modid": "betterendforge" } ], - "type": "create:pressing", "ingredients": [ - [ - { - "item": "betterendforge:chorus_nylium" - } - ] + { + "item": "betterendforge:chorus_nylium" + } ], "results": [ { diff --git a/src/main/resources/data/create/recipes/compat/betterendforge/pressing/crystal_moss_path.json b/src/generated/resources/data/create/recipes/pressing/compat/betterendforge/crystal_moss_path.json similarity index 76% rename from src/main/resources/data/create/recipes/compat/betterendforge/pressing/crystal_moss_path.json rename to src/generated/resources/data/create/recipes/pressing/compat/betterendforge/crystal_moss_path.json index 40e7bb3f5..898431c72 100644 --- a/src/main/resources/data/create/recipes/compat/betterendforge/pressing/crystal_moss_path.json +++ b/src/generated/resources/data/create/recipes/pressing/compat/betterendforge/crystal_moss_path.json @@ -1,17 +1,15 @@ { + "type": "create:pressing", "conditions": [ { "type": "forge:mod_loaded", "modid": "betterendforge" } ], - "type": "create:pressing", "ingredients": [ - [ - { - "item": "betterendforge:crystal_moss" - } - ] + { + "item": "betterendforge:crystal_moss" + } ], "results": [ { diff --git a/src/main/resources/data/create/recipes/compat/betterendforge/pressing/end_moss_path.json b/src/generated/resources/data/create/recipes/pressing/compat/betterendforge/end_moss_path.json similarity index 76% rename from src/main/resources/data/create/recipes/compat/betterendforge/pressing/end_moss_path.json rename to src/generated/resources/data/create/recipes/pressing/compat/betterendforge/end_moss_path.json index 48d9d7991..b591078c3 100644 --- a/src/main/resources/data/create/recipes/compat/betterendforge/pressing/end_moss_path.json +++ b/src/generated/resources/data/create/recipes/pressing/compat/betterendforge/end_moss_path.json @@ -1,17 +1,15 @@ { + "type": "create:pressing", "conditions": [ { "type": "forge:mod_loaded", "modid": "betterendforge" } ], - "type": "create:pressing", "ingredients": [ - [ - { - "item": "betterendforge:end_moss" - } - ] + { + "item": "betterendforge:end_moss" + } ], "results": [ { diff --git a/src/main/resources/data/create/recipes/compat/betterendforge/pressing/end_myclium_path.json b/src/generated/resources/data/create/recipes/pressing/compat/betterendforge/end_myclium_path.json similarity index 60% rename from src/main/resources/data/create/recipes/compat/betterendforge/pressing/end_myclium_path.json rename to src/generated/resources/data/create/recipes/pressing/compat/betterendforge/end_myclium_path.json index d117d9df6..744bdef32 100644 --- a/src/main/resources/data/create/recipes/compat/betterendforge/pressing/end_myclium_path.json +++ b/src/generated/resources/data/create/recipes/pressing/compat/betterendforge/end_myclium_path.json @@ -1,21 +1,19 @@ { + "type": "create:pressing", "conditions": [ { "type": "forge:mod_loaded", "modid": "betterendforge" } ], - "type": "create:pressing", "ingredients": [ - [ - { - "item": "betterendforge:end_mycelium" - } - ] + { + "item": "betterendforge:end_myclium" + } ], "results": [ { - "item": "betterendforge:end_mycelium_path" + "item": "betterendforge:end_myclium_path" } ] } \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/betterendforge/pressing/jungle_moss_path.json b/src/generated/resources/data/create/recipes/pressing/compat/betterendforge/jungle_moss_path.json similarity index 76% rename from src/main/resources/data/create/recipes/compat/betterendforge/pressing/jungle_moss_path.json rename to src/generated/resources/data/create/recipes/pressing/compat/betterendforge/jungle_moss_path.json index 36fc2aa30..63feb0eb6 100644 --- a/src/main/resources/data/create/recipes/compat/betterendforge/pressing/jungle_moss_path.json +++ b/src/generated/resources/data/create/recipes/pressing/compat/betterendforge/jungle_moss_path.json @@ -1,17 +1,15 @@ { + "type": "create:pressing", "conditions": [ { "type": "forge:mod_loaded", "modid": "betterendforge" } ], - "type": "create:pressing", "ingredients": [ - [ - { - "item": "betterendforge:jungle_moss" - } - ] + { + "item": "betterendforge:jungle_moss" + } ], "results": [ { diff --git a/src/main/resources/data/create/recipes/compat/betterendforge/pressing/pink_moss_path.json b/src/generated/resources/data/create/recipes/pressing/compat/betterendforge/pink_moss_path.json similarity index 76% rename from src/main/resources/data/create/recipes/compat/betterendforge/pressing/pink_moss_path.json rename to src/generated/resources/data/create/recipes/pressing/compat/betterendforge/pink_moss_path.json index f41bcf66c..a65fa82df 100644 --- a/src/main/resources/data/create/recipes/compat/betterendforge/pressing/pink_moss_path.json +++ b/src/generated/resources/data/create/recipes/pressing/compat/betterendforge/pink_moss_path.json @@ -1,17 +1,15 @@ { + "type": "create:pressing", "conditions": [ { "type": "forge:mod_loaded", "modid": "betterendforge" } ], - "type": "create:pressing", "ingredients": [ - [ - { - "item": "betterendforge:pink_moss" - } - ] + { + "item": "betterendforge:pink_moss" + } ], "results": [ { diff --git a/src/main/resources/data/create/recipes/compat/betterendforge/pressing/shadow_grass_path.json b/src/generated/resources/data/create/recipes/pressing/compat/betterendforge/shadow_grass_path.json similarity index 76% rename from src/main/resources/data/create/recipes/compat/betterendforge/pressing/shadow_grass_path.json rename to src/generated/resources/data/create/recipes/pressing/compat/betterendforge/shadow_grass_path.json index 2194ae013..eacdaec1e 100644 --- a/src/main/resources/data/create/recipes/compat/betterendforge/pressing/shadow_grass_path.json +++ b/src/generated/resources/data/create/recipes/pressing/compat/betterendforge/shadow_grass_path.json @@ -1,17 +1,15 @@ { + "type": "create:pressing", "conditions": [ { "type": "forge:mod_loaded", "modid": "betterendforge" } ], - "type": "create:pressing", "ingredients": [ - [ - { - "item": "betterendforge:shadow_grass" - } - ] + { + "item": "betterendforge:shadow_grass" + } ], "results": [ { diff --git a/src/main/resources/data/create/recipes/compat/byg/pressing/lush_grass_path.json b/src/generated/resources/data/create/recipes/pressing/compat/byg/lush_grass_path.json similarity index 64% rename from src/main/resources/data/create/recipes/compat/byg/pressing/lush_grass_path.json rename to src/generated/resources/data/create/recipes/pressing/compat/byg/lush_grass_path.json index b4d6896c2..587b8dc8d 100644 --- a/src/main/resources/data/create/recipes/compat/byg/pressing/lush_grass_path.json +++ b/src/generated/resources/data/create/recipes/pressing/compat/byg/lush_grass_path.json @@ -1,20 +1,15 @@ { + "type": "create:pressing", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:pressing", "ingredients": [ - [ - { - "item": "byg:lush_grass_block" - }, - { - "item": "byg:lush_dirt" - } - ] + { + "item": "byg:lush_grass" + } ], "results": [ { diff --git a/src/main/resources/data/create/recipes/compat/environmental/pressing/mycelium_path.json b/src/generated/resources/data/create/recipes/pressing/compat/environmental/mycelium_path.json similarity index 78% rename from src/main/resources/data/create/recipes/compat/environmental/pressing/mycelium_path.json rename to src/generated/resources/data/create/recipes/pressing/compat/environmental/mycelium_path.json index 452fcc3ab..5d9695a34 100644 --- a/src/main/resources/data/create/recipes/compat/environmental/pressing/mycelium_path.json +++ b/src/generated/resources/data/create/recipes/pressing/compat/environmental/mycelium_path.json @@ -1,17 +1,15 @@ { + "type": "create:pressing", "conditions": [ { "type": "forge:mod_loaded", "modid": "environmental" } ], - "type": "create:pressing", "ingredients": [ - [ - { - "item": "minecraft:mycelium" - } - ] + { + "item": "minecraft:mycelium" + } ], "results": [ { diff --git a/src/main/resources/data/create/recipes/compat/environmental/pressing/podzol_path.json b/src/generated/resources/data/create/recipes/pressing/compat/environmental/podzol_path.json similarity index 78% rename from src/main/resources/data/create/recipes/compat/environmental/pressing/podzol_path.json rename to src/generated/resources/data/create/recipes/pressing/compat/environmental/podzol_path.json index a75ed6119..4e119bca5 100644 --- a/src/main/resources/data/create/recipes/compat/environmental/pressing/podzol_path.json +++ b/src/generated/resources/data/create/recipes/pressing/compat/environmental/podzol_path.json @@ -1,17 +1,15 @@ { + "type": "create:pressing", "conditions": [ { "type": "forge:mod_loaded", "modid": "environmental" } ], - "type": "create:pressing", "ingredients": [ - [ - { - "item": "minecraft:podzol" - } - ] + { + "item": "minecraft:podzol" + } ], "results": [ { diff --git a/src/generated/resources/data/create/recipes/pressing/compat/infernalexp/crimson_nylium_path.json b/src/generated/resources/data/create/recipes/pressing/compat/infernalexp/crimson_nylium_path.json new file mode 100644 index 000000000..76c233861 --- /dev/null +++ b/src/generated/resources/data/create/recipes/pressing/compat/infernalexp/crimson_nylium_path.json @@ -0,0 +1,19 @@ +{ + "type": "create:pressing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "infernalexp" + } + ], + "ingredients": [ + { + "item": "minecraft:crimson_nylium" + } + ], + "results": [ + { + "item": "infernalexp:crimson_nylium_path" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/pressing/compat/infernalexp/soul_soil_path.json b/src/generated/resources/data/create/recipes/pressing/compat/infernalexp/soul_soil_path.json new file mode 100644 index 000000000..187fd7167 --- /dev/null +++ b/src/generated/resources/data/create/recipes/pressing/compat/infernalexp/soul_soil_path.json @@ -0,0 +1,19 @@ +{ + "type": "create:pressing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "infernalexp" + } + ], + "ingredients": [ + { + "item": "minecraft:soul_soil" + } + ], + "results": [ + { + "item": "infernalexp:soul_soil_path" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/pressing/compat/infernalexp/warped_nylium_path.json b/src/generated/resources/data/create/recipes/pressing/compat/infernalexp/warped_nylium_path.json new file mode 100644 index 000000000..2d6ddf433 --- /dev/null +++ b/src/generated/resources/data/create/recipes/pressing/compat/infernalexp/warped_nylium_path.json @@ -0,0 +1,19 @@ +{ + "type": "create:pressing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "infernalexp" + } + ], + "ingredients": [ + { + "item": "minecraft:warped_nylium" + } + ], + "results": [ + { + "item": "infernalexp:warped_nylium_path" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/pressing/compat/vampirism/cursed_earth_path.json b/src/generated/resources/data/create/recipes/pressing/compat/vampirism/cursed_earth_path.json new file mode 100644 index 000000000..82a884930 --- /dev/null +++ b/src/generated/resources/data/create/recipes/pressing/compat/vampirism/cursed_earth_path.json @@ -0,0 +1,19 @@ +{ + "type": "create:pressing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "vampirism" + } + ], + "ingredients": [ + { + "item": "vampirism:cursed_earth" + } + ], + "results": [ + { + "item": "vampirism:cursed_earth_path" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/pressing/cursed_earth_path_from_grass.json b/src/generated/resources/data/create/recipes/pressing/cursed_earth_path_from_grass.json new file mode 100644 index 000000000..cc43860a0 --- /dev/null +++ b/src/generated/resources/data/create/recipes/pressing/cursed_earth_path_from_grass.json @@ -0,0 +1,19 @@ +{ + "type": "create:pressing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "vampirism" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:cursed_grass" + } + ], + "results": [ + { + "item": "vampirism:cursed_earth_path" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/pressing/peat_dirt_path.json b/src/generated/resources/data/create/recipes/pressing/peat_dirt_path.json new file mode 100644 index 000000000..8a3f56e98 --- /dev/null +++ b/src/generated/resources/data/create/recipes/pressing/peat_dirt_path.json @@ -0,0 +1,19 @@ +{ + "type": "create:pressing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:peat_dirt" + } + ], + "results": [ + { + "item": "regions_unexplored:peat_dirt_path" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/pressing/peat_dirt_path_from_grass.json b/src/generated/resources/data/create/recipes/pressing/peat_dirt_path_from_grass.json new file mode 100644 index 000000000..c8907f561 --- /dev/null +++ b/src/generated/resources/data/create/recipes/pressing/peat_dirt_path_from_grass.json @@ -0,0 +1,19 @@ +{ + "type": "create:pressing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:peat_grass_block" + } + ], + "results": [ + { + "item": "regions_unexplored:peat_dirt_path" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/pressing/silt_dirt_path.json b/src/generated/resources/data/create/recipes/pressing/silt_dirt_path.json new file mode 100644 index 000000000..20741bf3c --- /dev/null +++ b/src/generated/resources/data/create/recipes/pressing/silt_dirt_path.json @@ -0,0 +1,19 @@ +{ + "type": "create:pressing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:silt_dirt" + } + ], + "results": [ + { + "item": "regions_unexplored:silt_dirt_path" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/pressing/silt_dirt_path_from_grass.json b/src/generated/resources/data/create/recipes/pressing/silt_dirt_path_from_grass.json new file mode 100644 index 000000000..c19cb2be6 --- /dev/null +++ b/src/generated/resources/data/create/recipes/pressing/silt_dirt_path_from_grass.json @@ -0,0 +1,19 @@ +{ + "type": "create:pressing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "regions_unexplored" + } + ], + "ingredients": [ + { + "item": "regions_unexplored:silt_grass_block" + } + ], + "results": [ + { + "item": "regions_unexplored:silt_dirt_path" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/sequenced_assembly/sturdy_sheet.json b/src/generated/resources/data/create/recipes/sequenced_assembly/sturdy_sheet.json index 17735f302..afd4cb607 100644 --- a/src/generated/resources/data/create/recipes/sequenced_assembly/sturdy_sheet.json +++ b/src/generated/resources/data/create/recipes/sequenced_assembly/sturdy_sheet.json @@ -1,7 +1,7 @@ { "type": "create:sequenced_assembly", "ingredient": { - "item": "create:powdered_obsidian" + "tag": "forge:dusts/obsidian" }, "loops": 1, "results": [ diff --git a/src/generated/resources/data/create/recipes/smelting/ingot_aluminum_compat_ic2.json b/src/generated/resources/data/create/recipes/smelting/ingot_aluminum_compat_ic2.json new file mode 100644 index 000000000..3a948a09b --- /dev/null +++ b/src/generated/resources/data/create/recipes/smelting/ingot_aluminum_compat_ic2.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:smelting", + "category": "blocks", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "ic2" + } + ], + "cookingtime": 200, + "experience": 0.1, + "ingredient": { + "item": "create:crushed_raw_aluminum" + }, + "result": "ic2:ingot_aluminum" +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/smelting/ingot_silver_compat_ic2.json b/src/generated/resources/data/create/recipes/smelting/ingot_silver_compat_ic2.json new file mode 100644 index 000000000..0131ffe7c --- /dev/null +++ b/src/generated/resources/data/create/recipes/smelting/ingot_silver_compat_ic2.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:smelting", + "category": "blocks", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "ic2" + } + ], + "cookingtime": 200, + "experience": 0.1, + "ingredient": { + "item": "create:crushed_raw_silver" + }, + "result": "ic2:ingot_silver" +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/smelting/ingot_tin_compat_ic2.json b/src/generated/resources/data/create/recipes/smelting/ingot_tin_compat_ic2.json new file mode 100644 index 000000000..36983f22b --- /dev/null +++ b/src/generated/resources/data/create/recipes/smelting/ingot_tin_compat_ic2.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:smelting", + "category": "blocks", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "ic2" + } + ], + "cookingtime": 200, + "experience": 0.1, + "ingredient": { + "item": "create:crushed_raw_tin" + }, + "result": "ic2:ingot_tin" +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/smelting/ingot_uranium_compat_ic2.json b/src/generated/resources/data/create/recipes/smelting/ingot_uranium_compat_ic2.json new file mode 100644 index 000000000..9835e0284 --- /dev/null +++ b/src/generated/resources/data/create/recipes/smelting/ingot_uranium_compat_ic2.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:smelting", + "category": "blocks", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "ic2" + } + ], + "cookingtime": 200, + "experience": 0.1, + "ingredient": { + "item": "create:crushed_raw_uranium" + }, + "result": "ic2:ingot_uranium" +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/smelting/lead_ingot_compat_oreganized.json b/src/generated/resources/data/create/recipes/smelting/lead_ingot_compat_oreganized.json new file mode 100644 index 000000000..76615f165 --- /dev/null +++ b/src/generated/resources/data/create/recipes/smelting/lead_ingot_compat_oreganized.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:smelting", + "category": "blocks", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "oreganized" + } + ], + "cookingtime": 200, + "experience": 0.1, + "ingredient": { + "item": "create:crushed_raw_lead" + }, + "result": "oreganized:lead_ingot" +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/smelting/silver_ingot_compat_galosphere.json b/src/generated/resources/data/create/recipes/smelting/silver_ingot_compat_galosphere.json new file mode 100644 index 000000000..38d91167c --- /dev/null +++ b/src/generated/resources/data/create/recipes/smelting/silver_ingot_compat_galosphere.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:smelting", + "category": "blocks", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "galosphere" + } + ], + "cookingtime": 200, + "experience": 0.1, + "ingredient": { + "item": "create:crushed_raw_silver" + }, + "result": "galosphere:silver_ingot" +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/smelting/silver_ingot_compat_iceandfire.json b/src/generated/resources/data/create/recipes/smelting/silver_ingot_compat_iceandfire.json new file mode 100644 index 000000000..6772e75dd --- /dev/null +++ b/src/generated/resources/data/create/recipes/smelting/silver_ingot_compat_iceandfire.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:smelting", + "category": "blocks", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "iceandfire" + } + ], + "cookingtime": 200, + "experience": 0.1, + "ingredient": { + "item": "create:crushed_raw_silver" + }, + "result": "iceandfire:silver_ingot" +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/smelting/silver_ingot_compat_oreganized.json b/src/generated/resources/data/create/recipes/smelting/silver_ingot_compat_oreganized.json new file mode 100644 index 000000000..6ecc74f59 --- /dev/null +++ b/src/generated/resources/data/create/recipes/smelting/silver_ingot_compat_oreganized.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:smelting", + "category": "blocks", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "oreganized" + } + ], + "cookingtime": 200, + "experience": 0.1, + "ingredient": { + "item": "create:crushed_raw_silver" + }, + "result": "oreganized:silver_ingot" +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/splashing/atmospheric/arid_sand.json b/src/generated/resources/data/create/recipes/splashing/atmospheric/arid_sand.json new file mode 100644 index 000000000..ba194409a --- /dev/null +++ b/src/generated/resources/data/create/recipes/splashing/atmospheric/arid_sand.json @@ -0,0 +1,24 @@ +{ + "type": "create:splashing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "atmospheric" + } + ], + "ingredients": [ + { + "item": "atmospheric:arid_sand" + } + ], + "results": [ + { + "chance": 0.25, + "item": "minecraft:clay_ball" + }, + { + "chance": 0.05, + "item": "atmospheric:aloe_kernels" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/splashing/atmospheric/red_arid_sand.json b/src/generated/resources/data/create/recipes/splashing/atmospheric/red_arid_sand.json new file mode 100644 index 000000000..c8c12c1f0 --- /dev/null +++ b/src/generated/resources/data/create/recipes/splashing/atmospheric/red_arid_sand.json @@ -0,0 +1,25 @@ +{ + "type": "create:splashing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "atmospheric" + } + ], + "ingredients": [ + { + "item": "atmospheric:red_arid_sand" + } + ], + "results": [ + { + "chance": 0.125, + "count": 4, + "item": "minecraft:clay_ball" + }, + { + "chance": 0.05, + "item": "atmospheric:aloe_kernels" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/splashing/cryptic_magma_block.json b/src/generated/resources/data/create/recipes/splashing/byg/cryptic_magma_block.json similarity index 100% rename from src/main/resources/data/create/recipes/compat/byg/splashing/cryptic_magma_block.json rename to src/generated/resources/data/create/recipes/splashing/byg/cryptic_magma_block.json index 7c8ced440..b180f32e9 100644 --- a/src/main/resources/data/create/recipes/compat/byg/splashing/cryptic_magma_block.json +++ b/src/generated/resources/data/create/recipes/splashing/byg/cryptic_magma_block.json @@ -1,11 +1,11 @@ { + "type": "create:splashing", "conditions": [ { "type": "forge:mod_loaded", "modid": "byg" } ], - "type": "create:splashing", "ingredients": [ { "item": "byg:cryptic_magma_block" diff --git a/src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_end_corrock.json b/src/generated/resources/data/create/recipes/splashing/endergetic/petrified_end_corrock.json similarity index 100% rename from src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_end_corrock.json rename to src/generated/resources/data/create/recipes/splashing/endergetic/petrified_end_corrock.json index 922cd9445..7541dda6e 100644 --- a/src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_end_corrock.json +++ b/src/generated/resources/data/create/recipes/splashing/endergetic/petrified_end_corrock.json @@ -1,11 +1,11 @@ { + "type": "create:splashing", "conditions": [ { "type": "forge:mod_loaded", "modid": "endergetic" } ], - "type": "create:splashing", "ingredients": [ { "item": "endergetic:end_corrock" diff --git a/src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_end_corrock_block.json b/src/generated/resources/data/create/recipes/splashing/endergetic/petrified_end_corrock_block.json similarity index 100% rename from src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_end_corrock_block.json rename to src/generated/resources/data/create/recipes/splashing/endergetic/petrified_end_corrock_block.json index 33f3e4598..5917962e9 100644 --- a/src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_end_corrock_block.json +++ b/src/generated/resources/data/create/recipes/splashing/endergetic/petrified_end_corrock_block.json @@ -1,11 +1,11 @@ { + "type": "create:splashing", "conditions": [ { "type": "forge:mod_loaded", "modid": "endergetic" } ], - "type": "create:splashing", "ingredients": [ { "item": "endergetic:end_corrock_block" diff --git a/src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_end_corrock_crown.json b/src/generated/resources/data/create/recipes/splashing/endergetic/petrified_end_corrock_crown.json similarity index 100% rename from src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_end_corrock_crown.json rename to src/generated/resources/data/create/recipes/splashing/endergetic/petrified_end_corrock_crown.json index f0bdfc6e1..b0a6f43b3 100644 --- a/src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_end_corrock_crown.json +++ b/src/generated/resources/data/create/recipes/splashing/endergetic/petrified_end_corrock_crown.json @@ -1,11 +1,11 @@ { + "type": "create:splashing", "conditions": [ { "type": "forge:mod_loaded", "modid": "endergetic" } ], - "type": "create:splashing", "ingredients": [ { "item": "endergetic:end_corrock_crown" diff --git a/src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_nether_corrock.json b/src/generated/resources/data/create/recipes/splashing/endergetic/petrified_nether_corrock.json similarity index 100% rename from src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_nether_corrock.json rename to src/generated/resources/data/create/recipes/splashing/endergetic/petrified_nether_corrock.json index 5f0e48f9f..277415d44 100644 --- a/src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_nether_corrock.json +++ b/src/generated/resources/data/create/recipes/splashing/endergetic/petrified_nether_corrock.json @@ -1,11 +1,11 @@ { + "type": "create:splashing", "conditions": [ { "type": "forge:mod_loaded", "modid": "endergetic" } ], - "type": "create:splashing", "ingredients": [ { "item": "endergetic:nether_corrock" diff --git a/src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_nether_corrock_block.json b/src/generated/resources/data/create/recipes/splashing/endergetic/petrified_nether_corrock_block.json similarity index 100% rename from src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_nether_corrock_block.json rename to src/generated/resources/data/create/recipes/splashing/endergetic/petrified_nether_corrock_block.json index 5a28a9723..147db7227 100644 --- a/src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_nether_corrock_block.json +++ b/src/generated/resources/data/create/recipes/splashing/endergetic/petrified_nether_corrock_block.json @@ -1,11 +1,11 @@ { + "type": "create:splashing", "conditions": [ { "type": "forge:mod_loaded", "modid": "endergetic" } ], - "type": "create:splashing", "ingredients": [ { "item": "endergetic:nether_corrock_block" diff --git a/src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_nether_corrock_crown.json b/src/generated/resources/data/create/recipes/splashing/endergetic/petrified_nether_corrock_crown.json similarity index 100% rename from src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_nether_corrock_crown.json rename to src/generated/resources/data/create/recipes/splashing/endergetic/petrified_nether_corrock_crown.json index 6613d9bb4..0d0854349 100644 --- a/src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_nether_corrock_crown.json +++ b/src/generated/resources/data/create/recipes/splashing/endergetic/petrified_nether_corrock_crown.json @@ -1,11 +1,11 @@ { + "type": "create:splashing", "conditions": [ { "type": "forge:mod_loaded", "modid": "endergetic" } ], - "type": "create:splashing", "ingredients": [ { "item": "endergetic:nether_corrock_crown" diff --git a/src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_overworld_corrock.json b/src/generated/resources/data/create/recipes/splashing/endergetic/petrified_overworld_corrock.json similarity index 100% rename from src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_overworld_corrock.json rename to src/generated/resources/data/create/recipes/splashing/endergetic/petrified_overworld_corrock.json index 82cd86c81..def6cf034 100644 --- a/src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_overworld_corrock.json +++ b/src/generated/resources/data/create/recipes/splashing/endergetic/petrified_overworld_corrock.json @@ -1,11 +1,11 @@ { + "type": "create:splashing", "conditions": [ { "type": "forge:mod_loaded", "modid": "endergetic" } ], - "type": "create:splashing", "ingredients": [ { "item": "endergetic:overworld_corrock" diff --git a/src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_overworld_corrock_block.json b/src/generated/resources/data/create/recipes/splashing/endergetic/petrified_overworld_corrock_block.json similarity index 100% rename from src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_overworld_corrock_block.json rename to src/generated/resources/data/create/recipes/splashing/endergetic/petrified_overworld_corrock_block.json index 8f451fa5f..ab9d35911 100644 --- a/src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_overworld_corrock_block.json +++ b/src/generated/resources/data/create/recipes/splashing/endergetic/petrified_overworld_corrock_block.json @@ -1,11 +1,11 @@ { + "type": "create:splashing", "conditions": [ { "type": "forge:mod_loaded", "modid": "endergetic" } ], - "type": "create:splashing", "ingredients": [ { "item": "endergetic:overworld_corrock_block" diff --git a/src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_overworld_corrock_crown.json b/src/generated/resources/data/create/recipes/splashing/endergetic/petrified_overworld_corrock_crown.json similarity index 100% rename from src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_overworld_corrock_crown.json rename to src/generated/resources/data/create/recipes/splashing/endergetic/petrified_overworld_corrock_crown.json index 840b884a0..6fb155c3f 100644 --- a/src/main/resources/data/create/recipes/compat/endergetic/splashing/petrified_overworld_corrock_crown.json +++ b/src/generated/resources/data/create/recipes/splashing/endergetic/petrified_overworld_corrock_crown.json @@ -1,11 +1,11 @@ { + "type": "create:splashing", "conditions": [ { "type": "forge:mod_loaded", "modid": "endergetic" } ], - "type": "create:splashing", "ingredients": [ { "item": "endergetic:overworld_corrock_crown" diff --git a/src/generated/resources/data/create/recipes/splashing/galosphere/crushed_raw_silver.json b/src/generated/resources/data/create/recipes/splashing/galosphere/crushed_raw_silver.json new file mode 100644 index 000000000..68143a883 --- /dev/null +++ b/src/generated/resources/data/create/recipes/splashing/galosphere/crushed_raw_silver.json @@ -0,0 +1,20 @@ +{ + "type": "create:splashing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "galosphere" + } + ], + "ingredients": [ + { + "item": "create:crushed_raw_silver" + } + ], + "results": [ + { + "count": 9, + "item": "galosphere:silver_nugget" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/splashing/ic2/crushed_raw_aluminum.json b/src/generated/resources/data/create/recipes/splashing/ic2/crushed_raw_aluminum.json new file mode 100644 index 000000000..738e1d254 --- /dev/null +++ b/src/generated/resources/data/create/recipes/splashing/ic2/crushed_raw_aluminum.json @@ -0,0 +1,20 @@ +{ + "type": "create:splashing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "ic2" + } + ], + "ingredients": [ + { + "item": "create:crushed_raw_aluminum" + } + ], + "results": [ + { + "count": 9, + "item": "ic2:nugget_aluminum" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/splashing/ic2/crushed_raw_silver.json b/src/generated/resources/data/create/recipes/splashing/ic2/crushed_raw_silver.json new file mode 100644 index 000000000..ec6c0676c --- /dev/null +++ b/src/generated/resources/data/create/recipes/splashing/ic2/crushed_raw_silver.json @@ -0,0 +1,20 @@ +{ + "type": "create:splashing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "ic2" + } + ], + "ingredients": [ + { + "item": "create:crushed_raw_silver" + } + ], + "results": [ + { + "count": 9, + "item": "ic2:nugget_silver" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/splashing/ic2/crushed_raw_tin.json b/src/generated/resources/data/create/recipes/splashing/ic2/crushed_raw_tin.json new file mode 100644 index 000000000..98783874e --- /dev/null +++ b/src/generated/resources/data/create/recipes/splashing/ic2/crushed_raw_tin.json @@ -0,0 +1,20 @@ +{ + "type": "create:splashing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "ic2" + } + ], + "ingredients": [ + { + "item": "create:crushed_raw_tin" + } + ], + "results": [ + { + "count": 9, + "item": "ic2:nugget_tin" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/splashing/ic2/crushed_raw_uranium.json b/src/generated/resources/data/create/recipes/splashing/ic2/crushed_raw_uranium.json new file mode 100644 index 000000000..c10df26b2 --- /dev/null +++ b/src/generated/resources/data/create/recipes/splashing/ic2/crushed_raw_uranium.json @@ -0,0 +1,20 @@ +{ + "type": "create:splashing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "ic2" + } + ], + "ingredients": [ + { + "item": "create:crushed_raw_uranium" + } + ], + "results": [ + { + "count": 9, + "item": "ic2:nugget_uranium" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/splashing/iceandfire/crushed_raw_silver.json b/src/generated/resources/data/create/recipes/splashing/iceandfire/crushed_raw_silver.json new file mode 100644 index 000000000..25c1c0c48 --- /dev/null +++ b/src/generated/resources/data/create/recipes/splashing/iceandfire/crushed_raw_silver.json @@ -0,0 +1,20 @@ +{ + "type": "create:splashing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "iceandfire" + } + ], + "ingredients": [ + { + "item": "create:crushed_raw_silver" + } + ], + "results": [ + { + "count": 9, + "item": "iceandfire:silver_nugget" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/splashing/oreganized/crushed_raw_lead.json b/src/generated/resources/data/create/recipes/splashing/oreganized/crushed_raw_lead.json new file mode 100644 index 000000000..1bec57f49 --- /dev/null +++ b/src/generated/resources/data/create/recipes/splashing/oreganized/crushed_raw_lead.json @@ -0,0 +1,20 @@ +{ + "type": "create:splashing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "oreganized" + } + ], + "ingredients": [ + { + "item": "create:crushed_raw_lead" + } + ], + "results": [ + { + "count": 9, + "item": "oreganized:lead_nugget" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/splashing/oreganized/crushed_raw_silver.json b/src/generated/resources/data/create/recipes/splashing/oreganized/crushed_raw_silver.json new file mode 100644 index 000000000..2e0fc6992 --- /dev/null +++ b/src/generated/resources/data/create/recipes/splashing/oreganized/crushed_raw_silver.json @@ -0,0 +1,20 @@ +{ + "type": "create:splashing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "oreganized" + } + ], + "ingredients": [ + { + "item": "create:crushed_raw_silver" + } + ], + "results": [ + { + "count": 9, + "item": "oreganized:silver_nugget" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/splashing/quark/rusty_iron_plate.json b/src/generated/resources/data/create/recipes/splashing/quark/rusty_iron_plate.json new file mode 100644 index 000000000..5c8cc482a --- /dev/null +++ b/src/generated/resources/data/create/recipes/splashing/quark/rusty_iron_plate.json @@ -0,0 +1,19 @@ +{ + "type": "create:splashing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "quark" + } + ], + "ingredients": [ + { + "item": "quark:iron_plate" + } + ], + "results": [ + { + "item": "quark:rusty_iron_plate" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/supplementaries/splashing/blackboard.json b/src/generated/resources/data/create/recipes/splashing/supplementaries/blackboard.json similarity index 100% rename from src/main/resources/data/create/recipes/compat/supplementaries/splashing/blackboard.json rename to src/generated/resources/data/create/recipes/splashing/supplementaries/blackboard.json index badf6115d..6b271df6a 100644 --- a/src/main/resources/data/create/recipes/compat/supplementaries/splashing/blackboard.json +++ b/src/generated/resources/data/create/recipes/splashing/supplementaries/blackboard.json @@ -1,11 +1,11 @@ { + "type": "create:splashing", "conditions": [ { "type": "forge:mod_loaded", "modid": "supplementaries" } ], - "type": "create:splashing", "ingredients": [ { "item": "supplementaries:blackboard" diff --git a/src/generated/resources/data/create/recipes/splashing/the_vault/ornate_chain_rusty.json b/src/generated/resources/data/create/recipes/splashing/the_vault/ornate_chain_rusty.json new file mode 100644 index 000000000..3b6e9a946 --- /dev/null +++ b/src/generated/resources/data/create/recipes/splashing/the_vault/ornate_chain_rusty.json @@ -0,0 +1,19 @@ +{ + "type": "create:splashing", + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "the_vault" + } + ], + "ingredients": [ + { + "item": "the_vault:ornate_chain" + } + ], + "results": [ + { + "item": "the_vault:ornate_chain_rusty" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/tags/blocks/brittle.json b/src/generated/resources/data/create/tags/blocks/brittle.json index 9f8b2fca3..903a04d5b 100644 --- a/src/generated/resources/data/create/tags/blocks/brittle.json +++ b/src/generated/resources/data/create/tags/blocks/brittle.json @@ -27,6 +27,18 @@ "minecraft:bell", "minecraft:cocoa", "minecraft:flower_pot", + "minecraft:moss_carpet", + "minecraft:bamboo_sapling", + "minecraft:big_dripleaf", + "minecraft:vine", + "minecraft:twisting_vines_plant", + "minecraft:twisting_vines", + "minecraft:weeping_vines_plant", + "minecraft:weeping_vines", + "minecraft:cake", + "#create:corals", + "#minecraft:cave_vines", + "#minecraft:banners", "#minecraft:beds", "#minecraft:doors" ] diff --git a/src/generated/resources/data/create/tags/blocks/corals.json b/src/generated/resources/data/create/tags/blocks/corals.json new file mode 100644 index 000000000..42f3bf11f --- /dev/null +++ b/src/generated/resources/data/create/tags/blocks/corals.json @@ -0,0 +1,34 @@ +{ + "values": [ + "minecraft:dead_tube_coral", + "minecraft:dead_brain_coral", + "minecraft:dead_bubble_coral", + "minecraft:dead_fire_coral", + "minecraft:dead_horn_coral", + "minecraft:tube_coral", + "minecraft:brain_coral", + "minecraft:bubble_coral", + "minecraft:fire_coral", + "minecraft:horn_coral", + "minecraft:dead_tube_coral_fan", + "minecraft:dead_brain_coral_fan", + "minecraft:dead_bubble_coral_fan", + "minecraft:dead_fire_coral_fan", + "minecraft:dead_horn_coral_fan", + "minecraft:tube_coral_fan", + "minecraft:brain_coral_fan", + "minecraft:bubble_coral_fan", + "minecraft:fire_coral_fan", + "minecraft:horn_coral_fan", + "minecraft:dead_tube_coral_wall_fan", + "minecraft:dead_brain_coral_wall_fan", + "minecraft:dead_bubble_coral_wall_fan", + "minecraft:dead_fire_coral_wall_fan", + "minecraft:dead_horn_coral_wall_fan", + "minecraft:tube_coral_wall_fan", + "minecraft:brain_coral_wall_fan", + "minecraft:bubble_coral_wall_fan", + "minecraft:fire_coral_wall_fan", + "minecraft:horn_coral_wall_fan" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/tags/blocks/movable_empty_collider.json b/src/generated/resources/data/create/tags/blocks/movable_empty_collider.json index 2ebcea708..334df233a 100644 --- a/src/generated/resources/data/create/tags/blocks/movable_empty_collider.json +++ b/src/generated/resources/data/create/tags/blocks/movable_empty_collider.json @@ -4,6 +4,15 @@ "minecraft:powder_snow", "minecraft:tripwire", "minecraft:tripwire_hook", - "#minecraft:fence_gates" + "minecraft:bamboo_sapling", + "minecraft:vine", + "minecraft:twisting_vines_plant", + "minecraft:twisting_vines", + "minecraft:weeping_vines_plant", + "minecraft:weeping_vines", + "#create:corals", + "#minecraft:cave_vines", + "#minecraft:fence_gates", + "#minecraft:banners" ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/tags/blocks/roots.json b/src/generated/resources/data/create/tags/blocks/roots.json new file mode 100644 index 000000000..43400c969 --- /dev/null +++ b/src/generated/resources/data/create/tags/blocks/roots.json @@ -0,0 +1,17 @@ +{ + "values": [ + "minecraft:mangrove_roots", + { + "id": "twilightforest:root", + "required": false + }, + { + "id": "twilightforest:liveroot_block", + "required": false + }, + { + "id": "twilightforest:mangrove_root", + "required": false + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/tags/blocks/safe_nbt.json b/src/generated/resources/data/create/tags/blocks/safe_nbt.json index 3db7d7024..04e710d06 100644 --- a/src/generated/resources/data/create/tags/blocks/safe_nbt.json +++ b/src/generated/resources/data/create/tags/blocks/safe_nbt.json @@ -24,6 +24,6 @@ "create:pulse_extender", "create:clipboard", "#minecraft:banners", - "#minecraft:signs" + "#minecraft:all_signs" ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/tags/items/modded_stripped_logs.json b/src/generated/resources/data/create/tags/items/modded_stripped_logs.json index 4bc6ab149..1da5f0de2 100644 --- a/src/generated/resources/data/create/tags/items/modded_stripped_logs.json +++ b/src/generated/resources/data/create/tags/items/modded_stripped_logs.json @@ -24,10 +24,6 @@ "id": "botania:stripped_dreamwood_log", "required": false }, - { - "id": "forbidden_arcanus:stripped_cherrywood_log", - "required": false - }, { "id": "forbidden_arcanus:stripped_mysterywood_log", "required": false @@ -52,10 +48,6 @@ "id": "byg:stripped_enchanted_log", "required": false }, - { - "id": "byg:stripped_cherry_log", - "required": false - }, { "id": "byg:stripped_cika_log", "required": false @@ -224,10 +216,6 @@ "id": "biomesoplenty:stripped_redwood_log", "required": false }, - { - "id": "biomesoplenty:stripped_cherry_log", - "required": false - }, { "id": "biomesoplenty:stripped_mahogany_log", "required": false @@ -284,14 +272,6 @@ "id": "blue_skies:stripped_maple_log", "required": false }, - { - "id": "blue_skies:stripped_cherry_log", - "required": false - }, - { - "id": "environmental:stripped_cherry_log", - "required": false - }, { "id": "environmental:stripped_willow_log", "required": false @@ -348,6 +328,90 @@ "id": "biomemakeover:stripped_ancient_oak_log", "required": false }, + { + "id": "regions_unexplored:stripped_alpha_log", + "required": false + }, + { + "id": "regions_unexplored:stripped_ashen_log", + "required": false + }, + { + "id": "regions_unexplored:stripped_baobab_log", + "required": false + }, + { + "id": "regions_unexplored:stripped_blackwood_log", + "required": false + }, + { + "id": "regions_unexplored:stripped_brimwood_log", + "required": false + }, + { + "id": "regions_unexplored:stripped_cobalt_log", + "required": false + }, + { + "id": "regions_unexplored:stripped_cypress_log", + "required": false + }, + { + "id": "regions_unexplored:stripped_dead_log", + "required": false + }, + { + "id": "regions_unexplored:stripped_eucalyptus_log", + "required": false + }, + { + "id": "regions_unexplored:stripped_joshua_log", + "required": false + }, + { + "id": "regions_unexplored:stripped_kapok_log", + "required": false + }, + { + "id": "regions_unexplored:stripped_larch_log", + "required": false + }, + { + "id": "regions_unexplored:stripped_magnolia_log", + "required": false + }, + { + "id": "regions_unexplored:stripped_maple_log", + "required": false + }, + { + "id": "regions_unexplored:stripped_mauve_log", + "required": false + }, + { + "id": "regions_unexplored:stripped_palm_log", + "required": false + }, + { + "id": "regions_unexplored:stripped_pine_log", + "required": false + }, + { + "id": "regions_unexplored:stripped_redwood_log", + "required": false + }, + { + "id": "regions_unexplored:stripped_socotra_log", + "required": false + }, + { + "id": "regions_unexplored:stripped_willow_log", + "required": false + }, + { + "id": "autumnity:maple", + "required": false + }, { "id": "infernalexp:stripped_luminous_stem", "required": false @@ -355,6 +419,26 @@ { "id": "byg:stripped_bulbis_stem", "required": false + }, + { + "id": "regions_unexplored:stripped_blue_bioshroom_stem", + "required": false + }, + { + "id": "regions_unexplored:stripped_green_bioshroom_stem", + "required": false + }, + { + "id": "regions_unexplored:stripped_pink_bioshroom_stem", + "required": false + }, + { + "id": "regions_unexplored:stripped_yellow_bioshroom_stem", + "required": false + }, + { + "id": "regions_unexplored:brimwood_log_magma", + "required": false } ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/tags/items/modded_stripped_wood.json b/src/generated/resources/data/create/tags/items/modded_stripped_wood.json index 9338056d7..154478f06 100644 --- a/src/generated/resources/data/create/tags/items/modded_stripped_wood.json +++ b/src/generated/resources/data/create/tags/items/modded_stripped_wood.json @@ -24,10 +24,6 @@ "id": "botania:stripped_dreamwood", "required": false }, - { - "id": "forbidden_arcanus:stripped_cherrywood", - "required": false - }, { "id": "forbidden_arcanus:stripped_mysterywood", "required": false @@ -52,10 +48,6 @@ "id": "byg:stripped_enchanted_wood", "required": false }, - { - "id": "byg:stripped_cherry_wood", - "required": false - }, { "id": "byg:stripped_cika_wood", "required": false @@ -224,10 +216,6 @@ "id": "biomesoplenty:stripped_redwood_wood", "required": false }, - { - "id": "biomesoplenty:stripped_cherry_wood", - "required": false - }, { "id": "biomesoplenty:stripped_mahogany_wood", "required": false @@ -284,14 +272,6 @@ "id": "blue_skies:stripped_maple_wood", "required": false }, - { - "id": "blue_skies:stripped_cherry_wood", - "required": false - }, - { - "id": "environmental:stripped_cherry_wood", - "required": false - }, { "id": "environmental:stripped_willow_wood", "required": false @@ -348,6 +328,86 @@ "id": "biomemakeover:stripped_ancient_oak_wood", "required": false }, + { + "id": "regions_unexplored:stripped_alpha_wood", + "required": false + }, + { + "id": "regions_unexplored:stripped_ashen_wood", + "required": false + }, + { + "id": "regions_unexplored:stripped_baobab_wood", + "required": false + }, + { + "id": "regions_unexplored:stripped_blackwood_wood", + "required": false + }, + { + "id": "regions_unexplored:stripped_brimwood_wood", + "required": false + }, + { + "id": "regions_unexplored:stripped_cobalt_wood", + "required": false + }, + { + "id": "regions_unexplored:stripped_cypress_wood", + "required": false + }, + { + "id": "regions_unexplored:stripped_dead_wood", + "required": false + }, + { + "id": "regions_unexplored:stripped_eucalyptus_wood", + "required": false + }, + { + "id": "regions_unexplored:stripped_joshua_wood", + "required": false + }, + { + "id": "regions_unexplored:stripped_kapok_wood", + "required": false + }, + { + "id": "regions_unexplored:stripped_larch_wood", + "required": false + }, + { + "id": "regions_unexplored:stripped_magnolia_wood", + "required": false + }, + { + "id": "regions_unexplored:stripped_maple_wood", + "required": false + }, + { + "id": "regions_unexplored:stripped_mauve_wood", + "required": false + }, + { + "id": "regions_unexplored:stripped_palm_wood", + "required": false + }, + { + "id": "regions_unexplored:stripped_pine_wood", + "required": false + }, + { + "id": "regions_unexplored:stripped_redwood_wood", + "required": false + }, + { + "id": "regions_unexplored:stripped_socotra_wood", + "required": false + }, + { + "id": "regions_unexplored:stripped_willow_wood", + "required": false + }, { "id": "infernalexp:stripped_luminous_hyphae", "required": false @@ -355,6 +415,22 @@ { "id": "byg:stripped_bulbis_wood", "required": false + }, + { + "id": "regions_unexplored:stripped_blue_bioshroom_hyphae", + "required": false + }, + { + "id": "regions_unexplored:stripped_green_bioshroom_hyphae", + "required": false + }, + { + "id": "regions_unexplored:stripped_pink_bioshroom_hyphae", + "required": false + }, + { + "id": "regions_unexplored:stripped_yellow_bioshroom_hyphae", + "required": false } ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/tags/items/stone_types/galosphere/allurite.json b/src/generated/resources/data/create/tags/items/stone_types/galosphere/allurite.json new file mode 100644 index 000000000..ebcb8d0bc --- /dev/null +++ b/src/generated/resources/data/create/tags/items/stone_types/galosphere/allurite.json @@ -0,0 +1,44 @@ +{ + "values": [ + { + "id": "galosphere:allurite_block", + "required": false + }, + { + "id": "galosphere:allurite_stairs", + "required": false + }, + { + "id": "galosphere:allurite_slab", + "required": false + }, + { + "id": "galosphere:smooth_allurite", + "required": false + }, + { + "id": "galosphere:smooth_allurite_stairs", + "required": false + }, + { + "id": "galosphere:smooth_allurite_slab", + "required": false + }, + { + "id": "galosphere:allurite_bricks", + "required": false + }, + { + "id": "galosphere:allurite_brick_stairs", + "required": false + }, + { + "id": "galosphere:allurite_brick_slab", + "required": false + }, + { + "id": "galosphere:chiseled_allurite", + "required": false + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/tags/items/stone_types/galosphere/amethyst.json b/src/generated/resources/data/create/tags/items/stone_types/galosphere/amethyst.json new file mode 100644 index 000000000..0441638e5 --- /dev/null +++ b/src/generated/resources/data/create/tags/items/stone_types/galosphere/amethyst.json @@ -0,0 +1,44 @@ +{ + "values": [ + { + "id": "galosphere:amethyst_block", + "required": false + }, + { + "id": "galosphere:amethyst_stairs", + "required": false + }, + { + "id": "galosphere:amethyst_slab", + "required": false + }, + { + "id": "galosphere:smooth_amethyst", + "required": false + }, + { + "id": "galosphere:smooth_amethyst_stairs", + "required": false + }, + { + "id": "galosphere:smooth_amethyst_slab", + "required": false + }, + { + "id": "galosphere:amethyst_bricks", + "required": false + }, + { + "id": "galosphere:amethyst_brick_stairs", + "required": false + }, + { + "id": "galosphere:amethyst_brick_slab", + "required": false + }, + { + "id": "galosphere:chiseled_amethyst", + "required": false + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/tags/items/stone_types/galosphere/lumiere.json b/src/generated/resources/data/create/tags/items/stone_types/galosphere/lumiere.json new file mode 100644 index 000000000..8a41e85b6 --- /dev/null +++ b/src/generated/resources/data/create/tags/items/stone_types/galosphere/lumiere.json @@ -0,0 +1,44 @@ +{ + "values": [ + { + "id": "galosphere:lumiere_block", + "required": false + }, + { + "id": "galosphere:lumiere_stairs", + "required": false + }, + { + "id": "galosphere:lumiere_slab", + "required": false + }, + { + "id": "galosphere:smooth_lumiere", + "required": false + }, + { + "id": "galosphere:smooth_lumiere_stairs", + "required": false + }, + { + "id": "galosphere:smooth_lumiere_slab", + "required": false + }, + { + "id": "galosphere:lumiere_bricks", + "required": false + }, + { + "id": "galosphere:lumiere_brick_stairs", + "required": false + }, + { + "id": "galosphere:lumiere_brick_slab", + "required": false + }, + { + "id": "galosphere:chiseled_lumiere", + "required": false + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/tags/items/tracks.json b/src/generated/resources/data/create/tags/items/tracks.json new file mode 100644 index 000000000..259661af4 --- /dev/null +++ b/src/generated/resources/data/create/tags/items/tracks.json @@ -0,0 +1,5 @@ +{ + "values": [ + "create:track" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/tags/items/upgrade_aquatic/coral.json b/src/generated/resources/data/create/tags/items/upgrade_aquatic/coral.json new file mode 100644 index 000000000..8caf90a4a --- /dev/null +++ b/src/generated/resources/data/create/tags/items/upgrade_aquatic/coral.json @@ -0,0 +1,44 @@ +{ + "values": [ + { + "id": "upgrade_aquatic:acan_coral", + "required": false + }, + { + "id": "upgrade_aquatic:finger_coral", + "required": false + }, + { + "id": "upgrade_aquatic:star_coral", + "required": false + }, + { + "id": "upgrade_aquatic:moss_coral", + "required": false + }, + { + "id": "upgrade_aquatic:petal_coral", + "required": false + }, + { + "id": "upgrade_aquatic:branch_coral", + "required": false + }, + { + "id": "upgrade_aquatic:rock_coral", + "required": false + }, + { + "id": "upgrade_aquatic:pillow_coral", + "required": false + }, + { + "id": "upgrade_aquatic:chrome_coral", + "required": false + }, + { + "id": "upgrade_aquatic:silk_coral", + "required": false + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/curios/tags/items/head.json b/src/generated/resources/data/curios/tags/items/head.json similarity index 65% rename from src/main/resources/data/curios/tags/items/head.json rename to src/generated/resources/data/curios/tags/items/head.json index 635bc6fe7..0117e7aa3 100644 --- a/src/main/resources/data/curios/tags/items/head.json +++ b/src/generated/resources/data/curios/tags/items/head.json @@ -1,6 +1,5 @@ { - "replace": false, "values": [ "create:goggles" ] -} +} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/dusts/obsidian.json b/src/generated/resources/data/forge/tags/items/dusts/obsidian.json new file mode 100644 index 000000000..1e14f253c --- /dev/null +++ b/src/generated/resources/data/forge/tags/items/dusts/obsidian.json @@ -0,0 +1,5 @@ +{ + "values": [ + "create:powdered_obsidian" + ] +} \ No newline at end of file diff --git a/src/main/java/com/simibubi/create/AllBlocks.java b/src/main/java/com/simibubi/create/AllBlocks.java index a7c5e3201..afe741ca1 100644 --- a/src/main/java/com/simibubi/create/AllBlocks.java +++ b/src/main/java/com/simibubi/create/AllBlocks.java @@ -1538,6 +1538,7 @@ public class AllBlocks { .tag(AllBlockTags.GIRDABLE_TRACKS.tag) .lang("Train Track") .item(TrackBlockItem::new) + .tag(AllItemTags.TRACKS.tag) .model((c, p) -> p.generated(c, Create.asResource("item/" + c.getName()))) .build() .register(); diff --git a/src/main/java/com/simibubi/create/AllFluids.java b/src/main/java/com/simibubi/create/AllFluids.java index a4bea83ed..4e1e7f9b7 100644 --- a/src/main/java/com/simibubi/create/AllFluids.java +++ b/src/main/java/com/simibubi/create/AllFluids.java @@ -41,6 +41,9 @@ import net.minecraftforge.fluids.FluidType; import net.minecraftforge.fluids.ForgeFlowingFluid; public class AllFluids { + static { + REGISTRATE.setCreativeTab(AllCreativeModeTabs.BASE_CREATIVE_TAB); + } public static final FluidEntry POTION = REGISTRATE.virtualFluid("potion", PotionFluidType::new, PotionFluid::new) @@ -165,7 +168,7 @@ public class AllFluids { public int getTintColor(FluidState state, BlockAndTintGetter getter, BlockPos pos) { return TintedFluidType.this.getTintColor(state, getter, pos); } - + @Override public @NotNull Vector3f modifyFogColor(Camera camera, float partialTick, ClientLevel level, int renderDistance, float darkenWorldAmount, Vector3f fluidFogColor) { @@ -191,11 +194,11 @@ public class AllFluids { protected abstract int getTintColor(FluidStack stack); protected abstract int getTintColor(FluidState state, BlockAndTintGetter getter, BlockPos pos); - + protected Vector3f getCustomFogColor() { return null; } - + protected float getFogDistanceModifier() { return 1f; } @@ -235,12 +238,12 @@ public class AllFluids { public int getTintColor(FluidState state, BlockAndTintGetter world, BlockPos pos) { return 0x00ffffff; } - + @Override protected Vector3f getCustomFogColor() { return fogColor; } - + @Override protected float getFogDistanceModifier() { return fogDistance.get(); diff --git a/src/main/java/com/simibubi/create/AllInteractionBehaviours.java b/src/main/java/com/simibubi/create/AllInteractionBehaviours.java index 31c518c5f..0c857e93d 100644 --- a/src/main/java/com/simibubi/create/AllInteractionBehaviours.java +++ b/src/main/java/com/simibubi/create/AllInteractionBehaviours.java @@ -3,6 +3,8 @@ package com.simibubi.create; import java.util.ArrayList; import java.util.List; +import com.simibubi.create.content.contraptions.behaviour.FenceGateMovingInteraction; + import org.jetbrains.annotations.Nullable; import com.simibubi.create.content.contraptions.behaviour.DoorMovingInteraction; @@ -75,6 +77,15 @@ public class AllInteractionBehaviours { } return null; }); + + FenceGateMovingInteraction fenceGateBehavior = new FenceGateMovingInteraction(); + registerBehaviourProvider(state -> { + if (state.is(BlockTags.FENCE_GATES)) { + return fenceGateBehavior; + } + return null; + }); + } public interface BehaviourProvider { diff --git a/src/main/java/com/simibubi/create/AllKeys.java b/src/main/java/com/simibubi/create/AllKeys.java index 1257cd726..15804c9bb 100644 --- a/src/main/java/com/simibubi/create/AllKeys.java +++ b/src/main/java/com/simibubi/create/AllKeys.java @@ -18,6 +18,7 @@ public enum AllKeys { TOOL_MENU("toolmenu", GLFW.GLFW_KEY_LEFT_ALT), ACTIVATE_TOOL("", GLFW.GLFW_KEY_LEFT_CONTROL), TOOLBELT("toolbelt", GLFW.GLFW_KEY_LEFT_ALT), + PONDER("ponder", GLFW.GLFW_KEY_W) ; diff --git a/src/main/java/com/simibubi/create/AllRecipeTypes.java b/src/main/java/com/simibubi/create/AllRecipeTypes.java index 2186a64cb..8967a9e39 100644 --- a/src/main/java/com/simibubi/create/AllRecipeTypes.java +++ b/src/main/java/com/simibubi/create/AllRecipeTypes.java @@ -1,6 +1,7 @@ package com.simibubi.create; import java.util.Optional; +import java.util.function.Predicate; import java.util.function.Supplier; import org.jetbrains.annotations.Nullable; @@ -65,6 +66,10 @@ public enum AllRecipeTypes implements IRecipeTypeInfo { TOOLBOX_DYEING(() -> new SimpleCraftingRecipeSerializer<>(ToolboxDyeingRecipe::new), () -> RecipeType.CRAFTING, false); + public static final Predicate> CAN_BE_AUTOMATED = r -> !r.getId() + .getPath() + .endsWith("_manual_only"); + private final ResourceLocation id; private final RegistryObject> serializerObject; @Nullable @@ -123,14 +128,12 @@ public enum AllRecipeTypes implements IRecipeTypeInfo { return world.getRecipeManager() .getRecipeFor(getType(), inv, world); } - + public static boolean shouldIgnoreInAutomation(Recipe recipe) { RecipeSerializer serializer = recipe.getSerializer(); if (serializer != null && AllTags.AllRecipeSerializerTags.AUTOMATION_IGNORE.matches(serializer)) return true; - return recipe.getId() - .getPath() - .endsWith("_manual_only"); + return !CAN_BE_AUTOMATED.test(recipe); } private static class Registers { diff --git a/src/main/java/com/simibubi/create/AllSoundEvents.java b/src/main/java/com/simibubi/create/AllSoundEvents.java index 250bb03c1..f5eef6505 100644 --- a/src/main/java/com/simibubi/create/AllSoundEvents.java +++ b/src/main/java/com/simibubi/create/AllSoundEvents.java @@ -88,6 +88,13 @@ public class AllSoundEvents { .category(SoundSource.BLOCKS) .build(), + SPOUTING = create("spout").subtitle("Spout spurts") + .addVariant("spout_1") + .addVariant("spout_2") + .addVariant("spout_3") + .category(SoundSource.BLOCKS) + .build(), + CRANKING = create("cranking").subtitle("Hand Crank turns") .playExisting(SoundEvents.WOOD_PLACE, .075f, .5f) .playExisting(SoundEvents.WOODEN_BUTTON_CLICK_OFF, .025f, .5f) @@ -297,6 +304,14 @@ public class AllSoundEvents { .build(), HAUNTED_BELL_USE = create("haunted_bell_use").subtitle("Haunted Bell tolls") + .category(SoundSource.BLOCKS) + .build(), + + CLIPBOARD_CHECKMARK = create("clipboard_check").noSubtitle() + .category(SoundSource.BLOCKS) + .build(), + + CLIPBOARD_ERASE = create("clipboard_erase").noSubtitle() .category(SoundSource.BLOCKS) .build(); diff --git a/src/main/java/com/simibubi/create/AllTags.java b/src/main/java/com/simibubi/create/AllTags.java index c40859e1a..a48d8602f 100644 --- a/src/main/java/com/simibubi/create/AllTags.java +++ b/src/main/java/com/simibubi/create/AllTags.java @@ -1,5 +1,6 @@ package com.simibubi.create; +import static com.simibubi.create.AllTags.NameSpace.CURIOS; import static com.simibubi.create.AllTags.NameSpace.FORGE; import static com.simibubi.create.AllTags.NameSpace.MOD; import static com.simibubi.create.AllTags.NameSpace.QUARK; @@ -52,11 +53,13 @@ public class AllTags { } public enum NameSpace { - + MOD(Create.ID, false, true), FORGE("forge"), TIC("tconstruct"), - QUARK("quark") + QUARK("quark"), + GS("galosphere"), + CURIOS("curios") ; @@ -76,7 +79,7 @@ public class AllTags { } public enum AllBlockTags { - + BRITTLE, CASING, CONTRAPTION_INVENTORY_DENY, @@ -100,6 +103,9 @@ public class AllTags { VALVE_HANDLES, WINDMILL_SAILS, WRENCH_PICKUP, + ROOTS, + + CORALS, RELOCATION_NOT_SUPPORTED(FORGE), WG_STONE(FORGE), @@ -153,11 +159,11 @@ public class AllTags { } private static void init() {} - + } public enum AllItemTags { - + BLAZE_BURNER_FUEL_REGULAR(MOD, "blaze_burner_fuel/regular"), BLAZE_BURNER_FUEL_SPECIAL(MOD, "blaze_burner_fuel/special"), CASING, @@ -172,6 +178,7 @@ public class AllTags { SEATS, SLEEPERS, TOOLBOXES, + TRACKS, UPRIGHT_ON_BELT, VALVE_HANDLES, VANILLA_STRIPPED_LOGS, @@ -180,7 +187,15 @@ public class AllTags { STRIPPED_LOGS(FORGE), STRIPPED_WOOD(FORGE), PLATES(FORGE), - WRENCH(FORGE, "tools/wrench") + OBSIDIAN_DUST(FORGE,"dusts/obsidian"), + WRENCH(FORGE, "tools/wrench"), + + ALLURITE(MOD,"stone_types/galosphere/allurite"), + AMETHYST(MOD,"stone_types/galosphere/amethyst"), + LUMIERE(MOD, "stone_types/galosphere/lumiere"), + + UA_CORAL(MOD, "upgrade_aquatic/coral"), + CURIOS_HEAD(CURIOS, "head") ; @@ -224,11 +239,11 @@ public class AllTags { } private static void init() {} - + } public enum AllFluidTags { - + BOTTOMLESS_ALLOW(MOD, "bottomless/allow"), BOTTOMLESS_DENY(MOD, "bottomless/deny"), FAN_PROCESSING_CATALYSTS_BLASTING(MOD, "fan_processing_catalysts/blasting"), @@ -279,9 +294,9 @@ public class AllTags { } private static void init() {} - + } - + public enum AllEntityTags { BLAZE_BURNER_CAPTURABLE, @@ -327,9 +342,9 @@ public class AllTags { } private static void init() {} - + } - + public enum AllRecipeSerializerTags { AUTOMATION_IGNORE, diff --git a/src/main/java/com/simibubi/create/Create.java b/src/main/java/com/simibubi/create/Create.java index 9f9cc46e7..d539a32de 100644 --- a/src/main/java/com/simibubi/create/Create.java +++ b/src/main/java/com/simibubi/create/Create.java @@ -58,7 +58,7 @@ public class Create { public static final String ID = "create"; public static final String NAME = "Create"; - public static final String VERSION = "0.5.1f"; + public static final String VERSION = "0.5.1g"; public static final Logger LOGGER = LogUtils.getLogger(); diff --git a/src/main/java/com/simibubi/create/compat/Mods.java b/src/main/java/com/simibubi/create/compat/Mods.java index 785889e6f..a89dce5ff 100644 --- a/src/main/java/com/simibubi/create/compat/Mods.java +++ b/src/main/java/com/simibubi/create/compat/Mods.java @@ -4,8 +4,11 @@ import java.util.Optional; import java.util.function.Supplier; import com.simibubi.create.foundation.utility.Lang; +import com.simibubi.create.foundation.utility.RegisteredObjects; import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.item.Item; +import net.minecraft.world.level.ItemLike; import net.minecraft.world.level.block.Block; import net.minecraftforge.fml.ModList; import net.minecraftforge.registries.ForgeRegistries; @@ -19,11 +22,16 @@ public enum Mods { CONNECTIVITY, CURIOS, DYNAMICTREES, + FUNCTIONALSTORAGE, OCCULTISM, PACKETFIXER, + SOPHISTICATEDBACKPACKS, + SOPHISTICATEDSTORAGE, STORAGEDRAWERS, TCONSTRUCT, - XLPACKETS; + FRAMEDBLOCKS, + XLPACKETS, + MODERNUI; private final String id; @@ -45,6 +53,19 @@ public enum Mods { public Block getBlock(String id) { return ForgeRegistries.BLOCKS.getValue(rl(id)); } + + public Item getItem(String id) { + return ForgeRegistries.ITEMS.getValue(rl(id)); + } + + public boolean contains(ItemLike entry) { + if (!isLoaded()) + return false; + Item asItem = entry.asItem(); + return asItem != null && RegisteredObjects.getKeyOrThrow(asItem) + .getNamespace() + .equals(id); + } /** * @return a boolean of whether the mod is loaded or not based on mod id diff --git a/src/main/java/com/simibubi/create/compat/computercraft/implementation/peripherals/StationPeripheral.java b/src/main/java/com/simibubi/create/compat/computercraft/implementation/peripherals/StationPeripheral.java index 230ade2a6..c50891fe3 100644 --- a/src/main/java/com/simibubi/create/compat/computercraft/implementation/peripherals/StationPeripheral.java +++ b/src/main/java/com/simibubi/create/compat/computercraft/implementation/peripherals/StationPeripheral.java @@ -151,6 +151,13 @@ public class StationPeripheral extends SyncedPeripheral { @LuaFunction(mainThread = true) public final void setSchedule(IArguments arguments) throws LuaException { + if (arguments.getTable(0).size() != 2) + throw new LuaException("Not a valid schedule"); + + Object entries = arguments.getTable(0).get("entries"); + if (entries instanceof Map map && map.isEmpty()) + throw new LuaException("Schedule must have at least one entry"); + Train train = getTrainOrThrow(); Schedule schedule = Schedule.fromTag(toCompoundTag(new CreateLuaTable(arguments.getTable(0)))); boolean autoSchedule = train.runtime.getSchedule() == null || train.runtime.isAutoSchedule; @@ -233,8 +240,9 @@ public class StationPeripheral extends SyncedPeripheral { return StringTag.valueOf(v); else if (value instanceof Map v && v.containsKey(1.0)) { // List ListTag list = new ListTag(); - for (Object o : v.values()) { - list.add(toNBTTag(null, o)); + for (double i = 1; i <= v.size(); i++) { + if (v.get(i) != null) + list.add(toNBTTag(null, v.get(i))); } return list; diff --git a/src/main/java/com/simibubi/create/compat/curios/Curios.java b/src/main/java/com/simibubi/create/compat/curios/Curios.java index 97eea93e2..7adbb59be 100644 --- a/src/main/java/com/simibubi/create/compat/curios/Curios.java +++ b/src/main/java/com/simibubi/create/compat/curios/Curios.java @@ -43,13 +43,16 @@ public class Curios { modEventBus.addListener(Curios::onClientSetup); GogglesItem.addIsWearingPredicate(player -> resolveCuriosMap(player) - .map(curiosMap -> curiosMap.get("head")) - .map(stacksHandler -> { - // Check all the Head slots for Goggles existing - int slots = stacksHandler.getSlots(); - for (int slot = 0; slot < slots; slot++) - if (AllItems.GOGGLES.isIn(stacksHandler.getStacks().getStackInSlot(slot))) - return true; + .map(curiosMap -> { + for (ICurioStacksHandler stacksHandler : curiosMap.values()) { + // Search all the curio slots for Goggles existing + int slots = stacksHandler.getSlots(); + for (int slot = 0; slot < slots; slot++) { + if (AllItems.GOGGLES.isIn(stacksHandler.getStacks().getStackInSlot(slot))) { + return true; + } + } + } return false; }) diff --git a/src/main/java/com/simibubi/create/compat/dynamictrees/DynamicTree.java b/src/main/java/com/simibubi/create/compat/dynamictrees/DynamicTree.java index 080663c86..b1fbf7bed 100644 --- a/src/main/java/com/simibubi/create/compat/dynamictrees/DynamicTree.java +++ b/src/main/java/com/simibubi/create/compat/dynamictrees/DynamicTree.java @@ -4,32 +4,36 @@ import java.util.function.BiConsumer; import javax.annotation.Nullable; +import com.ferreusveritas.dynamictrees.api.TreeHelper; +import com.ferreusveritas.dynamictrees.block.branch.BranchBlock; +import com.ferreusveritas.dynamictrees.block.branch.TrunkShellBlock; +import com.ferreusveritas.dynamictrees.util.BranchDestructionData; import com.simibubi.create.foundation.utility.AbstractBlockBreakQueue; import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; -// Commented until dynamic trees are updated public class DynamicTree extends AbstractBlockBreakQueue { - -// private BlockPos startCutPos; + + private BlockPos startCutPos; public DynamicTree(BlockPos startCutPos) { -// this.startCutPos = startCutPos; - } - - public static boolean isDynamicBranch(Block block) { - return false; // TreeHelper.isBranch(block) || block instanceof TrunkShellBlock; + this.startCutPos = startCutPos; } - + public static boolean isDynamicBranch(Block block) { + return TreeHelper.isBranch(block) || block instanceof TrunkShellBlock; + } + + @Override public void destroyBlocks(Level world, ItemStack toDamage, @Nullable Player playerEntity, BiConsumer drop) { - /* - + BranchBlock start = TreeHelper.getBranch(world.getBlockState(startCutPos)); if (start == null) //if start is null, it was not a branch start = setBranchToShellMuse(world, world.getBlockState(startCutPos)); //we check for a trunk shell instead @@ -39,20 +43,19 @@ public class DynamicTree extends AbstractBlockBreakQueue { // Play and render block break sound and particles world.levelEvent(null, 2001, startCutPos, Block.getId(world.getBlockState(startCutPos))); - // Actually breaks the tree + // Actually breaks the tree BranchDestructionData data = start.destroyBranchFromNode(world, startCutPos, Direction.DOWN, false, playerEntity); // Feed all the tree drops to drop bi-consumer data.leavesDrops.forEach(stackPos -> drop.accept(stackPos.pos.offset(startCutPos), stackPos.stack)); - start.getLogDrops(world, startCutPos, data.species, data.woodVolume).forEach(stack -> drop.accept(startCutPos, stack)); - - */ + start.getFamily().getCommonSpecies().getBranchesDrops(world, data.woodVolume).forEach(stack -> drop.accept(startCutPos, stack)); + } - /* - private BranchBlock setBranchToShellMuse(World world, BlockState state) { - + + private BranchBlock setBranchToShellMuse(Level world, BlockState state) { + Block block = state.getBlock(); if (block instanceof TrunkShellBlock){ TrunkShellBlock.ShellMuse muse = ((TrunkShellBlock)block).getMuse(world, startCutPos); @@ -61,10 +64,9 @@ public class DynamicTree extends AbstractBlockBreakQueue { return TreeHelper.getBranch(muse.state); } } - + return null; } - */ - + } diff --git a/src/main/java/com/simibubi/create/compat/framedblocks/FramedBlocksInSchematics.java b/src/main/java/com/simibubi/create/compat/framedblocks/FramedBlocksInSchematics.java new file mode 100644 index 000000000..acb60c953 --- /dev/null +++ b/src/main/java/com/simibubi/create/compat/framedblocks/FramedBlocksInSchematics.java @@ -0,0 +1,86 @@ +package com.simibubi.create.compat.framedblocks; + +import java.util.ArrayList; +import java.util.List; + +import com.simibubi.create.compat.Mods; +import com.simibubi.create.content.schematics.requirement.ItemRequirement; +import com.simibubi.create.content.schematics.requirement.ItemRequirement.ItemUseType; +import com.simibubi.create.content.schematics.requirement.ItemRequirement.StackRequirement; + +import net.minecraft.core.HolderGetter; +import net.minecraft.core.registries.Registries; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.NbtUtils; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Items; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; + +public class FramedBlocksInSchematics { + + static final List KEYS_TO_RETAIN = + List.of("intangible", "glowing", "reinforced", "camo", "camo_two"); + + public static CompoundTag prepareBlockEntityData(BlockState blockState, BlockEntity blockEntity) { + CompoundTag data = null; + if (blockEntity == null) + return data; + + data = blockEntity.saveWithFullMetadata(); + + List keysToRemove = new ArrayList<>(); + for (String key : data.getAllKeys()) + if (!KEYS_TO_RETAIN.contains(key)) + keysToRemove.add(key); + for (String key : keysToRemove) + data.remove(key); + + if (data.getCompound("camo") + .contains("fluid")) + data.remove("camo"); + + if (data.getCompound("camo_two") + .contains("fluid")) + data.remove("camo_two"); + + return data; + } + + public static ItemRequirement getRequiredItems(BlockState blockState, BlockEntity blockEntity) { + if (blockEntity == null) + return ItemRequirement.NONE; + + CompoundTag data = blockEntity.saveWithFullMetadata(); + List list = new ArrayList<>(); + + if (data.getBoolean("intangible")) + list.add(new StackRequirement(new ItemStack(Items.PHANTOM_MEMBRANE), ItemUseType.CONSUME)); + + if (data.getBoolean("glowing")) + list.add(new StackRequirement(new ItemStack(Items.GLOWSTONE_DUST), ItemUseType.CONSUME)); + + if (data.getBoolean("reinforced")) + list.add(new StackRequirement(new ItemStack(Mods.FRAMEDBLOCKS.getItem("framed_reinforcement")), + ItemUseType.CONSUME)); + + if (data.contains("camo")) + addCamoStack(blockEntity.getLevel().holderLookup(Registries.BLOCK), data.getCompound("camo"), list); + + if (data.contains("camo_two")) + addCamoStack(blockEntity.getLevel().holderLookup(Registries.BLOCK), data.getCompound("camo_two"), list); + + return new ItemRequirement(list); + } + + private static void addCamoStack(HolderGetter level, CompoundTag tag, List list) { + if (!tag.contains("state")) + return; + BlockState blockState = NbtUtils.readBlockState(level, tag.getCompound("state")); + ItemStack itemStack = new ItemStack(blockState.getBlock()); + if (!itemStack.isEmpty()) + list.add(new StackRequirement(itemStack, ItemUseType.CONSUME)); + } + +} diff --git a/src/main/java/com/simibubi/create/compat/jei/CreateJEI.java b/src/main/java/com/simibubi/create/compat/jei/CreateJEI.java index b18effa1c..58270c69f 100644 --- a/src/main/java/com/simibubi/create/compat/jei/CreateJEI.java +++ b/src/main/java/com/simibubi/create/compat/jei/CreateJEI.java @@ -146,6 +146,7 @@ public class CreateJEI implements IModPlugin { smoking = builder(SmokingRecipe.class) .addTypedRecipes(() -> RecipeType.SMOKING) + .removeNonAutomation() .catalystStack(ProcessingViaFanCategory.getFan("fan_smoking")) .doubleItemIcon(AllItems.PROPELLER.get(), Items.CAMPFIRE) .emptyBackground(178, 72) @@ -155,6 +156,7 @@ public class CreateJEI implements IModPlugin { .addTypedRecipesExcluding(() -> RecipeType.SMELTING, () -> RecipeType.BLASTING) .addTypedRecipes(() -> RecipeType.BLASTING) .removeRecipes(() -> RecipeType.SMOKING) + .removeNonAutomation() .catalystStack(ProcessingViaFanCategory.getFan("fan_blasting")) .doubleItemIcon(AllItems.PROPELLER.get(), Items.LAVA_BUCKET) .emptyBackground(178, 72) @@ -260,6 +262,7 @@ public class CreateJEI implements IModPlugin { .addTypedRecipes(AllRecipeTypes.DEPLOYING) .addTypedRecipes(AllRecipeTypes.SANDPAPER_POLISHING::getType, DeployerApplicationRecipe::convert) .addTypedRecipes(AllRecipeTypes.ITEM_APPLICATION::getType, ManualApplicationRecipe::asDeploying) + .removeNonAutomation() .catalyst(AllBlocks.DEPLOYER::get) .catalyst(AllBlocks.DEPOT::get) .catalyst(AllItems.BELT_CONNECTOR::get) @@ -467,6 +470,10 @@ public class CreateJEI implements IModPlugin { }); } + public CategoryBuilder removeNonAutomation() { + return addRecipeListConsumer(recipes -> recipes.removeIf(AllRecipeTypes.CAN_BE_AUTOMATED.negate())); + } + public CategoryBuilder catalystStack(Supplier supplier) { catalysts.add(supplier); return this; diff --git a/src/main/java/com/simibubi/create/compat/jei/category/ItemDrainCategory.java b/src/main/java/com/simibubi/create/compat/jei/category/ItemDrainCategory.java index 136dcaeec..15bb777f6 100644 --- a/src/main/java/com/simibubi/create/compat/jei/category/ItemDrainCategory.java +++ b/src/main/java/com/simibubi/create/compat/jei/category/ItemDrainCategory.java @@ -42,7 +42,7 @@ public class ItemDrainCategory extends CreateRecipeCategory { public static void consumeRecipes(Consumer consumer, IIngredientManager ingredientManager) { for (ItemStack stack : ingredientManager.getAllIngredients(VanillaTypes.ITEM_STACK)) { - if (stack.getItem() instanceof PotionItem) { + if (PotionFluidHandler.isPotionItem(stack)) { FluidStack fluidFromPotionItem = PotionFluidHandler.getFluidFromPotionItem(stack); Ingredient potion = Ingredient.of(stack); consumer.accept(new ProcessingRecipeBuilder<>(EmptyingRecipe::new, Create.asResource("potions")) diff --git a/src/main/java/com/simibubi/create/compat/jei/category/MechanicalCraftingCategory.java b/src/main/java/com/simibubi/create/compat/jei/category/MechanicalCraftingCategory.java index ceef2aa57..0bf8309da 100644 --- a/src/main/java/com/simibubi/create/compat/jei/category/MechanicalCraftingCategory.java +++ b/src/main/java/com/simibubi/create/compat/jei/category/MechanicalCraftingCategory.java @@ -100,16 +100,21 @@ public class MechanicalCraftingCategory extends CreateRecipeCategory= recipe.getIngredients() + .size()) + break; + if (recipe.getIngredients() + .get(pIndex) + .isEmpty()) + continue; + matrixStack.pushPose(); + matrixStack.translate(col * 19 * scale, row * 19 * scale, 0); + matrixStack.scale(scale, scale, scale); + AllGuiTextures.JEI_SLOT.render(graphics, 0, 0); + matrixStack.popPose(); + } matrixStack.popPose(); diff --git a/src/main/java/com/simibubi/create/compat/jei/category/SpoutCategory.java b/src/main/java/com/simibubi/create/compat/jei/category/SpoutCategory.java index d987c8a6a..3fa7d3160 100644 --- a/src/main/java/com/simibubi/create/compat/jei/category/SpoutCategory.java +++ b/src/main/java/com/simibubi/create/compat/jei/category/SpoutCategory.java @@ -47,7 +47,7 @@ public class SpoutCategory extends CreateRecipeCategory { public static void consumeRecipes(Consumer consumer, IIngredientManager ingredientManager) { Collection fluidStacks = ingredientManager.getAllIngredients(ForgeTypes.FLUID_STACK); for (ItemStack stack : ingredientManager.getAllIngredients(VanillaTypes.ITEM_STACK)) { - if (stack.getItem() instanceof PotionItem) { + if (PotionFluidHandler.isPotionItem(stack)) { FluidStack fluidFromPotionItem = PotionFluidHandler.getFluidFromPotionItem(stack); Ingredient bottle = Ingredient.of(Items.GLASS_BOTTLE); consumer.accept(new ProcessingRecipeBuilder<>(FillingRecipe::new, Create.asResource("potions")) diff --git a/src/main/java/com/simibubi/create/compat/storageDrawers/StorageDrawers.java b/src/main/java/com/simibubi/create/compat/storageDrawers/StorageDrawers.java deleted file mode 100644 index 612963636..000000000 --- a/src/main/java/com/simibubi/create/compat/storageDrawers/StorageDrawers.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.simibubi.create.compat.storageDrawers; - -import com.simibubi.create.compat.Mods; -import com.simibubi.create.foundation.blockEntity.behaviour.filtering.FilteringBehaviour; -import com.simibubi.create.foundation.utility.RegisteredObjects; - -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.block.entity.BlockEntity; -import net.minecraftforge.items.IItemHandler; - -public class StorageDrawers { - - public static boolean isDrawer(BlockEntity be) { - return be != null && Mods.STORAGEDRAWERS.id() - .equals(RegisteredObjects.getKeyOrThrow(be.getType()) - .getNamespace()); - } - - public static float getTrueFillLevel(IItemHandler inv, FilteringBehaviour filtering) { - float occupied = 0; - float totalSpace = 0; - - for (int slot = 1; slot < inv.getSlots(); slot++) { - ItemStack stackInSlot = inv.getStackInSlot(slot); - int space = inv.getSlotLimit(slot); - int count = stackInSlot.getCount(); - if (space == 0) - continue; - - totalSpace += 1; - if (filtering.test(stackInSlot)) - occupied += count * (1f / space); - } - - if (totalSpace == 0) - return 0; - - return occupied / totalSpace; - } - -} diff --git a/src/main/java/com/simibubi/create/compat/thresholdSwitch/FunctionalStorage.java b/src/main/java/com/simibubi/create/compat/thresholdSwitch/FunctionalStorage.java new file mode 100644 index 000000000..a4421dbcd --- /dev/null +++ b/src/main/java/com/simibubi/create/compat/thresholdSwitch/FunctionalStorage.java @@ -0,0 +1,22 @@ +package com.simibubi.create.compat.thresholdSwitch; + +import com.simibubi.create.compat.Mods; +import com.simibubi.create.foundation.utility.RegisteredObjects; + +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraftforge.items.IItemHandler; + +public class FunctionalStorage implements ThresholdSwitchCompat { + + @Override + public boolean isFromThisMod(BlockEntity blockEntity) { + return blockEntity != null && Mods.FUNCTIONALSTORAGE.id() + .equals(RegisteredObjects.getKeyOrThrow(blockEntity.getType()) + .getNamespace()); + } + + @Override + public long getSpaceInSlot(IItemHandler inv, int slot) { + return inv.getSlotLimit(slot); + } +} diff --git a/src/main/java/com/simibubi/create/compat/thresholdSwitch/SophisticatedStorage.java b/src/main/java/com/simibubi/create/compat/thresholdSwitch/SophisticatedStorage.java new file mode 100644 index 000000000..f8d5652e1 --- /dev/null +++ b/src/main/java/com/simibubi/create/compat/thresholdSwitch/SophisticatedStorage.java @@ -0,0 +1,29 @@ +package com.simibubi.create.compat.thresholdSwitch; + +import com.simibubi.create.compat.Mods; +import com.simibubi.create.foundation.utility.RegisteredObjects; + +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraftforge.items.IItemHandler; + +public class SophisticatedStorage implements ThresholdSwitchCompat { + + @Override + public boolean isFromThisMod(BlockEntity be) { + if (be == null) + return false; + + String namespace = RegisteredObjects.getKeyOrThrow(be.getType()) + .getNamespace(); + + return + Mods.SOPHISTICATEDSTORAGE.id().equals(namespace) + || Mods.SOPHISTICATEDBACKPACKS.id().equals(namespace); + } + + @Override + public long getSpaceInSlot(IItemHandler inv, int slot) { + return ((long) inv.getSlotLimit(slot) * inv.getStackInSlot(slot).getMaxStackSize()) / 64; + } + +} diff --git a/src/main/java/com/simibubi/create/compat/thresholdSwitch/StorageDrawers.java b/src/main/java/com/simibubi/create/compat/thresholdSwitch/StorageDrawers.java new file mode 100644 index 000000000..895397a19 --- /dev/null +++ b/src/main/java/com/simibubi/create/compat/thresholdSwitch/StorageDrawers.java @@ -0,0 +1,25 @@ +package com.simibubi.create.compat.thresholdSwitch; + +import com.simibubi.create.compat.Mods; +import com.simibubi.create.foundation.utility.RegisteredObjects; + +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraftforge.items.IItemHandler; + +public class StorageDrawers implements ThresholdSwitchCompat { + + @Override + public boolean isFromThisMod(BlockEntity blockEntity) { + return blockEntity != null && Mods.STORAGEDRAWERS.id() + .equals(RegisteredObjects.getKeyOrThrow(blockEntity.getType()) + .getNamespace()); + } + + @Override + public long getSpaceInSlot(IItemHandler inv, int slot) { + if (slot == 0) + return 0; + + return inv.getSlotLimit(slot); + } +} diff --git a/src/main/java/com/simibubi/create/compat/thresholdSwitch/ThresholdSwitchCompat.java b/src/main/java/com/simibubi/create/compat/thresholdSwitch/ThresholdSwitchCompat.java new file mode 100644 index 000000000..841769c34 --- /dev/null +++ b/src/main/java/com/simibubi/create/compat/thresholdSwitch/ThresholdSwitchCompat.java @@ -0,0 +1,12 @@ +package com.simibubi.create.compat.thresholdSwitch; + +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraftforge.items.IItemHandler; + +public interface ThresholdSwitchCompat { + + boolean isFromThisMod(BlockEntity blockEntity); + + long getSpaceInSlot(IItemHandler inv, int slot); + +} diff --git a/src/main/java/com/simibubi/create/content/contraptions/AbstractContraptionEntity.java b/src/main/java/com/simibubi/create/content/contraptions/AbstractContraptionEntity.java index b7bd6a698..83c890004 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/AbstractContraptionEntity.java +++ b/src/main/java/com/simibubi/create/content/contraptions/AbstractContraptionEntity.java @@ -213,14 +213,18 @@ public abstract class AbstractContraptionEntity extends Entity implements IEntit Vec3 transformedVector = getPassengerPosition(passenger, 1); if (transformedVector == null) return; + + float offset = -1 / 8f; + if (passenger instanceof AbstractContraptionEntity) + offset = 0.0f; callback.accept(passenger, transformedVector.x, - transformedVector.y + SeatEntity.getCustomEntitySeatOffset(passenger) - 1 / 8f, transformedVector.z); + transformedVector.y + SeatEntity.getCustomEntitySeatOffset(passenger) + offset, transformedVector.z); } public Vec3 getPassengerPosition(Entity passenger, float partialTicks) { if (contraption == null) return null; - + UUID id = passenger.getUUID(); if (passenger instanceof OrientedContraptionEntity) { BlockPos localPos = contraption.getBearingPosOf(id); @@ -235,7 +239,7 @@ public abstract class AbstractContraptionEntity extends Entity implements IEntit BlockPos seat = contraption.getSeatOf(id); if (seat == null) return null; - + Vec3 transformedVector = toGlobalVector(Vec3.atLowerCornerOf(seat) .add(.5, passenger.getMyRidingOffset() + ySize - .15f, .5), partialTicks) .add(VecHelper.getCenterOf(BlockPos.ZERO)) @@ -867,10 +871,11 @@ public abstract class AbstractContraptionEntity extends Entity implements IEntit public static class ContraptionRotationState { public static final ContraptionRotationState NONE = new ContraptionRotationState(); - float xRotation = 0; - float yRotation = 0; - float zRotation = 0; - float secondYRotation = 0; + public float xRotation = 0; + public float yRotation = 0; + public float zRotation = 0; + public float secondYRotation = 0; + Matrix3d matrix; public Matrix3d asMatrix() { diff --git a/src/main/java/com/simibubi/create/content/contraptions/Contraption.java b/src/main/java/com/simibubi/create/content/contraptions/Contraption.java index 88a7c5177..137088176 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/Contraption.java +++ b/src/main/java/com/simibubi/create/content/contraptions/Contraption.java @@ -24,6 +24,8 @@ import javax.annotation.Nullable; import org.apache.commons.lang3.tuple.MutablePair; import org.apache.commons.lang3.tuple.Pair; +import com.google.common.collect.ArrayListMultimap; +import com.google.common.collect.Multimap; import com.simibubi.create.AllBlockEntityTypes; import com.simibubi.create.AllBlocks; import com.simibubi.create.AllInteractionBehaviours; @@ -56,7 +58,6 @@ import com.simibubi.create.content.contraptions.pulley.PulleyBlockEntity; import com.simibubi.create.content.contraptions.render.ContraptionLighter; import com.simibubi.create.content.contraptions.render.EmptyLighter; import com.simibubi.create.content.decoration.slidingDoor.SlidingDoorBlock; -import com.simibubi.create.content.fluids.tank.FluidTankBlockEntity; import com.simibubi.create.content.kinetics.base.BlockBreakingMovementBehaviour; import com.simibubi.create.content.kinetics.base.IRotate; import com.simibubi.create.content.kinetics.base.KineticBlockEntity; @@ -65,7 +66,6 @@ import com.simibubi.create.content.kinetics.gantry.GantryShaftBlock; import com.simibubi.create.content.kinetics.simpleRelays.ShaftBlock; import com.simibubi.create.content.kinetics.steamEngine.PoweredShaftBlockEntity; import com.simibubi.create.content.logistics.crate.CreativeCrateBlockEntity; -import com.simibubi.create.content.logistics.vault.ItemVaultBlockEntity; import com.simibubi.create.content.redstone.contact.RedstoneContactBlock; import com.simibubi.create.content.trains.bogey.AbstractBogeyBlock; import com.simibubi.create.foundation.blockEntity.IMultiBlockEntityContainer; @@ -151,6 +151,7 @@ public abstract class Contraption { protected Map seatMapping; protected Map stabilizedSubContraptions; protected MountedStorageManager storage; + protected Multimap capturedMultiblocks; private Set glueToRemove; private Map initialPassengers; @@ -185,6 +186,7 @@ public abstract class Contraption { stabilizedSubContraptions = new HashMap<>(); simplifiedEntityColliders = Optional.empty(); storage = new MountedStorageManager(); + capturedMultiblocks = ArrayListMultimap.create(); } public ContraptionWorld getContraptionWorld() { @@ -644,6 +646,8 @@ public abstract class Contraption { BlockEntity be = pair.getValue(); storage.addBlock(localPos, be); + captureMultiblock(localPos, structureBlockInfo, be); + if (AllMovementBehaviours.getBehaviour(captured.state()) != null) actors.add(MutablePair.of(structureBlockInfo, null)); @@ -658,6 +662,25 @@ public abstract class Contraption { hasUniversalCreativeCrate = true; } + protected void captureMultiblock(BlockPos localPos, StructureBlockInfo structureBlockInfo, BlockEntity be) { + if (!(be instanceof IMultiBlockEntityContainer multiBlockBE)) + return; + + CompoundTag nbt = structureBlockInfo.nbt(); + BlockPos controllerPos = nbt.contains("Controller") ? + toLocalPos(NbtUtils.readBlockPos(nbt.getCompound("Controller"))) : + localPos; + nbt.put("Controller", NbtUtils.writeBlockPos(controllerPos)); + + if (multiBlockBE.isController() && multiBlockBE.getHeight() <= 1 && multiBlockBE.getWidth() <= 1) { + nbt.put("LastKnownPos", NbtUtils.writeBlockPos(BlockPos.ZERO.below(Integer.MAX_VALUE - 1))); + return; + } + + nbt.remove("LastKnownPos"); + capturedMultiblocks.put(controllerPos, structureBlockInfo); + } + @Nullable protected CompoundTag getBlockEntityNBT(Level world, BlockPos pos) { BlockEntity blockEntity = world.getBlockEntity(pos); @@ -668,11 +691,6 @@ public abstract class Contraption { nbt.remove("y"); nbt.remove("z"); - if ((blockEntity instanceof FluidTankBlockEntity || blockEntity instanceof ItemVaultBlockEntity) - && nbt.contains("Controller")) - nbt.put("Controller", - NbtUtils.writeBlockPos(toLocalPos(NbtUtils.readBlockPos(nbt.getCompound("Controller"))))); - return nbt; } @@ -696,11 +714,25 @@ public abstract class Contraption { Tag blocks = nbt.get("Blocks"); // used to differentiate between the 'old' and the paletted serialization boolean usePalettedDeserialization = - blocks != null && blocks.getId() == 10 && ((CompoundTag) blocks).contains("Palette"); + blocks != null && blocks.getId() == Tag.TAG_COMPOUND && ((CompoundTag) blocks).contains("Palette"); readBlocksCompound(blocks, world, usePalettedDeserialization); + capturedMultiblocks.clear(); + nbt.getList("CapturedMultiblocks", Tag.TAG_COMPOUND).forEach(c -> { + CompoundTag tag = (CompoundTag) c; + if (!tag.contains("Controller", Tag.TAG_COMPOUND) && !tag.contains("Parts", Tag.TAG_LIST)) + return; + + BlockPos controllerPos = NbtUtils.readBlockPos(tag.getCompound("Controller")); + tag.getList("Parts", Tag.TAG_COMPOUND).forEach(part -> { + BlockPos partPos = NbtUtils.readBlockPos((CompoundTag) part); + StructureBlockInfo partInfo = this.blocks.get(partPos); + capturedMultiblocks.put(controllerPos, partInfo); + }); + }); + actors.clear(); - nbt.getList("Actors", 10) + nbt.getList("Actors", Tag.TAG_COMPOUND) .forEach(c -> { CompoundTag comp = (CompoundTag) c; StructureBlockInfo info = this.blocks.get(NbtUtils.readBlockPos(comp.getCompound("Pos"))); @@ -743,7 +775,7 @@ public abstract class Contraption { storage.read(nbt, presentBlockEntities, spawnData); if (nbt.contains("BoundsFront")) - bounds = NBTHelper.readAABB(nbt.getList("BoundsFront", 5)); + bounds = NBTHelper.readAABB(nbt.getList("BoundsFront", Tag.TAG_FLOAT)); stalled = nbt.getBoolean("Stalled"); hasUniversalCreativeCrate = nbt.getBoolean("BottomlessSupply"); @@ -756,6 +788,19 @@ public abstract class Contraption { CompoundTag blocksNBT = writeBlocksCompound(); + ListTag multiblocksNBT = new ListTag(); + capturedMultiblocks.keySet().forEach(controllerPos -> { + CompoundTag tag = new CompoundTag(); + tag.put("Controller", NbtUtils.writeBlockPos(controllerPos)); + + Collection multiblockParts = capturedMultiblocks.get(controllerPos); + ListTag partsNBT = new ListTag(); + multiblockParts.forEach(info -> partsNBT.add(NbtUtils.writeBlockPos(info.pos()))); + tag.put("Parts", partsNBT); + + multiblocksNBT.add(tag); + }); + ListTag actorsNBT = new ListTag(); for (MutablePair actor : getActors()) { MovementBehaviour behaviour = AllMovementBehaviours.getBehaviour(actor.left.state()); @@ -806,6 +851,7 @@ public abstract class Contraption { nbt.put("Blocks", blocksNBT); nbt.put("Actors", actorsNBT); + nbt.put("CapturedMultiblocks", multiblocksNBT); nbt.put("DisabledActors", disabledActorsNBT); nbt.put("Interactors", interactorNBT); nbt.put("Superglue", superglueNBT); @@ -862,12 +908,12 @@ public abstract class Contraption { throw new IllegalStateException("Palette Map index exceeded maximum"); }); - ListTag list = c.getList("Palette", 10); + ListTag list = c.getList("Palette", Tag.TAG_COMPOUND); palette.values.clear(); for (int i = 0; i < list.size(); ++i) palette.values.add(NbtUtils.readBlockState(holderGetter, list.getCompound(i))); - blockList = c.getList("BlockList", 10); + blockList = c.getList("BlockList", Tag.TAG_COMPOUND); } else { blockList = (ListTag) compound; } @@ -1025,6 +1071,8 @@ public abstract class Contraption { return; disassembled = true; + translateMultiblockControllers(transform); + for (boolean nonBrittles : Iterate.trueAndFalse) { for (StructureBlockInfo block : blocks.values()) { if (nonBrittles == BlockMovementChecks.isBrittle(block.state())) @@ -1089,7 +1137,7 @@ public abstract class Contraption { tag = null; if (blockEntity != null) - tag = NBTProcessors.process(blockEntity, tag, false); + tag = NBTProcessors.process(state, blockEntity, tag, false); if (blockEntity != null && tag != null) { tag.putInt("x", targetPos.getX()); tag.putInt("y", targetPos.getY()); @@ -1100,8 +1148,11 @@ public abstract class Contraption { tag.remove("InitialOffset"); } - if (blockEntity instanceof IMultiBlockEntityContainer && tag.contains("LastKnownPos")) - tag.put("LastKnownPos", NbtUtils.writeBlockPos(BlockPos.ZERO.below(Integer.MAX_VALUE - 1))); + if (blockEntity instanceof IMultiBlockEntityContainer) { + if (tag.contains("LastKnownPos") || capturedMultiblocks.isEmpty()) { + tag.put("LastKnownPos", NbtUtils.writeBlockPos(BlockPos.ZERO.below(Integer.MAX_VALUE - 1))); + } + } blockEntity.load(tag); storage.addStorageToWorld(block, blockEntity); @@ -1129,6 +1180,38 @@ public abstract class Contraption { storage.clear(); } + protected void translateMultiblockControllers(StructureTransform transform) { + if (transform.rotationAxis != null && transform.rotationAxis != Axis.Y && transform.rotation != Rotation.NONE) { + capturedMultiblocks.values().forEach(info -> { + info.nbt().put("LastKnownPos", NbtUtils.writeBlockPos(BlockPos.ZERO.below(Integer.MAX_VALUE - 1))); + }); + return; + } + + capturedMultiblocks.keySet().forEach(controllerPos -> { + Collection multiblockParts = capturedMultiblocks.get(controllerPos); + Optional optionalBoundingBox = BoundingBox.encapsulatingPositions(multiblockParts.stream().map(info -> transform.apply(info.pos())).toList()); + if (optionalBoundingBox.isEmpty()) + return; + + BoundingBox boundingBox = optionalBoundingBox.get(); + BlockPos newControllerPos = new BlockPos(boundingBox.minX(), boundingBox.minY(), boundingBox.minZ()); + BlockPos newLocalPos = toLocalPos(newControllerPos); + BlockPos otherPos = transform.unapply(newControllerPos); + + multiblockParts.forEach(info -> info.nbt().put("Controller", NbtUtils.writeBlockPos(newControllerPos))); + + if (controllerPos.equals(newLocalPos)) + return; + + // swap nbt data to the new controller position + StructureBlockInfo prevControllerInfo = blocks.get(controllerPos); + StructureBlockInfo newControllerInfo = blocks.get(otherPos); + blocks.put(otherPos, new StructureBlockInfo(newControllerInfo.pos(), newControllerInfo.state(), prevControllerInfo.nbt())); + blocks.put(controllerPos, new StructureBlockInfo(prevControllerInfo.pos(), prevControllerInfo.state(), newControllerInfo.nbt())); + }); + } + public void addPassengersToWorld(Level world, StructureTransform transform, List seatedEntities) { for (Entity seatedEntity : seatedEntities) { if (getSeatMapping().isEmpty()) @@ -1156,14 +1239,14 @@ public abstract class Contraption { if (behaviour != null) behaviour.startMoving(context); pair.setRight(context); - if (behaviour instanceof ContraptionControlsMovement) + if (behaviour instanceof ContraptionControlsMovement) disableActorOnStart(context); } for (ItemStack stack : disabledActors) setActorsActive(stack, false); } - + protected void disableActorOnStart(MovementContext context) { if (!ContraptionControlsMovement.isDisabledInitially(context)) return; diff --git a/src/main/java/com/simibubi/create/content/contraptions/IDisplayAssemblyExceptions.java b/src/main/java/com/simibubi/create/content/contraptions/IDisplayAssemblyExceptions.java index c99054f41..983f67c37 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/IDisplayAssemblyExceptions.java +++ b/src/main/java/com/simibubi/create/content/contraptions/IDisplayAssemblyExceptions.java @@ -22,15 +22,13 @@ public interface IDisplayAssemblyExceptions { if (!tooltip.isEmpty()) tooltip.add(Components.immutableEmpty()); - tooltip.add(IHaveGoggleInformation.componentSpacing.plainCopy() - .append(Lang.translateDirect("gui.assembly.exception") - .withStyle(ChatFormatting.GOLD))); + Lang.translate("gui.assembly.exception").style(ChatFormatting.GOLD) + .forGoggles(tooltip); String text = e.component.getString(); Arrays.stream(text.split("\n")) .forEach(l -> TooltipHelper.cutStringTextComponent(l, Palette.GRAY_AND_WHITE) - .forEach(c -> tooltip.add(IHaveGoggleInformation.componentSpacing.plainCopy() - .append(c)))); + .forEach(c -> Lang.text(c.getString()).forGoggles(tooltip))); return true; } diff --git a/src/main/java/com/simibubi/create/content/contraptions/OrientedContraptionEntity.java b/src/main/java/com/simibubi/create/content/contraptions/OrientedContraptionEntity.java index 150affe77..98db27e53 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/OrientedContraptionEntity.java +++ b/src/main/java/com/simibubi/create/content/contraptions/OrientedContraptionEntity.java @@ -1,6 +1,7 @@ package com.simibubi.create.content.contraptions; import static com.simibubi.create.foundation.utility.AngleHelper.angleLerp; +import static com.simibubi.create.foundation.utility.AngleHelper.wrapAngle180; import java.util.Optional; import java.util.UUID; @@ -353,7 +354,7 @@ public class OrientedContraptionEntity extends AbstractContraptionEntity { return false; OrientedContraptionEntity parent = (OrientedContraptionEntity) riding; prevYaw = yaw; - yaw = -parent.getViewYRot(1); + yaw = wrapAngle180(getInitialYaw() - parent.getInitialYaw()) - parent.getViewYRot(1); return false; } @@ -496,7 +497,7 @@ public class OrientedContraptionEntity extends AbstractContraptionEntity { Vec3 anchorVec = super.getAnchorVec(); return anchorVec.subtract(.5, 0, .5); } - + @Override public Vec3 getPrevAnchorVec() { Vec3 prevAnchorVec = super.getPrevAnchorVec(); @@ -571,7 +572,7 @@ public class OrientedContraptionEntity extends AbstractContraptionEntity { Vec3 passengerPosition = parent.getPassengerPosition(this, partialTicks); if (passengerPosition == null) return Vec3.ZERO; - + double x = passengerPosition.x - Mth.lerp(partialTicks, this.xOld, this.getX()); double y = passengerPosition.y - Mth.lerp(partialTicks, this.yOld, this.getY()); double z = passengerPosition.z - Mth.lerp(partialTicks, this.zOld, this.getZ()); diff --git a/src/main/java/com/simibubi/create/content/contraptions/StructureTransform.java b/src/main/java/com/simibubi/create/content/contraptions/StructureTransform.java index 3c04ed60f..f781e0b8d 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/StructureTransform.java +++ b/src/main/java/com/simibubi/create/content/contraptions/StructureTransform.java @@ -98,6 +98,16 @@ public class StructureTransform { return vec; } + public Vec3 unapplyWithoutOffset(Vec3 globalVec) { + Vec3 vec = globalVec; + if (rotationAxis != null) + vec = VecHelper.rotateCentered(vec, -angle, rotationAxis); + if (mirror != null) + vec = VecHelper.mirrorCentered(vec, mirror); + + return vec; + } + public Vec3 apply(Vec3 localVec) { return applyWithoutOffset(localVec).add(Vec3.atLowerCornerOf(offset)); } @@ -110,6 +120,14 @@ public class StructureTransform { return applyWithoutOffset(localPos).offset(offset); } + public BlockPos unapply(BlockPos globalPos) { + return unapplyWithoutOffset(globalPos.subtract(offset)); + } + + public BlockPos unapplyWithoutOffset(BlockPos globalPos) { + return BlockPos.containing(unapplyWithoutOffset(VecHelper.getCenterOf(globalPos))); + } + public void apply(BlockEntity be) { if (be instanceof ITransformableBlockEntity) ((ITransformableBlockEntity) be).transform(this); diff --git a/src/main/java/com/simibubi/create/content/contraptions/TranslatingContraption.java b/src/main/java/com/simibubi/create/content/contraptions/TranslatingContraption.java index b6dacd00f..0c902d720 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/TranslatingContraption.java +++ b/src/main/java/com/simibubi/create/content/contraptions/TranslatingContraption.java @@ -4,6 +4,8 @@ import java.util.Collections; import java.util.HashSet; import java.util.Set; +import com.simibubi.create.infrastructure.config.AllConfigs; + import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.world.level.Level; @@ -19,7 +21,7 @@ public abstract class TranslatingContraption extends Contraption { return Collections.emptySet(); if (cachedColliders == null || cachedColliderDirection != movementDirection) { cachedColliderDirection = movementDirection; - cachedColliders= createColliders(world, movementDirection); + cachedColliders = createColliders(world, movementDirection); } return cachedColliders; } @@ -51,7 +53,7 @@ public abstract class TranslatingContraption extends Contraption { @Override public boolean canBeStabilized(Direction facing, BlockPos localPos) { - return false; + return AllConfigs.server().kinetics.stabiliseStableContraptions.get(); } } diff --git a/src/main/java/com/simibubi/create/content/contraptions/actors/roller/RollerMovementBehaviour.java b/src/main/java/com/simibubi/create/content/contraptions/actors/roller/RollerMovementBehaviour.java index 4c46b3664..f057acd73 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/actors/roller/RollerMovementBehaviour.java +++ b/src/main/java/com/simibubi/create/content/contraptions/actors/roller/RollerMovementBehaviour.java @@ -11,7 +11,7 @@ import javax.annotation.Nullable; import com.jozufozu.flywheel.api.MaterialManager; import com.jozufozu.flywheel.core.virtual.VirtualRenderWorld; -import com.simibubi.create.AllBlocks; +import com.simibubi.create.AllTags; import com.simibubi.create.content.contraptions.actors.roller.RollerBlockEntity.RollingMode; import com.simibubi.create.content.contraptions.behaviour.MovementContext; import com.simibubi.create.content.contraptions.pulley.PulleyContraption; @@ -109,7 +109,7 @@ public class RollerMovementBehaviour extends BlockBreakingMovementBehaviour { return false; return super.canBreak(world, breakingPos, state) && !state.getCollisionShape(world, breakingPos) - .isEmpty() && !AllBlocks.TRACK.has(state); + .isEmpty() && !AllTags.AllBlockTags.TRACKS.matches(state); } @Override @@ -195,7 +195,7 @@ public class RollerMovementBehaviour extends BlockBreakingMovementBehaviour { int startingY = 1; if (!getStateToPaveWith(context).isAir()) { FilterItemStack filter = context.getFilterFromBE(); - if (!ItemHelper + if (!ItemHelper .extract(context.contraption.getSharedInventory(), stack -> filter.test(context.world, stack), 1, true) .isEmpty()) @@ -306,7 +306,7 @@ public class RollerMovementBehaviour extends BlockBreakingMovementBehaviour { BlockState stateToPaveWith = getStateToPaveWith(context); BlockState stateToPaveWithAsSlab = getStateToPaveWithAsSlab(context); RollingMode mode = getMode(context); - + if (mode != RollingMode.TUNNEL_PAVE && stateToPaveWith.isAir()) return; @@ -469,8 +469,9 @@ public class RollerMovementBehaviour extends BlockBreakingMovementBehaviour { if (existing.is(toPlace.getBlock())) return PaveResult.PASS; if (!existing.is(BlockTags.LEAVES) && !existing.canBeReplaced() - && !existing.getCollisionShape(level, targetPos) - .isEmpty()) + && (!existing.getCollisionShape(level, targetPos) + .isEmpty() + || existing.is(BlockTags.PORTALS))) return PaveResult.FAIL; FilterItemStack filter = context.getFilterFromBE(); diff --git a/src/main/java/com/simibubi/create/content/contraptions/actors/seat/ContraptionPlayerPassengerRotation.java b/src/main/java/com/simibubi/create/content/contraptions/actors/seat/ContraptionPlayerPassengerRotation.java new file mode 100644 index 000000000..d5c81643c --- /dev/null +++ b/src/main/java/com/simibubi/create/content/contraptions/actors/seat/ContraptionPlayerPassengerRotation.java @@ -0,0 +1,71 @@ +package com.simibubi.create.content.contraptions.actors.seat; + +import com.simibubi.create.content.contraptions.AbstractContraptionEntity; +import com.simibubi.create.content.contraptions.AbstractContraptionEntity.ContraptionRotationState; +import com.simibubi.create.content.trains.entity.CarriageContraptionEntity; +import com.simibubi.create.foundation.utility.AngleHelper; +import com.simibubi.create.foundation.utility.AnimationTickHolder; +import com.simibubi.create.infrastructure.config.AllConfigs; + +import net.minecraft.client.Minecraft; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.player.Player; + +public class ContraptionPlayerPassengerRotation { + + static boolean active; + static int prevId; + static float prevYaw; + static float prevPitch; + + public static void tick() { + active = AllConfigs.client().rotateWhenSeated.get(); + } + + public static void frame() { + Player player = Minecraft.getInstance().player; + if (!active) + return; + if (player == null || !player.isPassenger()) { + prevId = 0; + return; + } + + Entity vehicle = player.getVehicle(); + if (!(vehicle instanceof AbstractContraptionEntity contraptionEntity)) + return; + + ContraptionRotationState rotationState = contraptionEntity.getRotationState(); + + float yaw = AngleHelper.wrapAngle180((contraptionEntity instanceof CarriageContraptionEntity cce) + ? cce.getViewYRot(AnimationTickHolder.getPartialTicks()) + : rotationState.yRotation); + + float pitch = (contraptionEntity instanceof CarriageContraptionEntity cce) + ? cce.getViewXRot(AnimationTickHolder.getPartialTicks()) + : 0; + + if (prevId != contraptionEntity.getId()) { + prevId = contraptionEntity.getId(); + prevYaw = yaw; + prevPitch = pitch; + } + + float yawDiff = AngleHelper.getShortestAngleDiff(yaw, prevYaw); + float pitchDiff = AngleHelper.getShortestAngleDiff(pitch, prevPitch); + + prevYaw = yaw; + prevPitch = pitch; + + float yawRelativeToTrain = Mth.abs(AngleHelper.getShortestAngleDiff(player.getYRot(), -yaw - 90)); + if (yawRelativeToTrain > 120) + pitchDiff *= -1; + else if (yawRelativeToTrain > 60) + pitchDiff *= 0; + + player.setYRot((float) (player.getYRot() + yawDiff)); + player.setXRot((float) (player.getXRot() + pitchDiff)); + } + +} diff --git a/src/main/java/com/simibubi/create/content/contraptions/behaviour/FenceGateMovingInteraction.java b/src/main/java/com/simibubi/create/content/contraptions/behaviour/FenceGateMovingInteraction.java new file mode 100644 index 000000000..8d897014f --- /dev/null +++ b/src/main/java/com/simibubi/create/content/contraptions/behaviour/FenceGateMovingInteraction.java @@ -0,0 +1,28 @@ +package com.simibubi.create.content.contraptions.behaviour; + +import com.simibubi.create.content.contraptions.Contraption; + +import net.minecraft.core.BlockPos; +import net.minecraft.sounds.SoundEvent; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.block.FenceGateBlock; +import net.minecraft.world.level.block.state.BlockState; + +public class FenceGateMovingInteraction extends SimpleBlockMovingInteraction { + + @Override + protected BlockState handle(Player player, Contraption contraption, BlockPos pos, BlockState currentState) { + SoundEvent sound = currentState.getValue(FenceGateBlock.OPEN) ? SoundEvents.FENCE_GATE_CLOSE + : SoundEvents.FENCE_GATE_OPEN; + float pitch = player.level().random.nextFloat() * 0.1F + 0.9F; + playSound(player, sound, pitch); + return currentState.cycle(FenceGateBlock.OPEN); + } + + @Override + protected boolean updateColliders() { + return true; + } + +} diff --git a/src/main/java/com/simibubi/create/content/contraptions/behaviour/dispenser/DropperMovementBehaviour.java b/src/main/java/com/simibubi/create/content/contraptions/behaviour/dispenser/DropperMovementBehaviour.java index 2086ea5ab..65f73bbe2 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/behaviour/dispenser/DropperMovementBehaviour.java +++ b/src/main/java/com/simibubi/create/content/contraptions/behaviour/dispenser/DropperMovementBehaviour.java @@ -42,7 +42,7 @@ public class DropperMovementBehaviour implements MovementBehaviour { .filter(itemStack -> !itemStack.isEmpty() && itemStack.getItem() != Items.AIR && itemStack.getMaxStackSize() > itemStack.getCount()) .forEach(itemStack -> itemStack.grow(ItemHelper - .extract(context.contraption.getSharedInventory(), ItemHelper.sameItemPredicate(itemStack), + .extract(context.contraption.getSharedInventory(), (otherItemStack) -> ItemStack.isSameItemSameTags(itemStack, otherItemStack), ItemHelper.ExtractionCountMode.UPTO, itemStack.getMaxStackSize() - itemStack.getCount(), false) .getCount())); } diff --git a/src/main/java/com/simibubi/create/content/contraptions/elevator/ElevatorContactEditPacket.java b/src/main/java/com/simibubi/create/content/contraptions/elevator/ElevatorContactEditPacket.java index 81d331d54..2a8a4487d 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/elevator/ElevatorContactEditPacket.java +++ b/src/main/java/com/simibubi/create/content/contraptions/elevator/ElevatorContactEditPacket.java @@ -27,14 +27,14 @@ public class ElevatorContactEditPacket extends BlockEntityConfigurationPacket> consumer) { if (world == null) return; Set cartsWithCoupling = CapabilityMinecartController.loadedMinecartsWithCoupling.get(world); if (cartsWithCoupling == null) return; - cartsWithCoupling.forEach(id -> { + + for (UUID id : cartsWithCoupling) { MinecartController controller = CapabilityMinecartController.getIfPresent(world, id); if (controller == null) return; @@ -63,7 +64,7 @@ public class CouplingHandler { if (coupledController == null) return; consumer.accept(Couple.create(controller, coupledController)); - }); + }; } public static boolean tryToCoupleCarts(@Nullable Player player, Level world, int cartId1, int cartId2) { @@ -83,13 +84,13 @@ public class CouplingHandler { int distanceTo = (int) entity1.position() .distanceTo(entity2.position()); boolean contraptionCoupling = player == null; - + if (distanceTo < 2) { if (contraptionCoupling) return false; // dont allow train contraptions with <2 distance distanceTo = 2; } - + if (distanceTo > AllConfigs.server().kinetics.maxCartCouplingLength.get()) { status(player, tooFar); return false; diff --git a/src/main/java/com/simibubi/create/content/contraptions/minecart/capability/CapabilityMinecartController.java b/src/main/java/com/simibubi/create/content/contraptions/minecart/capability/CapabilityMinecartController.java index 24f172f4a..2b6ea7a43 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/minecart/capability/CapabilityMinecartController.java +++ b/src/main/java/com/simibubi/create/content/contraptions/minecart/capability/CapabilityMinecartController.java @@ -86,15 +86,16 @@ public class CapabilityMinecartController implements ICapabilitySerializable toRemove = new ArrayList<>(); Map carts = loadedMinecartsByUUID.get(world); List queued = queuedAdditions.get(world); List queuedRemovals = queuedUnloads.get(world); Set cartsWithCoupling = loadedMinecartsWithCoupling.get(world); Set keySet = carts.keySet(); - keySet.removeAll(queuedRemovals); - cartsWithCoupling.removeAll(queuedRemovals); + for (UUID removal : queuedRemovals) { + keySet.remove(removal); + cartsWithCoupling.remove(removal); + } for (AbstractMinecart cart : queued) { UUID uniqueID = cart.getUUID(); @@ -115,10 +116,12 @@ public class CapabilityMinecartController implements ICapabilitySerializable { - if (mc.isLeadingCoupling()) + if (capability.isPresent()) { + MinecartController mc = capability.orElse(null); + if (mc.isLeadingCoupling()) { cartsWithCoupling.add(uniqueID); - }); + } + } if (!world.isClientSide && controller != null) controller.sendData(); } @@ -126,6 +129,8 @@ public class CapabilityMinecartController implements ICapabilitySerializable toRemove = new ArrayList<>(); + for (Entry entry : carts.entrySet()) { MinecartController controller = entry.getValue(); if (controller != null) { @@ -136,9 +141,11 @@ public class CapabilityMinecartController implements ICapabilitySerializable HALF = BlockStateProperties.HALF; @@ -209,10 +213,21 @@ public class CopycatStepBlock extends WaterloggedCopycatBlock { } @Override - public Predicate getItemPredicate() { + public @NotNull Predicate getItemPredicate() { return AllBlocks.COPYCAT_STEP::isIn; } + @Override + public @NotNull PlacementOffset getOffset(Player player, Level world, BlockState state, BlockPos pos, + BlockHitResult ray) { + PlacementOffset offset = super.getOffset(player, world, state, pos, ray); + + if (offset.isSuccessful()) + offset.withTransform(offset.getTransform() + .andThen(s -> s.setValue(HALF, state.getValue(HALF)))); + + return offset; + } } } diff --git a/src/main/java/com/simibubi/create/content/decoration/encasing/EncasableBlock.java b/src/main/java/com/simibubi/create/content/decoration/encasing/EncasableBlock.java index 6c31ae78c..d53cf9617 100644 --- a/src/main/java/com/simibubi/create/content/decoration/encasing/EncasableBlock.java +++ b/src/main/java/com/simibubi/create/content/decoration/encasing/EncasableBlock.java @@ -3,12 +3,14 @@ package com.simibubi.create.content.decoration.encasing; import java.util.List; import net.minecraft.core.BlockPos; +import net.minecraft.sounds.SoundSource; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.SoundType; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.phys.BlockHitResult; @@ -31,9 +33,16 @@ public interface EncasableBlock { return InteractionResult.SUCCESS; encased.handleEncasing(state, level, pos, heldItem, player, hand, ray); + playEncaseSound(level, pos); return InteractionResult.SUCCESS; } } return InteractionResult.PASS; } + + default void playEncaseSound(Level level, BlockPos pos) { + BlockState newState = level.getBlockState(pos); + SoundType soundType = newState.getSoundType(); + level.playSound(null, pos, soundType.getPlaceSound(), SoundSource.BLOCKS, (soundType.getVolume() + 1.0F) / 2.0F, soundType.getPitch() * 0.8F); + } } diff --git a/src/main/java/com/simibubi/create/content/decoration/placard/PlacardRenderer.java b/src/main/java/com/simibubi/create/content/decoration/placard/PlacardRenderer.java index 2f6f93abc..f67250f70 100644 --- a/src/main/java/com/simibubi/create/content/decoration/placard/PlacardRenderer.java +++ b/src/main/java/com/simibubi/create/content/decoration/placard/PlacardRenderer.java @@ -9,6 +9,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider; import net.minecraft.client.renderer.entity.ItemRenderer; +import net.minecraft.client.resources.model.BakedModel; import net.minecraft.core.Direction; import net.minecraft.util.Mth; import net.minecraft.world.item.ItemDisplayContext; @@ -33,8 +34,8 @@ public class PlacardRenderer extends SafeBlockEntityRenderer ItemRenderer itemRenderer = Minecraft.getInstance() .getItemRenderer(); - boolean blockItem = itemRenderer.getModel(heldItem, null, null, 0) - .isGui3d(); + BakedModel bakedModel = itemRenderer.getModel(heldItem, null, null, 0); + boolean blockItem = bakedModel.isGui3d(); ms.pushPose(); TransformStack.cast(ms) @@ -46,7 +47,7 @@ public class PlacardRenderer extends SafeBlockEntityRenderer .translate(0, 0, 4.5 / 16f) .scale(blockItem ? .5f : .375f); - itemRenderer.renderStatic(heldItem, ItemDisplayContext.FIXED, light, overlay, ms, buffer, be.getLevel(), 0); + itemRenderer.render(heldItem, ItemDisplayContext.FIXED, false, ms, buffer, light, overlay, bakedModel); ms.popPose(); } diff --git a/src/main/java/com/simibubi/create/content/decoration/slidingDoor/SlidingDoorBlock.java b/src/main/java/com/simibubi/create/content/decoration/slidingDoor/SlidingDoorBlock.java index 93a0e48bf..c21f0e60d 100644 --- a/src/main/java/com/simibubi/create/content/decoration/slidingDoor/SlidingDoorBlock.java +++ b/src/main/java/com/simibubi/create/content/decoration/slidingDoor/SlidingDoorBlock.java @@ -9,6 +9,8 @@ import com.simibubi.create.content.contraptions.ContraptionWorld; import com.simibubi.create.content.equipment.wrench.IWrenchable; import com.simibubi.create.foundation.block.IBE; +import com.simibubi.create.foundation.block.IHaveBigOutline; + import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.sounds.SoundEvents; @@ -40,7 +42,7 @@ import net.minecraft.world.phys.BlockHitResult; import net.minecraft.world.phys.shapes.CollisionContext; import net.minecraft.world.phys.shapes.VoxelShape; -public class SlidingDoorBlock extends DoorBlock implements IWrenchable, IBE { +public class SlidingDoorBlock extends DoorBlock implements IWrenchable, IBE, IHaveBigOutline { public static final Supplier TRAIN_SET_TYPE = () -> new BlockSetType("train", true, SoundType.NETHERITE_BLOCK, SoundEvents.IRON_DOOR_CLOSE, diff --git a/src/main/java/com/simibubi/create/content/decoration/steamWhistle/WhistleBlockEntity.java b/src/main/java/com/simibubi/create/content/decoration/steamWhistle/WhistleBlockEntity.java index 70b8fecce..d5ab6925a 100644 --- a/src/main/java/com/simibubi/create/content/decoration/steamWhistle/WhistleBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/decoration/steamWhistle/WhistleBlockEntity.java @@ -112,8 +112,7 @@ public class WhistleBlockEntity extends SmartBlockEntity implements IHaveGoggleI String[] pitches = Lang.translateDirect("generic.notes") .getString() .split(";"); - MutableComponent textComponent = Components.literal(spacing); - tooltip.add(textComponent.append(Lang.translateDirect("generic.pitch", pitches[pitch % pitches.length]))); + Lang.translate("generic.pitch", pitches[pitch % pitches.length]).forGoggles(tooltip); return true; } diff --git a/src/main/java/com/simibubi/create/content/equipment/armor/BacktankBlock.java b/src/main/java/com/simibubi/create/content/equipment/armor/BacktankBlock.java index 755584be7..967f0a7f6 100644 --- a/src/main/java/com/simibubi/create/content/equipment/armor/BacktankBlock.java +++ b/src/main/java/com/simibubi/create/content/equipment/armor/BacktankBlock.java @@ -1,19 +1,21 @@ package com.simibubi.create.content.equipment.armor; +import java.util.List; import java.util.Optional; import com.simibubi.create.AllBlockEntityTypes; import com.simibubi.create.AllEnchantments; import com.simibubi.create.AllShapes; import com.simibubi.create.content.kinetics.base.HorizontalKineticBlock; +import com.simibubi.create.content.schematics.requirement.ISpecialBlockItemRequirement; +import com.simibubi.create.content.schematics.requirement.ItemRequirement; +import com.simibubi.create.content.schematics.requirement.ItemRequirement.ItemUseType; import com.simibubi.create.foundation.block.IBE; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.core.Direction.Axis; import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.ListTag; -import net.minecraft.network.chat.Component; import net.minecraft.sounds.SoundEvents; import net.minecraft.sounds.SoundSource; import net.minecraft.world.InteractionHand; @@ -31,6 +33,7 @@ import net.minecraft.world.level.LevelAccessor; import net.minecraft.world.level.LevelReader; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.SimpleWaterloggedBlock; +import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.StateDefinition.Builder; @@ -38,13 +41,14 @@ import net.minecraft.world.level.block.state.properties.BlockStateProperties; import net.minecraft.world.level.material.FluidState; import net.minecraft.world.level.material.Fluids; import net.minecraft.world.level.pathfinder.PathComputationType; +import net.minecraft.world.level.storage.loot.LootParams; +import net.minecraft.world.level.storage.loot.parameters.LootContextParams; import net.minecraft.world.phys.BlockHitResult; import net.minecraft.world.phys.shapes.CollisionContext; import net.minecraft.world.phys.shapes.VoxelShape; import net.minecraftforge.common.util.FakePlayer; -public class BacktankBlock extends HorizontalKineticBlock - implements IBE, SimpleWaterloggedBlock { +public class BacktankBlock extends HorizontalKineticBlock implements IBE, SimpleWaterloggedBlock, ISpecialBlockItemRequirement { public BacktankBlock(Properties properties) { super(properties); @@ -75,9 +79,9 @@ public class BacktankBlock extends HorizontalKineticBlock } @Override - public BlockState updateShape(BlockState state, Direction direction, BlockState neighbourState, - LevelAccessor world, BlockPos pos, BlockPos neighbourPos) { - if (state.getValue(BlockStateProperties.WATERLOGGED)) + public BlockState updateShape(BlockState state, Direction direction, BlockState neighbourState, LevelAccessor world, + BlockPos pos, BlockPos neighbourPos) { + if (state.getValue(BlockStateProperties.WATERLOGGED)) world.scheduleTick(pos, Fluids.WATER, Fluids.WATER.getTickDelay(world)); return state; } @@ -111,13 +115,43 @@ public class BacktankBlock extends HorizontalKineticBlock be.setCapacityEnchantLevel(stack.getEnchantmentLevel(AllEnchantments.CAPACITY.get())); be.setAirLevel(stack.getOrCreateTag() .getInt("Air")); - if (stack.isEnchanted()) - be.setEnchantmentTag(stack.getEnchantmentTags()); + CompoundTag vanillaTag = stack.getOrCreateTag(); if (stack.hasCustomHoverName()) be.setCustomName(stack.getHoverName()); + + CompoundTag nbt = stack.serializeNBT(); + CompoundTag forgeCapsTag = nbt.contains("ForgeCaps") ? nbt.getCompound("ForgeCaps") : null; + be.setTags(vanillaTag, forgeCapsTag); }); } + @Override + @SuppressWarnings("deprecation") + // Re-adding ForgeCaps to item here as there is no loot function that can modify + // outside of the vanilla tag + public List getDrops(BlockState pState, LootParams.Builder pBuilder) { + List lootDrops = super.getDrops(pState, pBuilder); + + BlockEntity blockEntity = pBuilder.getOptionalParameter(LootContextParams.BLOCK_ENTITY); + if (!(blockEntity instanceof BacktankBlockEntity bbe)) + return lootDrops; + + CompoundTag forgeCapsTag = bbe.getForgeCapsTag(); + if (forgeCapsTag == null) + return lootDrops; + + return lootDrops.stream() + .map(stack -> { + if (!(stack.getItem() instanceof BacktankItem)) + return stack; + + ItemStack modifiedStack = new ItemStack(stack.getItem(), stack.getCount(), forgeCapsTag.copy()); + modifiedStack.setTag(stack.getTag()); + return modifiedStack; + }) + .toList(); + } + @Override public InteractionResult use(BlockState state, Level world, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hit) { @@ -144,30 +178,21 @@ public class BacktankBlock extends HorizontalKineticBlock @Override public ItemStack getCloneItemStack(BlockGetter blockGetter, BlockPos pos, BlockState state) { Item item = asItem(); - if (item instanceof BacktankItem.BacktankBlockItem placeable) { + if (item instanceof BacktankItem.BacktankBlockItem placeable) item = placeable.getActualItem(); - } - ItemStack stack = new ItemStack(item); Optional blockEntityOptional = getBlockEntityOptional(blockGetter, pos); + CompoundTag forgeCapsTag = blockEntityOptional.map(BacktankBlockEntity::getForgeCapsTag) + .orElse(null); + CompoundTag vanillaTag = blockEntityOptional.map(BacktankBlockEntity::getVanillaTag) + .orElse(new CompoundTag()); int air = blockEntityOptional.map(BacktankBlockEntity::getAirLevel) .orElse(0); - CompoundTag tag = stack.getOrCreateTag(); - tag.putInt("Air", air); - ListTag enchants = blockEntityOptional.map(BacktankBlockEntity::getEnchantmentTag) - .orElse(new ListTag()); - if (!enchants.isEmpty()) { - ListTag enchantmentTagList = stack.getEnchantmentTags(); - enchantmentTagList.addAll(enchants); - tag.put("Enchantments", enchantmentTagList); - } - - Component customName = blockEntityOptional.map(BacktankBlockEntity::getCustomName) - .orElse(null); - if (customName != null) - stack.setHoverName(customName); + ItemStack stack = new ItemStack(item, 1, forgeCapsTag); + vanillaTag.putInt("Air", air); + stack.setTag(vanillaTag); return stack; } @@ -181,7 +206,7 @@ public class BacktankBlock extends HorizontalKineticBlock public Class getBlockEntityClass() { return BacktankBlockEntity.class; } - + @Override public BlockEntityType getBlockEntityType() { return AllBlockEntityTypes.BACKTANK.get(); @@ -192,4 +217,12 @@ public class BacktankBlock extends HorizontalKineticBlock return false; } + @Override + public ItemRequirement getRequiredItems(BlockState state, BlockEntity blockEntity) { + Item item = asItem(); + if (item instanceof BacktankItem.BacktankBlockItem placeable) + item = placeable.getActualItem(); + return new ItemRequirement(ItemUseType.CONSUME, item); + } + } diff --git a/src/main/java/com/simibubi/create/content/equipment/armor/BacktankBlockEntity.java b/src/main/java/com/simibubi/create/content/equipment/armor/BacktankBlockEntity.java index 20f3c4518..181e5b1bb 100644 --- a/src/main/java/com/simibubi/create/content/equipment/armor/BacktankBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/equipment/armor/BacktankBlockEntity.java @@ -2,6 +2,8 @@ package com.simibubi.create.content.equipment.armor; import java.util.List; +import javax.annotation.Nullable; + import com.simibubi.create.AllBlocks; import com.simibubi.create.AllItems; import com.simibubi.create.AllSoundEvents; @@ -16,8 +18,6 @@ import net.minecraft.core.BlockPos; import net.minecraft.core.Direction.Axis; import net.minecraft.core.particles.ParticleTypes; import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.ListTag; -import net.minecraft.nbt.Tag; import net.minecraft.network.chat.Component; import net.minecraft.util.Mth; import net.minecraft.world.Nameable; @@ -35,20 +35,25 @@ public class BacktankBlockEntity extends KineticBlockEntity implements Nameable private Component customName; private int capacityEnchantLevel; - private ListTag enchantmentTag; + + private CompoundTag vanillaTag; + private CompoundTag forgeCapsTag; public BacktankBlockEntity(BlockEntityType type, BlockPos pos, BlockState state) { super(type, pos, state); defaultName = getDefaultName(state); - enchantmentTag = new ListTag(); + vanillaTag = new CompoundTag(); + forgeCapsTag = null; } public static Component getDefaultName(BlockState state) { if (AllBlocks.NETHERITE_BACKTANK.has(state)) { - AllItems.NETHERITE_BACKTANK.get().getDescription(); + AllItems.NETHERITE_BACKTANK.get() + .getDescription(); } - return AllItems.COPPER_BACKTANK.get().getDescription(); + return AllItems.COPPER_BACKTANK.get() + .getDescription(); } @Override @@ -115,21 +120,29 @@ public class BacktankBlockEntity extends KineticBlockEntity implements Nameable compound.putInt("Air", airLevel); compound.putInt("Timer", airLevelTimer); compound.putInt("CapacityEnchantment", capacityEnchantLevel); + if (this.customName != null) compound.putString("CustomName", Component.Serializer.toJson(this.customName)); - compound.put("Enchantments", enchantmentTag); + + compound.put("VanillaTag", vanillaTag); + if (forgeCapsTag != null) + compound.put("ForgeCapsTag", forgeCapsTag); } @Override protected void read(CompoundTag compound, boolean clientPacket) { super.read(compound, clientPacket); int prev = airLevel; - capacityEnchantLevel = compound.getInt("CapacityEnchantment"); airLevel = compound.getInt("Air"); airLevelTimer = compound.getInt("Timer"); - enchantmentTag = compound.getList("Enchantments", Tag.TAG_COMPOUND); + capacityEnchantLevel = compound.getInt("CapacityEnchantment"); + if (compound.contains("CustomName", 8)) this.customName = Component.Serializer.fromJson(compound.getString("CustomName")); + + vanillaTag = compound.getCompound("VanillaTag"); + forgeCapsTag = compound.contains("ForgeCapsTag") ? compound.getCompound("ForgeCapsTag") : null; + if (prev != 0 && prev != airLevel && airLevel == BacktankUtil.maxAir(capacityEnchantLevel) && clientPacket) playFilledEffect(); } @@ -149,8 +162,7 @@ public class BacktankBlockEntity extends KineticBlockEntity implements Nameable @Override public Component getName() { - return this.customName != null ? this.customName - : defaultName; + return this.customName != null ? this.customName : defaultName; } public int getAirLevel() { @@ -166,20 +178,21 @@ public class BacktankBlockEntity extends KineticBlockEntity implements Nameable this.customName = customName; } - public Component getCustomName() { - return customName; - } - - public ListTag getEnchantmentTag() { - return enchantmentTag; - } - - public void setEnchantmentTag(ListTag enchantmentTag) { - this.enchantmentTag = enchantmentTag; - } - public void setCapacityEnchantLevel(int capacityEnchantLevel) { this.capacityEnchantLevel = capacityEnchantLevel; } + + public void setTags(CompoundTag vanillaTag, @Nullable CompoundTag forgeCapsTag) { + this.vanillaTag = vanillaTag; + this.forgeCapsTag = forgeCapsTag; + } + + public CompoundTag getVanillaTag() { + return vanillaTag; + } + + public CompoundTag getForgeCapsTag() { + return forgeCapsTag; + } } diff --git a/src/main/java/com/simibubi/create/content/equipment/armor/NetheriteDivingHandler.java b/src/main/java/com/simibubi/create/content/equipment/armor/NetheriteDivingHandler.java index 211038ee6..1344273c4 100644 --- a/src/main/java/com/simibubi/create/content/equipment/armor/NetheriteDivingHandler.java +++ b/src/main/java/com/simibubi/create/content/equipment/armor/NetheriteDivingHandler.java @@ -6,7 +6,6 @@ import net.minecraft.nbt.CompoundTag; import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.item.ArmorItem; -import net.minecraft.world.item.ArmorMaterials; import net.minecraft.world.item.ItemStack; import net.minecraftforge.event.entity.living.LivingEquipmentChangeEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; @@ -51,13 +50,13 @@ public final class NetheriteDivingHandler { public static boolean isNetheriteDivingHelmet(ItemStack stack) { return stack.getItem() instanceof DivingHelmetItem && isNetheriteArmor(stack); } - + public static boolean isNetheriteBacktank(ItemStack stack) { return stack.is(AllItemTags.PRESSURIZED_AIR_SOURCES.tag) && isNetheriteArmor(stack); } - + public static boolean isNetheriteArmor(ItemStack stack) { - return stack.getItem() instanceof ArmorItem armorItem && armorItem.getMaterial() == ArmorMaterials.NETHERITE; + return stack.getItem() instanceof ArmorItem armorItem && armorItem.isFireResistant(); } public static void setBit(LivingEntity entity, EquipmentSlot slot) { diff --git a/src/main/java/com/simibubi/create/content/equipment/clipboard/ClipboardScreen.java b/src/main/java/com/simibubi/create/content/equipment/clipboard/ClipboardScreen.java index ab2ad153a..20f0e9dfc 100644 --- a/src/main/java/com/simibubi/create/content/equipment/clipboard/ClipboardScreen.java +++ b/src/main/java/com/simibubi/create/content/equipment/clipboard/ClipboardScreen.java @@ -6,6 +6,12 @@ import java.util.List; import javax.annotation.Nullable; +import com.simibubi.create.AllSoundEvents; + +import net.minecraft.client.Minecraft; + +import net.minecraft.client.resources.sounds.SimpleSoundInstance; + import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.mutable.MutableBoolean; import org.apache.commons.lang3.mutable.MutableInt; @@ -578,8 +584,11 @@ public class ClipboardScreen extends AbstractSimiScreen { if (hoveredEntry != -1) { if (hoveredCheck) { editingIndex = -1; - if (hoveredEntry < currentEntries.size()) + if (hoveredEntry < currentEntries.size()) { currentEntries.get(hoveredEntry).checked ^= true; + if (currentEntries.get(hoveredEntry).checked == true) Minecraft.getInstance().getSoundManager().play(SimpleSoundInstance.forUI(AllSoundEvents.CLIPBOARD_CHECKMARK.getMainEvent(), 0.95f + (float)Math.random() * 0.05f)); + else Minecraft.getInstance().getSoundManager().play(SimpleSoundInstance.forUI(AllSoundEvents.CLIPBOARD_ERASE.getMainEvent(), 0.90f + (float)Math.random() * 0.2f)); + } sendIfEditingBlock(); return true; } diff --git a/src/main/java/com/simibubi/create/content/equipment/clipboard/ClipboardValueSettingsHandler.java b/src/main/java/com/simibubi/create/content/equipment/clipboard/ClipboardValueSettingsHandler.java index c32fca385..8b3571492 100644 --- a/src/main/java/com/simibubi/create/content/equipment/clipboard/ClipboardValueSettingsHandler.java +++ b/src/main/java/com/simibubi/create/content/equipment/clipboard/ClipboardValueSettingsHandler.java @@ -58,7 +58,8 @@ public class ClipboardValueSettingsHandler { if (!smartBE.getAllBehaviours() .stream() .anyMatch(b -> b instanceof ClipboardCloneable cc - && cc.writeToClipboard(new CompoundTag(), target.getDirection()))) + && cc.writeToClipboard(new CompoundTag(), target.getDirection())) + && !(smartBE instanceof ClipboardCloneable)) return; VoxelShape shape = blockstate.getShape(mc.level, pos); diff --git a/src/main/java/com/simibubi/create/content/equipment/goggles/GoggleOverlayRenderer.java b/src/main/java/com/simibubi/create/content/equipment/goggles/GoggleOverlayRenderer.java index 2341d4f02..48530f1ce 100644 --- a/src/main/java/com/simibubi/create/content/equipment/goggles/GoggleOverlayRenderer.java +++ b/src/main/java/com/simibubi/create/content/equipment/goggles/GoggleOverlayRenderer.java @@ -4,10 +4,12 @@ import java.util.ArrayList; import java.util.List; import java.util.Map; +import com.mojang.blaze3d.platform.Window; import com.mojang.blaze3d.vertex.PoseStack; import com.simibubi.create.AllBlocks; import com.simibubi.create.AllItems; import com.simibubi.create.CreateClient; +import com.simibubi.create.compat.Mods; import com.simibubi.create.content.contraptions.IDisplayAssemblyExceptions; import com.simibubi.create.content.contraptions.piston.MechanicalPistonBlock; import com.simibubi.create.content.contraptions.piston.PistonExtensionPoleBlock; @@ -16,6 +18,7 @@ import com.simibubi.create.foundation.blockEntity.behaviour.ValueBox; import com.simibubi.create.foundation.gui.RemovedGuiUtils; import com.simibubi.create.foundation.gui.Theme; import com.simibubi.create.foundation.gui.element.GuiGameElement; +import com.simibubi.create.foundation.mixin.accessor.MouseHandlerAccessor; import com.simibubi.create.foundation.outliner.Outline; import com.simibubi.create.foundation.outliner.Outliner.OutlineEntry; import com.simibubi.create.foundation.utility.Color; @@ -26,6 +29,7 @@ import com.simibubi.create.infrastructure.config.AllConfigs; import com.simibubi.create.infrastructure.config.CClient; import net.minecraft.client.Minecraft; +import net.minecraft.client.MouseHandler; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.multiplayer.ClientLevel; import net.minecraft.core.BlockPos; @@ -82,7 +86,7 @@ public class GoggleOverlayRenderer { lastHovered = pos; pos = proxiedOverlayPosition(world, pos); - + BlockEntity be = world.getBlockEntity(pos); boolean wearingGoggles = GogglesItem.isWearingGoggles(mc.player); @@ -92,11 +96,16 @@ public class GoggleOverlayRenderer { boolean goggleAddedInformation = false; boolean hoverAddedInformation = false; + ItemStack item = AllItems.GOGGLES.asStack(); + List tooltip = new ArrayList<>(); if (hasGoggleInformation && wearingGoggles) { + boolean isShifting = mc.player.isShiftKeyDown(); + IHaveGoggleInformation gte = (IHaveGoggleInformation) be; - goggleAddedInformation = gte.addToGoggleTooltip(tooltip, mc.player.isShiftKeyDown()); + goggleAddedInformation = gte.addToGoggleTooltip(tooltip, isShifting); + item = gte.getIcon(isShifting); } if (hasHoveringInformation) { @@ -144,19 +153,18 @@ public class GoggleOverlayRenderer { } if (!pistonFound) { - hoverTicks = 0; + hoverTicks = 0; return; } if (!tooltip.isEmpty()) tooltip.add(Components.immutableEmpty()); - tooltip.add(IHaveGoggleInformation.componentSpacing.plainCopy() - .append(Lang.translateDirect("gui.goggles.pole_length")) - .append(Components.literal(" " + poles))); + Lang.translate("gui.goggles.pole_length").text(" " + poles) + .forGoggles(tooltip); } if (tooltip.isEmpty()) { - hoverTicks = 0; + hoverTicks = 0; return; } @@ -202,16 +210,46 @@ public class GoggleOverlayRenderer { colorBorderBot.scaleAlpha(fade); } - RemovedGuiUtils.drawHoveringText(graphics, tooltip, posX, posY, width, height, -1, colorBackground.getRGB(), - colorBorderTop.getRGB(), colorBorderBot.getRGB(), mc.font); - - ItemStack item = AllItems.GOGGLES.asStack(); GuiGameElement.of(item) .at(posX + 10, posY - 16, 450) .render(graphics); + + if (!Mods.MODERNUI.isLoaded()) { + // default tooltip rendering when modernUI is not loaded + RemovedGuiUtils.drawHoveringText(graphics, tooltip, posX, posY, width, height, -1, colorBackground.getRGB(), + colorBorderTop.getRGB(), colorBorderBot.getRGB(), mc.font); + + poseStack.popPose(); + + return; + } + + /* + * special handling for modernUI + * + * their tooltip handler causes the overlay to jiggle each frame, + * if the mouse is moving, guiScale is anything but 1 and exactPositioning is enabled + * + * this is a workaround to fix this behavior + */ + MouseHandler mouseHandler = Minecraft.getInstance().mouseHandler; + Window window = Minecraft.getInstance().getWindow(); + double guiScale = window.getGuiScale(); + double cursorX = mouseHandler.xpos(); + double cursorY = mouseHandler.ypos(); + ((MouseHandlerAccessor) mouseHandler).create$setXPos(Math.round(cursorX / guiScale) * guiScale); + ((MouseHandlerAccessor) mouseHandler).create$setYPos(Math.round(cursorY / guiScale) * guiScale); + + RemovedGuiUtils.drawHoveringText(graphics, tooltip, posX, posY, width, height, -1, colorBackground.getRGB(), + colorBorderTop.getRGB(), colorBorderBot.getRGB(), mc.font); + + ((MouseHandlerAccessor) mouseHandler).create$setXPos(cursorX); + ((MouseHandlerAccessor) mouseHandler).create$setYPos(cursorY); + poseStack.popPose(); + } - + public static BlockPos proxiedOverlayPosition(Level level, BlockPos pos) { BlockState targetedState = level.getBlockState(pos); if (targetedState.getBlock() instanceof IProxyHoveringInformation proxy) diff --git a/src/main/java/com/simibubi/create/content/equipment/goggles/IHaveGoggleInformation.java b/src/main/java/com/simibubi/create/content/equipment/goggles/IHaveGoggleInformation.java index 97085d1ed..7641e467d 100644 --- a/src/main/java/com/simibubi/create/content/equipment/goggles/IHaveGoggleInformation.java +++ b/src/main/java/com/simibubi/create/content/equipment/goggles/IHaveGoggleInformation.java @@ -3,12 +3,14 @@ package com.simibubi.create.content.equipment.goggles; import java.util.List; import java.util.Optional; +import com.simibubi.create.AllItems; import com.simibubi.create.foundation.utility.Components; import com.simibubi.create.foundation.utility.Lang; import com.simibubi.create.foundation.utility.LangBuilder; import net.minecraft.ChatFormatting; import net.minecraft.network.chat.Component; +import net.minecraft.world.item.ItemStack; import net.minecraftforge.common.util.LazyOptional; import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fluids.capability.IFluidHandler; @@ -40,6 +42,17 @@ public interface IHaveGoggleInformation { return false; } + /** + * this method will be called when looking at a BlockEntity that implemented this + * interface + *

+ * return the item of your choosing after checking for any logic you wish, and the goggle on the goggle + * tooltip will be replaced with the item you have returned + */ + default ItemStack getIcon(boolean isPlayerSneaking) { + return AllItems.GOGGLES.asStack(); + } + default boolean containedFluidTooltip(List tooltip, boolean isPlayerSneaking, LazyOptional handler) { Optional resolve = handler.resolve(); diff --git a/src/main/java/com/simibubi/create/content/equipment/potatoCannon/PotatoProjectileEntity.java b/src/main/java/com/simibubi/create/content/equipment/potatoCannon/PotatoProjectileEntity.java index b233ad499..f7cebe591 100644 --- a/src/main/java/com/simibubi/create/content/equipment/potatoCannon/PotatoProjectileEntity.java +++ b/src/main/java/com/simibubi/create/content/equipment/potatoCannon/PotatoProjectileEntity.java @@ -317,7 +317,7 @@ public class PotatoProjectileEntity extends AbstractHurtingProjectile implements } private DamageSource causePotatoDamage() { - return CreateDamageSources.potatoCannon(level(), getOwner(), this); + return CreateDamageSources.potatoCannon(level(), this, getOwner()); } @SuppressWarnings("unchecked") diff --git a/src/main/java/com/simibubi/create/content/equipment/wrench/IWrenchable.java b/src/main/java/com/simibubi/create/content/equipment/wrench/IWrenchable.java index c55d5059d..876d99baa 100644 --- a/src/main/java/com/simibubi/create/content/equipment/wrench/IWrenchable.java +++ b/src/main/java/com/simibubi/create/content/equipment/wrench/IWrenchable.java @@ -22,6 +22,8 @@ import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.state.BlockState; +import net.minecraftforge.common.MinecraftForge; +import net.minecraftforge.event.level.BlockEvent; public interface IWrenchable { @@ -54,16 +56,26 @@ public interface IWrenchable { Level world = context.getLevel(); BlockPos pos = context.getClickedPos(); Player player = context.getPlayer(); - if (world instanceof ServerLevel) { - if (player != null && !player.isCreative()) - Block.getDrops(state, (ServerLevel) world, pos, world.getBlockEntity(pos), player, context.getItemInHand()) - .forEach(itemStack -> { - player.getInventory().placeItemBackInInventory(itemStack); - }); - state.spawnAfterBreak((ServerLevel) world, pos, ItemStack.EMPTY, true); - world.destroyBlock(pos, false); - playRemoveSound(world, pos); + + if (!(world instanceof ServerLevel serverLevel)) + return InteractionResult.SUCCESS; + + BlockEvent.BreakEvent event = new BlockEvent.BreakEvent(world, pos, world.getBlockState(pos), player); + MinecraftForge.EVENT_BUS.post(event); + if (event.isCanceled()) + return InteractionResult.SUCCESS; + + if (player != null && !player.isCreative()) { + Block.getDrops(state, serverLevel, pos, world.getBlockEntity(pos), player, context.getItemInHand()) + .forEach(itemStack -> { + player.getInventory() + .placeItemBackInInventory(itemStack); + }); } + + state.spawnAfterBreak(serverLevel, pos, ItemStack.EMPTY, true); + world.destroyBlock(pos, false); + playRemoveSound(world, pos); return InteractionResult.SUCCESS; } diff --git a/src/main/java/com/simibubi/create/content/equipment/zapper/ZapperItem.java b/src/main/java/com/simibubi/create/content/equipment/zapper/ZapperItem.java index d8cf21448..45bd8d490 100644 --- a/src/main/java/com/simibubi/create/content/equipment/zapper/ZapperItem.java +++ b/src/main/java/com/simibubi/create/content/equipment/zapper/ZapperItem.java @@ -237,7 +237,7 @@ public abstract class ZapperItem extends Item implements CustomArmPoseItem { if (data != null && AllBlockTags.SAFE_NBT.matches(state)) { BlockEntity blockEntity = world.getBlockEntity(pos); if (blockEntity != null) { - data = NBTProcessors.process(blockEntity, data, !player.isCreative()); + data = NBTProcessors.process(state, blockEntity, data, !player.isCreative()); if (data == null) return; data.putInt("x", pos.getX()); diff --git a/src/main/java/com/simibubi/create/content/fluids/FluidPropagator.java b/src/main/java/com/simibubi/create/content/fluids/FluidPropagator.java index 5d9098a95..ef5000bf2 100644 --- a/src/main/java/com/simibubi/create/content/fluids/FluidPropagator.java +++ b/src/main/java/com/simibubi/create/content/fluids/FluidPropagator.java @@ -174,7 +174,7 @@ public class FluidPropagator { if (PumpBlock.isPump(connectedState) && connectedState.getValue(PumpBlock.FACING) .getAxis() == side.getAxis()) return false; - if (VanillaFluidTargets.shouldPipesConnectTo(connectedState)) + if (VanillaFluidTargets.canProvideFluidWithoutCapability(connectedState)) return true; if (BlockHelper.hasBlockSolidSide(connectedState, reader, connectedPos, side.getOpposite()) && !AllBlockTags.FAN_TRANSPARENT.matches(connectedState)) diff --git a/src/main/java/com/simibubi/create/content/fluids/drain/ItemDrainRenderer.java b/src/main/java/com/simibubi/create/content/fluids/drain/ItemDrainRenderer.java index 39781051b..d15835b1e 100644 --- a/src/main/java/com/simibubi/create/content/fluids/drain/ItemDrainRenderer.java +++ b/src/main/java/com/simibubi/create/content/fluids/drain/ItemDrainRenderer.java @@ -18,6 +18,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider; import net.minecraft.client.renderer.entity.ItemRenderer; +import net.minecraft.client.resources.model.BakedModel; import net.minecraft.core.Direction; import net.minecraft.util.Mth; import net.minecraft.world.entity.Entity; @@ -77,8 +78,8 @@ public class ItemDrainRenderer extends SmartBlockEntityRenderer emptyPotion(ItemStack stack, boolean simulate) { FluidStack fluid = getFluidFromPotionItem(stack); if (!simulate) diff --git a/src/main/java/com/simibubi/create/content/fluids/potion/PotionMixingRecipes.java b/src/main/java/com/simibubi/create/content/fluids/potion/PotionMixingRecipes.java index 4d3230eba..cc8f4f353 100644 --- a/src/main/java/com/simibubi/create/content/fluids/potion/PotionMixingRecipes.java +++ b/src/main/java/com/simibubi/create/content/fluids/potion/PotionMixingRecipes.java @@ -97,10 +97,16 @@ public class PotionMixingRecipes { FluidStack outputFluid = null; for (ItemStack stack : supportedContainerStacks) { if (input.test(stack)) { - FluidStack inputFluid = PotionFluidHandler.getFluidFromPotionItem(stack); + ItemStack[] stacks = input.getItems(); + if (stacks.length == 0){ + continue; + } + FluidStack inputFluid = PotionFluidHandler.getFluidFromPotionItem(stacks[0]); + inputFluid.setAmount(1000); if (outputFluid == null) { outputFluid = PotionFluidHandler.getFluidFromPotionItem(output); } + outputFluid.setAmount(1000); mixingRecipes.add(createRecipe("potion_mixing_modded_" + recipeIndex++, ingredient, inputFluid, outputFluid)); } } diff --git a/src/main/java/com/simibubi/create/content/fluids/spout/SpoutBlockEntity.java b/src/main/java/com/simibubi/create/content/fluids/spout/SpoutBlockEntity.java index 6f110f19d..1712fcccb 100644 --- a/src/main/java/com/simibubi/create/content/fluids/spout/SpoutBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/fluids/spout/SpoutBlockEntity.java @@ -7,6 +7,7 @@ import java.util.ArrayList; import java.util.List; import com.simibubi.create.AllItems; +import com.simibubi.create.AllSoundEvents; import com.simibubi.create.api.behaviour.BlockSpoutingBehaviour; import com.simibubi.create.content.equipment.goggles.IHaveGoggleInformation; import com.simibubi.create.content.fluids.FluidFX; @@ -105,6 +106,7 @@ public class SpoutBlockEntity extends SmartBlockEntity implements IHaveGoggleInf if (processingTicks == -1) { processingTicks = FILLING_TIME; notifyUpdate(); + AllSoundEvents.SPOUTING.playOnServer(level, worldPosition, 0.75f, 0.9f + 0.2f * (float)Math.random()); return HOLD; } @@ -221,9 +223,10 @@ public class SpoutBlockEntity extends SmartBlockEntity implements IHaveGoggleInf } } - if (processingTicks >= 8 && level.isClientSide) + if (processingTicks >= 8 && level.isClientSide) { spawnProcessingParticles(tank.getPrimaryTank() - .getRenderedFluid()); + .getRenderedFluid()); + } } protected void spawnProcessingParticles(FluidStack fluid) { diff --git a/src/main/java/com/simibubi/create/content/fluids/tank/BoilerData.java b/src/main/java/com/simibubi/create/content/fluids/tank/BoilerData.java index 4b9be558f..0f8d746db 100644 --- a/src/main/java/com/simibubi/create/content/fluids/tank/BoilerData.java +++ b/src/main/java/com/simibubi/create/content/fluids/tank/BoilerData.java @@ -147,20 +147,13 @@ public class BoilerData { if (!isActive()) return false; - Component indent = Components.literal(IHaveGoggleInformation.spacing); - Component indent2 = Components.literal(IHaveGoggleInformation.spacing + " "); - calcMinMaxForSize(boilerSize); - tooltip.add(indent.plainCopy() - .append( - Lang.translateDirect("boiler.status", getHeatLevelTextComponent().withStyle(ChatFormatting.GREEN)))); - tooltip.add(indent2.plainCopy() - .append(getSizeComponent(true, false))); - tooltip.add(indent2.plainCopy() - .append(getWaterComponent(true, false))); - tooltip.add(indent2.plainCopy() - .append(getHeatComponent(true, false))); + Lang.translate("boiler.status", getHeatLevelTextComponent().withStyle(ChatFormatting.GREEN)) + .forGoggles(tooltip); + Lang.text(getSizeComponent(true, false).getString()).forGoggles(tooltip, 1); + Lang.text(getWaterComponent(true, false).getString()).forGoggles(tooltip, 1); + Lang.text(getHeatComponent(true, false).getString()).forGoggles(tooltip, 1); if (attachedEngines == 0) return true; diff --git a/src/main/java/com/simibubi/create/content/fluids/tank/FluidTankBlockEntity.java b/src/main/java/com/simibubi/create/content/fluids/tank/FluidTankBlockEntity.java index 998c62cd6..a84a18f2a 100644 --- a/src/main/java/com/simibubi/create/content/fluids/tank/FluidTankBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/fluids/tank/FluidTankBlockEntity.java @@ -3,6 +3,7 @@ package com.simibubi.create.content.fluids.tank; import static java.lang.Math.abs; import java.util.List; +import java.util.Objects; import javax.annotation.Nonnull; import javax.annotation.Nullable; @@ -48,6 +49,7 @@ public class FluidTankBlockEntity extends SmartBlockEntity implements IHaveGoggl protected BlockPos controller; protected BlockPos lastKnownPos; protected boolean updateConnectivity; + protected boolean updateCapability; protected boolean window; protected int luminosity; protected int width; @@ -68,6 +70,7 @@ public class FluidTankBlockEntity extends SmartBlockEntity implements IHaveGoggl fluidCapability = LazyOptional.of(() -> tankInventory); forceFluidLevelUpdate = true; updateConnectivity = false; + updateCapability = false; window = true; height = 1; width = 1; @@ -104,6 +107,10 @@ public class FluidTankBlockEntity extends SmartBlockEntity implements IHaveGoggl return; } + if (updateCapability) { + updateCapability = false; + refreshCapability(); + } if (updateConnectivity) updateConnectivity(); if (fluidLevel != null) @@ -339,7 +346,7 @@ public class FluidTankBlockEntity extends SmartBlockEntity implements IHaveGoggl private void refreshCapability() { LazyOptional oldCap = fluidCapability; - fluidCapability = LazyOptional.of(() -> handlerForCapability()); + fluidCapability = LazyOptional.of(this::handlerForCapability); oldCap.invalidate(); } @@ -415,11 +422,12 @@ public class FluidTankBlockEntity extends SmartBlockEntity implements IHaveGoggl fluidLevel = LerpedFloat.linear() .startWithValue(getFillState()); + updateCapability = true; + if (!clientPacket) return; - boolean changeOfController = - controllerBefore == null ? controller != null : !controllerBefore.equals(controller); + boolean changeOfController = !Objects.equals(controllerBefore, controller); if (changeOfController || prevSize != width || prevHeight != height) { if (hasLevel()) level.sendBlockUpdated(getBlockPos(), getBlockState(), getBlockState(), 16); diff --git a/src/main/java/com/simibubi/create/content/fluids/transfer/FluidFillingBehaviour.java b/src/main/java/com/simibubi/create/content/fluids/transfer/FluidFillingBehaviour.java index 065dd6b0f..52ea8b456 100644 --- a/src/main/java/com/simibubi/create/content/fluids/transfer/FluidFillingBehaviour.java +++ b/src/main/java/com/simibubi/create/content/fluids/transfer/FluidFillingBehaviour.java @@ -282,7 +282,7 @@ public class FluidFillingBehaviour extends FluidManipulationBehaviour { // From FlowingFluidBlock#isBlocked protected boolean canBeReplacedByFluid(BlockGetter world, BlockPos pos, BlockState pState) { Block block = pState.getBlock(); - if (!(block instanceof DoorBlock) && !pState.is(BlockTags.SIGNS) && !pState.is(Blocks.LADDER) + if (!(block instanceof DoorBlock) && !pState.is(BlockTags.ALL_SIGNS) && !pState.is(Blocks.LADDER) && !pState.is(Blocks.SUGAR_CANE) && !pState.is(Blocks.BUBBLE_COLUMN)) { if (!pState.is(Blocks.NETHER_PORTAL) && !pState.is(Blocks.END_PORTAL) && !pState.is(Blocks.END_GATEWAY) && !pState.is(Blocks.STRUCTURE_VOID)) { diff --git a/src/main/java/com/simibubi/create/content/fluids/transfer/FluidManipulationBehaviour.java b/src/main/java/com/simibubi/create/content/fluids/transfer/FluidManipulationBehaviour.java index 6fcfa6340..d3433d5fd 100644 --- a/src/main/java/com/simibubi/create/content/fluids/transfer/FluidManipulationBehaviour.java +++ b/src/main/java/com/simibubi/create/content/fluids/transfer/FluidManipulationBehaviour.java @@ -36,11 +36,11 @@ public abstract class FluidManipulationBehaviour extends BlockEntityBehaviour { public static record BlockPosEntry(BlockPos pos, int distance) { }; - + public static class ChunkNotLoadedException extends Exception { private static final long serialVersionUID = 1L; } - + BoundingBox affectedArea; BlockPos rootPos; boolean infinite; @@ -146,7 +146,7 @@ public abstract class FluidManipulationBehaviour extends BlockEntityBehaviour { BiConsumer add, boolean searchDownward) throws ChunkNotLoadedException { Level world = getWorld(); int maxBlocks = maxBlocks(); - int maxRange = canDrainInfinitely(fluid) ? maxRange() : maxRange() / 2; + int maxRange = maxRange(); int maxRangeSq = maxRange * maxRange; int i; @@ -160,7 +160,7 @@ public abstract class FluidManipulationBehaviour extends BlockEntityBehaviour { if (!world.isLoaded(currentPos)) throw new ChunkNotLoadedException(); - + FluidState fluidState = world.getFluidState(currentPos); if (fluidState.isEmpty()) continue; @@ -203,7 +203,7 @@ public abstract class FluidManipulationBehaviour extends BlockEntityBehaviour { protected void playEffect(Level world, BlockPos pos, Fluid fluid, boolean fillSound) { if (fluid == null) return; - + BlockPos splooshPos = pos == null ? blockEntity.getBlockPos() : pos; FluidStack stack = new FluidStack(fluid, 1); diff --git a/src/main/java/com/simibubi/create/content/fluids/transfer/GenericItemEmptying.java b/src/main/java/com/simibubi/create/content/fluids/transfer/GenericItemEmptying.java index 5f4ed03c1..d77d00c12 100644 --- a/src/main/java/com/simibubi/create/content/fluids/transfer/GenericItemEmptying.java +++ b/src/main/java/com/simibubi/create/content/fluids/transfer/GenericItemEmptying.java @@ -24,7 +24,7 @@ public class GenericItemEmptying { private static final RecipeWrapper WRAPPER = new RecipeWrapper(new ItemStackHandler(1)); public static boolean canItemBeEmptied(Level world, ItemStack stack) { - if (stack.getItem() instanceof PotionItem) + if (PotionFluidHandler.isPotionItem(stack)) return true; WRAPPER.setItem(0, stack); @@ -49,7 +49,7 @@ public class GenericItemEmptying { FluidStack resultingFluid = FluidStack.EMPTY; ItemStack resultingItem = ItemStack.EMPTY; - if (stack.getItem() instanceof PotionItem) + if (PotionFluidHandler.isPotionItem(stack)) return PotionFluidHandler.emptyPotion(stack, simulate); WRAPPER.setItem(0, stack); diff --git a/src/main/java/com/simibubi/create/content/kinetics/BlockStressDefaults.java b/src/main/java/com/simibubi/create/content/kinetics/BlockStressDefaults.java index 16fb0cd2e..3b1db16a8 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/BlockStressDefaults.java +++ b/src/main/java/com/simibubi/create/content/kinetics/BlockStressDefaults.java @@ -1,7 +1,7 @@ package com.simibubi.create.content.kinetics; -import java.util.HashMap; import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; import java.util.function.Supplier; import com.simibubi.create.foundation.utility.Couple; @@ -20,9 +20,9 @@ public class BlockStressDefaults { */ public static final int FORCED_UPDATE_VERSION = 2; - public static final Map DEFAULT_IMPACTS = new HashMap<>(); - public static final Map DEFAULT_CAPACITIES = new HashMap<>(); - public static final Map>> GENERATOR_SPEEDS = new HashMap<>(); + public static final Map DEFAULT_IMPACTS = new ConcurrentHashMap<>(); + public static final Map DEFAULT_CAPACITIES = new ConcurrentHashMap<>(); + public static final Map>> GENERATOR_SPEEDS = new ConcurrentHashMap<>(); public static void setDefaultImpact(ResourceLocation blockId, double impact) { DEFAULT_IMPACTS.put(blockId, impact); diff --git a/src/main/java/com/simibubi/create/content/kinetics/belt/BeltBlockEntity.java b/src/main/java/com/simibubi/create/content/kinetics/belt/BeltBlockEntity.java index 9b71db867..73e2c955d 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/belt/BeltBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/kinetics/belt/BeltBlockEntity.java @@ -30,6 +30,7 @@ import com.simibubi.create.content.kinetics.belt.transport.ItemHandlerBeltSegmen import com.simibubi.create.content.kinetics.belt.transport.TransportedItemStack; import com.simibubi.create.content.logistics.tunnel.BrassTunnelBlockEntity; import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour; +import com.simibubi.create.foundation.blockEntity.behaviour.inventory.VersionedInventoryTrackerBehaviour; import com.simibubi.create.foundation.utility.NBTHelper; import net.minecraft.client.renderer.LightTexture; @@ -72,6 +73,7 @@ public class BeltBlockEntity extends KineticBlockEntity { protected BlockPos controller; protected BeltInventory inventory; protected LazyOptional itemHandler; + public VersionedInventoryTrackerBehaviour invVersionTracker; public CompoundTag trackerUpdateTag; @@ -97,6 +99,7 @@ public class BeltBlockEntity extends KineticBlockEntity { .setInsertionHandler(this::tryInsertingFromSide).considerOccupiedWhen(this::isOccupied)); behaviours.add(new TransportedItemStackHandlerBehaviour(this, this::applyToAllItems) .withStackPlacement(this::getWorldPositionOf)); + behaviours.add(invVersionTracker = new VersionedInventoryTrackerBehaviour(this)); } @Override diff --git a/src/main/java/com/simibubi/create/content/kinetics/belt/BeltRenderer.java b/src/main/java/com/simibubi/create/content/kinetics/belt/BeltRenderer.java index 83e490f0e..bf401e7f4 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/belt/BeltRenderer.java +++ b/src/main/java/com/simibubi/create/content/kinetics/belt/BeltRenderer.java @@ -29,6 +29,7 @@ import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider; import net.minecraft.client.renderer.entity.ItemRenderer; +import net.minecraft.client.resources.model.BakedModel; import net.minecraft.core.Direction; import net.minecraft.core.Direction.AxisDirection; import net.minecraft.core.Vec3i; @@ -193,14 +194,12 @@ public class BeltRenderer extends SafeBlockEntityRenderer { boolean slopeAlongX = beltFacing .getAxis() == Direction.Axis.X; + Minecraft mc = Minecraft.getInstance(); + ItemRenderer itemRenderer = mc.getItemRenderer(); boolean onContraption = be.getLevel() instanceof WrappedWorld; for (TransportedItemStack transported : be.getInventory() .getTransportedItems()) { - ms.pushPose(); - TransformStack.cast(ms) - .nudge(transported.angle); - float offset; float sideOffset; float verticalMovement; @@ -227,6 +226,18 @@ public class BeltRenderer extends SafeBlockEntityRenderer { .getAxis() == Direction.Axis.Z); float slopeAngle = onSlope ? tiltForward ? -45 : 45 : 0; + Vec3 itemPos = beltStartOffset.add( + be.getBlockPos().getX(), + be.getBlockPos().getY(), + be.getBlockPos().getZ()) + .add(offsetVec); + + if (this.shouldCullItem(itemPos)) { + continue; + } + + ms.pushPose(); + TransformStack.cast(ms).nudge(transported.angle); ms.translate(offsetVec.x, offsetVec.y, offsetVec.z); boolean alongX = beltFacing @@ -237,12 +248,15 @@ public class BeltRenderer extends SafeBlockEntityRenderer { ms.translate(alongX ? sideOffset : 0, 0, alongX ? 0 : sideOffset); int stackLight = onContraption ? light : getPackedLight(be, offset); - ItemRenderer itemRenderer = Minecraft.getInstance() - .getItemRenderer(); + boolean renderUpright = BeltHelper.isItemUpright(transported.stack); - boolean blockItem = itemRenderer.getModel(transported.stack, be.getLevel(), null, 0) - .isGui3d(); - int count = (int) (Mth.log2((int) (transported.stack.getCount()))) / 2; + BakedModel bakedModel = itemRenderer.getModel(transported.stack, be.getLevel(), null, 0); + boolean blockItem = bakedModel.isGui3d(); + + int count = 0; + if (mc.player.getEyePosition(1.0F).distanceTo(itemPos) < 16) + count = (int) (Mth.log2((int) (transported.stack.getCount()))) / 2; + Random r = new Random(transported.angle); boolean slopeShadowOnly = renderUpright && onSlope; @@ -263,7 +277,7 @@ public class BeltRenderer extends SafeBlockEntityRenderer { } if (renderUpright) { - Entity renderViewEntity = Minecraft.getInstance().cameraEntity; + Entity renderViewEntity = mc.cameraEntity; if (renderViewEntity != null) { Vec3 positionVec = renderViewEntity.position(); Vec3 vectorForOffset = BeltHelper.getVectorForOffset(be, offset); @@ -288,7 +302,7 @@ public class BeltRenderer extends SafeBlockEntityRenderer { } ms.scale(.5f, .5f, .5f); - itemRenderer.renderStatic(null, transported.stack, ItemDisplayContext.FIXED, false, ms, buffer, be.getLevel(), stackLight, overlay, 0); + itemRenderer.render(transported.stack, ItemDisplayContext.FIXED, false, ms, buffer, stackLight, overlay, bakedModel); ms.popPose(); if (!renderUpright) { diff --git a/src/main/java/com/simibubi/create/content/kinetics/belt/transport/BeltFunnelInteractionHandler.java b/src/main/java/com/simibubi/create/content/kinetics/belt/transport/BeltFunnelInteractionHandler.java index db37e8afb..3b214e46e 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/belt/transport/BeltFunnelInteractionHandler.java +++ b/src/main/java/com/simibubi/create/content/kinetics/belt/transport/BeltFunnelInteractionHandler.java @@ -45,7 +45,6 @@ public class BeltFunnelInteractionHandler { float funnelEntry = segment + .5f; if (funnelState.getValue(BeltFunnelBlock.SHAPE) == Shape.EXTENDED) funnelEntry += .499f * (beltMovementPositive ? -1 : 1); - boolean hasCrossed = nextOffset > funnelEntry && beltMovementPositive || nextOffset < funnelEntry && !beltMovementPositive; if (!hasCrossed) @@ -73,9 +72,12 @@ public class BeltFunnelInteractionHandler { else continue; + if(beltInventory.belt.invVersionTracker.stillWaiting(inserting)) + continue; + int amountToExtract = funnelBE.getAmountToExtract(); ExtractionCountMode modeToExtract = funnelBE.getModeToExtract(); - + ItemStack toInsert = currentItem.stack.copy(); if (amountToExtract > toInsert.getCount() && modeToExtract != ExtractionCountMode.UPTO) if (blocking) @@ -92,14 +94,18 @@ public class BeltFunnelInteractionHandler { return true; else continue; + else + beltInventory.belt.invVersionTracker.awaitNewVersion(inserting); } ItemStack remainder = inserting.insert(toInsert); - if (toInsert.equals(remainder, false)) + if (toInsert.equals(remainder, false)) { + beltInventory.belt.invVersionTracker.awaitNewVersion(inserting); if (blocking) return true; else continue; + } int notFilled = currentItem.stack.getCount() - toInsert.getCount(); if (!remainder.isEmpty()) { diff --git a/src/main/java/com/simibubi/create/content/kinetics/belt/transport/BeltInventory.java b/src/main/java/com/simibubi/create/content/kinetics/belt/transport/BeltInventory.java index 42b0939f6..1d1b80b05 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/belt/transport/BeltInventory.java +++ b/src/main/java/com/simibubi/create/content/kinetics/belt/transport/BeltInventory.java @@ -378,6 +378,8 @@ public class BeltInventory { float min = offset; float max = offset + 1; for (TransportedItemStack stack : items) { + if (toRemove.contains(stack)) + continue; if (stack.beltPosition > max) continue; if (stack.beltPosition > min) diff --git a/src/main/java/com/simibubi/create/content/kinetics/belt/transport/ItemHandlerBeltSegment.java b/src/main/java/com/simibubi/create/content/kinetics/belt/transport/ItemHandlerBeltSegment.java index 3395f9393..0a5248c5f 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/belt/transport/ItemHandlerBeltSegment.java +++ b/src/main/java/com/simibubi/create/content/kinetics/belt/transport/ItemHandlerBeltSegment.java @@ -50,13 +50,15 @@ public class ItemHandlerBeltSegment implements IItemHandler { return ItemStack.EMPTY; amount = Math.min(amount, transported.stack.getCount()); - ItemStack extracted = simulate ? transported.stack.copy().split(amount) : transported.stack.split(amount); + ItemStack extracted = simulate ? transported.stack.copy() + .split(amount) : transported.stack.split(amount); if (!simulate) { if (transported.stack.isEmpty()) - this.beltInventory.toRemove.add(transported); - this.beltInventory.belt.setChanged(); - this.beltInventory.belt.sendData(); + beltInventory.toRemove.add(transported); + else + beltInventory.belt.notifyUpdate(); } + return extracted; } diff --git a/src/main/java/com/simibubi/create/content/kinetics/deployer/BeltDeployerCallbacks.java b/src/main/java/com/simibubi/create/content/kinetics/deployer/BeltDeployerCallbacks.java index a04c71296..e18b1d699 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/deployer/BeltDeployerCallbacks.java +++ b/src/main/java/com/simibubi/create/content/kinetics/deployer/BeltDeployerCallbacks.java @@ -94,7 +94,7 @@ public class BeltDeployerCallbacks { public static void activate(TransportedItemStack transported, TransportedItemStackHandlerBehaviour handler, DeployerBlockEntity blockEntity, Recipe recipe) { - + List collect = RecipeApplier.applyRecipeOn(blockEntity.getLevel(), ItemHandlerHelper.copyStackWithSize(transported.stack, 1), recipe) .stream() @@ -113,7 +113,7 @@ public class BeltDeployerCallbacks { .collect(Collectors.toList()); blockEntity.award(AllAdvancements.DEPLOYER); - + TransportedItemStack left = transported.copy(); blockEntity.player.spawnedItemEffects = transported.stack.copy(); left.stack.shrink(1); @@ -128,8 +128,9 @@ public class BeltDeployerCallbacks { } ItemStack heldItem = blockEntity.player.getMainHandItem(); - boolean unbreakable = heldItem.hasTag() && heldItem.getTag() - .getBoolean("Unbreakable"); + boolean unbreakable = heldItem.hasTag() && ( + heldItem.getTag().getBoolean("Unbreakable") || + heldItem.getTag().getString("Modifier").equals("forbidden_arcanus:eternal")); // Forbidden Arcanus Compat, See Creators-of-Create#6220 boolean keepHeld = recipe instanceof ItemApplicationRecipe && ((ItemApplicationRecipe) recipe).shouldKeepHeldItem(); diff --git a/src/main/java/com/simibubi/create/content/kinetics/deployer/DeployerBlockEntity.java b/src/main/java/com/simibubi/create/content/kinetics/deployer/DeployerBlockEntity.java index 25c028fa6..38f9ba6e6 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/deployer/DeployerBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/kinetics/deployer/DeployerBlockEntity.java @@ -5,6 +5,7 @@ import static com.simibubi.create.content.kinetics.base.DirectionalKineticBlock. import java.util.ArrayList; import java.util.Arrays; import java.util.List; +import java.util.Optional; import java.util.UUID; import javax.annotation.Nullable; @@ -49,6 +50,7 @@ import net.minecraft.world.item.crafting.Recipe; import net.minecraft.world.level.ClipContext; import net.minecraft.world.level.ClipContext.Block; import net.minecraft.world.level.ClipContext.Fluid; +import net.minecraft.world.level.Level; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockState; @@ -547,8 +549,7 @@ public class DeployerBlockEntity extends KineticBlockEntity { ItemStack heldItemMainhand = player.getMainHandItem(); if (heldItemMainhand.getItem() instanceof SandPaperItem) { sandpaperInv.setItem(0, stack); - return AllRecipeTypes.SANDPAPER_POLISHING.find(sandpaperInv, level) - .orElse(null); + return checkRecipe(AllRecipeTypes.SANDPAPER_POLISHING, sandpaperInv, level).orElse(null); } recipeInv.setItem(0, stack); @@ -558,13 +559,17 @@ public class DeployerBlockEntity extends KineticBlockEntity { event.addRecipe(() -> SequencedAssemblyRecipe.getRecipe(level, event.getInventory(), AllRecipeTypes.DEPLOYING.getType(), DeployerApplicationRecipe.class), 100); - event.addRecipe(() -> AllRecipeTypes.DEPLOYING.find(event.getInventory(), level), 50); - event.addRecipe(() -> AllRecipeTypes.ITEM_APPLICATION.find(event.getInventory(), level), 50); + event.addRecipe(() -> checkRecipe(AllRecipeTypes.DEPLOYING, event.getInventory(), level), 50); + event.addRecipe(() -> checkRecipe(AllRecipeTypes.ITEM_APPLICATION, event.getInventory(), level), 50); MinecraftForge.EVENT_BUS.post(event); return event.getRecipe(); } + private Optional> checkRecipe(AllRecipeTypes type, RecipeWrapper inv, Level level) { + return type.find(inv, level).filter(AllRecipeTypes.CAN_BE_AUTOMATED); + } + public DeployerFakePlayer getPlayer() { return player; } diff --git a/src/main/java/com/simibubi/create/content/kinetics/deployer/DeployerFakePlayer.java b/src/main/java/com/simibubi/create/content/kinetics/deployer/DeployerFakePlayer.java index c3a8e079a..c8f0fdc5d 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/deployer/DeployerFakePlayer.java +++ b/src/main/java/com/simibubi/create/content/kinetics/deployer/DeployerFakePlayer.java @@ -150,25 +150,20 @@ public class DeployerFakePlayer extends FakePlayer { @SubscribeEvent public static void entitiesDontRetaliate(LivingChangeTargetEvent event) { - if (!(event.getNewTarget() instanceof DeployerFakePlayer)) + if (!(event.getOriginalTarget() instanceof DeployerFakePlayer)) return; LivingEntity entityLiving = event.getEntity(); - if (!(entityLiving instanceof Mob)) + if (!(entityLiving instanceof Mob mob)) return; - Mob mob = (Mob) entityLiving; CKinetics.DeployerAggroSetting setting = AllConfigs.server().kinetics.ignoreDeployerAttacks.get(); - switch (setting) { - case ALL: - mob.setTarget(null); - break; - case CREEPERS: - if (mob instanceof Creeper) - mob.setTarget(null); - break; - case NONE: - default: + switch(setting) { + case ALL -> event.setCanceled(true); + case CREEPERS -> { + if (mob instanceof Creeper) + event.setCanceled(true); + } } } diff --git a/src/main/java/com/simibubi/create/content/kinetics/deployer/DeployerHandler.java b/src/main/java/com/simibubi/create/content/kinetics/deployer/DeployerHandler.java index ab1dc58b5..10d0db876 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/deployer/DeployerHandler.java +++ b/src/main/java/com/simibubi/create/content/kinetics/deployer/DeployerHandler.java @@ -299,6 +299,9 @@ public class DeployerHandler { return; if (useItem == DENY) return; + if (item instanceof BlockItem && !(item instanceof CartAssemblerBlockItem) + && !clickedState.canBeReplaced(new BlockPlaceContext(itemusecontext))) + return; // Reposition fire placement for convenience if (item == Items.FLINT_AND_STEEL) { @@ -321,9 +324,6 @@ public class DeployerHandler { return; } - if (item instanceof BlockItem && !(item instanceof CartAssemblerBlockItem) - && !clickedState.canBeReplaced(new BlockPlaceContext(itemusecontext))) - return; if (item == Items.ENDER_PEARL) return; if (AllItemTags.DEPLOYABLE_DRINK.matches(item)) diff --git a/src/main/java/com/simibubi/create/content/kinetics/deployer/DeployerRenderer.java b/src/main/java/com/simibubi/create/content/kinetics/deployer/DeployerRenderer.java index cbc75aeef..ec73908a3 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/deployer/DeployerRenderer.java +++ b/src/main/java/com/simibubi/create/content/kinetics/deployer/DeployerRenderer.java @@ -33,6 +33,7 @@ import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider; import net.minecraft.client.renderer.entity.ItemRenderer; +import net.minecraft.client.resources.model.BakedModel; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.core.Direction.AxisDirection; @@ -88,9 +89,8 @@ public class DeployerRenderer extends SafeBlockEntityRenderer { @Override public boolean matches(RecipeWrapper inv, Level p_77569_2_) { - return ingredients.get(0) - .test(inv.getItem(0)) - && ingredients.get(1) - .test(inv.getItem(1)); + return getProcessedItem().test(inv.getItem(0)) && getRequiredHeldItem().test(inv.getItem(1)); } @Override @@ -43,13 +40,13 @@ public class ItemApplicationRecipe extends ProcessingRecipe { } public Ingredient getRequiredHeldItem() { - if (ingredients.isEmpty()) + if (ingredients.size() < 2) throw new IllegalStateException("Item Application Recipe: " + id.toString() + " has no tool!"); return ingredients.get(1); } public Ingredient getProcessedItem() { - if (ingredients.size() < 2) + if (ingredients.isEmpty()) throw new IllegalStateException("Item Application Recipe: " + id.toString() + " has no ingredient!"); return ingredients.get(0); } diff --git a/src/main/java/com/simibubi/create/content/kinetics/fan/processing/AllFanProcessingTypes.java b/src/main/java/com/simibubi/create/content/kinetics/fan/processing/AllFanProcessingTypes.java index 681ef4cac..515c892b0 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/fan/processing/AllFanProcessingTypes.java +++ b/src/main/java/com/simibubi/create/content/kinetics/fan/processing/AllFanProcessingTypes.java @@ -117,7 +117,7 @@ public class AllFanProcessingTypes { public List process(ItemStack stack, Level level) { return null; } - + @Override public void spawnProcessingParticles(Level level, Vec3 pos) { } @@ -159,14 +159,16 @@ public class AllFanProcessingTypes { public boolean canProcess(ItemStack stack, Level level) { RECIPE_WRAPPER.setItem(0, stack); Optional smeltingRecipe = level.getRecipeManager() - .getRecipeFor(RecipeType.SMELTING, RECIPE_WRAPPER, level); + .getRecipeFor(RecipeType.SMELTING, RECIPE_WRAPPER, level) + .filter(AllRecipeTypes.CAN_BE_AUTOMATED); if (smeltingRecipe.isPresent()) return true; RECIPE_WRAPPER.setItem(0, stack); Optional blastingRecipe = level.getRecipeManager() - .getRecipeFor(RecipeType.BLASTING, RECIPE_WRAPPER, level); + .getRecipeFor(RecipeType.BLASTING, RECIPE_WRAPPER, level) + .filter(AllRecipeTypes.CAN_BE_AUTOMATED); if (blastingRecipe.isPresent()) return true; @@ -180,11 +182,14 @@ public class AllFanProcessingTypes { public List process(ItemStack stack, Level level) { RECIPE_WRAPPER.setItem(0, stack); Optional smokingRecipe = level.getRecipeManager() - .getRecipeFor(RecipeType.SMOKING, RECIPE_WRAPPER, level); + .getRecipeFor(RecipeType.SMOKING, RECIPE_WRAPPER, level) + .filter(AllRecipeTypes.CAN_BE_AUTOMATED); RECIPE_WRAPPER.setItem(0, stack); Optional smeltingRecipe = level.getRecipeManager() - .getRecipeFor(RecipeType.SMELTING, RECIPE_WRAPPER, level); + .getRecipeFor(RecipeType.SMELTING, RECIPE_WRAPPER, level) + .filter(AllRecipeTypes.CAN_BE_AUTOMATED); + if (!smeltingRecipe.isPresent()) { RECIPE_WRAPPER.setItem(0, stack); smeltingRecipe = level.getRecipeManager() @@ -387,7 +392,9 @@ public class AllFanProcessingTypes { public boolean canProcess(ItemStack stack, Level level) { RECIPE_WRAPPER.setItem(0, stack); Optional recipe = level.getRecipeManager() - .getRecipeFor(RecipeType.SMOKING, RECIPE_WRAPPER, level); + .getRecipeFor(RecipeType.SMOKING, RECIPE_WRAPPER, level) + .filter(AllRecipeTypes.CAN_BE_AUTOMATED); + return recipe.isPresent(); } @@ -396,7 +403,8 @@ public class AllFanProcessingTypes { public List process(ItemStack stack, Level level) { RECIPE_WRAPPER.setItem(0, stack); Optional smokingRecipe = level.getRecipeManager() - .getRecipeFor(RecipeType.SMOKING, RECIPE_WRAPPER, level); + .getRecipeFor(RecipeType.SMOKING, RECIPE_WRAPPER, level) + .filter(AllRecipeTypes.CAN_BE_AUTOMATED); if (smokingRecipe.isPresent()) return RecipeApplier.applyRecipeOn(level, stack, smokingRecipe.get()); diff --git a/src/main/java/com/simibubi/create/content/kinetics/gauge/GaugeBlockEntity.java b/src/main/java/com/simibubi/create/content/kinetics/gauge/GaugeBlockEntity.java index ced8abf12..43f99519e 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/gauge/GaugeBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/kinetics/gauge/GaugeBlockEntity.java @@ -48,7 +48,7 @@ public abstract class GaugeBlockEntity extends KineticBlockEntity implements IHa @Override public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) { - tooltip.add(componentSpacing.plainCopy().append(Lang.translateDirect("gui.gauge.info_header"))); + Lang.translate("gui.gauge.info_header").forGoggles(tooltip); return true; } diff --git a/src/main/java/com/simibubi/create/content/kinetics/mechanicalArm/AllArmInteractionPointTypes.java b/src/main/java/com/simibubi/create/content/kinetics/mechanicalArm/AllArmInteractionPointTypes.java index 8d45dac6b..a638a2537 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/mechanicalArm/AllArmInteractionPointTypes.java +++ b/src/main/java/com/simibubi/create/content/kinetics/mechanicalArm/AllArmInteractionPointTypes.java @@ -25,6 +25,7 @@ import com.simibubi.create.content.logistics.funnel.BeltFunnelBlock.Shape; import com.simibubi.create.content.logistics.funnel.FunnelBlock; import com.simibubi.create.content.logistics.funnel.FunnelBlockEntity; import com.simibubi.create.content.logistics.tunnel.BeltTunnelBlock; +import com.simibubi.create.content.processing.basin.BasinBlock; import com.simibubi.create.content.processing.burner.BlazeBurnerBlock; import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour; import com.simibubi.create.foundation.blockEntity.behaviour.filtering.FilteringBehaviour; @@ -96,7 +97,7 @@ public class AllArmInteractionPointTypes { @Override public boolean canCreatePoint(Level level, BlockPos pos, BlockState state) { - return AllBlocks.BASIN.has(state); + return BasinBlock.isBasin(level, pos); } @Override @@ -182,7 +183,7 @@ public class AllArmInteractionPointTypes { @Override public ArmInteractionPoint createPoint(Level level, BlockPos pos, BlockState state) { - return new TopFaceArmInteractionPoint(this, level, pos, state); + return new CrushingWheelPoint(this, level, pos, state); } } @@ -712,4 +713,15 @@ public class AllArmInteractionPointTypes { } } + public static class CrushingWheelPoint extends DepositOnlyArmInteractionPoint { + public CrushingWheelPoint(ArmInteractionPointType type, Level level, BlockPos pos, BlockState state) { + super(type, level, pos, state); + } + + @Override + protected Vec3 getInteractionPositionVector() { + return Vec3.atLowerCornerOf(pos) + .add(.5f, 1, .5f); + } + } } diff --git a/src/main/java/com/simibubi/create/content/kinetics/mechanicalArm/ArmRenderer.java b/src/main/java/com/simibubi/create/content/kinetics/mechanicalArm/ArmRenderer.java index 65563c180..d8462223c 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/mechanicalArm/ArmRenderer.java +++ b/src/main/java/com/simibubi/create/content/kinetics/mechanicalArm/ArmRenderer.java @@ -18,6 +18,7 @@ import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider; import net.minecraft.client.renderer.entity.ItemRenderer; +import net.minecraft.client.resources.model.BakedModel; import net.minecraft.util.Mth; import net.minecraft.world.item.BlockItem; import net.minecraft.world.item.ItemDisplayContext; @@ -45,9 +46,8 @@ public class ArmRenderer extends KineticBlockEntityRenderer { ItemRenderer itemRenderer = Minecraft.getInstance() .getItemRenderer(); - boolean isBlockItem = - hasItem && (item.getItem() instanceof BlockItem) && itemRenderer.getModel(item, be.getLevel(), null, 0) - .isGui3d(); + BakedModel bakedModel = itemRenderer.getModel(item, be.getLevel(), null, 0); + boolean isBlockItem = hasItem && (item.getItem() instanceof BlockItem) && bakedModel.isGui3d(); VertexConsumer builder = buffer.getBuffer(be.goggles ? RenderType.cutout() : RenderType.solid()); BlockState blockState = be.getBlockState(); @@ -102,7 +102,7 @@ public class ArmRenderer extends KineticBlockEntityRenderer { .mul(msLocal.last() .pose()); - itemRenderer.renderStatic(item, ItemDisplayContext.FIXED, light, overlay, ms, buffer, be.getLevel(), 0); + itemRenderer.render(item, ItemDisplayContext.FIXED, false, ms, buffer, light, overlay, bakedModel); ms.popPose(); } @@ -141,13 +141,13 @@ public class ArmRenderer extends KineticBlockEntityRenderer { .renderInto(ms, builder); transformHead(msr, headAngle); - + if (inverted) msr.rotateZ(180); - + claw.transform(msLocal) .renderInto(ms, builder); - + if (inverted) msr.rotateZ(180); diff --git a/src/main/java/com/simibubi/create/content/kinetics/mixer/MechanicalMixerBlock.java b/src/main/java/com/simibubi/create/content/kinetics/mixer/MechanicalMixerBlock.java index 62d987084..c57147dba 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/mixer/MechanicalMixerBlock.java +++ b/src/main/java/com/simibubi/create/content/kinetics/mixer/MechanicalMixerBlock.java @@ -1,10 +1,10 @@ package com.simibubi.create.content.kinetics.mixer; import com.simibubi.create.AllBlockEntityTypes; -import com.simibubi.create.AllBlocks; import com.simibubi.create.AllShapes; import com.simibubi.create.content.kinetics.base.KineticBlock; import com.simibubi.create.content.kinetics.simpleRelays.ICogWheel; +import com.simibubi.create.content.processing.basin.BasinBlock; import com.simibubi.create.foundation.block.IBE; import net.minecraft.core.BlockPos; @@ -28,7 +28,7 @@ public class MechanicalMixerBlock extends KineticBlock implements IBE dropItemFromCutTree(context, stack, dropPos)); } diff --git a/src/main/java/com/simibubi/create/content/kinetics/saw/SawRenderer.java b/src/main/java/com/simibubi/create/content/kinetics/saw/SawRenderer.java index c00a53d92..bf999fdeb 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/saw/SawRenderer.java +++ b/src/main/java/com/simibubi/create/content/kinetics/saw/SawRenderer.java @@ -134,7 +134,7 @@ public class SawRenderer extends SafeBlockEntityRenderer { if (alongZ) ms.mulPose(Axis.YP.rotationDegrees(90)); ms.mulPose(Axis.XP.rotationDegrees(90)); - itemRenderer.renderStatic(stack, ItemDisplayContext.FIXED, light, overlay, ms, buffer, be.getLevel(), 0); + itemRenderer.render(stack, ItemDisplayContext.FIXED, false, ms, buffer, light, overlay, modelWithOverrides); break; } diff --git a/src/main/java/com/simibubi/create/content/kinetics/waterwheel/WaterWheelRenderer.java b/src/main/java/com/simibubi/create/content/kinetics/waterwheel/WaterWheelRenderer.java index 47106d1cd..aea9eb997 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/waterwheel/WaterWheelRenderer.java +++ b/src/main/java/com/simibubi/create/content/kinetics/waterwheel/WaterWheelRenderer.java @@ -4,6 +4,8 @@ import java.util.List; import java.util.Map; import java.util.Optional; +import javax.annotation.Nullable; + import com.jozufozu.flywheel.core.StitchedSprite; import com.mojang.blaze3d.vertex.PoseStack; import com.simibubi.create.AllPartialModels; @@ -40,8 +42,6 @@ public class WaterWheelRenderer extends Kinetic public static final StitchedSprite OAK_LOG_TEMPLATE = new StitchedSprite(new ResourceLocation("block/oak_log")); public static final StitchedSprite OAK_LOG_TOP_TEMPLATE = new StitchedSprite(new ResourceLocation("block/oak_log_top")); - private static final String[] LOG_SUFFIXES = new String[] { "_log", "_stem", "_block" }; - protected final boolean large; public WaterWheelRenderer(Context context, boolean large) { @@ -92,30 +92,50 @@ public class WaterWheelRenderer extends Kinetic } public static BakedModel generateModel(BakedModel template, BlockState planksBlockState) { + Block planksBlock = planksBlockState.getBlock(); + ResourceLocation id = RegisteredObjects.getKeyOrThrow(planksBlock); + String wood = plankStateToWoodName(planksBlockState); + + if (wood == null) + return BakedModelHelper.generateModel(template, sprite -> null); + + String namespace = id.getNamespace(); + BlockState logBlockState = getLogBlockState(namespace, wood); + + Map map = new Reference2ReferenceOpenHashMap<>(); + map.put(OAK_PLANKS_TEMPLATE.get(), getSpriteOnSide(planksBlockState, Direction.UP)); + map.put(OAK_LOG_TEMPLATE.get(), getSpriteOnSide(logBlockState, Direction.SOUTH)); + map.put(OAK_LOG_TOP_TEMPLATE.get(), getSpriteOnSide(logBlockState, Direction.UP)); + + return BakedModelHelper.generateModel(template, map::get); + } + + @Nullable + private static String plankStateToWoodName(BlockState planksBlockState) { Block planksBlock = planksBlockState.getBlock(); ResourceLocation id = RegisteredObjects.getKeyOrThrow(planksBlock); String path = id.getPath(); - - if (path.endsWith("_planks")) { - String namespace = id.getNamespace(); - String wood = path.substring(0, path.length() - 7); - BlockState logBlockState = getLogBlockState(namespace, wood); - - Map map = new Reference2ReferenceOpenHashMap<>(); - map.put(OAK_PLANKS_TEMPLATE.get(), getSpriteOnSide(planksBlockState, Direction.UP)); - map.put(OAK_LOG_TEMPLATE.get(), getSpriteOnSide(logBlockState, Direction.SOUTH)); - map.put(OAK_LOG_TOP_TEMPLATE.get(), getSpriteOnSide(logBlockState, Direction.UP)); - - return BakedModelHelper.generateModel(template, map::get); - } - - return BakedModelHelper.generateModel(template, sprite -> null); + + if (path.endsWith("_planks")) // Covers most wood types + return path.substring(0, path.length() - 7); + + if (path.contains("wood/planks/")) // TerraFirmaCraft + return path.substring(12); + + return null; } + private static final String[] LOG_LOCATIONS = new String[] { + + "x_log", "x_stem", "x_block", // Covers most wood types + "wood/log/x" // TerraFirmaCraft + + }; + private static BlockState getLogBlockState(String namespace, String wood) { - for (String suffix : LOG_SUFFIXES) { + for (String location : LOG_LOCATIONS) { Optional state = - ForgeRegistries.BLOCKS.getHolder(new ResourceLocation(namespace, wood + suffix)) + ForgeRegistries.BLOCKS.getHolder(new ResourceLocation(namespace, location.replace("x", wood))) .map(Holder::value) .map(Block::defaultBlockState); if (state.isPresent()) diff --git a/src/main/java/com/simibubi/create/content/kinetics/waterwheel/WaterWheelStructuralBlock.java b/src/main/java/com/simibubi/create/content/kinetics/waterwheel/WaterWheelStructuralBlock.java index 525bb1152..8d9b0b8bd 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/waterwheel/WaterWheelStructuralBlock.java +++ b/src/main/java/com/simibubi/create/content/kinetics/waterwheel/WaterWheelStructuralBlock.java @@ -206,4 +206,8 @@ public class WaterWheelStructuralBlock extends DirectionalBlock implements IWren return stillValid(level, pos, state, false) ? getMaster(level, pos, state) : pos; } -} \ No newline at end of file + @Override + public boolean isFlammable(BlockState state, BlockGetter level, BlockPos pos, Direction direction) { + return false; + } +} diff --git a/src/main/java/com/simibubi/create/content/legacy/ChromaticCompoundItem.java b/src/main/java/com/simibubi/create/content/legacy/ChromaticCompoundItem.java index ef9195da5..6c68e346b 100644 --- a/src/main/java/com/simibubi/create/content/legacy/ChromaticCompoundItem.java +++ b/src/main/java/com/simibubi/create/content/legacy/ChromaticCompoundItem.java @@ -127,7 +127,7 @@ public class ChromaticCompoundItem extends Item { BlockPos.MutableBlockPos testPos = new BlockPos.MutableBlockPos(entityX, Math.min(Mth.floor(entity.getY()), localWorldHeight), entityZ); - while (testPos.getY() > 0) { + while (testPos.getY() > minHeight) { testPos.move(Direction.DOWN); BlockState state = world.getBlockState(testPos); if (state.getLightBlock(world, testPos) >= 15 && state.getBlock() != Blocks.BEDROCK) diff --git a/src/main/java/com/simibubi/create/content/logistics/chute/ChuteBlockEntity.java b/src/main/java/com/simibubi/create/content/logistics/chute/ChuteBlockEntity.java index 1e30508e1..b59d511cb 100644 --- a/src/main/java/com/simibubi/create/content/logistics/chute/ChuteBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/logistics/chute/ChuteBlockEntity.java @@ -224,7 +224,7 @@ public class ChuteBlockEntity extends SmartBlockEntity implements IHaveGoggleInf // airCurrent.findEntities(); if (bottomPullDistance <= 0 && !getItem().isEmpty() || itemSpeed <= 0 || level == null || level.isClientSide) return; - if (!canCollectItemsFromBelow()) + if (!canActivate()) return; Vec3 center = VecHelper.getCenterOf(worldPosition); AABB searchArea = new AABB(center.add(0, -bottomPullDistance - 0.5, 0), center.add(0, -0.5, 0)).inflate(.45f); @@ -305,7 +305,7 @@ public class ChuteBlockEntity extends SmartBlockEntity implements IHaveGoggleInf if (!up && BlockHelper.noCollisionInSpace(level, worldPosition.below())) spawnAirFlow(0, -1, absMotion, .5f); - if (up && canCollectItemsFromBelow() && bottomPullDistance > 0) { + if (up && canActivate() && bottomPullDistance > 0) { spawnAirFlow(-bottomPullDistance, 0, absMotion, 2); spawnAirFlow(-bottomPullDistance, 0, absMotion, 2); } @@ -340,6 +340,8 @@ public class ChuteBlockEntity extends SmartBlockEntity implements IHaveGoggleInf private void handleInput(IItemHandler inv, float startLocation) { if (inv == null) return; + if (!canActivate()) + return; if (invVersionTracker.stillWaiting(inv)) return; Predicate canAccept = this::canAcceptItem; @@ -361,7 +363,7 @@ public class ChuteBlockEntity extends SmartBlockEntity implements IHaveGoggleInf ChuteBlockEntity targetChute = getTargetChute(blockState); Direction direction = AbstractChuteBlock.getChuteFacing(blockState); - if (level == null || direction == null || !this.canOutputItems()) + if (level == null || direction == null || !this.canActivate()) return false; if (!capBelow.isPresent()) capBelow = grabCapability(Direction.DOWN); @@ -417,7 +419,7 @@ public class ChuteBlockEntity extends SmartBlockEntity implements IHaveGoggleInf private boolean handleUpwardOutput(boolean simulate) { BlockState stateAbove = level.getBlockState(worldPosition.above()); - if (level == null || !this.canOutputItems()) + if (level == null || !this.canActivate()) return false; if (AbstractChuteBlock.isOpenChute(getBlockState())) { @@ -492,11 +494,7 @@ public class ChuteBlockEntity extends SmartBlockEntity implements IHaveGoggleInf return ExtractionCountMode.UPTO; } - protected boolean canCollectItemsFromBelow() { - return true; - } - - protected boolean canOutputItems() { + protected boolean canActivate() { return true; } diff --git a/src/main/java/com/simibubi/create/content/logistics/chute/SmartChuteBlockEntity.java b/src/main/java/com/simibubi/create/content/logistics/chute/SmartChuteBlockEntity.java index 368699ffa..d0d276d7d 100644 --- a/src/main/java/com/simibubi/create/content/logistics/chute/SmartChuteBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/logistics/chute/SmartChuteBlockEntity.java @@ -22,7 +22,7 @@ public class SmartChuteBlockEntity extends ChuteBlockEntity { @Override protected boolean canAcceptItem(ItemStack stack) { - return super.canAcceptItem(stack) && canCollectItemsFromBelow() && filtering.test(stack); + return super.canAcceptItem(stack) && canActivate() && filtering.test(stack); } @Override @@ -37,17 +37,11 @@ public class SmartChuteBlockEntity extends ChuteBlockEntity { } @Override - protected boolean canCollectItemsFromBelow() { + protected boolean canActivate() { BlockState blockState = getBlockState(); return blockState.hasProperty(SmartChuteBlock.POWERED) && !blockState.getValue(SmartChuteBlock.POWERED); } - @Override - protected boolean canOutputItems() { - BlockState blockState = getBlockState(); - return blockState.hasProperty(SmartChuteBlock.POWERED) && !blockState.getValue(SmartChuteBlock.POWERED); - } - @Override public void addBehaviours(List behaviours) { behaviours.add(filtering = diff --git a/src/main/java/com/simibubi/create/content/logistics/depot/DepotRenderer.java b/src/main/java/com/simibubi/create/content/logistics/depot/DepotRenderer.java index 5a239842f..676a66569 100644 --- a/src/main/java/com/simibubi/create/content/logistics/depot/DepotRenderer.java +++ b/src/main/java/com/simibubi/create/content/logistics/depot/DepotRenderer.java @@ -15,6 +15,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider; import net.minecraft.client.renderer.entity.ItemRenderer; +import net.minecraft.client.resources.model.BakedModel; import net.minecraft.core.Direction; import net.minecraft.util.Mth; import net.minecraft.world.entity.Entity; @@ -105,8 +106,8 @@ public class DepotRenderer extends SafeBlockEntityRenderer { TransformStack msr = TransformStack.cast(ms); int count = (int) (Mth.log2((int) (itemStack.getCount()))) / 2; boolean renderUpright = BeltHelper.isItemUpright(itemStack); - boolean blockItem = itemRenderer.getModel(itemStack, null, null, 0) - .isGui3d(); + BakedModel bakedModel = itemRenderer.getModel(itemStack, null, null, 0); + boolean blockItem = bakedModel.isGui3d(); ms.pushPose(); msr.rotateY(angle); @@ -132,7 +133,7 @@ public class DepotRenderer extends SafeBlockEntityRenderer { ms.translate(0, -3 / 16f, 0); msr.rotateX(90); } - itemRenderer.renderStatic(itemStack, ItemDisplayContext.FIXED, light, overlay, ms, buffer, level, 0); + itemRenderer.render(itemStack, ItemDisplayContext.FIXED, false, ms, buffer, light, overlay, bakedModel); ms.popPose(); if (!renderUpright) { diff --git a/src/main/java/com/simibubi/create/content/logistics/filter/FilterItemStack.java b/src/main/java/com/simibubi/create/content/logistics/filter/FilterItemStack.java index 78d5095eb..9773e9cf8 100644 --- a/src/main/java/com/simibubi/create/content/logistics/filter/FilterItemStack.java +++ b/src/main/java/com/simibubi/create/content/logistics/filter/FilterItemStack.java @@ -128,7 +128,7 @@ public class FilterItemStack { containedItems.add(FilterItemStack.of(stackInSlot)); } - shouldRespectNBT = !defaults ? false + shouldRespectNBT = defaults ? false : filter.getTag() .getBoolean("RespectNBT"); isBlacklist = defaults ? false diff --git a/src/main/java/com/simibubi/create/content/logistics/filter/ItemAttribute.java b/src/main/java/com/simibubi/create/content/logistics/filter/ItemAttribute.java index 2a7f9aa4a..bdb1a442f 100644 --- a/src/main/java/com/simibubi/create/content/logistics/filter/ItemAttribute.java +++ b/src/main/java/com/simibubi/create/content/logistics/filter/ItemAttribute.java @@ -40,6 +40,8 @@ import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Recipe; import net.minecraft.world.item.crafting.RecipeType; +import net.minecraft.world.item.CreativeModeTab; +import net.minecraft.world.item.CreativeModeTabs; import net.minecraft.world.item.enchantment.EnchantmentHelper; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.ComposterBlock; @@ -47,6 +49,7 @@ import net.minecraft.world.level.block.entity.AbstractFurnaceBlockEntity; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; import net.minecraftforge.common.capabilities.ForgeCapabilities; +import net.minecraftforge.common.CreativeModeTabRegistry; import net.minecraftforge.fml.ModContainer; import net.minecraftforge.fml.ModList; import net.minecraftforge.forgespi.language.IModInfo; @@ -59,6 +62,7 @@ public interface ItemAttribute { static ItemAttribute standard = register(StandardTraits.DUMMY); static ItemAttribute inTag = register(new InTag(ItemTags.LOGS)); + static ItemAttribute inItemGroup = register(InItemGroup.EMPTY); static ItemAttribute addedBy = register(new AddedBy("dummy")); static ItemAttribute hasEnchant = register(EnchantAttribute.EMPTY); static ItemAttribute shulkerFillLevel = register(ShulkerFillLevelAttribute.EMPTY); @@ -273,6 +277,55 @@ public interface ItemAttribute { } + public static class InItemGroup implements ItemAttribute { + public static final InItemGroup EMPTY = new InItemGroup(null); + + private CreativeModeTab group; + + public InItemGroup(CreativeModeTab group) { + this.group = group; + } + + @Override + public boolean appliesTo(ItemStack stack) { + return group != null && group.contains(stack); + } + + @Override + public List listAttributesOf(ItemStack stack) { + return CreativeModeTabs.tabs().stream() + .filter(tab -> !tab.hasSearchBar() && tab.contains(stack)) + .map(tab -> (ItemAttribute)new InItemGroup(tab)) + .toList(); + } + + @Override + public String getTranslationKey() { + return "in_item_group"; + } + + @Override + public Object[] getTranslationParameters() { + return new Object[] { group == null ? "" : group.getDisplayName().getString() }; + } + + @Override + public void writeNBT(CompoundTag nbt) { + if (group != null) { + ResourceLocation groupId = CreativeModeTabRegistry.getName(group); + + if (groupId != null) { + nbt.putString("group", groupId.toString()); + } + } + } + + @Override + public ItemAttribute readNBT(CompoundTag nbt) { + return nbt.contains("group") ? new InItemGroup(CreativeModeTabRegistry.getTab(new ResourceLocation(nbt.getString("group")))) : EMPTY; + } + } + public static class AddedBy implements ItemAttribute { private String modId; diff --git a/src/main/java/com/simibubi/create/content/logistics/funnel/FunnelMovementBehaviour.java b/src/main/java/com/simibubi/create/content/logistics/funnel/FunnelMovementBehaviour.java index 9e6143b58..9d85eb974 100644 --- a/src/main/java/com/simibubi/create/content/logistics/funnel/FunnelMovementBehaviour.java +++ b/src/main/java/com/simibubi/create/content/logistics/funnel/FunnelMovementBehaviour.java @@ -74,8 +74,7 @@ public class FunnelMovementBehaviour implements MovementBehaviour { FilterItemStack filter = context.getFilterFromBE(); int filterAmount = context.blockEntityData.getInt("FilterAmount"); boolean upTo = context.blockEntityData.getBoolean("UpTo"); - if (filterAmount <= 0) - filterAmount = hasFilter ? 64 : 1; + filterAmount = hasFilter ? filterAmount : 1; ItemStack extract = ItemHelper.extract(context.contraption.getSharedInventory(), s -> filter.test(world, s), diff --git a/src/main/java/com/simibubi/create/content/logistics/tunnel/BrassTunnelBlockEntity.java b/src/main/java/com/simibubi/create/content/logistics/tunnel/BrassTunnelBlockEntity.java index bef8d050a..2a4506f89 100644 --- a/src/main/java/com/simibubi/create/content/logistics/tunnel/BrassTunnelBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/logistics/tunnel/BrassTunnelBlockEntity.java @@ -784,20 +784,13 @@ public class BrassTunnelBlockEntity extends BeltTunnelBlockEntity implements IHa if (allStacks.isEmpty()) return false; - tooltip.add(componentSpacing.plainCopy() - .append(Lang.translateDirect("tooltip.brass_tunnel.contains")) - .withStyle(ChatFormatting.WHITE)); + Lang.translate("tooltip.brass_tunnel.contains").style(ChatFormatting.WHITE).forGoggles(tooltip); for (ItemStack item : allStacks) { - tooltip.add(componentSpacing.plainCopy() - .append(Lang.translateDirect("tooltip.brass_tunnel.contains_entry", - Components.translatable(item.getDescriptionId()) - .getString(), - item.getCount())) - .withStyle(ChatFormatting.GRAY)); + Lang.translate("tooltip.brass_tunnel.contains_entry", + Components.translatable(item.getDescriptionId()).getString(), item.getCount()) + .style(ChatFormatting.GRAY).forGoggles(tooltip); } - tooltip.add(componentSpacing.plainCopy() - .append(Lang.translateDirect("tooltip.brass_tunnel.retrieve")) - .withStyle(ChatFormatting.DARK_GRAY)); + Lang.translate("tooltip.brass_tunnel.retrieve").style(ChatFormatting.DARK_GRAY).forGoggles(tooltip); return true; } diff --git a/src/main/java/com/simibubi/create/content/processing/AssemblyOperatorBlockItem.java b/src/main/java/com/simibubi/create/content/processing/AssemblyOperatorBlockItem.java index c7372f71c..6ed0a4030 100644 --- a/src/main/java/com/simibubi/create/content/processing/AssemblyOperatorBlockItem.java +++ b/src/main/java/com/simibubi/create/content/processing/AssemblyOperatorBlockItem.java @@ -3,12 +3,15 @@ package com.simibubi.create.content.processing; import com.simibubi.create.AllBlocks; import com.simibubi.create.content.kinetics.belt.BeltBlock; import com.simibubi.create.content.kinetics.belt.BeltSlope; +import com.simibubi.create.content.processing.basin.BasinBlock; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.world.InteractionResult; import net.minecraft.world.item.BlockItem; import net.minecraft.world.item.context.BlockPlaceContext; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.LevelReader; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.phys.BlockHitResult; @@ -25,11 +28,11 @@ public class AssemblyOperatorBlockItem extends BlockItem { BlockPos placedOnPos = context.getClickedPos() .relative(context.getClickedFace() .getOpposite()); - BlockState placedOnState = context.getLevel() + Level level = context.getLevel(); + BlockState placedOnState = level .getBlockState(placedOnPos); - if (operatesOn(placedOnState) && context.getClickedFace() == Direction.UP) { - if (context.getLevel() - .getBlockState(placedOnPos.above(2)) + if (operatesOn(level, placedOnPos, placedOnState) && context.getClickedFace() == Direction.UP) { + if (level.getBlockState(placedOnPos.above(2)) .canBeReplaced()) context = adjustContext(context, placedOnPos); else @@ -44,10 +47,10 @@ public class AssemblyOperatorBlockItem extends BlockItem { return new AssemblyOperatorUseContext(context.getLevel(), context.getPlayer(), context.getHand(), context.getItemInHand(), new BlockHitResult(new Vec3((double)up.getX() + 0.5D + (double) Direction.UP.getStepX() * 0.5D, (double)up.getY() + 0.5D + (double) Direction.UP.getStepY() * 0.5D, (double)up.getZ() + 0.5D + (double) Direction.UP.getStepZ() * 0.5D), Direction.UP, up, false)); } - protected boolean operatesOn(BlockState placedOnState) { + protected boolean operatesOn(LevelReader world, BlockPos pos, BlockState placedOnState) { if (AllBlocks.BELT.has(placedOnState)) return placedOnState.getValue(BeltBlock.SLOPE) == BeltSlope.HORIZONTAL; - return AllBlocks.BASIN.has(placedOnState) || AllBlocks.DEPOT.has(placedOnState) || AllBlocks.WEIGHTED_EJECTOR.has(placedOnState); + return BasinBlock.isBasin(world, pos) || AllBlocks.DEPOT.has(placedOnState) || AllBlocks.WEIGHTED_EJECTOR.has(placedOnState); } } diff --git a/src/main/java/com/simibubi/create/content/processing/basin/BasinBlock.java b/src/main/java/com/simibubi/create/content/processing/basin/BasinBlock.java index 8120b56fc..26cafec47 100644 --- a/src/main/java/com/simibubi/create/content/processing/basin/BasinBlock.java +++ b/src/main/java/com/simibubi/create/content/processing/basin/BasinBlock.java @@ -1,7 +1,6 @@ package com.simibubi.create.content.processing.basin; import com.simibubi.create.AllBlockEntityTypes; -import com.simibubi.create.AllBlocks; import com.simibubi.create.AllShapes; import com.simibubi.create.Create; import com.simibubi.create.content.equipment.wrench.IWrenchable; @@ -62,6 +61,10 @@ public class BasinBlock extends Block implements IBE, IWrencha protected void createBlockStateDefinition(Builder p_206840_1_) { super.createBlockStateDefinition(p_206840_1_.add(FACING)); } + + public static boolean isBasin(LevelReader world, BlockPos pos) { + return world.getBlockEntity(pos) instanceof BasinBlockEntity; + } @Override public boolean canSurvive(BlockState state, LevelReader world, BlockPos pos) { @@ -127,7 +130,8 @@ public class BasinBlock extends Block implements IBE, IWrencha @Override public void updateEntityAfterFallOn(BlockGetter worldIn, Entity entityIn) { super.updateEntityAfterFallOn(worldIn, entityIn); - if (!AllBlocks.BASIN.has(worldIn.getBlockState(entityIn.blockPosition()))) + if (!worldIn.getBlockState(entityIn.blockPosition()) + .is(this)) return; if (!(entityIn instanceof ItemEntity)) return; diff --git a/src/main/java/com/simibubi/create/content/processing/basin/BasinBlockEntity.java b/src/main/java/com/simibubi/create/content/processing/basin/BasinBlockEntity.java index 6f3d3dd0f..e3cda196f 100644 --- a/src/main/java/com/simibubi/create/content/processing/basin/BasinBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/processing/basin/BasinBlockEntity.java @@ -379,6 +379,9 @@ public class BasinBlockEntity extends SmartBlockEntity implements IHaveGoggleInf inserter = BlockEntityBehaviour.get(level, be.getBlockPos(), InvManipulationBehaviour.TYPE); } + if (be instanceof BasinBlockEntity) + filter = null; // Do not test spout outputs against the recipe filter + IItemHandler targetInv = be == null ? null : be.getCapability(ForgeCapabilities.ITEM_HANDLER, direction.getOpposite()) .orElse(inserter == null ? null : inserter.getInventory()); @@ -401,16 +404,21 @@ public class BasinBlockEntity extends SmartBlockEntity implements IHaveGoggleInf if (targetInv == null) break; - if (!ItemHandlerHelper.insertItemStacked(targetInv, itemStack, true) - .isEmpty()) + + ItemStack remainder = ItemHandlerHelper.insertItemStacked(targetInv, itemStack, true); + if (remainder.getCount() == itemStack.getCount()) continue; if (filter != null && !filter.test(itemStack)) continue; - update = true; - ItemHandlerHelper.insertItemStacked(targetInv, itemStack.copy(), false); - iterator.remove(); visualizedOutputItems.add(IntAttached.withZero(itemStack)); + update = true; + + remainder = ItemHandlerHelper.insertItemStacked(targetInv, itemStack.copy(), false); + if (remainder.isEmpty()) + iterator.remove(); + else + itemStack.setCount(remainder.getCount()); } for (Iterator iterator = spoutputFluidBuffer.iterator(); iterator.hasNext();) { @@ -546,9 +554,9 @@ public class BasinBlockEntity extends SmartBlockEntity implements IHaveGoggleInf if (simulate) return true; - for (ItemStack itemStack : outputItems) { - spoutputBuffer.add(itemStack.copy()); - } + for (ItemStack itemStack : outputItems) + if (!itemStack.isEmpty()) + spoutputBuffer.add(itemStack.copy()); if (!externalTankNotPresent) for (FluidStack fluidStack : outputFluids) spoutputFluidBuffer.add(fluidStack.copy()); @@ -603,7 +611,9 @@ public class BasinBlockEntity extends SmartBlockEntity implements IHaveGoggleInf public static HeatLevel getHeatLevelOf(BlockState state) { if (state.hasProperty(BlazeBurnerBlock.HEAT_LEVEL)) return state.getValue(BlazeBurnerBlock.HEAT_LEVEL); - return AllTags.AllBlockTags.PASSIVE_BOILER_HEATERS.matches(state) && BlockHelper.isNotUnheated(state) ? HeatLevel.SMOULDERING : HeatLevel.NONE; + return AllTags.AllBlockTags.PASSIVE_BOILER_HEATERS.matches(state) && BlockHelper.isNotUnheated(state) + ? HeatLevel.SMOULDERING + : HeatLevel.NONE; } public Couple getTanks() { diff --git a/src/main/java/com/simibubi/create/content/processing/basin/BasinInventory.java b/src/main/java/com/simibubi/create/content/processing/basin/BasinInventory.java index 0c88d4d0d..63121355d 100644 --- a/src/main/java/com/simibubi/create/content/processing/basin/BasinInventory.java +++ b/src/main/java/com/simibubi/create/content/processing/basin/BasinInventory.java @@ -13,16 +13,29 @@ public class BasinInventory extends SmartInventory { super(slots, be, 16, true); this.blockEntity = be; } - + @Override public ItemStack insertItem(int slot, ItemStack stack, boolean simulate) { - // Only insert if no other slot already has a stack of this item - for (int i = 0; i < getSlots(); i++) + int firstFreeSlot = -1; + + for (int i = 0; i < getSlots(); i++) { + // Only insert if no other slot already has a stack of this item if (i != slot && ItemHandlerHelper.canItemStacksStack(stack, inv.getStackInSlot(i))) return stack; + if (inv.getStackInSlot(i) + .isEmpty() && firstFreeSlot == -1) + firstFreeSlot = i; + } + + // Only insert if this is the first empty slot, prevents overfilling in the + // simulation pass + if (inv.getStackInSlot(slot) + .isEmpty() && firstFreeSlot != slot) + return stack; + return super.insertItem(slot, stack, simulate); } - + @Override public ItemStack extractItem(int slot, int amount, boolean simulate) { ItemStack extractItem = super.extractItem(slot, amount, simulate); diff --git a/src/main/java/com/simibubi/create/content/processing/basin/BasinRecipe.java b/src/main/java/com/simibubi/create/content/processing/basin/BasinRecipe.java index a78a6b94a..3bb782715 100644 --- a/src/main/java/com/simibubi/create/content/processing/basin/BasinRecipe.java +++ b/src/main/java/com/simibubi/create/content/processing/basin/BasinRecipe.java @@ -150,14 +150,23 @@ public class BasinRecipe extends ProcessingRecipe { if (simulate) { if (recipe instanceof BasinRecipe basinRecipe) { recipeOutputItems.addAll(basinRecipe.rollResults()); - recipeOutputFluids.addAll(basinRecipe.getFluidResults()); - recipeOutputItems.addAll(basinRecipe.getRemainingItems(basin.getInputInventory())); + + for (FluidStack fluidStack : basinRecipe.getFluidResults()) + if (!fluidStack.isEmpty()) + recipeOutputFluids.add(fluidStack); + for (ItemStack stack : basinRecipe.getRemainingItems(basin.getInputInventory())) + if (!stack.isEmpty()) + recipeOutputItems.add(stack); + } else { recipeOutputItems.add(recipe.getResultItem(basin.getLevel() .registryAccess())); if (recipe instanceof CraftingRecipe craftingRecipe) { - recipeOutputItems.addAll(craftingRecipe.getRemainingItems(new DummyCraftingContainer(availableItems, extractedItemsFromSlot))); + for (ItemStack stack : craftingRecipe + .getRemainingItems(new DummyCraftingContainer(availableItems, extractedItemsFromSlot))) + if (!stack.isEmpty()) + recipeOutputItems.add(stack); } } } diff --git a/src/main/java/com/simibubi/create/content/processing/burner/BlazeBurnerBlockEntity.java b/src/main/java/com/simibubi/create/content/processing/burner/BlazeBurnerBlockEntity.java index 64873b435..10fba90a7 100644 --- a/src/main/java/com/simibubi/create/content/processing/burner/BlazeBurnerBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/processing/burner/BlazeBurnerBlockEntity.java @@ -2,10 +2,10 @@ package com.simibubi.create.content.processing.burner; import java.util.List; -import com.simibubi.create.AllBlocks; import com.simibubi.create.AllItems; import com.simibubi.create.AllTags.AllItemTags; import com.simibubi.create.content.fluids.tank.FluidTankBlock; +import com.simibubi.create.content.processing.basin.BasinBlock; import com.simibubi.create.content.processing.burner.BlazeBurnerBlock.HeatLevel; import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour; @@ -269,7 +269,7 @@ public class BlazeBurnerBlockEntity extends SmartBlockEntity { if (isVirtual()) return false; BlockState blockState = level.getBlockState(worldPosition.above()); - return AllBlocks.BASIN.has(blockState) || blockState.getBlock() instanceof FluidTankBlock; + return BasinBlock.isBasin(level, worldPosition.above()) || blockState.getBlock() instanceof FluidTankBlock; } protected void playSound() { diff --git a/src/main/java/com/simibubi/create/content/processing/recipe/ProcessingRecipeBuilder.java b/src/main/java/com/simibubi/create/content/processing/recipe/ProcessingRecipeBuilder.java index 87ce9f530..7004a95d0 100644 --- a/src/main/java/com/simibubi/create/content/processing/recipe/ProcessingRecipeBuilder.java +++ b/src/main/java/com/simibubi/create/content/processing/recipe/ProcessingRecipeBuilder.java @@ -118,12 +118,12 @@ public class ProcessingRecipeBuilder> { params.ingredients.add(ingredient); return this; } - + public ProcessingRecipeBuilder require(Mods mod, String id) { params.ingredients.add(new SimpleDatagenIngredient(mod, id)); return this; } - + public ProcessingRecipeBuilder require(ResourceLocation ingredient) { params.ingredients.add(DataIngredient.ingredient(null, ingredient)); return this; @@ -169,11 +169,15 @@ public class ProcessingRecipeBuilder> { public ProcessingRecipeBuilder output(float chance, Mods mod, String id, int amount) { return output(new ProcessingOutput(Pair.of(mod.asResource(id), amount), chance)); } - + + public ProcessingRecipeBuilder output(Mods mod, String id) { + return output(1, mod.asResource(id), 1); + } + public ProcessingRecipeBuilder output(float chance, ResourceLocation registryName, int amount) { return output(new ProcessingOutput(Pair.of(registryName, amount), chance)); } - + public ProcessingRecipeBuilder output(ProcessingOutput output) { params.results.add(output); return this; @@ -188,7 +192,7 @@ public class ProcessingRecipeBuilder> { params.fluidResults.add(fluidStack); return this; } - + public ProcessingRecipeBuilder toolNotConsumed() { params.keepHeldItem = true; return this; @@ -223,7 +227,7 @@ public class ProcessingRecipeBuilder> { protected NonNullList fluidResults; protected int processingDuration; protected HeatCondition requiredHeat; - + public boolean keepHeldItem; protected ProcessingRecipeParams(ResourceLocation id) { diff --git a/src/main/java/com/simibubi/create/content/redstone/analogLever/AnalogLeverBlockEntity.java b/src/main/java/com/simibubi/create/content/redstone/analogLever/AnalogLeverBlockEntity.java index 3902009ff..53b0c6b83 100644 --- a/src/main/java/com/simibubi/create/content/redstone/analogLever/AnalogLeverBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/redstone/analogLever/AnalogLeverBlockEntity.java @@ -79,7 +79,7 @@ public class AnalogLeverBlockEntity extends SmartBlockEntity implements IHaveGog @Override public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) { - tooltip.add(componentSpacing.plainCopy().append(Lang.translateDirect("tooltip.analogStrength", this.state))); + Lang.translate("tooltip.analogStrength", this.state).forGoggles(tooltip); return true; } diff --git a/src/main/java/com/simibubi/create/content/redstone/displayLink/DisplayLinkBlock.java b/src/main/java/com/simibubi/create/content/redstone/displayLink/DisplayLinkBlock.java index 2c4ab6e26..f5ed8a979 100644 --- a/src/main/java/com/simibubi/create/content/redstone/displayLink/DisplayLinkBlock.java +++ b/src/main/java/com/simibubi/create/content/redstone/displayLink/DisplayLinkBlock.java @@ -57,7 +57,7 @@ public class DisplayLinkBlock extends WrenchableDirectionalBlock implements IBE< placed = placed.setValue(FACING, context.getClickedFace()); return placed.setValue(POWERED, shouldBePowered(placed, context.getLevel(), context.getClickedPos())); } - + @Override public void setPlacedBy(Level pLevel, BlockPos pPos, BlockState pState, LivingEntity pPlacer, ItemStack pStack) { super.setPlacedBy(pLevel, pPos, pState, pPlacer, pStack); @@ -65,7 +65,7 @@ public class DisplayLinkBlock extends WrenchableDirectionalBlock implements IBE< } public static void notifyGatherers(LevelAccessor level, BlockPos pos) { - forEachAttachedGatherer(level, pos, DisplayLinkBlockEntity::updateGatheredData); + forEachAttachedGatherer(level, pos, DisplayLinkBlockEntity::tickSource); } @SuppressWarnings("unchecked") diff --git a/src/main/java/com/simibubi/create/content/redstone/displayLink/target/SignDisplayTarget.java b/src/main/java/com/simibubi/create/content/redstone/displayLink/target/SignDisplayTarget.java index 9bef2fac4..12b456197 100644 --- a/src/main/java/com/simibubi/create/content/redstone/displayLink/target/SignDisplayTarget.java +++ b/src/main/java/com/simibubi/create/content/redstone/displayLink/target/SignDisplayTarget.java @@ -26,7 +26,7 @@ public class SignDisplayTarget extends DisplayTarget { if (i > 0 && isReserved(i + line, sign, context)) break; - signText.setMessage(i + line, text.get(i)); + signText = signText.setMessage(i + line, text.get(i)); changed = true; } diff --git a/src/main/java/com/simibubi/create/content/redstone/link/controller/LecternControllerBlockEntity.java b/src/main/java/com/simibubi/create/content/redstone/link/controller/LecternControllerBlockEntity.java index 2cc5ed736..9760e97fc 100644 --- a/src/main/java/com/simibubi/create/content/redstone/link/controller/LecternControllerBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/redstone/link/controller/LecternControllerBlockEntity.java @@ -28,7 +28,7 @@ import net.minecraftforge.fml.DistExecutor; public class LecternControllerBlockEntity extends SmartBlockEntity { - private ItemStack controller; + private ItemStack controller = ItemStack.EMPTY; private UUID user; private UUID prevUser; // used only on client private boolean deactivatedThisTick; // used only on server @@ -161,9 +161,9 @@ public class LecternControllerBlockEntity extends SmartBlockEntity { stopUsing((Player) playerEntity); Direction dir = state.getValue(LecternControllerBlock.FACING); - double x = worldPosition.getX() + 0.5 + 0.25*dir.getStepX(); + double x = worldPosition.getX() + 0.5 + 0.25 * dir.getStepX(); double y = worldPosition.getY() + 1; - double z = worldPosition.getZ() + 0.5 + 0.25*dir.getStepZ(); + double z = worldPosition.getZ() + 0.5 + 0.25 * dir.getStepZ(); ItemEntity itementity = new ItemEntity(level, x, y, z, controller.copy()); itementity.setDefaultPickUpDelay(); level.addFreshEntity(itementity); @@ -172,8 +172,8 @@ public class LecternControllerBlockEntity extends SmartBlockEntity { public static boolean playerInRange(Player player, Level world, BlockPos pos) { //double modifier = world.isRemote ? 0 : 1.0; - double reach = 0.4*player.getAttributeValue(ForgeMod.BLOCK_REACH.get());// + modifier; - return player.distanceToSqr(Vec3.atCenterOf(pos)) < reach*reach; + double reach = 0.4 * player.getAttributeValue(ForgeMod.BLOCK_REACH.get());// + modifier; + return player.distanceToSqr(Vec3.atCenterOf(pos)) < reach * reach; } } diff --git a/src/main/java/com/simibubi/create/content/redstone/thresholdSwitch/ThresholdSwitchBlockEntity.java b/src/main/java/com/simibubi/create/content/redstone/thresholdSwitch/ThresholdSwitchBlockEntity.java index f623407a0..0163ed260 100644 --- a/src/main/java/com/simibubi/create/content/redstone/thresholdSwitch/ThresholdSwitchBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/redstone/thresholdSwitch/ThresholdSwitchBlockEntity.java @@ -2,7 +2,10 @@ package com.simibubi.create.content.redstone.thresholdSwitch; import java.util.List; -import com.simibubi.create.compat.storageDrawers.StorageDrawers; +import com.simibubi.create.compat.thresholdSwitch.FunctionalStorage; +import com.simibubi.create.compat.thresholdSwitch.SophisticatedStorage; +import com.simibubi.create.compat.thresholdSwitch.StorageDrawers; +import com.simibubi.create.compat.thresholdSwitch.ThresholdSwitchCompat; import com.simibubi.create.content.redstone.DirectedDirectionalBlock; import com.simibubi.create.content.redstone.FilteredDetectorFilterSlot; import com.simibubi.create.content.redstone.displayLink.DisplayLinkBlock; @@ -42,6 +45,12 @@ public class ThresholdSwitchBlockEntity extends SmartBlockEntity { private TankManipulationBehaviour observedTank; private VersionedInventoryTrackerBehaviour invVersionTracker; + private static final List COMPAT = List.of( + new FunctionalStorage(), + new SophisticatedStorage(), + new StorageDrawers() + ); + public ThresholdSwitchBlockEntity(BlockEntityType type, BlockPos pos, BlockState state) { super(type, pos, state); onWhenAbove = .75f; @@ -104,27 +113,32 @@ public class ThresholdSwitchBlockEntity extends SmartBlockEntity { if (targetBlockEntity instanceof ThresholdSwitchObservable observable) { currentLevel = observable.getPercent() / 100f; - } else if (StorageDrawers.isDrawer(targetBlockEntity) && observedInventory.hasInventory()) { - currentLevel = StorageDrawers.getTrueFillLevel(observedInventory.getInventory(), filtering); - } else if (observedInventory.hasInventory() || observedTank.hasInventory()) { if (observedInventory.hasInventory()) { - + // Item inventory IItemHandler inv = observedInventory.getInventory(); if (invVersionTracker.stillWaiting(inv)) { occupied = prevLevel; totalSpace = 1f; - + } else { invVersionTracker.awaitNewVersion(inv); for (int slot = 0; slot < inv.getSlots(); slot++) { ItemStack stackInSlot = inv.getStackInSlot(slot); - int space = Math.min(stackInSlot.getMaxStackSize(), inv.getSlotLimit(slot)); + + int finalSlot = slot; + long space = COMPAT + .stream() + .filter(compat -> compat.isFromThisMod(targetBlockEntity)) + .map(compat -> compat.getSpaceInSlot(inv, finalSlot)) + .findFirst() + .orElseGet(() -> (long) Math.min(stackInSlot.getMaxStackSize(), inv.getSlotLimit(finalSlot))); + int count = stackInSlot.getCount(); if (space == 0) continue; - + totalSpace += 1; if (filtering.test(stackInSlot)) occupied += count * (1f / space); @@ -209,7 +223,7 @@ public class ThresholdSwitchBlockEntity extends SmartBlockEntity { this.updateCurrentLevel(); invVersionTracker.reset(); })); - + behaviours.add(invVersionTracker = new VersionedInventoryTrackerBehaviour(this)); InterfaceProvider towardBlockFacing = diff --git a/src/main/java/com/simibubi/create/content/schematics/SchematicItem.java b/src/main/java/com/simibubi/create/content/schematics/SchematicItem.java index 7c2a3b4b5..9bcffbcb5 100644 --- a/src/main/java/com/simibubi/create/content/schematics/SchematicItem.java +++ b/src/main/java/com/simibubi/create/content/schematics/SchematicItem.java @@ -166,6 +166,8 @@ public class SchematicItem extends Item { if (!player.getItemInHand(hand) .hasTag()) return false; + if (!player.level().isClientSide()) + return true; DistExecutor.unsafeRunWhenOn(Dist.CLIENT, () -> this::displayBlueprintScreen); return true; } diff --git a/src/main/java/com/simibubi/create/content/schematics/SchematicProcessor.java b/src/main/java/com/simibubi/create/content/schematics/SchematicProcessor.java index e34a4747b..5cb282b2e 100644 --- a/src/main/java/com/simibubi/create/content/schematics/SchematicProcessor.java +++ b/src/main/java/com/simibubi/create/content/schematics/SchematicProcessor.java @@ -35,7 +35,7 @@ public class SchematicProcessor extends StructureProcessor { if (info.nbt() != null && info.state().hasBlockEntity()) { BlockEntity be = ((EntityBlock) info.state().getBlock()).newBlockEntity(info.pos(), info.state()); if (be != null) { - CompoundTag nbt = NBTProcessors.process(be, info.nbt(), false); + CompoundTag nbt = NBTProcessors.process(info.state(), be, info.nbt(), false); if (nbt != info.nbt()) return new StructureTemplate.StructureBlockInfo(info.pos(), info.state(), nbt); } diff --git a/src/main/java/com/simibubi/create/content/schematics/ServerSchematicLoader.java b/src/main/java/com/simibubi/create/content/schematics/ServerSchematicLoader.java index e842044ae..741274fe0 100644 --- a/src/main/java/com/simibubi/create/content/schematics/ServerSchematicLoader.java +++ b/src/main/java/com/simibubi/create/content/schematics/ServerSchematicLoader.java @@ -11,7 +11,6 @@ import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Optional; -import java.util.Set; import java.util.stream.Stream; import com.simibubi.create.AllBlocks; @@ -25,6 +24,7 @@ import com.simibubi.create.foundation.utility.Lang; import com.simibubi.create.infrastructure.config.AllConfigs; import com.simibubi.create.infrastructure.config.CSchematics; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; import net.minecraft.ChatFormatting; import net.minecraft.core.BlockPos; import net.minecraft.core.registries.Registries; @@ -64,21 +64,25 @@ public class ServerSchematicLoader { return "schematics/uploaded"; } + private final ObjectArrayList deadEntries = ObjectArrayList.of(); + public void tick() { // Detect Timed out Uploads - Set deadEntries = new HashSet<>(); + int timeout = getConfig().schematicIdleTimeout.get(); for (String upload : activeUploads.keySet()) { SchematicUploadEntry entry = activeUploads.get(upload); - if (entry.idleTime++ > getConfig().schematicIdleTimeout.get()) { + if (entry.idleTime++ > timeout) { Create.LOGGER.warn("Schematic Upload timed out: " + upload); deadEntries.add(upload); } - } // Remove Timed out Uploads - deadEntries.forEach(this::cancelUpload); + for (String toRemove : deadEntries) { + this.cancelUpload(toRemove); + } + deadEntries.clear(); } public void shutdown() { diff --git a/src/main/java/com/simibubi/create/content/schematics/cannon/SchematicannonBlockEntity.java b/src/main/java/com/simibubi/create/content/schematics/cannon/SchematicannonBlockEntity.java index 3d121b0f0..9f3a21447 100644 --- a/src/main/java/com/simibubi/create/content/schematics/cannon/SchematicannonBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/schematics/cannon/SchematicannonBlockEntity.java @@ -91,7 +91,7 @@ public class SchematicannonBlockEntity extends SmartBlockEntity implements MenuP public MaterialChecklist checklist; // Gui information - public float fuelLevel; + public int remainingFuel; public float bookPrintingProgress; public float schematicProgress; public String statusMsg; @@ -153,7 +153,7 @@ public class SchematicannonBlockEntity extends SmartBlockEntity implements MenuP statusMsg = compound.getString("Status"); schematicProgress = compound.getFloat("Progress"); bookPrintingProgress = compound.getFloat("PaperProgress"); - fuelLevel = compound.getFloat("Fuel"); + remainingFuel = compound.getInt("RemainingFuel"); String stateString = compound.getString("State"); state = stateString.isEmpty() ? State.STOPPED : State.valueOf(compound.getString("State")); blocksPlaced = compound.getInt("AmountPlaced"); @@ -227,7 +227,7 @@ public class SchematicannonBlockEntity extends SmartBlockEntity implements MenuP // Gui information compound.putFloat("Progress", schematicProgress); compound.putFloat("PaperProgress", bookPrintingProgress); - compound.putFloat("Fuel", fuelLevel); + compound.putInt("RemainingFuel", remainingFuel); compound.putString("Status", statusMsg); compound.putString("State", state.name()); compound.putInt("AmountPlaced", blocksPlaced); @@ -319,7 +319,7 @@ public class SchematicannonBlockEntity extends SmartBlockEntity implements MenuP return; } - if (state == State.PAUSED && !positionNotLoaded && missingItem == null && fuelLevel > getFuelUsageRate()) + if (state == State.PAUSED && !positionNotLoaded && missingItem == null && remainingFuel > 0) return; // Initialize Printer @@ -335,15 +335,18 @@ public class SchematicannonBlockEntity extends SmartBlockEntity implements MenuP } // Check Fuel - if (fuelLevel <= 0 && !hasCreativeCrate) { - fuelLevel = 0; - state = State.PAUSED; - statusMsg = "noGunpowder"; - sendUpdate = true; - return; + if (remainingFuel <= 0 && !hasCreativeCrate) { + refillFuelIfPossible(); + if (remainingFuel <= 0) { + state = State.PAUSED; + statusMsg = "noGunpowder"; + sendUpdate = true; + return; + } } if (hasCreativeCrate) { + remainingFuel = 0; if (missingItem != null) { missingItem = null; state = State.RUNNING; @@ -421,13 +424,13 @@ public class SchematicannonBlockEntity extends SmartBlockEntity implements MenuP }); printerCooldown = config().schematicannonDelay.get(); - fuelLevel -= getFuelUsageRate(); + remainingFuel -= 1; sendUpdate = true; missingItem = null; } - public double getFuelUsageRate() { - return hasCreativeCrate ? 0 : config().schematicannonFuelUsage.get() / 100f; + public int getShotsPerGunpowder() { + return hasCreativeCrate ? 0 : config().schematicannonShotsPerGunpowder.get(); } protected void initializePrinter(ItemStack blueprint) { @@ -646,15 +649,34 @@ public class SchematicannonBlockEntity extends SmartBlockEntity implements MenuP protected void refillFuelIfPossible() { if (hasCreativeCrate) return; - if (1 - fuelLevel + 1 / 128f < getFuelAddedByGunPowder()) - return; - if (inventory.getStackInSlot(4) - .isEmpty()) + if (remainingFuel > getShotsPerGunpowder()) { + remainingFuel = getShotsPerGunpowder(); + sendUpdate = true; + return; + } + + if (remainingFuel > 0) return; - inventory.getStackInSlot(4) - .shrink(1); - fuelLevel += getFuelAddedByGunPowder(); + if (!inventory.getStackInSlot(4) + .isEmpty()) + inventory.getStackInSlot(4) + .shrink(1); + else { + boolean externalGunpowderFound = false; + for (LazyOptional cap : attachedInventories) { + IItemHandler itemHandler = cap.orElse(EmptyHandler.INSTANCE); + if (ItemHelper.extract(itemHandler, stack -> inventory.isItemValid(4, stack), 1, false) + .isEmpty()) + continue; + externalGunpowderFound = true; + break; + } + if (!externalGunpowderFound) + return; + } + + remainingFuel += getShotsPerGunpowder(); if (statusMsg.equals("noGunpowder")) { if (blocksPlaced > 0) state = State.RUNNING; @@ -663,10 +685,6 @@ public class SchematicannonBlockEntity extends SmartBlockEntity implements MenuP sendUpdate = true; } - public double getFuelAddedByGunPowder() { - return config().schematicannonGunpowderWorth.get() / 100f; - } - protected void tickPaperPrinter() { int BookInput = 2; int BookOutput = 3; diff --git a/src/main/java/com/simibubi/create/content/schematics/cannon/SchematicannonScreen.java b/src/main/java/com/simibubi/create/content/schematics/cannon/SchematicannonScreen.java index f8fc42e1e..44c0d43ea 100644 --- a/src/main/java/com/simibubi/create/content/schematics/cannon/SchematicannonScreen.java +++ b/src/main/java/com/simibubi/create/content/schematics/cannon/SchematicannonScreen.java @@ -283,7 +283,8 @@ public class SchematicannonScreen extends AbstractSimiContainerScreen getFuelLevelTooltip(SchematicannonBlockEntity be) { - double fuelUsageRate = be.getFuelUsageRate(); - int shotsLeft = (int) (be.fuelLevel / fuelUsageRate); - int shotsLeftWithItems = (int) (shotsLeft + be.inventory.getStackInSlot(4) - .getCount() * (be.getFuelAddedByGunPowder() / fuelUsageRate)); + int shotsLeft = be.remainingFuel; + int shotsLeftWithItems = shotsLeft + be.inventory.getStackInSlot(4) + .getCount() * be.getShotsPerGunpowder(); List tooltip = new ArrayList<>(); if (be.hasCreativeCrate) { @@ -400,7 +400,7 @@ public class SchematicannonScreen extends AbstractSimiContainerScreen ext sbbe.setBogeyData(sbbe.getBogeyData().merge(defaultData)); if (size == getSize()) { + if (state.getBlock() != style.getBlockOfSize(size)) { + CompoundTag oldData = sbbe.getBogeyData(); + level.setBlock(pos, copyProperties(state, getStateOfSize(sbbe, size)), Block.UPDATE_ALL); + if (!(level.getBlockEntity(pos) instanceof AbstractBogeyBlockEntity bogeyBlockEntity)) + return InteractionResult.FAIL; + bogeyBlockEntity.setBogeyData(oldData); + } player.displayClientMessage(Lang.translateDirect("bogey.style.updated_style") .append(": ").append(style.displayName), true); } else { CompoundTag oldData = sbbe.getBogeyData(); - level.setBlock(pos, this.getStateOfSize(sbbe, size), 3); - BlockEntity newBlockEntity = level.getBlockEntity(pos); - if (!(newBlockEntity instanceof AbstractBogeyBlockEntity newBlockEntity1)) + level.setBlock(pos, this.getStateOfSize(sbbe, size), Block.UPDATE_ALL); + if (!(level.getBlockEntity(pos) instanceof AbstractBogeyBlockEntity bogeyBlockEntity)) return InteractionResult.FAIL; - newBlockEntity1.setBogeyData(oldData); + bogeyBlockEntity.setBogeyData(oldData); player.displayClientMessage(Lang.translateDirect("bogey.style.updated_style_and_size") .append(": ").append(style.displayName), true); } @@ -312,18 +318,18 @@ public abstract class AbstractBogeyBlock ext return target; } - public BlockState getNextSize(AbstractBogeyBlockEntity sbte) { + public BlockState getNextSize(AbstractBogeyBlockEntity sbbe) { BogeySizes.BogeySize size = this.getSize(); - BogeyStyle style = sbte.getStyle(); + BogeyStyle style = sbbe.getStyle(); BlockState nextBlock = style.getNextBlock(size).defaultBlockState(); - nextBlock = copyProperties(sbte.getBlockState(), nextBlock); + nextBlock = copyProperties(sbbe.getBlockState(), nextBlock); return nextBlock; } - public BlockState getStateOfSize(AbstractBogeyBlockEntity sbte, BogeySizes.BogeySize size) { - BogeyStyle style = sbte.getStyle(); + public BlockState getStateOfSize(AbstractBogeyBlockEntity sbbe, BogeySizes.BogeySize size) { + BogeyStyle style = sbbe.getStyle(); BlockState state = style.getBlockOfSize(size).defaultBlockState(); - return copyProperties(sbte.getBlockState(), state); + return copyProperties(sbbe.getBlockState(), state); } public BogeyStyle getNextStyle(Level level, BlockPos pos) { diff --git a/src/main/java/com/simibubi/create/content/trains/entity/Navigation.java b/src/main/java/com/simibubi/create/content/trains/entity/Navigation.java index a27a52b7c..e0d7c475c 100644 --- a/src/main/java/com/simibubi/create/content/trains/entity/Navigation.java +++ b/src/main/java/com/simibubi/create/content/trains/entity/Navigation.java @@ -264,9 +264,11 @@ public class Navigation { double topSpeed = train.maxSpeed(); if (targetDistance < 10) { - double target = topSpeed * ((targetDistance) / 10); - if (target < Math.abs(train.speed)) { - train.speed += (target - Math.abs(train.speed)) * .5f * speedMod; + double maxApproachSpeed = topSpeed * ((targetDistance) / 10); + double speedRelativeToStation = train.speed * speedMod; + + if (speedRelativeToStation > maxApproachSpeed) { + train.speed += (maxApproachSpeed - Math.abs(train.speed)) * .5f * speedMod; return; } } diff --git a/src/main/java/com/simibubi/create/content/trains/entity/Train.java b/src/main/java/com/simibubi/create/content/trains/entity/Train.java index 1d382f5de..c12913e18 100644 --- a/src/main/java/com/simibubi/create/content/trains/entity/Train.java +++ b/src/main/java/com/simibubi/create/content/trains/entity/Train.java @@ -619,7 +619,7 @@ public class Train { public Pair findCollidingTrain(Level level, Vec3 start, Vec3 end, ResourceKey dimension) { Vec3 diff = end.subtract(start); double maxDistanceSqr = Math.pow(AllConfigs.server().trains.maxAssemblyLength.get(), 2.0); - + Trains: for (Train train : Create.RAILWAYS.sided(level).trains.values()) { if (train == this) continue; @@ -962,6 +962,9 @@ public class Train { TrackNode node1 = trailingPoint.node1; TrackNode node2 = trailingPoint.node2; TrackEdge edge = trailingPoint.edge; + + if (edge == null) return; + double position = trailingPoint.position; EdgeData signalData = edge.getEdgeData(); @@ -1219,20 +1222,19 @@ public class Train { public void determineHonk(Level level) { if (lowHonk != null) return; - for (int index = 0; index < carriages.size(); index++) { - Carriage carriage = carriages.get(index); - DimensionalCarriageEntity dimensional = carriage.getDimensionalIfPresent(level.dimension()); - if (dimensional == null) - return; - CarriageContraptionEntity entity = dimensional.entity.get(); - if (entity == null || !(entity.getContraption()instanceof CarriageContraption otherCC)) - break; - Pair first = otherCC.soundQueue.getFirstWhistle(entity); - if (first != null) { - lowHonk = first.getFirst(); - honkPitch = first.getSecond(); - } - } + for (Carriage carriage : carriages) { + DimensionalCarriageEntity dimensional = carriage.getDimensionalIfPresent(level.dimension()); + if (dimensional == null) + return; + CarriageContraptionEntity entity = dimensional.entity.get(); + if (entity == null || !(entity.getContraption() instanceof CarriageContraption otherCC)) + break; + Pair first = otherCC.soundQueue.getFirstWhistle(entity); + if (first != null) { + lowHonk = first.getFirst(); + honkPitch = first.getSecond(); + } + } } public float distanceToLocationSqr(Level level, Vec3 location) { diff --git a/src/main/java/com/simibubi/create/content/trains/entity/TravellingPoint.java b/src/main/java/com/simibubi/create/content/trains/entity/TravellingPoint.java index 2ac9e964c..ca786c05f 100644 --- a/src/main/java/com/simibubi/create/content/trains/entity/TravellingPoint.java +++ b/src/main/java/com/simibubi/create/content/trains/entity/TravellingPoint.java @@ -40,28 +40,24 @@ public class TravellingPoint { public boolean blocked; public boolean upsideDown; - public static enum SteerDirection { + public enum SteerDirection { NONE(0), LEFT(-1), RIGHT(1); - float targetDot; + final float targetDot; - private SteerDirection(float targetDot) { + SteerDirection(float targetDot) { this.targetDot = targetDot; } } - public static interface ITrackSelector - extends BiFunction>>, Entry> { - }; + public interface ITrackSelector + extends BiFunction>>, Entry> { }; - public static interface IEdgePointListener extends BiPredicate>> { - }; + public interface IEdgePointListener extends BiPredicate>> { }; - public static interface ITurnListener extends BiConsumer { - }; + public interface ITurnListener extends BiConsumer { }; - public static interface IPortalListener extends Predicate> { - }; + public interface IPortalListener extends Predicate> { }; public TravellingPoint() {} @@ -78,8 +74,7 @@ public class TravellingPoint { } public ITurnListener ignoreTurns() { - return (d, c) -> { - }; + return (d, c) -> { }; } public IPortalListener ignorePortals() { @@ -113,15 +108,14 @@ public class TravellingPoint { Vector>> frontiers = new Vector<>(validTargets.size()); Vector> visiteds = new Vector<>(validTargets.size()); - for (int j = 0; j < validTargets.size(); j++) { - ArrayList> e = new ArrayList<>(); - Entry entry = validTargets.get(j); - e.add(entry); - frontiers.add(e); - HashSet e2 = new HashSet<>(); - e2.add(entry.getValue()); - visiteds.add(e2); - } + for (Entry validTarget : validTargets) { + ArrayList> e = new ArrayList<>(); + e.add(validTarget); + frontiers.add(e); + HashSet e2 = new HashSet<>(); + e2.add(validTarget.getValue()); + visiteds.add(e2); + } for (int i = 0; i < 20; i++) { for (int j = 0; j < validTargets.size(); j++) { @@ -233,7 +227,7 @@ public class TravellingPoint { Double blockedLocation = edgeTraversedFrom(graph, forward, signalListener, turnListener, prevPos, collectedDistance); if (blockedLocation != null) { - position = blockedLocation.doubleValue(); + position = blockedLocation; traveled = position - prevPos; return traveled; } @@ -289,7 +283,7 @@ public class TravellingPoint { if (blockedLocation != null) { traveled -= position; - position = blockedLocation.doubleValue(); + position = blockedLocation; traveled += position; break; } @@ -349,7 +343,7 @@ public class TravellingPoint { if (blockedLocation != null) { traveled -= position; - position = blockedLocation.doubleValue(); + position = blockedLocation; traveled += position; break; } diff --git a/src/main/java/com/simibubi/create/content/trains/graph/EdgeData.java b/src/main/java/com/simibubi/create/content/trains/graph/EdgeData.java index 8e15284f6..221d0ece5 100644 --- a/src/main/java/com/simibubi/create/content/trains/graph/EdgeData.java +++ b/src/main/java/com/simibubi/create/content/trains/graph/EdgeData.java @@ -107,6 +107,8 @@ public class EdgeData { if (!hasSignalBoundaries()) return getEffectiveEdgeGroupId(graph); SignalBoundary firstSignal = next(EdgePointType.SIGNAL, 0); + if (firstSignal == null) + return null; UUID currentGroup = firstSignal.getGroup(edge.node1); for (TrackEdgePoint trackEdgePoint : getPoints()) { diff --git a/src/main/java/com/simibubi/create/content/trains/graph/TrackGraph.java b/src/main/java/com/simibubi/create/content/trains/graph/TrackGraph.java index 10cace626..f72159062 100644 --- a/src/main/java/com/simibubi/create/content/trains/graph/TrackGraph.java +++ b/src/main/java/com/simibubi/create/content/trains/graph/TrackGraph.java @@ -505,7 +505,7 @@ public class TrackGraph { SignalEdgeGroup group = Create.RAILWAYS.signalEdgeGroups.get(groupId); SignalEdgeGroup otherGroup = Create.RAILWAYS.signalEdgeGroups.get(otherGroupId); - if (group == null || otherGroup == null) + if (group == null || otherGroup == null || groupId == null || otherGroupId == null) continue; intersection.groupId = groupId; diff --git a/src/main/java/com/simibubi/create/content/trains/station/StationBlockEntity.java b/src/main/java/com/simibubi/create/content/trains/station/StationBlockEntity.java index 0a9bff4ed..7c76d6050 100644 --- a/src/main/java/com/simibubi/create/content/trains/station/StationBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/trains/station/StationBlockEntity.java @@ -288,7 +288,7 @@ public class StationBlockEntity extends SmartBlockEntity implements ITransformab BlockPos up = BlockPos.containing(track.getUpNormal(level, pos, state)); BlockPos down = BlockPos.containing(track.getUpNormal(level, pos, state).scale(-1)); int bogeyOffset = pos.distManhattan(edgePoint.getGlobalPosition()) - 1; - + if (!isValidBogeyOffset(bogeyOffset)) { for (boolean upsideDown : Iterate.falseAndTrue) { for (int i = -1; i <= 1; i++) { @@ -364,6 +364,10 @@ public class StationBlockEntity extends SmartBlockEntity implements ITransformab if (!tryEnterAssemblyMode()) return false; + //Check the station wasn't destroyed + if (!(level.getBlockState(worldPosition).getBlock() instanceof StationBlock)) + return true; + BlockState newState = getBlockState().setValue(StationBlock.ASSEMBLING, true); level.setBlock(getBlockPos(), newState, 3); refreshBlockState(); diff --git a/src/main/java/com/simibubi/create/content/trains/track/TrackBlock.java b/src/main/java/com/simibubi/create/content/trains/track/TrackBlock.java index bd9c5fba0..046ea0d90 100644 --- a/src/main/java/com/simibubi/create/content/trains/track/TrackBlock.java +++ b/src/main/java/com/simibubi/create/content/trains/track/TrackBlock.java @@ -19,6 +19,8 @@ import java.util.Random; import java.util.Set; import java.util.function.Consumer; +import com.simibubi.create.foundation.block.IHaveBigOutline; + import org.jetbrains.annotations.Nullable; import com.google.common.base.Predicates; @@ -103,7 +105,7 @@ import net.minecraftforge.api.distmarker.OnlyIn; import net.minecraftforge.client.extensions.common.IClientBlockExtensions; public class TrackBlock extends Block - implements IBE, IWrenchable, ITrackBlock, ISpecialBlockItemRequirement, ProperWaterloggedBlock { + implements IBE, IWrenchable, ITrackBlock, ISpecialBlockItemRequirement, ProperWaterloggedBlock, IHaveBigOutline { public static final EnumProperty SHAPE = EnumProperty.create("shape", TrackShape.class); public static final BooleanProperty HAS_BE = BooleanProperty.create("turn"); diff --git a/src/main/java/com/simibubi/create/content/trains/track/TrackPlacement.java b/src/main/java/com/simibubi/create/content/trains/track/TrackPlacement.java index 4c67fc73d..e521582e0 100644 --- a/src/main/java/com/simibubi/create/content/trains/track/TrackPlacement.java +++ b/src/main/java/com/simibubi/create/content/trains/track/TrackPlacement.java @@ -33,6 +33,7 @@ import net.minecraft.core.Direction.AxisDirection; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.NbtUtils; import net.minecraft.nbt.Tag; +import net.minecraft.tags.BlockTags; import net.minecraft.util.Mth; import net.minecraft.world.InteractionHand; import net.minecraft.world.entity.player.Inventory; @@ -508,7 +509,7 @@ public class TrackPlacement { // copy over all shared properties from the shaped state to the correct track material block BlockState toPlace = BlockHelper.copyProperties(state, info.trackMaterial.getBlock().defaultBlockState()); - boolean canPlace = stateAtPos.canBeReplaced(); + boolean canPlace = stateAtPos.canBeReplaced() || stateAtPos.is(BlockTags.FLOWERS); if (canPlace) info.requiredTracks++; if (simulate) diff --git a/src/main/java/com/simibubi/create/foundation/advancement/AllAdvancements.java b/src/main/java/com/simibubi/create/foundation/advancement/AllAdvancements.java index 9f6914d89..b4f2bba64 100644 --- a/src/main/java/com/simibubi/create/foundation/advancement/AllAdvancements.java +++ b/src/main/java/com/simibubi/create/foundation/advancement/AllAdvancements.java @@ -18,6 +18,7 @@ import com.google.common.collect.Sets; import com.simibubi.create.AllBlocks; import com.simibubi.create.AllFluids; import com.simibubi.create.AllItems; +import com.simibubi.create.AllTags.AllItemTags; import com.simibubi.create.foundation.advancement.CreateAdvancement.Builder; import net.minecraft.advancements.Advancement; @@ -324,7 +325,7 @@ public class AllAdvancements implements DataProvider { .description("Create Chocolate Glazed Berries, a Honeyed Apple, and a Sweet Roll all from the same Spout") .after(STEAM_ENGINE_MAXED) .special(EXPERT)), - + DIVING_SUIT_LAVA = create("diving_suit_lava", b -> b.icon(AllItems.NETHERITE_DIVING_HELMET) .title("Swimming with the Striders") .description("Attempt to take a dive in lava with your netherite diving gear") @@ -539,7 +540,7 @@ public class AllAdvancements implements DataProvider { TRAIN_TRACK = create("track_0", b -> b.icon(AllBlocks.TRACK) .title("A New Gauge") .description("Obtain some Train Tracks") - .whenIconCollected() + .whenItemCollected(AllItemTags.TRACKS.tag) .after(STURDY_SHEET)), TRAIN_WHISTLE = create("train_whistle", b -> b.icon(AllBlocks.STEAM_WHISTLE) diff --git a/src/main/java/com/simibubi/create/foundation/block/BigOutlines.java b/src/main/java/com/simibubi/create/foundation/block/BigOutlines.java index b0146a0d9..302d185eb 100644 --- a/src/main/java/com/simibubi/create/foundation/block/BigOutlines.java +++ b/src/main/java/com/simibubi/create/foundation/block/BigOutlines.java @@ -1,7 +1,5 @@ package com.simibubi.create.foundation.block; -import com.simibubi.create.content.decoration.slidingDoor.SlidingDoorBlock; -import com.simibubi.create.content.trains.track.TrackBlock; import com.simibubi.create.foundation.utility.AnimationTickHolder; import com.simibubi.create.foundation.utility.RaycastHelper; import com.simibubi.create.foundation.utility.VecHelper; @@ -11,14 +9,16 @@ import net.minecraft.client.player.LocalPlayer; import net.minecraft.core.BlockPos; import net.minecraft.core.BlockPos.MutableBlockPos; import net.minecraft.world.entity.ai.attributes.AttributeInstance; -import net.minecraft.world.entity.player.Player; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.phys.BlockHitResult; import net.minecraft.world.phys.Vec3; import net.minecraftforge.common.ForgeMod; -public class BigOutlines { +/** + * For mods wanting to use this take a look at {@link IHaveBigOutline} + */ +public class BigOutlines { static BlockHitResult result = null; public static void pick() { @@ -43,38 +43,38 @@ public class BigOutlines { MutableBlockPos p = BlockPos.ZERO.mutable(); for (int x = -1; x <= 1; x++) { - for (int z = -1; z <= 1; z++) { - p.set(pos.getX() + x, pos.getY(), pos.getZ() + z); - BlockState blockState = mc.level.getBlockState(p); + for (int y = -1; y <= 1; y++) { + for (int z = -1; z <= 1; z++) { + p.set(pos.getX() + x, pos.getY() + y, pos.getZ() + z); + BlockState blockState = mc.level.getBlockState(p); - // Could be a dedicated interface for big blocks - if (!(blockState.getBlock() instanceof TrackBlock) - && !(blockState.getBlock() instanceof SlidingDoorBlock)) - continue; + if (!(blockState.getBlock() instanceof IHaveBigOutline)) + continue; - BlockHitResult hit = blockState.getInteractionShape(mc.level, p) - .clip(origin, target, p.immutable()); - if (hit == null) - continue; + BlockHitResult hit = blockState.getInteractionShape(mc.level, p) + .clip(origin, target, p.immutable()); + if (hit == null) + continue; - if (result != null && Vec3.atCenterOf(p) - .distanceToSqr(origin) >= Vec3.atCenterOf(result.getBlockPos()) - .distanceToSqr(origin)) - continue; + if (result != null && Vec3.atCenterOf(p) + .distanceToSqr(origin) >= Vec3.atCenterOf(result.getBlockPos()) + .distanceToSqr(origin)) + continue; - Vec3 vec = hit.getLocation(); - double interactionDist = vec.distanceToSqr(origin); - if (interactionDist >= maxRange) - continue; + Vec3 vec = hit.getLocation(); + double interactionDist = vec.distanceToSqr(origin); + if (interactionDist >= maxRange) + continue; - BlockPos hitPos = hit.getBlockPos(); + BlockPos hitPos = hit.getBlockPos(); - // pacifies ServerGamePacketListenerImpl.handleUseItemOn - vec = vec.subtract(Vec3.atCenterOf(hitPos)); - vec = VecHelper.clampComponentWise(vec, 1); - vec = vec.add(Vec3.atCenterOf(hitPos)); + // pacifies ServerGamePacketListenerImpl.handleUseItemOn + vec = vec.subtract(Vec3.atCenterOf(hitPos)); + vec = VecHelper.clampComponentWise(vec, 1); + vec = vec.add(Vec3.atCenterOf(hitPos)); - result = new BlockHitResult(vec, hit.getDirection(), hitPos, hit.isInside()); + result = new BlockHitResult(vec, hit.getDirection(), hitPos, hit.isInside()); + } } } @@ -84,17 +84,4 @@ public class BigOutlines { if (result != null) mc.hitResult = result; } - - static boolean isValidPos(Player player, BlockPos pos) { - // verify that the server will accept the fake result - double x = player.getX() - (pos.getX() + .5); - double y = player.getY() - (pos.getY() + .5) + 1.5; - double z = player.getZ() - (pos.getZ() + .5); - double distSqr = x * x + y * y + z * z; - double maxDist = player.getAttribute(ForgeMod.BLOCK_REACH.get()) - .getValue() + 1; - maxDist *= maxDist; - return distSqr <= maxDist; - } - } diff --git a/src/main/java/com/simibubi/create/foundation/block/IHaveBigOutline.java b/src/main/java/com/simibubi/create/foundation/block/IHaveBigOutline.java new file mode 100644 index 000000000..60de01e5e --- /dev/null +++ b/src/main/java/com/simibubi/create/foundation/block/IHaveBigOutline.java @@ -0,0 +1,15 @@ +package com.simibubi.create.foundation.block; + +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.BlockBehaviour; +import com.simibubi.create.content.trains.track.TrackBlock; +import com.simibubi.create.content.decoration.slidingDoor.SlidingDoorBlock; + +/** + * Implementing this interface will allow you to have bigger outlines when overriding {@link BlockBehaviour#getInteractionShape(BlockState, BlockGetter, BlockPos)} + *

+ * For examples look at {@link TrackBlock} and {@link SlidingDoorBlock} + */ +public interface IHaveBigOutline { } diff --git a/src/main/java/com/simibubi/create/foundation/blockEntity/IMultiBlockEntityContainer.java b/src/main/java/com/simibubi/create/foundation/blockEntity/IMultiBlockEntityContainer.java index 7fc3e8dd0..17323ab52 100644 --- a/src/main/java/com/simibubi/create/foundation/blockEntity/IMultiBlockEntityContainer.java +++ b/src/main/java/com/simibubi/create/foundation/blockEntity/IMultiBlockEntityContainer.java @@ -13,24 +13,25 @@ import net.minecraftforge.fluids.IFluidTank; public interface IMultiBlockEntityContainer { BlockPos getController(); - T getControllerBE (); + T getControllerBE(); boolean isController(); void setController(BlockPos pos); - void removeController (boolean keepContents); + void removeController(boolean keepContents); BlockPos getLastKnownPos(); - void preventConnectivityUpdate (); - void notifyMultiUpdated (); + void preventConnectivityUpdate(); + void notifyMultiUpdated(); // only used for FluidTank windows at present. Might be useful for similar properties on other things? - default void setExtraData (@Nullable Object data) {} + default void setExtraData(@Nullable Object data) {} @Nullable - default Object getExtraData () { return null; } - default Object modifyExtraData (Object data) { return data; } + default Object getExtraData() { return null; } + default Object modifyExtraData(Object data) { return data; } // multiblock structural information Direction.Axis getMainConnectionAxis(); - default Direction.Axis getMainAxisOf (BlockEntity be) { // this feels redundant, but it gives us a default to use when defining ::getMainConnectionAxis + + default Direction.Axis getMainAxisOf(BlockEntity be) { // this feels redundant, but it gives us a default to use when defining ::getMainConnectionAxis BlockState state = be.getBlockState(); Direction.Axis axis; @@ -48,13 +49,13 @@ public interface IMultiBlockEntityContainer { return axis; } - int getMaxLength (Direction.Axis longAxis, int width); - int getMaxWidth (); + int getMaxLength(Direction.Axis longAxis, int width); + int getMaxWidth(); - int getHeight (); - void setHeight (int height); - int getWidth (); - void setWidth (int width); + int getHeight(); + void setHeight(int height); + int getWidth(); + void setWidth(int width); public interface Inventory extends IMultiBlockEntityContainer { default boolean hasInventory() { return false; } diff --git a/src/main/java/com/simibubi/create/foundation/blockEntity/behaviour/inventory/CapManipulationBehaviourBase.java b/src/main/java/com/simibubi/create/foundation/blockEntity/behaviour/inventory/CapManipulationBehaviourBase.java index 79953f71f..9b25a050a 100644 --- a/src/main/java/com/simibubi/create/foundation/blockEntity/behaviour/inventory/CapManipulationBehaviourBase.java +++ b/src/main/java/com/simibubi/create/foundation/blockEntity/behaviour/inventory/CapManipulationBehaviourBase.java @@ -7,6 +7,7 @@ import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour import com.simibubi.create.foundation.blockEntity.behaviour.filtering.FilteringBehaviour; import com.simibubi.create.foundation.item.ItemHelper.ExtractionCountMode; import com.simibubi.create.foundation.utility.BlockFace; +import com.simibubi.create.foundation.utility.HashableNonNullConsumer; import net.minecraft.core.BlockPos; import net.minecraft.world.level.Level; @@ -102,7 +103,7 @@ public abstract class CapManipulationBehaviourBase(this::onHandlerInvalidated, this)); } @FunctionalInterface diff --git a/src/main/java/com/simibubi/create/foundation/blockEntity/renderer/SafeBlockEntityRenderer.java b/src/main/java/com/simibubi/create/foundation/blockEntity/renderer/SafeBlockEntityRenderer.java index 1ecb77e29..f26940d4c 100644 --- a/src/main/java/com/simibubi/create/foundation/blockEntity/renderer/SafeBlockEntityRenderer.java +++ b/src/main/java/com/simibubi/create/foundation/blockEntity/renderer/SafeBlockEntityRenderer.java @@ -2,10 +2,14 @@ package com.simibubi.create.foundation.blockEntity.renderer; import com.mojang.blaze3d.vertex.PoseStack; +import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.blockentity.BlockEntityRenderer; +import net.minecraft.client.renderer.culling.Frustum; import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; public abstract class SafeBlockEntityRenderer implements BlockEntityRenderer { @Override @@ -23,4 +27,21 @@ public abstract class SafeBlockEntityRenderer implements return !be.hasLevel() || be.getBlockState() .getBlock() == Blocks.AIR; } + + public boolean shouldCullItem(Vec3 itemPos) { + Frustum frustum = Minecraft.getInstance().levelRenderer.capturedFrustum != null ? + Minecraft.getInstance().levelRenderer.capturedFrustum : + Minecraft.getInstance().levelRenderer.cullingFrustum; + + AABB itemBB = new AABB( + itemPos.x - 0.25, + itemPos.y - 0.25, + itemPos.z - 0.25, + itemPos.x + 0.25, + itemPos.y + 0.25, + itemPos.z + 0.25 + ); + + return !frustum.isVisible(itemBB); + } } diff --git a/src/main/java/com/simibubi/create/foundation/data/BuilderTransformers.java b/src/main/java/com/simibubi/create/foundation/data/BuilderTransformers.java index 9c0adcdb0..6edc36967 100644 --- a/src/main/java/com/simibubi/create/foundation/data/BuilderTransformers.java +++ b/src/main/java/com/simibubi/create/foundation/data/BuilderTransformers.java @@ -434,11 +434,10 @@ public class BuilderTransformers { .when(survivesExplosion) .setRolls(ConstantValue.exactly(1)) .add(LootItem.lootTableItem(drop.get()) - .apply(CopyNameFunction.copyName(CopyNameFunction.NameSource.BLOCK_ENTITY)) .apply(CopyNbtFunction.copyData(ContextNbtProvider.BLOCK_ENTITY) - .copy("Air", "Air")) + .copy("VanillaTag", "{}", CopyNbtFunction.MergeStrategy.MERGE)) .apply(CopyNbtFunction.copyData(ContextNbtProvider.BLOCK_ENTITY) - .copy("Enchantments", "Enchantments"))))); + .copy("Air", "Air"))))); }); } diff --git a/src/main/java/com/simibubi/create/foundation/data/CreateRegistrate.java b/src/main/java/com/simibubi/create/foundation/data/CreateRegistrate.java index b50e38bd3..1eda3db41 100644 --- a/src/main/java/com/simibubi/create/foundation/data/CreateRegistrate.java +++ b/src/main/java/com/simibubi/create/foundation/data/CreateRegistrate.java @@ -2,6 +2,7 @@ package com.simibubi.create.foundation.data; import static com.simibubi.create.foundation.data.TagGen.pickaxeOnly; +import java.util.Collections; import java.util.IdentityHashMap; import java.util.Map; import java.util.function.BiConsumer; @@ -52,7 +53,7 @@ import net.minecraftforge.fml.DistExecutor; import net.minecraftforge.registries.RegistryObject; public class CreateRegistrate extends AbstractRegistrate { - private static final Map, RegistryObject> TAB_LOOKUP = new IdentityHashMap<>(); + private static final Map, RegistryObject> TAB_LOOKUP = Collections.synchronizedMap(new IdentityHashMap<>()); @Nullable protected Function currentTooltipModifierFactory; diff --git a/src/main/java/com/simibubi/create/foundation/data/TagGen.java b/src/main/java/com/simibubi/create/foundation/data/TagGen.java index 34b101ee9..3b24b32d6 100644 --- a/src/main/java/com/simibubi/create/foundation/data/TagGen.java +++ b/src/main/java/com/simibubi/create/foundation/data/TagGen.java @@ -21,6 +21,8 @@ import net.minecraft.tags.TagKey; import net.minecraft.world.item.BlockItem; import net.minecraft.world.level.block.Block; +import java.util.List; + public class TagGen { public static NonNullFunction, BlockBuilder> axeOrPickaxe() { return b -> b.tag(BlockTags.MINEABLE_WITH_AXE) @@ -52,7 +54,7 @@ public class TagGen { return appender; } - public static > T addOptional(T appender, Mods mod, String... ids) { + public static > T addOptional(T appender, Mods mod, List ids) { for (String id : ids) { appender.addOptional(mod.asResource(id)); } diff --git a/src/main/java/com/simibubi/create/foundation/data/recipe/CompactingRecipeGen.java b/src/main/java/com/simibubi/create/foundation/data/recipe/CompactingRecipeGen.java index c8477a34f..0f70a5a07 100644 --- a/src/main/java/com/simibubi/create/foundation/data/recipe/CompactingRecipeGen.java +++ b/src/main/java/com/simibubi/create/foundation/data/recipe/CompactingRecipeGen.java @@ -42,7 +42,13 @@ public class CompactingRecipeGen extends ProcessingRecipeGen { .output(AllItems.BLAZE_CAKE_BASE.get(), 1)), HONEY = create("honey", b -> b.require(AllFluidTags.HONEY.tag, 1000) - .output(Items.HONEY_BLOCK, 1)) + .output(Items.HONEY_BLOCK, 1)), + + ICE = create("ice", b -> b + .require(Blocks.SNOW_BLOCK).require(Blocks.SNOW_BLOCK).require(Blocks.SNOW_BLOCK) + .require(Blocks.SNOW_BLOCK).require(Blocks.SNOW_BLOCK).require(Blocks.SNOW_BLOCK) + .require(Blocks.SNOW_BLOCK).require(Blocks.SNOW_BLOCK).require(Blocks.SNOW_BLOCK) + .output(Blocks.ICE)) ; diff --git a/src/main/java/com/simibubi/create/foundation/data/recipe/CompatMetals.java b/src/main/java/com/simibubi/create/foundation/data/recipe/CompatMetals.java index dd275be0b..5a87e23a5 100644 --- a/src/main/java/com/simibubi/create/foundation/data/recipe/CompatMetals.java +++ b/src/main/java/com/simibubi/create/foundation/data/recipe/CompatMetals.java @@ -1,21 +1,25 @@ package com.simibubi.create.foundation.data.recipe; +import static com.simibubi.create.foundation.data.recipe.Mods.GS; +import static com.simibubi.create.foundation.data.recipe.Mods.IC2; import static com.simibubi.create.foundation.data.recipe.Mods.IE; +import static com.simibubi.create.foundation.data.recipe.Mods.IF; import static com.simibubi.create.foundation.data.recipe.Mods.MEK; +import static com.simibubi.create.foundation.data.recipe.Mods.OREGANIZED; import static com.simibubi.create.foundation.data.recipe.Mods.TH; import com.simibubi.create.foundation.utility.Lang; public enum CompatMetals { - ALUMINUM(IE), - LEAD(MEK, TH, IE), + ALUMINUM(IE, IC2), + LEAD(MEK, TH, IE, OREGANIZED), NICKEL(TH, IE), OSMIUM(MEK), PLATINUM(), QUICKSILVER(), - SILVER(TH, IE), - TIN(TH, MEK), - URANIUM(MEK, IE); + SILVER(TH, IE, IC2, OREGANIZED, GS, IF), + TIN(TH, MEK, IC2), + URANIUM(MEK, IE, IC2); private final Mods[] mods; private final String name; diff --git a/src/main/java/com/simibubi/create/foundation/data/recipe/CrushingRecipeGen.java b/src/main/java/com/simibubi/create/foundation/data/recipe/CrushingRecipeGen.java index 80e9cbd95..af01707ad 100644 --- a/src/main/java/com/simibubi/create/foundation/data/recipe/CrushingRecipeGen.java +++ b/src/main/java/com/simibubi/create/foundation/data/recipe/CrushingRecipeGen.java @@ -23,6 +23,7 @@ import com.simibubi.create.content.processing.recipe.ProcessingRecipeBuilder; import com.simibubi.create.foundation.utility.Lang; import net.minecraft.data.PackOutput; +import net.minecraft.resources.ResourceLocation; import net.minecraft.tags.ItemTags; import net.minecraft.util.Mth; import net.minecraft.world.item.Items; @@ -30,6 +31,7 @@ import net.minecraft.world.level.ItemLike; import net.minecraft.world.level.block.Blocks; import net.minecraftforge.common.crafting.conditions.NotCondition; import net.minecraftforge.common.crafting.conditions.TagEmptyCondition; +import net.minecraftforge.registries.ForgeRegistries; public class CrushingRecipeGen extends ProcessingRecipeGen { @@ -53,7 +55,7 @@ public class CrushingRecipeGen extends ProcessingRecipeGen { .output(Items.STRING, 2) .output(.5f, Items.STRING)), - DIORITE = mineralRecycling(AllPaletteStoneTypes.DIORITE, b -> b.duration(350) + DIORITE = ensMineralRecycling(AllPaletteStoneTypes.DIORITE, b -> b.duration(350) .output(.25f, Items.QUARTZ, 1)), CRIMSITE = @@ -91,13 +93,15 @@ public class CrushingRecipeGen extends ProcessingRecipeGen { DEEP_GOLD_ORE = deepslateOre(() -> Items.DEEPSLATE_GOLD_ORE, AllItems.CRUSHED_GOLD::get, 2.25f, 350), DEEP_DIAMOND_ORE = deepslateOre(() -> Items.DEEPSLATE_DIAMOND_ORE, () -> Items.DIAMOND, 2.25f, 450), DEEP_EMERALD_ORE = deepslateOre(() -> Items.DEEPSLATE_EMERALD_ORE, () -> Items.EMERALD, 2.25f, 450), - DEEP_COAL_ORE = deepslateOre(() -> Items.DEEPSLATE_COAL_ORE, () -> Items.COAL, 1.75f, 250), + DEEP_COAL_ORE = deepslateOre(() -> Items.DEEPSLATE_COAL_ORE, () -> Items.COAL, 2.25f, 300), DEEP_REDSTONE_ORE = deepslateOre(() -> Items.DEEPSLATE_REDSTONE_ORE, () -> Items.REDSTONE, 7.5f, 350), DEEP_LAPIS_ORE = deepslateOre(() -> Items.DEEPSLATE_LAPIS_ORE, () -> Items.LAPIS_LAZULI, 12.5f, 350), NETHER_GOLD_ORE = netherOre(() -> Items.NETHER_GOLD_ORE, () -> Items.GOLD_NUGGET, 18, 350), NETHER_QUARTZ_ORE = netherOre(() -> Items.NETHER_QUARTZ_ORE, () -> Items.QUARTZ, 2.25f, 350), + GILDED_BLACKSTONE = ore(Items.BLACKSTONE, () -> Items.GILDED_BLACKSTONE, () -> Items.GOLD_NUGGET, 18, 400), + RAW_COPPER_ORE = rawOre(() -> Items.RAW_COPPER, AllItems.CRUSHED_COPPER::get, 1), RAW_ZINC_ORE = rawOre(AllItems.RAW_ZINC::get, AllItems.CRUSHED_ZINC::get, 1), RAW_IRON_ORE = rawOre(() -> Items.RAW_IRON, AllItems.CRUSHED_IRON::get, 1), @@ -185,7 +189,245 @@ public class CrushingRecipeGen extends ProcessingRecipeGen { NETHERRACK = create(() -> Blocks.NETHERRACK, b -> b.duration(250) .output(AllItems.CINDER_FLOUR.get()) - .output(.5f, AllItems.CINDER_FLOUR.get())) + .output(.5f, AllItems.CINDER_FLOUR.get()) + .whenModMissing(Mods.ENS.getId())), + + // AE2 + AE2_DEEPSLATE_ORE = create(Mods.AE2.recipeId("deepslate_quartz_ore"), b -> b.duration(300) + .require(Mods.AE2, "deepslate_quartz_ore") + .output(Mods.AE2, "certus_quartz_crystal") + .output(1f, Mods.AE2, "certus_quartz_dust", 4) + .output(.5f, Mods.AE2, "certus_quartz_dust", 1) + .output(.125f, Items.COBBLED_DEEPSLATE) + .whenModLoaded(Mods.AE2.getId())), + + AE2_ORE = create(Mods.AE2.recipeId("quartz_ore"), b -> b.duration(300) + .require(Mods.AE2, "quartz_ore") + .output(Mods.AE2, "certus_quartz_crystal") + .output(1f, Mods.AE2, "certus_quartz_dust", 4) + .output(.5f, Mods.AE2, "certus_quartz_dust", 1) + .output(.125f, Items.COBBLESTONE) + .whenModLoaded(Mods.AE2.getId())), + + // Oh The Biomes You'll Go + BYG_AMETRINE_ORE = create(Mods.BYG.recipeId("ametrine_ore"), b -> b.duration(500) + .require(AllTags.optionalTag(ForgeRegistries.ITEMS, + new ResourceLocation("forge", "ores/ametrine"))) + .output(1f, Mods.BYG, "ametrine_gems", 2) + .output(.25f, Mods.BYG, "ametrine_gems", 1) + .output(.75f, AllItems.EXP_NUGGET.get(), 1) + .output(.125f, Mods.BYG, "cobbled_ether_stone", 1) + .whenModLoaded(Mods.BYG.getId())), + + BYG_ANTHRACITE_ORE = create(Mods.BYG.recipeId("anthracite_ore"), b -> b.duration(150) + .require(AllTags.optionalTag(ForgeRegistries.ITEMS, + new ResourceLocation("forge", "ores/anthracite"))) + .output(1f, Mods.BYG, "anthracite", 2) + .output(.5f, Mods.BYG, "anthracite", 1) + .output(.75f, AllItems.EXP_NUGGET.get(), 1) + .output(.125f, Mods.BYG, "brimstone", 1) + .whenModLoaded(Mods.BYG.getId())), + + BYG_BLUE_GOLD_ORE = create(Mods.BYG.recipeId("blue_nether_gold_ore"), b -> b.duration(350) + .require(Mods.BYG, "blue_nether_gold_ore") + .output(1f, Items.GOLD_NUGGET, 18) + .output(.75f, AllItems.EXP_NUGGET.get(), 1) + .output(.125f, Mods.BYG, "blue_netherrack", 1) + .whenModLoaded(Mods.BYG.getId())), + + BYG_BLUE_QUARTZ_ORE = create(Mods.BYG.recipeId("blue_nether_quartz_ore"), b -> b.duration(350) + .require(Mods.BYG, "blue_nether_quartz_ore") + .output(1f, Items.QUARTZ, 2) + .output(.25f, Items.QUARTZ, 1) + .output(.75f, AllItems.EXP_NUGGET.get(), 1) + .output(.125f, Mods.BYG, "blue_netherrack", 1) + .whenModLoaded(Mods.BYG.getId())), + + BYG_BRIMSTONE_GOLD_ORE = create(Mods.BYG.recipeId("brimstone_nether_gold_ore"), b -> b.duration(350) + .require(Mods.BYG, "brimstone_nether_gold_ore") + .output(1f, Items.GOLD_NUGGET, 18) + .output(.75f, AllItems.EXP_NUGGET.get(), 1) + .output(.125f, Mods.BYG, "brimstone", 1) + .whenModLoaded(Mods.BYG.getId())), + + BYG_BRIMSTONE_QUARTZ_ORE = create(Mods.BYG.recipeId("brimstone_nether_quartz_ore"), b -> b.duration(350) + .require(Mods.BYG, "brimstone_nether_quartz_ore") + .output(1f, Items.QUARTZ, 2) + .output(.25f, Items.QUARTZ, 1) + .output(.75f, AllItems.EXP_NUGGET.get(), 1) + .output(.125f, Mods.BYG, "brimstone", 1) + .whenModLoaded(Mods.BYG.getId())), + + BYG_REDSTONE_ORE = create(Mods.BYG.recipeId("cryptic_redstone_ore"), b -> b.duration(250) + .require(Mods.BYG, "cryptic_redstone_ore") + .output(1f, Items.REDSTONE, 6) + .output(.5f, Items.REDSTONE, 1) + .output(.75f, AllItems.EXP_NUGGET.get(), 1) + .output(.125f, Mods.BYG, "cryptic_stone", 1) + .whenModLoaded(Mods.BYG.getId())), + + BYG_EMERALDITE_ORE = create(Mods.BYG.recipeId("emeraldite_ore"), b -> b.duration(500) + .require(AllTags.forgeItemTag("ores/emeraldite")) + .output(1f,Mods.BYG, "emeraldite_shards", 2) + .output(.25f, Mods.BYG, "emeraldite_shards", 1) + .output(.75f, AllItems.EXP_NUGGET.get(), 1) + .output(.125f, Mods.BYG, "scoria_cobblestone", 1) + .whenModLoaded(Mods.BYG.getId())), + + BYG_LIGNITE_ORE = create(Mods.BYG.recipeId("lignite_ore"), b -> b.duration(300) + .require(AllTags.forgeItemTag("ores/lignite")) + .output(1f,Mods.BYG, "lignite", 2) + .output(.5f, Mods.BYG, "lignite", 2) + .output(.75f, AllItems.EXP_NUGGET.get(), 1) + .output(.125f, Mods.BYG, "cobbled_ether_stone", 1) + .whenModLoaded(Mods.BYG.getId())), + + BYG_NETHERRACK_ORE = create(Mods.BYG.recipeId("pervaded_netherrack"), b -> b.duration(150) + .require(AllTags.forgeItemTag("ores/emeraldite")) + .output(1f, Items.GLOWSTONE, 2) + .output(.5f, Items.GLOWSTONE, 1) + .output(.75f, AllItems.EXP_NUGGET.get(), 1) + .output(.125f, Items.NETHERRACK, 1) + .whenModLoaded(Mods.BYG.getId())), + + BYG_RED_ROCK_ORE = create(Mods.BYG.recipeId("red_rock"), b -> b.duration(150) + .require(Mods.BYG, "red_rock") + .output(1f, Items.RED_SAND, 1) + .whenModLoaded(Mods.BYG.getId())), + + // Druidcraft + + DC_AMBER_ORE = create(Mods.DRUIDCRAFT.recipeId("amber_ore"), b -> b.duration(300) + .require(Mods.DRUIDCRAFT, "amber_ore") + .output(1f, Mods.DRUIDCRAFT, "amber", 2) + .output(.5f, Mods.DRUIDCRAFT, "amber", 1) + .output(.125f, Items.COBBLESTONE, 1) + .whenModLoaded(Mods.DRUIDCRAFT.getId())), + + DC_FIERY_GLASS_ORE = create(Mods.DRUIDCRAFT.recipeId("fiery_glass_ore"), b -> b.duration(300) + .require(Mods.DRUIDCRAFT, "fiery_glass_ore") + .output(1f, Mods.DRUIDCRAFT, "fiery_glass", 8) + .output(.25f, Mods.DRUIDCRAFT, "fiery_glass", 6) + .output(.125f, Items.COBBLESTONE, 1) + .whenModLoaded(Mods.DRUIDCRAFT.getId())), + + DC_MOONSTONE_ORE = create(Mods.DRUIDCRAFT.recipeId("moonstone_ore"), b -> b.duration(300) + .require(Mods.DRUIDCRAFT, "moonstone_ore") + .output(1f, Mods.DRUIDCRAFT, "moonstone", 2) + .output(.5f, Mods.DRUIDCRAFT, "moonstone", 1) + .output(.125f, Items.COBBLESTONE, 1) + .whenModLoaded(Mods.DRUIDCRAFT.getId())), + + // Neapolitan + + NEA_ICE = create(Mods.NEA.recipeId("ice"), b -> b.duration(100) + .require(Items.ICE) + .output(1f, Mods.NEA, "ice_cubes", 3) + .output(.25f, Mods.NEA, "ice_cubes", 3) + .whenModLoaded(Mods.NEA.getId())), + + // Quark + + Q_MOSS = create(Mods.Q.recipeId("moss_block"), b -> b.duration(50) + .require(Items.MOSS_BLOCK) + .output(1f, Mods.Q, "moss_paste", 2) + .output(.1f, Mods.Q, "moss_paste", 1) + .whenModLoaded(Mods.Q.getId())), + + // Silent Gems + + SG_STONE = sgStoneOres("agate", "amber", "amethyst", "aquamarine", "garnet", "green_sapphire", + "helidor", "morganite", "onyx", "opal", "peridot", "phosphophyllite", "ruby", "sapphire", + "tanzite", "topaz"), + + SG_NETHER = sgNetherOres("alexandrite", "ametrine", "beniotite", "black_diamond", "carnelian", + "citrine", "eculase", "iolite", "jasper", "lepidolite", "malachite", "moldavite", "moonstone", + "spinel", "turquoise", "zircon"), + + SG_END = sgEndOres("ammolite", "apatite", "cats_eye", "chrysoprase", "coral", "flourite", + "jade", "kunzite", "kyanite", "pearl", "pyrope", "rose_quartz", "sodalite", "sunstone", + "tektite", "yellow_diamond"), + + // Simple Farming + + SF = sfPlants("barley", "oat", "rice", "rye"), + + // Thermal Expansion + + TH = thOres("apatite", "cinnabar", "niter", "sulfur"), + + //Galosphere + + GS_ALLURITE = create(Mods.GS.recipeId("allurite"), b -> b.duration(300) + .require(AllTags.AllItemTags.ALLURITE.tag) + .output(.8f, Mods.GS, "allurite_shard", 4) + .whenModLoaded(Mods.GS.getId())), + + GS_LUMIERE = create(Mods.GS.recipeId("lumiere"), b -> b.duration(300) + .require(AllTags.AllItemTags.LUMIERE.tag) + .output(.8f, Mods.GS, "lumiere_shard", 4) + .whenModLoaded(Mods.GS.getId())), + + GS_AMETHYST = create(Mods.GS.recipeId("amethyst"), b -> b.duration(300) + .require(AllTags.AllItemTags.AMETHYST.tag) + .output(.8f, Items.AMETHYST_SHARD, 4) + .whenModLoaded(Mods.GS.getId())), + + //Elementary Ores + EO_COAL_NETHER = eoNetherOre("coal", Items.COAL, 1), + EO_COPPER_NETHER = eoNetherOre("copper", AllItems.CRUSHED_COPPER.get(), 5), + EO_IRON_NETHER = eoNetherOre("iron", AllItems.CRUSHED_IRON.get(), 1), + EO_EMERALD_NETHER = eoNetherOre("emerald", Items.EMERALD, 1), + EO_LAPIS_NETHER = eoNetherOre("lapis", Items.LAPIS_LAZULI, 10), + EO_DIAMOND_NETHER = eoNetherOre("diamond", Items.DIAMOND, 1), + EO_REDSTONE_NETHER = eoNetherOre("redstone", Items.REDSTONE, 6), + EO_GHAST_NETHER = eoNetherOre("ghast", Items.GHAST_TEAR, 1), + EO_COAL_END = eoEndOre("coal", Items.COAL, 1), + EO_COPPER_END = eoEndOre("copper", AllItems.CRUSHED_COPPER.get(), 5), + EO_IRON_END = eoEndOre("iron", AllItems.CRUSHED_IRON.get(), 1), + EO_EMERALD_END = eoEndOre("emerald", Items.EMERALD, 1), + EO_LAPIS_END = eoEndOre("lapis", Items.LAPIS_LAZULI, 10), + EO_DIAMOND_END = eoEndOre("diamond", Items.DIAMOND, 1), + EO_REDSTONE_END = eoEndOre("redstone", Items.REDSTONE, 6), + EO_ENDER_END = eoEndOre("ender", Items.ENDER_PEARL, 1), + + // Ex Nihilo: Sequentia + + ENS_STONES = ensStones("andesite", "diorite", "end_stone", "granite", "netherrack"), + + ENS_DUST = create(Mods.ENS.recipeId("dust"), b -> b.duration(200) + .require(Blocks.SAND).output(Mods.ENS, "dust") + .whenModLoaded(Mods.ENS.getId())), + + ENS_NETHERRACK = create(Mods.ENS.recipeId("crushed_netherrack"), b -> b.duration(100) + .require(Mods.ENS, "crushed_netherrack") + .output(AllItems.CINDER_FLOUR.get()) + .output(.5f, AllItems.CINDER_FLOUR.get()) + .whenModLoaded(Mods.ENS.getId())), + + ENS_DIORITE = create(Mods.ENS.recipeId("crushed_diorite"), b -> b.duration(100) + .require(Mods.ENS, "crushed_diorite") + .output(.25f, Items.QUARTZ, 1) + .whenModLoaded(Mods.ENS.getId())), + + // Aether + + AET_ZANITE = create(Mods.AET.recipeId("zanite_ore"), b -> b.duration(350) + .require(Mods.AET, "zanite_ore") + .output(Mods.AET, "zanite_gemstone") + .output(0.75f, Mods.AET, "zanite_gemstone", 1) + .output(0.125f, Mods.AET, "holystone", 1) + .output(0.75f, AllItems.EXP_NUGGET.get()) + .whenModLoaded(Mods.AET.getId())), + + AET_AMBROSIUM = create(Mods.AET.recipeId("ambrosium_ore"), b -> b.duration(150) + .require(Mods.AET, "ambrosium_ore") + .output(Mods.AET, "ambrosium_shard") + .output(0.75f, Mods.AET, "ambrosium_shard", 1) + .output(0.125f, Mods.AET, "holystone", 1) + .output(0.75f, AllItems.EXP_NUGGET.get()) + .whenModLoaded(Mods.AET.getId())) + ; @@ -217,6 +459,12 @@ public class CrushingRecipeGen extends ProcessingRecipeGen { return create(type.getBaseBlock()::get, transform); } + protected GeneratedRecipe ensMineralRecycling(AllPaletteStoneTypes type, + UnaryOperator>> transform) { + create(Lang.asId(type.name()) + "_recycling", b -> transform.apply(b.require(type.materialTag))); + return create(type.getBaseBlock()::get, b -> transform.apply(b.whenModMissing(Mods.ENS.getId()))); + } + protected GeneratedRecipe ore(ItemLike stoneType, Supplier ore, Supplier raw, float expectedAmount, int duration) { return create(ore, b -> { @@ -257,10 +505,107 @@ public class CrushingRecipeGen extends ProcessingRecipeGen { .require(AllTags.forgeItemTag(prefix + name)) .output(result.get(), 1) .output(.75f, result.get(), 1) - .output(.75f, AllItems.EXP_NUGGET.get(), 1); + .output(.75f, AllItems.EXP_NUGGET.get()); }); } + protected GeneratedRecipe sgStoneOres(String... types) { + for (String type : types) { + create(Mods.SILENT_GEMS.recipeId(type + "_ore"), b -> b.duration(350) + .require(Mods.SILENT_GEMS, type + "_ore") + .output(1f, Mods.SILENT_GEMS, type, 2) + .output(.25f, Mods.SILENT_GEMS, type, 1) + .output(.75f, AllItems.EXP_NUGGET.get()) + .output(.12f, Items.COBBLESTONE) + .whenModLoaded(Mods.SILENT_GEMS.getId())); + } + return null; + } + + protected GeneratedRecipe sgNetherOres(String... types) { + for (String type : types) { + create(Mods.SILENT_GEMS.recipeId(type + "_ore"), b -> b.duration(350) + .require(Mods.SILENT_GEMS, type + "_ore") + .output(1f, Mods.SILENT_GEMS, type, 2) + .output(.25f, Mods.SILENT_GEMS, type, 1) + .output(.75f, AllItems.EXP_NUGGET.get()) + .output(.12f, Items.NETHERRACK) + .whenModLoaded(Mods.SILENT_GEMS.getId())); + } + return null; + } + + protected GeneratedRecipe sgEndOres(String... types) { + for (String type : types) { + create(Mods.SILENT_GEMS.recipeId(type + "_ore"), b -> b.duration(350) + .require(Mods.SILENT_GEMS, type + "_ore") + .output(1f, Mods.SILENT_GEMS, type, 2) + .output(.25f, Mods.SILENT_GEMS, type, 1) + .output(.75f, AllItems.EXP_NUGGET.get()) + .output(.12f, Items.END_STONE) + .whenModLoaded(Mods.SILENT_GEMS.getId())); + } + return null; + } + + protected GeneratedRecipe sfPlants(String... types) { + for (String type : types) { + create(Mods.SF.recipeId(type), b -> b.duration(150) + .require(Mods.SF, type) + .output(1f, AllItems.WHEAT_FLOUR.get(), 1) + .output(.25f, AllItems.WHEAT_FLOUR.get(), 2) + .output(.25f, Mods.SF, type + "_seeds", 1) + .whenModLoaded(Mods.SF.getId())); + } + return null; + } + + protected GeneratedRecipe thOres(String... types) { + for (String type : types) { + create(Mods.TH.recipeId(type + "_ore"), b -> b.duration(350) + .require(Mods.TH, type + "_ore") + .output(1f, Mods.TH, type, 2) + .output(.25f, Mods.TH, type, 1) + .output(.12f, Items.COBBLESTONE) + .output(.75f, AllItems.EXP_NUGGET.get()) + .whenModLoaded(Mods.TH.getId())); + } + return null; + } + + protected GeneratedRecipe eoNetherOre(String material, ItemLike result, int count){ + String oreName = "ore_" + material + "_nether"; + return create(Mods.EO.recipeId(oreName), b -> b.duration(350) + .require(Mods.EO, oreName) + .output(1f, result, count) + .output(.25f, result) + .output(.75f, AllItems.EXP_NUGGET.get()) + .output(.12f, Items.NETHERRACK) + .whenModLoaded(Mods.EO.getId())); + } + + protected GeneratedRecipe eoEndOre(String material, ItemLike result, int count){ + String oreName = "ore_" + material + "_end"; + return create(Mods.EO.recipeId(oreName), b -> b.duration(350) + .require(Mods.EO, oreName) + .output(1f, result, count) + .output(.25f, result) + .output(.75f, AllItems.EXP_NUGGET.get()) + .output(.12f, Items.END_STONE) + .whenModLoaded(Mods.EO.getId())); + } + + protected GeneratedRecipe ensStones(String... stones) { + for (String stone : stones) { + String crushed = "crushed_" + stone; + create(Mods.ENS.recipeId(stone), b -> b.duration(350) + .require(Mods.MC, stone) + .output(Mods.ENS, crushed) + .whenModLoaded(Mods.ENS.getId())); + } + return null; + } + public CrushingRecipeGen(PackOutput output) { super(output); } diff --git a/src/main/java/com/simibubi/create/foundation/data/recipe/CuttingRecipeGen.java b/src/main/java/com/simibubi/create/foundation/data/recipe/CuttingRecipeGen.java index 89e013bf2..4e760e9a1 100644 --- a/src/main/java/com/simibubi/create/foundation/data/recipe/CuttingRecipeGen.java +++ b/src/main/java/com/simibubi/create/foundation/data/recipe/CuttingRecipeGen.java @@ -7,6 +7,8 @@ import net.minecraft.data.PackOutput; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Blocks; +import java.util.Objects; + public class CuttingRecipeGen extends ProcessingRecipeGen { GeneratedRecipe @@ -59,7 +61,7 @@ public class CuttingRecipeGen extends ProcessingRecipeGen { stripAndMakePlanks(Mods.BTN, "glimmering_dreamwood", "glimmering_stripped_dreamwood", "dreamwood_planks"), // Forbidden Arcanus (no _wood suffix) - FA = cuttingCompat(Mods.FA, "cherrywood", "mysterywood"), + FA = cuttingCompat(Mods.FA, "mysterywood"), // Hexcasting (stripped is a suffix here) HEX = cuttingCompat(Mods.HEX, "edified"), @@ -69,7 +71,7 @@ public class CuttingRecipeGen extends ProcessingRecipeGen { // Oh The Biomes You'll Go BYG = - cuttingCompat(Mods.BYG, "aspen", "baobab", "blue_enchanted", "cherry", "cika", "cypress", "ebony", "ether", + cuttingCompat(Mods.BYG, "aspen", "baobab", "blue_enchanted", "cika", "cypress", "ebony", "ether", "fir", "green_enchanted", "holly", "jacaranda", "lament", "mahogany", "maple", "nightshade", "palm", "pine", "rainbow_eucalyptus", "redwood", "skyris", "willow", "witch_hazel", "zelkova"), BYG_2 = stripAndMakePlanks(Mods.BYG, "bulbis_stem", "stripped_bulbis_stem", "bulbis_planks"), @@ -103,15 +105,62 @@ public class CuttingRecipeGen extends ProcessingRecipeGen { ECO_3 = stripAndMakePlanks(Mods.ECO, "flowering_azalea_wood", "stripped_azalea_wood", null), // Biomes O' Plenty - BOP = cuttingCompat(Mods.BOP, "fir", "redwood", "cherry", "mahogany", "jacaranda", "palm", "willow", "dead", + BOP = cuttingCompat(Mods.BOP, "fir", "redwood", "mahogany", "jacaranda", "palm", "willow", "dead", "magic", "umbran", "hellbark"), // Blue Skies (crystallized does not have stripped variants) - BSK = cuttingCompat(Mods.BSK, "bluebright", "starlit", "frostbright", "lunar", "dusk", "maple", "cherry"), + BSK = cuttingCompat(Mods.BSK, "bluebright", "starlit", "frostbright", "lunar", "dusk", "maple"), BSK_2 = stripAndMakePlanks(Mods.BSK, null, "crystallized_log", "crystallized_planks"), - BSK_3 = stripAndMakePlanks(Mods.BSK, null, "crystallized_wood", "crystallized_planks") + BSK_3 = stripAndMakePlanks(Mods.BSK, null, "crystallized_wood", "crystallized_planks"), - ; + // Atmospheric + + ATM = cuttingCompat(Mods.ATM, "aspen", "kousa", "yucca", "morado"), + ATM_2 = stripAndMakePlanks(Mods.ATM, "grimwood", "stripped_grimwood", "grimwood_planks"), + ATM_3 = stripAndMakePlanks(Mods.ATM, "rosewood", "stripped_rosewood", "rosewood_planks"), + ATM_4 = cuttingCompatLogOnly(Mods.ATM, "grimwood", "rosewood"), + + // Autumnity + AUTUM = cuttingCompat(Mods.AUTUM, "maple"), + AUTUM_2 = stripAndMakePlanks(Mods.AUTUM, "sappy_maple_wood", "sappy_maple_log", "maple_planks"), + + // Endergetic + + ENDERGETIC = stripAndMakePlanks(Mods.ENDER, "poise_stem", "stripped_poise_stem", "poise_planks"), + + // Project Vibrant Journeys + PVJ = cuttingCompatLogOnly(Mods.PVJ,"aspen", "baobab", "cottonwood", "fir", "juniper", "mangrove", "maple", "palm", "pine", "redwood", "willow"), + + // Upgrade Aquatic + UA = cuttingCompat(Mods.UA, "river"), + UA_2 = stripAndMakePlanks(Mods.UA, "driftwood", "strippped_driftwood", "driftwood_planks"), + UA_3 = cuttingCompatLogOnly(Mods.UA, "driftwood"), + + //Vault Hunters + VH = cuttingCompatLogOnly(Mods.VH, "wooden", "overgrown_wooden", "driftwood", "chromatic"), + + // Nether's Exoticism + NE = cuttingCompat(Mods.NE, "ramboutan"), + NE_2 = cuttingCompatLogOnly(Mods.NE, "jabuticaba"), + + // Regions Unexplored + RU = cuttingCompat(Mods.RU, "baobab", "blackwood", "brimwood", "cobalt", "cypress", "dead", "eucalyptus", "joshua", + "kapok", "larch", "magnolia", "maple","mauve", "palm", "pine", "redwood", "socotra", "willow"), + RU_2 = stripAndMakePlanks(Mods.RU, "blue_bioshroom_stem", "stripped_blue_bioshroom_stem", "blue_bioshroom_planks"), + RU_3 = stripAndMakePlanks(Mods.RU, "blue_bioshroom_hyphae", "stripped_blue_bioshroom_hyphae", "blue_bioshroom_planks"), + RU_4 = stripAndMakePlanks(Mods.RU, "green_bioshroom_stem", "stripped_green_bioshroom_stem", "green_bioshroom_planks"), + RU_5 = stripAndMakePlanks(Mods.RU, "green_bioshroom_hyphae", "stripped_green_bioshroom_hyphae", "green_bioshroom_planks"), + RU_6 = stripAndMakePlanks(Mods.RU, "pink_bioshroom_stem", "stripped_pink_bioshroom_stem", "pink_bioshroom_planks"), + RU_7 = stripAndMakePlanks(Mods.RU, "pink_bioshroom_hyphae", "stripped_pink_bioshroom_hyphae", "pink_bioshroom_planks"), + RU_8 = stripAndMakePlanks(Mods.RU, "yellow_bioshroom_stem", "stripped_yellow_bioshroom_stem", "yellow_bioshroom_planks"), + RU_9 = stripAndMakePlanks(Mods.RU, "yellow_bioshroom_hyphae", "stripped_yellow_bioshroom_hyphae", "yellow_bioshroom_planks"), + RU_10 = stripAndMakePlanks(Mods.RU, null, "alpha_wood", "alpha_planks"), + RU_11 = stripAndMakePlanks(Mods.RU, "brimwood_log_magma", "stripped_brimwood", null), + RU_12 = stripAndMakePlanks(Mods.RU, "ashen_log", "stripped_dead_log", null), + RU_13 = stripAndMakePlanks(Mods.RU, "ashen_wood", "stripped_dead_wood", null), + RU_14 = stripOnlyDiffModId(Mods.RU, "silver_birch_log", Mods.MC, "stripped_birch_log"), + RU_15 = stripOnlyDiffModId(Mods.RU, "silver_birch_wood", Mods.MC, "stripped_birch_wood") + ; GeneratedRecipe stripAndMakePlanks(Block wood, Block stripped, Block planks) { return stripAndMakePlanks(wood, stripped, planks, 6); @@ -141,6 +190,24 @@ public class CuttingRecipeGen extends ProcessingRecipeGen { return null; } + GeneratedRecipe cuttingCompatLogOnly(Mods mod, String... woodtypes) { + for (String type : woodtypes) { + String planks = type + "_planks"; + String strippedPre = mod.strippedIsSuffix ? "" : "stripped_"; + String strippedPost = mod.strippedIsSuffix ? "_stripped" : ""; + stripAndMakePlanks(mod, type + "_log", strippedPre + type + "_log" + strippedPost, planks); + } + return null; + } + + GeneratedRecipe stripOnlyDiffModId(Mods mod1, String wood, Mods mod2, String stripped) { + create("compat/" + mod1.getId() + "/" + wood, b -> b.duration(50) + .require(mod1, wood) + .output(1, mod2, stripped, 1) + .whenModLoaded(mod1.getId())); + return null; + } + GeneratedRecipe stripAndMakePlanks(Mods mod, String wood, String stripped, String planks) { if (wood != null) create("compat/" + mod.getId() + "/" + wood, b -> b.duration(50) @@ -148,10 +215,17 @@ public class CuttingRecipeGen extends ProcessingRecipeGen { .output(1, mod, stripped, 1) .whenModLoaded(mod.getId())); if (planks != null) - create("compat/" + mod.getId() + "/" + stripped, b -> b.duration(50) - .require(mod, stripped) - .output(1, mod, planks, 6) - .whenModLoaded(mod.getId())); + if (!Objects.equals(mod.getId(), Mods.VH.getId())) { + create("compat/" + mod.getId() + "/" + stripped, b -> b.duration(50) + .require(mod, stripped) + .output(1, mod, planks, 6) + .whenModLoaded(mod.getId())); + } else { + create("compat/" + mod.getId() + "/" + stripped, b -> b.duration(50) + .require(mod, stripped) + .output(1, mod, planks, 4) + .whenModLoaded(mod.getId())); + } return null; } @@ -163,5 +237,4 @@ public class CuttingRecipeGen extends ProcessingRecipeGen { protected AllRecipeTypes getRecipeType() { return AllRecipeTypes.CUTTING; } - } diff --git a/src/main/java/com/simibubi/create/foundation/data/recipe/EmptyingRecipeGen.java b/src/main/java/com/simibubi/create/foundation/data/recipe/EmptyingRecipeGen.java index ccfa20789..b499a606f 100644 --- a/src/main/java/com/simibubi/create/foundation/data/recipe/EmptyingRecipeGen.java +++ b/src/main/java/com/simibubi/create/foundation/data/recipe/EmptyingRecipeGen.java @@ -6,6 +6,7 @@ import com.simibubi.create.AllRecipeTypes; import net.minecraft.data.PackOutput; import net.minecraft.world.item.Items; +import net.minecraft.world.level.material.Fluids; import net.minecraftforge.common.ForgeMod; public class EmptyingRecipeGen extends ProcessingRecipeGen { @@ -27,7 +28,17 @@ public class EmptyingRecipeGen extends ProcessingRecipeGen { FD_MILK = create(Mods.FD.recipeId("milk_bottle"), b -> b.require(Mods.FD, "milk_bottle") .output(ForgeMod.MILK.get(), 250) .output(Items.GLASS_BOTTLE) - .whenModLoaded(Mods.FD.getId())) + .whenModLoaded(Mods.FD.getId())), + + AM_LAVA = create(Mods.AM.recipeId("lava_bottle"), b -> b.require(Mods.AM, "lava_bottle") + .output(Items.GLASS_BOTTLE) + .output(Fluids.LAVA, 250) + .whenModLoaded(Mods.AM.getId())), + + NEO_MILK = create(Mods.NEA.recipeId("milk_bottle"), b -> b.require(Mods.FD, "milk_bottle") + .output(ForgeMod.MILK.get(), 250) + .output(Items.GLASS_BOTTLE) + .whenModLoaded(Mods.NEA.getId())) ; diff --git a/src/main/java/com/simibubi/create/foundation/data/recipe/FillingRecipeGen.java b/src/main/java/com/simibubi/create/foundation/data/recipe/FillingRecipeGen.java index aba7ea3d1..0ea5f9a82 100644 --- a/src/main/java/com/simibubi/create/foundation/data/recipe/FillingRecipeGen.java +++ b/src/main/java/com/simibubi/create/foundation/data/recipe/FillingRecipeGen.java @@ -59,10 +59,44 @@ public class FillingRecipeGen extends ProcessingRecipeGen { GLOWSTONE = create("glowstone", b -> b.require(PotionFluidHandler.potionIngredient(Potions.NIGHT_VISION, 25)) .require(AllItems.CINDER_FLOUR.get()) - .output(Items.GLOWSTONE_DUST)) + .output(Items.GLOWSTONE_DUST)), + + + AM_LAVA = create(Mods.AM.recipeId("lava_bottle"), b -> b.require(Fluids.LAVA, 250) + .require(Items.GLASS_BOTTLE) + .output(1, Mods.AM, "lava_bottle", 1) + .whenModLoaded(Mods.AM.getId())), + + BYG_LUSH_GRASS = create(Mods.BYG.recipeId("lush_grass_block"), b -> b.require(Mods.BYG, "lush_dirt") + .require(Fluids.WATER, 500) + .output(Mods.BYG, "lush_grass_block") + .whenModLoaded(Mods.BYG.getId())), + + NEA_MILK = create(Mods.NEA.recipeId("milk_bottle"), b -> b.require(Tags.Fluids.MILK, 250) + .require(Items.GLASS_BOTTLE) + .output(1, Mods.NEA, "milk_bottle", 1) + .whenModLoaded(Mods.NEA.getId())), + + AET_GRASS = moddedGrass(Mods.AET, "aether"), + + RU_PEAT_GRAS = moddedGrass(Mods.RU, "peat"), + + RU_SILT_GRAS = moddedGrass(Mods.RU, "silt"), + + // Vampirism + + VMP_CURSED_GRASS = moddedGrass(Mods.VMP, "cursed") ; + public GeneratedRecipe moddedGrass(Mods mod, String name) { + String grass = name + "_grass_block"; + return create(mod.recipeId(grass), b -> b.require(Fluids.WATER, 500) + .require(mod, name + "_dirt") + .output(mod, grass) + .whenModLoaded(mod.getId())); + } + public FillingRecipeGen(PackOutput output) { super(output); } diff --git a/src/main/java/com/simibubi/create/foundation/data/recipe/HauntingRecipeGen.java b/src/main/java/com/simibubi/create/foundation/data/recipe/HauntingRecipeGen.java index 3349b2549..e9f02396c 100644 --- a/src/main/java/com/simibubi/create/foundation/data/recipe/HauntingRecipeGen.java +++ b/src/main/java/com/simibubi/create/foundation/data/recipe/HauntingRecipeGen.java @@ -45,7 +45,17 @@ public class HauntingRecipeGen extends ProcessingRecipeGen { SOUL_DIRT = convert(() -> Ingredient.of(ItemTags.DIRT), () -> Blocks.SOUL_SOIL), BLACK_STONE = convert(() -> Ingredient.of(Tags.Items.COBBLESTONE), () -> Blocks.BLACKSTONE), CRIMSON_FUNGUS = convert(Items.RED_MUSHROOM, Items.CRIMSON_FUNGUS), - WARPED_FUNGUS = convert(Items.BROWN_MUSHROOM, Items.WARPED_FUNGUS); + WARPED_FUNGUS = convert(Items.BROWN_MUSHROOM, Items.WARPED_FUNGUS), + + // Farmer's Delight + FD = moddedConversion(Mods.FD, "tomato", "rotten_tomato"), + + // Haunted Harvest + HH = create(Mods.HH.recipeId("rotten_apple"), b -> b.require(Items.APPLE) + .output(Mods.HH, "rotten_apple") + .whenModLoaded(Mods.HH.getId())) + + ; public GeneratedRecipe convert(ItemLike input, ItemLike result) { return convert(() -> Ingredient.of(input), () -> result); @@ -59,6 +69,12 @@ public class HauntingRecipeGen extends ProcessingRecipeGen { .output(result.get())); } + public GeneratedRecipe moddedConversion(Mods mod, String input, String output) { + return create("compat/" + mod.getId() + "/" + output, p -> p.require(mod, input) + .output(mod, output) + .whenModLoaded(mod.getId())); + } + public HauntingRecipeGen(PackOutput output) { super(output); } diff --git a/src/main/java/com/simibubi/create/foundation/data/recipe/MillingRecipeGen.java b/src/main/java/com/simibubi/create/foundation/data/recipe/MillingRecipeGen.java index 2bda1bf6d..f6a50ac70 100644 --- a/src/main/java/com/simibubi/create/foundation/data/recipe/MillingRecipeGen.java +++ b/src/main/java/com/simibubi/create/foundation/data/recipe/MillingRecipeGen.java @@ -1,18 +1,24 @@ package com.simibubi.create.foundation.data.recipe; +import java.util.List; + import com.simibubi.create.AllItems; import com.simibubi.create.AllRecipeTypes; import com.simibubi.create.AllTags; import com.tterrag.registrate.util.entry.ItemEntry; import net.minecraft.data.PackOutput; +import net.minecraft.resources.ResourceLocation; import net.minecraft.tags.ItemTags; import net.minecraft.world.item.Item; import net.minecraft.world.item.Items; import net.minecraft.world.level.block.Blocks; +import net.minecraftforge.common.Tags; import net.minecraftforge.common.crafting.conditions.NotCondition; import net.minecraftforge.common.crafting.conditions.TagEmptyCondition; +import net.minecraftforge.registries.ForgeRegistries; +@SuppressWarnings("unused") public class MillingRecipeGen extends ProcessingRecipeGen { GeneratedRecipe @@ -185,7 +191,535 @@ public class MillingRecipeGen extends ProcessingRecipeGen { TALL_GRASS = create(() -> Blocks.TALL_GRASS, b -> b.duration(100) .output(.5f, Items.WHEAT_SEEDS)), GRASS = create(() -> Blocks.GRASS, b -> b.duration(50) - .output(.25f, Items.WHEAT_SEEDS)) + .output(.25f, Items.WHEAT_SEEDS)), + + // AE2 + + AE2_CERTUS = create(Mods.AE2.recipeId("certus_quartz"), b -> b.duration(200) + .require(AllTags.forgeItemTag("gems/certus_quartz")) + .output(Mods.AE2, "certus_quartz_dust") + .whenModLoaded(Mods.AE2.getId())), + + AE2_ENDER = create(Mods.AE2.recipeId("ender_pearl"), b -> b.duration(100) + .require(Tags.Items.ENDER_PEARLS) + .output(Mods.AE2, "ender_dust") + .whenModLoaded(Mods.AE2.getId())), + + AE2_FLUIX = create(Mods.AE2.recipeId("fluix_crystal"), b -> b.duration(200) + .require(Mods.AE2, "fluix_crystal") + .output(Mods.AE2, "fluix_dust") + .whenModLoaded(Mods.AE2.getId())), + + AE2_SKY_STONE = create(Mods.AE2.recipeId("sky_stone_block"), b -> b.duration(300) + .require(Mods.AE2, "sky_stone_block") + .output(Mods.AE2, "sky_dust") + .whenModLoaded(Mods.AE2.getId())), + + // Atmospheric + + ATMO_GILIA = create(Mods.ATM.recipeId("gilia"), b -> b.duration(50) + .require(Mods.ATM, "gilia") + .output(Items.PURPLE_DYE, 2) + .output(.1f, Items.MAGENTA_DYE, 2) + .output(.1f, Items.PINK_DYE) + .whenModLoaded(Mods.ATM.getId())), + + ATMO_HOT_BRUSH = create(Mods.ATM.recipeId("hot_monkey_brush"), b -> b.duration(50) + .require(Mods.ATM, "hot_monkey_brush") + .output(Items.ORANGE_DYE, 2) + .output(.05f, Items.RED_DYE) + .output(.05f, Items.YELLOW_DYE) + .whenModLoaded(Mods.ATM.getId())), + + ATMO_SCALDING_BRUSH = create(Mods.ATM.recipeId("scalding_monkey_brush"), b -> b.duration(50) + .require(Mods.ATM, "scalding_monkey_brush") + .output(Items.RED_DYE, 2) + .output(.1f, Items.RED_DYE, 2) + .output(.1f, Items.ORANGE_DYE) + .whenModLoaded(Mods.ATM.getId())), + + ATMO_WARM_BRUSH = create(Mods.ATM.recipeId("warm_monkey_brush"), b -> b.duration(50) + .require(Mods.ATM, "scalding_monkey_brush") + .output(Items.YELLOW_DYE, 2) + .output(.1f, Items.YELLOW_DYE, 2) + .output(.1f, Items.ORANGE_DYE) + .whenModLoaded(Mods.ATM.getId())), + + ATMO_YUCCA_FLOWER = create(Mods.ATM.recipeId("yucca_flower"), b -> b.duration(50) + .require(Mods.ATM, "yucca_flower") + .output(Items.LIGHT_GRAY_DYE, 2) + .output(.05f, Items.WHITE_DYE) + .whenModLoaded(Mods.ATM.getId())), + + // Autumnity + + AUTUM_CROCUS = create(Mods.AUTUM.recipeId("autumn_crocus"), b -> b.duration(50) + .require(Mods.AUTUM, "autumn_crocus") + .output(Items.MAGENTA_DYE, 2) + .output(.1f, Items.PINK_DYE, 2) + .output(.1f, Items.PURPLE_DYE) + .whenModLoaded(Mods.AUTUM.getId())), + + // Biomes O' Plenty + BOP_HYDRANGEA = bopFlower("blue_hydrangea", List.of(1f, .05f, .25f), + List.of(Items.LIGHT_BLUE_DYE, Items.GREEN_DYE, Items.LIGHT_BLUE_DYE), List.of(3,2,2)), + + BOP_BLOSSOM = bopFlower("burning_blossom", List.of(1f,.1f), + List.of(Items.ORANGE_DYE, Items.LIME_DYE), List.of(2,1)), + + BOP_GLOWFLOWER = bopFlower("glowflower", List.of(1f, .1f), + List.of(Items.CYAN_DYE, Items.WHITE_DYE), List.of(2,1)), + + BOP_LAVENDER = bopFlower("lavender", List.of(1f, .05f), + List.of(Items.PURPLE_DYE, Items.GREEN_DYE), List.of(2,1)), + + BOP_COSMOS = bopFlower("orange_cosmos", List.of(1f, .1f), + List.of(Items.ORANGE_DYE, Items.LIME_DYE), List.of(2,1)), + + BOP_DAFFODIL = bopFlower("pink_daffodil", List.of(1f, .25f, .05f), + List.of(Items.PINK_DYE, Items.MAGENTA_DYE, Items.CYAN_DYE), List.of(2,1,1)), + + BOP_HIBISCUS = bopFlower("pink_hibiscus", List.of(1f, .25f, .1f), + List.of(Items.PINK_DYE, Items.YELLOW_DYE, Items.GREEN_DYE), List.of(2,1,1)), + + BOP_ROSE = bopFlower("rose", List.of(1f, .05f), + List.of(Items.RED_DYE, Items.GREEN_DYE), List.of(2,1)), + + BOP_VIOLET = bopFlower("violet", 1f, Items.PURPLE_DYE,2), + + BOP_WILDFLOWER = bopFlower("wildflower", List.of(1f, .1f), + List.of(Items.MAGENTA_DYE, Items.LIME_DYE), List.of(2,1)), + + BOP_LILY = bopFlower("wilted_lily", 1f, Items.GRAY_DYE,2), + + // Botania + BTN_PETALS = botaniaPetals("black", "blue", "brown", "cyan", "gray", "green", "light_blue", + "light_gray", "lime", "magenta", "orange", "pink", "purple", "red", "white", "yellow"), + + // Buzzier Bees + + BB_BUTTERCUP = create(Mods.BB.recipeId("buttercup"), b -> b.duration(50) + .require(Mods.BB, "buttercup") + .output(Items.YELLOW_DYE, 2) + .output(.1f, Items.LIME_DYE) + .whenModLoaded(Mods.BB.getId())), + + BB_PINK_CLOVER = create(Mods.BB.recipeId("pink_clover"), b -> b.duration(50) + .require(Mods.BB, "buttercup") + .output(Items.PINK_DYE, 2) + .output(.1f, Items.LIME_DYE) + .whenModLoaded(Mods.BB.getId())), + + BB_WHITE_CLOVER = create(Mods.BB.recipeId("white_clover"), b -> b.duration(50) + .require(Mods.BB, "buttercup") + .output(Items.WHITE_DYE, 2) + .output(.1f, Items.LIME_DYE) + .whenModLoaded(Mods.BB.getId())), + + // Oh The Biomes You'll Go + + BYG_ALLIUM_BUSH = bygFlower("allium_flower_bush", List.of(1f,.05f,.25f), + List.of(Items.PURPLE_DYE, Items.GREEN_DYE, Items.MAGENTA_DYE), List.of(3,2,2)), + + BYG_BELLFLOWER = bygFlower("alpine_bellflower", List.of(1f,.1f,.1f), + List.of(Items.PURPLE_DYE, Items.BLUE_DYE, Items.GREEN_DYE), List.of(2,2,1)), + + BYG_AMARANTH = bygFlower("amaranth", List.of(1f,.05f,.25f), + List.of(Items.RED_DYE, Items.GREEN_DYE, Items.RED_DYE), List.of(3,2,2)), + + BYG_ANGELICA = bygFlower("angelica", List.of(1f,.1f), + List.of(Items.WHITE_DYE, Items.GREEN_DYE), List.of(2,1)), + + BYG_BEGONIA = bygFlower("begonia", List.of(1f,.1f), + List.of(Items.RED_DYE, Items.GREEN_DYE), List.of(2,1)), + + BYG_BISTORT = bygFlower("bistort", List.of(1f,.1f,.1f), + List.of(Items.PINK_DYE, Items.RED_DYE, Items.GREEN_DYE), List.of(2,2,1)), + + BYG_BLACK_ROSE = bygFlower("black_rose", List.of(1f,.1f), + List.of(Items.BLACK_DYE, Items.BLACK_DYE), List.of(2,1)), + + BYG_BLUE_SAGE = bygFlower("blue_sage", List.of(1f,.1f,.1f), + List.of(Items.BLUE_DYE, Items.CYAN_DYE, Items.GREEN_DYE), List.of(2,2,1)), + + BYG_CALIFORNIA_POPPY = bygFlower("california_poppy", List.of(1f,.05f), + List.of(Items.ORANGE_DYE, Items.GREEN_DYE), List.of(2,1)), + + BYG_CROCUS = bygFlower("crocus", List.of(1f,.1f,.1f), + List.of(Items.PURPLE_DYE, Items.BLUE_DYE, Items.GREEN_DYE), List.of(2,2,1)), + + BYG_CYAN_AMARANTH = bygFlower("cyan_amaranth", List.of(1f,.05f,.25f), + List.of(Items.RED_DYE, Items.GREEN_DYE, Items.RED_DYE), List.of(3,2,2)), + + BYG_CYAN_ROSE = bygFlower("cyan_rose", List.of(1f,.1f), + List.of(Items.CYAN_DYE, Items.GREEN_DYE), List.of(2,1)), + + BYG_CYAN_TULIP = bygFlower("cyan_tulip", List.of(1f,.1f), + List.of(Items.CYAN_DYE, Items.LIME_DYE), List.of(2,1)), + + BYG_DAFFODIL = bygFlower("daffodil", List.of(1f,.1f,.1f), + List.of(Items.PINK_DYE, Items.GREEN_DYE, Items.MAGENTA_DYE), List.of(2,1,1)), + + BYG_DELPHINIUM = bygFlower("delphinium", List.of(1f,.1f), + List.of(Items.BLUE_DYE, Items.BLUE_DYE), List.of(3,1)), + + BYG_FAIRY_SLIPPER = bygFlower("fairy_slipper", List.of(1f,.1f,.1f), + List.of(Items.MAGENTA_DYE, Items.PINK_DYE, Items.YELLOW_DYE), List.of(2,2,1)), + + BYG_FIRECRACKER_BUSH = bygFlower("firecracker_flower_bush", List.of(1f,.05f,.25f), + List.of(Items.PINK_DYE, Items.GREEN_DYE, Items.RED_DYE), List.of(3,2,2)), + + BYG_FOXGLOVE = bygFlower("foxglove", List.of(1f,.25f,.25f), + List.of(Items.MAGENTA_DYE, Items.PINK_DYE, Items.YELLOW_DYE), List.of(2,1,1)), + + BYG_GREEN_TULIP = bygFlower("green_tulip", List.of(1f,.1f), + List.of(Items.LIME_DYE, Items.GREEN_DYE), List.of(2,1)), + + BYG_GUZMANIA = bygFlower("guzmania", List.of(1f,.25f,.25f), + List.of(Items.MAGENTA_DYE, Items.PINK_DYE, Items.YELLOW_DYE), List.of(2,1,1)), + + BYG_HYDRANGEA = bygFlower("hydrangea_bush", List.of(1f,.1f,.1f), + List.of(Items.PURPLE_DYE, Items.BLUE_DYE, Items.WHITE_DYE), List.of(2,2,1)), + + BYG_INCAN_LILY = bygFlower("incan_lily", List.of(1f,.1f,.1f), + List.of(Items.ORANGE_DYE, Items.GREEN_DYE, Items.RED_DYE), List.of(2,1,1)), + + BYG_IRIS = bygFlower("iris", List.of(1f,.05f), + List.of(Items.PURPLE_DYE, Items.GREEN_DYE), List.of(2,1)), + + BYG_ORCHID = bygFlower("orchid", List.of(1f,.05f), + List.of(Items.PINK_DYE, Items.WHITE_DYE), List.of(2,1)), + + BYG_KOVAN = bygFlower("kovan_flower", List.of(1f,.2f,.05f), + List.of(Items.RED_DYE, Items.LIME_DYE, Items.GREEN_DYE), List.of(2,1,1)), + + BYG_LAZARUS_BELLFLOWER = bygFlower("lazarus_bellflower", List.of(1f,.1f), + List.of(Items.MAGENTA_DYE, Items.GREEN_DYE), List.of(2,1)), + + BYG_LOLIPOP = bygFlower("lolipop_flower", List.of(1f,.25f,.05f), + List.of(Items.YELLOW_DYE, Items.YELLOW_DYE, Items.GREEN_DYE), List.of(2,1,1)), + + BYG_MAGENTA_AMARANTH = bygFlower("magenta_amaranth", List.of(1f,.05f,.25f), + List.of(Items.MAGENTA_DYE, Items.GREEN_DYE, Items.MAGENTA_DYE), List.of(3,2,2)), + + BYG_MAGENTA_TULIP = bygFlower("magenta_tulip", List.of(1f,.1f), + List.of(Items.MAGENTA_DYE, Items.LIME_DYE), List.of(2,1)), + + BYG_ORANGE_AMARANTH = bygFlower("orange_amaranth", List.of(1f,.05f,.25f), + List.of(Items.RED_DYE, Items.GREEN_DYE, Items.RED_DYE), List.of(3,2,2)), + + BYG_DAISY = bygFlower("orange_daisy", List.of(1f,.2f,.05f), + List.of(Items.ORANGE_DYE, Items.YELLOW_DYE, Items.LIME_DYE), List.of(2,1,1)), + + BYG_OSIRIA_ROSE = bygFlower("osiria_rose", List.of(1f,.1f), + List.of(Items.BLACK_DYE, Items.BLACK_DYE), List.of(2,1)), + + BYG_PEACH_LEATHER = bygFlower("peach_leather_flower", List.of(1f,.25f), + List.of(Items.PINK_DYE, Items.GREEN_DYE), List.of(2,1)), + + BYG_PINK_ALLIUM = bygFlower("pink_allium", List.of(1f,.1f,.1f), + List.of(Items.MAGENTA_DYE, Items.PINK_DYE, Items.PURPLE_DYE), List.of(2,2,1)), + + BYG_PINK_ALLIUM_BUSH = bygFlower("pink_allium_flower_bush", List.of(1f,.05f,.25f), + List.of(Items.PURPLE_DYE, Items.GREEN_DYE, Items.MAGENTA_DYE), List.of(3,2,2)), + + BYG_PINK_ANEMONE = bygFlower("pink_anemone", List.of(1f,.1f), + List.of(Items.PINK_DYE, Items.PURPLE_DYE), List.of(2,2)), + + BYG_PINK_DAFODIL = bygFlower("pink_daffodil", List.of(1f,.1f,.1f), + List.of(Items.PINK_DYE, Items.GREEN_DYE, Items.WHITE_DYE), List.of(2,1,1)), + + BYG_PROTEA = bygFlower("protea_flower", List.of(1f,.1f,.05f), + List.of(Items.MAGENTA_DYE, Items.LIME_DYE, Items.PURPLE_DYE), List.of(2,1,1)), + + BYG_PURPLE_AMARANTH = bygFlower("purple_amaranth", List.of(1f,.05f,.25f), + List.of(Items.PURPLE_DYE, Items.GREEN_DYE, Items.PURPLE_DYE), List.of(3,2,2)), + + BYG_PURPLE_SAGE = bygFlower("purple_rose", List.of(1f,.1f), + List.of(Items.PURPLE_DYE, Items.MAGENTA_DYE), List.of(2,1)), + + BYG_PURPLE_TULIP = bygFlower("purple_tulip", List.of(1f,.1f), + List.of(Items.PURPLE_DYE, Items.LIME_DYE), List.of(2,1)), + + BYG_RICHEA = bygFlower("richea", List.of(1f,.1f,.05f), + List.of(Items.MAGENTA_DYE, Items.PINK_DYE, Items.YELLOW_DYE), List.of(2,1,1)), + + BYG_ROSE = bygFlower("rose", List.of(1f,.1f), + List.of(Items.RED_DYE, Items.GREEN_DYE), List.of(2,1)), + + BYG_SILVER_VASE = bygFlower("silver_vase_flower", List.of(1f,.1f,.05f), + List.of(Items.PINK_DYE, Items.GREEN_DYE, Items.WHITE_DYE), List.of(2,1,1)), + + BYG_SNOWDROPS = bygFlower("snowdrops", List.of(1f,.1f,.1f), + List.of(Items.WHITE_DYE, Items.LIME_DYE, Items.WHITE_DYE), List.of(2,1,1)), + + BYG_TALL_ALLIUM = bygFlower("tall_allium", List.of(1f,.05f,.25f), + List.of(Items.PURPLE_DYE, Items.PURPLE_DYE, Items.MAGENTA_DYE), List.of(3,2,2)), + + BYG_TALL_PINK_ALLIUM = bygFlower("tall_pink_allium", List.of(1f,.05f,.25f), + List.of(Items.PINK_DYE, Items.PINK_DYE, Items.MAGENTA_DYE), List.of(3,2,2)), + + BYG_TORCH_GINGER = bygFlower("torch_ginger", List.of(1f,.1f), + List.of(Items.RED_DYE, Items.GREEN_DYE), List.of(2,1)), + + BYG_VIOLET_LEATHER = bygFlower("violet_leather_flower", List.of(1f,.25f), + List.of(Items.BLUE_DYE, Items.GREEN_DYE), List.of(2,1)), + + BYG_WHITE_ANEMONE = bygFlower("white_anemone", List.of(1f,.1f), + List.of(Items.WHITE_DYE, Items.LIGHT_GRAY_DYE), List.of(2,2)), + + BYG_PUFFBALL = create(Mods.BYG.recipeId("white_puffball_cap"), b -> b.duration(150) + .require(Mods.BYG, "white_puffball_cap") + .output(.25f, Mods.BYG, "white_puffball_spores", 1) + .whenModLoaded(Mods.BYG.getId())), + + BYG_WHITE_SAGE = bygFlower(Mods.BYG.recipeId("white_sage"), List.of(1f, .1f), + List.of(Items.WHITE_DYE, Items.GRAY_DYE), List.of(2,1)), + + BYG_WINTER_CYCLAMEN = bygFlower(Mods.BYG.recipeId("winter_cyclamen"), List.of(1f, .1f), + List.of(Items.CYAN_DYE, Items.GREEN_DYE), List.of(2,1)), + + BYG_WINTER_ROSE = bygFlower("winter_rose", List.of(1f,.1f), + List.of(Items.WHITE_DYE, Items.GREEN_DYE), List.of(2,1)), + + BYG_WINTER_SCILLA = bygFlower("winter_scilla", List.of(1f,.1f), + List.of(Items.LIGHT_BLUE_DYE, Items.GREEN_DYE), List.of(2,1)), + + BYG_YELLOW_DAFFODIL = bygFlower("yellow_daffodil", List.of(1f,.1f,.1f), + List.of(Items.YELLOW_DYE, Items.GREEN_DYE, Items.PINK_DYE), List.of(2,1,1)), + + BYG_YELLOW_TULIP = bygFlower("yellow_tulip", List.of(1f,.1f), + List.of(Items.YELLOW_DYE, Items.LIME_DYE), List.of(2,1)), + + // Environmental + + ENV_BIRD_OF_PARADISE = envFlower("bird_of_paradise", List.of(1f,.25f,.25f), + List.of(Items.ORANGE_DYE, Items.BLUE_DYE, Items.RED_DYE), List.of(3,1,1)), + + ENV_BLUE_DELPHINIUM = envFlower("blue_delphinium", List.of(1f,.1f), + List.of(Items.BLUE_DYE, Items.BLUE_DYE), List.of(3,1)), + + ENV_BLUEBELL = envFlower("bluebell", List.of(1f), + List.of(Items.BLUE_DYE), List.of(2)), + + ENV_CARTWHEEL = envFlower("cartwheel", List.of(1f,.1f), + List.of(Items.PINK_DYE, Items.ORANGE_DYE), List.of(2,1)), + + ENV_DIANTHUS = envFlower("dianthus", List.of(1f,.1f), + List.of(Items.GREEN_DYE, Items.GREEN_DYE), List.of(2,1)), + + ENV_MAGENTA_HIBISCUS = envFlower("magenta_hibiscus", List.of(1f,.1f), + List.of(Items.MAGENTA_DYE, Items.MAGENTA_DYE), List.of(2,1)), + + ENV_ORANGE_HIBISCUS = envFlower("orange_hibiscus", List.of(1f,.1f), + List.of(Items.ORANGE_DYE, Items.ORANGE_DYE), List.of(2,1)), + + ENV_PINK_DELPHINIUM = envFlower("pink_delphinium", List.of(1f,.1f), + List.of(Items.PINK_DYE, Items.PINK_DYE), List.of(3,1)), + + ENV_PINK_HIBISCUS = envFlower("pink_hibiscus", List.of(1f,.1f), + List.of(Items.PINK_DYE, Items.PINK_DYE), List.of(2,1)), + + ENV_PURPLE_DELPHINIUM = envFlower("purple_delphinium", List.of(1f,.1f), + List.of(Items.PURPLE_DYE, Items.PURPLE_DYE), List.of(3,1)), + + ENV_PURPLE_HIBISCUS = envFlower("purple_hibiscus", List.of(1f,.1f), + List.of(Items.PURPLE_DYE, Items.PURPLE_DYE), List.of(2,1)), + + ENV_RED_HIBISCUS = envFlower("red_hibiscus", List.of(1f,.1f), + List.of(Items.RED_DYE, Items.RED_DYE), List.of(2,1)), + + ENV_RED_LOTUS = envFlower("red_lotus_flower", List.of(1f,.1f), + List.of(Items.RED_DYE, Items.RED_DYE), List.of(2,1)), + + ENV_VIOLET = envFlower("violet", List.of(1f,.1f), + List.of(Items.PURPLE_DYE, Items.PURPLE_DYE), List.of(2,1)), + + ENV_WHITE_DELPHINIUM = envFlower("white_delphinium", List.of(1f,.1f), + List.of(Items.WHITE_DYE, Items.WHITE_DYE), List.of(3,1)), + + ENV_WHITE_LOTUS_FLOWER = envFlower("white_lotus_flower", List.of(1f,.1f), + List.of(Items.WHITE_DYE, Items.LIME_DYE), List.of(2,1)), + + ENV_YELLOW_HIBISCUS = envFlower("yellow_hibiscus", List.of(1f,.1f), + List.of(Items.YELLOW_DYE, Items.YELLOW_DYE), List.of(2,1)), + + // Duidcraft + DC_LAVENDER = create(Mods.DRUIDCRAFT.recipeId("lavender"), b -> b.duration(50) + .require(Mods.DRUIDCRAFT, "lavender") + .output(Items.PURPLE_DYE, 2) + .output(.1f, Items.PURPLE_DYE) + .whenModLoaded(Mods.DRUIDCRAFT.getId())), + + // Supplementaries + SUP_FLAX = create(Mods.SUP.recipeId("flax"), b -> b.duration(150) + .require(Mods.SUP, "flax") + .output(Items.STRING) + .output(.25f, Items.STRING, 2) + .output(.25f, Mods.SUP, "flax_seeds", 1) + .whenModLoaded(Mods.SUP.getId())), + + // Tinkers' Construct + TIC_NERCOTIC_BONE = create(Mods.TIC.recipeId("nercotic_bone"), b -> b.duration(100) + .require(Mods.TIC, "necrotic_bone") + .output(Items.BONE_MEAL, 3) + .output(.25f, Items.BLACK_DYE) + .output(.25f, Items.BONE_MEAL, 3) + .whenModLoaded(Mods.TIC.getId())), + + // Upgrade Aquatic + + UA_FLOWERING_RUSH = create(Mods.UA.recipeId("flowering_rush"), b -> b.duration(50) + .require(Mods.UA, "flowering_rush") + .output(Items.PINK_DYE, 3) + .output(.25f, Items.PINK_DYE, 2) + .whenModLoaded(Mods.UA.getId())), + + UA_PINK_SEAROCKET = create(Mods.UA.recipeId("pink_searocket"), b -> b.duration(50) + .require(Mods.UA, "pink_searocket") + .output(Items.PINK_DYE, 2) + .output(.1f, Items.GREEN_DYE) + .whenModLoaded(Mods.UA.getId())), + + UA_WHITE_SEAROCKET = create(Mods.UA.recipeId("white_searocket"), b -> b.duration(50) + .require(Mods.UA, "white_searocket") + .output(Items.WHITE_DYE, 2) + .output(.1f, Items.GREEN_DYE) + .whenModLoaded(Mods.UA.getId())), + + // Regions Unexplored + + RU_ALPHA_DANDELION = ruFlower("alpha_dandelion", List.of(1f, 0.05f), + List.of(Items.YELLOW_DYE, Items.YELLOW_DYE), List.of(2, 1)), + + RU_ALPHA_ROSE = ruFlower("alpha_rose", List.of(1f, 0.05f), + List.of(Items.RED_DYE, Items.RED_DYE), List.of(2, 1)), + + RU_ASTER = ruFlower("aster", List.of(1f, 0.2f, 0.05f), + List.of(Items.LIGHT_BLUE_DYE, Items.WHITE_DYE, Items.LIGHT_GRAY_DYE), List.of(2, 1, 1)), + + RU_BLACK_SNOWBELLE = ruFlower("black_snowbelle", List.of(1f), + List.of(Items.BLACK_DYE), List.of(2)), + + RU_BLEEDING_HEART = ruFlower("bleeding_heart", List.of(1f, 0.1f), + List.of(Items.MAGENTA_DYE, Items.PINK_DYE), List.of(2, 1)), + + RU_BLUE_LUPINE = ruFlower("blue_lupine", List.of(1f), + List.of(Items.BLUE_DYE), List.of(2)), + + RU_BLUE_SNOWBELLE = ruFlower("blue_snowbelle", List.of(1f), + List.of(Items.BLUE_DYE), List.of(2)), + + RU_BROWN_SNOWBELLE = ruFlower("brown_snowbelle", List.of(1f), + List.of(Items.BROWN_DYE), List.of(2)), + + RU_CACTUS_FLOWER = ruFlower("cactus_flower", List.of(1f, 0.2f, 0.1f), + List.of(Items.MAGENTA_DYE, Items.PURPLE_DYE, Items.GREEN_DYE), List.of(2, 1, 1)), + + RU_CYAN_SNOWBELLE = ruFlower("cyan_snowbelle", List.of(1f), + List.of(Items.CYAN_DYE), List.of(2)), + + RU_DAISY = ruFlower("daisy", List.of(1f, 0.2f, 0.05f), + List.of(Items.LIGHT_GRAY_DYE, Items.WHITE_DYE, Items.YELLOW_DYE), List.of(2, 1, 1)), + + RU_DAY_LILY = ruFlower("day_lily", List.of(1f, 0.1f, 0.1f), + List.of(Items.ORANGE_DYE, Items.LIME_DYE, Items.RED_DYE), List.of(2, 1, 1)), + + RU_DORCEL = ruFlower("dorcel", List.of(1f, 0.1f), + List.of(Items.BLACK_DYE, Items.BROWN_DYE), List.of(2, 1)), + + RU_FELICIA_DAISY = ruFlower("felicia_daisy", List.of(1f, 0.2f, 0.05f), + List.of(Items.LIGHT_BLUE_DYE, Items.BLUE_DYE, Items.WHITE_DYE), List.of(2, 1, 1)), + + RU_FIREWEED = ruFlower("fireweed", List.of(1f), + List.of(Items.MAGENTA_DYE), List.of(2)), + + RU_GLITERING_BLOOM = ruFlower("glistering_bloom", List.of(1f, 0.25f, 0.25f), + List.of(Items.PINK_DYE, Items.MAGENTA_DYE, Items.LIGHT_BLUE_DYE), List.of(2, 1, 1)), + + RU_GRAY_SNOWBELLE = ruFlower("gray_snowbelle", List.of(1f), + List.of(Items.GRAY_DYE), List.of(2)), + + RU_GREEN_SNOWBELLE = ruFlower("green_snowbelle", List.of(1f), + List.of(Items.GREEN_DYE), List.of(2)), + + RU_HIBISCUS = ruFlower("hibiscus", List.of(1f, 0.2f), + List.of(Items.YELLOW_DYE, Items.RED_DYE), List.of(2, 1)), + + RU_HYSSOP = ruFlower("hyssop", List.of(1f, 0.1f, 0.1f), + List.of(Items.PURPLE_DYE, Items.MAGENTA_DYE, Items.GREEN_DYE), List.of(2, 1, 1)), + + RU_LIGHT_BLUE_SNOWBELLE = ruFlower("light_blue_snowbelle", List.of(1f), + List.of(Items.LIGHT_BLUE_DYE), List.of(2)), + + RU_LIGHT_GRAY_SNOWBELLE = ruFlower("light_gray_snowbelle", List.of(1f), + List.of(Items.LIGHT_GRAY_DYE), List.of(2)), + + RU_LIME_SNOWBELLE = ruFlower("lime_snowbelle", List.of(1f), + List.of(Items.LIME_DYE), List.of(2)), + + RU_MAGENTA_SNOWBELLE = ruFlower("magenta_snowbelle", List.of(1f), + List.of(Items.MAGENTA_DYE), List.of(2)), + + RU_MALLOW = ruFlower("mallow", List.of(1f, 0.1f), + List.of(Items.ORANGE_DYE, Items.LIME_DYE), List.of(2, 1)), + + RU_ORANGE_CONEFLOWER = ruFlower("orange_coneflower", List.of(1f), + List.of(Items.ORANGE_DYE), List.of(2)), + + RU_ORANGE_SNOWBELLE = ruFlower("orange_snowbelle", List.of(1f), + List.of(Items.ORANGE_DYE), List.of(2)), + + RU_PINK_LUPINE = ruFlower("pink_lupine", List.of(1f), + List.of(Items.PINK_DYE), List.of(2)), + + RU_PINK_SNOWBELLE = ruFlower("pink_snowbelle", List.of(1f), + List.of(Items.PINK_DYE), List.of(2)), + + RU_POPPY_BUSH = ruFlower("poppy_bush", List.of(1f, 0.1f), + List.of(Items.RED_DYE, Items.GREEN_DYE), List.of(2, 1)), + + RU_PURPLE_CONEFLOWER = ruFlower("purple_coneflower", List.of(1f), + List.of(Items.PURPLE_DYE), List.of(2)), + + RU_PURPLE_LUPINE = ruFlower("purple_lupine", List.of(1f), + List.of(Items.PURPLE_DYE), List.of(2)), + + RU_PURPLE_SNOWBELLE = ruFlower("purple_snowbelle", List.of(1f), + List.of(Items.PURPLE_DYE), List.of(2)), + + RU_RED_LUPINE = ruFlower("red_lupine", List.of(1f), + List.of(Items.RED_DYE), List.of(2)), + + RU_RED_SNOWBELLE = ruFlower("red_snowbelle", List.of(1f), + List.of(Items.RED_DYE), List.of(2)), + + RU_SALMON_POPPY_BUSH = ruFlower("salmon_poppy_bush", List.of(1f, 0.1f), + List.of(Items.PINK_DYE, Items.GREEN_DYE), List.of(2, 1)), + + RU_TASSEL = ruFlower("tassel", List.of(1f, 0.2f, 0.05f), + List.of(Items.LIGHT_GRAY_DYE, Items.WHITE_DYE, Items.YELLOW_DYE), List.of(2, 1, 1)), + + RU_TSUBAKI = ruFlower("tsubaki", List.of(1f, 0.1f), + List.of(Items.RED_DYE, Items.GREEN_DYE), List.of(2, 1)), + + RU_WARATAH = ruFlower("waratah", List.of(1f, 0.2f, 0.1f), + List.of(Items.RED_DYE, Items.RED_DYE, Items.GREEN_DYE), List.of(2, 1, 1)), + + RU_WHITE_SNOWBELLE = ruFlower("white_snowbelle", List.of(1f), + List.of(Items.WHITE_DYE), List.of(2)), + + RU_WHITE_TRILLIUM = ruFlower("white_trillium", List.of(1f, 0.2f, 0.05f), + List.of(Items.LIGHT_GRAY_DYE, Items.WHITE_DYE, Items.YELLOW_DYE), List.of(2, 1, 1)), + + RU_WILTING_TRILLIUM = ruFlower("wilting_trillium", List.of(1f, 0.1f), + List.of(Items.BROWN_DYE, Items.LIGHT_GRAY_DYE), List.of(2, 1)), + + RU_YELLOW_LUPINE = ruFlower("yellow_lupine", List.of(1f), + List.of(Items.YELLOW_DYE), List.of(2)), + + RU_YELLOW_SNOWBELLE = ruFlower("yellow_snowbelle", List.of(1f), + List.of(Items.YELLOW_DYE), List.of(2)) ; @@ -196,6 +730,123 @@ public class MillingRecipeGen extends ProcessingRecipeGen { .output(crushed.get())); } + protected GeneratedRecipe bopFlower(String input, List chances, + List dyes, List amounts) { + if (chances.size() == 2) { + return create(Mods.BOP.recipeId(input), b -> b.duration(50) + .require(Mods.BOP, input) + .output(chances.get(0), dyes.get(0), amounts.get(0)) + .output(chances.get(1), dyes.get(1), amounts.get(1)) + .whenModLoaded(Mods.BOP.getId())); + } else if (chances.size() == 3) { + return create(Mods.BOP.recipeId(input), b -> b.duration(50) + .require(Mods.BOP, input) + .output(chances.get(0), dyes.get(0), amounts.get(0)) + .output(chances.get(1), dyes.get(1), amounts.get(1)) + .output(chances.get(2), dyes.get(2), amounts.get(2)) + .whenModLoaded(Mods.BOP.getId())); + } else if (chances.size() == 1) { + return create(Mods.BOP.recipeId(input), b -> b.duration(50) + .require(Mods.BOP, input) + .output(chances.get(0), dyes.get(0), amounts.get(0)) + .whenModLoaded(Mods.BOP.getId())); + } else { + return null; + } + } + + protected GeneratedRecipe bygFlower(String input, List chances, + List dyes, List amounts) { + if (chances.size() == 2) { + return create(Mods.BYG.recipeId(input), b -> b.duration(50) + .require(Mods.BYG, input) + .output(chances.get(0), dyes.get(0), amounts.get(0)) + .output(chances.get(1), dyes.get(1), amounts.get(1)) + .whenModLoaded(Mods.BYG.getId())); + } else if (chances.size() == 3) { + return create(Mods.BYG.recipeId(input), b -> b.duration(50) + .require(Mods.BYG, input) + .output(chances.get(0), dyes.get(0), amounts.get(0)) + .output(chances.get(1), dyes.get(1), amounts.get(1)) + .output(chances.get(2), dyes.get(2), amounts.get(2)) + .whenModLoaded(Mods.BYG.getId())); + } else if (chances.size() == 1) { + return create(Mods.BYG.recipeId(input), b -> b.duration(50) + .require(Mods.BYG, input) + .output(chances.get(0), dyes.get(0), amounts.get(0)) + .whenModLoaded(Mods.BYG.getId())); + } else { + return null; + } + } + + protected GeneratedRecipe envFlower(String input, List chances, + List dyes, List amounts) { + if (chances.size() == 2) { + return create(Mods.ENV.recipeId(input), b -> b.duration(50) + .require(Mods.ENV, input) + .output(chances.get(0), dyes.get(0), amounts.get(0)) + .output(chances.get(1), dyes.get(1), amounts.get(1)) + .whenModLoaded(Mods.ENV.getId())); + } else if (chances.size() == 3) { + return create(Mods.ENV.recipeId(input), b -> b.duration(50) + .require(Mods.ENV, input) + .output(chances.get(0), dyes.get(0), amounts.get(0)) + .output(chances.get(1), dyes.get(1), amounts.get(1)) + .output(chances.get(2), dyes.get(2), amounts.get(2)) + .whenModLoaded(Mods.ENV.getId())); + } else if (chances.size() == 1) { + return create(Mods.ENV.recipeId(input), b -> b.duration(50) + .require(Mods.ENV, input) + .output(chances.get(0), dyes.get(0), amounts.get(0)) + .whenModLoaded(Mods.ENV.getId())); + } else { + return null; + } + } + + protected GeneratedRecipe bopFlower(String input, Float chance, Item dye, int amount) { + return create(Mods.BOP.recipeId(input), b -> b.duration(50) + .require(Mods.BOP, input) + .output(chance, dye, amount) + .whenModLoaded(Mods.BOP.getId())); + } + + protected GeneratedRecipe botaniaPetals(String... colors) { + for (String color : colors) { + create(Mods.BTN.recipeId(color + "_petal"), b -> b.duration(50) + .require(AllTags.optionalTag(ForgeRegistries.ITEMS, + new ResourceLocation(Mods.BTN.getId(), "petals/" + color))) + .output(Mods.MC, color + "_dye")); + } + return null; + } + + protected GeneratedRecipe ruFlower(String input, List chances, + List dyes, List amounts) { + if (chances.size() == 2) { + return create(Mods.RU.recipeId(input), b -> b.duration(50) + .require(Mods.RU, input) + .output(chances.get(0), dyes.get(0), amounts.get(0)) + .output(chances.get(1), dyes.get(1), amounts.get(1)) + .whenModLoaded(Mods.RU.getId())); + } else if (chances.size() == 3) { + return create(Mods.RU.recipeId(input), b -> b.duration(50) + .require(Mods.RU, input) + .output(chances.get(0), dyes.get(0), amounts.get(0)) + .output(chances.get(1), dyes.get(1), amounts.get(1)) + .output(chances.get(2), dyes.get(2), amounts.get(2)) + .whenModLoaded(Mods.RU.getId())); + } else if (chances.size() == 1) { + return create(Mods.RU.recipeId(input), b -> b.duration(50) + .require(Mods.RU, input) + .output(chances.get(0), dyes.get(0), amounts.get(0)) + .whenModLoaded(Mods.RU.getId())); + } else { + return null; + } + } + public MillingRecipeGen(PackOutput output) { super(output); } diff --git a/src/main/java/com/simibubi/create/foundation/data/recipe/MixingRecipeGen.java b/src/main/java/com/simibubi/create/foundation/data/recipe/MixingRecipeGen.java index 3a5268469..fc73fbd02 100644 --- a/src/main/java/com/simibubi/create/foundation/data/recipe/MixingRecipeGen.java +++ b/src/main/java/com/simibubi/create/foundation/data/recipe/MixingRecipeGen.java @@ -61,10 +61,32 @@ public class MixingRecipeGen extends ProcessingRecipeGen { MUD = create("mud_by_mixing", b -> b.require(BlockTagIngredient.create(BlockTags.CONVERTABLE_TO_MUD)) .require(Fluids.WATER, 250) - .output(Blocks.MUD, 1)) + .output(Blocks.MUD, 1)), + + // AE2 + + AE2_FLUIX = create(Mods.AE2.recipeId("fluix_crystal"), b -> b.require(Tags.Items.DUSTS_REDSTONE) + .require(Fluids.WATER, 250) + .require(Mods.AE2, "charged_certus_quartz_crystal") + .require(Tags.Items.GEMS_QUARTZ) + .output(1f, Mods.AE2, "fluix_crystal", 2) + .whenModLoaded(Mods.AE2.getId())), + + // Regions Unexplored + + RU_PEAT_MUD = moddedMud(Mods.RU, "peat"), + RU_SILT_MUD = moddedMud(Mods.RU, "silt") ; + public GeneratedRecipe moddedMud(Mods mod, String name) { + String mud = name + "_mud"; + return create(mod.recipeId(mud), b -> b.require(Fluids.WATER, 250) + .require(mod, name + "_dirt") + .output(mod, mud) + .whenModLoaded(mod.getId())); + } + public MixingRecipeGen(PackOutput output) { super(output); } diff --git a/src/main/java/com/simibubi/create/foundation/data/recipe/Mods.java b/src/main/java/com/simibubi/create/foundation/data/recipe/Mods.java index 5646fb6d9..485e9fac2 100644 --- a/src/main/java/com/simibubi/create/foundation/data/recipe/Mods.java +++ b/src/main/java/com/simibubi/create/foundation/data/recipe/Mods.java @@ -9,7 +9,6 @@ public enum Mods { MEK("mekanism", b -> b.reverseMetalPrefix()), TH("thermal"), IE("immersiveengineering", b -> b.reverseMetalPrefix()), - FD("farmersdelight"), ARS_N("ars_nouveau"), BSK("blue_skies"), @@ -25,13 +24,39 @@ public enum Mods { BOP("biomesoplenty"), TF("twilightforest"), ECO("ecologics"), - - ENV("environmental"), + IC2("ic2", b -> b.reverseMetalPrefix()), ATM("atmospheric"), ATM_2("atmospheric", b -> b.omitWoodSuffix()), + AUTUM("autumnity"), + DRUIDCRAFT("druidcraft"), + ENDER("endergetic"), + PVJ("projectvibrantjourneys"), + UA("upgrade_aquatic"), + BEF("betterendforge"), + ENV("environmental"), + SUP("supplementaries"), + AM("alexsmobs"), + NEA("neapolitan"), + AE2("ae2"), + MC("minecraft"), + BB("buzzier_bees"), + SILENT_GEMS("silentgems"), + SF("simplefarming"), + OREGANIZED("oreganized"), + GS("galosphere"), + VH("the_vault"), IX("infernalexp"), GOOD("goodending"), - BMK("biomemakeover") + BMK("biomemakeover"), + NE("nethers_exoticism"), + RU("regions_unexplored"), + EO("elementaryores"), + IF("iceandfire"), + ENS("exnihilosequentia"), + AET("aether"), + HH("hauntedharvest"), + VMP("vampirism") + ; private final String id; @@ -69,7 +94,7 @@ public enum Mods { public ResourceLocation asResource(String id) { return new ResourceLocation(this.id, id); } - + public String recipeId(String id) { return "compat/" + this.id + "/" + id; } diff --git a/src/main/java/com/simibubi/create/foundation/data/recipe/PressingRecipeGen.java b/src/main/java/com/simibubi/create/foundation/data/recipe/PressingRecipeGen.java index c6fe72e71..50ba421e5 100644 --- a/src/main/java/com/simibubi/create/foundation/data/recipe/PressingRecipeGen.java +++ b/src/main/java/com/simibubi/create/foundation/data/recipe/PressingRecipeGen.java @@ -6,6 +6,7 @@ import com.simibubi.create.AllRecipeTypes; import net.minecraft.data.PackOutput; import net.minecraft.world.item.Items; import net.minecraft.world.item.crafting.Ingredient; +import net.minecraft.world.level.block.Blocks; public class PressingRecipeGen extends ProcessingRecipeGen { @@ -23,10 +24,92 @@ public class PressingRecipeGen extends ProcessingRecipeGen { COPPER = create("copper_ingot", b -> b.require(I.copper()) .output(AllItems.COPPER_SHEET.get())), BRASS = create("brass_ingot", b -> b.require(I.brass()) - .output(AllItems.BRASS_SHEET.get())) + .output(AllItems.BRASS_SHEET.get())), + + // Atmospheric + ATM = moddedPaths(Mods.ATM, "crustose"), + + // Better End Forge + + BEF = moddedPaths(Mods.BEF, "amber_moss", "cave_moss", "chorus_nylium", "crystal_moss", + "end_moss", "end_myclium", "jungle_moss", "pink_moss", "shadow_grass"), + // Environmental + ENV_MYCELIUM = create("compat/environmental/mycelium_path", b -> b.require(Blocks.MYCELIUM) + .output(Mods.ENV, "mycelium_path") + .whenModLoaded(Mods.ENV.getId())), + + ENV_PODZOL = create("compat/environmental/podzol_path", b -> b.require(Blocks.PODZOL) + .output(Mods.ENV, "podzol_path") + .whenModLoaded(Mods.ENV.getId())), + + // Oh The Biomes You'll Go + + BYG = moddedPaths(Mods.BYG, "lush_grass"), + + //Infernal Expansion + IX_CRIMSON_PATH = create(Mods.IX.recipeId("crimson_nylium_path"), b -> b.require(Blocks.CRIMSON_NYLIUM) + .output(Mods.IX, "crimson_nylium_path") + .whenModLoaded(Mods.IX.getId())), + + IX_WARPED_PATH = create(Mods.IX.recipeId("warped_nylium_path"), b -> b.require(Blocks.WARPED_NYLIUM) + .output(Mods.IX, "warped_nylium_path") + .whenModLoaded(Mods.IX.getId())), + IX_SOUL_PATH = create(Mods.IX.recipeId("soul_soil_path"), b -> b.require(Blocks.SOUL_SOIL) + .output(Mods.IX, "soul_soil_path") + .whenModLoaded(Mods.IX.getId())), + + // Aether + + AET_DIRT_PATH = create("aether_dirt_path", b -> b.require(Mods.AET, "aether_dirt") + .output(Mods.AET, "aether_dirt_path") + .whenModLoaded(Mods.AET.getId())), + + AET_DIRT_PATH_GRASS = create("aether_dirt_path_from_grass", b -> b.require(Mods.AET, "aether_grass_block") + .output(Mods.AET, "aether_dirt_path") + .whenModLoaded(Mods.AET.getId())), + + // Regions Unexplored + + RU_PEAT_PATH = create("peat_dirt_path", b -> b.require(Mods.RU, "peat_dirt") + .output(Mods.RU, "peat_dirt_path") + .whenModLoaded(Mods.RU.getId())), + + RU_PEAT_PATH_GRASS = create("peat_dirt_path_from_grass", b -> b.require(Mods.RU, "peat_grass_block") + .output(Mods.RU, "peat_dirt_path") + .whenModLoaded(Mods.RU.getId())), + + RU_SILT_PATH = create("silt_dirt_path", b -> b.require(Mods.RU, "silt_dirt") + .output(Mods.RU, "silt_dirt_path") + .whenModLoaded(Mods.RU.getId())), + + RU_SILT_PATH_GRASS = create("silt_dirt_path_from_grass", b -> b.require(Mods.RU, "silt_grass_block") + .output(Mods.RU, "silt_dirt_path") + .whenModLoaded(Mods.RU.getId())), + + // Vampirism + + VMP_CURSED_PATH = moddedPaths(Mods.VMP, "cursed_earth"), + + VMP_CURSED_PATH_GRASS = create("cursed_earth_path_from_grass", b -> b.require(Mods.RU, "cursed_grass") + .output(Mods.VMP, "cursed_earth_path") + .whenModLoaded(Mods.VMP.getId())) + ; + GeneratedRecipe moddedPaths(Mods mod, String... blocks) { + for(String block : blocks) { + moddedCompacting(mod, block, block + "_path"); + } + return null; + } + + GeneratedRecipe moddedCompacting(Mods mod, String input, String output) { + return create("compat/" + mod.getId() + "/" + output, b -> b.require(mod, input) + .output(mod, output) + .whenModLoaded(mod.getId())); + } + public PressingRecipeGen(PackOutput output) { super(output); } diff --git a/src/main/java/com/simibubi/create/foundation/data/recipe/SequencedAssemblyRecipeGen.java b/src/main/java/com/simibubi/create/foundation/data/recipe/SequencedAssemblyRecipeGen.java index fc0b03976..2c28d18e5 100644 --- a/src/main/java/com/simibubi/create/foundation/data/recipe/SequencedAssemblyRecipeGen.java +++ b/src/main/java/com/simibubi/create/foundation/data/recipe/SequencedAssemblyRecipeGen.java @@ -5,6 +5,7 @@ import java.util.stream.Stream; import com.simibubi.create.AllBlocks; import com.simibubi.create.AllItems; +import com.simibubi.create.AllTags; import com.simibubi.create.AllTags.AllItemTags; import com.simibubi.create.Create; import com.simibubi.create.content.fluids.transfer.FillingRecipe; @@ -51,7 +52,7 @@ public class SequencedAssemblyRecipeGen extends CreateRecipeProvider { .addStep(DeployerApplicationRecipe::new, rb -> rb.require(I.largeCog())) .addStep(DeployerApplicationRecipe::new, rb -> rb.require(I.ironNugget()))), - REINFORCED_SHEET = create("sturdy_sheet", b -> b.require(AllItems.POWDERED_OBSIDIAN.get()) + REINFORCED_SHEET = create("sturdy_sheet", b -> b.require(AllItemTags.OBSIDIAN_DUST.tag) .transitionTo(AllItems.INCOMPLETE_REINFORCED_SHEET.get()) .addOutput(AllItems.STURDY_SHEET.get(), 1) .loops(1) diff --git a/src/main/java/com/simibubi/create/foundation/data/recipe/StandardRecipeGen.java b/src/main/java/com/simibubi/create/foundation/data/recipe/StandardRecipeGen.java index 99178a5dd..259d26b8e 100644 --- a/src/main/java/com/simibubi/create/foundation/data/recipe/StandardRecipeGen.java +++ b/src/main/java/com/simibubi/create/foundation/data/recipe/StandardRecipeGen.java @@ -802,6 +802,13 @@ public class StandardRecipeGen extends CreateRecipeProvider { .pattern("CBC") .pattern(" C ")), + VERTICAL_GEARBOX = create(AllItems.VERTICAL_GEARBOX).unlockedBy(I::cog) + .viaShaped(b -> b.define('C', I.cog()) + .define('B', I.andesiteCasing()) + .pattern("C C") + .pattern(" B ") + .pattern("C C")), + GEARBOX_CYCLE = conversionCycle(ImmutableList.of(AllBlocks.GEARBOX, AllItems.VERTICAL_GEARBOX)), MYSTERIOUS_CUCKOO_CLOCK = create(AllBlocks.MYSTERIOUS_CUCKOO_CLOCK).unlockedBy(AllBlocks.CUCKOO_CLOCK::get) @@ -1168,7 +1175,12 @@ public class StandardRecipeGen extends CreateRecipeProvider { RAW_ZINC_ORE = create(AllItems.ZINC_INGOT::get).withSuffix("_from_raw_ore") .viaCooking(AllItems.RAW_ZINC::get) .rewardXP(.7f) - .inBlastFurnace() + .inBlastFurnace(), + + UA_TREE_FERTILIZER = create(AllItems.TREE_FERTILIZER::get).returns(2) + .whenModLoaded(Mods.UA.getId()).unlockedBy(() -> Items.BONE_MEAL) + .viaShapeless(b -> b.requires(Ingredient.of(ItemTags.SMALL_FLOWERS), 2) + .requires(AllItemTags.UA_CORAL.tag).requires(Items.BONE_MEAL)) ; diff --git a/src/main/java/com/simibubi/create/foundation/data/recipe/WashingRecipeGen.java b/src/main/java/com/simibubi/create/foundation/data/recipe/WashingRecipeGen.java index b055a798c..a90bd5d74 100644 --- a/src/main/java/com/simibubi/create/foundation/data/recipe/WashingRecipeGen.java +++ b/src/main/java/com/simibubi/create/foundation/data/recipe/WashingRecipeGen.java @@ -82,8 +82,44 @@ public class WashingRecipeGen extends ProcessingRecipeGen { BLACK_CONCRETE = convert(Blocks.BLACK_CONCRETE_POWDER, Blocks.BLACK_CONCRETE), FLOUR = create("wheat_flour", b -> b.require(I.wheatFlour()) - .output(AllItems.DOUGH.get())) + .output(AllItems.DOUGH.get())), + // Atmospheric + ATMO_SAND = create("atmospheric/arid_sand", b -> b.require(Mods.ATM, "arid_sand") + .output(.25f, Items.CLAY_BALL, 1) + .output(0.05f, Mods.ATM, "aloe_kernels", 1) + .whenModLoaded(Mods.ATM.getId())), + + ATMO_RED_SAND = create("atmospheric/red_arid_sand", b -> b.require(Mods.ATM, "red_arid_sand") + .output(.125f, Items.CLAY_BALL, 4) + .output(0.05f, Mods.ATM, "aloe_kernels", 1) + .whenModLoaded(Mods.ATM.getId())), + + // Oh The Biomes You'll Go + + BYG = create("byg/cryptic_magma_block", b -> b.require(Mods.BYG, "cryptic_magma_block") + .output(Blocks.OBSIDIAN).whenModLoaded(Mods.BYG.getId())), + + // Endergetic + + ENDER_END = simpleModded(Mods.ENDER, "end_corrock", "petrified_end_corrock"), + ENDER_END_BLOCK = simpleModded(Mods.ENDER, "end_corrock_block", "petrified_end_corrock_block"), + ENDER_END_CROWN = simpleModded(Mods.ENDER, "end_corrock_crown", "petrified_end_corrock_crown"), + ENDER_NETHER = simpleModded(Mods.ENDER, "nether_corrock", "petrified_nether_corrock"), + ENDER_NETHER_BLOCK = simpleModded(Mods.ENDER, "nether_corrock_block", "petrified_nether_corrock_block"), + ENDER_NETHER_CROWN = simpleModded(Mods.ENDER, "nether_corrock_crown", "petrified_nether_corrock_crown"), + ENDER_OVERWORLD = simpleModded(Mods.ENDER, "overworld_corrock", "petrified_overworld_corrock"), + ENDER_OVERWORLD_BLOCK = simpleModded(Mods.ENDER, "overworld_corrock_block", "petrified_overworld_corrock_block"), + ENDER_OVERWORLD_CROWN = simpleModded(Mods.ENDER, "overworld_corrock_crown", "petrified_overworld_corrock_crown"), + + // Quark + Q = simpleModded(Mods.Q, "iron_plate", "rusty_iron_plate"), + + // Supplementaries + SUP = simpleModded(Mods.SUP, "blackboard", "blackboard"), + + //Vault Hunters + VH = simpleModded(Mods.VH, "ornate_chain", "ornate_chain_rusty") ; public GeneratedRecipe convert(Block block, Block result) { @@ -109,6 +145,11 @@ public class WashingRecipeGen extends ProcessingRecipeGen { return null; } + public GeneratedRecipe simpleModded(Mods mod, String input, String output) { + return create(mod.getId() + "/" + output, b -> b.require(mod, input) + .output(mod, output).whenModLoaded(mod.getId())); + } + public WashingRecipeGen(PackOutput output) { super(output); } diff --git a/src/main/java/com/simibubi/create/foundation/events/ClientEvents.java b/src/main/java/com/simibubi/create/foundation/events/ClientEvents.java index c83d5522f..ab5fcd6d3 100644 --- a/src/main/java/com/simibubi/create/foundation/events/ClientEvents.java +++ b/src/main/java/com/simibubi/create/foundation/events/ClientEvents.java @@ -6,6 +6,7 @@ import com.simibubi.create.AllPackets; import com.simibubi.create.Create; import com.simibubi.create.CreateClient; import com.simibubi.create.content.contraptions.ContraptionHandler; +import com.simibubi.create.content.contraptions.actors.seat.ContraptionPlayerPassengerRotation; import com.simibubi.create.content.contraptions.actors.trainControls.ControlsHandler; import com.simibubi.create.content.contraptions.chassis.ChassisRangeDisplay; import com.simibubi.create.content.contraptions.minecart.CouplingHandlerClient; @@ -172,6 +173,7 @@ public class ClientEvents { CreateClient.VALUE_SETTINGS_HANDLER.tick(); ScrollValueHandler.tick(); NetheriteBacktankFirstPersonRenderer.clientTick(); + ContraptionPlayerPassengerRotation.tick(); } @SubscribeEvent @@ -227,6 +229,8 @@ public class ClientEvents { buffer.draw(); RenderSystem.enableCull(); ms.popPose(); + + ContraptionPlayerPassengerRotation.frame(); } @SubscribeEvent diff --git a/src/main/java/com/simibubi/create/foundation/fluid/FluidHelper.java b/src/main/java/com/simibubi/create/foundation/fluid/FluidHelper.java index 0d4f98f47..e00cbd7d3 100644 --- a/src/main/java/com/simibubi/create/foundation/fluid/FluidHelper.java +++ b/src/main/java/com/simibubi/create/foundation/fluid/FluidHelper.java @@ -53,6 +53,14 @@ public class FluidHelper { public static boolean isLava(Fluid fluid) { return convertToStill(fluid) == Fluids.LAVA; } + + public static boolean isSame(FluidStack fluidStack, FluidStack fluidStack2) { + return fluidStack.getFluid() == fluidStack2.getFluid(); + } + + public static boolean isSame(FluidStack fluidStack, Fluid fluid) { + return fluidStack.getFluid() == fluid; + } @SuppressWarnings("deprecation") public static boolean isTag(Fluid fluid, TagKey tag) { diff --git a/src/main/java/com/simibubi/create/foundation/fluid/FluidIngredient.java b/src/main/java/com/simibubi/create/foundation/fluid/FluidIngredient.java index 2a342b681..ce69e7579 100644 --- a/src/main/java/com/simibubi/create/foundation/fluid/FluidIngredient.java +++ b/src/main/java/com/simibubi/create/foundation/fluid/FluidIngredient.java @@ -152,8 +152,7 @@ public abstract class FluidIngredient implements Predicate { @Override protected boolean testInternal(FluidStack t) { - if (!t.getFluid() - .isSame(fluid)) + if (!FluidHelper.isSame(t, fluid)) return false; if (tagToMatch.isEmpty()) return true; @@ -201,17 +200,14 @@ public abstract class FluidIngredient implements Predicate { protected TagKey tag; - @SuppressWarnings("deprecation") @Override protected boolean testInternal(FluidStack t) { - if (tag == null) { - for (FluidStack accepted : getMatchingFluidStacks()) - if (accepted.getFluid() - .isSame(t.getFluid())) - return true; - return false; - } - return t.getFluid().is(tag); + if (tag != null) + return FluidHelper.isTag(t, tag); + for (FluidStack accepted : getMatchingFluidStacks()) + if (FluidHelper.isSame(accepted, t)) + return true; + return false; } @Override diff --git a/src/main/java/com/simibubi/create/foundation/gui/RemovedGuiUtils.java b/src/main/java/com/simibubi/create/foundation/gui/RemovedGuiUtils.java index 4031e0f0f..8b582f290 100644 --- a/src/main/java/com/simibubi/create/foundation/gui/RemovedGuiUtils.java +++ b/src/main/java/com/simibubi/create/foundation/gui/RemovedGuiUtils.java @@ -185,14 +185,14 @@ public class RemovedGuiUtils { for (int lineNumber = 0; lineNumber < list.size(); ++lineNumber) { ClientTooltipComponent line = list.get(lineNumber); - + if (line != null) line.renderText(font, tooltipX, tooltipY, mat, renderType); if (lineNumber + 1 == titleLinesCount) tooltipY += 2; - tooltipY += 10; + tooltipY += line == null ? 10 : line.getHeight(); } renderType.endBatch(); diff --git a/src/main/java/com/simibubi/create/foundation/item/TooltipHelper.java b/src/main/java/com/simibubi/create/foundation/item/TooltipHelper.java index e8611df71..1d2f4e217 100644 --- a/src/main/java/com/simibubi/create/foundation/item/TooltipHelper.java +++ b/src/main/java/com/simibubi/create/foundation/item/TooltipHelper.java @@ -6,7 +6,6 @@ import java.util.LinkedList; import java.util.List; import com.google.common.base.Strings; -import com.simibubi.create.content.equipment.goggles.IHaveGoggleInformation; import com.simibubi.create.foundation.utility.Components; import com.simibubi.create.foundation.utility.Couple; import com.simibubi.create.foundation.utility.Lang; @@ -29,15 +28,11 @@ public class TooltipHelper { } public static void addHint(List tooltip, String hintKey, Object... messageParams) { - Component spacing = IHaveGoggleInformation.componentSpacing; - tooltip.add(spacing.plainCopy() - .append(Lang.translateDirect(hintKey + ".title")) - .withStyle(ChatFormatting.GOLD)); + Lang.translate(hintKey + ".title").style(ChatFormatting.GOLD).forGoggles(tooltip); Component hint = Lang.translateDirect(hintKey); List cutComponent = cutTextComponent(hint, Palette.GRAY_AND_WHITE); for (Component component : cutComponent) - tooltip.add(spacing.plainCopy() - .append(component)); + Lang.text(component.getString()).forGoggles(tooltip); } public static String makeProgressBar(int length, int filledLength) { @@ -53,7 +48,7 @@ public class TooltipHelper { public static Style styleFromColor(ChatFormatting color) { return Style.EMPTY.applyFormat(color); } - + public static Style styleFromColor(int hex) { return Style.EMPTY.withColor(hex); } diff --git a/src/main/java/com/simibubi/create/foundation/mixin/accessor/MouseHandlerAccessor.java b/src/main/java/com/simibubi/create/foundation/mixin/accessor/MouseHandlerAccessor.java new file mode 100644 index 000000000..d837c06f0 --- /dev/null +++ b/src/main/java/com/simibubi/create/foundation/mixin/accessor/MouseHandlerAccessor.java @@ -0,0 +1,16 @@ +package com.simibubi.create.foundation.mixin.accessor; + +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Accessor; + +import net.minecraft.client.MouseHandler; + +@Mixin(MouseHandler.class) +public interface MouseHandlerAccessor { + + @Accessor("xpos") + void create$setXPos(double xPos); + + @Accessor("ypos") + void create$setYPos(double yPos); +} diff --git a/src/main/java/com/simibubi/create/foundation/mixin/client/EntityContraptionInteractionMixin.java b/src/main/java/com/simibubi/create/foundation/mixin/client/EntityContraptionInteractionMixin.java index 140217272..9797c89cb 100644 --- a/src/main/java/com/simibubi/create/foundation/mixin/client/EntityContraptionInteractionMixin.java +++ b/src/main/java/com/simibubi/create/foundation/mixin/client/EntityContraptionInteractionMixin.java @@ -7,7 +7,6 @@ import java.util.stream.Stream; import org.apache.commons.lang3.mutable.MutableBoolean; import org.apache.logging.log4j.util.TriConsumer; -import org.objectweb.asm.Opcodes; import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; @@ -82,7 +81,7 @@ public abstract class EntityContraptionInteractionMixin extends CapabilityProvid } @Unique - private void forCollision(Vec3 worldPos, TriConsumer action) { + private void create$forCollision(Vec3 worldPos, TriConsumer action) { create$getIntersectingContraptions().forEach(cEntity -> { Vec3 localPos = ContraptionCollider.worldToLocalPos(worldPos, cEntity); @@ -100,12 +99,12 @@ public abstract class EntityContraptionInteractionMixin extends CapabilityProvid // involves block step sounds on contraptions // IFNE line 661 injecting before `!blockstate.isAir(this.world, blockpos)` - @Inject(method = "move", at = @At(value = "JUMP", opcode = Opcodes.IFNE, ordinal = 7)) + @Inject(method = "move", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/block/state/BlockState;isAir()Z", ordinal = 0)) private void create$contraptionStepSounds(MoverType mover, Vec3 movement, CallbackInfo ci) { Vec3 worldPos = position.add(0, -0.2, 0); MutableBoolean stepped = new MutableBoolean(false); - forCollision(worldPos, (contraption, state, pos) -> { + create$forCollision(worldPos, (contraption, state, pos) -> { playStepSound(pos, state); stepped.setTrue(); }); @@ -136,7 +135,7 @@ public abstract class EntityContraptionInteractionMixin extends CapabilityProvid if (info == null) return false; - + cEntity.registerColliding(self); return true; }); @@ -155,7 +154,7 @@ public abstract class EntityContraptionInteractionMixin extends CapabilityProvid Vec3 worldPos = position.add(0, -0.2, 0); BlockPos particlePos = BlockPos.containing(worldPos); // pos where particles are spawned - forCollision(worldPos, (contraption, state, pos) -> { + create$forCollision(worldPos, (contraption, state, pos) -> { if (!state.addRunningEffects(level, pos, self) && state.getRenderShape() != RenderShape.INVISIBLE) { Vec3 speed = self.getDeltaMovement(); diff --git a/src/main/java/com/simibubi/create/foundation/ponder/PonderTooltipHandler.java b/src/main/java/com/simibubi/create/foundation/ponder/PonderTooltipHandler.java index da157497d..1e7b8189a 100644 --- a/src/main/java/com/simibubi/create/foundation/ponder/PonderTooltipHandler.java +++ b/src/main/java/com/simibubi/create/foundation/ponder/PonderTooltipHandler.java @@ -4,6 +4,7 @@ import java.util.List; import com.google.common.base.Strings; import com.mojang.blaze3d.platform.InputConstants; +import com.simibubi.create.AllKeys; import com.simibubi.create.foundation.gui.ScreenOpener; import com.simibubi.create.foundation.item.ItemHelper; import com.simibubi.create.foundation.ponder.ui.NavigatableSimiScreen; @@ -29,7 +30,7 @@ public class PonderTooltipHandler { public static boolean enable = true; - static LerpedFloat holdWProgress = LerpedFloat.linear() + static LerpedFloat holdKeyProgress = LerpedFloat.linear() .startWithValue(0); static ItemStack hoveredStack = ItemStack.EMPTY; static ItemStack trackingStack = ItemStack.EMPTY; @@ -50,11 +51,11 @@ public class PonderTooltipHandler { if (hoveredStack.isEmpty() || trackingStack.isEmpty()) { trackingStack = ItemStack.EMPTY; - holdWProgress.startWithValue(0); + holdKeyProgress.startWithValue(0); return; } - float value = holdWProgress.getValue(); + float value = holdKeyProgress.getValue(); int keyCode = ponderKeybind().getKey() .getValue(); long window = instance.getWindow() @@ -65,12 +66,12 @@ public class PonderTooltipHandler { if (currentScreen instanceof NavigatableSimiScreen) ((NavigatableSimiScreen) currentScreen).centerScalingOnMouse(); ScreenOpener.transitionTo(PonderUI.of(trackingStack)); - holdWProgress.startWithValue(0); + holdKeyProgress.startWithValue(0); return; } - holdWProgress.setValue(Math.min(1, value + Math.max(.25f, value) * .25f)); + holdKeyProgress.setValue(Math.min(1, value + Math.max(.25f, value) * .25f)); } else - holdWProgress.setValue(Math.max(0, value - .05f)); + holdKeyProgress.setValue(Math.max(0, value - .05f)); hoveredStack = ItemStack.EMPTY; } @@ -93,7 +94,7 @@ public class PonderTooltipHandler { .getFrameTime(); Component component = subject ? Lang.translateDirect(SUBJECT) .withStyle(ChatFormatting.GREEN) - : makeProgressBar(Math.min(1, holdWProgress.getValue(renderPartialTicks) * 8 / 7f)); + : makeProgressBar(Math.min(1, holdKeyProgress.getValue(renderPartialTicks) * 8 / 7f)); List tooltip = event.getToolTip(); if (tooltip.size() < 2) tooltip.add(component); @@ -122,7 +123,7 @@ public class PonderTooltipHandler { return; if (prevStack.isEmpty() || !ItemHelper.sameItem(prevStack, stack)) - holdWProgress.startWithValue(0); + holdKeyProgress.startWithValue(0); hoveredStack = stack; trackingStack = stack; @@ -131,13 +132,13 @@ public class PonderTooltipHandler { public static void handleTooltipColor(RenderTooltipEvent.Color event) { if (trackingStack != event.getItemStack()) return; - if (holdWProgress.getValue() == 0) + if (holdKeyProgress.getValue() == 0) return; float renderPartialTicks = Minecraft.getInstance() .getFrameTime(); int start = event.getOriginalBorderStart(); int end = event.getOriginalBorderEnd(); - float progress = Math.min(1, holdWProgress.getValue(renderPartialTicks) * 8 / 7f); + float progress = Math.min(1, holdKeyProgress.getValue(renderPartialTicks) * 8 / 7f); start = getSmoothColorForProgress(progress); end = getSmoothColorForProgress((progress)); @@ -177,7 +178,7 @@ public class PonderTooltipHandler { } protected static KeyMapping ponderKeybind() { - return Minecraft.getInstance().options.keyUp; + return AllKeys.PONDER.getKeybind(); } } diff --git a/src/main/java/com/simibubi/create/foundation/utility/AngleHelper.java b/src/main/java/com/simibubi/create/foundation/utility/AngleHelper.java index 4c3715fb6..94a639161 100644 --- a/src/main/java/com/simibubi/create/foundation/utility/AngleHelper.java +++ b/src/main/java/com/simibubi/create/foundation/utility/AngleHelper.java @@ -49,4 +49,7 @@ public class AngleHelper { return diff; } + public static float wrapAngle180(float angle) { + return (angle + 180) % 360 - 180; + } } diff --git a/src/main/java/com/simibubi/create/foundation/utility/BlockHelper.java b/src/main/java/com/simibubi/create/foundation/utility/BlockHelper.java index ff7ffa5cd..c8f0c8558 100644 --- a/src/main/java/com/simibubi/create/foundation/utility/BlockHelper.java +++ b/src/main/java/com/simibubi/create/foundation/utility/BlockHelper.java @@ -6,6 +6,8 @@ import javax.annotation.Nullable; import com.simibubi.create.AllBlocks; import com.simibubi.create.AllTags.AllBlockTags; +import com.simibubi.create.compat.Mods; +import com.simibubi.create.compat.framedblocks.FramedBlocksInSchematics; import com.simibubi.create.content.kinetics.base.KineticBlockEntity; import com.simibubi.create.content.processing.burner.BlazeBurnerBlock; import com.simibubi.create.content.processing.burner.BlazeBurnerBlock.HeatLevel; @@ -239,15 +241,18 @@ public class BlockHelper { CompoundTag data = null; if (blockEntity == null) return data; + if (AllBlockTags.SAFE_NBT.matches(blockState)) { data = blockEntity.saveWithFullMetadata(); - data = NBTProcessors.process(blockEntity, data, true); + } else if (blockEntity instanceof IPartialSafeNBT) { data = new CompoundTag(); ((IPartialSafeNBT) blockEntity).writeSafe(data); - data = NBTProcessors.process(blockEntity, data, true); - } - return data; + + } else if (Mods.FRAMEDBLOCKS.contains(blockState.getBlock())) + data = FramedBlocksInSchematics.prepareBlockEntityData(blockState, blockEntity); + + return NBTProcessors.process(blockState, blockEntity, data, true); } public static void placeSchematicBlock(Level world, BlockState state, BlockPos target, ItemStack stack, @@ -294,10 +299,12 @@ public class BlockHelper { if (data != null) { if (existingBlockEntity instanceof IMergeableBE mergeable) { BlockEntity loaded = BlockEntity.loadStatic(target, state, data); - if (existingBlockEntity.getType() - .equals(loaded.getType())) { - mergeable.accept(loaded); - return; + if (loaded != null) { + if (existingBlockEntity.getType() + .equals(loaded.getType())) { + mergeable.accept(loaded); + return; + } } } BlockEntity blockEntity = world.getBlockEntity(target); diff --git a/src/main/java/com/simibubi/create/foundation/utility/HashableNonNullConsumer.java b/src/main/java/com/simibubi/create/foundation/utility/HashableNonNullConsumer.java new file mode 100644 index 000000000..b44b5ef58 --- /dev/null +++ b/src/main/java/com/simibubi/create/foundation/utility/HashableNonNullConsumer.java @@ -0,0 +1,35 @@ +package com.simibubi.create.foundation.utility; + +import java.util.Objects; + +import javax.annotation.Nonnull; + +import net.minecraftforge.common.util.NonNullConsumer; + +public class HashableNonNullConsumer implements NonNullConsumer { + private final NonNullConsumer consumer; + private final H hashKey; + + public HashableNonNullConsumer(NonNullConsumer consumer, H hashKey) { + this.consumer = consumer; + this.hashKey = hashKey; + } + + @Override + public void accept(@Nonnull T t) { + consumer.accept(t); + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + HashableNonNullConsumer that = (HashableNonNullConsumer) o; + return Objects.equals(hashKey, that.hashKey); + } + + @Override + public int hashCode() { + return Objects.hash(hashKey); + } +} diff --git a/src/main/java/com/simibubi/create/foundation/utility/LangBuilder.java b/src/main/java/com/simibubi/create/foundation/utility/LangBuilder.java index 564b6131f..161f52dd4 100644 --- a/src/main/java/com/simibubi/create/foundation/utility/LangBuilder.java +++ b/src/main/java/com/simibubi/create/foundation/utility/LangBuilder.java @@ -2,10 +2,15 @@ package com.simibubi.create.foundation.utility; import java.util.List; +import com.simibubi.create.compat.Mods; + import joptsimple.internal.Strings; import net.minecraft.ChatFormatting; +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.Font; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.MutableComponent; +import net.minecraft.util.Mth; import net.minecraft.world.entity.player.Player; public class LangBuilder { @@ -29,7 +34,7 @@ public class LangBuilder { * Appends a localised component
* To add an independently formatted localised component, use add() and a nested * builder - * + * * @param langKey * @param args * @return @@ -40,7 +45,7 @@ public class LangBuilder { /** * Appends a text component - * + * * @param literalText * @return */ @@ -50,7 +55,7 @@ public class LangBuilder { /** * Appends a colored text component - * + * * @param format * @param literalText * @return @@ -61,7 +66,7 @@ public class LangBuilder { /** * Appends a colored text component - * + * * @param color * @param literalText * @return @@ -72,7 +77,7 @@ public class LangBuilder { /** * Appends the contents of another builder - * + * * @param otherBuilder * @return */ @@ -82,7 +87,7 @@ public class LangBuilder { /** * Appends a component - * + * * @param customComponent * @return */ @@ -95,7 +100,7 @@ public class LangBuilder { /** * Applies the format to all added components - * + * * @param format * @return */ @@ -107,7 +112,7 @@ public class LangBuilder { /** * Applies the color to all added components - * + * * @param color * @return */ @@ -150,11 +155,20 @@ public class LangBuilder { public void forGoggles(List tooltip, int indents) { tooltip.add(Lang.builder() - .text(Strings.repeat(' ', 4 + indents)) + .text(Strings.repeat(' ', getIndents(Minecraft.getInstance().font, 4 + indents))) .add(this) .component()); } + public static final float DEFAULT_SPACE_WIDTH = 4.0F; // space width in vanilla's default font + static int getIndents(Font font, int defaultIndents) { + int spaceWidth = font.width(" "); + if (DEFAULT_SPACE_WIDTH == spaceWidth) { + return defaultIndents; + } + return Mth.ceil(DEFAULT_SPACE_WIDTH * defaultIndents / spaceWidth); + } + // private void assertComponent() { @@ -162,4 +176,4 @@ public class LangBuilder { throw new IllegalStateException("No components were added to builder"); } -} \ No newline at end of file +} diff --git a/src/main/java/com/simibubi/create/foundation/utility/NBTProcessors.java b/src/main/java/com/simibubi/create/foundation/utility/NBTProcessors.java index 971d0072a..4496e5a27 100644 --- a/src/main/java/com/simibubi/create/foundation/utility/NBTProcessors.java +++ b/src/main/java/com/simibubi/create/foundation/utility/NBTProcessors.java @@ -2,6 +2,7 @@ package com.simibubi.create.foundation.utility; import java.util.HashMap; import java.util.HashSet; +import java.util.List; import java.util.Map; import java.util.function.UnaryOperator; @@ -11,13 +12,16 @@ import com.simibubi.create.AllBlockEntityTypes; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.ListTag; +import net.minecraft.nbt.StringTag; import net.minecraft.nbt.Tag; import net.minecraft.network.chat.Component; +import net.minecraft.tags.BlockTags; import net.minecraft.world.item.EnchantedBookItem; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.entity.SpawnerBlockEntity; +import net.minecraft.world.level.block.state.BlockState; public final class NBTProcessors { @@ -34,13 +38,6 @@ public final class NBTProcessors { } static { - addProcessor(BlockEntityType.SIGN, data -> { - for (int i = 0; i < 4; ++i) { - if (textComponentHasClickEvent(data.getString("Text" + (i + 1)))) - return null; - } - return data; - }); addProcessor(BlockEntityType.LECTERN, data -> { if (!data.contains("Book", Tag.TAG_COMPOUND)) return data; @@ -63,6 +60,20 @@ public final class NBTProcessors { addProcessor(AllBlockEntityTypes.CREATIVE_CRATE.get(), itemProcessor("Filter")); addProcessor(AllBlockEntityTypes.PLACARD.get(), itemProcessor("Item")); } + + // Triggered by block tag, not BE type + private static final UnaryOperator signProcessor = data -> { + for (String key : List.of("front_text", "back_text")) { + CompoundTag textTag = data.getCompound(key); + if (!textTag.contains("messages", Tag.TAG_LIST)) + continue; + for (Tag tag : textTag.getList("messages", Tag.TAG_STRING)) + if (tag instanceof StringTag stringTag) + if (textComponentHasClickEvent(stringTag.getAsString())) + return null; + } + return data; + }; public static UnaryOperator itemProcessor(String tagKey) { return data -> { @@ -117,7 +128,7 @@ public final class NBTProcessors { private NBTProcessors() {} @Nullable - public static CompoundTag process(BlockEntity blockEntity, CompoundTag compound, boolean survival) { + public static CompoundTag process(BlockState blockState, BlockEntity blockEntity, CompoundTag compound, boolean survival) { if (compound == null) return null; BlockEntityType type = blockEntity.getType(); @@ -129,6 +140,8 @@ public final class NBTProcessors { .apply(compound); if (blockEntity instanceof SpawnerBlockEntity) return compound; + if (blockState.is(BlockTags.ALL_SIGNS)) + return signProcessor.apply(compound); if (blockEntity.onlyOpCanSetNbt()) return null; return compound; diff --git a/src/main/java/com/simibubi/create/foundation/utility/TreeCutter.java b/src/main/java/com/simibubi/create/foundation/utility/TreeCutter.java index e01fb0d15..9025ec074 100644 --- a/src/main/java/com/simibubi/create/foundation/utility/TreeCutter.java +++ b/src/main/java/com/simibubi/create/foundation/utility/TreeCutter.java @@ -57,15 +57,20 @@ public class TreeCutter { return Optional.empty(); } + @Deprecated(forRemoval = true) + public static Tree findTree(@Nullable BlockGetter reader, BlockPos pos) { + return findTree(reader, pos, Blocks.AIR.defaultBlockState()); + } + /** * Finds a tree at the given pos. Block at the position should be air * - * @param reader - * @param pos - * @return null if not found or not fully cut + * @param reader the level that will be searched for a tree + * @param pos position that the saw cut at + * @param brokenState block state what was broken by the saw */ @Nonnull - public static Tree findTree(@Nullable BlockGetter reader, BlockPos pos) { + public static Tree findTree(@Nullable BlockGetter reader, BlockPos pos, BlockState brokenState) { if (reader == null) return NO_TREE; @@ -75,11 +80,14 @@ public class TreeCutter { Set visited = new HashSet<>(); List frontier = new LinkedList<>(); - // Bamboo, Sugar Cane, Cactus BlockState stateAbove = reader.getBlockState(pos.above()); - if (isVerticalPlant(stateAbove)) { + // Bamboo, Sugar Cane, Cactus + if (isVerticalPlant(brokenState)) { + if (!isVerticalPlant(stateAbove)) + return NO_TREE; + logs.add(pos.above()); - for (int i = 1; i < 256; i++) { + for (int i = 1; i < reader.getHeight(); i++) { BlockPos current = pos.above(i); if (!isVerticalPlant(reader.getBlockState(current))) break; @@ -90,7 +98,10 @@ public class TreeCutter { } // Chorus - if (isChorus(stateAbove)) { + if (isChorus(brokenState)) { + if (!isChorus(stateAbove)) + return NO_TREE; + frontier.add(pos.above()); while (!frontier.isEmpty()) { BlockPos current = frontier.remove(0); @@ -287,7 +298,7 @@ public class TreeCutter { } public static boolean isRoot(BlockState state) { - return state.is(Blocks.MANGROVE_ROOTS); + return state.is(AllBlockTags.ROOTS.tag); } public static boolean isLog(BlockState state) { diff --git a/src/main/java/com/simibubi/create/infrastructure/config/CClient.java b/src/main/java/com/simibubi/create/infrastructure/config/CClient.java index f864101f5..a25381f6b 100644 --- a/src/main/java/com/simibubi/create/infrastructure/config/CClient.java +++ b/src/main/java/com/simibubi/create/infrastructure/config/CClient.java @@ -33,6 +33,8 @@ public class CClient extends ConfigBase { Comments.ingameMenuConfigButtonOffsetX); public final ConfigBool ignoreFabulousWarning = b(false, "ignoreFabulousWarning", Comments.ignoreFabulousWarning); + public final ConfigBool rotateWhenSeated = b(true, "rotateWhenSeated", + Comments.rotatewhenSeated); // custom fluid fog public final ConfigGroup fluidFogSettings = group(1, "fluidFogSettings", Comments.fluidFogSettings); @@ -125,6 +127,7 @@ public class CClient extends ConfigBase { "The sign (-/+) of this value determines what side of the row the button appears on (left/right)" }; static String ignoreFabulousWarning = "Setting this to true will prevent Create from sending you a warning when playing with Fabulous graphics enabled"; + static String rotatewhenSeated = "Disable to prevent being rotated while seated on a Moving Contraption"; static String overlay = "Settings for the Goggle Overlay"; static String overlayOffset = "Offset the overlay from goggle- and hover- information by this many pixels on the respective axis; Use /create overlay"; static String overlayCustomColor = "Enable this to use your custom colors for the Goggle- and Hover- Overlay"; diff --git a/src/main/java/com/simibubi/create/infrastructure/config/CKinetics.java b/src/main/java/com/simibubi/create/infrastructure/config/CKinetics.java index dc6c8b835..e5ea26ba8 100644 --- a/src/main/java/com/simibubi/create/infrastructure/config/CKinetics.java +++ b/src/main/java/com/simibubi/create/infrastructure/config/CKinetics.java @@ -50,6 +50,7 @@ public class CKinetics extends ConfigBase { public final ConfigBool harvesterReplants = b(true, "harvesterReplants", Comments.harvesterReplants); public final ConfigBool minecartContraptionInContainers = b(false, "minecartContraptionInContainers", Comments.minecartContraptionInContainers); + public final ConfigBool stabiliseStableContraptions = b(false, "stabiliseStableContraptions", Comments.stabiliseStableContraptions, "[Technical]"); public final ConfigGroup stats = group(1, "stats", Comments.stats); public final ConfigFloat mediumSpeed = f(30, 0, 4096, "mediumSpeed", Comments.rpm, Comments.mediumSpeed); @@ -119,6 +120,7 @@ public class CKinetics extends ConfigBase { static String obsidianMovement = "Configure how Obsidian blocks can be moved by contraptions."; static String reinforcedDeepslateMovement = "Configure how Reinforced Deepslate blocks can be moved by contraptions."; static String minecartContraptionInContainers = "Whether minecart contraptions can be placed into container items."; + static String stabiliseStableContraptions = "Whether stabilised bearings create a separated entity even on non-rotating contraptions."; } public enum DeployerAggroSetting { diff --git a/src/main/java/com/simibubi/create/infrastructure/config/CSchematics.java b/src/main/java/com/simibubi/create/infrastructure/config/CSchematics.java index d047f20a2..446b7e39e 100644 --- a/src/main/java/com/simibubi/create/infrastructure/config/CSchematics.java +++ b/src/main/java/com/simibubi/create/infrastructure/config/CSchematics.java @@ -6,16 +6,14 @@ public class CSchematics extends ConfigBase { public final ConfigBool creativePrintIncludesAir = b(false, "creativePrintIncludesAir", Comments.creativePrintIncludesAir); public final ConfigInt maxSchematics = i(10, 1, "maxSchematics", Comments.maxSchematics); - public final ConfigInt maxTotalSchematicSize = i(256, 16, "maxSchematics", Comments.kb, Comments.maxSize); + public final ConfigInt maxTotalSchematicSize = i(256, 16, "maxTotalSchematicSize", Comments.kb, Comments.maxSize); public final ConfigInt maxSchematicPacketSize = i(1024, 256, 32767, "maxSchematicPacketSize", Comments.b, Comments.maxPacketSize); public final ConfigInt schematicIdleTimeout = i(600, 100, "schematicIdleTimeout", Comments.idleTimeout); public final ConfigGroup schematicannon = group(0, "schematicannon", "Schematicannon"); public final ConfigInt schematicannonDelay = i(10, 1, "schematicannonDelay", Comments.delay); - public final ConfigFloat schematicannonGunpowderWorth = - f(20, 0, 100, "schematicannonGunpowderWorth", Comments.gunpowderWorth); - public final ConfigFloat schematicannonFuelUsage = f(0.05f, 0, 100, "schematicannonFuelUsage", Comments.fuelUsage); + public final ConfigInt schematicannonShotsPerGunpowder = i(400, 1, "schematicannonShotsPerGunpowder", Comments.schematicannonShotsPerGunpowder); @Override public String getName() { @@ -32,8 +30,7 @@ public class CSchematics extends ConfigBase { static String idleTimeout = "Amount of game ticks without new packets arriving until an active schematic upload process is discarded."; static String delay = "Amount of game ticks between shots of the cannon. Higher => Slower"; - static String gunpowderWorth = "% of Schematicannon's Fuel filled by 1 Gunpowder."; - static String fuelUsage = "% of Schematicannon's Fuel used for each fired block."; + static String schematicannonShotsPerGunpowder = "Amount of blocks a Schematicannon can print per Gunpowder item provided."; static String creativePrintIncludesAir = "Whether placing a Schematic directly in Creative Mode should replace world blocks with Air"; } diff --git a/src/main/java/com/simibubi/create/infrastructure/data/CreateRegistrateTags.java b/src/main/java/com/simibubi/create/infrastructure/data/CreateRegistrateTags.java index 0f2a06b0a..157577e50 100644 --- a/src/main/java/com/simibubi/create/infrastructure/data/CreateRegistrateTags.java +++ b/src/main/java/com/simibubi/create/infrastructure/data/CreateRegistrateTags.java @@ -1,5 +1,6 @@ package com.simibubi.create.infrastructure.data; +import com.simibubi.create.AllItems; import com.simibubi.create.AllTags.AllBlockTags; import com.simibubi.create.AllTags.AllEntityTags; import com.simibubi.create.AllTags.AllFluidTags; @@ -23,6 +24,9 @@ import net.minecraft.world.level.material.Fluid; import net.minecraft.world.level.material.Fluids; import net.minecraftforge.common.Tags; +import java.util.ArrayList; +import java.util.List; + public class CreateRegistrateTags { public static void addGenerators() { Create.REGISTRATE.addDataGenerator(ProviderType.BLOCK_TAGS, CreateRegistrateTags::genBlockTags); @@ -33,9 +37,15 @@ public class CreateRegistrateTags { private static void genBlockTags(RegistrateTagsProvider provIn) { CreateTagsProvider prov = new CreateTagsProvider<>(provIn, Block::builtInRegistryHolder); - + prov.tag(AllBlockTags.BRITTLE.tag) - .add(Blocks.BELL, Blocks.COCOA, Blocks.FLOWER_POT) + .add(Blocks.BELL, Blocks.COCOA, Blocks.FLOWER_POT, Blocks.MOSS_CARPET, Blocks.BAMBOO_SAPLING, + Blocks.BIG_DRIPLEAF, Blocks.VINE, Blocks.TWISTING_VINES_PLANT, Blocks.TWISTING_VINES, + Blocks.WEEPING_VINES_PLANT, Blocks.WEEPING_VINES, Blocks.CAKE + ) + .addTag(AllBlockTags.CORALS.tag) + .addTag(BlockTags.CAVE_VINES) + .addTag(BlockTags.BANNERS) .addTag(BlockTags.BEDS) .addTag(BlockTags.DOORS); @@ -63,8 +73,14 @@ public class CreateRegistrateTags { .addTag(BlockTags.LEAVES); prov.tag(AllBlockTags.MOVABLE_EMPTY_COLLIDER.tag) - .add(Blocks.COBWEB, Blocks.POWDER_SNOW, Blocks.TRIPWIRE, Blocks.TRIPWIRE_HOOK) - .addTag(BlockTags.FENCE_GATES); + .add(Blocks.COBWEB, Blocks.POWDER_SNOW, Blocks.TRIPWIRE, Blocks.TRIPWIRE_HOOK, Blocks.BAMBOO_SAPLING, + Blocks.VINE, Blocks.TWISTING_VINES_PLANT, Blocks.TWISTING_VINES, Blocks.WEEPING_VINES_PLANT, + Blocks.WEEPING_VINES + ) + .addTag(AllBlockTags.CORALS.tag) + .addTag(BlockTags.CAVE_VINES) + .addTag(BlockTags.FENCE_GATES) + .addTag(BlockTags.BANNERS); prov.tag(AllBlockTags.ORE_OVERRIDE_STONE.tag) .addTag(BlockTags.STONE_ORE_REPLACEABLES); @@ -76,7 +92,7 @@ public class CreateRegistrateTags { prov.tag(AllBlockTags.SAFE_NBT.tag) .addTag(BlockTags.BANNERS) - .addTag(BlockTags.SIGNS); + .addTag(BlockTags.ALL_SIGNS); prov.tag(AllBlockTags.TREE_ATTACHMENTS.tag) .add(Blocks.BEE_NEST, Blocks.COCOA, Blocks.MANGROVE_PROPAGULE, Blocks.MOSS_CARPET, Blocks.SHROOMLIGHT, Blocks.VINE); @@ -92,12 +108,31 @@ public class CreateRegistrateTags { .addTag(BlockTags.PRESSURE_PLATES) .addTag(BlockTags.RAILS); + prov.tag(AllBlockTags.ROOTS.tag) + .add(Blocks.MANGROVE_ROOTS); + + prov.tag(AllBlockTags.CORALS.tag) + .add(Blocks.DEAD_TUBE_CORAL, Blocks.DEAD_BRAIN_CORAL, Blocks.DEAD_BUBBLE_CORAL, Blocks.DEAD_FIRE_CORAL, + Blocks.DEAD_HORN_CORAL, Blocks.TUBE_CORAL, Blocks.BRAIN_CORAL, Blocks.BUBBLE_CORAL, + Blocks.FIRE_CORAL, Blocks.HORN_CORAL, Blocks.DEAD_TUBE_CORAL_FAN, + Blocks.DEAD_BRAIN_CORAL_FAN, Blocks.DEAD_BUBBLE_CORAL_FAN, Blocks.DEAD_FIRE_CORAL_FAN, + Blocks.DEAD_HORN_CORAL_FAN, Blocks.TUBE_CORAL_FAN, Blocks.BRAIN_CORAL_FAN, + Blocks.BUBBLE_CORAL_FAN, Blocks.FIRE_CORAL_FAN, Blocks.HORN_CORAL_FAN, + Blocks.DEAD_TUBE_CORAL_WALL_FAN, Blocks.DEAD_BRAIN_CORAL_WALL_FAN, + Blocks.DEAD_BUBBLE_CORAL_WALL_FAN, Blocks.DEAD_FIRE_CORAL_WALL_FAN, + Blocks.DEAD_HORN_CORAL_WALL_FAN, Blocks.TUBE_CORAL_WALL_FAN, Blocks.BRAIN_CORAL_WALL_FAN, + Blocks.BUBBLE_CORAL_WALL_FAN, Blocks.FIRE_CORAL_WALL_FAN, Blocks.HORN_CORAL_WALL_FAN + ); + // COMPAT - TagGen.addOptional(prov.tag(AllBlockTags.NON_MOVABLE.tag), Mods.IE, + TagGen.addOptional(prov.tag(AllBlockTags.NON_MOVABLE.tag), Mods.IE, List.of( "connector_lv", "connector_lv_relay", "connector_mv", "connector_mv_relay", "connector_hv", "connector_hv_relay", "connector_bundled", "connector_structural", - "connector_redstone", "connector_probe", "breaker_switch"); + "connector_redstone", "connector_probe", "breaker_switch")); + + TagGen.addOptional(prov.tag(AllBlockTags.ROOTS.tag), Mods.TF, + List.of("root", "liveroot_block", "mangrove_root")); // VALIDATE @@ -110,7 +145,7 @@ public class CreateRegistrateTags { private static void genItemTags(RegistrateTagsProvider provIn) { CreateTagsProvider prov = new CreateTagsProvider<>(provIn, Item::builtInRegistryHolder); - + prov.tag(AllItemTags.SLEEPERS.tag) .add(Items.STONE_SLAB, Items.SMOOTH_STONE_SLAB, Items.ANDESITE_SLAB); @@ -121,7 +156,7 @@ public class CreateRegistrateTags { prov.tag(AllItemTags.STRIPPED_WOOD.tag) .addTag(AllItemTags.VANILLA_STRIPPED_WOOD.tag) .addTag(AllItemTags.MODDED_STRIPPED_WOOD.tag); - + prov.tag(AllItemTags.DEPLOYABLE_DRINK.tag) .add(Items.MILK_BUCKET, Items.POTION); @@ -148,10 +183,24 @@ public class CreateRegistrateTags { prov.tag(Tags.Items.INGOTS) .addTag(AllItemTags.CREATE_INGOTS.tag); + prov.tag(AllItemTags.OBSIDIAN_DUST.tag).add(AllItems.POWDERED_OBSIDIAN.get()); + // COMPAT genStrippedWoodItemTags(prov); + prov.tag(AllItemTags.CURIOS_HEAD.tag).add(AllItems.GOGGLES.get()); + + TagGen.addOptional(prov.tag(AllItemTags.ALLURITE.tag), Mods.GS, gsPalette("allurite")); + + TagGen.addOptional(prov.tag(AllItemTags.LUMIERE.tag), Mods.GS, gsPalette("lumiere")); + + TagGen.addOptional(prov.tag(AllItemTags.AMETHYST.tag), Mods.GS, gsPalette("amethyst")); + + TagGen.addOptional(prov.tag(AllItemTags.UA_CORAL.tag), Mods.UA, List.of("acan_coral", + "finger_coral", "star_coral", "moss_coral", "petal_coral", "branch_coral", + "rock_coral", "pillow_coral", "chrome_coral", "silk_coral")); + // VALIDATE for (AllItemTags tag : AllItemTags.values()) { @@ -161,6 +210,21 @@ public class CreateRegistrateTags { } } + private static ArrayList gsPalette(String material) { + ArrayList toReturn = new ArrayList<>(); + toReturn.add(material + "_block"); + toReturn.add(material + "_stairs"); + toReturn.add(material + "_slab"); + toReturn.add("smooth_" + material); + toReturn.add("smooth_" + material + "_stairs"); + toReturn.add("smooth_" + material + "_slab"); + toReturn.add(material + "_bricks"); + toReturn.add(material + "_brick_stairs"); + toReturn.add(material + "_brick_slab"); + toReturn.add("chiseled_" + material); + return toReturn; + } + private static void genStrippedWoodItemTags(CreateTagsProvider prov) { TagAppender logAppender = prov.tag(AllItemTags.MODDED_STRIPPED_LOGS.tag); TagAppender woodAppender = prov.tag(AllItemTags.MODDED_STRIPPED_WOOD.tag); @@ -168,10 +232,10 @@ public class CreateRegistrateTags { helper.add(Mods.ARS_N, "blue_archwood", "purple_archwood", "green_archwood", "red_archwood"); helper.add(Mods.BTN, "livingwood", "dreamwood"); - helper.add(Mods.FA, "cherrywood", "mysterywood"); + helper.add(Mods.FA, "mysterywood"); helper.add(Mods.HEX, "akashic"); helper.add(Mods.ID, "menril"); - helper.add(Mods.BYG, "aspen", "baobab", "enchanted", "cherry", "cika", "cypress", "ebony", "ether", + helper.add(Mods.BYG, "aspen", "baobab", "enchanted", "cika", "cypress", "ebony", "ether", "fir", "green_enchanted", "holly", "jacaranda", "lament", "mahogany", "mangrove", "maple", "nightshade", "palm", "palo_verde", "pine", "rainbow_eucalyptus", "redwood", "skyris", "willow", "witch_hazel", "zelkova"); @@ -182,24 +246,38 @@ public class CreateRegistrateTags { helper.add(Mods.AP, "twisted"); helper.add(Mods.Q, "azalea", "blossom"); helper.add(Mods.ECO, "coconut", "walnut", "azalea"); - helper.add(Mods.BOP, "fir", "redwood", "cherry", "mahogany", "jacaranda", "palm", "willow", "dead", + helper.add(Mods.BOP, "fir", "redwood", "mahogany", "jacaranda", "palm", "willow", "dead", "magic", "umbran", "hellbark"); - helper.add(Mods.BSK, "bluebright", "starlit", "frostbright", "lunar", "dusk", "maple", "cherry"); - helper.add(Mods.ENV, "cherry", "willow", "wisteria"); + helper.add(Mods.BSK, "bluebright", "starlit", "frostbright", "lunar", "dusk", "maple"); + helper.add(Mods.ENV, "willow", "wisteria"); helper.add(Mods.ATM, "aspen", "kousa", "yucca", "morado"); helper.add(Mods.ATM_2, "rosewood", "grimwood"); helper.add(Mods.GOOD, "muddy_oak", "cypress"); helper.add(Mods.BMK, "blighted_balsa", "willow", "swamp_cypress", "ancient_oak"); + helper.add(Mods.RU, "alpha", "ashen", "baobab", "blackwood", "brimwood", "cobalt", "cypress", "dead", "eucalyptus", "joshua", + "kapok", "larch", "magnolia", "maple","mauve", "palm", "pine", "redwood", "socotra", "willow"); + + TagGen.addOptional(logAppender, Mods.AUTUM, "maple"); TagGen.addOptional(logAppender, Mods.IX, "stripped_luminous_stem"); TagGen.addOptional(woodAppender, Mods.IX, "stripped_luminous_hyphae"); TagGen.addOptional(logAppender, Mods.BYG, "stripped_bulbis_stem"); TagGen.addOptional(woodAppender, Mods.BYG, "stripped_bulbis_wood"); + + TagGen.addOptional(logAppender, Mods.RU, "stripped_blue_bioshroom_stem"); + TagGen.addOptional(woodAppender, Mods.RU, "stripped_blue_bioshroom_hyphae"); + TagGen.addOptional(logAppender, Mods.RU, "stripped_green_bioshroom_stem"); + TagGen.addOptional(woodAppender, Mods.RU, "stripped_green_bioshroom_hyphae"); + TagGen.addOptional(logAppender, Mods.RU, "stripped_pink_bioshroom_stem"); + TagGen.addOptional(woodAppender, Mods.RU, "stripped_pink_bioshroom_hyphae"); + TagGen.addOptional(logAppender, Mods.RU, "stripped_yellow_bioshroom_stem"); + TagGen.addOptional(woodAppender, Mods.RU, "stripped_yellow_bioshroom_hyphae"); + TagGen.addOptional(logAppender, Mods.RU, "brimwood_log_magma"); } private static void genFluidTags(RegistrateTagsProvider provIn) { CreateTagsProvider prov = new CreateTagsProvider<>(provIn, Fluid::builtInRegistryHolder); - + prov.tag(AllFluidTags.BOTTOMLESS_ALLOW.tag) .add(Fluids.WATER, Fluids.LAVA); @@ -220,7 +298,7 @@ public class CreateRegistrateTags { private static void genEntityTags(RegistrateTagsProvider> provIn) { CreateTagsProvider> prov = new CreateTagsProvider<>(provIn, EntityType::builtInRegistryHolder); - + prov.tag(AllEntityTags.BLAZE_BURNER_CAPTURABLE.tag) .add(EntityType.BLAZE); diff --git a/src/main/java/com/simibubi/create/infrastructure/debugInfo/DebugInformation.java b/src/main/java/com/simibubi/create/infrastructure/debugInfo/DebugInformation.java index 5a977773f..8e0f216d4 100644 --- a/src/main/java/com/simibubi/create/infrastructure/debugInfo/DebugInformation.java +++ b/src/main/java/com/simibubi/create/infrastructure/debugInfo/DebugInformation.java @@ -26,6 +26,7 @@ import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.fml.DistExecutor; import net.minecraftforge.fml.ModList; import net.minecraftforge.forgespi.language.IModInfo; +import oshi.SystemInfo; /** * Allows for providing easily accessible debugging information. @@ -86,6 +87,7 @@ public class DebugInformation { .put("Java Version", SystemReportAccessor.getJAVA_VERSION()) .put("JVM Flags", getMcSystemInfo("JVM Flags")) .put("Memory", () -> getMcSystemInfo("Memory")) + .put("Total Memory", getTotalRam()) .put("CPU", getCpuInfo()) .putAll(listAllGraphicsCards()) .buildTo(DebugInformation::registerBothInfo); @@ -129,6 +131,13 @@ public class DebugInformation { return cards.isEmpty() ? List.of(new InfoEntry("Graphics cards", "none")) : cards; } + public static String getTotalRam() { + long availableMemory = new SystemInfo().getHardware().getMemory().getAvailable(); + long totalMemory = new SystemInfo().getHardware().getMemory().getTotal(); + long usedMemory = totalMemory - availableMemory; + return String.format("%s bytes (%s MiB) / %s bytes (%s MiB)", usedMemory, usedMemory / 1049000, totalMemory, totalMemory / 1049000); + } + public static String getCpuInfo() { String name = tryTrim(getMcSystemInfo("Processor Name")); String freq = getMcSystemInfo("Frequency (GHz)"); diff --git a/src/main/java/com/simibubi/create/infrastructure/ponder/scenes/BearingScenes.java b/src/main/java/com/simibubi/create/infrastructure/ponder/scenes/BearingScenes.java index 7bbe0f216..333d7c1f1 100644 --- a/src/main/java/com/simibubi/create/infrastructure/ponder/scenes/BearingScenes.java +++ b/src/main/java/com/simibubi/create/infrastructure/ponder/scenes/BearingScenes.java @@ -238,7 +238,7 @@ public class BearingScenes { } public static void mechanicalBearing(SceneBuilder scene, SceneBuildingUtil util) { - scene.title("mechanical_bearing", "Movings Structures using the Mechanical Bearing"); + scene.title("mechanical_bearing", "Moving Structures using the Mechanical Bearing"); scene.configureBasePlate(1, 1, 5); scene.setSceneOffsetY(-1); scene.world.showSection(util.select.layer(0), Direction.UP); diff --git a/src/main/java/com/simibubi/create/infrastructure/worldgen/LayeredOreFeature.java b/src/main/java/com/simibubi/create/infrastructure/worldgen/LayeredOreFeature.java index 897c93fb7..76610b3cf 100644 --- a/src/main/java/com/simibubi/create/infrastructure/worldgen/LayeredOreFeature.java +++ b/src/main/java/com/simibubi/create/infrastructure/worldgen/LayeredOreFeature.java @@ -1,6 +1,7 @@ package com.simibubi.create.infrastructure.worldgen; import java.util.ArrayList; +import java.util.Collections; import java.util.List; import java.util.function.Function; @@ -20,17 +21,24 @@ import net.minecraft.world.level.levelgen.feature.Feature; import net.minecraft.world.level.levelgen.feature.FeaturePlaceContext; import net.minecraft.world.level.levelgen.feature.configurations.OreConfiguration; import net.minecraft.world.level.levelgen.feature.configurations.OreConfiguration.TargetBlockState; +import net.minecraft.world.level.levelgen.synth.SimplexNoise; public class LayeredOreFeature extends Feature { public LayeredOreFeature() { super(LayeredOreConfiguration.CODEC); } + private static final float MAX_LAYER_DISPLACEMENT = 1.75f; + private static final float LAYER_NOISE_FREQUENCY = 0.125f; + + private static final float MAX_RADIAL_THRESHOLD_REDUCTION = 0.25f; + private static final float RADIAL_NOISE_FREQUENCY = 0.125f; + @Override public boolean place(FeaturePlaceContext pContext) { RandomSource random = pContext.random(); - BlockPos blockpos = pContext.origin(); - WorldGenLevel worldgenlevel = pContext.level(); + BlockPos origin = pContext.origin(); + WorldGenLevel worldGenLevel = pContext.level(); LayeredOreConfiguration config = pContext.config(); List patternPool = config.layerPatterns; @@ -40,89 +48,120 @@ public class LayeredOreFeature extends Feature { LayerPattern layerPattern = patternPool.get(random.nextInt(patternPool.size())); int placedAmount = 0; - int size = config.size; - int radius = Mth.ceil(config.size / 2f); - int x0 = blockpos.getX() - radius; - int y0 = blockpos.getY() - radius; - int z0 = blockpos.getZ() - radius; - int width = size + 1; - int length = size + 1; - int height = size + 1; + int size = config.size + 1; + float radius = config.size * 0.5f; + int radiusBound = Mth.ceil(radius) - 1; + int x0 = origin.getX(); + int y0 = origin.getY(); + int z0 = origin.getZ(); - if (blockpos.getY() >= worldgenlevel.getHeight(Heightmap.Types.OCEAN_FLOOR_WG, blockpos.getX(), - blockpos.getZ())) + if (origin.getY() >= worldGenLevel.getHeight(Heightmap.Types.OCEAN_FLOOR_WG, origin.getX(), origin.getZ())) return false; - List resolvedLayers = new ArrayList<>(); - List layerDiameterOffsets = new ArrayList<>(); + List tempLayers = new ArrayList<>(); + float layerSizeTotal = 0.0f; + LayerPattern.Layer current = null; + while (layerSizeTotal < size) { + Layer next = layerPattern.rollNext(current, random); + float layerSize = Mth.randomBetween(random, next.minSize, next.maxSize); + tempLayers.add(new TemporaryLayerEntry(next, layerSize)); + layerSizeTotal += layerSize; + current = next; + } + + List resolvedLayers = new ArrayList<>(tempLayers.size()); + float cumulativeLayerSize = -(layerSizeTotal - size) * random.nextFloat(); + for (TemporaryLayerEntry tempLayerEntry : tempLayers) { + float rampStartValue = resolvedLayers.size() == 0 ? + Float.NEGATIVE_INFINITY : + cumulativeLayerSize * (2.0f / size) - 1.0f; + cumulativeLayerSize += tempLayerEntry.size(); + if (cumulativeLayerSize < 0) + continue; + float radialThresholdMultiplier = Mth.randomBetween(random, 0.5f, 1.0f); + resolvedLayers.add(new ResolvedLayerEntry(tempLayerEntry.layer, radialThresholdMultiplier, rampStartValue)); + } + + // Choose stacking direction + float gy = Mth.randomBetween(random, -1.0f, 1.0f); + gy = (float) Math.cbrt(gy); // Make layer alignment tend towards horizontal more than vertical + float xzRescale = Mth.sqrt(1.0f - gy * gy); + float theta = random.nextFloat() * Mth.TWO_PI; + float gx = Mth.cos(theta) * xzRescale; + float gz = Mth.sin(theta) * xzRescale; + + SimplexNoise layerDisplacementNoise = new SimplexNoise(random); + SimplexNoise radiusNoise = new SimplexNoise(random); MutableBlockPos mutablePos = new MutableBlockPos(); - BulkSectionAccess bulksectionaccess = new BulkSectionAccess(worldgenlevel); - int layerCoordinate = random.nextInt(4); - int slantyCoordinate = random.nextInt(3); - float slope = random.nextFloat() * .75f; + BulkSectionAccess bulkSectionAccess = new BulkSectionAccess(worldGenLevel); try { - for (int x = 0; x < width; x++) { - float dx = x * 2f / width - 1; - if (dx * dx > 1) + for (int dzBlock = -radiusBound; dzBlock <= radiusBound; dzBlock++) { + float dz = dzBlock * (1.0f / radius); + if (dz * dz > 1) continue; - for (int y = 0; y < height; y++) { - float dy = y * 2f / height - 1; - if (dx * dx + dy * dy > 1) - continue; - if (worldgenlevel.isOutsideBuildHeight(y0 + y)) + for (int dxBlock = -radiusBound; dxBlock <= radiusBound; dxBlock++) { + float dx = dxBlock * (1.0f / radius); + if (dz * dz + dx * dx > 1) continue; - for (int z = 0; z < length; z++) { - float dz = z * 2f / height - 1; - - int layerIndex = layerCoordinate == 0 ? z : layerCoordinate == 1 ? x : y; - if (slantyCoordinate != layerCoordinate) - layerIndex += Mth.floor(slantyCoordinate == 0 ? z : slantyCoordinate == 1 ? x : y) * slope; - - while (layerIndex >= resolvedLayers.size()) { - Layer next = layerPattern.rollNext( - resolvedLayers.isEmpty() ? null : resolvedLayers.get(resolvedLayers.size() - 1), - random); - float offset = random.nextFloat() * .5f + .5f; - for (int i = 0; i < next.minSize + random.nextInt(1 + next.maxSize - next.minSize); i++) { - resolvedLayers.add(next); - layerDiameterOffsets.add(offset); - } - } - - if (dx * dx + dy * dy + dz * dz > 1 * layerDiameterOffsets.get(layerIndex)) + for (int dyBlock = -radiusBound; dyBlock <= radiusBound; dyBlock++) { + float dy = dyBlock * (1.0f / radius); + float distanceSquared = dz * dz + dx * dx + dy * dy; + if (distanceSquared > 1) + continue; + if (worldGenLevel.isOutsideBuildHeight(y0 + dyBlock)) continue; - LayerPattern.Layer layer = resolvedLayers.get(layerIndex); - List state = layer.rollBlock(random); + int currentX = x0 + dxBlock; + int currentY = y0 + dyBlock; + int currentZ = z0 + dzBlock; - int currentX = x0 + x; - int currentY = y0 + y; - int currentZ = z0 + z; + float rampValue = gx * dx + gy * dy + gz * dz; + rampValue += layerDisplacementNoise.getValue( + currentX * LAYER_NOISE_FREQUENCY, currentY * LAYER_NOISE_FREQUENCY, currentZ * LAYER_NOISE_FREQUENCY + ) * (MAX_LAYER_DISPLACEMENT / size); + + int layerIndex = Collections.binarySearch(resolvedLayers, new ResolvedLayerEntry(null, 0, rampValue)); + if (layerIndex < 0) layerIndex = -2 - layerIndex; // Counter (-insertionIndex - 1) return result, where insertionIndex = layerIndex + 1 + ResolvedLayerEntry layerEntry = resolvedLayers.get(layerIndex); + + if (distanceSquared > layerEntry.radialThresholdMultiplier) + continue; + + float thresholdNoiseValue = Mth.map( + (float) radiusNoise.getValue(currentX * RADIAL_NOISE_FREQUENCY, currentY * RADIAL_NOISE_FREQUENCY, currentZ * RADIAL_NOISE_FREQUENCY), + -1.0f, 1.0f, 1.0f - MAX_RADIAL_THRESHOLD_REDUCTION, 1.0f + ); + + if (distanceSquared > layerEntry.radialThresholdMultiplier * thresholdNoiseValue) + continue; + + LayerPattern.Layer layer = layerEntry.layer; + List targetBlockStates = layer.rollBlock(random); mutablePos.set(currentX, currentY, currentZ); - if (!worldgenlevel.ensureCanWrite(mutablePos)) + if (!worldGenLevel.ensureCanWrite(mutablePos)) continue; - LevelChunkSection levelchunksection = bulksectionaccess.getSection(mutablePos); - if (levelchunksection == null) + LevelChunkSection levelChunkSection = bulkSectionAccess.getSection(mutablePos); + if (levelChunkSection == null) continue; - int i3 = SectionPos.sectionRelative(currentX); - int j3 = SectionPos.sectionRelative(currentY); - int k3 = SectionPos.sectionRelative(currentZ); - BlockState blockstate = levelchunksection.getBlockState(i3, j3, k3); + int localX = SectionPos.sectionRelative(currentX); + int localY = SectionPos.sectionRelative(currentY); + int localZ = SectionPos.sectionRelative(currentZ); + BlockState blockState = levelChunkSection.getBlockState(localX, localY, localZ); - for (OreConfiguration.TargetBlockState oreconfiguration$targetblockstate : state) { - if (!canPlaceOre(blockstate, bulksectionaccess::getBlockState, random, config, - oreconfiguration$targetblockstate, mutablePos)) + for (OreConfiguration.TargetBlockState targetBlockState : targetBlockStates) { + if (!canPlaceOre(blockState, bulkSectionAccess::getBlockState, random, config, + targetBlockState, mutablePos)) continue; - if (oreconfiguration$targetblockstate.state.isAir()) + if (targetBlockState.state.isAir()) continue; - levelchunksection.setBlockState(i3, j3, k3, oreconfiguration$targetblockstate.state, false); + levelChunkSection.setBlockState(localX, localY, localZ, targetBlockState.state, false); ++placedAmount; break; } @@ -133,7 +172,7 @@ public class LayeredOreFeature extends Feature { } catch (Throwable throwable1) { try { - bulksectionaccess.close(); + bulkSectionAccess.close(); } catch (Throwable throwable) { throwable1.addSuppressed(throwable); } @@ -141,7 +180,7 @@ public class LayeredOreFeature extends Feature { throw throwable1; } - bulksectionaccess.close(); + bulkSectionAccess.close(); return placedAmount > 0; } @@ -159,4 +198,13 @@ public class LayeredOreFeature extends Feature { protected boolean shouldSkipAirCheck(RandomSource pRandom, float pChance) { return pChance <= 0 ? true : pChance >= 1 ? false : pRandom.nextFloat() >= pChance; } + + private record TemporaryLayerEntry(Layer layer, float size) { } + + private record ResolvedLayerEntry(Layer layer, float radialThresholdMultiplier, float rampStartValue) implements Comparable { + @Override + public int compareTo(LayeredOreFeature.ResolvedLayerEntry b) { + return Float.compare(rampStartValue, b.rampStartValue); + } + } } diff --git a/src/main/resources/META-INF/accesstransformer.cfg b/src/main/resources/META-INF/accesstransformer.cfg index f36cf7300..9530b37b5 100644 --- a/src/main/resources/META-INF/accesstransformer.cfg +++ b/src/main/resources/META-INF/accesstransformer.cfg @@ -44,3 +44,6 @@ public net.minecraft.client.gui.components.CommandSuggestions f_93866_ # suggest public net.minecraft.client.gui.components.CommandSuggestions$SuggestionsList (Lnet/minecraft/client/gui/components/CommandSuggestions;IIILjava/util/List;Z)V # public-f net.minecraft.data.recipes.RecipeProvider m_6055_()Ljava/lang/String; # getName + +public net.minecraft.client.renderer.LevelRenderer f_172938_ # cullingFrustum +public net.minecraft.client.renderer.LevelRenderer f_109442_ # capturedFrustum diff --git a/src/main/resources/assets/create/lang/default/interface.json b/src/main/resources/assets/create/lang/default/interface.json index 127de5b20..5214ce073 100644 --- a/src/main/resources/assets/create/lang/default/interface.json +++ b/src/main/resources/assets/create/lang/default/interface.json @@ -115,7 +115,8 @@ "create.keyinfo.toolmenu": "Focus Schematic Overlay", "create.keyinfo.toolbelt": "Access Nearby Toolboxes", "create.keyinfo.scrollup": "Simulate Mousewheel Up (inworld)", - "create.keyinfo.scrolldown": "Simulate Mousewheel Down (inworld)", + "create.keyinfo.scrolldown": "Simulate Mousewheel Down (inworld)", + "create.keyinfo.ponder": "Ponder", "create.gui.scrollInput.defaultTitle": "Choose an Option:", "create.gui.scrollInput.scrollToModify": "Scroll to Modify", @@ -176,7 +177,7 @@ "create.terrainzapper.leftClickToSet": "Left-Click a Block to set Material", "create.large_water_wheel.not_enough_space": "Clear Blocks for Placement", - + "create.minecart_coupling.two_couplings_max": "Minecarts cannot have more than two couplings each", "create.minecart_coupling.unloaded": "Parts of your train seem to be in unloaded chunks", "create.minecart_coupling.no_loops": "Couplings cannot form a loop", @@ -216,7 +217,7 @@ "create.logistics.fluid_filter": "Fluid Filter", "create.logistics.firstFrequency": "Frequency #1", "create.logistics.secondFrequency": "Frequency #2", - + "create.logistics.filter.click_to_set": "Click with item to set", "create.logistics.filter.click_to_replace": "Click with item to replace", "create.logistics.filter.hold_to_set_amount": "Click and hold for amount", @@ -227,26 +228,26 @@ "create.logistics.filter.up_to": "Up to", "create.logistics.filter.exactly": "Exactly", "create.logistics.filter.requires_item_in_inventory": "Requires %1$s item in Inventory", - + "create.logistics.creative_crate.supply": "Infinite Supply", "create.logistics.train_observer.cargo_filter": "Cargo Filter", - + "create.kinetics.creative_motor.rotation_speed": "Generated Speed in RPM", "create.kinetics.speed_controller.rotation_speed": "Targeted Speed in RPM", "create.kinetics.valve_handle.rotated_angle": "Rotation when used", - + "create.logistics.redstone_interval": "Redstone Interval", - + "create.contraptions.contoller.target": "Targeted Component", "create.contraptions.mechanical_roller.pave_material": "Paving Material", - + "create.contraptions.chassis.radius": "Radius when Sticky", "create.contraptions.chassis.range": "Range of Sticky Sides", "create.contraptions.chassis.distance": "Distance", - + "create.gui.value_settings.hold_to_edit": "Click and hold to edit", "create.gui.value_settings.release_to_confirm": "Release %1$s to Confirm", - + "create.gui.goggles.generator_stats": "Generator Stats:", "create.gui.goggles.kinetic_stats": "Kinetic Stats:", "create.gui.goggles.at_current_speed": "at current speed", @@ -306,7 +307,7 @@ "create.gui.sequenced_gearshift.speed.back_fast": "Double speed, Reversed", "create.gui.clipboard.erase_checked": "Erase checked items", - + "create.clipboard.actions": "Clipboard Actions", "create.clipboard.to_copy": "%1$s to Copy settings", "create.clipboard.to_paste": "%1$s to Paste settings", @@ -869,7 +870,7 @@ "create.contraption.controls.actor_toggle.on": "On", "create.contraption.controls.actor_toggle.off": "Off", "create.contraption.controls.floor_unreachable": "Unreachable", - + "create.contraption.door_control": "Onboard Door Control", "create.contraption.door_control.all": "Open All Doors", "create.contraption.door_control.all.short": "Open All", diff --git a/src/main/resources/assets/create/models/block/crushing_wheel/crushing_wheel.obj b/src/main/resources/assets/create/models/block/crushing_wheel/crushing_wheel.obj index 1c99aefe0..263c45f6c 100644 --- a/src/main/resources/assets/create/models/block/crushing_wheel/crushing_wheel.obj +++ b/src/main/resources/assets/create/models/block/crushing_wheel/crushing_wheel.obj @@ -1,4 +1,4 @@ -# Blender 3.5.0 +# Blender 4.2.0 # www.blender.org mtllib crushing_wheel.mtl o Cube.004 @@ -13,10 +13,6 @@ v 0.625000 0.000000 0.375000 v 0.375000 0.000000 0.375000 v 0.625000 0.000000 0.625000 v 0.375000 0.000000 0.625000 -v 0.375000 0.495000 0.375000 -v 0.625000 0.495000 0.375000 -v 0.625000 0.495000 0.625000 -v 0.375000 0.495000 0.625000 v 1.423879 0.880000 0.500000 v 1.423880 0.880000 0.117317 v 0.853554 0.880000 -0.353553 @@ -248,32 +244,24 @@ v 0.882684 0.881000 -0.500000 v 0.063492 0.881000 -0.477705 v -0.500000 0.881000 0.117316 v -0.477705 0.881000 0.936509 -vn -0.5774 -0.5774 -0.5774 -vn 0.5774 -0.5774 -0.5774 -vn 0.5774 -0.5774 0.5774 -vn -0.5774 -0.5774 0.5774 -vn -0.7071 -0.0000 0.7071 -vn -0.7071 -0.0000 -0.7071 -vn 0.7071 -0.0000 0.7071 -vn 0.7071 -0.0000 -0.7071 -vn -0.5774 0.5774 -0.5774 -vn -0.5774 0.5774 0.5774 -vn 0.5774 0.5774 0.5774 -vn 0.5774 0.5774 -0.5774 -vn -1.0000 -0.0000 -0.0000 vn -0.0000 -1.0000 -0.0000 -vn -0.0000 1.0000 -0.0000 -vn -0.9239 -0.0000 0.3827 -vn 0.3827 -0.0000 0.9239 vn -0.0000 -0.0000 1.0000 vn 1.0000 -0.0000 -0.0000 +vn -0.0000 -0.0000 -1.0000 +vn -0.0000 1.0000 -0.0000 +vn -1.0000 -0.0000 -0.0000 +vn -0.7071 -0.0000 0.7071 +vn -0.7071 -0.0000 -0.7071 +vn -0.9239 -0.0000 0.3827 +vn 0.3827 -0.0000 0.9239 vn -0.7071 0.0001 0.7071 vn -0.3827 -0.0000 0.9239 vn 0.9239 -0.0000 0.3827 +vn 0.7071 -0.0000 0.7071 vn 0.9239 -0.0000 -0.3827 vn 0.3827 -0.0000 -0.9239 +vn 0.7071 -0.0000 -0.7071 vn -0.3827 -0.0000 -0.9239 -vn -0.0000 -0.0000 -1.0000 vn 0.7071 0.0001 0.7071 vn -0.9239 -0.0000 -0.3827 vn -0.0000 -0.0002 1.0000 @@ -281,922 +269,433 @@ vn -0.7071 -0.0001 0.7071 vn 0.7071 -0.0001 -0.7071 vn -0.0000 -0.0001 -1.0000 vn -0.7071 -0.0001 -0.7071 -vt 0.437500 0.062500 -vt 0.437500 0.125000 -vt 0.691341 0.961940 +vt 0.375000 0.375000 +vt 0.625000 0.375000 +vt 0.625000 0.625000 +vt 0.375000 0.625000 +vt 0.375000 0.000000 +vt 0.375000 1.000000 +vt 0.625000 1.000000 +vt 0.625000 0.000000 +vt 1.000000 0.125000 +vt 1.000000 0.875000 +vt 0.937500 0.875000 vt 0.937500 0.125000 +vt 0.961940 0.308659 +vt 0.826641 0.173360 vt 0.000000 0.000000 -vt 0.937500 0.125000 +vt 0.437500 0.000000 +vt 0.437500 0.062500 +vt 0.000000 0.062500 +vt 0.000000 0.937500 +vt 0.000000 1.000000 +vt 0.437500 1.000000 +vt 0.437500 0.937500 +vt 0.000000 0.125000 vt 0.437500 0.125000 -vt 0.146447 0.146447 -vt 0.437500 0.000000 +vt 0.437500 0.875000 +vt 0.000000 0.875000 +vt 0.038060 0.308658 +vt 0.038060 0.500000 +vt 0.500000 0.000000 +vt 0.500000 0.038061 +vt 0.961940 0.691342 +vt 0.961940 0.500000 +vt 0.500000 0.000000 +vt 0.691342 0.038061 vt 0.073223 0.676776 -vt 0.437500 0.000000 +vt 0.173359 0.826640 +vt 0.038060 0.691342 +vt 0.676776 0.926777 +vt 0.500000 0.961940 +vt 0.500000 0.875000 +vt 0.655330 0.875000 +vt 0.500000 1.000000 +vt 0.073223 0.323223 +vt 0.926777 0.676777 +vt 0.826640 0.826641 +vt 0.765165 0.765165 +vt 0.875000 0.655330 +vt 0.853553 0.853554 +vt 0.323224 0.073223 +vt 0.173359 0.173359 +vt 0.308658 0.038060 +vt 0.926777 0.323224 +vt 0.875000 0.500000 +vt 0.875000 0.344670 +vt 1.000000 0.500000 +vt 0.676777 0.073224 +vt 0.691342 0.038061 +vt 0.765165 0.234835 +vt 0.655330 0.125000 +vt 0.853554 0.146447 +vt 0.500000 0.125000 +vt 0.344670 0.125000 +vt 0.234835 0.234835 +vt 0.125000 0.344670 +vt 0.146447 0.146447 +vt 0.691341 0.961940 +vt 0.125000 0.500000 +vt 0.125000 0.655330 +vt 0.000000 0.500000 vt 0.323223 0.926777 -vt 0.000000 0.000000 -vt 0.937500 0.125000 -vt 0.437500 0.125000 +vt 0.308658 0.961939 +vt 0.234835 0.765165 +vt 0.344669 0.875000 vt 0.146446 0.853553 -vt 0.000000 0.000000 -vt 0.937500 0.125000 -vt 0.500000 1.000000 -vt 0.437500 0.125000 -vt 0.437500 0.000000 -vt 0.926777 0.676777 -vt 0.625000 0.375000 -vt 0.625000 0.000000 -vt 0.375000 0.000000 -vt 0.375000 0.375000 -vt 0.375000 0.000000 -vt 0.625000 0.000000 -vt 0.625000 0.625000 -vt 0.625000 0.000000 -vt 0.375000 0.000000 -vt 0.375000 0.625000 -vt 0.625000 0.000000 -vt 0.375000 0.000000 -vt 0.375000 0.500000 -vt 0.625000 0.500000 -vt 0.625000 0.500000 -vt 0.375000 0.500000 -vt 0.625000 0.500000 -vt 0.375000 0.500000 -vt 0.625000 0.500000 -vt 0.375000 0.500000 -vt 0.961940 0.500000 -vt 0.437500 1.000000 -vt 0.437500 0.875000 -vt 0.961940 0.308658 -vt 0.937500 0.875000 -vt 0.437500 0.937500 -vt 0.676777 0.073224 -vt 0.437500 1.000000 -vt 0.437500 0.875000 -vt 0.937500 0.875000 -vt 0.691342 0.038061 -vt 0.000000 0.937500 -vt 0.937500 0.875000 -vt 0.437500 0.875000 -vt 0.500000 0.000000 -vt 0.173359 0.173359 -vt 0.437500 0.937500 +vt 0.500000 0.500000 +vt 0.301126 0.698874 +vt 0.218750 0.616497 +vt 0.698874 0.698874 +vt 0.616497 0.781250 +vt 0.500000 0.218750 +vt 0.616498 0.218750 +vt 0.218750 0.500000 +vt 0.218750 0.383502 +vt 0.655330 0.875000 +vt 0.500000 0.875000 +vt 0.500000 0.781250 +vt 0.616498 0.781250 +vt 0.655330 0.875000 +vt 0.500000 0.875000 +vt 0.500000 0.781250 +vt 0.616497 0.781250 +vt 0.500000 0.875000 +vt 0.344669 0.875000 +vt 0.383502 0.781250 +vt 0.500000 0.781250 +vt 0.344670 0.875000 +vt 0.383502 0.781250 +vt 0.500000 0.781250 +vt 0.655330 0.875000 +vt 0.500000 0.875000 +vt 0.500000 0.781250 +vt 0.616497 0.781250 +vt 0.655330 0.875000 +vt 0.500000 0.781250 +vt 0.616498 0.781250 +vt 0.655330 0.875000 +vt 0.500000 0.875000 +vt 0.500000 0.781250 +vt 0.616497 0.781250 +vt 0.383502 0.781250 +vt 0.344670 0.875000 +vt 0.383502 0.781250 +vt 0.655330 0.875000 +vt 0.500000 0.875000 +vt 0.500000 0.781250 +vt 0.616497 0.781250 +vt 0.655330 0.875000 +vt 0.616497 0.781250 vt 0.073223 0.676776 -vt 0.000000 0.937500 -vt 0.937500 0.875000 -vt 0.437500 0.875000 -vt 0.000000 0.500000 -vt 0.038060 0.500000 -vt 0.437500 1.000000 -vt 0.437500 0.875000 -vt 0.937500 0.875000 vt 0.038060 0.691341 -vt 0.437500 1.000000 -vt 0.437500 0.875000 -vt 0.937500 0.875000 -vt 0.308658 0.038060 -vt 0.437500 0.937500 -vt 0.073223 0.323223 -vt 0.437500 1.000000 -vt 0.437500 0.875000 -vt 0.937500 0.875000 -vt 0.038060 0.308658 -vt 0.625000 0.375000 -vt 0.625000 0.000000 -vt 0.375000 0.000000 -vt 0.375000 0.375000 -vt 0.375000 0.000000 -vt 0.625000 0.000000 -vt 0.625000 0.625000 -vt 0.625000 0.000000 -vt 0.375000 0.000000 -vt 0.375000 0.625000 -vt 0.625000 0.000000 -vt 0.375000 0.000000 -vt 0.000000 0.125000 -vt 1.000000 0.125000 -vt 0.000000 0.062500 -vt 1.000000 0.125000 -vt 0.000000 0.125000 -vt 0.437500 0.062500 -vt 0.437500 0.125000 -vt 0.308658 0.961939 -vt 0.937500 0.125000 -vt 0.500000 0.961940 -vt 0.000000 0.875000 -vt 1.000000 0.875000 -vt 0.000000 0.937500 -vt 0.937500 0.875000 -vt 0.437500 0.875000 vt 0.500000 1.000000 -vt 0.437500 1.000000 -vt 0.437500 0.875000 -vt 0.308658 0.961939 -vt 0.937500 0.875000 -vt 0.437500 0.937500 -vt 0.676776 0.926777 -vt 0.000000 1.000000 -vt 1.000000 0.875000 -vt 0.000000 0.875000 -vt 0.437500 1.000000 -vt 0.437500 0.875000 -vt 0.937500 0.875000 -vt 0.691341 0.961940 -vt 0.000000 0.125000 -vt 1.000000 0.125000 -vt 0.000000 0.062500 -vt 1.000000 0.125000 -vt 0.000000 0.125000 -vt 0.000000 0.000000 -vt 0.937500 0.125000 -vt 0.437500 0.125000 -vt 0.853553 0.853554 -vt 0.437500 0.062500 -vt 0.437500 0.125000 -vt 0.937500 0.125000 -vt 0.961940 0.691342 -vt 0.826640 0.826641 -vt 1.000000 0.875000 -vt 0.000000 0.875000 -vt 0.000000 0.937500 -vt 0.937500 0.875000 -vt 0.437500 0.875000 -vt 0.853553 0.853554 -vt 0.437500 0.937500 -vt 0.926777 0.676777 -vt 0.000000 1.000000 -vt 1.000000 0.875000 -vt 0.000000 0.875000 -vt 0.437500 1.000000 -vt 0.437500 0.875000 -vt 0.961940 0.691342 -vt 0.937500 0.875000 -vt 0.000000 0.062500 -vt 1.000000 0.125000 -vt 0.000000 0.125000 -vt 1.000000 0.125000 -vt 0.000000 0.125000 -vt 0.000000 0.000000 -vt 0.937500 0.125000 -vt 0.437500 0.125000 -vt 1.000000 0.500000 -vt 0.437500 0.000000 -vt 0.926777 0.323224 -vt 0.437500 0.062500 -vt 0.437500 0.125000 -vt 0.961940 0.308659 -vt 0.937500 0.125000 -vt 1.000000 0.875000 -vt 0.000000 0.875000 -vt 0.000000 0.937500 -vt 0.937500 0.875000 -vt 1.000000 0.500000 -vt 0.437500 0.875000 -vt 0.000000 1.000000 -vt 1.000000 0.875000 -vt 0.000000 0.875000 -vt 0.000000 0.125000 -vt 1.000000 0.125000 -vt 0.000000 0.000000 -vt 0.937500 0.125000 -vt 0.437500 0.125000 -vt 0.853554 0.146447 -vt 0.437500 0.000000 +vt 0.038060 0.500000 +vt 0.323224 0.073223 +vt 0.308658 0.038060 +vt 0.173359 0.173359 +vt 0.961940 0.500000 vt 0.676777 0.073224 -vt 0.000000 0.062500 -vt 1.000000 0.125000 -vt 0.000000 0.125000 -vt 0.437500 0.062500 -vt 0.437500 0.125000 -vt 0.691342 0.038061 -vt 0.937500 0.125000 -vt 0.000000 1.000000 -vt 1.000000 0.875000 -vt 0.000000 0.875000 +vt 0.655330 0.125000 vt 0.826641 0.173359 -vt 0.000000 0.875000 -vt 1.000000 0.875000 -vt 0.500000 0.038061 -vt 0.000000 0.125000 -vt 1.000000 0.125000 -vt 0.000000 0.000000 -vt 0.937500 0.125000 -vt 0.500000 0.000000 -vt 0.437500 0.125000 -vt 0.437500 0.000000 -vt 0.323224 0.073223 -vt 0.000000 0.062500 -vt 1.000000 0.125000 -vt 0.000000 0.125000 -vt 0.437500 0.062500 -vt 0.437500 0.125000 -vt 0.937500 0.125000 -vt 0.308658 0.038060 -vt 1.000000 0.875000 -vt 0.000000 0.875000 -vt 0.000000 1.000000 -vt 1.000000 0.875000 -vt 0.000000 0.875000 -vt 0.173359 0.173359 -vt 1.000000 0.125000 -vt 0.000000 0.125000 -vt 0.437500 0.000000 -vt 0.073223 0.323223 -vt 0.000000 0.062500 -vt 1.000000 0.125000 -vt 0.000000 0.125000 -vt 0.000000 0.875000 -vt 1.000000 0.875000 -vt 0.000000 1.000000 -vt 1.000000 0.875000 -vt 0.000000 0.875000 -vt 0.038060 0.500000 -vt 1.000000 0.125000 -vt 0.000000 0.125000 -vt 0.437500 0.062500 -vt 0.437500 0.125000 -vt 0.038060 0.308658 -vt 0.937500 0.125000 -vt 0.000000 0.062500 -vt 1.000000 0.125000 -vt 0.000000 0.125000 -vt 0.000000 0.875000 -vt 1.000000 0.875000 -vt 0.000000 1.000000 -vt 1.000000 0.875000 -vt 0.000000 0.875000 -vt 1.000000 0.125000 -vt 0.000000 0.125000 -vt 0.000000 0.062500 -vt 1.000000 0.125000 -vt 0.000000 0.125000 -vt 0.173359 0.826640 -vt 1.000000 0.875000 -vt 0.000000 0.875000 -vt 0.000000 0.937500 -vt 0.937500 0.875000 -vt 0.437500 0.875000 -vt 0.146446 0.853553 -vt 0.437500 0.937500 -vt 0.323223 0.926776 -vt 0.000000 1.000000 -vt 1.000000 0.875000 -vt 0.000000 0.875000 -vt 0.437500 0.000000 -vt 0.676776 0.926777 -vt 0.500000 0.500000 -vt 0.500000 0.961940 -vt 0.961940 0.500000 -vt 0.826641 0.173360 -vt 0.000000 0.000000 -vt 0.937500 0.125000 -vt 0.437500 0.125000 -vt 0.000000 0.500000 -vt 0.437500 0.062500 -vt 0.437500 0.125000 -vt 0.038060 0.691342 -vt 0.937500 0.125000 -vt 0.173359 0.826640 -vt 0.826640 0.826641 -vt 0.234835 0.234835 -vt 0.500000 0.875000 -vt 0.125000 0.655330 -vt 0.655330 0.875000 -vt 0.344670 0.875000 -vt 0.875000 0.500000 -vt 0.500000 0.875000 -vt 0.500000 0.125000 -vt 0.500000 0.875000 -vt 0.234835 0.765165 -vt 0.500000 0.875000 -vt 0.655330 0.125000 -vt 0.655330 0.875000 -vt 0.344670 0.875000 -vt 0.765165 0.765165 -vt 0.500000 0.875000 -vt 0.655330 0.875000 -vt 0.125000 0.344670 -vt 0.344670 0.875000 -vt 0.875000 0.655330 -vt 0.344670 0.875000 -vt 0.655330 0.875000 -vt 0.655330 0.875000 -vt 0.344669 0.875000 -vt 0.765165 0.234835 -vt 0.500000 0.875000 -vt 0.655330 0.875000 -vt 0.344670 0.875000 -vt 0.875000 0.344670 -vt 0.344669 0.875000 -vt 0.655330 0.875000 -vt 0.344670 0.125000 -vt 0.344670 0.875000 -vt 0.655330 0.875000 -vt 0.125000 0.500000 -vt 0.500000 0.875000 -vt 0.500000 0.875000 -vt 0.500000 0.500000 -vt 0.000000 0.937500 -vt 0.937500 0.875000 -vt 0.437500 0.875000 -vt 0.146447 0.146446 -vt 0.437500 0.937500 -vt 0.323224 0.073223 -vt 0.437500 0.937500 -vt 0.926777 0.323224 -vt 0.000000 0.937500 -vt 0.937500 0.875000 -vt 0.437500 0.875000 -vt 0.853554 0.146447 -vt 0.500000 0.038061 -vt 0.875000 0.500000 -vt 0.500000 0.875000 -vt 0.765165 0.765165 -vt 0.500000 0.875000 -vt 0.655330 0.875000 -vt 0.344669 0.875000 -vt 0.125000 0.344670 -vt 0.765165 0.234835 -vt 0.500000 0.875000 -vt 0.655330 0.875000 -vt 0.344669 0.875000 -vt 0.875000 0.344670 -vt 0.655330 0.875000 -vt 0.344670 0.875000 -vt 0.344670 0.125000 -vt 0.655330 0.875000 -vt 0.344670 0.875000 -vt 0.500000 0.875000 -vt 0.250000 0.062500 -vt 0.750000 0.062500 -vt 0.750000 0.250000 -vt 0.750000 0.062500 -vt 0.250000 0.062500 -vt 0.250000 0.250000 -vt 0.750000 0.937500 -vt 0.250000 0.937500 -vt 0.250000 0.750000 -vt 0.250000 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.750000 -vt 0.250000 0.062500 -vt 0.750000 0.062500 -vt 0.750000 0.750000 -vt 0.250000 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.250000 -vt 0.250000 0.062500 -vt 0.750000 0.062500 -vt 0.250000 0.750000 -vt 0.250000 0.937500 -vt 0.750000 0.937500 -vt 0.250000 0.250000 -vt 0.383502 0.781250 -vt 0.616497 0.781250 -vt 0.781250 0.616498 -vt 0.698874 0.698874 -vt 0.500000 0.781250 -vt 0.500000 0.781250 -vt 0.698874 0.301126 -vt 0.616497 0.781250 -vt 0.383502 0.781250 -vt 0.383502 0.781250 -vt 0.616498 0.781250 -vt 0.383502 0.218750 -vt 0.500000 0.781250 -vt 0.383502 0.781250 -vt 0.616497 0.781250 -vt 0.781250 0.383503 -vt 0.500000 0.781250 -vt 0.301126 0.301126 -vt 0.500000 0.781250 -vt 0.218750 0.500000 -vt 0.616497 0.781250 -vt 0.218750 0.616497 -vt 0.383502 0.781250 -vt 0.500000 0.781250 -vt 0.781250 0.500000 -vt 0.301126 0.698874 -vt 0.500000 0.781250 -vt 0.616498 0.781250 -vt 0.383502 0.781250 -vt 0.218750 0.383502 -vt 0.500000 0.218750 -vt 0.500000 0.781250 -vt 0.616497 0.781250 -vt 0.383502 0.781250 -vt 0.616497 0.781250 -vt 0.383502 0.781250 -vt 0.616498 0.218750 -vt 0.875000 0.655330 -vt 0.655330 0.875000 -vt 0.344670 0.875000 -vt 0.500000 0.875000 -vt 0.125000 0.500000 -vt 0.500000 0.125000 -vt 0.500000 0.875000 -vt 0.234835 0.765165 -vt 0.500000 0.875000 -vt 0.655330 0.875000 -vt 0.125000 0.655330 -vt 0.344670 0.875000 -vt 0.234835 0.234835 -vt 0.500000 0.875000 -vt 0.655330 0.875000 -vt 0.344670 0.875000 -vt 0.344670 0.875000 -vt 0.655330 0.125000 -vt 0.655330 0.875000 -vt 0.616497 0.781250 -vt 0.383502 0.781250 -vt 0.781250 0.616498 -vt 0.698874 0.698874 -vt 0.500000 0.781250 -vt 0.500000 0.781250 -vt 0.698874 0.301126 -vt 0.616497 0.781250 -vt 0.383502 0.781250 -vt 0.383502 0.781250 -vt 0.616498 0.781250 -vt 0.383502 0.218750 -vt 0.500000 0.781250 -vt 0.616497 0.781250 -vt 0.383502 0.781250 -vt 0.781250 0.383503 -vt 0.500000 0.781250 -vt 0.301126 0.301126 -vt 0.500000 0.781250 -vt 0.218750 0.500000 -vt 0.616497 0.781250 -vt 0.218750 0.616497 -vt 0.383502 0.781250 -vt 0.500000 0.781250 -vt 0.781250 0.500000 -vt 0.301126 0.698874 -vt 0.500000 0.781250 -vt 0.616498 0.781250 -vt 0.383502 0.781250 -vt 0.218750 0.383502 -vt 0.500000 0.218750 -vt 0.500000 0.781250 -vt 0.616497 0.781250 -vt 0.383502 0.781250 -vt 0.616497 0.781250 -vt 0.383502 0.781250 -vt 0.616498 0.218750 -vt 0.038060 0.308658 -vt 0.000000 0.000000 -vt 0.937500 0.125000 -vt 0.437500 0.000000 -vt 0.038060 0.500000 -vt 0.000000 0.062500 -vt 1.000000 0.125000 -vt 0.000000 0.125000 -vt 0.000000 0.062500 -vt 0.000000 0.125000 -vt 1.000000 0.125000 -vt 0.437500 0.062500 -vt 0.500000 1.000000 -vt 0.437500 0.125000 -vt 0.000000 0.000000 -vt 0.691341 0.961940 -vt 0.937500 0.125000 -vt 0.000000 0.062500 -vt 0.000000 0.125000 -vt 1.000000 0.125000 -vt 0.000000 0.062500 -vt 1.000000 0.125000 -vt 0.000000 0.125000 -vt 0.437500 0.062500 -vt 0.437500 0.125000 -vt 0.146446 0.853553 -vt 0.000000 0.000000 -vt 0.038060 0.691342 -vt 0.937500 0.125000 -vt 0.437500 0.000000 -vt 0.173359 0.826640 -vt 0.937500 0.125000 -vt 0.961940 0.691342 -vt 0.000000 0.000000 -vt 0.437500 0.000000 -vt 0.961940 0.500000 -vt 0.961940 0.308659 -vt 0.000000 0.000000 -vt 0.937500 0.125000 -vt 0.437500 0.000000 -vt 0.826641 0.173360 -vt 0.437500 0.000000 -vt 0.500000 0.961940 -vt 0.437500 0.125000 -vt 0.437500 0.062500 -vt 1.000000 0.500000 -vt 0.937500 0.125000 -vt 0.000000 0.000000 -vt 0.308658 0.038060 -vt 0.437500 0.000000 -vt 0.173359 0.173359 -vt 0.437500 0.125000 -vt 0.437500 0.062500 -vt 0.146447 0.146447 -vt 0.000000 0.000000 -vt 0.308658 0.961939 -vt 0.937500 0.125000 -vt 0.437500 0.000000 -vt 0.826640 0.826641 -vt 0.437500 0.062500 -vt 0.437500 0.125000 -vt 0.853553 0.853554 -vt 1.000000 0.125000 -vt 0.000000 0.125000 -vt 0.000000 0.062500 -vt 0.000000 0.062500 -vt 0.000000 0.125000 -vt 1.000000 0.125000 -vt 0.437500 0.062500 -vt 0.437500 0.125000 -vt 0.853554 0.146447 -vt 0.000000 0.000000 -vt 0.691342 0.038061 -vt 0.937500 0.125000 -vt 0.437500 0.000000 -vt 0.500000 0.038061 -vt 0.000000 0.062500 -vt 0.000000 0.125000 -vt 1.000000 0.125000 -vt 0.500000 0.000000 -vt 0.437500 0.062500 -vt 0.437500 0.125000 -vt 1.000000 0.125000 -vt 0.000000 0.125000 -vt 0.000000 0.062500 -vt 0.437500 0.062500 -vt 0.437500 0.125000 -vt 0.000000 0.500000 -vt 0.000000 0.937500 -vt 0.937500 0.875000 -vt 0.308658 0.038060 -vt 0.437500 0.937500 -vt 0.173359 0.173359 -vt 0.000000 0.937500 -vt 0.937500 0.875000 -vt 0.038060 0.308658 -vt 0.437500 0.937500 -vt 0.038060 0.500000 -vt 0.437500 1.000000 -vt 0.437500 0.875000 -vt 0.000000 0.500000 -vt 0.000000 0.937500 -vt 0.308658 0.961939 -vt 0.937500 0.875000 -vt 0.437500 0.937500 -vt 0.500000 0.961940 -vt 0.000000 1.000000 -vt 0.000000 0.875000 -vt 1.000000 0.875000 -vt 0.437500 1.000000 -vt 0.437500 0.875000 -vt 0.500000 1.000000 -vt 0.000000 1.000000 -vt 1.000000 0.875000 -vt 0.000000 0.875000 -vt 0.437500 1.000000 -vt 1.000000 0.500000 -vt 0.437500 0.875000 -vt 0.437500 1.000000 -vt 0.437500 0.875000 -vt 0.146447 0.146446 -vt 0.937500 0.875000 -vt 0.691342 0.038061 -vt 0.000000 0.937500 -vt 0.500000 0.038061 -vt 0.437500 0.937500 -vt 0.500000 0.000000 -vt 0.437500 0.875000 -vt 0.437500 1.000000 -vt 0.000000 0.937500 -vt 0.961940 0.691342 -vt 0.937500 0.875000 -vt 0.437500 0.937500 -vt 0.961940 0.500000 -vt 0.937500 0.875000 -vt 0.000000 0.937500 -vt 0.038060 0.691341 -vt 0.437500 0.937500 -vt 0.173359 0.826640 -vt 0.437500 0.875000 -vt 0.437500 1.000000 -vt 0.146446 0.853553 -vt 0.937500 0.875000 -vt 0.000000 0.937500 -vt 0.691341 0.961940 -vt 0.437500 0.937500 -vt 0.826640 0.826641 -vt 1.000000 0.875000 -vt 0.000000 0.875000 -vt 0.000000 1.000000 -vt 0.437500 0.875000 -vt 0.437500 1.000000 -vt 0.853553 0.853554 -vt 0.000000 0.937500 vt 0.961940 0.308658 -vt 0.937500 0.875000 -vt 0.437500 0.937500 -vt 0.826641 0.173359 -vt 0.000000 1.000000 -vt 0.000000 0.875000 -vt 1.000000 0.875000 -vt 0.437500 1.000000 -vt 0.437500 0.875000 -vt 0.853554 0.146447 -vt 1.000000 0.875000 -vt 0.000000 0.875000 -vt 0.000000 1.000000 -vt 0.000000 1.000000 -vt 0.000000 0.875000 -vt 1.000000 0.875000 -vt 0.000000 1.000000 -vt 0.000000 0.875000 -vt 1.000000 0.875000 -vt 1.000000 0.875000 -vt 0.000000 0.875000 -vt 0.000000 1.000000 +vt 0.146447 0.146446 +vt 0.125000 0.500000 +vt 0.000000 0.500000 +vt 0.323223 0.926776 +vt 0.250000 0.062500 +vt 0.750000 0.062500 +vt 0.750000 0.937500 +vt 0.250000 0.937500 +vt 0.250000 0.250000 +vt 0.750000 0.250000 +vt 0.750000 0.750000 +vt 0.250000 0.750000 +vt 0.383502 0.218750 +vt 0.781250 0.616498 +vt 0.383502 0.781250 +vt 0.344670 0.875000 +vt 0.383502 0.781250 +vt 0.344670 0.875000 +vt 0.301126 0.301126 +vt 0.781250 0.383503 +vt 0.781250 0.500000 +vt 0.698874 0.301126 +vt 0.383502 0.781250 +vt 0.344670 0.875000 +vt 0.383502 0.781250 +vt 0.344670 0.875000 s 0 usemtl crushing_wheel_insert -f 57/163/5 100/266/5 197/503/5 196/499/5 -f 85/234/19 83/229/19 184/467/19 183/463/19 -f 20/57/13 126/327/13 228/587/13 229/589/13 -f 46/133/13 99/265/13 195/498/13 194/495/13 -f 69/195/13 71/200/13 212/542/13 210/538/13 -f 126/327/18 19/53/18 227/585/18 228/587/18 -f 3/10/14 103/275/14 102/273/14 -f 96/262/14 98/264/14 120/313/14 116/303/14 -f 98/264/14 96/262/14 6/19/14 -f 79/220/14 83/229/14 85/234/14 -f 7/22/14 104/276/14 111/291/14 113/296/14 -f 104/276/14 7/22/14 45/129/14 -f 72/203/14 77/216/14 74/210/14 -f 56/160/14 99/265/14 107/282/14 117/305/14 -f 99/265/14 56/160/14 55/158/14 -f 63/181/14 69/195/14 65/187/14 -f 63/181/14 100/266/14 115/301/14 110/288/14 -f 100/266/14 63/181/14 62/179/14 -f 56/160/14 100/266/14 57/163/14 -f 72/203/14 69/195/14 108/284/14 118/308/14 -f 69/195/14 72/203/14 71/200/14 -f 7/22/14 99/265/14 46/133/14 -f 79/220/14 77/216/14 105/277/14 112/294/14 -f 77/216/14 79/220/14 2/8/14 -f 96/262/14 104/276/14 1/3/14 -f 3/10/14 83/229/14 119/311/14 106/279/14 -f 83/229/14 3/10/14 101/270/14 -f 4/12/14 98/264/14 35/99/14 -f 4/12/14 103/275/14 109/286/14 114/300/14 -f 103/275/14 4/12/14 5/16/14 -f 97/263/14 154/395/14 152/391/14 -f 98/264/14 4/12/14 114/300/14 120/313/14 -f 97/263/14 144/373/14 146/377/14 -f 99/265/14 7/22/14 113/296/14 107/282/14 -f 100/266/14 56/160/14 117/305/14 115/301/14 -f 97/263/14 156/400/14 158/406/14 -f 77/216/14 72/203/14 118/308/14 105/277/14 -f 97/263/14 151/389/14 155/399/14 -f 112/293/14 105/278/14 150/386/14 155/397/14 -f 114/299/14 109/287/14 154/396/14 157/402/14 -f 106/279/14 109/286/14 103/275/14 3/10/14 -f 116/303/14 111/291/14 104/276/14 96/262/14 -f 115/302/14 117/306/14 149/383/14 145/375/14 -f 105/278/14 118/309/14 147/379/14 150/386/14 -f 116/303/14 120/313/14 148/382/14 146/377/14 -f 117/307/14 107/283/14 153/393/14 149/384/14 -f 118/310/14 108/285/14 156/401/14 147/380/14 -f 106/280/14 119/312/14 151/388/14 152/390/14 -f 120/313/14 114/300/14 157/403/14 148/382/14 -f 107/283/14 113/297/14 143/370/14 153/393/14 -f 110/288/14 108/284/14 69/195/14 63/181/14 -f 112/294/14 119/311/14 83/229/14 79/220/14 -f 113/298/14 111/292/14 144/374/14 143/371/14 -f 110/289/14 115/302/14 145/375/14 158/404/14 -f 22/60/15 25/69/15 91/249/15 -f 40/113/15 131/337/15 134/345/15 36/101/15 -f 36/101/15 38/107/15 40/113/15 -f 27/75/15 28/79/15 24/65/15 -f 50/142/15 159/407/15 128/330/15 47/134/15 -f 47/134/15 49/140/15 50/142/15 -f 123/320/15 26/73/15 21/58/15 -f 124/322/15 132/339/15 127/328/15 16/43/15 -f 16/43/15 59/169/15 124/322/15 -f 18/49/15 19/53/15 126/327/15 -f 18/49/15 166/424/15 130/335/15 67/192/15 -f 67/192/15 125/326/15 18/49/15 -f 124/322/15 17/46/15 67/192/15 -f 123/320/15 133/342/15 161/412/15 126/327/15 -f 126/327/15 20/57/15 123/320/15 -f 50/142/15 52/148/15 16/43/15 -f 27/75/15 129/334/15 164/419/15 21/58/15 -f 21/58/15 122/318/15 27/75/15 -f 40/113/15 42/120/15 47/134/15 -f 22/60/15 163/417/15 160/411/15 24/65/15 -f 24/65/15 23/64/15 22/60/15 -f 94/257/15 39/110/15 36/101/15 -f 94/257/15 165/422/15 162/414/15 91/249/15 -f 91/249/15 93/255/15 94/257/15 -f 131/337/15 128/331/15 178/452/15 181/458/15 -f 36/101/15 134/345/15 165/422/15 94/257/15 -f 163/416/15 162/415/15 168/430/15 167/426/15 -f 16/43/15 127/328/15 159/407/15 50/142/15 -f 67/192/15 130/335/15 132/339/15 124/322/15 -f 121/314/15 178/451/15 176/447/15 -f 21/58/15 164/419/15 133/342/15 123/320/15 -f 121/314/15 168/429/15 170/433/15 -f 130/336/15 166/423/15 171/435/15 174/442/15 -f 132/340/15 130/336/15 174/442/15 179/453/15 -f 163/417/15 22/60/15 91/249/15 162/414/15 -f 131/337/15 40/113/15 47/134/15 128/330/15 -f 129/332/15 160/410/15 177/449/15 173/439/15 -f 165/421/15 134/345/15 172/438/15 170/433/15 -f 133/343/15 164/420/15 169/431/15 182/460/15 -f 159/408/15 127/329/15 175/444/15 176/446/15 -f 121/314/15 180/456/15 182/462/15 -f 164/420/15 129/333/15 173/440/15 169/431/15 -f 160/410/15 163/418/15 167/427/15 177/449/15 -f 134/345/15 131/338/15 181/459/15 172/438/15 -f 166/424/15 18/49/15 126/327/15 161/412/15 -f 129/334/15 27/75/15 24/65/15 160/411/15 -f 121/314/15 175/445/15 179/455/15 -f 166/425/15 161/413/15 180/457/15 171/436/15 -f 146/377/14 148/382/14 97/263/14 -f 147/381/14 156/400/14 97/263/14 -f 148/382/14 157/403/14 97/263/14 -f 143/372/14 144/373/14 97/263/14 -f 158/405/14 156/401/14 108/285/14 110/290/14 -f 155/398/14 151/388/14 119/312/14 112/295/14 -f 157/403/14 154/395/14 97/263/14 -f 150/387/14 147/381/14 97/263/14 -f 149/385/14 153/394/14 97/263/14 -f 152/391/14 151/389/14 97/263/14 -f 153/394/14 143/372/14 97/263/14 -f 158/406/14 145/376/14 97/263/14 -f 152/392/14 154/396/14 109/287/14 106/281/14 -f 146/378/14 144/374/14 111/292/14 116/304/14 -f 155/399/14 150/387/14 97/263/14 -f 145/376/14 149/385/14 97/263/14 -f 170/433/15 172/438/15 121/314/15 -f 171/437/15 180/456/15 121/314/15 -f 172/438/15 181/459/15 121/314/15 -f 167/428/15 168/429/15 121/314/15 -f 182/461/15 180/457/15 161/413/15 133/344/15 -f 179/454/15 175/444/15 127/329/15 132/341/15 -f 181/459/15 178/451/15 121/314/15 -f 174/443/15 171/437/15 121/314/15 -f 173/441/15 177/450/15 121/314/15 -f 176/447/15 175/445/15 121/314/15 -f 177/450/15 167/428/15 121/314/15 -f 182/462/15 169/432/15 121/314/15 -f 176/448/15 178/452/15 128/331/15 159/409/15 -f 170/434/15 168/430/15 162/415/15 165/422/15 -f 179/455/15 174/443/15 121/314/15 -f 169/432/15 173/441/15 121/314/15 -f 83/229/18 101/270/18 214/550/18 184/467/18 -f 98/264/19 6/19/19 187/475/19 198/505/19 -f 35/99/26 98/264/26 198/505/26 203/518/26 -f 100/266/6 62/179/6 208/533/6 197/503/6 -f 99/265/26 55/158/26 199/508/26 195/498/26 -f 102/273/8 103/275/8 193/493/8 192/490/8 -f 1/3/6 104/276/6 204/521/6 188/478/6 -f 74/210/7 77/216/7 201/513/7 200/511/7 -f 65/187/18 69/195/18 210/538/18 209/535/18 -f 77/216/5 2/8/5 202/516/5 201/513/5 -f 104/276/8 45/129/8 205/524/8 204/521/8 -f 103/275/7 5/16/7 191/488/7 193/493/7 -f 49/140/31 47/134/31 236/609/31 238/615/31 -f 16/43/13 52/148/13 230/593/13 231/596/13 -f 91/249/8 25/69/8 232/599/8 233/601/8 -f 122/318/5 21/58/5 216/555/5 226/583/5 -f 59/169/32 16/43/32 231/596/32 225/579/32 -f 93/255/7 91/249/7 233/601/7 234/604/7 -f 67/192/5 17/46/5 239/617/5 240/620/5 -f 21/58/7 26/73/7 215/553/7 216/555/7 -f 36/101/26 39/110/26 220/565/26 221/568/26 -f 24/65/19 28/79/19 217/558/19 218/560/19 -f 23/64/18 24/65/18 218/560/18 219/563/18 -f 125/326/6 67/192/6 240/620/6 242/626/6 -f 47/134/33 42/120/33 235/607/33 236/609/33 -f 38/107/19 36/101/19 221/568/19 223/574/19 -s 1 +f 53/13/7 96/14/7 193/14/7 192/13/7 +f 81/27/3 79/28/3 180/28/3 179/27/3 +f 16/29/6 122/30/6 224/30/6 225/29/6 +f 42/31/6 95/32/6 191/32/6 190/31/6 +f 65/30/6 67/33/6 208/33/6 206/30/6 +f 122/30/2 15/34/2 223/34/2 224/30/2 +f 3/35/1 99/36/1 98/37/1 +f 92/38/1 94/39/1 116/40/1 112/41/1 +f 94/39/1 92/38/1 6/42/1 +f 75/43/1 79/28/1 81/27/1 +f 7/44/1 100/45/1 107/46/1 109/47/1 +f 100/45/1 7/44/1 41/48/1 +f 68/49/1 73/50/1 70/51/1 +f 52/52/1 95/32/1 103/53/1 113/54/1 +f 95/32/1 52/52/1 51/55/1 +f 59/56/1 65/30/1 61/57/1 +f 59/56/1 96/14/1 111/58/1 106/59/1 +f 96/14/1 59/56/1 58/60/1 +f 52/52/1 96/14/1 53/13/1 +f 68/49/1 65/30/1 104/61/1 114/62/1 +f 65/30/1 68/49/1 67/33/1 +f 7/44/1 95/32/1 42/31/1 +f 75/43/1 73/50/1 101/63/1 108/64/1 +f 73/50/1 75/43/1 2/65/1 +f 92/38/1 100/45/1 1/66/1 +f 3/35/1 79/28/1 115/67/1 102/68/1 +f 79/28/1 3/35/1 97/69/1 +f 4/70/1 94/39/1 31/71/1 +f 4/70/1 99/36/1 105/72/1 110/73/1 +f 99/36/1 4/70/1 5/74/1 +f 93/75/1 150/76/1 148/77/1 +f 94/39/1 4/70/1 110/73/1 116/40/1 +f 93/75/1 140/78/1 142/79/1 +f 95/32/1 7/44/1 109/47/1 103/53/1 +f 96/14/1 52/52/1 113/54/1 111/58/1 +f 93/75/1 152/80/1 154/81/1 +f 73/50/1 68/49/1 114/62/1 101/63/1 +f 93/75/1 147/82/1 151/83/1 +f 108/84/1 101/85/1 146/86/1 151/87/1 +f 110/88/1 105/89/1 150/90/1 153/91/1 +f 102/68/1 105/72/1 99/36/1 3/35/1 +f 112/41/1 107/46/1 100/45/1 92/38/1 +f 111/92/1 113/93/1 145/94/1 141/95/1 +f 101/85/1 114/96/1 143/97/1 146/86/1 +f 112/41/1 116/40/1 144/98/1 142/79/1 +f 113/99/1 103/100/1 149/101/1 145/102/1 +f 114/103/1 104/85/1 152/104/1 143/105/1 +f 102/106/1 115/107/1 147/108/1 148/109/1 +f 116/40/1 110/73/1 153/110/1 144/98/1 +f 103/100/1 109/111/1 139/112/1 149/101/1 +f 106/59/1 104/61/1 65/30/1 59/56/1 +f 108/64/1 115/67/1 79/28/1 75/43/1 +f 109/113/1 107/114/1 140/115/1 139/116/1 +f 106/117/1 111/92/1 141/95/1 154/118/1 +f 18/119/5 21/120/5 87/36/5 +f 36/38/5 127/41/5 130/40/5 32/39/5 +f 32/39/5 34/121/5 36/38/5 +f 23/43/5 24/27/5 20/122/5 +f 46/44/5 155/47/5 124/46/5 43/45/5 +f 43/45/5 45/48/5 46/44/5 +f 119/123/5 22/124/5 17/125/5 +f 120/52/5 128/54/5 123/53/5 12/126/5 +f 12/126/5 55/55/5 120/52/5 +f 14/127/5 15/34/5 122/30/5 +f 14/127/5 162/128/5 126/58/5 63/129/5 +f 63/129/5 121/60/5 14/127/5 +f 120/52/5 13/130/5 63/129/5 +f 119/123/5 129/62/5 157/61/5 122/30/5 +f 122/30/5 16/29/5 119/123/5 +f 46/44/5 48/31/5 12/126/5 +f 23/43/5 125/64/5 160/63/5 17/125/5 +f 17/125/5 118/131/5 23/43/5 +f 36/38/5 38/66/5 43/45/5 +f 18/119/5 159/68/5 156/132/5 20/122/5 +f 20/122/5 19/133/5 18/119/5 +f 90/134/5 35/71/5 32/39/5 +f 90/134/5 161/73/5 158/72/5 87/36/5 +f 87/36/5 89/74/5 90/134/5 +f 127/88/5 124/89/5 174/90/5 177/91/5 +f 32/39/5 130/40/5 161/73/5 90/134/5 +f 159/113/5 158/114/5 164/115/5 163/116/5 +f 12/126/5 123/53/5 155/47/5 46/44/5 +f 63/129/5 126/58/5 128/54/5 120/52/5 +f 117/75/5 174/76/5 172/77/5 +f 17/125/5 160/63/5 129/62/5 119/123/5 +f 117/75/5 164/78/5 166/79/5 +f 126/85/5 162/96/5 167/97/5 170/86/5 +f 128/84/5 126/85/5 170/86/5 175/87/5 +f 159/68/5 18/119/5 87/36/5 158/72/5 +f 127/41/5 36/38/5 43/45/5 124/46/5 +f 125/99/5 156/100/5 173/101/5 169/102/5 +f 161/41/5 130/40/5 168/98/5 166/79/5 +f 129/117/5 160/92/5 165/95/5 178/118/5 +f 155/106/5 123/107/5 171/108/5 172/109/5 +f 117/75/5 176/80/5 178/81/5 +f 160/92/5 125/93/5 169/94/5 165/95/5 +f 156/100/5 159/111/5 163/112/5 173/101/5 +f 130/40/5 127/73/5 177/110/5 168/98/5 +f 162/128/5 14/127/5 122/30/5 157/61/5 +f 125/64/5 23/43/5 20/122/5 156/132/5 +f 117/75/5 171/82/5 175/83/5 +f 162/103/5 157/85/5 176/104/5 167/105/5 +f 142/79/1 144/98/1 93/75/1 +f 143/143/1 152/80/1 93/75/1 +f 144/98/1 153/110/1 93/75/1 +f 139/144/1 140/78/1 93/75/1 +f 154/145/1 152/104/1 104/85/1 106/146/1 +f 151/147/1 147/108/1 115/107/1 108/148/1 +f 153/110/1 150/76/1 93/75/1 +f 146/149/1 143/143/1 93/75/1 +f 145/150/1 149/151/1 93/75/1 +f 148/77/1 147/82/1 93/75/1 +f 149/151/1 139/144/1 93/75/1 +f 154/81/1 141/152/1 93/75/1 +f 148/153/1 150/90/1 105/89/1 102/154/1 +f 142/155/1 140/115/1 107/114/1 112/156/1 +f 151/83/1 146/149/1 93/75/1 +f 141/152/1 145/150/1 93/75/1 +f 166/79/5 168/98/5 117/75/5 +f 167/143/5 176/80/5 117/75/5 +f 168/98/5 177/110/5 117/75/5 +f 163/144/5 164/78/5 117/75/5 +f 178/145/5 176/104/5 157/85/5 129/146/5 +f 175/147/5 171/108/5 123/107/5 128/148/5 +f 177/110/5 174/76/5 117/75/5 +f 170/149/5 167/143/5 117/75/5 +f 169/150/5 173/151/5 117/75/5 +f 172/77/5 171/82/5 117/75/5 +f 173/151/5 163/144/5 117/75/5 +f 178/81/5 165/152/5 117/75/5 +f 172/153/5 174/90/5 124/89/5 155/154/5 +f 166/155/5 164/115/5 158/114/5 161/156/5 +f 175/83/5 170/149/5 117/75/5 +f 165/152/5 169/150/5 117/75/5 +f 79/28/2 97/69/2 210/69/2 180/28/2 +f 94/39/3 6/42/3 183/42/3 194/39/3 +f 31/71/4 94/39/4 194/39/4 199/71/4 +f 96/14/8 58/60/8 204/60/8 193/14/8 +f 95/32/4 51/55/4 195/55/4 191/32/4 +f 98/37/17 99/36/17 189/36/17 188/37/17 +f 1/66/8 100/45/8 200/45/8 184/66/8 +f 70/51/14 73/50/14 197/50/14 196/51/14 +f 61/57/2 65/30/2 206/30/2 205/57/2 +f 73/50/7 2/65/7 198/65/7 197/50/7 +f 100/45/17 41/48/17 201/48/17 200/45/17 +f 99/36/14 5/74/14 187/74/14 189/36/14 +f 45/48/23 43/45/23 232/45/23 234/48/23 +f 12/126/6 48/31/6 226/31/6 227/126/6 +f 87/36/17 21/120/17 228/120/17 229/36/17 +f 118/131/7 17/125/7 212/125/7 222/131/7 +f 55/55/24 12/126/24 227/126/24 221/55/24 +f 89/74/14 87/36/14 229/36/14 230/74/14 +f 63/129/7 13/130/7 235/130/7 236/129/7 +f 17/125/14 22/124/14 211/124/14 212/125/14 +f 32/39/4 35/71/4 216/71/4 217/39/4 +f 20/122/3 24/27/3 213/27/3 214/122/3 +f 19/133/2 20/122/2 214/122/2 215/133/2 +f 121/60/8 63/129/8 236/129/8 238/60/8 +f 43/45/25 38/66/25 231/66/25 232/45/25 +f 34/121/3 32/39/3 217/39/3 219/121/3 usemtl m_axis -f 9/27/1 11/33/4 15/41/5 12/35/6 -f 11/34/4 10/30/3 14/39/7 15/42/5 -f 10/31/3 8/24/2 13/37/8 14/40/7 -f 8/25/2 9/28/1 12/36/6 13/38/8 -f 30/84/9 12/35/6 15/41/5 32/90/10 -f 32/91/10 15/42/5 14/39/7 31/87/11 -f 31/88/11 14/40/7 13/37/8 29/81/12 -f 29/82/12 13/38/8 12/36/6 30/85/9 +f 28/5/2 11/6/2 10/7/2 27/8/2 +f 27/5/3 10/6/3 8/7/3 25/8/3 +f 25/5/4 8/6/4 9/7/4 26/8/4 +f 26/5/6 9/6/6 11/7/6 28/8/6 usemtl m_axis_top -f 9/26/1 8/23/2 10/29/3 11/32/4 -f 30/83/9 32/89/10 31/86/11 29/80/12 -s 0 +f 9/1/1 8/2/1 10/3/1 11/4/1 +f 26/1/5 28/4/5 27/3/5 25/2/5 usemtl crushing_wheel_plates -f 33/93/13 37/103/13 39/111/13 35/100/13 -f 6/17/14 96/261/14 1/1/14 34/94/14 -f 25/68/6 92/250/6 246/636/6 232/597/6 -f 38/104/15 41/114/15 42/117/15 40/112/15 -f 34/95/16 41/115/16 38/105/16 6/18/16 -f 34/96/17 1/2/17 42/118/17 41/116/17 -f 6/20/18 38/106/18 37/102/18 33/92/18 -f 43/122/5 48/135/5 42/119/5 1/4/5 -f 45/126/14 7/21/14 46/130/14 44/123/14 -f 42/119/20 48/135/20 237/610/20 235/605/20 -f 49/137/15 51/143/15 52/146/15 50/141/15 -f 44/124/21 51/144/21 49/138/21 45/127/21 -f 44/125/22 46/131/22 52/147/22 51/145/22 -f 45/128/7 49/139/7 48/136/7 43/121/7 -f 54/153/18 58/165/18 52/149/18 46/132/18 -f 54/153/18 46/132/18 194/494/18 206/525/18 -f 55/155/14 56/159/14 57/161/14 53/150/14 -f 59/167/15 60/171/15 17/44/15 124/321/15 -f 53/151/17 60/172/17 59/168/17 55/156/17 -f 53/152/23 57/162/23 17/45/23 60/173/23 -f 55/157/19 59/170/19 58/166/19 54/154/19 -f 61/175/7 68/194/7 17/47/7 57/164/7 -f 55/157/19 54/154/19 206/526/19 199/506/19 -f 62/176/14 63/180/14 65/185/14 64/182/14 -f 19/52/19 75/211/19 243/627/19 227/584/19 -f 125/323/15 66/189/15 19/50/15 18/48/15 -f 64/183/22 66/190/22 125/324/22 62/177/22 -f 64/184/24 65/186/24 19/51/24 66/191/24 -f 62/178/8 125/325/8 68/193/8 61/174/8 -f 70/197/19 75/211/19 19/52/19 65/188/19 -f 71/198/14 72/202/14 74/207/14 73/204/14 -f 92/251/5 93/254/5 234/602/5 246/637/5 -f 20/54/15 76/213/15 26/70/15 123/319/15 -f 73/205/23 76/214/23 20/55/23 71/199/23 -f 73/206/25 74/208/25 26/71/25 76/215/25 -f 71/201/26 20/56/26 75/212/26 70/196/26 -f 78/217/8 81/225/8 26/72/8 74/209/8 -f 78/217/8 74/209/8 200/509/8 213/545/8 -f 2/5/14 79/219/14 85/232/14 80/221/14 -f 48/136/27 49/139/27 238/613/27 237/611/27 -f 122/315/15 82/226/15 28/76/15 27/74/15 -f 80/222/24 82/227/24 122/316/24 2/6/24 -f 80/223/28 85/233/28 28/77/28 82/228/28 -f 2/7/6 122/317/6 81/224/6 78/218/6 -f 84/230/26 87/240/26 28/78/26 85/235/26 -f 2/7/6 78/218/6 213/546/6 202/514/6 -f 101/267/14 3/9/14 102/271/14 86/236/14 -f 75/212/26 20/56/26 229/590/26 243/628/26 -f 23/61/15 88/241/15 25/66/15 22/59/15 -f 86/237/25 88/242/25 23/62/25 101/268/25 -f 86/238/16 102/272/16 25/67/16 88/243/16 -f 101/269/13 23/63/13 87/239/13 84/231/13 -f 89/244/6 92/250/6 25/68/6 102/274/6 -f 5/13/14 4/11/14 35/97/14 90/246/14 -f 93/252/15 95/258/15 39/108/15 94/256/15 -f 90/247/28 95/259/28 93/253/28 5/14/28 -f 90/248/21 35/98/21 39/109/21 95/260/21 -f 5/15/5 93/254/5 92/251/5 89/245/5 -f 203/517/14 198/504/14 187/474/14 186/471/14 -f 188/477/14 204/520/14 205/522/14 189/480/14 -f 194/496/14 195/497/14 199/507/14 206/527/14 -f 196/500/14 197/502/14 208/531/14 207/528/14 -f 209/534/14 210/537/14 212/543/14 211/539/14 -f 200/510/14 201/512/14 202/515/14 213/547/14 -f 183/464/14 184/466/14 214/548/14 185/468/14 -f 192/489/14 193/492/14 191/486/14 190/483/14 -f 84/230/26 85/235/26 183/465/26 185/469/26 -f 101/269/13 84/231/13 185/470/13 214/549/13 -f 62/178/8 61/174/8 207/529/8 208/532/8 -f 61/175/7 57/164/7 196/501/7 207/530/7 -f 6/20/29 33/92/29 186/472/29 187/476/29 -f 33/93/13 35/100/13 203/519/13 186/473/13 -f 89/244/6 102/274/6 192/491/6 190/484/6 -f 45/128/7 43/121/7 189/481/7 205/523/7 -f 43/122/5 1/4/5 188/479/5 189/482/5 -f 71/201/26 70/196/26 211/540/26 212/544/26 -f 70/197/19 65/188/19 209/536/19 211/541/19 -f 5/15/30 89/245/30 190/485/30 191/487/30 -f 220/564/15 222/569/15 223/572/15 221/567/15 -f 235/606/15 237/612/15 238/614/15 236/608/15 -f 230/592/15 224/575/15 225/578/15 231/595/15 -f 239/616/15 241/621/15 242/624/15 240/619/15 -f 227/586/15 243/629/15 229/591/15 228/588/15 -f 215/551/15 244/630/15 226/581/15 216/554/15 -f 217/556/15 245/633/15 219/561/15 218/559/15 -f 232/598/15 246/638/15 234/603/15 233/600/15 -f 81/224/6 122/317/6 226/582/6 244/631/6 -f 52/149/18 58/165/18 224/576/18 230/594/18 -f 26/72/8 81/225/8 244/632/8 215/552/8 -f 87/239/13 23/63/13 219/562/13 245/634/13 -f 58/166/19 59/170/19 225/580/19 224/577/19 -f 28/78/26 87/240/26 245/635/26 217/557/26 -f 68/193/8 125/325/8 242/625/8 241/622/8 -f 37/102/18 38/106/18 223/573/18 222/570/18 -f 17/47/7 68/194/7 241/623/7 239/618/7 -f 39/111/13 37/103/13 222/571/13 220/566/13 -s 1 +f 29/9/6 33/10/6 35/11/6 31/12/6 +f 6/15/1 92/16/1 1/17/1 30/18/1 +f 21/11/8 88/10/8 242/10/8 228/11/8 +f 34/19/5 37/20/5 38/21/5 36/22/5 +f 30/9/9 37/10/9 34/11/9 6/12/9 +f 30/23/10 1/24/10 38/25/10 37/26/10 +f 6/24/2 34/25/2 33/26/2 29/23/2 +f 39/9/7 44/10/7 38/11/7 1/12/7 +f 41/15/1 7/16/1 42/17/1 40/18/1 +f 38/11/11 44/10/11 233/10/11 231/11/11 +f 45/19/5 47/20/5 48/21/5 46/22/5 +f 40/9/12 47/10/12 45/11/12 41/12/12 +f 40/23/13 42/24/13 48/25/13 47/26/13 +f 41/24/14 45/25/14 44/26/14 39/23/14 +f 50/9/2 54/10/2 48/11/2 42/12/2 +f 50/9/2 42/12/2 190/12/2 202/9/2 +f 51/15/1 52/16/1 53/17/1 49/18/1 +f 55/19/5 56/20/5 13/21/5 120/22/5 +f 49/9/10 56/10/10 55/11/10 51/12/10 +f 49/23/15 53/24/15 13/25/15 56/26/15 +f 51/24/3 55/25/3 54/26/3 50/23/3 +f 57/9/14 64/10/14 13/11/14 53/12/14 +f 51/24/3 50/23/3 202/23/3 195/24/3 +f 58/15/1 59/16/1 61/17/1 60/18/1 +f 15/11/3 71/10/3 239/10/3 223/11/3 +f 121/19/5 62/20/5 15/21/5 14/22/5 +f 60/9/13 62/10/13 121/11/13 58/12/13 +f 60/23/16 61/24/16 15/25/16 62/26/16 +f 58/24/17 121/25/17 64/26/17 57/23/17 +f 66/9/3 71/10/3 15/11/3 61/12/3 +f 67/15/1 68/16/1 70/17/1 69/18/1 +f 88/26/7 89/25/7 230/25/7 242/26/7 +f 16/19/5 72/20/5 22/21/5 119/22/5 +f 69/9/15 72/10/15 16/11/15 67/12/15 +f 69/23/18 70/24/18 22/25/18 72/26/18 +f 67/24/4 16/25/4 71/26/4 66/23/4 +f 74/9/17 77/10/17 22/11/17 70/12/17 +f 74/9/17 70/12/17 196/12/17 209/9/17 +f 2/15/1 75/16/1 81/17/1 76/18/1 +f 44/26/19 45/25/19 234/25/19 233/26/19 +f 118/19/5 78/20/5 24/21/5 23/22/5 +f 76/9/16 78/10/16 118/11/16 2/12/16 +f 76/23/20 81/24/20 24/25/20 78/26/20 +f 2/24/8 118/25/8 77/26/8 74/23/8 +f 80/9/4 83/10/4 24/11/4 81/12/4 +f 2/24/8 74/23/8 209/23/8 198/24/8 +f 97/15/1 3/16/1 98/17/1 82/18/1 +f 71/26/4 16/25/4 225/25/4 239/26/4 +f 19/19/5 84/20/5 21/21/5 18/22/5 +f 82/9/18 84/10/18 19/11/18 97/12/18 +f 82/23/9 98/24/9 21/25/9 84/26/9 +f 97/24/6 19/25/6 83/26/6 80/23/6 +f 85/9/8 88/10/8 21/11/8 98/12/8 +f 5/15/1 4/16/1 31/17/1 86/18/1 +f 89/19/5 91/20/5 35/21/5 90/22/5 +f 86/9/20 91/10/20 89/11/20 5/12/20 +f 86/23/12 31/24/12 35/25/12 91/26/12 +f 5/24/7 89/25/7 88/26/7 85/23/7 +f 199/15/1 194/16/1 183/17/1 182/18/1 +f 184/15/1 200/16/1 201/17/1 185/18/1 +f 190/15/1 191/16/1 195/17/1 202/18/1 +f 192/15/1 193/16/1 204/17/1 203/18/1 +f 205/15/1 206/16/1 208/17/1 207/18/1 +f 196/15/1 197/16/1 198/17/1 209/18/1 +f 179/15/1 180/16/1 210/17/1 181/18/1 +f 188/15/1 189/16/1 187/17/1 186/18/1 +f 80/9/4 81/12/4 179/12/4 181/9/4 +f 97/24/6 80/23/6 181/23/6 210/24/6 +f 58/24/17 57/23/17 203/23/17 204/24/17 +f 57/9/14 53/12/14 192/12/14 203/9/14 +f 6/24/21 29/23/21 182/23/21 183/24/21 +f 29/9/6 31/12/6 199/12/6 182/9/6 +f 85/9/8 98/12/8 188/12/8 186/9/8 +f 41/24/14 39/23/14 185/23/14 201/24/14 +f 39/9/7 1/12/7 184/12/7 185/9/7 +f 67/24/4 66/23/4 207/23/4 208/24/4 +f 66/9/3 61/12/3 205/12/3 207/9/3 +f 5/24/22 85/23/22 186/23/22 187/24/22 +f 216/19/5 218/20/5 219/21/5 217/22/5 +f 231/19/5 233/20/5 234/21/5 232/22/5 +f 226/19/5 220/20/5 221/21/5 227/22/5 +f 235/19/5 237/20/5 238/21/5 236/22/5 +f 223/19/5 239/20/5 225/21/5 224/22/5 +f 211/19/5 240/20/5 222/21/5 212/22/5 +f 213/19/5 241/20/5 215/21/5 214/22/5 +f 228/19/5 242/20/5 230/21/5 229/22/5 +f 77/26/8 118/25/8 222/25/8 240/26/8 +f 48/11/2 54/10/2 220/10/2 226/11/2 +f 22/11/17 77/10/17 240/10/17 211/11/17 +f 83/26/6 19/25/6 215/25/6 241/26/6 +f 54/26/3 55/25/3 221/25/3 220/26/3 +f 24/11/4 83/10/4 241/10/4 213/11/4 +f 64/26/17 121/25/17 238/25/17 237/26/17 +f 33/26/2 34/25/2 219/25/2 218/26/2 +f 13/11/14 64/10/14 237/10/14 235/11/14 +f 35/11/6 33/10/6 218/10/6 216/11/6 usemtl m_spruce_log_top -f 135/346/11 136/349/10 137/352/4 138/355/3 -f 139/358/12 135/347/11 138/356/3 140/361/2 -f 141/364/9 139/359/12 140/362/2 142/367/1 -f 136/350/10 141/365/9 142/368/1 137/353/4 -f 142/369/1 140/363/2 138/357/3 137/354/4 -f 136/351/10 135/348/11 139/360/12 141/366/9 +f 131/135/2 132/136/2 133/137/2 134/138/2 +f 135/135/3 131/136/3 134/137/3 136/138/3 +f 137/135/4 135/136/4 136/137/4 138/138/4 +f 132/135/6 137/136/6 138/137/6 133/138/6 +f 138/139/1 136/140/1 134/141/1 133/142/1 +f 132/139/5 131/140/5 135/141/5 137/142/5 diff --git a/src/main/resources/assets/create/models/block/flywheel/flywheel.obj b/src/main/resources/assets/create/models/block/flywheel/flywheel.obj index 11392429e..5daf26a41 100644 --- a/src/main/resources/assets/create/models/block/flywheel/flywheel.obj +++ b/src/main/resources/assets/create/models/block/flywheel/flywheel.obj @@ -1,4 +1,4 @@ -# Blender v3.2.0 OBJ File: 'engine.blend' +# Blender 4.2.0 # www.blender.org mtllib flywheel.mtl o cube.008_cube.006 @@ -260,822 +260,263 @@ v -0.873084 0.687500 1.068750 v -0.562500 0.687500 0.940102 v -0.068750 0.687500 1.873084 v 0.059898 0.687500 1.562499 -vt 0.375000 0.000000 -vt 0.625000 0.000000 -vt 0.625000 1.000000 -vt 0.375000 1.000000 -vt 0.375000 0.000000 -vt 0.625000 0.000000 -vt 0.625000 1.000000 -vt 0.375000 1.000000 -vt 0.375000 0.000000 -vt 0.625000 0.000000 -vt 0.625000 1.000000 -vt 0.375000 1.000000 -vt 0.375000 0.000000 -vt 0.625000 0.000000 -vt 0.625000 1.000000 -vt 0.375000 1.000000 -vt 0.375000 0.375000 -vt 0.625000 0.375000 -vt 0.625000 0.625000 -vt 0.375000 0.625000 -vt 0.375000 0.375000 -vt 0.625000 0.375000 -vt 0.625000 0.625000 -vt 0.375000 0.625000 -vt 0.562500 0.687500 -vt 0.562500 0.500000 -vt 0.687500 0.500000 -vt 0.687500 0.687500 -vt 0.812500 1.000000 -vt 0.906250 0.781250 -vt 1.000000 1.000000 -vt 1.000000 1.000000 -vt 0.906250 0.781250 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.562500 0.500000 -vt 0.687500 0.500000 -vt 0.687500 0.687500 -vt 0.812500 1.000000 -vt 1.000000 1.000000 -vt 1.000000 1.000000 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.562500 0.500000 -vt 0.687500 0.500000 -vt 0.687500 0.687500 -vt 0.812500 1.000000 -vt 1.000000 1.000000 -vt 1.000000 1.000000 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.562500 0.500000 -vt 0.687500 0.500000 -vt 0.687500 0.687500 -vt 0.812500 1.000000 -vt 1.000000 1.000000 -vt 1.000000 1.000000 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.562500 0.500000 -vt 0.687500 0.500000 -vt 0.687500 0.687500 -vt 0.812500 1.000000 -vt 1.000000 1.000000 -vt 1.000000 1.000000 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.562500 0.500000 -vt 0.687500 0.500000 -vt 0.687500 0.687500 -vt 0.812500 1.000000 -vt 1.000000 1.000000 -vt 1.000000 1.000000 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.562500 0.500000 -vt 0.687500 0.500000 -vt 0.687500 0.687500 -vt 0.812500 1.000000 -vt 1.000000 1.000000 -vt 1.000000 1.000000 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.562500 0.500000 -vt 0.687500 0.500000 -vt 0.687500 0.687500 -vt 0.812500 1.000000 -vt 1.000000 1.000000 -vt 1.000000 1.000000 -vt 0.812500 1.000000 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.812500 -vt 0.750000 0.812500 -vt 0.750000 0.750000 -vt 0.812500 0.750000 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.812500 -vt 0.812500 0.750000 -vt 0.750000 0.750000 -vt 0.750000 0.812500 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.812500 -vt 0.812500 0.750000 -vt 0.750000 0.750000 -vt 0.750000 0.812500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.812500 -vt 0.750000 0.812500 -vt 0.750000 0.750000 -vt 0.812500 0.750000 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.812500 -vt 0.812500 0.750000 -vt 0.750000 0.750000 -vt 0.750000 0.812500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.812500 -vt 0.750000 0.812500 -vt 0.750000 0.750000 -vt 0.812500 0.750000 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.812500 -vt 0.750000 0.812500 -vt 0.750000 0.750000 -vt 0.812500 0.750000 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.812500 -vt 0.812500 0.750000 -vt 0.750000 0.750000 -vt 0.750000 0.812500 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.875000 0.531250 -vt 0.937500 0.531250 -vt 0.937500 0.593750 -vt 0.875000 0.593750 -vt 0.218750 0.468750 -vt 0.218750 0.375000 -vt 0.468750 0.375000 -vt 0.468750 0.468750 -vt 0.218750 0.468750 -vt 0.218750 0.375000 -vt 0.468750 0.375000 -vt 0.468750 0.468750 -vt 0.218750 0.375000 -vt 0.468750 0.375000 -vt 0.468750 0.468750 -vt 0.218750 0.468750 -vt 0.468750 0.125000 -vt 0.218750 0.125000 -vt 0.218750 0.468750 -vt 0.218750 0.375000 -vt 0.468750 0.375000 -vt 0.468750 0.468750 -vt 0.875000 0.531250 -vt 0.875000 0.593750 -vt 0.937500 0.593750 -vt 0.937500 0.531250 -vt 0.218750 0.468750 -vt 0.468750 0.468750 -vt 0.468750 0.375000 -vt 0.218750 0.375000 -vt 0.218750 0.468750 -vt 0.468750 0.468750 -vt 0.468750 0.375000 -vt 0.218750 0.375000 -vt 0.218750 0.375000 -vt 0.218750 0.468750 -vt 0.468750 0.468750 -vt 0.468750 0.375000 -vt 0.468750 0.125000 -vt 0.218750 0.125000 -vt 0.218750 0.468750 -vt 0.468750 0.468750 -vt 0.468750 0.375000 -vt 0.218750 0.375000 -vt 0.125000 0.250000 -vt 0.125000 0.312500 -vt 0.031250 0.312500 -vt 0.031250 0.250000 -vt 0.218750 0.250000 -vt 0.218750 0.312500 -vt 0.125000 0.312500 -vt 0.218750 0.312500 -vt 0.218750 0.406250 -vt 0.125000 0.406250 -vt 0.125000 0.250000 -vt 0.031250 0.250000 -vt 0.031250 0.312500 -vt 0.125000 0.312500 -vt 0.218750 0.250000 -vt 0.218750 0.312500 -vt 0.125000 0.312500 -vt 0.125000 0.406250 -vt 0.218750 0.406250 -vt 0.218750 0.312500 -vt 0.125000 0.250000 -vt 0.031250 0.250000 -vt 0.031250 0.312500 -vt 0.125000 0.312500 -vt 0.218750 0.250000 -vt 0.218750 0.312500 -vt 0.125000 0.312500 -vt 0.125000 0.406250 -vt 0.218750 0.406250 -vt 0.218750 0.312500 -vt 0.125000 0.250000 -vt 0.125000 0.312500 -vt 0.031250 0.312500 -vt 0.031250 0.250000 -vt 0.218750 0.250000 -vt 0.218750 0.312500 -vt 0.125000 0.312500 -vt 0.218750 0.312500 -vt 0.218750 0.406250 -vt 0.125000 0.406250 -vt 0.031250 0.312500 -vt 0.125000 0.312500 -vt 0.218750 0.312500 -vt 0.125000 0.312500 -vt 0.125000 0.406250 -vt 0.218750 0.406250 -vt 0.218750 0.312500 -vt 0.125000 0.312500 -vt 0.031250 0.312500 -vt 0.218750 0.312500 -vt 0.125000 0.312500 -vt 0.218750 0.312500 -vt 0.218750 0.406250 -vt 0.125000 0.406250 -vt 0.125000 0.312500 -vt 0.031250 0.312500 -vt 0.218750 0.312500 -vt 0.125000 0.312500 -vt 0.218750 0.312500 -vt 0.218750 0.406250 -vt 0.125000 0.406250 -vt 0.031250 0.312500 -vt 0.125000 0.312500 -vt 0.218750 0.312500 -vt 0.125000 0.312500 -vt 0.125000 0.406250 -vt 0.218750 0.406250 -vt 0.218750 0.312500 -vt 0.562500 0.812500 -vt 0.000000 0.812500 -vt 0.062500 0.656250 -vt 0.500000 0.656250 -vt 0.562500 0.906250 -vt 0.000000 0.906250 -vt 0.562500 0.812500 -vt 0.000000 0.812500 -vt 0.062500 0.656250 -vt 0.500000 0.656250 -vt 0.562500 0.906250 -vt 0.000000 0.906250 -vt 0.562500 0.812500 -vt 0.000000 0.812500 -vt 0.062500 0.656250 -vt 0.500000 0.656250 -vt 0.562500 0.906250 -vt 0.000000 0.906250 -vt 0.562500 0.812500 -vt 0.000000 0.812500 -vt 0.062500 0.656250 -vt 0.500000 0.656250 -vt 0.562500 0.906250 -vt 0.000000 0.906250 -vt 0.562500 0.812500 -vt 0.000000 0.812500 -vt 0.062500 0.656250 -vt 0.500000 0.656250 -vt 0.562500 0.906250 -vt 0.000000 0.906250 -vt 0.562500 0.812500 -vt 0.000000 0.812500 -vt 0.062500 0.656250 -vt 0.500000 0.656250 -vt 0.562500 0.906250 -vt 0.000000 0.906250 -vt 0.562500 0.812500 -vt 0.000000 0.812500 -vt 0.062500 0.656250 -vt 0.500000 0.656250 -vt 0.562500 0.906250 -vt 0.000000 0.906250 -vt 0.562500 0.812500 -vt 0.000000 0.812500 -vt 0.062500 0.656250 -vt 0.500000 0.656250 -vt 0.562500 0.906250 -vt 0.000000 0.906250 -vt 0.062500 0.562500 -vt 0.500000 0.562500 -vt 0.062500 0.562500 -vt 0.500000 0.562500 -vt 0.062500 0.562500 -vt 0.500000 0.562500 -vt 0.062500 0.562500 -vt 0.500000 0.562500 -vt 0.062500 0.562500 -vt 0.500000 0.562500 -vt 0.062500 0.562500 -vt 0.500000 0.562500 -vt 0.062500 0.562500 -vt 0.500000 0.562500 -vt 0.062500 0.562500 -vt 0.500000 0.562500 -vt 0.562500 0.812500 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.000000 0.812500 -vt 0.562500 0.812500 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.000000 0.812500 -vt 0.562500 0.812500 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.000000 0.812500 -vt 0.562500 0.812500 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.000000 0.812500 -vt 0.562500 0.812500 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.000000 0.812500 -vt 0.562500 0.812500 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.000000 0.812500 -vt 0.562500 0.812500 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.000000 0.812500 -vt 0.562500 0.812500 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.000000 0.812500 -vn -1.0000 0.0000 0.0000 -vn 1.0000 0.0000 0.0000 -vn 0.0000 0.0000 -1.0000 -vn 0.0000 -0.0000 1.0000 -vn 0.0000 1.0000 0.0000 -vn 0.0000 -1.0000 -0.0000 -vn 0.7071 0.0000 0.7071 +vn -1.0000 -0.0000 -0.0000 +vn 1.0000 -0.0000 -0.0000 +vn -0.0000 -0.0000 -1.0000 +vn -0.0000 -0.0000 1.0000 +vn -0.0000 1.0000 -0.0000 +vn -0.0000 -1.0000 -0.0000 +vn 0.7071 -0.0000 0.7071 vn 0.7071 -0.0000 -0.7071 -vn -0.7071 0.0000 -0.7071 -vn -0.7071 0.0000 0.7071 -vn -0.2554 -0.8881 0.3822 -vn -0.4509 -0.8881 0.0896 -vn 0.6066 -0.0001 0.7950 -vn -0.3699 0.2562 0.8930 -vn -0.3827 -0.0000 0.9239 -vn 0.3827 -0.0000 0.9239 -vn 0.0896 -0.8881 0.4509 -vn 0.9911 -0.0001 0.1332 -vn 0.9239 -0.0000 0.3827 -vn 0.3822 -0.8881 0.2554 -vn 0.7950 -0.0001 -0.6066 -vn 0.9239 0.0000 -0.3827 -vn 0.4509 -0.8881 -0.0896 -vn 0.1332 -0.0002 -0.9911 -vn 0.3827 0.0000 -0.9239 -vn 0.2554 -0.8881 -0.3822 -vn -0.6066 0.0000 -0.7950 -vn -0.3827 -0.0000 -0.9239 -vn -0.0896 -0.8881 -0.4509 -vn -0.9911 0.0000 -0.1332 -vn -0.9239 -0.0000 -0.3827 -vn -0.3822 -0.8881 -0.2554 -vn -0.7950 -0.0001 0.6066 -vn -0.9239 -0.0000 0.3827 -vn 0.0995 -0.2741 -0.9565 -vn 0.7468 -0.2741 -0.6060 -vn 0.8184 0.0000 -0.5746 -vn 0.3735 -0.2177 -0.9017 -vn 0.9565 -0.2741 0.0995 -vn 0.9850 0.0000 0.1724 -vn 0.6060 -0.2741 0.7468 -vn 0.5746 0.0000 0.8184 -vn -0.0995 -0.2741 0.9565 -vn -0.1724 -0.0001 0.9850 -vn -0.7468 -0.2741 0.6060 -vn -0.8184 0.0000 0.5746 -vn -0.9565 -0.2741 -0.0995 -vn -0.9850 0.0000 -0.1724 -vn -0.6060 -0.2741 -0.7468 -vn -0.5746 0.0000 -0.8184 -vn -0.2554 0.8881 0.3822 -vn -0.4509 0.8881 0.0896 -vn 0.0896 0.8881 0.4509 -vn 0.3822 0.8881 0.2554 -vn 0.4509 0.8881 -0.0896 -vn 0.2554 0.8881 -0.3822 -vn -0.0896 0.8881 -0.4509 -vn -0.3822 0.8881 -0.2554 -vn 0.0995 0.2741 -0.9565 -vn 0.7468 0.2741 -0.6060 -vn 0.9565 0.2741 0.0995 -vn 0.6060 0.2741 0.7468 -vn -0.0995 0.2741 0.9565 -vn -0.7468 0.2741 0.6060 -vn -0.9566 0.2739 -0.0994 -vn -0.6060 0.2741 -0.7468 +vn -0.7071 -0.0000 -0.7071 +vn -0.7071 -0.0000 0.7071 +vt 0.375000 0.000000 +vt 0.625000 0.000000 +vt 0.625000 1.000000 +vt 0.375000 1.000000 +vt 0.375000 0.375000 +vt 0.625000 0.375000 +vt 0.625000 0.625000 +vt 0.375000 0.625000 +vt 0.562500 0.687500 +vt 0.562500 0.500000 +vt 0.687500 0.500000 +vt 0.687500 0.687500 +vt 0.812500 1.000000 +vt 0.906250 0.781250 +vt 1.000000 1.000000 +vt 0.812500 0.937500 +vt 0.812500 0.968750 +vt 0.750000 0.968750 +vt 0.750000 0.937500 +vt 0.812500 0.812500 +vt 0.750000 0.812500 +vt 0.750000 0.750000 +vt 0.812500 0.750000 +vt 0.687500 1.000000 +vt 0.562500 1.000000 +vt 0.812500 0.687500 +vt 0.875000 0.531250 +vt 0.937500 0.531250 +vt 0.937500 0.593750 +vt 0.875000 0.593750 +vt 0.218750 0.468750 +vt 0.218750 0.375000 +vt 0.468750 0.375000 +vt 0.468750 0.468750 +vt 0.468750 0.125000 +vt 0.218750 0.125000 +vt 0.125000 0.250000 +vt 0.125000 0.312500 +vt 0.031250 0.312500 +vt 0.031250 0.250000 +vt 0.218750 0.250000 +vt 0.218750 0.312500 +vt 0.218750 0.406250 +vt 0.125000 0.406250 +vt 0.562500 0.812500 +vt 0.000000 0.812500 +vt 0.062500 0.656250 +vt 0.500000 0.656250 +vt 0.562500 0.906250 +vt 0.000000 0.906250 +vt 0.062500 0.562500 +vt 0.500000 0.562500 +s 0 usemtl m_1 -s off f 203/1/1 204/2/1 206/3/1 205/4/1 -f 209/5/2 210/6/2 208/7/2 207/8/2 -f 205/9/3 209/10/3 207/11/3 203/12/3 -f 210/13/4 206/14/4 204/15/4 208/16/4 +f 209/1/2 210/2/2 208/3/2 207/4/2 +f 205/1/3 209/2/3 207/3/3 203/4/3 +f 210/1/4 206/2/4 204/3/4 208/4/4 usemtl m_2 -f 205/17/5 206/18/5 210/19/5 209/20/5 -f 207/21/6 208/22/6 204/23/6 203/24/6 +f 205/5/5 206/6/5 210/7/5 209/8/5 +f 207/5/6 208/6/6 204/7/6 203/8/6 usemtl m_0 -f 19/25/4 74/26/4 9/27/4 20/28/4 -f 9/29/6 41/30/6 20/31/6 -f 19/32/5 40/33/5 74/34/5 -f 18/35/7 19/36/7 20/37/7 21/38/7 -f 20/39/6 41/30/6 21/40/6 -f 18/41/5 40/33/5 19/42/5 -f 28/43/2 18/44/2 21/45/2 38/46/2 -f 21/47/6 41/30/6 38/48/6 -f 28/49/5 40/33/5 18/50/5 -f 37/51/8 28/52/8 38/53/8 39/54/8 -f 38/55/6 41/30/6 39/56/6 -f 37/57/5 40/33/5 28/58/5 -f 58/59/3 37/60/3 39/61/3 59/62/3 -f 39/63/6 41/30/6 59/64/6 -f 58/65/5 40/33/5 37/66/5 -f 65/67/9 58/68/9 59/69/9 60/70/9 -f 59/71/6 41/30/6 60/72/6 -f 65/73/5 40/33/5 58/74/5 -f 75/75/1 65/76/1 60/77/1 76/78/1 -f 60/79/6 41/30/6 76/80/6 -f 75/81/5 40/33/5 65/82/5 -f 74/83/10 75/84/10 76/85/10 9/86/10 -f 76/87/6 41/30/6 9/88/6 -f 74/89/5 40/33/5 75/90/5 -f 101/91/1 102/92/1 104/93/1 103/94/1 -f 103/95/5 104/96/5 108/97/5 107/98/5 -f 107/99/2 108/100/2 106/101/2 105/102/2 -f 105/103/6 106/104/6 102/105/6 101/106/6 -f 108/107/4 104/108/4 102/109/4 106/110/4 -f 116/111/2 118/112/2 119/113/2 117/114/2 -f 118/115/5 122/116/5 123/117/5 119/118/5 -f 122/119/1 120/120/1 121/121/1 123/122/1 -f 120/123/6 116/124/6 117/125/6 121/126/6 -f 123/127/4 121/128/4 117/129/4 119/130/4 -f 132/131/1 134/132/1 135/133/1 133/134/1 -f 134/135/6 138/136/6 139/137/6 135/138/6 -f 138/139/2 136/140/2 137/141/2 139/142/2 -f 136/143/5 132/144/5 133/145/5 137/146/5 -f 139/147/4 137/148/4 133/149/4 135/150/4 -f 148/151/2 149/152/2 151/153/2 150/154/2 -f 150/155/6 151/156/6 155/157/6 154/158/6 -f 154/159/1 155/160/1 153/161/1 152/162/1 -f 152/163/5 153/164/5 149/165/5 148/166/5 -f 155/167/4 151/168/4 149/169/4 153/170/4 -f 160/171/1 162/172/1 163/173/1 161/174/1 -f 162/175/5 166/176/5 167/177/5 163/178/5 -f 166/179/2 164/180/2 165/181/2 167/182/2 -f 164/183/6 160/184/6 161/185/6 165/186/6 -f 167/187/3 165/188/3 161/189/3 163/190/3 -f 172/191/2 173/192/2 175/193/2 174/194/2 -f 174/195/5 175/196/5 179/197/5 178/198/5 -f 178/199/1 179/200/1 177/201/1 176/202/1 -f 176/203/6 177/204/6 173/205/6 172/206/6 -f 179/207/3 175/208/3 173/209/3 177/210/3 -f 184/211/1 185/212/1 187/213/1 186/214/1 -f 186/215/6 187/216/6 191/217/6 190/218/6 -f 190/219/2 191/220/2 189/221/2 188/222/2 -f 188/223/5 189/224/5 185/225/5 184/226/5 -f 191/227/3 187/228/3 185/229/3 189/230/3 -f 195/231/2 197/232/2 198/233/2 196/234/2 -f 197/235/6 201/236/6 202/237/6 198/238/6 -f 201/239/1 199/240/1 200/241/1 202/242/1 -f 199/243/5 195/244/5 196/245/5 200/246/5 -f 202/247/3 200/248/3 196/249/3 198/250/3 -s 1 -f 8/251/6 2/252/6 1/253/6 7/254/6 -f 2/252/2 4/255/2 3/256/2 1/253/2 -f 4/257/5 6/258/5 5/259/5 3/260/5 -f 6/258/1 8/261/1 7/262/1 5/259/1 -f 17/263/6 11/264/6 10/265/6 16/266/6 -f 11/264/8 13/267/8 12/268/8 10/265/8 -f 13/269/5 15/270/5 14/271/5 12/272/5 -f 15/270/10 17/273/10 16/274/10 14/271/10 -f 27/275/6 169/276/6 22/277/6 26/278/6 -f 169/276/3 24/279/3 23/280/3 22/277/3 -f 24/281/5 141/282/5 25/283/5 23/284/5 -f 141/282/4 27/285/4 26/286/4 25/283/4 -f 36/287/6 30/288/6 29/289/6 35/290/6 -f 30/288/9 32/291/9 31/292/9 29/289/9 -f 32/293/5 34/294/5 33/295/5 31/296/5 -f 34/294/7 36/297/7 35/298/7 33/295/7 -f 49/299/6 43/300/6 42/301/6 48/302/6 -f 43/300/1 45/303/1 44/304/1 42/301/1 -f 45/305/5 47/306/5 46/307/5 44/308/5 -f 47/306/2 49/309/2 48/310/2 46/307/2 -f 57/311/6 51/312/6 50/313/6 56/314/6 -f 51/312/10 53/315/10 52/316/10 50/313/10 -f 53/317/5 55/318/5 54/319/5 52/320/5 -f 55/318/8 57/321/8 56/322/8 54/319/8 -f 157/323/6 94/324/6 61/325/6 64/326/6 -f 94/324/4 125/327/4 62/328/4 61/325/4 -f 125/329/5 181/330/5 63/331/5 62/332/5 -f 181/330/3 157/333/3 64/334/3 63/331/3 -f 73/335/6 67/336/6 66/337/6 72/338/6 -f 67/336/7 69/339/7 68/340/7 66/337/7 -f 69/341/5 71/342/5 70/343/5 68/344/5 -f 71/342/9 73/345/9 72/346/9 70/343/9 -f 78/347/5 80/348/5 79/349/5 77/350/5 -f 77/351/2 81/352/2 82/353/2 78/354/2 -f 79/355/4 83/356/4 81/357/4 77/358/4 -f 84/359/1 83/360/1 79/361/1 80/362/1 -f 82/363/6 81/357/6 83/356/6 84/364/6 -f 78/365/3 82/366/3 84/367/3 80/368/3 -f 86/369/6 85/370/6 87/371/6 88/372/6 -f 85/373/2 86/374/2 90/375/2 89/376/2 -f 87/377/4 85/378/4 89/379/4 91/380/4 -f 92/381/1 88/382/1 87/383/1 91/384/1 -f 90/385/5 92/386/5 91/380/5 89/379/5 -f 86/387/3 88/388/3 92/389/3 90/390/3 -f 99/391/1 96/392/1 94/393/1 97/394/1 -f 100/395/6 95/396/6 96/392/6 99/391/6 -f 94/397/4 96/398/4 95/399/4 93/400/4 -f 114/401/2 112/402/2 27/403/2 111/404/2 -f 115/405/6 114/401/6 111/404/6 110/406/6 -f 27/407/4 109/408/4 110/409/4 111/410/4 -f 130/411/1 128/412/1 125/413/1 127/414/1 -f 131/415/5 130/411/5 127/414/5 126/416/5 -f 125/417/4 124/418/4 126/419/4 127/420/4 -f 146/421/2 143/422/2 141/423/2 144/424/2 -f 147/425/5 142/426/5 143/422/5 146/421/5 -f 141/427/4 143/428/4 142/429/4 140/430/4 -f 99/391/1 97/394/1 157/431/1 159/432/1 -f 100/395/6 99/391/6 159/432/6 158/433/6 -f 157/434/3 156/435/3 158/436/3 159/437/3 -f 114/401/2 171/438/2 169/439/2 112/402/2 -f 115/405/6 170/440/6 171/438/6 114/401/6 -f 169/441/3 171/442/3 170/443/3 168/444/3 -f 130/411/1 183/445/1 181/446/1 128/412/1 -f 131/415/5 182/447/5 183/445/5 130/411/5 -f 181/448/3 183/449/3 182/450/3 180/451/3 -f 146/421/2 144/424/2 24/452/2 194/453/2 -f 147/425/5 146/421/5 194/453/5 193/454/5 -f 24/455/3 192/456/3 193/457/3 194/458/3 -f 211/459/11 225/460/12 226/461/6 212/462/6 -f 235/463/13 236/464/14 225/460/15 211/459/16 -f 213/465/17 211/466/11 212/467/6 214/468/6 -f 237/469/18 235/470/13 211/466/16 213/465/19 -f 215/471/20 213/472/17 214/473/6 216/474/6 -f 238/475/21 237/476/18 213/472/19 215/471/22 -f 217/477/23 215/478/20 216/479/6 218/480/6 -f 239/481/24 238/482/21 215/478/22 217/477/25 -f 219/483/26 217/484/23 218/485/6 220/486/6 -f 240/487/27 239/488/24 217/484/25 219/483/28 -f 221/489/29 219/490/26 220/491/6 222/492/6 -f 241/493/30 240/494/27 219/490/28 221/489/31 -f 223/495/32 221/496/29 222/497/6 224/498/6 -f 242/499/33 241/500/30 221/496/31 223/495/34 -f 225/501/12 223/502/32 224/503/6 226/504/6 -f 236/505/14 242/506/33 223/502/34 225/501/15 -f 226/504/35 224/503/36 234/507/37 228/508/38 -f 224/498/36 222/497/39 233/509/40 234/510/37 -f 222/492/39 220/491/41 232/511/42 233/512/40 -f 220/486/41 218/485/43 231/513/44 232/514/42 -f 218/480/43 216/479/45 230/515/46 231/516/44 -f 216/474/45 214/473/47 229/517/48 230/518/46 -f 214/468/47 212/467/49 227/519/50 229/520/48 -f 212/462/49 226/461/35 228/521/38 227/522/50 -f 243/523/51 244/524/5 258/525/5 257/526/52 -f 235/463/13 243/523/16 257/526/15 236/464/14 -f 245/527/53 246/528/5 244/529/5 243/530/51 -f 237/469/18 245/527/19 243/530/16 235/470/13 -f 247/531/54 248/532/5 246/533/5 245/534/53 -f 238/475/21 247/531/22 245/534/19 237/476/18 -f 249/535/55 250/536/5 248/537/5 247/538/54 -f 239/481/24 249/535/25 247/538/22 238/482/21 -f 251/539/56 252/540/5 250/541/5 249/542/55 -f 240/487/27 251/539/28 249/542/25 239/488/24 -f 253/543/57 254/544/5 252/545/5 251/546/56 -f 241/493/30 253/543/31 251/546/28 240/494/27 -f 255/547/58 256/548/5 254/549/5 253/550/57 -f 242/499/33 255/547/34 253/550/31 241/500/30 -f 257/551/52 258/552/5 256/553/5 255/554/58 -f 236/505/14 257/551/15 255/554/34 242/506/33 -f 258/552/59 228/508/38 234/507/37 256/553/60 -f 256/548/60 234/510/37 233/509/40 254/549/61 -f 254/544/61 233/512/40 232/511/42 252/545/62 -f 252/540/62 232/514/42 231/513/44 250/541/63 -f 250/536/63 231/516/44 230/515/46 248/537/64 -f 248/532/64 230/518/46 229/517/48 246/533/65 -f 246/528/65 229/520/48 227/519/50 244/529/66 -f 244/524/66 227/522/50 228/521/38 258/525/59 -l 100 98 +f 19/9/4 74/10/4 9/11/4 20/12/4 +f 9/13/6 41/14/6 20/15/6 +f 19/15/5 40/14/5 74/13/5 +f 18/9/7 19/10/7 20/11/7 21/12/7 +f 20/13/6 41/14/6 21/15/6 +f 18/15/5 40/14/5 19/13/5 +f 28/9/2 18/10/2 21/11/2 38/12/2 +f 21/13/6 41/14/6 38/15/6 +f 28/15/5 40/14/5 18/13/5 +f 37/9/8 28/10/8 38/11/8 39/12/8 +f 38/13/6 41/14/6 39/15/6 +f 37/15/5 40/14/5 28/13/5 +f 58/9/3 37/10/3 39/11/3 59/12/3 +f 39/13/6 41/14/6 59/15/6 +f 58/15/5 40/14/5 37/13/5 +f 65/9/9 58/10/9 59/11/9 60/12/9 +f 59/13/6 41/14/6 60/15/6 +f 65/15/5 40/14/5 58/13/5 +f 75/9/1 65/10/1 60/11/1 76/12/1 +f 60/13/6 41/14/6 76/15/6 +f 75/15/5 40/14/5 65/13/5 +f 74/9/10 75/10/10 76/11/10 9/12/10 +f 76/13/6 41/14/6 9/15/6 +f 74/15/5 40/14/5 75/13/5 +f 101/16/1 102/17/1 104/18/1 103/19/1 +f 103/16/5 104/17/5 108/18/5 107/19/5 +f 107/16/2 108/17/2 106/18/2 105/19/2 +f 105/16/6 106/17/6 102/18/6 101/19/6 +f 108/20/4 104/21/4 102/22/4 106/23/4 +f 116/16/2 118/19/2 119/18/2 117/17/2 +f 118/16/5 122/19/5 123/18/5 119/17/5 +f 122/16/1 120/19/1 121/18/1 123/17/1 +f 120/16/6 116/19/6 117/18/6 121/17/6 +f 123/20/4 121/23/4 117/22/4 119/21/4 +f 132/16/1 134/19/1 135/18/1 133/17/1 +f 134/16/6 138/19/6 139/18/6 135/17/6 +f 138/16/2 136/19/2 137/18/2 139/17/2 +f 136/16/5 132/19/5 133/18/5 137/17/5 +f 139/20/4 137/23/4 133/22/4 135/21/4 +f 148/16/2 149/17/2 151/18/2 150/19/2 +f 150/16/6 151/17/6 155/18/6 154/19/6 +f 154/16/1 155/17/1 153/18/1 152/19/1 +f 152/16/5 153/17/5 149/18/5 148/19/5 +f 155/20/4 151/21/4 149/22/4 153/23/4 +f 160/16/1 162/19/1 163/18/1 161/17/1 +f 162/16/5 166/19/5 167/18/5 163/17/5 +f 166/16/2 164/19/2 165/18/2 167/17/2 +f 164/16/6 160/19/6 161/18/6 165/17/6 +f 167/20/3 165/23/3 161/22/3 163/21/3 +f 172/16/2 173/17/2 175/18/2 174/19/2 +f 174/16/5 175/17/5 179/18/5 178/19/5 +f 178/16/1 179/17/1 177/18/1 176/19/1 +f 176/16/6 177/17/6 173/18/6 172/19/6 +f 179/20/3 175/21/3 173/22/3 177/23/3 +f 184/16/1 185/17/1 187/18/1 186/19/1 +f 186/16/6 187/17/6 191/18/6 190/19/6 +f 190/16/2 191/17/2 189/18/2 188/19/2 +f 188/16/5 189/17/5 185/18/5 184/19/5 +f 191/20/3 187/21/3 185/22/3 189/23/3 +f 195/16/2 197/19/2 198/18/2 196/17/2 +f 197/16/6 201/19/6 202/18/6 198/17/6 +f 201/16/1 199/19/1 200/18/1 202/17/1 +f 199/16/5 195/19/5 196/18/5 200/17/5 +f 202/20/3 200/23/3 196/22/3 198/21/3 +f 8/9/6 2/12/6 1/24/6 7/25/6 +f 2/12/2 4/26/2 3/13/2 1/24/2 +f 4/9/5 6/12/5 5/24/5 3/25/5 +f 6/12/1 8/26/1 7/13/1 5/24/1 +f 17/9/6 11/12/6 10/24/6 16/25/6 +f 11/12/8 13/26/8 12/13/8 10/24/8 +f 13/9/5 15/12/5 14/24/5 12/25/5 +f 15/12/10 17/26/10 16/13/10 14/24/10 +f 27/9/6 169/12/6 22/24/6 26/25/6 +f 169/12/3 24/26/3 23/13/3 22/24/3 +f 24/9/5 141/12/5 25/24/5 23/25/5 +f 141/12/4 27/26/4 26/13/4 25/24/4 +f 36/9/6 30/12/6 29/24/6 35/25/6 +f 30/12/9 32/26/9 31/13/9 29/24/9 +f 32/9/5 34/12/5 33/24/5 31/25/5 +f 34/12/7 36/26/7 35/13/7 33/24/7 +f 49/9/6 43/12/6 42/24/6 48/25/6 +f 43/12/1 45/26/1 44/13/1 42/24/1 +f 45/9/5 47/12/5 46/24/5 44/25/5 +f 47/12/2 49/26/2 48/13/2 46/24/2 +f 57/9/6 51/12/6 50/24/6 56/25/6 +f 51/12/10 53/26/10 52/13/10 50/24/10 +f 53/9/5 55/12/5 54/24/5 52/25/5 +f 55/12/8 57/26/8 56/13/8 54/24/8 +f 157/9/6 94/12/6 61/24/6 64/25/6 +f 94/12/4 125/26/4 62/13/4 61/24/4 +f 125/9/5 181/12/5 63/24/5 62/25/5 +f 181/12/3 157/26/3 64/13/3 63/24/3 +f 73/9/6 67/12/6 66/24/6 72/25/6 +f 67/12/7 69/26/7 68/13/7 66/24/7 +f 69/9/5 71/12/5 70/24/5 68/25/5 +f 71/12/9 73/26/9 72/13/9 70/24/9 +f 78/27/5 80/28/5 79/29/5 77/30/5 +f 77/31/2 81/32/2 82/33/2 78/34/2 +f 79/31/4 83/32/4 81/33/4 77/34/4 +f 84/32/1 83/33/1 79/34/1 80/31/1 +f 82/35/6 81/33/6 83/32/6 84/36/6 +f 78/31/3 82/32/3 84/33/3 80/34/3 +f 86/27/6 85/30/6 87/29/6 88/28/6 +f 85/31/2 86/34/2 90/33/2 89/32/2 +f 87/31/4 85/34/4 89/33/4 91/32/4 +f 92/32/1 88/31/1 87/34/1 91/33/1 +f 90/35/5 92/36/5 91/32/5 89/33/5 +f 86/31/3 88/34/3 92/33/3 90/32/3 +f 99/37/1 96/38/1 94/39/1 97/40/1 +f 100/41/6 95/42/6 96/38/6 99/37/6 +f 94/38/4 96/42/4 95/43/4 93/44/4 +f 114/37/2 112/40/2 27/39/2 111/38/2 +f 115/41/6 114/37/6 111/38/6 110/42/6 +f 27/38/4 109/44/4 110/43/4 111/42/4 +f 130/37/1 128/40/1 125/39/1 127/38/1 +f 131/41/5 130/37/5 127/38/5 126/42/5 +f 125/38/4 124/44/4 126/43/4 127/42/4 +f 146/37/2 143/38/2 141/39/2 144/40/2 +f 147/41/5 142/42/5 143/38/5 146/37/5 +f 141/38/4 143/42/4 142/43/4 140/44/4 +f 99/37/1 97/40/1 157/39/1 159/38/1 +f 100/41/6 99/37/6 159/38/6 158/42/6 +f 157/38/3 156/44/3 158/43/3 159/42/3 +f 114/37/2 171/38/2 169/39/2 112/40/2 +f 115/41/6 170/42/6 171/38/6 114/37/6 +f 169/38/3 171/42/3 170/43/3 168/44/3 +f 130/37/1 183/38/1 181/39/1 128/40/1 +f 131/41/5 182/42/5 183/38/5 130/37/5 +f 181/38/3 183/42/3 182/43/3 180/44/3 +f 146/37/2 144/40/2 24/39/2 194/38/2 +f 147/41/5 146/37/5 194/38/5 193/42/5 +f 24/38/3 192/44/3 193/43/3 194/42/3 +f 211/45/6 225/46/6 226/47/6 212/48/6 +f 235/49/4 236/50/4 225/46/4 211/45/4 +f 213/45/6 211/46/6 212/47/6 214/48/6 +f 237/49/7 235/50/7 211/46/7 213/45/7 +f 215/45/6 213/46/6 214/47/6 216/48/6 +f 238/49/2 237/50/2 213/46/2 215/45/2 +f 217/45/6 215/46/6 216/47/6 218/48/6 +f 239/49/8 238/50/8 215/46/8 217/45/8 +f 219/45/6 217/46/6 218/47/6 220/48/6 +f 240/49/3 239/50/3 217/46/3 219/45/3 +f 221/45/6 219/46/6 220/47/6 222/48/6 +f 241/49/9 240/50/9 219/46/9 221/45/9 +f 223/45/6 221/46/6 222/47/6 224/48/6 +f 242/49/1 241/50/1 221/46/1 223/45/1 +f 225/45/6 223/46/6 224/47/6 226/48/6 +f 236/49/10 242/50/10 223/46/10 225/45/10 +f 226/48/8 224/47/8 234/51/8 228/52/8 +f 224/48/2 222/47/2 233/51/2 234/52/2 +f 222/48/7 220/47/7 232/51/7 233/52/7 +f 220/48/4 218/47/4 231/51/4 232/52/4 +f 218/48/10 216/47/10 230/51/10 231/52/10 +f 216/48/1 214/47/1 229/51/1 230/52/1 +f 214/48/9 212/47/9 227/51/9 229/52/9 +f 212/48/3 226/47/3 228/51/3 227/52/3 +f 243/45/5 244/48/5 258/47/5 257/46/5 +f 235/49/4 243/45/4 257/46/4 236/50/4 +f 245/45/5 246/48/5 244/47/5 243/46/5 +f 237/49/7 245/45/7 243/46/7 235/50/7 +f 247/45/5 248/48/5 246/47/5 245/46/5 +f 238/49/2 247/45/2 245/46/2 237/50/2 +f 249/45/5 250/48/5 248/47/5 247/46/5 +f 239/49/8 249/45/8 247/46/8 238/50/8 +f 251/45/5 252/48/5 250/47/5 249/46/5 +f 240/49/3 251/45/3 249/46/3 239/50/3 +f 253/45/5 254/48/5 252/47/5 251/46/5 +f 241/49/9 253/45/9 251/46/9 240/50/9 +f 255/45/5 256/48/5 254/47/5 253/46/5 +f 242/49/1 255/45/1 253/46/1 241/50/1 +f 257/45/5 258/48/5 256/47/5 255/46/5 +f 236/49/10 257/45/10 255/46/10 242/50/10 +f 258/48/8 228/52/8 234/51/8 256/47/8 +f 256/48/2 234/52/2 233/51/2 254/47/2 +f 254/48/7 233/52/7 232/51/7 252/47/7 +f 252/48/4 232/52/4 231/51/4 250/47/4 +f 250/48/10 231/52/10 230/51/10 248/47/10 +f 248/48/1 230/52/1 229/51/1 246/47/1 +f 246/48/9 229/52/9 227/51/9 244/47/9 +f 244/48/3 227/52/3 228/51/3 258/47/3 +l 98 100 l 97 98 -l 115 113 +l 113 115 l 112 113 -l 131 129 +l 129 131 l 128 129 -l 147 145 +l 145 147 l 144 145 diff --git a/src/main/resources/assets/create/models/block/flywheel/flywheel_shaftless.obj b/src/main/resources/assets/create/models/block/flywheel/flywheel_shaftless.obj index d7db6e4bd..06a7ec1da 100644 --- a/src/main/resources/assets/create/models/block/flywheel/flywheel_shaftless.obj +++ b/src/main/resources/assets/create/models/block/flywheel/flywheel_shaftless.obj @@ -1,4 +1,4 @@ -# Blender v3.1.2 OBJ File: 'engine.blend' +# Blender 4.2.0 # www.blender.org mtllib flywheel.mtl o cube.007_cube.004 @@ -236,6 +236,16 @@ v 0.781250 0.781250 0.375000 v 0.781250 0.781250 0.312500 v 0.781250 0.656250 0.375000 v 0.781250 0.656250 0.312500 +vn -0.0000 -0.0000 1.0000 +vn -0.0000 -1.0000 -0.0000 +vn -0.0000 1.0000 -0.0000 +vn 0.7071 -0.0000 0.7071 +vn 1.0000 -0.0000 -0.0000 +vn 0.7071 -0.0000 -0.7071 +vn -0.0000 -0.0000 -1.0000 +vn -0.7071 -0.0000 -0.7071 +vn -1.0000 -0.0000 -0.0000 +vn -0.7071 -0.0000 0.7071 vt 0.562500 0.687500 vt 0.562500 0.500000 vt 0.687500 0.500000 @@ -243,77 +253,6 @@ vt 0.687500 0.687500 vt 0.812500 1.000000 vt 0.906250 0.781250 vt 1.000000 1.000000 -vt 1.000000 1.000000 -vt 0.906250 0.781250 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.562500 0.500000 -vt 0.687500 0.500000 -vt 0.687500 0.687500 -vt 0.812500 1.000000 -vt 1.000000 1.000000 -vt 1.000000 1.000000 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.562500 0.500000 -vt 0.687500 0.500000 -vt 0.687500 0.687500 -vt 0.812500 1.000000 -vt 1.000000 1.000000 -vt 1.000000 1.000000 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.562500 0.500000 -vt 0.687500 0.500000 -vt 0.687500 0.687500 -vt 0.812500 1.000000 -vt 1.000000 1.000000 -vt 1.000000 1.000000 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.562500 0.500000 -vt 0.687500 0.500000 -vt 0.687500 0.687500 -vt 0.812500 1.000000 -vt 1.000000 1.000000 -vt 1.000000 1.000000 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.562500 0.500000 -vt 0.687500 0.500000 -vt 0.687500 0.687500 -vt 0.812500 1.000000 -vt 1.000000 1.000000 -vt 1.000000 1.000000 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.562500 0.500000 -vt 0.687500 0.500000 -vt 0.687500 0.687500 -vt 0.812500 1.000000 -vt 1.000000 1.000000 -vt 1.000000 1.000000 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.562500 0.500000 -vt 0.687500 0.500000 -vt 0.687500 0.687500 -vt 0.812500 1.000000 -vt 1.000000 1.000000 -vt 1.000000 1.000000 -vt 0.812500 1.000000 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 vt 0.812500 0.937500 vt 0.812500 0.968750 vt 0.750000 0.968750 @@ -322,242 +261,9 @@ vt 0.812500 0.812500 vt 0.750000 0.812500 vt 0.750000 0.750000 vt 0.812500 0.750000 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.812500 -vt 0.812500 0.750000 -vt 0.750000 0.750000 -vt 0.750000 0.812500 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.812500 -vt 0.812500 0.750000 -vt 0.750000 0.750000 -vt 0.750000 0.812500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.812500 -vt 0.750000 0.812500 -vt 0.750000 0.750000 -vt 0.812500 0.750000 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.812500 -vt 0.812500 0.750000 -vt 0.750000 0.750000 -vt 0.750000 0.812500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.812500 -vt 0.750000 0.812500 -vt 0.750000 0.750000 -vt 0.812500 0.750000 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.937500 -vt 0.812500 0.968750 -vt 0.750000 0.968750 -vt 0.750000 0.937500 -vt 0.812500 0.812500 -vt 0.750000 0.812500 -vt 0.750000 0.750000 -vt 0.812500 0.750000 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.937500 -vt 0.750000 0.937500 -vt 0.750000 0.968750 -vt 0.812500 0.968750 -vt 0.812500 0.812500 -vt 0.812500 0.750000 -vt 0.750000 0.750000 -vt 0.750000 0.812500 -vt 0.562500 0.687500 -vt 0.687500 0.687500 vt 0.687500 1.000000 vt 0.562500 1.000000 vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 -vt 0.562500 0.687500 -vt 0.687500 0.687500 -vt 0.687500 1.000000 -vt 0.562500 1.000000 -vt 0.812500 0.687500 -vt 0.812500 1.000000 vt 0.875000 0.531250 vt 0.937500 0.531250 vt 0.937500 0.593750 @@ -566,137 +272,14 @@ vt 0.218750 0.468750 vt 0.218750 0.375000 vt 0.468750 0.375000 vt 0.468750 0.468750 -vt 0.218750 0.468750 -vt 0.218750 0.375000 -vt 0.468750 0.375000 -vt 0.468750 0.468750 -vt 0.218750 0.375000 -vt 0.468750 0.375000 -vt 0.468750 0.468750 -vt 0.218750 0.468750 vt 0.468750 0.125000 vt 0.218750 0.125000 -vt 0.218750 0.468750 -vt 0.218750 0.375000 -vt 0.468750 0.375000 -vt 0.468750 0.468750 -vt 0.875000 0.531250 -vt 0.875000 0.593750 -vt 0.937500 0.593750 -vt 0.937500 0.531250 -vt 0.218750 0.468750 -vt 0.468750 0.468750 -vt 0.468750 0.375000 -vt 0.218750 0.375000 -vt 0.218750 0.468750 -vt 0.468750 0.468750 -vt 0.468750 0.375000 -vt 0.218750 0.375000 -vt 0.218750 0.375000 -vt 0.218750 0.468750 -vt 0.468750 0.468750 -vt 0.468750 0.375000 -vt 0.468750 0.125000 -vt 0.218750 0.125000 -vt 0.218750 0.468750 -vt 0.468750 0.468750 -vt 0.468750 0.375000 -vt 0.218750 0.375000 vt 0.500000 0.656250 vt 0.062500 0.656250 vt 0.062500 0.468750 vt 0.500000 0.468750 vt 0.000000 0.812500 vt 0.562500 0.812500 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.562500 0.812500 -vt 0.000000 0.812500 -vt 0.562500 1.000000 -vt 0.000000 1.000000 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.062500 0.468750 -vt 0.500000 0.468750 -vt 0.000000 0.812500 -vt 0.562500 0.812500 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.562500 0.812500 -vt 0.000000 0.812500 -vt 0.562500 1.000000 -vt 0.000000 1.000000 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.062500 0.468750 -vt 0.500000 0.468750 -vt 0.000000 0.812500 -vt 0.562500 0.812500 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.562500 0.812500 -vt 0.000000 0.812500 -vt 0.562500 1.000000 -vt 0.000000 1.000000 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.062500 0.468750 -vt 0.500000 0.468750 -vt 0.000000 0.812500 -vt 0.562500 0.812500 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.562500 0.812500 -vt 0.000000 0.812500 -vt 0.562500 1.000000 -vt 0.000000 1.000000 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.062500 0.468750 -vt 0.500000 0.468750 -vt 0.000000 0.812500 -vt 0.562500 0.812500 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.562500 0.812500 -vt 0.000000 0.812500 -vt 0.562500 1.000000 -vt 0.000000 1.000000 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.062500 0.468750 -vt 0.500000 0.468750 -vt 0.000000 0.812500 -vt 0.562500 0.812500 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.562500 0.812500 -vt 0.000000 0.812500 -vt 0.562500 1.000000 -vt 0.000000 1.000000 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.062500 0.468750 -vt 0.500000 0.468750 -vt 0.000000 0.812500 -vt 0.562500 0.812500 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.562500 0.812500 -vt 0.000000 0.812500 -vt 0.562500 1.000000 -vt 0.000000 1.000000 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.062500 0.468750 -vt 0.500000 0.468750 -vt 0.000000 0.812500 -vt 0.562500 0.812500 -vt 0.500000 0.656250 -vt 0.062500 0.656250 -vt 0.562500 0.812500 -vt 0.000000 0.812500 -vt 0.562500 1.000000 vt 0.000000 1.000000 vt 0.125000 0.250000 vt 0.125000 0.312500 @@ -704,290 +287,179 @@ vt 0.031250 0.312500 vt 0.031250 0.250000 vt 0.218750 0.250000 vt 0.218750 0.312500 -vt 0.125000 0.312500 -vt 0.218750 0.312500 vt 0.218750 0.406250 vt 0.125000 0.406250 -vt 0.125000 0.250000 -vt 0.031250 0.250000 -vt 0.031250 0.312500 -vt 0.125000 0.312500 -vt 0.218750 0.250000 -vt 0.218750 0.312500 -vt 0.125000 0.312500 -vt 0.125000 0.406250 -vt 0.218750 0.406250 -vt 0.218750 0.312500 -vt 0.125000 0.250000 -vt 0.031250 0.250000 -vt 0.031250 0.312500 -vt 0.125000 0.312500 -vt 0.218750 0.250000 -vt 0.218750 0.312500 -vt 0.125000 0.312500 -vt 0.125000 0.406250 -vt 0.218750 0.406250 -vt 0.218750 0.312500 -vt 0.125000 0.250000 -vt 0.125000 0.312500 -vt 0.031250 0.312500 -vt 0.031250 0.250000 -vt 0.218750 0.250000 -vt 0.218750 0.312500 -vt 0.125000 0.312500 -vt 0.218750 0.312500 -vt 0.218750 0.406250 -vt 0.125000 0.406250 -vt 0.031250 0.312500 -vt 0.125000 0.312500 -vt 0.218750 0.312500 -vt 0.125000 0.312500 -vt 0.125000 0.406250 -vt 0.218750 0.406250 -vt 0.218750 0.312500 -vt 0.125000 0.312500 -vt 0.031250 0.312500 -vt 0.218750 0.312500 -vt 0.125000 0.312500 -vt 0.218750 0.312500 -vt 0.218750 0.406250 -vt 0.125000 0.406250 -vt 0.125000 0.312500 -vt 0.031250 0.312500 -vt 0.218750 0.312500 -vt 0.125000 0.312500 -vt 0.218750 0.312500 -vt 0.218750 0.406250 -vt 0.125000 0.406250 -vt 0.031250 0.312500 -vt 0.125000 0.312500 -vt 0.218750 0.312500 -vt 0.125000 0.312500 -vt 0.125000 0.406250 -vt 0.218750 0.406250 -vt 0.218750 0.312500 -vn 0.0000 0.0000 1.0000 -vn 0.0000 -1.0000 0.0000 -vn 0.0000 1.0000 0.0000 -vn 0.7071 0.0000 0.7071 -vn 1.0000 0.0000 -0.0000 -vn 0.7071 0.0000 -0.7071 -vn -0.0000 0.0000 -1.0000 -vn -0.7071 0.0000 -0.7071 -vn -1.0000 0.0000 0.0000 -vn -0.7071 0.0000 0.7071 -vn -0.6060 -0.2741 -0.7468 -vn 0.0995 -0.2741 -0.9565 -vn 0.3827 -0.0000 -0.9239 -vn -0.3827 -0.0000 -0.9239 -vn -0.3822 0.8881 -0.2554 -vn -0.0897 0.8881 -0.4509 -vn -0.2554 -0.8881 0.3822 -vn -0.4509 -0.8881 0.0896 -vn -0.0207 0.3739 0.9272 -vn -0.6703 0.3739 0.6410 -vn -0.3827 -0.0000 0.9239 -vn 0.3827 -0.0000 0.9239 -vn -0.9565 -0.2741 -0.0995 -vn -0.9239 -0.0000 -0.3827 -vn -0.4509 0.8881 0.0897 -vn 0.0896 -0.8881 0.4509 -vn 0.6410 0.3739 0.6703 -vn 0.9239 -0.0000 0.3827 -vn -0.7468 -0.2741 0.6060 -vn -0.9239 0.0000 0.3827 -vn -0.2554 0.8881 0.3822 -vn 0.3822 -0.8881 0.2554 -vn 0.9272 0.3739 0.0207 -vn 0.9239 0.0000 -0.3827 -vn -0.0995 -0.2741 0.9565 -vn 0.0897 0.8881 0.4509 -vn 0.4509 -0.8881 -0.0896 -vn 0.6703 0.3739 -0.6410 -vn 0.6060 -0.2741 0.7468 -vn 0.3822 0.8881 0.2554 -vn 0.2554 -0.8881 -0.3822 -vn 0.0207 0.3739 -0.9272 -vn 0.9565 -0.2741 0.0995 -vn 0.4509 0.8881 -0.0897 -vn -0.0896 -0.8881 -0.4509 -vn -0.6410 0.3739 -0.6703 -vn 0.7468 -0.2741 -0.6060 -vn 0.2554 0.8881 -0.3822 -vn -0.3822 -0.8881 -0.2554 -vn -0.9272 0.3739 -0.0207 +s 0 usemtl m_0 -s off f 19/1/1 74/2/1 9/3/1 20/4/1 f 9/5/2 41/6/2 20/7/2 -f 19/8/3 40/9/3 74/10/3 -f 18/11/4 19/12/4 20/13/4 21/14/4 -f 20/15/2 41/6/2 21/16/2 -f 18/17/3 40/9/3 19/18/3 -f 28/19/5 18/20/5 21/21/5 38/22/5 -f 21/23/2 41/6/2 38/24/2 -f 28/25/3 40/9/3 18/26/3 -f 37/27/6 28/28/6 38/29/6 39/30/6 -f 38/31/2 41/6/2 39/32/2 -f 37/33/3 40/9/3 28/34/3 -f 58/35/7 37/36/7 39/37/7 59/38/7 -f 39/39/2 41/6/2 59/40/2 -f 58/41/3 40/9/3 37/42/3 -f 65/43/8 58/44/8 59/45/8 60/46/8 -f 59/47/2 41/6/2 60/48/2 -f 65/49/3 40/9/3 58/50/3 -f 75/51/9 65/52/9 60/53/9 76/54/9 -f 60/55/2 41/6/2 76/56/2 -f 75/57/3 40/9/3 65/58/3 -f 74/59/10 75/60/10 76/61/10 9/62/10 -f 76/63/2 41/6/2 9/64/2 -f 74/65/3 40/9/3 75/66/3 -f 133/67/9 134/68/9 136/69/9 135/70/9 -f 135/71/3 136/72/3 140/73/3 139/74/3 -f 139/75/5 140/76/5 138/77/5 137/78/5 -f 137/79/2 138/80/2 134/81/2 133/82/2 -f 140/83/1 136/84/1 134/85/1 138/86/1 -f 148/87/5 150/88/5 151/89/5 149/90/5 -f 150/91/3 154/92/3 155/93/3 151/94/3 -f 154/95/9 152/96/9 153/97/9 155/98/9 -f 152/99/2 148/100/2 149/101/2 153/102/2 -f 155/103/1 153/104/1 149/105/1 151/106/1 -f 164/107/9 166/108/9 167/109/9 165/110/9 -f 166/111/2 170/112/2 171/113/2 167/114/2 -f 170/115/5 168/116/5 169/117/5 171/118/5 -f 168/119/3 164/120/3 165/121/3 169/122/3 -f 171/123/1 169/124/1 165/125/1 167/126/1 -f 180/127/5 181/128/5 183/129/5 182/130/5 -f 182/131/2 183/132/2 187/133/2 186/134/2 -f 186/135/9 187/136/9 185/137/9 184/138/9 -f 184/139/3 185/140/3 181/141/3 180/142/3 -f 187/143/1 183/144/1 181/145/1 185/146/1 -f 192/147/9 194/148/9 195/149/9 193/150/9 -f 194/151/3 198/152/3 199/153/3 195/154/3 -f 198/155/5 196/156/5 197/157/5 199/158/5 -f 196/159/2 192/160/2 193/161/2 197/162/2 -f 199/163/7 197/164/7 193/165/7 195/166/7 -f 204/167/5 205/168/5 207/169/5 206/170/5 -f 206/171/3 207/172/3 211/173/3 210/174/3 -f 210/175/9 211/176/9 209/177/9 208/178/9 -f 208/179/2 209/180/2 205/181/2 204/182/2 -f 211/183/7 207/184/7 205/185/7 209/186/7 -f 216/187/9 217/188/9 219/189/9 218/190/9 -f 218/191/2 219/192/2 223/193/2 222/194/2 -f 222/195/5 223/196/5 221/197/5 220/198/5 -f 220/199/3 221/200/3 217/201/3 216/202/3 -f 223/203/7 219/204/7 217/205/7 221/206/7 -f 227/207/5 229/208/5 230/209/5 228/210/5 -f 229/211/2 233/212/2 234/213/2 230/214/2 -f 233/215/9 231/216/9 232/217/9 234/218/9 -f 231/219/3 227/220/3 228/221/3 232/222/3 -f 234/223/7 232/224/7 228/225/7 230/226/7 -s 1 -f 8/227/2 2/228/2 1/229/2 7/230/2 -f 2/228/5 4/231/5 3/232/5 1/229/5 -f 4/233/3 6/234/3 5/235/3 3/236/3 -f 6/234/9 8/237/9 7/238/9 5/235/9 -f 17/239/2 11/240/2 10/241/2 16/242/2 -f 11/240/6 13/243/6 12/244/6 10/241/6 -f 13/245/3 15/246/3 14/247/3 12/248/3 -f 15/246/10 17/249/10 16/250/10 14/247/10 -f 27/251/2 201/252/2 22/253/2 26/254/2 -f 201/252/7 24/255/7 23/256/7 22/253/7 -f 24/257/3 173/258/3 25/259/3 23/260/3 -f 173/258/1 27/261/1 26/262/1 25/259/1 -f 36/263/2 30/264/2 29/265/2 35/266/2 -f 30/264/8 32/267/8 31/268/8 29/265/8 -f 32/269/3 34/270/3 33/271/3 31/272/3 -f 34/270/4 36/273/4 35/274/4 33/271/4 -f 49/275/2 43/276/2 42/277/2 48/278/2 -f 43/276/9 45/279/9 44/280/9 42/277/9 -f 45/281/3 47/282/3 46/283/3 44/284/3 -f 47/282/5 49/285/5 48/286/5 46/283/5 -f 57/287/2 51/288/2 50/289/2 56/290/2 -f 51/288/10 53/291/10 52/292/10 50/289/10 -f 53/293/3 55/294/3 54/295/3 52/296/3 -f 55/294/6 57/297/6 56/298/6 54/295/6 -f 189/299/2 126/300/2 61/301/2 64/302/2 -f 126/300/1 157/303/1 62/304/1 61/301/1 -f 157/305/3 213/306/3 63/307/3 62/308/3 -f 213/306/7 189/309/7 64/310/7 63/307/7 -f 73/311/2 67/312/2 66/313/2 72/314/2 -f 67/312/4 69/315/4 68/316/4 66/313/4 -f 69/317/3 71/318/3 70/319/3 68/320/3 -f 71/318/8 73/321/8 72/322/8 70/319/8 -f 78/323/3 80/324/3 79/325/3 77/326/3 -f 77/327/5 81/328/5 82/329/5 78/330/5 -f 79/331/1 83/332/1 81/333/1 77/334/1 -f 84/335/9 83/336/9 79/337/9 80/338/9 -f 82/339/2 81/333/2 83/332/2 84/340/2 -f 78/341/7 82/342/7 84/343/7 80/344/7 -f 86/345/2 85/346/2 87/347/2 88/348/2 -f 85/349/5 86/350/5 90/351/5 89/352/5 -f 87/353/1 85/354/1 89/355/1 91/356/1 -f 92/357/9 88/358/9 87/359/9 91/360/9 -f 90/361/3 92/362/3 91/356/3 89/355/3 -f 86/363/7 88/364/7 92/365/7 90/366/7 -f 95/367/11 123/368/12 124/369/13 96/370/14 -f 121/371/3 93/372/3 96/373/15 124/374/16 -f 94/375/17 122/376/18 123/368/2 95/367/2 -f 93/377/19 121/378/20 122/376/21 94/375/22 -f 99/379/23 95/380/11 96/381/14 100/382/24 -f 93/383/3 97/384/3 100/385/25 96/386/15 -f 98/387/26 94/388/17 95/380/2 99/379/2 -f 97/389/27 93/390/19 94/388/22 98/387/28 -f 103/391/29 99/392/23 100/393/24 104/394/30 -f 97/395/3 101/396/3 104/397/31 100/398/25 -f 102/399/32 98/400/26 99/392/2 103/391/2 -f 101/401/33 97/402/27 98/400/28 102/399/34 -f 107/403/35 103/404/29 104/405/30 108/406/21 -f 101/407/3 105/408/3 108/409/36 104/410/31 -f 106/411/37 102/412/32 103/404/2 107/403/2 -f 105/413/38 101/414/33 102/412/34 106/411/13 -f 111/415/39 107/416/35 108/417/21 112/418/22 -f 105/419/3 109/420/3 112/421/40 108/422/36 -f 110/423/41 106/424/37 107/416/2 111/415/2 -f 109/425/42 105/426/38 106/424/13 110/423/14 -f 115/427/43 111/428/39 112/429/22 116/430/28 -f 109/431/3 113/432/3 116/433/44 112/434/40 -f 114/435/45 110/436/41 111/428/2 115/427/2 -f 113/437/46 109/438/42 110/436/14 114/435/24 -f 119/439/47 115/440/43 116/441/28 120/442/34 -f 113/443/3 117/444/3 120/445/48 116/446/44 -f 118/447/49 114/448/45 115/440/2 119/439/2 -f 117/449/50 113/450/46 114/448/24 118/447/30 -f 123/451/12 119/452/47 120/453/34 124/454/13 -f 117/455/3 121/456/3 124/457/16 120/458/48 -f 122/459/18 118/460/49 119/452/2 123/451/2 -f 121/461/20 117/462/50 118/460/30 122/459/21 -f 131/463/9 128/464/9 126/465/9 129/466/9 -f 132/467/2 127/468/2 128/464/2 131/463/2 -f 126/469/1 128/470/1 127/471/1 125/472/1 -f 146/473/5 144/474/5 27/475/5 143/476/5 -f 147/477/2 146/473/2 143/476/2 142/478/2 -f 27/479/1 141/480/1 142/481/1 143/482/1 -f 162/483/9 160/484/9 157/485/9 159/486/9 -f 163/487/3 162/483/3 159/486/3 158/488/3 -f 157/489/1 156/490/1 158/491/1 159/492/1 -f 178/493/5 175/494/5 173/495/5 176/496/5 -f 179/497/3 174/498/3 175/494/3 178/493/3 -f 173/499/1 175/500/1 174/501/1 172/502/1 -f 131/463/9 129/466/9 189/503/9 191/504/9 -f 132/467/2 131/463/2 191/504/2 190/505/2 -f 189/506/7 188/507/7 190/508/7 191/509/7 -f 146/473/5 203/510/5 201/511/5 144/474/5 -f 147/477/2 202/512/2 203/510/2 146/473/2 -f 201/513/7 203/514/7 202/515/7 200/516/7 -f 162/483/9 215/517/9 213/518/9 160/484/9 -f 163/487/3 214/519/3 215/517/3 162/483/3 -f 213/520/7 215/521/7 214/522/7 212/523/7 -f 178/493/5 176/496/5 24/524/5 226/525/5 -f 179/497/3 178/493/3 226/525/3 225/526/3 -f 24/527/7 224/528/7 225/529/7 226/530/7 -l 132 130 +f 19/7/3 40/6/3 74/5/3 +f 18/1/4 19/2/4 20/3/4 21/4/4 +f 20/5/2 41/6/2 21/7/2 +f 18/7/3 40/6/3 19/5/3 +f 28/1/5 18/2/5 21/3/5 38/4/5 +f 21/5/2 41/6/2 38/7/2 +f 28/7/3 40/6/3 18/5/3 +f 37/1/6 28/2/6 38/3/6 39/4/6 +f 38/5/2 41/6/2 39/7/2 +f 37/7/3 40/6/3 28/5/3 +f 58/1/7 37/2/7 39/3/7 59/4/7 +f 39/5/2 41/6/2 59/7/2 +f 58/7/3 40/6/3 37/5/3 +f 65/1/8 58/2/8 59/3/8 60/4/8 +f 59/5/2 41/6/2 60/7/2 +f 65/7/3 40/6/3 58/5/3 +f 75/1/9 65/2/9 60/3/9 76/4/9 +f 60/5/2 41/6/2 76/7/2 +f 75/7/3 40/6/3 65/5/3 +f 74/1/10 75/2/10 76/3/10 9/4/10 +f 76/5/2 41/6/2 9/7/2 +f 74/7/3 40/6/3 75/5/3 +f 133/8/9 134/9/9 136/10/9 135/11/9 +f 135/8/3 136/9/3 140/10/3 139/11/3 +f 139/8/5 140/9/5 138/10/5 137/11/5 +f 137/8/2 138/9/2 134/10/2 133/11/2 +f 140/12/1 136/13/1 134/14/1 138/15/1 +f 148/8/5 150/11/5 151/10/5 149/9/5 +f 150/8/3 154/11/3 155/10/3 151/9/3 +f 154/8/9 152/11/9 153/10/9 155/9/9 +f 152/8/2 148/11/2 149/10/2 153/9/2 +f 155/12/1 153/15/1 149/14/1 151/13/1 +f 164/8/9 166/11/9 167/10/9 165/9/9 +f 166/8/2 170/11/2 171/10/2 167/9/2 +f 170/8/5 168/11/5 169/10/5 171/9/5 +f 168/8/3 164/11/3 165/10/3 169/9/3 +f 171/12/1 169/15/1 165/14/1 167/13/1 +f 180/8/5 181/9/5 183/10/5 182/11/5 +f 182/8/2 183/9/2 187/10/2 186/11/2 +f 186/8/9 187/9/9 185/10/9 184/11/9 +f 184/8/3 185/9/3 181/10/3 180/11/3 +f 187/12/1 183/13/1 181/14/1 185/15/1 +f 192/8/9 194/11/9 195/10/9 193/9/9 +f 194/8/3 198/11/3 199/10/3 195/9/3 +f 198/8/5 196/11/5 197/10/5 199/9/5 +f 196/8/2 192/11/2 193/10/2 197/9/2 +f 199/12/7 197/15/7 193/14/7 195/13/7 +f 204/8/5 205/9/5 207/10/5 206/11/5 +f 206/8/3 207/9/3 211/10/3 210/11/3 +f 210/8/9 211/9/9 209/10/9 208/11/9 +f 208/8/2 209/9/2 205/10/2 204/11/2 +f 211/12/7 207/13/7 205/14/7 209/15/7 +f 216/8/9 217/9/9 219/10/9 218/11/9 +f 218/8/2 219/9/2 223/10/2 222/11/2 +f 222/8/5 223/9/5 221/10/5 220/11/5 +f 220/8/3 221/9/3 217/10/3 216/11/3 +f 223/12/7 219/13/7 217/14/7 221/15/7 +f 227/8/5 229/11/5 230/10/5 228/9/5 +f 229/8/2 233/11/2 234/10/2 230/9/2 +f 233/8/9 231/11/9 232/10/9 234/9/9 +f 231/8/3 227/11/3 228/10/3 232/9/3 +f 234/12/7 232/15/7 228/14/7 230/13/7 +f 8/1/2 2/4/2 1/16/2 7/17/2 +f 2/4/5 4/18/5 3/5/5 1/16/5 +f 4/1/3 6/4/3 5/16/3 3/17/3 +f 6/4/9 8/18/9 7/5/9 5/16/9 +f 17/1/2 11/4/2 10/16/2 16/17/2 +f 11/4/6 13/18/6 12/5/6 10/16/6 +f 13/1/3 15/4/3 14/16/3 12/17/3 +f 15/4/10 17/18/10 16/5/10 14/16/10 +f 27/1/2 201/4/2 22/16/2 26/17/2 +f 201/4/7 24/18/7 23/5/7 22/16/7 +f 24/1/3 173/4/3 25/16/3 23/17/3 +f 173/4/1 27/18/1 26/5/1 25/16/1 +f 36/1/2 30/4/2 29/16/2 35/17/2 +f 30/4/8 32/18/8 31/5/8 29/16/8 +f 32/1/3 34/4/3 33/16/3 31/17/3 +f 34/4/4 36/18/4 35/5/4 33/16/4 +f 49/1/2 43/4/2 42/16/2 48/17/2 +f 43/4/9 45/18/9 44/5/9 42/16/9 +f 45/1/3 47/4/3 46/16/3 44/17/3 +f 47/4/5 49/18/5 48/5/5 46/16/5 +f 57/1/2 51/4/2 50/16/2 56/17/2 +f 51/4/10 53/18/10 52/5/10 50/16/10 +f 53/1/3 55/4/3 54/16/3 52/17/3 +f 55/4/6 57/18/6 56/5/6 54/16/6 +f 189/1/2 126/4/2 61/16/2 64/17/2 +f 126/4/1 157/18/1 62/5/1 61/16/1 +f 157/1/3 213/4/3 63/16/3 62/17/3 +f 213/4/7 189/18/7 64/5/7 63/16/7 +f 73/1/2 67/4/2 66/16/2 72/17/2 +f 67/4/4 69/18/4 68/5/4 66/16/4 +f 69/1/3 71/4/3 70/16/3 68/17/3 +f 71/4/8 73/18/8 72/5/8 70/16/8 +f 78/19/3 80/20/3 79/21/3 77/22/3 +f 77/23/5 81/24/5 82/25/5 78/26/5 +f 79/23/1 83/24/1 81/25/1 77/26/1 +f 84/24/9 83/25/9 79/26/9 80/23/9 +f 82/27/2 81/25/2 83/24/2 84/28/2 +f 78/23/7 82/24/7 84/25/7 80/26/7 +f 86/19/2 85/22/2 87/21/2 88/20/2 +f 85/23/5 86/26/5 90/25/5 89/24/5 +f 87/23/1 85/26/1 89/25/1 91/24/1 +f 92/24/9 88/23/9 87/26/9 91/25/9 +f 90/27/3 92/28/3 91/24/3 89/25/3 +f 86/23/7 88/26/7 92/25/7 90/24/7 +f 95/29/7 123/30/7 124/31/7 96/32/7 +f 121/33/3 93/34/3 96/29/3 124/30/3 +f 94/34/2 122/33/2 123/30/2 95/29/2 +f 93/17/1 121/35/1 122/33/1 94/34/1 +f 99/29/8 95/30/8 96/31/8 100/32/8 +f 93/33/3 97/34/3 100/29/3 96/30/3 +f 98/34/2 94/33/2 95/30/2 99/29/2 +f 97/17/4 93/35/4 94/33/4 98/34/4 +f 103/29/9 99/30/9 100/31/9 104/32/9 +f 97/33/3 101/34/3 104/29/3 100/30/3 +f 102/34/2 98/33/2 99/30/2 103/29/2 +f 101/17/5 97/35/5 98/33/5 102/34/5 +f 107/29/10 103/30/10 104/31/10 108/32/10 +f 101/33/3 105/34/3 108/29/3 104/30/3 +f 106/34/2 102/33/2 103/30/2 107/29/2 +f 105/17/6 101/35/6 102/33/6 106/34/6 +f 111/29/1 107/30/1 108/31/1 112/32/1 +f 105/33/3 109/34/3 112/29/3 108/30/3 +f 110/34/2 106/33/2 107/30/2 111/29/2 +f 109/17/7 105/35/7 106/33/7 110/34/7 +f 115/29/4 111/30/4 112/31/4 116/32/4 +f 109/33/3 113/34/3 116/29/3 112/30/3 +f 114/34/2 110/33/2 111/30/2 115/29/2 +f 113/17/8 109/35/8 110/33/8 114/34/8 +f 119/29/5 115/30/5 116/31/5 120/32/5 +f 113/33/3 117/34/3 120/29/3 116/30/3 +f 118/34/2 114/33/2 115/30/2 119/29/2 +f 117/17/9 113/35/9 114/33/9 118/34/9 +f 123/29/6 119/30/6 120/31/6 124/32/6 +f 117/33/3 121/34/3 124/29/3 120/30/3 +f 122/34/2 118/33/2 119/30/2 123/29/2 +f 121/17/10 117/35/10 118/33/10 122/34/10 +f 131/36/9 128/37/9 126/38/9 129/39/9 +f 132/40/2 127/41/2 128/37/2 131/36/2 +f 126/37/1 128/41/1 127/42/1 125/43/1 +f 146/36/5 144/39/5 27/38/5 143/37/5 +f 147/40/2 146/36/2 143/37/2 142/41/2 +f 27/37/1 141/43/1 142/42/1 143/41/1 +f 162/36/9 160/39/9 157/38/9 159/37/9 +f 163/40/3 162/36/3 159/37/3 158/41/3 +f 157/37/1 156/43/1 158/42/1 159/41/1 +f 178/36/5 175/37/5 173/38/5 176/39/5 +f 179/40/3 174/41/3 175/37/3 178/36/3 +f 173/37/1 175/41/1 174/42/1 172/43/1 +f 131/36/9 129/39/9 189/38/9 191/37/9 +f 132/40/2 131/36/2 191/37/2 190/41/2 +f 189/37/7 188/43/7 190/42/7 191/41/7 +f 146/36/5 203/37/5 201/38/5 144/39/5 +f 147/40/2 202/41/2 203/37/2 146/36/2 +f 201/37/7 203/41/7 202/42/7 200/43/7 +f 162/36/9 215/37/9 213/38/9 160/39/9 +f 163/40/3 214/41/3 215/37/3 162/36/3 +f 213/37/7 215/41/7 214/42/7 212/43/7 +f 178/36/5 176/39/5 24/38/5 226/37/5 +f 179/40/3 178/36/3 226/37/3 225/41/3 +f 24/37/7 224/43/7 225/42/7 226/41/7 +l 130 132 l 129 130 -l 147 145 +l 145 147 l 144 145 -l 163 161 +l 161 163 l 160 161 -l 179 177 +l 177 179 l 176 177 diff --git a/src/main/resources/assets/create/sounds/clipboard_check.ogg b/src/main/resources/assets/create/sounds/clipboard_check.ogg new file mode 100644 index 000000000..33727db31 Binary files /dev/null and b/src/main/resources/assets/create/sounds/clipboard_check.ogg differ diff --git a/src/main/resources/assets/create/sounds/clipboard_erase.ogg b/src/main/resources/assets/create/sounds/clipboard_erase.ogg new file mode 100644 index 000000000..c131fa419 Binary files /dev/null and b/src/main/resources/assets/create/sounds/clipboard_erase.ogg differ diff --git a/src/main/resources/assets/create/sounds/spout.ogg b/src/main/resources/assets/create/sounds/spout.ogg new file mode 100644 index 000000000..9b8d356d4 Binary files /dev/null and b/src/main/resources/assets/create/sounds/spout.ogg differ diff --git a/src/main/resources/assets/create/sounds/spout_1.ogg b/src/main/resources/assets/create/sounds/spout_1.ogg new file mode 100644 index 000000000..4d7ff0a0a Binary files /dev/null and b/src/main/resources/assets/create/sounds/spout_1.ogg differ diff --git a/src/main/resources/assets/create/sounds/spout_2.ogg b/src/main/resources/assets/create/sounds/spout_2.ogg new file mode 100644 index 000000000..94938185a Binary files /dev/null and b/src/main/resources/assets/create/sounds/spout_2.ogg differ diff --git a/src/main/resources/assets/create/sounds/spout_3.ogg b/src/main/resources/assets/create/sounds/spout_3.ogg new file mode 100644 index 000000000..757ad3aa2 Binary files /dev/null and b/src/main/resources/assets/create/sounds/spout_3.ogg differ diff --git a/src/main/resources/create.mixins.json b/src/main/resources/create.mixins.json index 1a247911b..e2f94c330 100644 --- a/src/main/resources/create.mixins.json +++ b/src/main/resources/create.mixins.json @@ -29,6 +29,7 @@ "accessor.AgeableListModelAccessor", "accessor.GameRendererAccessor", "accessor.HumanoidArmorLayerAccessor", + "accessor.MouseHandlerAccessor", "accessor.ParticleEngineAccessor", "client.BlockDestructionProgressMixin", "client.CameraMixin", diff --git a/src/main/resources/data/create/recipes/compat/ae2/milling/certus_quartz.json b/src/main/resources/data/create/recipes/compat/ae2/milling/certus_quartz.json deleted file mode 100644 index 4e3003c1c..000000000 --- a/src/main/resources/data/create/recipes/compat/ae2/milling/certus_quartz.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "ae2" - } - ], - "type": "create:milling", - "ingredients": [ - { - "tag": "forge:gems/certus_quartz" - } - ], - "results": [ - { - "item": "ae2:certus_quartz_dust", - "count": 1 - } - ], - "processingTime": 200 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/ae2/milling/ender_pearl.json b/src/main/resources/data/create/recipes/compat/ae2/milling/ender_pearl.json deleted file mode 100644 index bedd57a27..000000000 --- a/src/main/resources/data/create/recipes/compat/ae2/milling/ender_pearl.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "ae2" - } - ], - "type": "create:milling", - "ingredients": [ - { - "tag": "forge:ender_pearls" - } - ], - "results": [ - { - "item": "ae2:ender_dust", - "count": 1 - } - ], - "processingTime": 100 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/ae2/milling/sky_stone_block.json b/src/main/resources/data/create/recipes/compat/ae2/milling/sky_stone_block.json deleted file mode 100644 index 72a93999e..000000000 --- a/src/main/resources/data/create/recipes/compat/ae2/milling/sky_stone_block.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "ae2" - } - ], - "type": "create:milling", - "ingredients": [ - { - "item": "ae2:sky_stone_block" - } - ], - "results": [ - { - "item": "ae2:sky_dust", - "count": 1 - } - ], - "processingTime": 300 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/atmospheric/milling/warm_monkey_brush.json b/src/main/resources/data/create/recipes/compat/atmospheric/milling/warm_monkey_brush.json deleted file mode 100644 index 9f0451a84..000000000 --- a/src/main/resources/data/create/recipes/compat/atmospheric/milling/warm_monkey_brush.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "atmospheric" - } - ], - "type": "create:milling", - "ingredients": [ - { - "item": "atmospheric:warm_monkey_brush" - } - ], - "results": [ - { - "item": "minecraft:yellow_dye", - "count": 2 - }, - { - "item": "minecraft:yellow_dye", - "count": 2, - "chance": 0.1 - }, - { - "item": "minecraft:orange_dye", - "count": 1, - "chance": 0.1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/atmospheric/splashing/arid_sand.json b/src/main/resources/data/create/recipes/compat/atmospheric/splashing/arid_sand.json deleted file mode 100644 index 5c51a9d3b..000000000 --- a/src/main/resources/data/create/recipes/compat/atmospheric/splashing/arid_sand.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "atmospheric" - } - ], - "type": "create:splashing", - "ingredients": [ - { - "item": "atmospheric:arid_sand" - } - ], - "results": [ - { - "item": "minecraft:clay_ball", - "count": 1, - "chance": 0.25 - }, - { - "item": "atmospheric:aloe_kernels", - "count": 1, - "chance": 0.05 - } - ] -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/atmospheric/splashing/red_arid_sand.json b/src/main/resources/data/create/recipes/compat/atmospheric/splashing/red_arid_sand.json deleted file mode 100644 index b8b10cb6f..000000000 --- a/src/main/resources/data/create/recipes/compat/atmospheric/splashing/red_arid_sand.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "atmospheric" - } - ], - "type": "create:splashing", - "ingredients": [ - { - "item": "atmospheric:red_arid_sand" - } - ], - "results": [ - { - "item": "minecraft:gold_nugget", - "count": 4, - "chance": 0.125 - }, - { - "item": "atmospheric:aloe_kernels", - "count": 1, - "chance": 0.05 - } - ] -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/milling/blue_hydrangea.json b/src/main/resources/data/create/recipes/compat/bop/milling/blue_hydrangea.json deleted file mode 100644 index dc8a739d0..000000000 --- a/src/main/resources/data/create/recipes/compat/bop/milling/blue_hydrangea.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "biomesoplenty" - } - ], - "type": "create:milling", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "biomesoplenty:blue_hydrangea" - } - ], - "results": [ - { - "item": "minecraft:light_blue_dye", - "count": 3 - }, - { - "item": "minecraft:green_dye", - "count": 2, - "chance": 0.05 - }, - { - "item": "minecraft:light_blue_dye", - "count": 2, - "chance": 0.25 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/milling/burning_blossom.json b/src/main/resources/data/create/recipes/compat/bop/milling/burning_blossom.json deleted file mode 100644 index ca7e76467..000000000 --- a/src/main/resources/data/create/recipes/compat/bop/milling/burning_blossom.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "biomesoplenty" - } - ], - "type": "create:milling", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "biomesoplenty:burning_blossom" - } - ], - "results": [ - { - "item": "minecraft:orange_dye", - "count": 2 - }, - { - "item": "minecraft:lime_dye", - "count": 1, - "chance": 0.1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/milling/glowflower.json b/src/main/resources/data/create/recipes/compat/bop/milling/glowflower.json deleted file mode 100644 index 18bc7c8fc..000000000 --- a/src/main/resources/data/create/recipes/compat/bop/milling/glowflower.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "biomesoplenty" - } - ], - "type": "create:milling", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "biomesoplenty:glowflower" - } - ], - "results": [ - { - "item": "minecraft:cyan_dye", - "count": 2 - }, - { - "item": "minecraft:white_dye", - "count": 1, - "chance": 0.1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/milling/goldenrod.json b/src/main/resources/data/create/recipes/compat/bop/milling/goldenrod.json deleted file mode 100644 index 0015eb4b1..000000000 --- a/src/main/resources/data/create/recipes/compat/bop/milling/goldenrod.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "biomesoplenty" - } - ], - "type": "create:milling", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "biomesoplenty:goldenrod" - } - ], - "results": [ - { - "item": "minecraft:yellow_dye", - "count": 3 - }, - { - "item": "minecraft:green_dye", - "count": 2, - "chance": 0.05 - }, - { - "item": "minecraft:yellow_dye", - "count": 2, - "chance": 0.25 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/milling/lavender.json b/src/main/resources/data/create/recipes/compat/bop/milling/lavender.json deleted file mode 100644 index ca78ef140..000000000 --- a/src/main/resources/data/create/recipes/compat/bop/milling/lavender.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "biomesoplenty" - } - ], - "type": "create:milling", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "biomesoplenty:lavender" - } - ], - "results": [ - { - "item": "minecraft:purple_dye", - "count": 2 - }, - { - "item": "minecraft:green_dye", - "count": 1, - "chance": 0.05 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/milling/orange_cosmos.json b/src/main/resources/data/create/recipes/compat/bop/milling/orange_cosmos.json deleted file mode 100644 index ef2dad2eb..000000000 --- a/src/main/resources/data/create/recipes/compat/bop/milling/orange_cosmos.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "biomesoplenty" - } - ], - "type": "create:milling", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "biomesoplenty:orange_cosmos" - } - ], - "results": [ - { - "item": "minecraft:orange_dye", - "count": 2 - }, - { - "item": "minecraft:lime_dye", - "count": 1, - "chance": 0.1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/milling/pink_daffodil.json b/src/main/resources/data/create/recipes/compat/bop/milling/pink_daffodil.json deleted file mode 100644 index 19afb0324..000000000 --- a/src/main/resources/data/create/recipes/compat/bop/milling/pink_daffodil.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "biomesoplenty" - } - ], - "type": "create:milling", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "biomesoplenty:pink_daffodil" - } - ], - "results": [ - { - "item": "minecraft:pink_dye", - "count": 2 - }, - { - "item": "minecraft:magenta_dye", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cyan_dye", - "count": 1, - "chance": 0.05 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/milling/pink_hibiscus.json b/src/main/resources/data/create/recipes/compat/bop/milling/pink_hibiscus.json deleted file mode 100644 index b9257f8f4..000000000 --- a/src/main/resources/data/create/recipes/compat/bop/milling/pink_hibiscus.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "biomesoplenty" - } - ], - "type": "create:milling", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "biomesoplenty:pink_hibiscus" - } - ], - "results": [ - { - "item": "minecraft:pink_dye", - "count": 2 - }, - { - "item": "minecraft:yellow_dye", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:green_dye", - "count": 1, - "chance": 0.05 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/milling/rose.json b/src/main/resources/data/create/recipes/compat/bop/milling/rose.json deleted file mode 100644 index fc91888e2..000000000 --- a/src/main/resources/data/create/recipes/compat/bop/milling/rose.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "biomesoplenty" - } - ], - "type": "create:milling", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "biomesoplenty:rose" - } - ], - "results": [ - { - "item": "minecraft:red_dye", - "count": 2 - }, - { - "item": "minecraft:green_dye", - "count": 1, - "chance": 0.05 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/milling/violet.json b/src/main/resources/data/create/recipes/compat/bop/milling/violet.json deleted file mode 100644 index 2d7d0f7a1..000000000 --- a/src/main/resources/data/create/recipes/compat/bop/milling/violet.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "biomesoplenty" - } - ], - "type": "create:milling", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "biomesoplenty:violet" - } - ], - "results": [ - { - "item": "minecraft:purple_dye", - "count": 2 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/milling/wildflower.json b/src/main/resources/data/create/recipes/compat/bop/milling/wildflower.json deleted file mode 100644 index 41c84b806..000000000 --- a/src/main/resources/data/create/recipes/compat/bop/milling/wildflower.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "biomesoplenty" - } - ], - "type": "create:milling", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "biomesoplenty:wildflower" - } - ], - "results": [ - { - "item": "minecraft:magenta_dye", - "count": 2 - }, - { - "item": "minecraft:lime_dye", - "count": 1, - "chance": 0.1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/milling/wilted_lily.json b/src/main/resources/data/create/recipes/compat/bop/milling/wilted_lily.json deleted file mode 100644 index ed14ddc1a..000000000 --- a/src/main/resources/data/create/recipes/compat/bop/milling/wilted_lily.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "biomesoplenty" - } - ], - "type": "create:milling", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "biomesoplenty:wilted_lily" - } - ], - "results": [ - { - "item": "minecraft:gray_dye", - "count": 2 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/botania/milling/black_petal.json b/src/main/resources/data/create/recipes/compat/botania/milling/black_petal.json deleted file mode 100644 index 961de2d73..000000000 --- a/src/main/resources/data/create/recipes/compat/botania/milling/black_petal.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "botania" - } - ], - "type": "create:milling", - "ingredients": [ - { - "tag": "botania:petals/black" - } - ], - "results": [ - { - "item": "minecraft:black_dye", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/botania/milling/blue_petal.json b/src/main/resources/data/create/recipes/compat/botania/milling/blue_petal.json deleted file mode 100644 index 3636f2cfe..000000000 --- a/src/main/resources/data/create/recipes/compat/botania/milling/blue_petal.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "botania" - } - ], - "type": "create:milling", - "ingredients": [ - { - "tag": "botania:petals/blue" - } - ], - "results": [ - { - "item": "minecraft:blue_dye", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/botania/milling/brown_petal.json b/src/main/resources/data/create/recipes/compat/botania/milling/brown_petal.json deleted file mode 100644 index 10369e9d6..000000000 --- a/src/main/resources/data/create/recipes/compat/botania/milling/brown_petal.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "botania" - } - ], - "type": "create:milling", - "ingredients": [ - { - "tag": "botania:petals/brown" - } - ], - "results": [ - { - "item": "minecraft:brown_dye", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/botania/milling/green_petal.json b/src/main/resources/data/create/recipes/compat/botania/milling/green_petal.json deleted file mode 100644 index 0889fda2a..000000000 --- a/src/main/resources/data/create/recipes/compat/botania/milling/green_petal.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "botania" - } - ], - "type": "create:milling", - "ingredients": [ - { - "tag": "botania:petals/green" - } - ], - "results": [ - { - "item": "minecraft:green_dye", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/botania/milling/light_blue_petal.json b/src/main/resources/data/create/recipes/compat/botania/milling/light_blue_petal.json deleted file mode 100644 index cd04d7aad..000000000 --- a/src/main/resources/data/create/recipes/compat/botania/milling/light_blue_petal.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "botania" - } - ], - "type": "create:milling", - "ingredients": [ - { - "tag": "botania:petals/light_blue" - } - ], - "results": [ - { - "item": "minecraft:light_blue_dye", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/botania/milling/light_gray_petal.json b/src/main/resources/data/create/recipes/compat/botania/milling/light_gray_petal.json deleted file mode 100644 index b13e704d3..000000000 --- a/src/main/resources/data/create/recipes/compat/botania/milling/light_gray_petal.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "botania" - } - ], - "type": "create:milling", - "ingredients": [ - { - "tag": "botania:petals/light_gray" - } - ], - "results": [ - { - "item": "minecraft:light_gray_dye", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/botania/milling/lime_petal.json b/src/main/resources/data/create/recipes/compat/botania/milling/lime_petal.json deleted file mode 100644 index 7232beeaa..000000000 --- a/src/main/resources/data/create/recipes/compat/botania/milling/lime_petal.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "botania" - } - ], - "type": "create:milling", - "ingredients": [ - { - "tag": "botania:petals/lime" - } - ], - "results": [ - { - "item": "minecraft:lime_dye", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/botania/milling/magenta_petal.json b/src/main/resources/data/create/recipes/compat/botania/milling/magenta_petal.json deleted file mode 100644 index 434ebaf79..000000000 --- a/src/main/resources/data/create/recipes/compat/botania/milling/magenta_petal.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "botania" - } - ], - "type": "create:milling", - "ingredients": [ - { - "tag": "botania:petals/magenta" - } - ], - "results": [ - { - "item": "minecraft:magenta_dye", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/botania/milling/orange_petal.json b/src/main/resources/data/create/recipes/compat/botania/milling/orange_petal.json deleted file mode 100644 index 8cb3343c1..000000000 --- a/src/main/resources/data/create/recipes/compat/botania/milling/orange_petal.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "botania" - } - ], - "type": "create:milling", - "ingredients": [ - { - "tag": "botania:petals/orange" - } - ], - "results": [ - { - "item": "minecraft:orange_dye", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/botania/milling/pink_petal.json b/src/main/resources/data/create/recipes/compat/botania/milling/pink_petal.json deleted file mode 100644 index 7f48532f8..000000000 --- a/src/main/resources/data/create/recipes/compat/botania/milling/pink_petal.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "botania" - } - ], - "type": "create:milling", - "ingredients": [ - { - "tag": "botania:petals/pink" - } - ], - "results": [ - { - "item": "minecraft:pink_dye", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/botania/milling/purple_petal.json b/src/main/resources/data/create/recipes/compat/botania/milling/purple_petal.json deleted file mode 100644 index a6a808423..000000000 --- a/src/main/resources/data/create/recipes/compat/botania/milling/purple_petal.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "botania" - } - ], - "type": "create:milling", - "ingredients": [ - { - "tag": "botania:petals/purple" - } - ], - "results": [ - { - "item": "minecraft:purple_dye", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/botania/milling/white_petal.json b/src/main/resources/data/create/recipes/compat/botania/milling/white_petal.json deleted file mode 100644 index 9c5e40904..000000000 --- a/src/main/resources/data/create/recipes/compat/botania/milling/white_petal.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "botania" - } - ], - "type": "create:milling", - "ingredients": [ - { - "tag": "botania:petals/white" - } - ], - "results": [ - { - "item": "minecraft:white_dye", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/botania/milling/yellow_petal.json b/src/main/resources/data/create/recipes/compat/botania/milling/yellow_petal.json deleted file mode 100644 index 52d18de28..000000000 --- a/src/main/resources/data/create/recipes/compat/botania/milling/yellow_petal.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "botania" - } - ], - "type": "create:milling", - "ingredients": [ - { - "tag": "botania:petals/yellow" - } - ], - "results": [ - { - "item": "minecraft:yellow_dye", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/crushing/ametrine_ore.json b/src/main/resources/data/create/recipes/compat/byg/crushing/ametrine_ore.json deleted file mode 100644 index e3d193925..000000000 --- a/src/main/resources/data/create/recipes/compat/byg/crushing/ametrine_ore.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "byg" - } - ], - "type": "create:crushing", - "ingredients": [ - { - "tag": "forge:ores/ametrine" - } - ], - "results": [ - { - "item": "byg:ametrine_gems", - "count": 2 - }, - { - "item": "byg:ametrine_gems", - "chance": 0.25 - }, - { - "item": "create:experience_nugget", - "chance": 0.75 - }, - { - "item": "byg:cobbled_ether_stone", - "chance": 0.125 - } - ], - "processingTime": 500 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/crushing/cryptic_redstone_ore.json b/src/main/resources/data/create/recipes/compat/byg/crushing/cryptic_redstone_ore.json deleted file mode 100644 index c0729eae8..000000000 --- a/src/main/resources/data/create/recipes/compat/byg/crushing/cryptic_redstone_ore.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "byg" - } - ], - "type": "create:crushing", - "ingredients": [ - { - "item": "byg:cryptic_redstone_ore" - } - ], - "results": [ - { - "item": "minecraft:redstone", - "count": 6 - }, - { - "item": "minecraft:redstone", - "chance": 0.5 - }, - { - "item": "create:experience_nugget", - "chance": 0.75 - }, - { - "item": "byg:cryptic_stone", - "chance": 0.125 - } - ], - "processingTime": 250 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/crushing/emeraldite_ore.json b/src/main/resources/data/create/recipes/compat/byg/crushing/emeraldite_ore.json deleted file mode 100644 index 52ec123f3..000000000 --- a/src/main/resources/data/create/recipes/compat/byg/crushing/emeraldite_ore.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "byg" - } - ], - "type": "create:crushing", - "ingredients": [ - { - "tag": "forge:ores/emeraldite" - } - ], - "results": [ - { - "item": "byg:emeraldite_shards", - "count": 2 - }, - { - "item": "byg:emeraldite_shards", - "chance": 0.25 - }, - { - "item": "create:experience_nugget", - "chance": 0.75 - }, - { - "item": "byg:scoria_cobblestone", - "chance": 0.125 - } - ], - "processingTime": 500 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/crushing/pervaded_netherrack.json b/src/main/resources/data/create/recipes/compat/byg/crushing/pervaded_netherrack.json deleted file mode 100644 index b691ba3fc..000000000 --- a/src/main/resources/data/create/recipes/compat/byg/crushing/pervaded_netherrack.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "byg" - } - ], - "type": "create:crushing", - "ingredients": [ - { - "item": "byg:pervaded_netherrack" - } - ], - "results": [ - { - "item": "minecraft:glowstone_dust", - "count": 2 - }, - { - "item": "minecraft:glowstone_dust", - "chance": 0.5 - }, - { - "item": "create:experience_nugget", - "chance": 0.75 - }, - { - "item": "minecraft:netherrack", - "chance": 0.125 - } - ], - "processingTime": 150 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/japanese_orchid.json b/src/main/resources/data/create/recipes/compat/byg/milling/japanese_orchid.json deleted file mode 100644 index 08b9516e8..000000000 --- a/src/main/resources/data/create/recipes/compat/byg/milling/japanese_orchid.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "byg" - } - ], - "type": "create:milling", - "ingredients": [ - { - "item": "byg:japanese_orchid" - } - ], - "results": [ - { - "item": "minecraft:pink_dye", - "count": 2 - }, - { - "item": "minecraft:white_dye", - "chance": 0.05 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/lollipop_flower.json b/src/main/resources/data/create/recipes/compat/byg/milling/lollipop_flower.json deleted file mode 100644 index 7709ddba6..000000000 --- a/src/main/resources/data/create/recipes/compat/byg/milling/lollipop_flower.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "byg" - } - ], - "type": "create:milling", - "ingredients": [ - { - "item": "byg:lollipop_flower" - } - ], - "results": [ - { - "item": "minecraft:yellow_dye", - "count": 2 - }, - { - "item": "minecraft:yellow_dye", - "chance": 0.25 - }, - { - "item": "minecraft:green_dye", - "chance": 0.05 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/byg/milling/purple_sage.json b/src/main/resources/data/create/recipes/compat/byg/milling/purple_sage.json deleted file mode 100644 index 277836734..000000000 --- a/src/main/resources/data/create/recipes/compat/byg/milling/purple_sage.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "byg" - } - ], - "type": "create:milling", - "ingredients": [ - { - "item": "byg:purple_sage" - } - ], - "results": [ - { - "item": "minecraft:purple_dye", - "count": 2 - }, - { - "item": "minecraft:magenta_dye", - "chance": 0.1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/druidcraft/crushing/amber_ore.json b/src/main/resources/data/create/recipes/compat/druidcraft/crushing/amber_ore.json deleted file mode 100644 index 272894cf2..000000000 --- a/src/main/resources/data/create/recipes/compat/druidcraft/crushing/amber_ore.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "druidcraft" - } - ], - "type": "create:crushing", - "ingredients": [ - { - "item": "druidcraft:amber_ore" - } - ], - "results": [ - { - "item": "druidcraft:amber", - "count": 2 - }, - { - "item": "druidcraft:amber", - "count": 1, - "chance": 0.5 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.125 - } - ], - "processingTime": 300 -} diff --git a/src/main/resources/data/create/recipes/compat/druidcraft/crushing/fiery_glass_ore.json b/src/main/resources/data/create/recipes/compat/druidcraft/crushing/fiery_glass_ore.json deleted file mode 100644 index 375e7ff5b..000000000 --- a/src/main/resources/data/create/recipes/compat/druidcraft/crushing/fiery_glass_ore.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "druidcraft" - } - ], - "type": "create:crushing", - "ingredients": [ - { - "item": "druidcraft:fiery_glass_ore" - } - ], - "results": [ - { - "item": "druidcraft:fiery_glass", - "count": 8 - }, - { - "item": "druidcraft:fiery_glass", - "count": 6, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.125 - } - ], - "processingTime": 300 -} diff --git a/src/main/resources/data/create/recipes/compat/druidcraft/crushing/moonstone_ore.json b/src/main/resources/data/create/recipes/compat/druidcraft/crushing/moonstone_ore.json deleted file mode 100644 index fa05b1767..000000000 --- a/src/main/resources/data/create/recipes/compat/druidcraft/crushing/moonstone_ore.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "druidcraft" - } - ], - "type": "create:crushing", - "ingredients": [ - { - "item": "druidcraft:moonstone_ore" - } - ], - "results": [ - { - "item": "druidcraft:moonstone", - "count": 2 - }, - { - "item": "druidcraft:moonstone", - "count": 1, - "chance": 0.5 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.125 - } - ], - "processingTime": 300 -} diff --git a/src/main/resources/data/create/recipes/compat/druidcraft/cutting/darkwood_log.json b/src/main/resources/data/create/recipes/compat/druidcraft/cutting/darkwood_log.json deleted file mode 100644 index cefdf5e0a..000000000 --- a/src/main/resources/data/create/recipes/compat/druidcraft/cutting/darkwood_log.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "druidcraft" - } - ], - "type": "create:cutting", - "ingredients": [ - { - "item": "druidcraft:darkwood_log" - } - ], - "results": [ - { - "item": "druidcraft:stripped_darkwood_log", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/druidcraft/cutting/elder_log.json b/src/main/resources/data/create/recipes/compat/druidcraft/cutting/elder_log.json deleted file mode 100644 index 2fde05a0c..000000000 --- a/src/main/resources/data/create/recipes/compat/druidcraft/cutting/elder_log.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "druidcraft" - } - ], - "type": "create:cutting", - "ingredients": [ - { - "item": "druidcraft:elder_log" - } - ], - "results": [ - { - "item": "druidcraft:stripped_elder_log", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/druidcraft/cutting/stripped_darkwood_log.json b/src/main/resources/data/create/recipes/compat/druidcraft/cutting/stripped_darkwood_log.json deleted file mode 100644 index 19a15e8fd..000000000 --- a/src/main/resources/data/create/recipes/compat/druidcraft/cutting/stripped_darkwood_log.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "druidcraft" - } - ], - "type": "create:cutting", - "ingredients": [ - { - "item": "druidcraft:stripped_darkwood_log" - } - ], - "results": [ - { - "item": "druidcraft:darkwood_planks", - "count": 6 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/druidcraft/cutting/stripped_elder_log.json b/src/main/resources/data/create/recipes/compat/druidcraft/cutting/stripped_elder_log.json deleted file mode 100644 index fd3bbf015..000000000 --- a/src/main/resources/data/create/recipes/compat/druidcraft/cutting/stripped_elder_log.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "druidcraft" - } - ], - "type": "create:cutting", - "ingredients": [ - { - "item": "druidcraft:stripped_elder_log" - } - ], - "results": [ - { - "item": "druidcraft:elder_planks", - "count": 6 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/endergetic/cutting/poise_stem.json b/src/main/resources/data/create/recipes/compat/endergetic/cutting/poise_stem.json deleted file mode 100644 index b16bec65c..000000000 --- a/src/main/resources/data/create/recipes/compat/endergetic/cutting/poise_stem.json +++ /dev/null @@ -1,21 +0,0 @@ -{ -"conditions": [ - { - "type": "forge:mod_loaded", - "modid": "endergetic" - } - ], - "type": "create:cutting", - "ingredients": [ - { - "item": "endergetic:poise_stem" - } - ], - "results": [ - { - "item": "endergetic:stripped_poise_stem", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/endergetic/cutting/stripped_poise_stem.json b/src/main/resources/data/create/recipes/compat/endergetic/cutting/stripped_poise_stem.json deleted file mode 100644 index 3fa18d40e..000000000 --- a/src/main/resources/data/create/recipes/compat/endergetic/cutting/stripped_poise_stem.json +++ /dev/null @@ -1,21 +0,0 @@ -{ -"conditions": [ - { - "type": "forge:mod_loaded", - "modid": "endergetic" - } - ], - "type": "create:cutting", - "ingredients": [ - { - "item": "endergetic:stripped_poise_stem" - } - ], - "results": [ - { - "item": "endergetic:poise_planks", - "count": 6 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/quark/crushing/moss_block.json b/src/main/resources/data/create/recipes/compat/quark/crushing/moss_block.json deleted file mode 100644 index 04ed45e63..000000000 --- a/src/main/resources/data/create/recipes/compat/quark/crushing/moss_block.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "quark" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "minecraft:moss_block" - } - ], - "results": [ - { - "item": "quark:moss_paste", - "count": 2 - }, - { - "item": "quark:moss_paste", - "count": 1, - "chance": 0.1 - } - ], - "processingTime": 50 -} diff --git a/src/main/resources/data/create/recipes/compat/quark/splashing/iron_plate_rusting.json b/src/main/resources/data/create/recipes/compat/quark/splashing/iron_plate_rusting.json deleted file mode 100644 index ce44e3778..000000000 --- a/src/main/resources/data/create/recipes/compat/quark/splashing/iron_plate_rusting.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "quark" - } - ], - "type": "create:splashing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "quark:iron_plate" - } - ], - "results": [ - { - "item": "quark:rusty_iron_plate", - "count": 1 - } - ] -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/agate_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/agate_ore.json deleted file mode 100644 index 44f369478..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/agate_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:agate_ore" - } - ], - "results": [ - { - "item": "silentgems:agate", - "count": 2 - }, - { - "item": "silentgems:agate", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/alexandrite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/alexandrite_ore.json deleted file mode 100644 index 50f3a3be7..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/alexandrite_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:alexandrite_ore" - } - ], - "results": [ - { - "item": "silentgems:alexandrite", - "count": 2 - }, - { - "item": "silentgems:alexandrite", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:netherrack", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/amber_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/amber_ore.json deleted file mode 100644 index 08a1c183b..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/amber_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:amber_ore" - } - ], - "results": [ - { - "item": "silentgems:amber", - "count": 2 - }, - { - "item": "silentgems:amber", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/amethyst_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/amethyst_ore.json deleted file mode 100644 index 221d59bcf..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/amethyst_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:amethyst_ore" - } - ], - "results": [ - { - "item": "silentgems:amethyst", - "count": 2 - }, - { - "item": "silentgems:amethyst", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/ametrine_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/ametrine_ore.json deleted file mode 100644 index 575c7af78..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/ametrine_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:ametrine_ore" - } - ], - "results": [ - { - "item": "silentgems:ametrine", - "count": 2 - }, - { - "item": "silentgems:ametrine", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:netherrack", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/ammolite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/ammolite_ore.json deleted file mode 100644 index 3416b40ef..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/ammolite_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:ammolite_ore" - } - ], - "results": [ - { - "item": "silentgems:ammolite", - "count": 2 - }, - { - "item": "silentgems:ammolite", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:end_stone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/apatite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/apatite_ore.json deleted file mode 100644 index 1b6c59fb7..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/apatite_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:apatite_ore" - } - ], - "results": [ - { - "item": "silentgems:apatite", - "count": 2 - }, - { - "item": "silentgems:apatite", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:end_stone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/aquamarine_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/aquamarine_ore.json deleted file mode 100644 index 9e6692fee..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/aquamarine_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:aquamarine_ore" - } - ], - "results": [ - { - "item": "silentgems:aquamarine", - "count": 2 - }, - { - "item": "silentgems:aquamarine", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/benitoite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/benitoite_ore.json deleted file mode 100644 index ae412ba08..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/benitoite_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:benitoite_ore" - } - ], - "results": [ - { - "item": "silentgems:benitoite", - "count": 2 - }, - { - "item": "silentgems:benitoite", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:netherrack", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/black_diamond_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/black_diamond_ore.json deleted file mode 100644 index 5027dd583..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/black_diamond_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:black_diamond_ore" - } - ], - "results": [ - { - "item": "silentgems:black_diamond", - "count": 2 - }, - { - "item": "silentgems:black_diamond", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:netherrack", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/carnelian_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/carnelian_ore.json deleted file mode 100644 index 6109c635a..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/carnelian_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:carnelian_ore" - } - ], - "results": [ - { - "item": "silentgems:carnelian", - "count": 2 - }, - { - "item": "silentgems:carnelian", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:netherrack", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/cats_eye_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/cats_eye_ore.json deleted file mode 100644 index 202a041ef..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/cats_eye_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:cats_eye_ore" - } - ], - "results": [ - { - "item": "silentgems:cats_eye", - "count": 2 - }, - { - "item": "silentgems:cats_eye", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:end_stone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/chrysoprase_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/chrysoprase_ore.json deleted file mode 100644 index 66167cf6a..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/chrysoprase_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:chrysoprase_ore" - } - ], - "results": [ - { - "item": "silentgems:chrysoprase", - "count": 2 - }, - { - "item": "silentgems:chrysoprase", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:end_stone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/citrine_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/citrine_ore.json deleted file mode 100644 index 091162b6f..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/citrine_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:citrine_ore" - } - ], - "results": [ - { - "item": "silentgems:citrine", - "count": 2 - }, - { - "item": "silentgems:citrine", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:netherrack", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/coral_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/coral_ore.json deleted file mode 100644 index dc53a7e78..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/coral_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:coral_ore" - } - ], - "results": [ - { - "item": "silentgems:coral", - "count": 2 - }, - { - "item": "silentgems:coral", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:end_stone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/euclase_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/euclase_ore.json deleted file mode 100644 index 4964d1484..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/euclase_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:euclase_ore" - } - ], - "results": [ - { - "item": "silentgems:euclase", - "count": 2 - }, - { - "item": "silentgems:euclase", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:netherrack", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/fluorite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/fluorite_ore.json deleted file mode 100644 index 4a832e6e4..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/fluorite_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:fluorite_ore" - } - ], - "results": [ - { - "item": "silentgems:fluorite", - "count": 2 - }, - { - "item": "silentgems:fluorite", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:end_stone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/garnet_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/garnet_ore.json deleted file mode 100644 index 142238304..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/garnet_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:garnet_ore" - } - ], - "results": [ - { - "item": "silentgems:garnet", - "count": 2 - }, - { - "item": "silentgems:garnet", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/green_sapphire_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/green_sapphire_ore.json deleted file mode 100644 index de81517bc..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/green_sapphire_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:green_sapphire_ore" - } - ], - "results": [ - { - "item": "silentgems:green_sapphire", - "count": 2 - }, - { - "item": "silentgems:green_sapphire", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/heliodor_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/heliodor_ore.json deleted file mode 100644 index cba22cae5..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/heliodor_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:heliodor_ore" - } - ], - "results": [ - { - "item": "silentgems:heliodor", - "count": 2 - }, - { - "item": "silentgems:heliodor", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/iolite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/iolite_ore.json deleted file mode 100644 index f2395750e..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/iolite_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:iolite_ore" - } - ], - "results": [ - { - "item": "silentgems:iolite", - "count": 2 - }, - { - "item": "silentgems:iolite", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:netherrack", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/jade_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/jade_ore.json deleted file mode 100644 index 29c98ec5b..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/jade_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:jade_ore" - } - ], - "results": [ - { - "item": "silentgems:jade", - "count": 2 - }, - { - "item": "silentgems:jade", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:end_stone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/jasper_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/jasper_ore.json deleted file mode 100644 index 9a4491b9b..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/jasper_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:jasper_ore" - } - ], - "results": [ - { - "item": "silentgems:jasper", - "count": 2 - }, - { - "item": "silentgems:jasper", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:netherrack", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/kunzite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/kunzite_ore.json deleted file mode 100644 index a71ee79c9..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/kunzite_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:kunzite_ore" - } - ], - "results": [ - { - "item": "silentgems:kunzite", - "count": 2 - }, - { - "item": "silentgems:kunzite", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:end_stone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/kyanite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/kyanite_ore.json deleted file mode 100644 index 8082a593e..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/kyanite_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:kyanite_ore" - } - ], - "results": [ - { - "item": "silentgems:kyanite", - "count": 2 - }, - { - "item": "silentgems:kyanite", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:end_stone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/lepidolite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/lepidolite_ore.json deleted file mode 100644 index f8317bafd..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/lepidolite_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:lepidolite_ore" - } - ], - "results": [ - { - "item": "silentgems:lepidolite", - "count": 2 - }, - { - "item": "silentgems:lepidolite", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:netherrack", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/malachite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/malachite_ore.json deleted file mode 100644 index 26d2d80a0..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/malachite_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:malachite_ore" - } - ], - "results": [ - { - "item": "silentgems:malachite", - "count": 2 - }, - { - "item": "silentgems:malachite", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:netherrack", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/moldavite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/moldavite_ore.json deleted file mode 100644 index 7203486eb..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/moldavite_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:moldavite_ore" - } - ], - "results": [ - { - "item": "silentgems:moldavite", - "count": 2 - }, - { - "item": "silentgems:moldavite", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:netherrack", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/moonstone_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/moonstone_ore.json deleted file mode 100644 index 85bc1de35..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/moonstone_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:moonstone_ore" - } - ], - "results": [ - { - "item": "silentgems:moonstone", - "count": 2 - }, - { - "item": "silentgems:moonstone", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:netherrack", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/morganite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/morganite_ore.json deleted file mode 100644 index e9cecdd1c..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/morganite_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:morganite_ore" - } - ], - "results": [ - { - "item": "silentgems:morganite", - "count": 2 - }, - { - "item": "silentgems:morganite", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/onyx_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/onyx_ore.json deleted file mode 100644 index 1ebfd9b6b..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/onyx_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:onyx_ore" - } - ], - "results": [ - { - "item": "silentgems:onyx", - "count": 2 - }, - { - "item": "silentgems:onyx", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/opal_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/opal_ore.json deleted file mode 100644 index 93e602b0d..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/opal_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:opal_ore" - } - ], - "results": [ - { - "item": "silentgems:opal", - "count": 2 - }, - { - "item": "silentgems:opal", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/pearl_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/pearl_ore.json deleted file mode 100644 index 6719c4c06..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/pearl_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:pearl_ore" - } - ], - "results": [ - { - "item": "silentgems:pearl", - "count": 2 - }, - { - "item": "silentgems:pearl", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:end_stone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/peridot_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/peridot_ore.json deleted file mode 100644 index 1af300395..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/peridot_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:peridot_ore" - } - ], - "results": [ - { - "item": "silentgems:peridot", - "count": 2 - }, - { - "item": "silentgems:peridot", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/phosphophyllite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/phosphophyllite_ore.json deleted file mode 100644 index 751094180..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/phosphophyllite_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:phosphophyllite_ore" - } - ], - "results": [ - { - "item": "silentgems:phosphophyllite", - "count": 2 - }, - { - "item": "silentgems:phosphophyllite", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/pyrope_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/pyrope_ore.json deleted file mode 100644 index f38edf966..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/pyrope_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:pyrope_ore" - } - ], - "results": [ - { - "item": "silentgems:pyrope", - "count": 2 - }, - { - "item": "silentgems:pyrope", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:end_stone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/rose_quartz_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/rose_quartz_ore.json deleted file mode 100644 index 70d02ae55..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/rose_quartz_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:rose_quartz_ore" - } - ], - "results": [ - { - "item": "silentgems:rose_quartz", - "count": 2 - }, - { - "item": "silentgems:rose_quartz", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:end_stone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/ruby_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/ruby_ore.json deleted file mode 100644 index d4c2d34e3..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/ruby_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:ruby_ore" - } - ], - "results": [ - { - "item": "silentgems:ruby", - "count": 2 - }, - { - "item": "silentgems:ruby", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/sapphire_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/sapphire_ore.json deleted file mode 100644 index b078f9c00..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/sapphire_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:sapphire_ore" - } - ], - "results": [ - { - "item": "silentgems:sapphire", - "count": 2 - }, - { - "item": "silentgems:sapphire", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/sodalite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/sodalite_ore.json deleted file mode 100644 index 6df2cb494..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/sodalite_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:sodalite_ore" - } - ], - "results": [ - { - "item": "silentgems:sodalite", - "count": 2 - }, - { - "item": "silentgems:sodalite", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:end_stone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/spinel_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/spinel_ore.json deleted file mode 100644 index bf897179a..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/spinel_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:spinel_ore" - } - ], - "results": [ - { - "item": "silentgems:spinel", - "count": 2 - }, - { - "item": "silentgems:spinel", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:netherrack", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/sunstone_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/sunstone_ore.json deleted file mode 100644 index 6a47a78d0..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/sunstone_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:sunstone_ore" - } - ], - "results": [ - { - "item": "silentgems:sunstone", - "count": 2 - }, - { - "item": "silentgems:sunstone", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:end_stone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/tanzanite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/tanzanite_ore.json deleted file mode 100644 index 127826c3d..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/tanzanite_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:tanzanite_ore" - } - ], - "results": [ - { - "item": "silentgems:tanzanite", - "count": 2 - }, - { - "item": "silentgems:tanzanite", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/tektite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/tektite_ore.json deleted file mode 100644 index 365b1cbb7..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/tektite_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:tektite_ore" - } - ], - "results": [ - { - "item": "silentgems:tektite", - "count": 2 - }, - { - "item": "silentgems:tektite", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:end_stone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/topaz_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/topaz_ore.json deleted file mode 100644 index d95a63a7b..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/topaz_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:topaz_ore" - } - ], - "results": [ - { - "item": "silentgems:topaz", - "count": 2 - }, - { - "item": "silentgems:topaz", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/turquoise_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/turquoise_ore.json deleted file mode 100644 index c16c3ce75..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/turquoise_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:turquoise_ore" - } - ], - "results": [ - { - "item": "silentgems:turquoise", - "count": 2 - }, - { - "item": "silentgems:turquoise", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:netherrack", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/yellow_diamond_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/yellow_diamond_ore.json deleted file mode 100644 index da9263d0a..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/yellow_diamond_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:yellow_diamond_ore" - } - ], - "results": [ - { - "item": "silentgems:yellow_diamond", - "count": 2 - }, - { - "item": "silentgems:yellow_diamond", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:end_stone", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/zircon_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/zircon_ore.json deleted file mode 100644 index 9e3cd7b9f..000000000 --- a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/zircon_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "silentgems" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "silentgems:zircon_ore" - } - ], - "results": [ - { - "item": "silentgems:zircon", - "count": 2 - }, - { - "item": "silentgems:zircon", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:netherrack", - "count": 1, - "chance": 0.12 - } - ], - "processingTime": 350 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_barley.json b/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_barley.json deleted file mode 100644 index b43c5b968..000000000 --- a/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_barley.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "simplefarming" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "simplefarming:barley" - } - ], - "results": [ - { - "item": "create:wheat_flour", - "count": 1 - }, - { - "item": "create:wheat_flour", - "count": 2, - "chance": 0.25 - }, - { - "item": "simplefarming:barley_seeds", - "count": 1, - "chance": 0.25 - } - ], - "processingTime": 150 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_oat.json b/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_oat.json deleted file mode 100644 index 33a4b0c3d..000000000 --- a/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_oat.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "simplefarming" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "simplefarming:oat" - } - ], - "results": [ - { - "item": "create:wheat_flour", - "count": 1 - }, - { - "item": "create:wheat_flour", - "count": 2, - "chance": 0.25 - }, - { - "item": "simplefarming:oat_seeds", - "count": 1, - "chance": 0.25 - } - ], - "processingTime": 150 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_rice.json b/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_rice.json deleted file mode 100644 index 903097e68..000000000 --- a/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_rice.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "simplefarming" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "simplefarming:rice" - } - ], - "results": [ - { - "item": "create:wheat_flour", - "count": 1 - }, - { - "item": "create:wheat_flour", - "count": 2, - "chance": 0.25 - }, - { - "item": "simplefarming:rice_seeds", - "count": 1, - "chance": 0.25 - } - ], - "processingTime": 150 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_rye.json b/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_rye.json deleted file mode 100644 index 6db334752..000000000 --- a/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_rye.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "simplefarming" - } - ], - "type": "create:crushing", - "group": "minecraft:misc", - "ingredients": [ - { - "item": "simplefarming:rye" - } - ], - "results": [ - { - "item": "create:wheat_flour", - "count": 1 - }, - { - "item": "create:wheat_flour", - "count": 2, - "chance": 0.25 - }, - { - "item": "simplefarming:rye_seeds", - "count": 1, - "chance": 0.25 - } - ], - "processingTime": 150 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/thermal/crushing/apatite_ore.json b/src/main/resources/data/create/recipes/compat/thermal/crushing/apatite_ore.json deleted file mode 100644 index 92aa84550..000000000 --- a/src/main/resources/data/create/recipes/compat/thermal/crushing/apatite_ore.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "thermal" - } - ], - "type": "create:crushing", - "ingredients": [ - { - "tag": "forge:ores/apatite" - } - ], - "results": [ - { - "item": "thermal:apatite", - "count": 2 - }, - { - "item": "thermal:apatite", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.125 - } - ], - "processingTime": 300 -} diff --git a/src/main/resources/data/create/recipes/compat/thermal/crushing/cinnabar_ore.json b/src/main/resources/data/create/recipes/compat/thermal/crushing/cinnabar_ore.json deleted file mode 100644 index 9a00358d8..000000000 --- a/src/main/resources/data/create/recipes/compat/thermal/crushing/cinnabar_ore.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "thermal" - } - ], - "type": "create:crushing", - "ingredients": [ - { - "tag": "forge:ores/cinnabar" - } - ], - "results": [ - { - "item": "thermal:cinnabar", - "count": 2 - }, - { - "item": "thermal:cinnabar", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.125 - } - ], - "processingTime": 300 -} diff --git a/src/main/resources/data/create/recipes/compat/thermal/crushing/niter_ore.json b/src/main/resources/data/create/recipes/compat/thermal/crushing/niter_ore.json deleted file mode 100644 index ba9ac7626..000000000 --- a/src/main/resources/data/create/recipes/compat/thermal/crushing/niter_ore.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "thermal" - } - ], - "type": "create:crushing", - "ingredients": [ - { - "tag": "forge:ores/niter" - } - ], - "results": [ - { - "item": "thermal:niter", - "count": 2 - }, - { - "item": "thermal:niter", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.125 - } - ], - "processingTime": 300 -} diff --git a/src/main/resources/data/create/recipes/compat/thermal/crushing/sulfur_ore.json b/src/main/resources/data/create/recipes/compat/thermal/crushing/sulfur_ore.json deleted file mode 100644 index 58e3b3415..000000000 --- a/src/main/resources/data/create/recipes/compat/thermal/crushing/sulfur_ore.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "thermal" - } - ], - "type": "create:crushing", - "ingredients": [ - { - "tag": "forge:ores/sulfur" - } - ], - "results": [ - { - "item": "thermal:sulfur", - "count": 2 - }, - { - "item": "thermal:sulfur", - "count": 1, - "chance": 0.25 - }, - { - "item": "minecraft:cobblestone", - "count": 1, - "chance": 0.125 - } - ], - "processingTime": 300 -} diff --git a/src/main/resources/data/create/recipes/compat/traverse/cutting/fir_log.json b/src/main/resources/data/create/recipes/compat/traverse/cutting/fir_log.json deleted file mode 100644 index a8bce8050..000000000 --- a/src/main/resources/data/create/recipes/compat/traverse/cutting/fir_log.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "traverse" - } - ], - "type": "create:cutting", - "ingredients": [ - { - "item": "traverse:fir_log" - } - ], - "results": [ - { - "item": "traverse:stripped_fir_log", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/traverse/cutting/fir_wood.json b/src/main/resources/data/create/recipes/compat/traverse/cutting/fir_wood.json deleted file mode 100644 index 9e7060b9d..000000000 --- a/src/main/resources/data/create/recipes/compat/traverse/cutting/fir_wood.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "traverse" - } - ], - "type": "create:cutting", - "ingredients": [ - { - "item": "traverse:fir_wood" - } - ], - "results": [ - { - "item": "traverse:stripped_fir_wood", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/traverse/cutting/stripped_fir_log.json b/src/main/resources/data/create/recipes/compat/traverse/cutting/stripped_fir_log.json deleted file mode 100644 index 6b13ccb1d..000000000 --- a/src/main/resources/data/create/recipes/compat/traverse/cutting/stripped_fir_log.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "traverse" - } - ], - "type": "create:cutting", - "ingredients": [ - { - "item": "traverse:stripped_fir_log" - } - ], - "results": [ - { - "item": "traverse:fir_planks", - "count": 6 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/traverse/cutting/stripped_fir_wood.json b/src/main/resources/data/create/recipes/compat/traverse/cutting/stripped_fir_wood.json deleted file mode 100644 index 71046bb70..000000000 --- a/src/main/resources/data/create/recipes/compat/traverse/cutting/stripped_fir_wood.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "traverse" - } - ], - "type": "create:cutting", - "ingredients": [ - { - "item": "traverse:stripped_fir_wood" - } - ], - "results": [ - { - "item": "traverse:fir_planks", - "count": 6 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/upgrade_aquatic/crafting/tree_fertilizer.json b/src/main/resources/data/create/recipes/compat/upgrade_aquatic/crafting/tree_fertilizer.json deleted file mode 100644 index a32cc822c..000000000 --- a/src/main/resources/data/create/recipes/compat/upgrade_aquatic/crafting/tree_fertilizer.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "upgrade_aquatic" - } - ], - "type": "minecraft:crafting_shapeless", - "ingredients": [ - { - "tag": "minecraft:small_flowers" - }, - { - "tag": "minecraft:small_flowers" - }, - [ - { - "item": "upgrade_aquatic:acan_coral" - }, - { - "item": "upgrade_aquatic:finger_coral" - }, - { - "item": "upgrade_aquatic:star_coral" - }, - { - "item": "upgrade_aquatic:moss_coral" - }, - { - "item": "upgrade_aquatic:petal_coral" - }, - { - "item": "upgrade_aquatic:branch_coral" - }, - { - "item": "upgrade_aquatic:rock_coral" - }, - { - "item": "upgrade_aquatic:pillow_coral" - }, - { - "item": "upgrade_aquatic:chrome_coral" - }, - { - "item": "upgrade_aquatic:silk_coral" - } - ], - { - "item": "minecraft:bone_meal" - } - ], - "result": { - "item": "create:tree_fertilizer", - "count": 2 - } -} diff --git a/src/main/resources/data/create/recipes/compat/upgrade_aquatic/cutting/driftwood_log.json b/src/main/resources/data/create/recipes/compat/upgrade_aquatic/cutting/driftwood_log.json deleted file mode 100644 index 4e06061b1..000000000 --- a/src/main/resources/data/create/recipes/compat/upgrade_aquatic/cutting/driftwood_log.json +++ /dev/null @@ -1,21 +0,0 @@ -{ -"conditions": [ - { - "type": "forge:mod_loaded", - "modid": "upgrade_aquatic" - } - ], - "type": "create:cutting", - "ingredients": [ - { - "item": "upgrade_aquatic:driftwood_log" - } - ], - "results": [ - { - "item": "upgrade_aquatic:stripped_driftwood_log", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/upgrade_aquatic/cutting/river_log.json b/src/main/resources/data/create/recipes/compat/upgrade_aquatic/cutting/river_log.json deleted file mode 100644 index 18e44da83..000000000 --- a/src/main/resources/data/create/recipes/compat/upgrade_aquatic/cutting/river_log.json +++ /dev/null @@ -1,21 +0,0 @@ -{ -"conditions": [ - { - "type": "forge:mod_loaded", - "modid": "upgrade_aquatic" - } - ], - "type": "create:cutting", - "ingredients": [ - { - "item": "upgrade_aquatic:river_log" - } - ], - "results": [ - { - "item": "upgrade_aquatic:stripped_river_log", - "count": 1 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/upgrade_aquatic/cutting/stripped_driftwood_log.json b/src/main/resources/data/create/recipes/compat/upgrade_aquatic/cutting/stripped_driftwood_log.json deleted file mode 100644 index 02ec056eb..000000000 --- a/src/main/resources/data/create/recipes/compat/upgrade_aquatic/cutting/stripped_driftwood_log.json +++ /dev/null @@ -1,21 +0,0 @@ -{ -"conditions": [ - { - "type": "forge:mod_loaded", - "modid": "upgrade_aquatic" - } - ], - "type": "create:cutting", - "ingredients": [ - { - "item": "upgrade_aquatic:stripped_driftwood_log" - } - ], - "results": [ - { - "item": "upgrade_aquatic:driftwood_planks", - "count": 6 - } - ], - "processingTime": 50 -} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/upgrade_aquatic/cutting/stripped_river_log.json b/src/main/resources/data/create/recipes/compat/upgrade_aquatic/cutting/stripped_river_log.json deleted file mode 100644 index 61433a68c..000000000 --- a/src/main/resources/data/create/recipes/compat/upgrade_aquatic/cutting/stripped_river_log.json +++ /dev/null @@ -1,21 +0,0 @@ -{ -"conditions": [ - { - "type": "forge:mod_loaded", - "modid": "upgrade_aquatic" - } - ], - "type": "create:cutting", - "ingredients": [ - { - "item": "upgrade_aquatic:stripped_river_log" - } - ], - "results": [ - { - "item": "upgrade_aquatic:river_planks", - "count": 6 - } - ], - "processingTime": 50 -} \ No newline at end of file