diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index 346150e1d9..6410118104 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -1,92 +1,23 @@ -Contributing to Galacticraft -= - -Thanks for your interest in contributing to Galacticraft! - -## Testing and Bug Reports - -### Builds -> [!IMPORTANT] -> Galacticraft 5 is still under development!\ -> It is possible that saves will become corrupted and/or unloadable after updates.\ -> It is strongly discouraged to use these builds for anything but testing.\ -> No support will be provided regarding the use of these builds. - -Pre-alpha builds are created after every commit to the `main` branch of this repository.\ -They can be found on the [GitHub Actions][actions] tab (select a commit and look for "Artifacts" at the bottom). - -### Bug Reports -* Before opening a new bug report, please check to see if your issue has already been reported. -* Please create a separate bug report for each bug that you find. - * This makes it easier to keep track of what is and is not fixed. -* Please include either the commit hash (e.g., `a17fe4784ed658a9c70ecebd2173af755299d0cb`) -or the GitHub actions build number (e.g., #253) in your report. - * Commit hashes are preferred, but the build number is acceptable too. - * This helps us figure out when a bug may have been introduced, - or if there are any commit(s) that may have already fixed this bug. - -## Translations -Translations are submitted through [Crowdin][crowdin]. -If your language is missing, or you're having trouble accessing the site, -please get in touch on our [Discord server][discord]. - -## Contributing Code - -If you're planning on fixing an open bug, -please comment on the issue tracker to let people know that you're working on it. - -If you're planning on contributing a larger feature, -please get in contact with us [on Discord][discord], so that we can avoid duplicating work. - -Please try to keep pull requests focused on one feature or subsystem -to keep them small and ensure a quick review process. - -### Code style -Mainly: -* Indent using four spaces -* Braces `{}` go on the same line - -Overall, follow the style of the file you're in. -Feel free to use `var` for variables with obvious types. - -### Managing resources -> [!IMPORTANT] -> Do not manually edit or add any files to [`src/main/generated`][generated] as they will be deleted. - -#### Textures, Music and Complex Models -These (and other non-generatable) resources belong in the [`src/main/resources`] directory. - -#### Simple Models, Loot Tables, and Tags -These (and other generatable) resources are programmatically created using Minecraft's datagen system. -See the [`dev.galacticraft.mod.data`](/src/main/java/dev/galacticraft/mod/data) package to see how these are generated. - -### Before Committing Changes - -#### Data Generation -If you've added, removed, or otherwise modified resource generation code, -you'll need to re-run the data generator to see your changes. - -This can be found as the `Data Generation` configuration in your IDE, or run from Gradle: -```shell -./gradlew runDatagen -``` - -#### License Headers -If you've added any new classes, be sure to check that they have the standard [license header][license header] applied. - -If any files are missing the header, you can add it by executing the following Gradle task: -```shell -./gradlew updateLicenses -``` - -#### Commit Message -We use [conventional commits][conventional commits] specification to write commit messages. -However, we tend to squash-merge pull requests, so you are not required to do this. - - -[actions]: https://github.com/TeamGalacticraft/Galacticraft/actions/workflows/build.yml?query=branch%3Amain+is%3Asuccess -[conventional commits]: https://www.conventionalcommits.org -[crowdin]: https://teamgalacticraft.crowdin.com/galacticraft -[discord]: https://discord.gg/n3QqhMYyFK -[generated]: /src/main/generated -[license header]: /LICENSE_HEADER.txt +Contributing +============ + +* Use appropriate formatting + * Java + * 4 Spaces (No tabs PLEASE) + * Brackets on the same line + * Space between all keywords, operators and values + * Long lines are OK - do not break long lines unless there is a logical, tabular break pattern (for example initialising elements in a long array) or if Vanilla does so + * Generally you should explicitly use `this`. + * Generally you should use braces { } following `if ()` and `for ()` statements, even if it is only one line. + * Interfaces - do not put the prefix 'I' on the file name (example `Rotatable`, not `IRotatable`) + * JSON + * 2 Spaces indent (NO TABS) + * Keep arrays on the same line (do not wrap) + * Spaces after `,` and `:` + * Commits + * Use the [Conventional Commits](https://www.conventionalcommits.org/) specification when creating commits. + * Pull Requests + * Pull request titles must use the [Conventional Commits](https://www.conventionalcommits.org/) specification, just like commit names. +* Name all variables correctly +* All PRs require at least one successful review from a team member to merge + * Please do not submit simple PRs like minor readme changes or spelling fixes, unless they are a part of larger changes such as a new feature or bugfix. diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index ddca860a9b..f94dd7d12d 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -1,4 +1,4 @@ -name: Bug Report (Generic) +name: Bug Report description: File a bug report labels: - 'status: triage' @@ -10,14 +10,26 @@ body: - type: markdown attributes: value: >- + Please note that support for compiling the mod is not currently provided. + For help with Galacticraft 4 and below, please use [TeamGalacticraft/Galacticraft-Legacy](https://github.com/TeamGalacticraft/Galacticraft-Legacy). For general Galacticraft help and support visit the [Galacticraft Central Discord](http://discord.galacticraftcentral.com/) + - type: dropdown + id: modloader + attributes: + label: Mod Loader + description: Which mod loader are you using? + options: + - Fabric + - Forge (NYI) + validations: + required: true - type: input id: version attributes: label: Version Information - description: What version (commit hash or actions build number) of Galacticraft are you using? + description: What version (commit hash or branch) of Galacticraft are you using? placeholder: 4cb9a5d validations: required: true @@ -26,15 +38,20 @@ body: attributes: label: Log or Crash Report description: >- - If relevant, upload your log (latest.log or crash report) to [GitHub - Gist](https://gist.github.com/) or another paste site and link it here. + Please upload your log (latest.log or crash report) to [Github + Gist](https://gist.github.com/) placeholder: 'https://gist.github.com/ghost/1a79a4d60de6718e8e5b326e338ae533' + validations: + required: true - type: textarea id: repro attributes: label: Reproduction steps - description: How do you trigger this bug? Please be as detailed as possible. + description: How do you trigger this bug? Please walk us through it step by step. value: | + 1. Do this + 2. Do that + 3. Crash! ... validations: required: true diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index 2639c1e690..5065ff8180 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -5,7 +5,7 @@ contact_links: about: Please use GitHub discussions for feature requests. - name: Galacticraft Central Discord url: http://discord.galacticraftcentral.com/ - about: Please use this discord for general Galacticraft (4) help and support. + about: Please use this discord for general Galacticraft help and support. - name: Galacticraft Development Discord url: https://discord.gg/n3QqhMYyFK about: Please use this discord to discuss the development of, and help develop Galacticraft. diff --git a/.github/ISSUE_TEMPLATE/crash_report.yml b/.github/ISSUE_TEMPLATE/crash_report.yml deleted file mode 100644 index 255796d22e..0000000000 --- a/.github/ISSUE_TEMPLATE/crash_report.yml +++ /dev/null @@ -1,42 +0,0 @@ -name: Bug Report (Crash) -description: File a crashing bug report -labels: - - 'status: triage' - - 'type: bug' -body: - - type: markdown - attributes: - value: Thanks for taking the time to submit a bug report! - - type: markdown - attributes: - value: >- - For help with Galacticraft 4 and below, please use [TeamGalacticraft/Galacticraft-Legacy](https://github.com/TeamGalacticraft/Galacticraft-Legacy). - - For general Galacticraft help and support visit the [Galacticraft Central Discord](http://discord.galacticraftcentral.com/) - - type: input - id: version - attributes: - label: Version Information - description: What version (commit hash or actions build number) of Galacticraft are you using? - placeholder: a17fe4784ed658a9c70ecebd2173af755299d0cb - validations: - required: true - - type: input - id: logs - attributes: - label: Log or Crash Report - description: >- - Please upload your log (latest.log or crash report) to [GitHub - Gist](https://gist.github.com/) or another paste site and link it here. - placeholder: 'https://gist.github.com/ghost/1a79a4d60de6718e8e5b326e338ae533' - validations: - required: true - - type: textarea - id: repro - attributes: - label: Reproduction steps - description: How do you trigger this crash? Please be as detailed as possible. - value: | - ... - validations: - required: true diff --git a/.github/PULL_REQUEST_TEMPLATE/bug_fix.md b/.github/PULL_REQUEST_TEMPLATE/bug_fix.md new file mode 100644 index 0000000000..ac6e988736 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE/bug_fix.md @@ -0,0 +1,16 @@ +--- +name: Bug Fix +about: Fix a bug +title: 'fix: ...' +labels: 'type: bug' +assignees: '' +--- + +## Pre checks +- [ ] I have read the [Contributing guidelines](https://github.com/TeamGalacticraft/Galacticraft/blob/main/.github/CONTRIBUTING.md). +- [ ] I have checked for existing pull requests committing the same bug fix. + +## Changes: + 1. + 2. + 3. diff --git a/.github/PULL_REQUEST_TEMPLATE/feature.md b/.github/PULL_REQUEST_TEMPLATE/feature.md new file mode 100644 index 0000000000..0d835f7671 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE/feature.md @@ -0,0 +1,19 @@ +--- +name: Add Feature +about: Implement a feature in Galacticraft +title: 'feat: ...' +labels: 'type: feature' +assignees: '' +--- + +## Pre checks +- [ ] I have read the [Contributing guidelines](https://github.com/TeamGalacticraft/Galacticraft/blob/main/.github/CONTRIBUTING.md). +- [ ] I have checked for existing pull requests committing the same feature. + +## Changes: +1. +2. +3. + +## Screenshots: + diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7427028ad8..4c095c193a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -12,12 +12,12 @@ jobs: uses: actions/checkout@v4 - name: Validate Gradle wrapper - uses: gradle/actions/wrapper-validation@v4 + uses: gradle/actions/wrapper-validation@v3 - - name: Setup JDK 21 + - name: Setup JDK 17 uses: actions/setup-java@v4 with: - java-version: 21 + java-version: 17 distribution: temurin - name: Cache Gradle diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 8015f18efd..34dab95062 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -15,12 +15,12 @@ jobs: uses: actions/checkout@v4 - name: Validate Gradle wrapper - uses: gradle/actions/wrapper-validation@v4 + uses: gradle/actions/wrapper-validation@v3 - - name: Setup JDK 21 + - name: Setup JDK 17 uses: actions/setup-java@v4 with: - java-version: 21 + java-version: 17 distribution: temurin - name: Restore Gradle cache diff --git a/.github/workflows/crowdin_push.yml b/.github/workflows/crowdin_push.yml index c9f36a5d50..f0ed1bc0f2 100644 --- a/.github/workflows/crowdin_push.yml +++ b/.github/workflows/crowdin_push.yml @@ -15,7 +15,7 @@ jobs: uses: actions/checkout@v4 - name: Crowdin Push - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v1 with: upload_sources: true upload_translations: false diff --git a/.github/workflows/crowdin_sync.yml b/.github/workflows/crowdin_sync.yml index 06ed782b40..2b27202310 100644 --- a/.github/workflows/crowdin_sync.yml +++ b/.github/workflows/crowdin_sync.yml @@ -10,7 +10,7 @@ jobs: uses: actions/checkout@v4 - name: Crowdin Sync - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v1 with: upload_sources: false upload_translations: false diff --git a/.github/workflows/pr_check.yml b/.github/workflows/pr_check.yml index 642960a1d0..22c196767e 100644 --- a/.github/workflows/pr_check.yml +++ b/.github/workflows/pr_check.yml @@ -12,12 +12,12 @@ jobs: uses: actions/checkout@v4 - name: Validate Gradle wrapper - uses: gradle/actions/wrapper-validation@v4 + uses: gradle/actions/wrapper-validation@v3 - - name: Setup JDK 21 + - name: Setup JDK 17 uses: actions/setup-java@v4 with: - java-version: 21 + java-version: 17 distribution: temurin - name: Cache Gradle diff --git a/README.md b/README.md index 489e1b7dde..c7b5bd7c8f 100644 --- a/README.md +++ b/README.md @@ -1,19 +1,19 @@ -[![](https://img.shields.io/github/actions/workflow/status/TeamGalacticraft/Galacticraft/build.yml?style=flat-square&logo=github)][actions] +[![](https://img.shields.io/github/actions/workflow/status/TeamGalacticraft/Galacticraft/build.yml?style=flat-square&logo=github)](https://github.com/TeamGalacticraft/Galacticraft/actions/workflows/build.yml?query=branch%3Amain) [![](https://img.shields.io/github/issues/TeamGalacticraft/Galacticraft?style=flat-square&logo=github)](https://github.com/TeamGalacticraft/Galacticraft/issues) [![](https://img.shields.io/github/issues-pr/TeamGalacticraft/Galacticraft?logo=github&style=flat-square)](https://github.com/TeamGalacticraft/Galacticraft/pulls) -[![](https://img.shields.io/discord/775251052517523467.svg?colorB=5865F2&label=discord&style=flat-square&logo=discord&logoColor=azure)][discord] -[![](https://img.shields.io/twitch/status/galacticraftdev.svg?style=flat-square&logo=twitch&logoColor=azure)][twitch] +[![](https://img.shields.io/discord/775251052517523467.svg?colorB=5865F2&label=discord&style=flat-square&logo=discord&logoColor=azure)](https://discord.gg/n3QqhMYyFK) +[![](https://img.shields.io/twitch/status/galacticraftdev.svg?style=flat-square&logo=twitch&logoColor=azure)](https://twitch.tv/galacticraftdev) # Galacticraft 5 The classic Minecraft space mod, rewritten from the ground up for modern versions of the game. ## Common Questions Here we answer a few common questions we get regarding the release of the mod.\ -More information can be found in the `#faq` channel in [our Discord][discord]. +More information can be found in the `#faq` channel in [our Discord](https://discord.gg/n3QqhMYyFK). -**When will Galacticraft 5 be released?**\ +**When will Galacticraft 5 for 1.20+ be released?**\ There is currently no ETA for a release. -Keep an eye out on [our Discord server][discord] for an alpha release announcement. +Keep an eye out on [our Discord server](https://discord.gg/n3QqhMYyFK) for an alpha release announcement. **Will Galacticraft 5 be on Forge?**\ Yes, Forge development will start *after* we have a survival-playable alpha build out for Fabric. @@ -22,21 +22,12 @@ Yes, Forge development will start *after* we have a survival-playable alpha buil No, Galacticraft 5 is a complete rewrite, and does not have backwards compatibility with the old addon api. ## Pre-Alpha Builds -> [!IMPORTANT] -> Galacticraft 5 is still under development!\ -> It is possible that saves will become corrupted and/or unloadable after updates.\ -> It is strongly discouraged to use these builds for anything but testing.\ -> No support will be provided regarding the use of these builds. - -Pre-alpha builds are created after every commit to the `main` branch of this repository.\ -They can be found on the [GitHub Actions][actions] tab (select a commit and look for "Artifacts" at the bottom). +Pre-alpha builds are available for each commit to the `main` branch of this repository in the [Actions tab](https://github.com/TeamGalacticraft/Galacticraft/actions/workflows/build.yml?query=branch%3Amain) on GitHub. +These builds are not production ready or survival playable, they exist solely for testing.\ +Please note that ***NO SUPPORT*** will be provided for the use of these builds and asking for such may result in a ban or mute, +consider this your one and only warning. ## Contributing We welcome and encourage community contributions, -but before you start please read our [contributing guidelines][contributing].\ +but before you start please read our [contributing guidelines](https://github.com/TeamGalacticraft/Galacticraft/blob/main/.github/CONTRIBUTING.md).\ Pull requests require at least one team member's approving review, and a successful build before they will be merged. - -[actions]: https://github.com/TeamGalacticraft/Galacticraft/actions/workflows/build.yml -[contributing]: https://github.com/TeamGalacticraft/Galacticraft/blob/main/.github/CONTRIBUTING.md -[discord]: https://discord.gg/n3QqhMYyFK -[twitch]: https://twitch.tv/galacticraftdev diff --git a/build.gradle.kts b/build.gradle.kts index c30d4cbd74..d831e27668 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -53,15 +53,15 @@ val objVersion = project.property("obj.version").toString() plugins { java `maven-publish` - id("fabric-loom") version("1.7-SNAPSHOT") + id("fabric-loom") version("1.6-SNAPSHOT") id("org.cadixdev.licenser") version("0.6.1") id("org.ajoberstar.grgit") version("5.2.2") - id("dev.galacticraft.mojarn") version("0.4.0+10") + id("dev.galacticraft.mojarn") version("0.1.2") } java { - sourceCompatibility = JavaVersion.VERSION_21 - targetCompatibility = JavaVersion.VERSION_21 + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 withSourcesJar() withJavadocJar() @@ -135,14 +135,7 @@ loom { } afterEvaluate { - val mixinJarFile = configurations.runtimeClasspath.get().incoming.artifactView { - componentFilter { - it is ModuleComponentIdentifier - && it.group == "net.fabricmc" - && it.module == "sponge-mixin" - } - }.files.first() - + val mixinJarFile = configurations.compileClasspath.get().files { it.group == "net.fabricmc" && it.name == "sponge-mixin" }.first() configureEach { vmArg("-javaagent:$mixinJarFile") @@ -155,8 +148,12 @@ loom { repositories { mavenLocal() - maven("https://repo.terradevelopment.net/repository/maven-releases/") { - // https://maven.galacticraft.net/repository/maven-releases + maven("https://maven.galacticraft.net/repository/maven-releases/") { + content { + includeGroup("dev.galacticraft") + } + } + maven("https://maven.galacticraft.net/repository/maven-snapshots/") { content { includeGroup("dev.galacticraft") } @@ -250,8 +247,8 @@ dependencies { } multicompat(group = "mezz.jei", - api = "jei-1.21-common-api", - extra = "jei-1.21-fabric-api", + api = "jei-$minecraftVersion-common-api", + extra = "jei-$minecraftVersion-fabric-api", // runtime = "jei-$minecraftVersion-fabric", // we already have REI at runtime version = jeiVersion) { exclude(group = "net.fabricmc.fabric-api") @@ -276,13 +273,21 @@ tasks.processResources { } } +tasks.processTestResources { + inputs.property("version", project.version) + + filesMatching("fabric.mod.json") { + expand("version" to project.version) + } +} + tasks.javadoc { options.encoding = "UTF-8" } tasks.withType(JavaCompile::class) { options.encoding = "UTF-8" - options.release.set(21) + options.release.set(17) } tasks.jar { diff --git a/gradle.properties b/gradle.properties index e0223a8d46..7449f8f454 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,8 +2,8 @@ org.gradle.jvmargs=-Xmx2G # Fabric Info -minecraft.version=1.21.1 -loader.version=0.15.11 +minecraft.version=1.20.4 +loader.version=0.15.7 yarn.build=3 # Mod Info @@ -12,14 +12,15 @@ mod.group=dev.galacticraft mod.name=Galacticraft # Dependencies -fabric.version=0.102.1+1.21.1 -cloth.config.version=15.0.130 -modmenu.version=11.0.1 -rei.version=16.0.754 -jei.version=19.8.2.99 -dynamicdimensions.version=0.8.0+24 -machinelib.version=0.7.0+74 -badpackets.version=0.8.1 -wthit.version=12.3.0 +fabric.version=0.96.11+1.20.4 +cloth.config.version=13.0.121 +modmenu.version=9.0.0 +rei.version=14.0.688 +jei.version=17.3.0.49 +dynamicdimensions.version=0.6.0+8 +machinelib.version=0.4.2+48 +badpackets.version=0.6.1 +wthit.version=10.4.0 obj.version=0.4.0 -architectury.version=13.0.6 +architectury.version=11.1.17 +appleskin.version=mc1.20.3-2.5.1 \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index a4b76b9530..e6441136f3 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 2b189974c2..381baa9cef 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,7 +1,7 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionSha256Sum=5b9c5eb3f9fc2c94abaea57d90bd78747ca117ddbbf96c859d3741181a12bf2a -distributionUrl=https\://services.gradle.org/distributions/gradle-8.10-bin.zip +distributionSha256Sum=544c35d6bd849ae8a5ed0bcea39ba677dc40f49df7d1835561582da2009b961d +distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/gradlew b/gradlew index f5feea6d6b..1aa94a4269 100755 --- a/gradlew +++ b/gradlew @@ -15,8 +15,6 @@ # See the License for the specific language governing permissions and # limitations under the License. # -# SPDX-License-Identifier: Apache-2.0 -# ############################################################################## # @@ -57,7 +55,7 @@ # Darwin, MinGW, and NonStop. # # (3) This script is generated from the Groovy template -# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt # within the Gradle project. # # You can find Gradle at https://github.com/gradle/gradle/. @@ -86,8 +84,7 @@ done # shellcheck disable=SC2034 APP_BASE_NAME=${0##*/} # Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) -APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s -' "$PWD" ) || exit +APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD=maximum diff --git a/gradlew.bat b/gradlew.bat index 9d21a21834..25da30dbde 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -13,8 +13,6 @@ @rem See the License for the specific language governing permissions and @rem limitations under the License. @rem -@rem SPDX-License-Identifier: Apache-2.0 -@rem @if "%DEBUG%"=="" @echo off @rem ########################################################################## diff --git a/settings.gradle.kts b/settings.gradle.kts index 41c306be2d..c0cd8dda0e 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -1,11 +1,5 @@ pluginManagement { repositories { - mavenLocal { - content { - includeGroup("dev.galacticraft") - includeGroup("dev.galacticraft.mojarn") - } - } maven("https://maven.fabricmc.net/") { name = "Fabric" content { @@ -14,8 +8,7 @@ pluginManagement { includeGroup("fabric-loom") } } - maven("https://repo.terradevelopment.net/repository/maven-releases/") { - // https://maven.galacticraft.net/repository/maven-releases + maven("https://maven.galacticraft.net/repository/maven-releases/") { content { includeGroup("dev.galacticraft") includeGroup("dev.galacticraft.mojarn") diff --git a/src/main/generated/README.md b/src/main/generated/README.md new file mode 100644 index 0000000000..247a3cb073 --- /dev/null +++ b/src/main/generated/README.md @@ -0,0 +1,15 @@ +# Generated resources +**This directory contains generated resources. Do not edit them directly as they can be overwritten (or deleted).** + + +### Adding more resources +Resources that cannot be generated (e.g. music, textures, languages, etc.) should be put into [src/main/resources](../resources). + +To generate additional resources, see the `dev.galacticraft.mod.data` package. + +### Updating generated resources +To regenerate resources, run the following command: +```bash +./gradlew runDatagen +``` +or the "Data Generation" run configuration in your IDE. diff --git a/src/main/generated/assets/galacticraft/blockstates/chiseled_moon_rock_brick.json b/src/main/generated/assets/galacticraft/blockstates/chiseled_moon_rock_brick.json deleted file mode 100644 index 83cca4703a..0000000000 --- a/src/main/generated/assets/galacticraft/blockstates/chiseled_moon_rock_brick.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "galacticraft:block/chiseled_moon_rock_brick" - } - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/blockstates/cracked_moon_rock_brick.json b/src/main/generated/assets/galacticraft/blockstates/cracked_moon_rock_brick.json deleted file mode 100644 index 95b3239006..0000000000 --- a/src/main/generated/assets/galacticraft/blockstates/cracked_moon_rock_brick.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "galacticraft:block/cracked_moon_rock_brick" - } - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/blockstates/cracked_moon_rock_brick_slab.json b/src/main/generated/assets/galacticraft/blockstates/cracked_moon_rock_brick_slab.json deleted file mode 100644 index 697d5a3091..0000000000 --- a/src/main/generated/assets/galacticraft/blockstates/cracked_moon_rock_brick_slab.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "variants": { - "type=bottom": { - "model": "galacticraft:block/cracked_moon_rock_brick_slab" - }, - "type=double": { - "model": "galacticraft:block/cracked_moon_rock_brick" - }, - "type=top": { - "model": "galacticraft:block/cracked_moon_rock_brick_slab_top" - } - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/blockstates/cracked_moon_rock_brick_stairs.json b/src/main/generated/assets/galacticraft/blockstates/cracked_moon_rock_brick_stairs.json deleted file mode 100644 index 960120f66e..0000000000 --- a/src/main/generated/assets/galacticraft/blockstates/cracked_moon_rock_brick_stairs.json +++ /dev/null @@ -1,209 +0,0 @@ -{ - "variants": { - "facing=east,half=bottom,shape=inner_left": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_inner", - "uvlock": true, - "y": 270 - }, - "facing=east,half=bottom,shape=inner_right": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_inner" - }, - "facing=east,half=bottom,shape=outer_left": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_outer", - "uvlock": true, - "y": 270 - }, - "facing=east,half=bottom,shape=outer_right": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_outer" - }, - "facing=east,half=bottom,shape=straight": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs" - }, - "facing=east,half=top,shape=inner_left": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_inner", - "uvlock": true, - "x": 180 - }, - "facing=east,half=top,shape=inner_right": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_inner", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=east,half=top,shape=outer_left": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_outer", - "uvlock": true, - "x": 180 - }, - "facing=east,half=top,shape=outer_right": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_outer", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=east,half=top,shape=straight": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs", - "uvlock": true, - "x": 180 - }, - "facing=north,half=bottom,shape=inner_left": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_inner", - "uvlock": true, - "y": 180 - }, - "facing=north,half=bottom,shape=inner_right": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_inner", - "uvlock": true, - "y": 270 - }, - "facing=north,half=bottom,shape=outer_left": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_outer", - "uvlock": true, - "y": 180 - }, - "facing=north,half=bottom,shape=outer_right": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_outer", - "uvlock": true, - "y": 270 - }, - "facing=north,half=bottom,shape=straight": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs", - "uvlock": true, - "y": 270 - }, - "facing=north,half=top,shape=inner_left": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_inner", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=north,half=top,shape=inner_right": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_inner", - "uvlock": true, - "x": 180 - }, - "facing=north,half=top,shape=outer_left": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_outer", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=north,half=top,shape=outer_right": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_outer", - "uvlock": true, - "x": 180 - }, - "facing=north,half=top,shape=straight": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=south,half=bottom,shape=inner_left": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_inner" - }, - "facing=south,half=bottom,shape=inner_right": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_inner", - "uvlock": true, - "y": 90 - }, - "facing=south,half=bottom,shape=outer_left": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_outer" - }, - "facing=south,half=bottom,shape=outer_right": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_outer", - "uvlock": true, - "y": 90 - }, - "facing=south,half=bottom,shape=straight": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs", - "uvlock": true, - "y": 90 - }, - "facing=south,half=top,shape=inner_left": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_inner", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=south,half=top,shape=inner_right": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_inner", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=south,half=top,shape=outer_left": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_outer", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=south,half=top,shape=outer_right": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_outer", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=south,half=top,shape=straight": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=west,half=bottom,shape=inner_left": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_inner", - "uvlock": true, - "y": 90 - }, - "facing=west,half=bottom,shape=inner_right": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_inner", - "uvlock": true, - "y": 180 - }, - "facing=west,half=bottom,shape=outer_left": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_outer", - "uvlock": true, - "y": 90 - }, - "facing=west,half=bottom,shape=outer_right": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_outer", - "uvlock": true, - "y": 180 - }, - "facing=west,half=bottom,shape=straight": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs", - "uvlock": true, - "y": 180 - }, - "facing=west,half=top,shape=inner_left": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_inner", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=west,half=top,shape=inner_right": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_inner", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=west,half=top,shape=outer_left": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_outer", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=west,half=top,shape=outer_right": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs_outer", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=west,half=top,shape=straight": { - "model": "galacticraft:block/cracked_moon_rock_brick_stairs", - "uvlock": true, - "x": 180, - "y": 180 - } - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/blockstates/cracked_moon_rock_brick_wall.json b/src/main/generated/assets/galacticraft/blockstates/cracked_moon_rock_brick_wall.json deleted file mode 100644 index 24e684318d..0000000000 --- a/src/main/generated/assets/galacticraft/blockstates/cracked_moon_rock_brick_wall.json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "multipart": [ - { - "apply": { - "model": "galacticraft:block/cracked_moon_rock_brick_wall_post" - }, - "when": { - "up": "true" - } - }, - { - "apply": { - "model": "galacticraft:block/cracked_moon_rock_brick_wall_side", - "uvlock": true - }, - "when": { - "north": "low" - } - }, - { - "apply": { - "model": "galacticraft:block/cracked_moon_rock_brick_wall_side", - "uvlock": true, - "y": 90 - }, - "when": { - "east": "low" - } - }, - { - "apply": { - "model": "galacticraft:block/cracked_moon_rock_brick_wall_side", - "uvlock": true, - "y": 180 - }, - "when": { - "south": "low" - } - }, - { - "apply": { - "model": "galacticraft:block/cracked_moon_rock_brick_wall_side", - "uvlock": true, - "y": 270 - }, - "when": { - "west": "low" - } - }, - { - "apply": { - "model": "galacticraft:block/cracked_moon_rock_brick_wall_side_tall", - "uvlock": true - }, - "when": { - "north": "tall" - } - }, - { - "apply": { - "model": "galacticraft:block/cracked_moon_rock_brick_wall_side_tall", - "uvlock": true, - "y": 90 - }, - "when": { - "east": "tall" - } - }, - { - "apply": { - "model": "galacticraft:block/cracked_moon_rock_brick_wall_side_tall", - "uvlock": true, - "y": 180 - }, - "when": { - "south": "tall" - } - }, - { - "apply": { - "model": "galacticraft:block/cracked_moon_rock_brick_wall_side_tall", - "uvlock": true, - "y": 270 - }, - "when": { - "west": "tall" - } - } - ] -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/blockstates/moon_berry_bush.json b/src/main/generated/assets/galacticraft/blockstates/moon_berry_bush.json new file mode 100644 index 0000000000..cf9d16611b --- /dev/null +++ b/src/main/generated/assets/galacticraft/blockstates/moon_berry_bush.json @@ -0,0 +1,16 @@ +{ + "variants": { + "age=0": { + "model": "galacticraft:block/moon_berry_bush_stage0" + }, + "age=1": { + "model": "galacticraft:block/moon_berry_bush_stage1" + }, + "age=2": { + "model": "galacticraft:block/moon_berry_bush_stage2" + }, + "age=3": { + "model": "galacticraft:block/moon_berry_bush_stage3" + } + } +} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/blockstates/moon_rock_brick.json b/src/main/generated/assets/galacticraft/blockstates/moon_rock_brick.json deleted file mode 100644 index 8a9c7f5dd8..0000000000 --- a/src/main/generated/assets/galacticraft/blockstates/moon_rock_brick.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "galacticraft:block/moon_rock_brick" - } - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/blockstates/moon_rock_brick_slab.json b/src/main/generated/assets/galacticraft/blockstates/moon_rock_brick_slab.json deleted file mode 100644 index 6da7f9c26f..0000000000 --- a/src/main/generated/assets/galacticraft/blockstates/moon_rock_brick_slab.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "variants": { - "type=bottom": { - "model": "galacticraft:block/moon_rock_brick_slab" - }, - "type=double": { - "model": "galacticraft:block/moon_rock_brick" - }, - "type=top": { - "model": "galacticraft:block/moon_rock_brick_slab_top" - } - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/blockstates/moon_rock_brick_stairs.json b/src/main/generated/assets/galacticraft/blockstates/moon_rock_brick_stairs.json deleted file mode 100644 index 0dbd9de77a..0000000000 --- a/src/main/generated/assets/galacticraft/blockstates/moon_rock_brick_stairs.json +++ /dev/null @@ -1,209 +0,0 @@ -{ - "variants": { - "facing=east,half=bottom,shape=inner_left": { - "model": "galacticraft:block/moon_rock_brick_stairs_inner", - "uvlock": true, - "y": 270 - }, - "facing=east,half=bottom,shape=inner_right": { - "model": "galacticraft:block/moon_rock_brick_stairs_inner" - }, - "facing=east,half=bottom,shape=outer_left": { - "model": "galacticraft:block/moon_rock_brick_stairs_outer", - "uvlock": true, - "y": 270 - }, - "facing=east,half=bottom,shape=outer_right": { - "model": "galacticraft:block/moon_rock_brick_stairs_outer" - }, - "facing=east,half=bottom,shape=straight": { - "model": "galacticraft:block/moon_rock_brick_stairs" - }, - "facing=east,half=top,shape=inner_left": { - "model": "galacticraft:block/moon_rock_brick_stairs_inner", - "uvlock": true, - "x": 180 - }, - "facing=east,half=top,shape=inner_right": { - "model": "galacticraft:block/moon_rock_brick_stairs_inner", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=east,half=top,shape=outer_left": { - "model": "galacticraft:block/moon_rock_brick_stairs_outer", - "uvlock": true, - "x": 180 - }, - "facing=east,half=top,shape=outer_right": { - "model": "galacticraft:block/moon_rock_brick_stairs_outer", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=east,half=top,shape=straight": { - "model": "galacticraft:block/moon_rock_brick_stairs", - "uvlock": true, - "x": 180 - }, - "facing=north,half=bottom,shape=inner_left": { - "model": "galacticraft:block/moon_rock_brick_stairs_inner", - "uvlock": true, - "y": 180 - }, - "facing=north,half=bottom,shape=inner_right": { - "model": "galacticraft:block/moon_rock_brick_stairs_inner", - "uvlock": true, - "y": 270 - }, - "facing=north,half=bottom,shape=outer_left": { - "model": "galacticraft:block/moon_rock_brick_stairs_outer", - "uvlock": true, - "y": 180 - }, - "facing=north,half=bottom,shape=outer_right": { - "model": "galacticraft:block/moon_rock_brick_stairs_outer", - "uvlock": true, - "y": 270 - }, - "facing=north,half=bottom,shape=straight": { - "model": "galacticraft:block/moon_rock_brick_stairs", - "uvlock": true, - "y": 270 - }, - "facing=north,half=top,shape=inner_left": { - "model": "galacticraft:block/moon_rock_brick_stairs_inner", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=north,half=top,shape=inner_right": { - "model": "galacticraft:block/moon_rock_brick_stairs_inner", - "uvlock": true, - "x": 180 - }, - "facing=north,half=top,shape=outer_left": { - "model": "galacticraft:block/moon_rock_brick_stairs_outer", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=north,half=top,shape=outer_right": { - "model": "galacticraft:block/moon_rock_brick_stairs_outer", - "uvlock": true, - "x": 180 - }, - "facing=north,half=top,shape=straight": { - "model": "galacticraft:block/moon_rock_brick_stairs", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=south,half=bottom,shape=inner_left": { - "model": "galacticraft:block/moon_rock_brick_stairs_inner" - }, - "facing=south,half=bottom,shape=inner_right": { - "model": "galacticraft:block/moon_rock_brick_stairs_inner", - "uvlock": true, - "y": 90 - }, - "facing=south,half=bottom,shape=outer_left": { - "model": "galacticraft:block/moon_rock_brick_stairs_outer" - }, - "facing=south,half=bottom,shape=outer_right": { - "model": "galacticraft:block/moon_rock_brick_stairs_outer", - "uvlock": true, - "y": 90 - }, - "facing=south,half=bottom,shape=straight": { - "model": "galacticraft:block/moon_rock_brick_stairs", - "uvlock": true, - "y": 90 - }, - "facing=south,half=top,shape=inner_left": { - "model": "galacticraft:block/moon_rock_brick_stairs_inner", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=south,half=top,shape=inner_right": { - "model": "galacticraft:block/moon_rock_brick_stairs_inner", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=south,half=top,shape=outer_left": { - "model": "galacticraft:block/moon_rock_brick_stairs_outer", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=south,half=top,shape=outer_right": { - "model": "galacticraft:block/moon_rock_brick_stairs_outer", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=south,half=top,shape=straight": { - "model": "galacticraft:block/moon_rock_brick_stairs", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=west,half=bottom,shape=inner_left": { - "model": "galacticraft:block/moon_rock_brick_stairs_inner", - "uvlock": true, - "y": 90 - }, - "facing=west,half=bottom,shape=inner_right": { - "model": "galacticraft:block/moon_rock_brick_stairs_inner", - "uvlock": true, - "y": 180 - }, - "facing=west,half=bottom,shape=outer_left": { - "model": "galacticraft:block/moon_rock_brick_stairs_outer", - "uvlock": true, - "y": 90 - }, - "facing=west,half=bottom,shape=outer_right": { - "model": "galacticraft:block/moon_rock_brick_stairs_outer", - "uvlock": true, - "y": 180 - }, - "facing=west,half=bottom,shape=straight": { - "model": "galacticraft:block/moon_rock_brick_stairs", - "uvlock": true, - "y": 180 - }, - "facing=west,half=top,shape=inner_left": { - "model": "galacticraft:block/moon_rock_brick_stairs_inner", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=west,half=top,shape=inner_right": { - "model": "galacticraft:block/moon_rock_brick_stairs_inner", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=west,half=top,shape=outer_left": { - "model": "galacticraft:block/moon_rock_brick_stairs_outer", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=west,half=top,shape=outer_right": { - "model": "galacticraft:block/moon_rock_brick_stairs_outer", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=west,half=top,shape=straight": { - "model": "galacticraft:block/moon_rock_brick_stairs", - "uvlock": true, - "x": 180, - "y": 180 - } - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/blockstates/moon_rock_brick_wall.json b/src/main/generated/assets/galacticraft/blockstates/moon_rock_brick_wall.json deleted file mode 100644 index a483419a0a..0000000000 --- a/src/main/generated/assets/galacticraft/blockstates/moon_rock_brick_wall.json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "multipart": [ - { - "apply": { - "model": "galacticraft:block/moon_rock_brick_wall_post" - }, - "when": { - "up": "true" - } - }, - { - "apply": { - "model": "galacticraft:block/moon_rock_brick_wall_side", - "uvlock": true - }, - "when": { - "north": "low" - } - }, - { - "apply": { - "model": "galacticraft:block/moon_rock_brick_wall_side", - "uvlock": true, - "y": 90 - }, - "when": { - "east": "low" - } - }, - { - "apply": { - "model": "galacticraft:block/moon_rock_brick_wall_side", - "uvlock": true, - "y": 180 - }, - "when": { - "south": "low" - } - }, - { - "apply": { - "model": "galacticraft:block/moon_rock_brick_wall_side", - "uvlock": true, - "y": 270 - }, - "when": { - "west": "low" - } - }, - { - "apply": { - "model": "galacticraft:block/moon_rock_brick_wall_side_tall", - "uvlock": true - }, - "when": { - "north": "tall" - } - }, - { - "apply": { - "model": "galacticraft:block/moon_rock_brick_wall_side_tall", - "uvlock": true, - "y": 90 - }, - "when": { - "east": "tall" - } - }, - { - "apply": { - "model": "galacticraft:block/moon_rock_brick_wall_side_tall", - "uvlock": true, - "y": 180 - }, - "when": { - "south": "tall" - } - }, - { - "apply": { - "model": "galacticraft:block/moon_rock_brick_wall_side_tall", - "uvlock": true, - "y": 270 - }, - "when": { - "west": "tall" - } - } - ] -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/blockstates/moon_rock_pillar.json b/src/main/generated/assets/galacticraft/blockstates/moon_rock_pillar.json deleted file mode 100644 index b81cac5797..0000000000 --- a/src/main/generated/assets/galacticraft/blockstates/moon_rock_pillar.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "galacticraft:block/moon_rock_pillar", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "galacticraft:block/moon_rock_pillar" - }, - "axis=z": { - "model": "galacticraft:block/moon_rock_pillar", - "x": 90 - } - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/blockstates/olivine_basalt.json b/src/main/generated/assets/galacticraft/blockstates/olivine_basalt.json deleted file mode 100644 index 2737a1707b..0000000000 --- a/src/main/generated/assets/galacticraft/blockstates/olivine_basalt.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "galacticraft:block/olivine_basalt" - } - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/blockstates/olivine_block.json b/src/main/generated/assets/galacticraft/blockstates/olivine_block.json deleted file mode 100644 index a39c7f101d..0000000000 --- a/src/main/generated/assets/galacticraft/blockstates/olivine_block.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "galacticraft:block/olivine_block", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "galacticraft:block/olivine_block" - }, - "axis=z": { - "model": "galacticraft:block/olivine_block", - "x": 90 - } - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/blockstates/olivine_cluster.json b/src/main/generated/assets/galacticraft/blockstates/olivine_cluster.json deleted file mode 100644 index a5aad5dcf1..0000000000 --- a/src/main/generated/assets/galacticraft/blockstates/olivine_cluster.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "variants": { - "facing=down": { - "model": "galacticraft:block/olivine_cluster_vertical", - "x": 180 - }, - "facing=east": { - "model": "galacticraft:block/olivine_cluster_horizontal", - "x": 90, - "y": 90 - }, - "facing=north": { - "model": "galacticraft:block/olivine_cluster_horizontal", - "x": 90 - }, - "facing=south": { - "model": "galacticraft:block/olivine_cluster_horizontal", - "x": 90, - "y": 180 - }, - "facing=up": { - "model": "galacticraft:block/olivine_cluster_vertical" - }, - "facing=west": { - "model": "galacticraft:block/olivine_cluster_horizontal", - "x": 90, - "y": 270 - } - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/blockstates/polished_moon_rock.json b/src/main/generated/assets/galacticraft/blockstates/polished_moon_rock.json deleted file mode 100644 index b8c1bd9b45..0000000000 --- a/src/main/generated/assets/galacticraft/blockstates/polished_moon_rock.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "galacticraft:block/polished_moon_rock" - } - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/blockstates/polished_moon_rock_slab.json b/src/main/generated/assets/galacticraft/blockstates/polished_moon_rock_slab.json deleted file mode 100644 index 764a7fa5ea..0000000000 --- a/src/main/generated/assets/galacticraft/blockstates/polished_moon_rock_slab.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "variants": { - "type=bottom": { - "model": "galacticraft:block/polished_moon_rock_slab" - }, - "type=double": { - "model": "galacticraft:block/polished_moon_rock" - }, - "type=top": { - "model": "galacticraft:block/polished_moon_rock_slab_top" - } - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/blockstates/polished_moon_rock_stairs.json b/src/main/generated/assets/galacticraft/blockstates/polished_moon_rock_stairs.json deleted file mode 100644 index 75efda909e..0000000000 --- a/src/main/generated/assets/galacticraft/blockstates/polished_moon_rock_stairs.json +++ /dev/null @@ -1,209 +0,0 @@ -{ - "variants": { - "facing=east,half=bottom,shape=inner_left": { - "model": "galacticraft:block/polished_moon_rock_stairs_inner", - "uvlock": true, - "y": 270 - }, - "facing=east,half=bottom,shape=inner_right": { - "model": "galacticraft:block/polished_moon_rock_stairs_inner" - }, - "facing=east,half=bottom,shape=outer_left": { - "model": "galacticraft:block/polished_moon_rock_stairs_outer", - "uvlock": true, - "y": 270 - }, - "facing=east,half=bottom,shape=outer_right": { - "model": "galacticraft:block/polished_moon_rock_stairs_outer" - }, - "facing=east,half=bottom,shape=straight": { - "model": "galacticraft:block/polished_moon_rock_stairs" - }, - "facing=east,half=top,shape=inner_left": { - "model": "galacticraft:block/polished_moon_rock_stairs_inner", - "uvlock": true, - "x": 180 - }, - "facing=east,half=top,shape=inner_right": { - "model": "galacticraft:block/polished_moon_rock_stairs_inner", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=east,half=top,shape=outer_left": { - "model": "galacticraft:block/polished_moon_rock_stairs_outer", - "uvlock": true, - "x": 180 - }, - "facing=east,half=top,shape=outer_right": { - "model": "galacticraft:block/polished_moon_rock_stairs_outer", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=east,half=top,shape=straight": { - "model": "galacticraft:block/polished_moon_rock_stairs", - "uvlock": true, - "x": 180 - }, - "facing=north,half=bottom,shape=inner_left": { - "model": "galacticraft:block/polished_moon_rock_stairs_inner", - "uvlock": true, - "y": 180 - }, - "facing=north,half=bottom,shape=inner_right": { - "model": "galacticraft:block/polished_moon_rock_stairs_inner", - "uvlock": true, - "y": 270 - }, - "facing=north,half=bottom,shape=outer_left": { - "model": "galacticraft:block/polished_moon_rock_stairs_outer", - "uvlock": true, - "y": 180 - }, - "facing=north,half=bottom,shape=outer_right": { - "model": "galacticraft:block/polished_moon_rock_stairs_outer", - "uvlock": true, - "y": 270 - }, - "facing=north,half=bottom,shape=straight": { - "model": "galacticraft:block/polished_moon_rock_stairs", - "uvlock": true, - "y": 270 - }, - "facing=north,half=top,shape=inner_left": { - "model": "galacticraft:block/polished_moon_rock_stairs_inner", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=north,half=top,shape=inner_right": { - "model": "galacticraft:block/polished_moon_rock_stairs_inner", - "uvlock": true, - "x": 180 - }, - "facing=north,half=top,shape=outer_left": { - "model": "galacticraft:block/polished_moon_rock_stairs_outer", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=north,half=top,shape=outer_right": { - "model": "galacticraft:block/polished_moon_rock_stairs_outer", - "uvlock": true, - "x": 180 - }, - "facing=north,half=top,shape=straight": { - "model": "galacticraft:block/polished_moon_rock_stairs", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=south,half=bottom,shape=inner_left": { - "model": "galacticraft:block/polished_moon_rock_stairs_inner" - }, - "facing=south,half=bottom,shape=inner_right": { - "model": "galacticraft:block/polished_moon_rock_stairs_inner", - "uvlock": true, - "y": 90 - }, - "facing=south,half=bottom,shape=outer_left": { - "model": "galacticraft:block/polished_moon_rock_stairs_outer" - }, - "facing=south,half=bottom,shape=outer_right": { - "model": "galacticraft:block/polished_moon_rock_stairs_outer", - "uvlock": true, - "y": 90 - }, - "facing=south,half=bottom,shape=straight": { - "model": "galacticraft:block/polished_moon_rock_stairs", - "uvlock": true, - "y": 90 - }, - "facing=south,half=top,shape=inner_left": { - "model": "galacticraft:block/polished_moon_rock_stairs_inner", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=south,half=top,shape=inner_right": { - "model": "galacticraft:block/polished_moon_rock_stairs_inner", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=south,half=top,shape=outer_left": { - "model": "galacticraft:block/polished_moon_rock_stairs_outer", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=south,half=top,shape=outer_right": { - "model": "galacticraft:block/polished_moon_rock_stairs_outer", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=south,half=top,shape=straight": { - "model": "galacticraft:block/polished_moon_rock_stairs", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=west,half=bottom,shape=inner_left": { - "model": "galacticraft:block/polished_moon_rock_stairs_inner", - "uvlock": true, - "y": 90 - }, - "facing=west,half=bottom,shape=inner_right": { - "model": "galacticraft:block/polished_moon_rock_stairs_inner", - "uvlock": true, - "y": 180 - }, - "facing=west,half=bottom,shape=outer_left": { - "model": "galacticraft:block/polished_moon_rock_stairs_outer", - "uvlock": true, - "y": 90 - }, - "facing=west,half=bottom,shape=outer_right": { - "model": "galacticraft:block/polished_moon_rock_stairs_outer", - "uvlock": true, - "y": 180 - }, - "facing=west,half=bottom,shape=straight": { - "model": "galacticraft:block/polished_moon_rock_stairs", - "uvlock": true, - "y": 180 - }, - "facing=west,half=top,shape=inner_left": { - "model": "galacticraft:block/polished_moon_rock_stairs_inner", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=west,half=top,shape=inner_right": { - "model": "galacticraft:block/polished_moon_rock_stairs_inner", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=west,half=top,shape=outer_left": { - "model": "galacticraft:block/polished_moon_rock_stairs_outer", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=west,half=top,shape=outer_right": { - "model": "galacticraft:block/polished_moon_rock_stairs_outer", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=west,half=top,shape=straight": { - "model": "galacticraft:block/polished_moon_rock_stairs", - "uvlock": true, - "x": 180, - "y": 180 - } - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/blockstates/polished_moon_rock_wall.json b/src/main/generated/assets/galacticraft/blockstates/polished_moon_rock_wall.json deleted file mode 100644 index 60b9cb08d3..0000000000 --- a/src/main/generated/assets/galacticraft/blockstates/polished_moon_rock_wall.json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "multipart": [ - { - "apply": { - "model": "galacticraft:block/polished_moon_rock_wall_post" - }, - "when": { - "up": "true" - } - }, - { - "apply": { - "model": "galacticraft:block/polished_moon_rock_wall_side", - "uvlock": true - }, - "when": { - "north": "low" - } - }, - { - "apply": { - "model": "galacticraft:block/polished_moon_rock_wall_side", - "uvlock": true, - "y": 90 - }, - "when": { - "east": "low" - } - }, - { - "apply": { - "model": "galacticraft:block/polished_moon_rock_wall_side", - "uvlock": true, - "y": 180 - }, - "when": { - "south": "low" - } - }, - { - "apply": { - "model": "galacticraft:block/polished_moon_rock_wall_side", - "uvlock": true, - "y": 270 - }, - "when": { - "west": "low" - } - }, - { - "apply": { - "model": "galacticraft:block/polished_moon_rock_wall_side_tall", - "uvlock": true - }, - "when": { - "north": "tall" - } - }, - { - "apply": { - "model": "galacticraft:block/polished_moon_rock_wall_side_tall", - "uvlock": true, - "y": 90 - }, - "when": { - "east": "tall" - } - }, - { - "apply": { - "model": "galacticraft:block/polished_moon_rock_wall_side_tall", - "uvlock": true, - "y": 180 - }, - "when": { - "south": "tall" - } - }, - { - "apply": { - "model": "galacticraft:block/polished_moon_rock_wall_side_tall", - "uvlock": true, - "y": 270 - }, - "when": { - "west": "tall" - } - } - ] -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/blockstates/rich_olivine_basalt.json b/src/main/generated/assets/galacticraft/blockstates/rich_olivine_basalt.json deleted file mode 100644 index dd6e3d8455..0000000000 --- a/src/main/generated/assets/galacticraft/blockstates/rich_olivine_basalt.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "galacticraft:block/rich_olivine_basalt" - } - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/chiseled_moon_rock_brick.json b/src/main/generated/assets/galacticraft/models/block/chiseled_moon_rock_brick.json deleted file mode 100644 index 6a7ec54bfa..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/chiseled_moon_rock_brick.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "galacticraft:block/chiseled_moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick.json b/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick.json deleted file mode 100644 index 1ca53c6586..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "galacticraft:block/cracked_moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_slab.json b/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_slab.json deleted file mode 100644 index 8f0455c8b7..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_slab.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/slab", - "textures": { - "bottom": "galacticraft:block/cracked_moon_rock_brick", - "side": "galacticraft:block/cracked_moon_rock_brick", - "top": "galacticraft:block/cracked_moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_slab_top.json b/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_slab_top.json deleted file mode 100644 index b385a55902..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_slab_top.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/slab_top", - "textures": { - "bottom": "galacticraft:block/cracked_moon_rock_brick", - "side": "galacticraft:block/cracked_moon_rock_brick", - "top": "galacticraft:block/cracked_moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_stairs.json b/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_stairs.json deleted file mode 100644 index 5056ea6fdb..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_stairs.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/stairs", - "textures": { - "bottom": "galacticraft:block/cracked_moon_rock_brick", - "side": "galacticraft:block/cracked_moon_rock_brick", - "top": "galacticraft:block/cracked_moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_stairs_inner.json b/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_stairs_inner.json deleted file mode 100644 index 065fd5c44c..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_stairs_inner.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/inner_stairs", - "textures": { - "bottom": "galacticraft:block/cracked_moon_rock_brick", - "side": "galacticraft:block/cracked_moon_rock_brick", - "top": "galacticraft:block/cracked_moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_stairs_outer.json b/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_stairs_outer.json deleted file mode 100644 index c3cd082c16..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_stairs_outer.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/outer_stairs", - "textures": { - "bottom": "galacticraft:block/cracked_moon_rock_brick", - "side": "galacticraft:block/cracked_moon_rock_brick", - "top": "galacticraft:block/cracked_moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_wall_inventory.json b/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_wall_inventory.json deleted file mode 100644 index 4c0756fe2f..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_wall_inventory.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/wall_inventory", - "textures": { - "wall": "galacticraft:block/cracked_moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_wall_post.json b/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_wall_post.json deleted file mode 100644 index 740dba5dd4..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_wall_post.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_wall_post", - "textures": { - "wall": "galacticraft:block/cracked_moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_wall_side.json b/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_wall_side.json deleted file mode 100644 index 8771fac6b3..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_wall_side.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_wall_side", - "textures": { - "wall": "galacticraft:block/cracked_moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_wall_side_tall.json b/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_wall_side_tall.json deleted file mode 100644 index 805cdac8ed..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/cracked_moon_rock_brick_wall_side_tall.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_wall_side_tall", - "textures": { - "wall": "galacticraft:block/cracked_moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/moon_berry_bush_stage0.json b/src/main/generated/assets/galacticraft/models/block/moon_berry_bush_stage0.json new file mode 100644 index 0000000000..2c4e8c0172 --- /dev/null +++ b/src/main/generated/assets/galacticraft/models/block/moon_berry_bush_stage0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "galacticraft:block/moon_berry_bush_stage0" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/moon_berry_bush_stage1.json b/src/main/generated/assets/galacticraft/models/block/moon_berry_bush_stage1.json new file mode 100644 index 0000000000..695e588a88 --- /dev/null +++ b/src/main/generated/assets/galacticraft/models/block/moon_berry_bush_stage1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "galacticraft:block/moon_berry_bush_stage1" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/moon_berry_bush_stage2.json b/src/main/generated/assets/galacticraft/models/block/moon_berry_bush_stage2.json new file mode 100644 index 0000000000..6821996086 --- /dev/null +++ b/src/main/generated/assets/galacticraft/models/block/moon_berry_bush_stage2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "galacticraft:block/moon_berry_bush_stage2" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/moon_berry_bush_stage3.json b/src/main/generated/assets/galacticraft/models/block/moon_berry_bush_stage3.json new file mode 100644 index 0000000000..8c17b55b04 --- /dev/null +++ b/src/main/generated/assets/galacticraft/models/block/moon_berry_bush_stage3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "galacticraft:block/moon_berry_bush_stage3" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick.json b/src/main/generated/assets/galacticraft/models/block/moon_rock_brick.json deleted file mode 100644 index c1693fea03..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "galacticraft:block/moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_slab.json b/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_slab.json deleted file mode 100644 index e3eb6bbd0d..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_slab.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/slab", - "textures": { - "bottom": "galacticraft:block/moon_rock_brick", - "side": "galacticraft:block/moon_rock_brick", - "top": "galacticraft:block/moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_slab_top.json b/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_slab_top.json deleted file mode 100644 index 20939fbf9b..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_slab_top.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/slab_top", - "textures": { - "bottom": "galacticraft:block/moon_rock_brick", - "side": "galacticraft:block/moon_rock_brick", - "top": "galacticraft:block/moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_stairs.json b/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_stairs.json deleted file mode 100644 index 865705034d..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_stairs.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/stairs", - "textures": { - "bottom": "galacticraft:block/moon_rock_brick", - "side": "galacticraft:block/moon_rock_brick", - "top": "galacticraft:block/moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_stairs_inner.json b/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_stairs_inner.json deleted file mode 100644 index 6614a9266d..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_stairs_inner.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/inner_stairs", - "textures": { - "bottom": "galacticraft:block/moon_rock_brick", - "side": "galacticraft:block/moon_rock_brick", - "top": "galacticraft:block/moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_stairs_outer.json b/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_stairs_outer.json deleted file mode 100644 index f76f89e24f..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_stairs_outer.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/outer_stairs", - "textures": { - "bottom": "galacticraft:block/moon_rock_brick", - "side": "galacticraft:block/moon_rock_brick", - "top": "galacticraft:block/moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_wall_inventory.json b/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_wall_inventory.json deleted file mode 100644 index d5eb2d680f..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_wall_inventory.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/wall_inventory", - "textures": { - "wall": "galacticraft:block/moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_wall_post.json b/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_wall_post.json deleted file mode 100644 index 93baa9f2f4..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_wall_post.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_wall_post", - "textures": { - "wall": "galacticraft:block/moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_wall_side.json b/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_wall_side.json deleted file mode 100644 index d9240aed0a..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_wall_side.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_wall_side", - "textures": { - "wall": "galacticraft:block/moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_wall_side_tall.json b/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_wall_side_tall.json deleted file mode 100644 index 050282a7d0..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/moon_rock_brick_wall_side_tall.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_wall_side_tall", - "textures": { - "wall": "galacticraft:block/moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/moon_rock_pillar.json b/src/main/generated/assets/galacticraft/models/block/moon_rock_pillar.json deleted file mode 100644 index 2f4c455e53..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/moon_rock_pillar.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "galacticraft:block/moon_rock_pillar_top", - "side": "galacticraft:block/moon_rock_pillar_side" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/olivine_basalt.json b/src/main/generated/assets/galacticraft/models/block/olivine_basalt.json deleted file mode 100644 index c250585c2f..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/olivine_basalt.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "galacticraft:block/olivine_basalt" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/olivine_block.json b/src/main/generated/assets/galacticraft/models/block/olivine_block.json deleted file mode 100644 index 3ab88d1124..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/olivine_block.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "galacticraft:block/olivine_block_top", - "side": "galacticraft:block/olivine_block_side" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/olivine_cluster_horizontal.json b/src/main/generated/assets/galacticraft/models/block/olivine_cluster_horizontal.json deleted file mode 100644 index 748befdec0..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/olivine_cluster_horizontal.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cross", - "textures": { - "cross": "galacticraft:block/olivine_cluster_horizontal" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/olivine_cluster_vertical.json b/src/main/generated/assets/galacticraft/models/block/olivine_cluster_vertical.json deleted file mode 100644 index 1d22d16665..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/olivine_cluster_vertical.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cross", - "textures": { - "cross": "galacticraft:block/olivine_cluster_vertical" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock.json b/src/main/generated/assets/galacticraft/models/block/polished_moon_rock.json deleted file mode 100644 index 976afdc451..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "galacticraft:block/polished_moon_rock" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_slab.json b/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_slab.json deleted file mode 100644 index db14656340..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_slab.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/slab", - "textures": { - "bottom": "galacticraft:block/polished_moon_rock", - "side": "galacticraft:block/polished_moon_rock", - "top": "galacticraft:block/polished_moon_rock" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_slab_top.json b/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_slab_top.json deleted file mode 100644 index bcd38806bf..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_slab_top.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/slab_top", - "textures": { - "bottom": "galacticraft:block/polished_moon_rock", - "side": "galacticraft:block/polished_moon_rock", - "top": "galacticraft:block/polished_moon_rock" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_stairs.json b/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_stairs.json deleted file mode 100644 index bd1569d511..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_stairs.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/stairs", - "textures": { - "bottom": "galacticraft:block/polished_moon_rock", - "side": "galacticraft:block/polished_moon_rock", - "top": "galacticraft:block/polished_moon_rock" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_stairs_inner.json b/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_stairs_inner.json deleted file mode 100644 index e97de19e4f..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_stairs_inner.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/inner_stairs", - "textures": { - "bottom": "galacticraft:block/polished_moon_rock", - "side": "galacticraft:block/polished_moon_rock", - "top": "galacticraft:block/polished_moon_rock" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_stairs_outer.json b/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_stairs_outer.json deleted file mode 100644 index 452d93112a..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_stairs_outer.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/outer_stairs", - "textures": { - "bottom": "galacticraft:block/polished_moon_rock", - "side": "galacticraft:block/polished_moon_rock", - "top": "galacticraft:block/polished_moon_rock" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_wall_inventory.json b/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_wall_inventory.json deleted file mode 100644 index 754a9df4e8..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_wall_inventory.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/wall_inventory", - "textures": { - "wall": "galacticraft:block/polished_moon_rock" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_wall_post.json b/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_wall_post.json deleted file mode 100644 index 1a82c81786..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_wall_post.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_wall_post", - "textures": { - "wall": "galacticraft:block/polished_moon_rock" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_wall_side.json b/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_wall_side.json deleted file mode 100644 index 778b05524c..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_wall_side.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_wall_side", - "textures": { - "wall": "galacticraft:block/polished_moon_rock" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_wall_side_tall.json b/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_wall_side_tall.json deleted file mode 100644 index c5012380af..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/polished_moon_rock_wall_side_tall.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_wall_side_tall", - "textures": { - "wall": "galacticraft:block/polished_moon_rock" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/block/rich_olivine_basalt.json b/src/main/generated/assets/galacticraft/models/block/rich_olivine_basalt.json deleted file mode 100644 index 539eef33d2..0000000000 --- a/src/main/generated/assets/galacticraft/models/block/rich_olivine_basalt.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "galacticraft:block/rich_olivine_basalt" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/chiseled_moon_rock_brick.json b/src/main/generated/assets/galacticraft/models/item/chiseled_moon_rock_brick.json deleted file mode 100644 index f8c9a8e31f..0000000000 --- a/src/main/generated/assets/galacticraft/models/item/chiseled_moon_rock_brick.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "galacticraft:block/chiseled_moon_rock_brick" -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/cracked_moon_rock_brick.json b/src/main/generated/assets/galacticraft/models/item/cracked_moon_rock_brick.json deleted file mode 100644 index a409c03b74..0000000000 --- a/src/main/generated/assets/galacticraft/models/item/cracked_moon_rock_brick.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "galacticraft:block/cracked_moon_rock_brick" -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/cracked_moon_rock_brick_slab.json b/src/main/generated/assets/galacticraft/models/item/cracked_moon_rock_brick_slab.json deleted file mode 100644 index 567104c293..0000000000 --- a/src/main/generated/assets/galacticraft/models/item/cracked_moon_rock_brick_slab.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "galacticraft:block/cracked_moon_rock_brick_slab" -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/cracked_moon_rock_brick_stairs.json b/src/main/generated/assets/galacticraft/models/item/cracked_moon_rock_brick_stairs.json deleted file mode 100644 index 60c334a848..0000000000 --- a/src/main/generated/assets/galacticraft/models/item/cracked_moon_rock_brick_stairs.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "galacticraft:block/cracked_moon_rock_brick_stairs" -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/cracked_moon_rock_brick_wall.json b/src/main/generated/assets/galacticraft/models/item/cracked_moon_rock_brick_wall.json deleted file mode 100644 index 3fa8cc7041..0000000000 --- a/src/main/generated/assets/galacticraft/models/item/cracked_moon_rock_brick_wall.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "galacticraft:block/cracked_moon_rock_brick_wall_inventory" -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/moon_berries.json b/src/main/generated/assets/galacticraft/models/item/moon_berries.json new file mode 100644 index 0000000000..27b259dcbd --- /dev/null +++ b/src/main/generated/assets/galacticraft/models/item/moon_berries.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "galacticraft:item/moon_berries" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/moon_rock_brick.json b/src/main/generated/assets/galacticraft/models/item/moon_rock_brick.json deleted file mode 100644 index 1498b6482b..0000000000 --- a/src/main/generated/assets/galacticraft/models/item/moon_rock_brick.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "galacticraft:block/moon_rock_brick" -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/moon_rock_brick_slab.json b/src/main/generated/assets/galacticraft/models/item/moon_rock_brick_slab.json deleted file mode 100644 index 88b7c09317..0000000000 --- a/src/main/generated/assets/galacticraft/models/item/moon_rock_brick_slab.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "galacticraft:block/moon_rock_brick_slab" -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/moon_rock_brick_stairs.json b/src/main/generated/assets/galacticraft/models/item/moon_rock_brick_stairs.json deleted file mode 100644 index 00442e2e43..0000000000 --- a/src/main/generated/assets/galacticraft/models/item/moon_rock_brick_stairs.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "galacticraft:block/moon_rock_brick_stairs" -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/moon_rock_brick_wall.json b/src/main/generated/assets/galacticraft/models/item/moon_rock_brick_wall.json deleted file mode 100644 index 27a5b58320..0000000000 --- a/src/main/generated/assets/galacticraft/models/item/moon_rock_brick_wall.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "galacticraft:block/moon_rock_brick_wall_inventory" -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/moon_rock_pillar.json b/src/main/generated/assets/galacticraft/models/item/moon_rock_pillar.json deleted file mode 100644 index e66e259f5c..0000000000 --- a/src/main/generated/assets/galacticraft/models/item/moon_rock_pillar.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "galacticraft:block/moon_rock_pillar" -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/olivine_basalt.json b/src/main/generated/assets/galacticraft/models/item/olivine_basalt.json deleted file mode 100644 index 7832c3b3c8..0000000000 --- a/src/main/generated/assets/galacticraft/models/item/olivine_basalt.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "galacticraft:block/olivine_basalt" -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/olivine_block.json b/src/main/generated/assets/galacticraft/models/item/olivine_block.json deleted file mode 100644 index ae4b1bd610..0000000000 --- a/src/main/generated/assets/galacticraft/models/item/olivine_block.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "galacticraft:block/olivine_block" -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/olivine_cluster.json b/src/main/generated/assets/galacticraft/models/item/olivine_cluster.json deleted file mode 100644 index 170edb065a..0000000000 --- a/src/main/generated/assets/galacticraft/models/item/olivine_cluster.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "galacticraft:block/olivine_cluster_vertical" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/olivine_shard.json b/src/main/generated/assets/galacticraft/models/item/olivine_shard.json deleted file mode 100644 index 582831a774..0000000000 --- a/src/main/generated/assets/galacticraft/models/item/olivine_shard.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "galacticraft:item/olivine_shard" - } -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/polished_moon_rock.json b/src/main/generated/assets/galacticraft/models/item/polished_moon_rock.json deleted file mode 100644 index 7e0c4d4189..0000000000 --- a/src/main/generated/assets/galacticraft/models/item/polished_moon_rock.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "galacticraft:block/polished_moon_rock" -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/polished_moon_rock_slab.json b/src/main/generated/assets/galacticraft/models/item/polished_moon_rock_slab.json deleted file mode 100644 index d000c92f8b..0000000000 --- a/src/main/generated/assets/galacticraft/models/item/polished_moon_rock_slab.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "galacticraft:block/polished_moon_rock_slab" -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/polished_moon_rock_stairs.json b/src/main/generated/assets/galacticraft/models/item/polished_moon_rock_stairs.json deleted file mode 100644 index 8f1d11f170..0000000000 --- a/src/main/generated/assets/galacticraft/models/item/polished_moon_rock_stairs.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "galacticraft:block/polished_moon_rock_stairs" -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/polished_moon_rock_wall.json b/src/main/generated/assets/galacticraft/models/item/polished_moon_rock_wall.json deleted file mode 100644 index 43da16aadf..0000000000 --- a/src/main/generated/assets/galacticraft/models/item/polished_moon_rock_wall.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "galacticraft:block/polished_moon_rock_wall_inventory" -} \ No newline at end of file diff --git a/src/main/generated/assets/galacticraft/models/item/rich_olivine_basalt.json b/src/main/generated/assets/galacticraft/models/item/rich_olivine_basalt.json deleted file mode 100644 index cdd8e9a6f4..0000000000 --- a/src/main/generated/assets/galacticraft/models/item/rich_olivine_basalt.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "galacticraft:block/rich_olivine_basalt" -} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/block/clusters.json b/src/main/generated/data/c/tags/block/clusters.json deleted file mode 100644 index c2ddbd9133..0000000000 --- a/src/main/generated/data/c/tags/block/clusters.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:olivine_cluster" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/block/ores.json b/src/main/generated/data/c/tags/block/ores.json deleted file mode 100644 index f63a851d9d..0000000000 --- a/src/main/generated/data/c/tags/block/ores.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "values": [ - "galacticraft:silicon_ore", - "galacticraft:deepslate_silicon_ore", - "galacticraft:moon_copper_ore", - "galacticraft:lunaslate_copper_ore", - "galacticraft:olivine_basalt", - "galacticraft:rich_olivine_basalt", - "galacticraft:tin_ore", - "galacticraft:deepslate_tin_ore", - "galacticraft:moon_tin_ore", - "galacticraft:lunaslate_tin_ore", - "galacticraft:aluminum_ore", - "galacticraft:deepslate_aluminum_ore", - "galacticraft:asteroid_aluminum_ore", - "galacticraft:asteroid_iron_ore", - "galacticraft:asteroid_silicon_ore", - "galacticraft:desh_ore", - "galacticraft:ilmenite_ore", - "galacticraft:galena_ore" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/blocks/ores.json b/src/main/generated/data/c/tags/blocks/ores.json new file mode 100644 index 0000000000..966577899a --- /dev/null +++ b/src/main/generated/data/c/tags/blocks/ores.json @@ -0,0 +1,21 @@ +{ + "replace": false, + "values": [ + "galacticraft:silicon_ore", + "galacticraft:deepslate_silicon_ore", + "galacticraft:moon_copper_ore", + "galacticraft:lunaslate_copper_ore", + "galacticraft:tin_ore", + "galacticraft:deepslate_tin_ore", + "galacticraft:moon_tin_ore", + "galacticraft:lunaslate_tin_ore", + "galacticraft:asteroid_aluminum_ore", + "galacticraft:asteroid_iron_ore", + "galacticraft:asteroid_silicon_ore", + "galacticraft:aluminum_ore", + "galacticraft:deepslate_aluminum_ore", + "galacticraft:desh_ore", + "galacticraft:ilmenite_ore", + "galacticraft:galena_ore" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/fluid/oxygen.json b/src/main/generated/data/c/tags/fluid/oxygen.json deleted file mode 100644 index 766ee87e69..0000000000 --- a/src/main/generated/data/c/tags/fluid/oxygen.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:liquid_oxygen" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/fluid/fuel.json b/src/main/generated/data/c/tags/fluids/fuel.json similarity index 80% rename from src/main/generated/data/c/tags/fluid/fuel.json rename to src/main/generated/data/c/tags/fluids/fuel.json index 9cf08d4fd3..f8639ed389 100644 --- a/src/main/generated/data/c/tags/fluid/fuel.json +++ b/src/main/generated/data/c/tags/fluids/fuel.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:fuel_still", "galacticraft:fuel_flowing" diff --git a/src/main/generated/data/c/tags/fluid/oil.json b/src/main/generated/data/c/tags/fluids/oil.json similarity index 82% rename from src/main/generated/data/c/tags/fluid/oil.json rename to src/main/generated/data/c/tags/fluids/oil.json index 15ba6583e7..87c4fdbc7e 100644 --- a/src/main/generated/data/c/tags/fluid/oil.json +++ b/src/main/generated/data/c/tags/fluids/oil.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:crude_oil_still", "galacticraft:crude_oil_flowing" diff --git a/src/main/generated/data/c/tags/fluids/oxygen.json b/src/main/generated/data/c/tags/fluids/oxygen.json new file mode 100644 index 0000000000..358f840239 --- /dev/null +++ b/src/main/generated/data/c/tags/fluids/oxygen.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "galacticraft:liquid_oxygen" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/fluid/sulfuric_acid.json b/src/main/generated/data/c/tags/fluids/sulfuric_acid.json similarity index 83% rename from src/main/generated/data/c/tags/fluid/sulfuric_acid.json rename to src/main/generated/data/c/tags/fluids/sulfuric_acid.json index 9f03740c75..5c939409c5 100644 --- a/src/main/generated/data/c/tags/fluid/sulfuric_acid.json +++ b/src/main/generated/data/c/tags/fluids/sulfuric_acid.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:sulfuric_acid_still", "galacticraft:sulfuric_acid_flowing" diff --git a/src/main/generated/data/c/tags/item/clusters.json b/src/main/generated/data/c/tags/item/clusters.json deleted file mode 100644 index c2ddbd9133..0000000000 --- a/src/main/generated/data/c/tags/item/clusters.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:olivine_cluster" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/item/gems.json b/src/main/generated/data/c/tags/item/gems.json deleted file mode 100644 index 21457ae9f2..0000000000 --- a/src/main/generated/data/c/tags/item/gems.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:olivine_shard" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/item/gems/silicon.json b/src/main/generated/data/c/tags/item/gems/silicon.json deleted file mode 100644 index 41aef02ae8..0000000000 --- a/src/main/generated/data/c/tags/item/gems/silicon.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:raw_silicon" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/item/ingots/aluminum.json b/src/main/generated/data/c/tags/item/ingots/aluminum.json deleted file mode 100644 index fed9d59d21..0000000000 --- a/src/main/generated/data/c/tags/item/ingots/aluminum.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:aluminum_ingot" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/item/ingots/lead.json b/src/main/generated/data/c/tags/item/ingots/lead.json deleted file mode 100644 index 8d01932290..0000000000 --- a/src/main/generated/data/c/tags/item/ingots/lead.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:lead_ingot" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/item/ingots/tin.json b/src/main/generated/data/c/tags/item/ingots/tin.json deleted file mode 100644 index 18f9f04363..0000000000 --- a/src/main/generated/data/c/tags/item/ingots/tin.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:tin_ingot" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/item/ores.json b/src/main/generated/data/c/tags/item/ores.json deleted file mode 100644 index ec49ac1038..0000000000 --- a/src/main/generated/data/c/tags/item/ores.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "values": [ - "galacticraft:silicon_ore", - "galacticraft:deepslate_silicon_ore", - "galacticraft:moon_copper_ore", - "galacticraft:lunaslate_copper_ore", - "galacticraft:olivine_basalt", - "galacticraft:rich_olivine_basalt", - "galacticraft:tin_ore", - "galacticraft:deepslate_tin_ore", - "galacticraft:moon_tin_ore", - "galacticraft:lunaslate_tin_ore", - "galacticraft:asteroid_aluminum_ore", - "galacticraft:asteroid_iron_ore", - "galacticraft:asteroid_silicon_ore", - "galacticraft:aluminum_ore", - "galacticraft:deepslate_aluminum_ore", - "galacticraft:desh_ore", - "galacticraft:ilmenite_ore", - "galacticraft:galena_ore" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/item/plates/iron.json b/src/main/generated/data/c/tags/item/plates/iron.json deleted file mode 100644 index fda05bc0c9..0000000000 --- a/src/main/generated/data/c/tags/item/plates/iron.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:compressed_iron" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/item/plates/steel.json b/src/main/generated/data/c/tags/item/plates/steel.json deleted file mode 100644 index b1d7f0320b..0000000000 --- a/src/main/generated/data/c/tags/item/plates/steel.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:compressed_steel" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/item/plates/tin.json b/src/main/generated/data/c/tags/item/plates/tin.json deleted file mode 100644 index 8b6be4414f..0000000000 --- a/src/main/generated/data/c/tags/item/plates/tin.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:compressed_tin" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/item/raw_materials/aluminum.json b/src/main/generated/data/c/tags/item/raw_materials/aluminum.json deleted file mode 100644 index 52a58bb3dc..0000000000 --- a/src/main/generated/data/c/tags/item/raw_materials/aluminum.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:raw_aluminum" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/item/raw_materials/lead.json b/src/main/generated/data/c/tags/item/raw_materials/lead.json deleted file mode 100644 index 69ed09e40c..0000000000 --- a/src/main/generated/data/c/tags/item/raw_materials/lead.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:raw_lead" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/item/raw_materials/tin.json b/src/main/generated/data/c/tags/item/raw_materials/tin.json deleted file mode 100644 index 60fb451c54..0000000000 --- a/src/main/generated/data/c/tags/item/raw_materials/tin.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:raw_tin" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/items/aluminum_ingots.json b/src/main/generated/data/c/tags/items/aluminum_ingots.json new file mode 100644 index 0000000000..2792ad8690 --- /dev/null +++ b/src/main/generated/data/c/tags/items/aluminum_ingots.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "galacticraft:aluminum_ingot" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/items/compressed_iron.json b/src/main/generated/data/c/tags/items/compressed_iron.json new file mode 100644 index 0000000000..77e47b6ab1 --- /dev/null +++ b/src/main/generated/data/c/tags/items/compressed_iron.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "galacticraft:compressed_iron" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/items/compressed_steel.json b/src/main/generated/data/c/tags/items/compressed_steel.json new file mode 100644 index 0000000000..69efc2b5e8 --- /dev/null +++ b/src/main/generated/data/c/tags/items/compressed_steel.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "galacticraft:compressed_steel" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/items/compressed_tin.json b/src/main/generated/data/c/tags/items/compressed_tin.json new file mode 100644 index 0000000000..fb4642d843 --- /dev/null +++ b/src/main/generated/data/c/tags/items/compressed_tin.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "galacticraft:compressed_tin" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/items/lead_ingots.json b/src/main/generated/data/c/tags/items/lead_ingots.json new file mode 100644 index 0000000000..c89f58442b --- /dev/null +++ b/src/main/generated/data/c/tags/items/lead_ingots.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "galacticraft:lead_ingot" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/items/ores.json b/src/main/generated/data/c/tags/items/ores.json new file mode 100644 index 0000000000..20170bb9ba --- /dev/null +++ b/src/main/generated/data/c/tags/items/ores.json @@ -0,0 +1,21 @@ +{ + "replace": false, + "values": [ + "galacticraft:silicon_ore", + "galacticraft:deepslate_silicon_ore", + "galacticraft:moon_copper_ore", + "galacticraft:lunaslate_copper_ore", + "galacticraft:tin_ore", + "galacticraft:deepslate_tin_ore", + "galacticraft:moon_tin_ore", + "galacticraft:lunaslate_tin_ore", + "galacticraft:aluminum_ore", + "galacticraft:deepslate_aluminum_ore", + "galacticraft:asteroid_aluminum_ore", + "galacticraft:asteroid_iron_ore", + "galacticraft:asteroid_silicon_ore", + "galacticraft:desh_ore", + "galacticraft:ilmenite_ore", + "galacticraft:galena_ore" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/items/raw_aluminum_ores.json b/src/main/generated/data/c/tags/items/raw_aluminum_ores.json new file mode 100644 index 0000000000..1541b70bd0 --- /dev/null +++ b/src/main/generated/data/c/tags/items/raw_aluminum_ores.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "galacticraft:raw_aluminum" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/items/raw_lead_ores.json b/src/main/generated/data/c/tags/items/raw_lead_ores.json new file mode 100644 index 0000000000..c129ebe565 --- /dev/null +++ b/src/main/generated/data/c/tags/items/raw_lead_ores.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "galacticraft:raw_lead" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/items/raw_tin_ores.json b/src/main/generated/data/c/tags/items/raw_tin_ores.json new file mode 100644 index 0000000000..4b7494e9ce --- /dev/null +++ b/src/main/generated/data/c/tags/items/raw_tin_ores.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "galacticraft:raw_tin" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/items/silicons.json b/src/main/generated/data/c/tags/items/silicons.json new file mode 100644 index 0000000000..fe1ae16a0f --- /dev/null +++ b/src/main/generated/data/c/tags/items/silicons.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "galacticraft:raw_silicon" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/c/tags/items/tin_ingots.json b/src/main/generated/data/c/tags/items/tin_ingots.json new file mode 100644 index 0000000000..b3747a688b --- /dev/null +++ b/src/main/generated/data/c/tags/items/tin_ingots.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "galacticraft:tin_ingot" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration.json deleted file mode 100644 index 05ddb0c5bb..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_aluminum": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_aluminum" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:aluminum_decoration" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_aluminum" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:aluminum_decoration" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration_slab.json deleted file mode 100644 index 6a448059f6..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_aluminum_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:aluminum_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:aluminum_decoration_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_aluminum_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:aluminum_decoration_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration_slab_from_aluminum_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration_slab_from_aluminum_decoration_stonecutting.json deleted file mode 100644 index adbb008462..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration_slab_from_aluminum_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_aluminum_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:aluminum_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:aluminum_decoration_slab_from_aluminum_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_aluminum_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:aluminum_decoration_slab_from_aluminum_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration_stairs.json deleted file mode 100644 index c1e95d3258..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_aluminum_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:aluminum_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:aluminum_decoration_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_aluminum_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:aluminum_decoration_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration_stairs_from_aluminum_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration_stairs_from_aluminum_decoration_stonecutting.json deleted file mode 100644 index 463a73e4ff..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration_stairs_from_aluminum_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_aluminum_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:aluminum_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:aluminum_decoration_stairs_from_aluminum_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_aluminum_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:aluminum_decoration_stairs_from_aluminum_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration_wall.json deleted file mode 100644 index dc19bd8852..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_aluminum_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:aluminum_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:aluminum_decoration_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_aluminum_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:aluminum_decoration_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration_wall_from_aluminum_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration_wall_from_aluminum_decoration_stonecutting.json deleted file mode 100644 index 7ba1eca06b..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/aluminum_decoration_wall_from_aluminum_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_aluminum_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:aluminum_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:aluminum_decoration_wall_from_aluminum_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_aluminum_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:aluminum_decoration_wall_from_aluminum_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration.json deleted file mode 100644 index 7ead454b35..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_bronze": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_bronze" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:bronze_decoration" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_bronze" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:bronze_decoration" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration_slab.json deleted file mode 100644 index 7cf4f7427e..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_bronze_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:bronze_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:bronze_decoration_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_bronze_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:bronze_decoration_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration_slab_from_bronze_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration_slab_from_bronze_decoration_stonecutting.json deleted file mode 100644 index 9e7e30c4f2..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration_slab_from_bronze_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_bronze_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:bronze_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:bronze_decoration_slab_from_bronze_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_bronze_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:bronze_decoration_slab_from_bronze_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration_stairs.json deleted file mode 100644 index a06190d113..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_bronze_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:bronze_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:bronze_decoration_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_bronze_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:bronze_decoration_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration_stairs_from_bronze_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration_stairs_from_bronze_decoration_stonecutting.json deleted file mode 100644 index b3a9019b75..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration_stairs_from_bronze_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_bronze_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:bronze_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:bronze_decoration_stairs_from_bronze_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_bronze_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:bronze_decoration_stairs_from_bronze_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration_wall.json deleted file mode 100644 index 5052725ca0..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_bronze_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:bronze_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:bronze_decoration_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_bronze_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:bronze_decoration_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration_wall_from_bronze_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration_wall_from_bronze_decoration_stonecutting.json deleted file mode 100644 index 9400043cfd..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/bronze_decoration_wall_from_bronze_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_bronze_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:bronze_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:bronze_decoration_wall_from_bronze_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_bronze_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:bronze_decoration_wall_from_bronze_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/chiseled_moon_rock_brick.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/chiseled_moon_rock_brick.json deleted file mode 100644 index 7efd9df731..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/chiseled_moon_rock_brick.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock_brick_slab": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock_brick_slab" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:chiseled_moon_rock_brick" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock_brick_slab" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:chiseled_moon_rock_brick" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/chiseled_moon_rock_brick_from_moon_rock_brick_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/chiseled_moon_rock_brick_from_moon_rock_brick_stonecutting.json deleted file mode 100644 index b622465159..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/chiseled_moon_rock_brick_from_moon_rock_brick_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:chiseled_moon_rock_brick_from_moon_rock_brick_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock_brick" - ] - ], - "rewards": { - "recipes": [ - "minecraft:chiseled_moon_rock_brick_from_moon_rock_brick_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/chiseled_moon_rock_brick_from_moon_rock_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/chiseled_moon_rock_brick_from_moon_rock_stonecutting.json deleted file mode 100644 index a7cd830c16..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/chiseled_moon_rock_brick_from_moon_rock_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:chiseled_moon_rock_brick_from_moon_rock_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock" - ] - ], - "rewards": { - "recipes": [ - "minecraft:chiseled_moon_rock_brick_from_moon_rock_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cobbled_lunaslate_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cobbled_lunaslate_slab.json deleted file mode 100644 index bfa9be11d2..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cobbled_lunaslate_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cobbled_lunaslate": { - "conditions": { - "items": [ - { - "items": "galacticraft:cobbled_lunaslate" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:cobbled_lunaslate_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cobbled_lunaslate" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:cobbled_lunaslate_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cobbled_lunaslate_slab_from_cobbled_lunaslate_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cobbled_lunaslate_slab_from_cobbled_lunaslate_stonecutting.json deleted file mode 100644 index 2e075ff887..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cobbled_lunaslate_slab_from_cobbled_lunaslate_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cobbled_lunaslate": { - "conditions": { - "items": [ - { - "items": "galacticraft:cobbled_lunaslate" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:cobbled_lunaslate_slab_from_cobbled_lunaslate_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cobbled_lunaslate" - ] - ], - "rewards": { - "recipes": [ - "minecraft:cobbled_lunaslate_slab_from_cobbled_lunaslate_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cobbled_lunaslate_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cobbled_lunaslate_stairs.json deleted file mode 100644 index 0462444731..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cobbled_lunaslate_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cobbled_lunaslate": { - "conditions": { - "items": [ - { - "items": "galacticraft:cobbled_lunaslate" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:cobbled_lunaslate_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cobbled_lunaslate" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:cobbled_lunaslate_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cobbled_lunaslate_stairs_from_cobbled_lunaslate_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cobbled_lunaslate_stairs_from_cobbled_lunaslate_stonecutting.json deleted file mode 100644 index 20f56d401e..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cobbled_lunaslate_stairs_from_cobbled_lunaslate_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cobbled_lunaslate": { - "conditions": { - "items": [ - { - "items": "galacticraft:cobbled_lunaslate" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:cobbled_lunaslate_stairs_from_cobbled_lunaslate_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cobbled_lunaslate" - ] - ], - "rewards": { - "recipes": [ - "minecraft:cobbled_lunaslate_stairs_from_cobbled_lunaslate_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cobbled_lunaslate_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cobbled_lunaslate_wall.json deleted file mode 100644 index 014632019c..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cobbled_lunaslate_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cobbled_lunaslate": { - "conditions": { - "items": [ - { - "items": "galacticraft:cobbled_lunaslate" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:cobbled_lunaslate_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cobbled_lunaslate" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:cobbled_lunaslate_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cobbled_lunaslate_wall_from_cobbled_lunaslate_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cobbled_lunaslate_wall_from_cobbled_lunaslate_stonecutting.json deleted file mode 100644 index 43c9d64de7..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cobbled_lunaslate_wall_from_cobbled_lunaslate_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cobbled_lunaslate": { - "conditions": { - "items": [ - { - "items": "galacticraft:cobbled_lunaslate" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:cobbled_lunaslate_wall_from_cobbled_lunaslate_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cobbled_lunaslate" - ] - ], - "rewards": { - "recipes": [ - "minecraft:cobbled_lunaslate_wall_from_cobbled_lunaslate_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration.json deleted file mode 100644 index 8f137a7853..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_copper": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_copper" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:copper_decoration" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_copper" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:copper_decoration" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration_slab.json deleted file mode 100644 index d5f5c8bfcf..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_copper_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:copper_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:copper_decoration_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_copper_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:copper_decoration_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration_slab_from_copper_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration_slab_from_copper_decoration_stonecutting.json deleted file mode 100644 index f247538865..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration_slab_from_copper_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_copper_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:copper_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:copper_decoration_slab_from_copper_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_copper_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:copper_decoration_slab_from_copper_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration_stairs.json deleted file mode 100644 index 47bbe049a8..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_copper_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:copper_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:copper_decoration_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_copper_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:copper_decoration_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration_stairs_from_copper_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration_stairs_from_copper_decoration_stonecutting.json deleted file mode 100644 index 18f6ebd600..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration_stairs_from_copper_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_copper_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:copper_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:copper_decoration_stairs_from_copper_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_copper_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:copper_decoration_stairs_from_copper_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration_wall.json deleted file mode 100644 index d5b57896a8..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_copper_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:copper_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:copper_decoration_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_copper_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:copper_decoration_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration_wall_from_copper_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration_wall_from_copper_decoration_stonecutting.json deleted file mode 100644 index ed5da5ee47..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/copper_decoration_wall_from_copper_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_copper_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:copper_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:copper_decoration_wall_from_copper_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_copper_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:copper_decoration_wall_from_copper_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_basalt_brick_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_basalt_brick_slab.json deleted file mode 100644 index 84d1bf1dbb..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_basalt_brick_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cracked_moon_basalt_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:cracked_moon_basalt_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:cracked_moon_basalt_brick_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cracked_moon_basalt_brick" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:cracked_moon_basalt_brick_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_basalt_brick_slab_from_cracked_moon_basalt_brick_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_basalt_brick_slab_from_cracked_moon_basalt_brick_stonecutting.json deleted file mode 100644 index 95c595bb73..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_basalt_brick_slab_from_cracked_moon_basalt_brick_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cracked_moon_basalt_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:cracked_moon_basalt_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:cracked_moon_basalt_brick_slab_from_cracked_moon_basalt_brick_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cracked_moon_basalt_brick" - ] - ], - "rewards": { - "recipes": [ - "minecraft:cracked_moon_basalt_brick_slab_from_cracked_moon_basalt_brick_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_basalt_brick_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_basalt_brick_stairs.json deleted file mode 100644 index acae000d2c..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_basalt_brick_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cracked_moon_basalt_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:cracked_moon_basalt_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:cracked_moon_basalt_brick_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cracked_moon_basalt_brick" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:cracked_moon_basalt_brick_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_basalt_brick_stairs_from_cracked_moon_basalt_brick_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_basalt_brick_stairs_from_cracked_moon_basalt_brick_stonecutting.json deleted file mode 100644 index 7eb26fdf47..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_basalt_brick_stairs_from_cracked_moon_basalt_brick_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cracked_moon_basalt_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:cracked_moon_basalt_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:cracked_moon_basalt_brick_stairs_from_cracked_moon_basalt_brick_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cracked_moon_basalt_brick" - ] - ], - "rewards": { - "recipes": [ - "minecraft:cracked_moon_basalt_brick_stairs_from_cracked_moon_basalt_brick_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_basalt_brick_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_basalt_brick_wall.json deleted file mode 100644 index 06bd097d60..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_basalt_brick_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cracked_moon_basalt_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:cracked_moon_basalt_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:cracked_moon_basalt_brick_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cracked_moon_basalt_brick" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:cracked_moon_basalt_brick_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_basalt_brick_wall_from_cracked_moon_basalt_brick_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_basalt_brick_wall_from_cracked_moon_basalt_brick_stonecutting.json deleted file mode 100644 index 3938fcf103..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_basalt_brick_wall_from_cracked_moon_basalt_brick_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cracked_moon_basalt_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:cracked_moon_basalt_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:cracked_moon_basalt_brick_wall_from_cracked_moon_basalt_brick_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cracked_moon_basalt_brick" - ] - ], - "rewards": { - "recipes": [ - "minecraft:cracked_moon_basalt_brick_wall_from_cracked_moon_basalt_brick_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick.json deleted file mode 100644 index 6f1fff2ca3..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:cracked_moon_rock_brick" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock_brick" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:cracked_moon_rock_brick" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick_slab.json deleted file mode 100644 index b4c5bd2da7..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cracked_moon_rock_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:cracked_moon_rock_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:cracked_moon_rock_brick_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cracked_moon_rock_brick" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:cracked_moon_rock_brick_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick_slab_from_cracked_moon_rock_brick_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick_slab_from_cracked_moon_rock_brick_stonecutting.json deleted file mode 100644 index 9d7c731f2e..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick_slab_from_cracked_moon_rock_brick_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cracked_moon_rock_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:cracked_moon_rock_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:cracked_moon_rock_brick_slab_from_cracked_moon_rock_brick_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cracked_moon_rock_brick" - ] - ], - "rewards": { - "recipes": [ - "minecraft:cracked_moon_rock_brick_slab_from_cracked_moon_rock_brick_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick_stairs.json deleted file mode 100644 index 13d4ce11a1..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cracked_moon_rock_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:cracked_moon_rock_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:cracked_moon_rock_brick_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cracked_moon_rock_brick" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:cracked_moon_rock_brick_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick_stairs_from_cracked_moon_rock_brick_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick_stairs_from_cracked_moon_rock_brick_stonecutting.json deleted file mode 100644 index 26bf219266..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick_stairs_from_cracked_moon_rock_brick_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cracked_moon_rock_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:cracked_moon_rock_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:cracked_moon_rock_brick_stairs_from_cracked_moon_rock_brick_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cracked_moon_rock_brick" - ] - ], - "rewards": { - "recipes": [ - "minecraft:cracked_moon_rock_brick_stairs_from_cracked_moon_rock_brick_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick_wall.json deleted file mode 100644 index 367b6a11e8..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cracked_moon_rock_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:cracked_moon_rock_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:cracked_moon_rock_brick_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cracked_moon_rock_brick" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:cracked_moon_rock_brick_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick_wall_from_cracked_moon_rock_brick_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick_wall_from_cracked_moon_rock_brick_stonecutting.json deleted file mode 100644 index 9f3640d1c0..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/cracked_moon_rock_brick_wall_from_cracked_moon_rock_brick_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cracked_moon_rock_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:cracked_moon_rock_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:cracked_moon_rock_brick_wall_from_cracked_moon_rock_brick_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cracked_moon_rock_brick" - ] - ], - "rewards": { - "recipes": [ - "minecraft:cracked_moon_rock_brick_wall_from_cracked_moon_rock_brick_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/dark_decoration_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/dark_decoration_slab.json deleted file mode 100644 index 1060707f59..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/dark_decoration_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_dark_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:dark_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:dark_decoration_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_dark_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:dark_decoration_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/dark_decoration_slab_from_dark_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/dark_decoration_slab_from_dark_decoration_stonecutting.json deleted file mode 100644 index 4c3ff656fa..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/dark_decoration_slab_from_dark_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_dark_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:dark_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:dark_decoration_slab_from_dark_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_dark_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:dark_decoration_slab_from_dark_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/dark_decoration_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/dark_decoration_stairs.json deleted file mode 100644 index 10e2e0beb5..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/dark_decoration_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_dark_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:dark_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:dark_decoration_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_dark_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:dark_decoration_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/dark_decoration_stairs_from_dark_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/dark_decoration_stairs_from_dark_decoration_stonecutting.json deleted file mode 100644 index 12d38c324a..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/dark_decoration_stairs_from_dark_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_dark_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:dark_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:dark_decoration_stairs_from_dark_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_dark_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:dark_decoration_stairs_from_dark_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/dark_decoration_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/dark_decoration_wall.json deleted file mode 100644 index 4ee57cecbf..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/dark_decoration_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_dark_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:dark_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:dark_decoration_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_dark_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:dark_decoration_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/dark_decoration_wall_from_dark_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/dark_decoration_wall_from_dark_decoration_stonecutting.json deleted file mode 100644 index df47f93e4d..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/dark_decoration_wall_from_dark_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_dark_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:dark_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:dark_decoration_wall_from_dark_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_dark_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:dark_decoration_wall_from_dark_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/desh_block.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/desh_block.json deleted file mode 100644 index 091f3e444d..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/desh_block.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:desh_block" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:desh_block" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration.json deleted file mode 100644 index afa672853b..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_aluminum": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_aluminum" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_aluminum_decoration" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_aluminum" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_aluminum_decoration" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration_slab.json deleted file mode 100644 index 4406c84cdc..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_aluminum_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_aluminum_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_aluminum_decoration_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_aluminum_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_aluminum_decoration_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration_slab_from_detailed_aluminum_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration_slab_from_detailed_aluminum_decoration_stonecutting.json deleted file mode 100644 index b1748d0b83..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration_slab_from_detailed_aluminum_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_aluminum_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_aluminum_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_aluminum_decoration_slab_from_detailed_aluminum_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_aluminum_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_aluminum_decoration_slab_from_detailed_aluminum_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration_stairs.json deleted file mode 100644 index 10c0923567..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_aluminum_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_aluminum_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_aluminum_decoration_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_aluminum_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_aluminum_decoration_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration_stairs_from_detailed_aluminum_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration_stairs_from_detailed_aluminum_decoration_stonecutting.json deleted file mode 100644 index b6fc563b7e..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration_stairs_from_detailed_aluminum_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_aluminum_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_aluminum_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_aluminum_decoration_stairs_from_detailed_aluminum_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_aluminum_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_aluminum_decoration_stairs_from_detailed_aluminum_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration_wall.json deleted file mode 100644 index e4bc750588..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_aluminum_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_aluminum_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_aluminum_decoration_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_aluminum_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_aluminum_decoration_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration_wall_from_detailed_aluminum_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration_wall_from_detailed_aluminum_decoration_stonecutting.json deleted file mode 100644 index 52c84c8318..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_aluminum_decoration_wall_from_detailed_aluminum_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_aluminum_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_aluminum_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_aluminum_decoration_wall_from_detailed_aluminum_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_aluminum_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_aluminum_decoration_wall_from_detailed_aluminum_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration.json deleted file mode 100644 index a8657a7baa..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_bronze": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_bronze" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_bronze_decoration" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_bronze" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_bronze_decoration" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration_slab.json deleted file mode 100644 index 9539621730..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_bronze_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_bronze_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_bronze_decoration_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_bronze_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_bronze_decoration_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration_slab_from_detailed_bronze_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration_slab_from_detailed_bronze_decoration_stonecutting.json deleted file mode 100644 index c1753bc53e..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration_slab_from_detailed_bronze_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_bronze_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_bronze_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_bronze_decoration_slab_from_detailed_bronze_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_bronze_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_bronze_decoration_slab_from_detailed_bronze_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration_stairs.json deleted file mode 100644 index 1cbc42cf97..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_bronze_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_bronze_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_bronze_decoration_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_bronze_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_bronze_decoration_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration_stairs_from_detailed_bronze_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration_stairs_from_detailed_bronze_decoration_stonecutting.json deleted file mode 100644 index 720e66e026..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration_stairs_from_detailed_bronze_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_bronze_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_bronze_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_bronze_decoration_stairs_from_detailed_bronze_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_bronze_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_bronze_decoration_stairs_from_detailed_bronze_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration_wall.json deleted file mode 100644 index 3539b5d473..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_bronze_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_bronze_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_bronze_decoration_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_bronze_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_bronze_decoration_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration_wall_from_detailed_bronze_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration_wall_from_detailed_bronze_decoration_stonecutting.json deleted file mode 100644 index ef6831ba86..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_bronze_decoration_wall_from_detailed_bronze_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_bronze_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_bronze_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_bronze_decoration_wall_from_detailed_bronze_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_bronze_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_bronze_decoration_wall_from_detailed_bronze_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration.json deleted file mode 100644 index 5356ebdc0a..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_copper": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_copper" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_copper_decoration" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_copper" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_copper_decoration" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration_slab.json deleted file mode 100644 index 99e2dbed19..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_copper_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_copper_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_copper_decoration_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_copper_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_copper_decoration_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration_slab_from_detailed_copper_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration_slab_from_detailed_copper_decoration_stonecutting.json deleted file mode 100644 index a53df0745f..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration_slab_from_detailed_copper_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_copper_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_copper_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_copper_decoration_slab_from_detailed_copper_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_copper_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_copper_decoration_slab_from_detailed_copper_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration_stairs.json deleted file mode 100644 index 60c524361f..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_copper_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_copper_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_copper_decoration_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_copper_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_copper_decoration_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration_stairs_from_detailed_copper_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration_stairs_from_detailed_copper_decoration_stonecutting.json deleted file mode 100644 index 0c96eee9a6..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration_stairs_from_detailed_copper_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_copper_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_copper_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_copper_decoration_stairs_from_detailed_copper_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_copper_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_copper_decoration_stairs_from_detailed_copper_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration_wall.json deleted file mode 100644 index 65e900d7dc..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_copper_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_copper_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_copper_decoration_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_copper_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_copper_decoration_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration_wall_from_detailed_copper_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration_wall_from_detailed_copper_decoration_stonecutting.json deleted file mode 100644 index 28b8936820..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_copper_decoration_wall_from_detailed_copper_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_copper_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_copper_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_copper_decoration_wall_from_detailed_copper_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_copper_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_copper_decoration_wall_from_detailed_copper_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_dark_decoration_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_dark_decoration_slab.json deleted file mode 100644 index 71f45ac21c..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_dark_decoration_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_dark_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_dark_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_dark_decoration_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_dark_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_dark_decoration_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_dark_decoration_slab_from_detailed_dark_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_dark_decoration_slab_from_detailed_dark_decoration_stonecutting.json deleted file mode 100644 index 0be76d53f9..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_dark_decoration_slab_from_detailed_dark_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_dark_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_dark_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_dark_decoration_slab_from_detailed_dark_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_dark_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_dark_decoration_slab_from_detailed_dark_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_dark_decoration_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_dark_decoration_stairs.json deleted file mode 100644 index 018817b5fe..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_dark_decoration_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_dark_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_dark_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_dark_decoration_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_dark_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_dark_decoration_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_dark_decoration_stairs_from_detailed_dark_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_dark_decoration_stairs_from_detailed_dark_decoration_stonecutting.json deleted file mode 100644 index d32ab5858f..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_dark_decoration_stairs_from_detailed_dark_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_dark_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_dark_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_dark_decoration_stairs_from_detailed_dark_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_dark_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_dark_decoration_stairs_from_detailed_dark_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_dark_decoration_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_dark_decoration_wall.json deleted file mode 100644 index 8ccc6edc33..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_dark_decoration_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_dark_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_dark_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_dark_decoration_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_dark_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_dark_decoration_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_dark_decoration_wall_from_detailed_dark_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_dark_decoration_wall_from_detailed_dark_decoration_stonecutting.json deleted file mode 100644 index f87cf0c80c..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_dark_decoration_wall_from_detailed_dark_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_dark_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_dark_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_dark_decoration_wall_from_detailed_dark_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_dark_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_dark_decoration_wall_from_detailed_dark_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration.json deleted file mode 100644 index 2f21e72c59..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_iron": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_iron" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_iron_decoration" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_iron" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_iron_decoration" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration_slab.json deleted file mode 100644 index 83b64a85e1..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_iron_decoration_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_iron_decoration_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration_slab_from_detailed_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration_slab_from_detailed_iron_decoration_stonecutting.json deleted file mode 100644 index 2f2098731d..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration_slab_from_detailed_iron_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_iron_decoration_slab_from_detailed_iron_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_iron_decoration_slab_from_detailed_iron_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration_stairs.json deleted file mode 100644 index 903384b505..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_iron_decoration_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_iron_decoration_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration_stairs_from_detailed_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration_stairs_from_detailed_iron_decoration_stonecutting.json deleted file mode 100644 index c4d10f66eb..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration_stairs_from_detailed_iron_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_iron_decoration_stairs_from_detailed_iron_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_iron_decoration_stairs_from_detailed_iron_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration_wall.json deleted file mode 100644 index 4f5a9e53ae..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_iron_decoration_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_iron_decoration_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration_wall_from_detailed_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration_wall_from_detailed_iron_decoration_stonecutting.json deleted file mode 100644 index f27ebad9e8..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_iron_decoration_wall_from_detailed_iron_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_iron_decoration_wall_from_detailed_iron_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_iron_decoration_wall_from_detailed_iron_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration.json deleted file mode 100644 index 1baac4afbe..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_meteoric_iron": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_meteoric_iron" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_meteoric_iron_decoration" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_meteoric_iron" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_meteoric_iron_decoration" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration_slab.json deleted file mode 100644 index 0e4792abfc..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_meteoric_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_meteoric_iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_meteoric_iron_decoration_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_meteoric_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_meteoric_iron_decoration_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration_slab_from_detailed_meteoric_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration_slab_from_detailed_meteoric_iron_decoration_stonecutting.json deleted file mode 100644 index 41b96e6579..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration_slab_from_detailed_meteoric_iron_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_meteoric_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_meteoric_iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_meteoric_iron_decoration_slab_from_detailed_meteoric_iron_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_meteoric_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_meteoric_iron_decoration_slab_from_detailed_meteoric_iron_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration_stairs.json deleted file mode 100644 index 0a01ec3924..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_meteoric_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_meteoric_iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_meteoric_iron_decoration_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_meteoric_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_meteoric_iron_decoration_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration_stairs_from_detailed_meteoric_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration_stairs_from_detailed_meteoric_iron_decoration_stonecutting.json deleted file mode 100644 index bbfba61770..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration_stairs_from_detailed_meteoric_iron_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_meteoric_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_meteoric_iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_meteoric_iron_decoration_stairs_from_detailed_meteoric_iron_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_meteoric_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_meteoric_iron_decoration_stairs_from_detailed_meteoric_iron_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration_wall.json deleted file mode 100644 index 6bc8c25eb4..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_meteoric_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_meteoric_iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_meteoric_iron_decoration_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_meteoric_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_meteoric_iron_decoration_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration_wall_from_detailed_meteoric_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration_wall_from_detailed_meteoric_iron_decoration_stonecutting.json deleted file mode 100644 index 9e099c378f..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_meteoric_iron_decoration_wall_from_detailed_meteoric_iron_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_meteoric_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_meteoric_iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_meteoric_iron_decoration_wall_from_detailed_meteoric_iron_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_meteoric_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_meteoric_iron_decoration_wall_from_detailed_meteoric_iron_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration.json deleted file mode 100644 index c3d4c085f6..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_steel": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_steel" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_steel_decoration" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_steel" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_steel_decoration" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration_slab.json deleted file mode 100644 index 65e6474432..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_steel_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_steel_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_steel_decoration_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_steel_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_steel_decoration_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration_slab_from_detailed_steel_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration_slab_from_detailed_steel_decoration_stonecutting.json deleted file mode 100644 index d5b54df146..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration_slab_from_detailed_steel_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_steel_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_steel_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_steel_decoration_slab_from_detailed_steel_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_steel_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_steel_decoration_slab_from_detailed_steel_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration_stairs.json deleted file mode 100644 index 5744031934..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_steel_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_steel_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_steel_decoration_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_steel_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_steel_decoration_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration_stairs_from_detailed_steel_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration_stairs_from_detailed_steel_decoration_stonecutting.json deleted file mode 100644 index 2c767525d2..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration_stairs_from_detailed_steel_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_steel_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_steel_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_steel_decoration_stairs_from_detailed_steel_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_steel_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_steel_decoration_stairs_from_detailed_steel_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration_wall.json deleted file mode 100644 index 9073f4f357..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_steel_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_steel_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_steel_decoration_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_steel_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_steel_decoration_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration_wall_from_detailed_steel_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration_wall_from_detailed_steel_decoration_stonecutting.json deleted file mode 100644 index bb2ca88ebe..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_steel_decoration_wall_from_detailed_steel_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_steel_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_steel_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_steel_decoration_wall_from_detailed_steel_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_steel_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_steel_decoration_wall_from_detailed_steel_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration.json deleted file mode 100644 index 544cc1922e..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_tin": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_tin" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_tin_decoration" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_tin" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_tin_decoration" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration_slab.json deleted file mode 100644 index 20c5c7281f..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_tin_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_tin_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_tin_decoration_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_tin_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_tin_decoration_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration_slab_from_detailed_tin_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration_slab_from_detailed_tin_decoration_stonecutting.json deleted file mode 100644 index fc8e67075d..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration_slab_from_detailed_tin_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_tin_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_tin_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_tin_decoration_slab_from_detailed_tin_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_tin_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_tin_decoration_slab_from_detailed_tin_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration_stairs.json deleted file mode 100644 index ad6bad110f..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_tin_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_tin_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_tin_decoration_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_tin_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_tin_decoration_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration_stairs_from_detailed_tin_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration_stairs_from_detailed_tin_decoration_stonecutting.json deleted file mode 100644 index 7e354b56c0..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration_stairs_from_detailed_tin_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_tin_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_tin_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_tin_decoration_stairs_from_detailed_tin_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_tin_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_tin_decoration_stairs_from_detailed_tin_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration_wall.json deleted file mode 100644 index 59e07f8d7b..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_tin_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_tin_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_tin_decoration_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_tin_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_tin_decoration_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration_wall_from_detailed_tin_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration_wall_from_detailed_tin_decoration_stonecutting.json deleted file mode 100644 index 59366a57dd..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_tin_decoration_wall_from_detailed_tin_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_tin_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_tin_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_tin_decoration_wall_from_detailed_tin_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_tin_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_tin_decoration_wall_from_detailed_tin_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration.json deleted file mode 100644 index 1c71a24d06..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_titanium": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_titanium" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_titanium_decoration" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_titanium" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_titanium_decoration" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration_slab.json deleted file mode 100644 index 345a5fff55..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_titanium_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_titanium_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_titanium_decoration_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_titanium_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_titanium_decoration_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration_slab_from_detailed_titanium_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration_slab_from_detailed_titanium_decoration_stonecutting.json deleted file mode 100644 index 879df9f6c5..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration_slab_from_detailed_titanium_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_titanium_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_titanium_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_titanium_decoration_slab_from_detailed_titanium_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_titanium_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_titanium_decoration_slab_from_detailed_titanium_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration_stairs.json deleted file mode 100644 index 22eb9c0f9b..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_titanium_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_titanium_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_titanium_decoration_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_titanium_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_titanium_decoration_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration_stairs_from_detailed_titanium_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration_stairs_from_detailed_titanium_decoration_stonecutting.json deleted file mode 100644 index 9e76558bf3..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration_stairs_from_detailed_titanium_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_titanium_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_titanium_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_titanium_decoration_stairs_from_detailed_titanium_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_titanium_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_titanium_decoration_stairs_from_detailed_titanium_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration_wall.json deleted file mode 100644 index b85e6fe685..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_titanium_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_titanium_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:detailed_titanium_decoration_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_titanium_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:detailed_titanium_decoration_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration_wall_from_detailed_titanium_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration_wall_from_detailed_titanium_decoration_stonecutting.json deleted file mode 100644 index 8deeb7f586..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/detailed_titanium_decoration_wall_from_detailed_titanium_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_detailed_titanium_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:detailed_titanium_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:detailed_titanium_decoration_wall_from_detailed_titanium_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_detailed_titanium_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:detailed_titanium_decoration_wall_from_detailed_titanium_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/grating.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/grating.json deleted file mode 100644 index e949c98a88..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/grating.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_iron_bars": { - "conditions": { - "items": [ - { - "items": "minecraft:iron_bars" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:grating" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_iron_bars" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:grating" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration.json deleted file mode 100644 index fd36fc033c..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_iron": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_iron" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:iron_decoration" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_iron" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:iron_decoration" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration_slab.json deleted file mode 100644 index c2d426491c..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:iron_decoration_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:iron_decoration_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration_slab_from_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration_slab_from_iron_decoration_stonecutting.json deleted file mode 100644 index 8b99266688..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration_slab_from_iron_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:iron_decoration_slab_from_iron_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:iron_decoration_slab_from_iron_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration_stairs.json deleted file mode 100644 index 0f4b3df4a0..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:iron_decoration_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:iron_decoration_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration_stairs_from_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration_stairs_from_iron_decoration_stonecutting.json deleted file mode 100644 index ab19b4cbf2..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration_stairs_from_iron_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:iron_decoration_stairs_from_iron_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:iron_decoration_stairs_from_iron_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration_wall.json deleted file mode 100644 index 104b98619e..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:iron_decoration_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:iron_decoration_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration_wall_from_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration_wall_from_iron_decoration_stonecutting.json deleted file mode 100644 index c319e8e6f1..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/iron_decoration_wall_from_iron_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:iron_decoration_wall_from_iron_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:iron_decoration_wall_from_iron_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lead_block.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lead_block.json deleted file mode 100644 index c8f313d00e..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lead_block.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_lead_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:lead_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:lead_block" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_lead_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:lead_block" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunar_sapphire_block.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunar_sapphire_block.json deleted file mode 100644 index f8833b0407..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunar_sapphire_block.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_lunar_sapphire": { - "conditions": { - "items": [ - { - "items": "galacticraft:lunar_sapphire" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:lunar_sapphire_block" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_lunar_sapphire" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:lunar_sapphire_block" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunaslate_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunaslate_slab.json deleted file mode 100644 index d60cfe023c..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunaslate_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_lunaslate": { - "conditions": { - "items": [ - { - "items": "galacticraft:lunaslate" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:lunaslate_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_lunaslate" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:lunaslate_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunaslate_slab_from_lunaslate_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunaslate_slab_from_lunaslate_stonecutting.json deleted file mode 100644 index 7e94686fe0..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunaslate_slab_from_lunaslate_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_lunaslate": { - "conditions": { - "items": [ - { - "items": "galacticraft:lunaslate" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:lunaslate_slab_from_lunaslate_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_lunaslate" - ] - ], - "rewards": { - "recipes": [ - "minecraft:lunaslate_slab_from_lunaslate_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunaslate_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunaslate_stairs.json deleted file mode 100644 index 5595c54431..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunaslate_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_lunaslate": { - "conditions": { - "items": [ - { - "items": "galacticraft:lunaslate" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:lunaslate_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_lunaslate" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:lunaslate_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunaslate_stairs_from_lunaslate_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunaslate_stairs_from_lunaslate_stonecutting.json deleted file mode 100644 index cb832e833b..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunaslate_stairs_from_lunaslate_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_lunaslate": { - "conditions": { - "items": [ - { - "items": "galacticraft:lunaslate" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:lunaslate_stairs_from_lunaslate_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_lunaslate" - ] - ], - "rewards": { - "recipes": [ - "minecraft:lunaslate_stairs_from_lunaslate_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunaslate_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunaslate_wall.json deleted file mode 100644 index 03e9f07a4e..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunaslate_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_lunaslate": { - "conditions": { - "items": [ - { - "items": "galacticraft:lunaslate" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:lunaslate_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_lunaslate" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:lunaslate_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunaslate_wall_from_lunaslate_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunaslate_wall_from_lunaslate_stonecutting.json deleted file mode 100644 index 4f2af536a3..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/lunaslate_wall_from_lunaslate_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_lunaslate": { - "conditions": { - "items": [ - { - "items": "galacticraft:lunaslate" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:lunaslate_wall_from_lunaslate_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_lunaslate" - ] - ], - "rewards": { - "recipes": [ - "minecraft:lunaslate_wall_from_lunaslate_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_cobblestone_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_cobblestone_slab.json deleted file mode 100644 index f2c02dabea..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_cobblestone_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_mars_cobblestone": { - "conditions": { - "items": [ - { - "items": "galacticraft:mars_cobblestone" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:mars_cobblestone_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_mars_cobblestone" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:mars_cobblestone_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_cobblestone_slab_from_mars_cobblestone_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_cobblestone_slab_from_mars_cobblestone_stonecutting.json deleted file mode 100644 index 32b8c4bd3e..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_cobblestone_slab_from_mars_cobblestone_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_mars_cobblestone": { - "conditions": { - "items": [ - { - "items": "galacticraft:mars_cobblestone" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:mars_cobblestone_slab_from_mars_cobblestone_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_mars_cobblestone" - ] - ], - "rewards": { - "recipes": [ - "minecraft:mars_cobblestone_slab_from_mars_cobblestone_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_cobblestone_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_cobblestone_stairs.json deleted file mode 100644 index e19220d840..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_cobblestone_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_mars_cobblestone": { - "conditions": { - "items": [ - { - "items": "galacticraft:mars_cobblestone" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:mars_cobblestone_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_mars_cobblestone" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:mars_cobblestone_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_cobblestone_stairs_from_mars_cobblestone_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_cobblestone_stairs_from_mars_cobblestone_stonecutting.json deleted file mode 100644 index fdecbf488c..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_cobblestone_stairs_from_mars_cobblestone_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_mars_cobblestone": { - "conditions": { - "items": [ - { - "items": "galacticraft:mars_cobblestone" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:mars_cobblestone_stairs_from_mars_cobblestone_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_mars_cobblestone" - ] - ], - "rewards": { - "recipes": [ - "minecraft:mars_cobblestone_stairs_from_mars_cobblestone_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_cobblestone_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_cobblestone_wall.json deleted file mode 100644 index a192c3e2fd..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_cobblestone_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_mars_cobblestone": { - "conditions": { - "items": [ - { - "items": "galacticraft:mars_cobblestone" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:mars_cobblestone_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_mars_cobblestone" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:mars_cobblestone_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_cobblestone_wall_from_mars_cobblestone_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_cobblestone_wall_from_mars_cobblestone_stonecutting.json deleted file mode 100644 index 09e28e48b6..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_cobblestone_wall_from_mars_cobblestone_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_mars_cobblestone": { - "conditions": { - "items": [ - { - "items": "galacticraft:mars_cobblestone" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:mars_cobblestone_wall_from_mars_cobblestone_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_mars_cobblestone" - ] - ], - "rewards": { - "recipes": [ - "minecraft:mars_cobblestone_wall_from_mars_cobblestone_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_stone_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_stone_slab.json deleted file mode 100644 index 54600372f1..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_stone_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_mars_stone": { - "conditions": { - "items": [ - { - "items": "galacticraft:mars_stone" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:mars_stone_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_mars_stone" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:mars_stone_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_stone_slab_from_mars_stone_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_stone_slab_from_mars_stone_stonecutting.json deleted file mode 100644 index 8256c02fa2..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_stone_slab_from_mars_stone_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_mars_stone": { - "conditions": { - "items": [ - { - "items": "galacticraft:mars_stone" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:mars_stone_slab_from_mars_stone_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_mars_stone" - ] - ], - "rewards": { - "recipes": [ - "minecraft:mars_stone_slab_from_mars_stone_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_stone_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_stone_stairs.json deleted file mode 100644 index 16e8d07dbd..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_stone_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_mars_stone": { - "conditions": { - "items": [ - { - "items": "galacticraft:mars_stone" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:mars_stone_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_mars_stone" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:mars_stone_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_stone_stairs_from_mars_stone_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_stone_stairs_from_mars_stone_stonecutting.json deleted file mode 100644 index 9c08bf9cb1..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_stone_stairs_from_mars_stone_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_mars_stone": { - "conditions": { - "items": [ - { - "items": "galacticraft:mars_stone" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:mars_stone_stairs_from_mars_stone_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_mars_stone" - ] - ], - "rewards": { - "recipes": [ - "minecraft:mars_stone_stairs_from_mars_stone_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_stone_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_stone_wall.json deleted file mode 100644 index 5ac3e1601f..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_stone_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_mars_stone": { - "conditions": { - "items": [ - { - "items": "galacticraft:mars_stone" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:mars_stone_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_mars_stone" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:mars_stone_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_stone_wall_from_mars_stone_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_stone_wall_from_mars_stone_stonecutting.json deleted file mode 100644 index 1b9a7ffb94..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/mars_stone_wall_from_mars_stone_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_mars_stone": { - "conditions": { - "items": [ - { - "items": "galacticraft:mars_stone" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:mars_stone_wall_from_mars_stone_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_mars_stone" - ] - ], - "rewards": { - "recipes": [ - "minecraft:mars_stone_wall_from_mars_stone_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_block.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_block.json deleted file mode 100644 index 5cdc2108c5..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_block.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_meteoric_iron_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:meteoric_iron_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:meteoric_iron_block" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_meteoric_iron_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:meteoric_iron_block" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration.json deleted file mode 100644 index 86fdaa40b9..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_meteoric_iron": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_meteoric_iron" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:meteoric_iron_decoration" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_meteoric_iron" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:meteoric_iron_decoration" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration_slab.json deleted file mode 100644 index c985be54bb..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_meteoric_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:meteoric_iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:meteoric_iron_decoration_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_meteoric_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:meteoric_iron_decoration_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration_slab_from_meteoric_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration_slab_from_meteoric_iron_decoration_stonecutting.json deleted file mode 100644 index aaf56c7a68..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration_slab_from_meteoric_iron_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_meteoric_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:meteoric_iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:meteoric_iron_decoration_slab_from_meteoric_iron_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_meteoric_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:meteoric_iron_decoration_slab_from_meteoric_iron_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration_stairs.json deleted file mode 100644 index 5562f72845..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_meteoric_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:meteoric_iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:meteoric_iron_decoration_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_meteoric_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:meteoric_iron_decoration_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration_stairs_from_meteoric_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration_stairs_from_meteoric_iron_decoration_stonecutting.json deleted file mode 100644 index 99a8ff43fe..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration_stairs_from_meteoric_iron_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_meteoric_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:meteoric_iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:meteoric_iron_decoration_stairs_from_meteoric_iron_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_meteoric_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:meteoric_iron_decoration_stairs_from_meteoric_iron_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration_wall.json deleted file mode 100644 index 1fc51b2b6d..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_meteoric_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:meteoric_iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:meteoric_iron_decoration_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_meteoric_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:meteoric_iron_decoration_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration_wall_from_meteoric_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration_wall_from_meteoric_iron_decoration_stonecutting.json deleted file mode 100644 index e402794778..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/meteoric_iron_decoration_wall_from_meteoric_iron_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_meteoric_iron_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:meteoric_iron_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:meteoric_iron_decoration_wall_from_meteoric_iron_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_meteoric_iron_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:meteoric_iron_decoration_wall_from_meteoric_iron_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_brick_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_brick_slab.json deleted file mode 100644 index eea838ea2a..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_brick_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_basalt_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_basalt_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:moon_basalt_brick_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_basalt_brick" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:moon_basalt_brick_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_brick_slab_from_moon_basalt_brick_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_brick_slab_from_moon_basalt_brick_stonecutting.json deleted file mode 100644 index 3e05bc67aa..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_brick_slab_from_moon_basalt_brick_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_basalt_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_basalt_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:moon_basalt_brick_slab_from_moon_basalt_brick_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_basalt_brick" - ] - ], - "rewards": { - "recipes": [ - "minecraft:moon_basalt_brick_slab_from_moon_basalt_brick_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_brick_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_brick_stairs.json deleted file mode 100644 index 85aefb886b..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_brick_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_basalt_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_basalt_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:moon_basalt_brick_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_basalt_brick" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:moon_basalt_brick_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_brick_stairs_from_moon_basalt_brick_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_brick_stairs_from_moon_basalt_brick_stonecutting.json deleted file mode 100644 index 2606ff94ee..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_brick_stairs_from_moon_basalt_brick_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_basalt_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_basalt_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:moon_basalt_brick_stairs_from_moon_basalt_brick_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_basalt_brick" - ] - ], - "rewards": { - "recipes": [ - "minecraft:moon_basalt_brick_stairs_from_moon_basalt_brick_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_brick_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_brick_wall.json deleted file mode 100644 index 39b6dcaab3..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_brick_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_basalt_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_basalt_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:moon_basalt_brick_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_basalt_brick" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:moon_basalt_brick_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_brick_wall_from_moon_basalt_brick_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_brick_wall_from_moon_basalt_brick_stonecutting.json deleted file mode 100644 index fc3f1d593d..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_brick_wall_from_moon_basalt_brick_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_basalt_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_basalt_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:moon_basalt_brick_wall_from_moon_basalt_brick_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_basalt_brick" - ] - ], - "rewards": { - "recipes": [ - "minecraft:moon_basalt_brick_wall_from_moon_basalt_brick_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_slab.json deleted file mode 100644 index 8ce79830d2..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_basalt": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_basalt" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:moon_basalt_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_basalt" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:moon_basalt_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_slab_from_moon_basalt_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_slab_from_moon_basalt_stonecutting.json deleted file mode 100644 index 34b165b35f..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_slab_from_moon_basalt_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_basalt": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_basalt" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:moon_basalt_slab_from_moon_basalt_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_basalt" - ] - ], - "rewards": { - "recipes": [ - "minecraft:moon_basalt_slab_from_moon_basalt_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_stairs.json deleted file mode 100644 index 4f36dcf90e..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_basalt": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_basalt" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:moon_basalt_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_basalt" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:moon_basalt_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_stairs_from_moon_basalt_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_stairs_from_moon_basalt_stonecutting.json deleted file mode 100644 index 9b9e554901..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_stairs_from_moon_basalt_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_basalt": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_basalt" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:moon_basalt_stairs_from_moon_basalt_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_basalt" - ] - ], - "rewards": { - "recipes": [ - "minecraft:moon_basalt_stairs_from_moon_basalt_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_wall.json deleted file mode 100644 index def851bdcc..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_basalt": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_basalt" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:moon_basalt_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_basalt" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:moon_basalt_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_wall_from_moon_basalt_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_wall_from_moon_basalt_stonecutting.json deleted file mode 100644 index 613bdd951b..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_basalt_wall_from_moon_basalt_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_basalt": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_basalt" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:moon_basalt_wall_from_moon_basalt_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_basalt" - ] - ], - "rewards": { - "recipes": [ - "minecraft:moon_basalt_wall_from_moon_basalt_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock.json deleted file mode 100644 index 711cd9acf2..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cobbled_moon_rock": { - "conditions": { - "items": [ - { - "items": "galacticraft:cobbled_moon_rock" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:moon_rock" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cobbled_moon_rock" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:moon_rock" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick.json deleted file mode 100644 index 0463e06440..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:moon_rock_brick" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:moon_rock_brick" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_from_moon_rock_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_from_moon_rock_stonecutting.json deleted file mode 100644 index c2a47d19c0..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_from_moon_rock_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:moon_rock_brick_from_moon_rock_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock" - ] - ], - "rewards": { - "recipes": [ - "minecraft:moon_rock_brick_from_moon_rock_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_slab.json deleted file mode 100644 index f0586edb4a..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:moon_rock_brick_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock_brick" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:moon_rock_brick_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_slab_from_moon_rock_brick_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_slab_from_moon_rock_brick_stonecutting.json deleted file mode 100644 index ef003aa3b3..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_slab_from_moon_rock_brick_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:moon_rock_brick_slab_from_moon_rock_brick_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock_brick" - ] - ], - "rewards": { - "recipes": [ - "minecraft:moon_rock_brick_slab_from_moon_rock_brick_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_stairs.json deleted file mode 100644 index 2dc42be50c..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:moon_rock_brick_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock_brick" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:moon_rock_brick_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_stairs_from_moon_rock_brick_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_stairs_from_moon_rock_brick_stonecutting.json deleted file mode 100644 index 2422cc871a..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_stairs_from_moon_rock_brick_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:moon_rock_brick_stairs_from_moon_rock_brick_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock_brick" - ] - ], - "rewards": { - "recipes": [ - "minecraft:moon_rock_brick_stairs_from_moon_rock_brick_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_wall.json deleted file mode 100644 index 5fc8f3f5fc..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:moon_rock_brick_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock_brick" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:moon_rock_brick_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_wall_from_moon_rock_brick_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_wall_from_moon_rock_brick_stonecutting.json deleted file mode 100644 index ecae2cecd4..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_brick_wall_from_moon_rock_brick_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:moon_rock_brick_wall_from_moon_rock_brick_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock_brick" - ] - ], - "rewards": { - "recipes": [ - "minecraft:moon_rock_brick_wall_from_moon_rock_brick_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_pillar.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_pillar.json deleted file mode 100644 index 27fd9cf083..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_pillar.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:moon_rock_pillar" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:moon_rock_pillar" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_slab.json deleted file mode 100644 index a4500ecd50..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:moon_rock_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:moon_rock_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_slab_from_moon_rock_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_slab_from_moon_rock_stonecutting.json deleted file mode 100644 index 207d5ca65c..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_slab_from_moon_rock_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:moon_rock_slab_from_moon_rock_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock" - ] - ], - "rewards": { - "recipes": [ - "minecraft:moon_rock_slab_from_moon_rock_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_stairs.json deleted file mode 100644 index 4f95f25c30..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:moon_rock_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:moon_rock_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_stairs_from_moon_rock_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_stairs_from_moon_rock_stonecutting.json deleted file mode 100644 index d8a8e31bb6..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_stairs_from_moon_rock_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:moon_rock_stairs_from_moon_rock_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock" - ] - ], - "rewards": { - "recipes": [ - "minecraft:moon_rock_stairs_from_moon_rock_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_wall.json deleted file mode 100644 index 6fef941151..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:moon_rock_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:moon_rock_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_wall_from_moon_rock_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_wall_from_moon_rock_stonecutting.json deleted file mode 100644 index fa60bdb220..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/moon_rock_wall_from_moon_rock_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:moon_rock_wall_from_moon_rock_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock" - ] - ], - "rewards": { - "recipes": [ - "minecraft:moon_rock_wall_from_moon_rock_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock.json deleted file mode 100644 index ae78453b1d..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:polished_moon_rock" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock_brick" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:polished_moon_rock" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_from_moon_rock_brick_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_from_moon_rock_brick_stonecutting.json deleted file mode 100644 index f46bcbb8d4..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_from_moon_rock_brick_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_rock_brick": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_rock_brick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:polished_moon_rock_from_moon_rock_brick_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_rock_brick" - ] - ], - "rewards": { - "recipes": [ - "minecraft:polished_moon_rock_from_moon_rock_brick_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_slab.json deleted file mode 100644 index ead12c7fea..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_polished_moon_rock": { - "conditions": { - "items": [ - { - "items": "galacticraft:polished_moon_rock" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:polished_moon_rock_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_polished_moon_rock" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:polished_moon_rock_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_slab_from_polished_moon_rock_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_slab_from_polished_moon_rock_stonecutting.json deleted file mode 100644 index 8b40bc300c..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_slab_from_polished_moon_rock_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_polished_moon_rock": { - "conditions": { - "items": [ - { - "items": "galacticraft:polished_moon_rock" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:polished_moon_rock_slab_from_polished_moon_rock_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_polished_moon_rock" - ] - ], - "rewards": { - "recipes": [ - "minecraft:polished_moon_rock_slab_from_polished_moon_rock_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_stairs.json deleted file mode 100644 index c228915ade..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_polished_moon_rock": { - "conditions": { - "items": [ - { - "items": "galacticraft:polished_moon_rock" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:polished_moon_rock_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_polished_moon_rock" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:polished_moon_rock_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_stairs_from_polished_moon_rock_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_stairs_from_polished_moon_rock_stonecutting.json deleted file mode 100644 index 89b6338847..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_stairs_from_polished_moon_rock_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_polished_moon_rock": { - "conditions": { - "items": [ - { - "items": "galacticraft:polished_moon_rock" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:polished_moon_rock_stairs_from_polished_moon_rock_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_polished_moon_rock" - ] - ], - "rewards": { - "recipes": [ - "minecraft:polished_moon_rock_stairs_from_polished_moon_rock_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_wall.json deleted file mode 100644 index 34d24626f9..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_polished_moon_rock": { - "conditions": { - "items": [ - { - "items": "galacticraft:polished_moon_rock" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:polished_moon_rock_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_polished_moon_rock" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:polished_moon_rock_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_wall_from_polished_moon_rock_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_wall_from_polished_moon_rock_stonecutting.json deleted file mode 100644 index fea8e47e42..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/polished_moon_rock_wall_from_polished_moon_rock_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_polished_moon_rock": { - "conditions": { - "items": [ - { - "items": "galacticraft:polished_moon_rock" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:polished_moon_rock_wall_from_polished_moon_rock_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_polished_moon_rock" - ] - ], - "rewards": { - "recipes": [ - "minecraft:polished_moon_rock_wall_from_polished_moon_rock_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration.json deleted file mode 100644 index 72b5ece98f..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_steel": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_steel" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:steel_decoration" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_steel" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:steel_decoration" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration_slab.json deleted file mode 100644 index 577c43cc2a..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_steel_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:steel_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:steel_decoration_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_steel_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:steel_decoration_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration_slab_from_steel_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration_slab_from_steel_decoration_stonecutting.json deleted file mode 100644 index 1f21a3f90a..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration_slab_from_steel_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_steel_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:steel_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:steel_decoration_slab_from_steel_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_steel_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:steel_decoration_slab_from_steel_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration_stairs.json deleted file mode 100644 index c0d5b286c5..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_steel_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:steel_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:steel_decoration_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_steel_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:steel_decoration_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration_stairs_from_steel_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration_stairs_from_steel_decoration_stonecutting.json deleted file mode 100644 index 7d745ff115..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration_stairs_from_steel_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_steel_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:steel_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:steel_decoration_stairs_from_steel_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_steel_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:steel_decoration_stairs_from_steel_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration_wall.json deleted file mode 100644 index 421aa606c6..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_steel_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:steel_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:steel_decoration_wall" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_steel_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:steel_decoration_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration_wall_from_steel_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration_wall_from_steel_decoration_stonecutting.json deleted file mode 100644 index fb37508de1..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/steel_decoration_wall_from_steel_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_steel_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:steel_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:steel_decoration_wall_from_steel_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_steel_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:steel_decoration_wall_from_steel_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration.json deleted file mode 100644 index b131d1b5f7..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_tin": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_tin" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:tin_decoration" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_tin" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:tin_decoration" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration_slab.json deleted file mode 100644 index 9bdddb84e3..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:tin_decoration_slab" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_tin_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:tin_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_tin_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:tin_decoration_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration_slab_from_tin_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration_slab_from_tin_decoration_stonecutting.json deleted file mode 100644 index c60a346625..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration_slab_from_tin_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:tin_decoration_slab_from_tin_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_tin_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:tin_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_tin_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:tin_decoration_slab_from_tin_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration_stairs.json deleted file mode 100644 index 8ebb66249d..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:tin_decoration_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_tin_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:tin_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_tin_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:tin_decoration_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration_stairs_from_tin_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration_stairs_from_tin_decoration_stonecutting.json deleted file mode 100644 index 711ca606c8..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration_stairs_from_tin_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:tin_decoration_stairs_from_tin_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_tin_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:tin_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_tin_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:tin_decoration_stairs_from_tin_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration_wall.json deleted file mode 100644 index 3a0c3ed112..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:tin_decoration_wall" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_tin_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:tin_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_tin_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:tin_decoration_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration_wall_from_tin_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration_wall_from_tin_decoration_stonecutting.json deleted file mode 100644 index 1bf8180855..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_decoration_wall_from_tin_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:tin_decoration_wall_from_tin_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_tin_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:tin_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_tin_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:tin_decoration_wall_from_tin_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_ladder.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_ladder.json deleted file mode 100644 index 17bdd2d0f8..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/tin_ladder.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:tin_ladder" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_tin_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:tin_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_tin_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:tin_ladder" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_block.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_block.json deleted file mode 100644 index 99905cf104..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_block.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:titanium_block" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_titanium_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:titanium_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_titanium_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:titanium_block" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration.json deleted file mode 100644 index 2ef5505cd6..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_titanium": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_titanium" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:titanium_decoration" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_titanium" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:titanium_decoration" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration_slab.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration_slab.json deleted file mode 100644 index 7529da73e9..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:titanium_decoration_slab" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_titanium_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:titanium_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_titanium_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:titanium_decoration_slab" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration_slab_from_titanium_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration_slab_from_titanium_decoration_stonecutting.json deleted file mode 100644 index 41044c54e2..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration_slab_from_titanium_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:titanium_decoration_slab_from_titanium_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_titanium_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:titanium_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_titanium_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:titanium_decoration_slab_from_titanium_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration_stairs.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration_stairs.json deleted file mode 100644 index 8f794e493e..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:titanium_decoration_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_titanium_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:titanium_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_titanium_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:titanium_decoration_stairs" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration_stairs_from_titanium_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration_stairs_from_titanium_decoration_stonecutting.json deleted file mode 100644 index 9976411220..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration_stairs_from_titanium_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:titanium_decoration_stairs_from_titanium_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_titanium_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:titanium_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_titanium_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:titanium_decoration_stairs_from_titanium_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration_wall.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration_wall.json deleted file mode 100644 index 36257a1906..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration_wall.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:titanium_decoration_wall" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_titanium_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:titanium_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_titanium_decoration" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:titanium_decoration_wall" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration_wall_from_titanium_decoration_stonecutting.json b/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration_wall_from_titanium_decoration_stonecutting.json deleted file mode 100644 index 391d214347..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/building_blocks/titanium_decoration_wall_from_titanium_decoration_stonecutting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:titanium_decoration_wall_from_titanium_decoration_stonecutting" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_titanium_decoration": { - "conditions": { - "items": [ - { - "items": "galacticraft:titanium_decoration" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_titanium_decoration" - ] - ], - "rewards": { - "recipes": [ - "minecraft:titanium_decoration_wall_from_titanium_decoration_stonecutting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/combat/desh_sword.json b/src/main/generated/data/galacticraft/advancement/recipes/combat/desh_sword.json deleted file mode 100644 index a62a0e8571..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/combat/desh_sword.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:desh_sword" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:desh_sword" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/combat/heavy_duty_boots.json b/src/main/generated/data/galacticraft/advancement/recipes/combat/heavy_duty_boots.json deleted file mode 100644 index 2a9090e0c7..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/combat/heavy_duty_boots.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_heavy_plating": { - "conditions": { - "items": [ - { - "items": "galacticraft:heavy_plating" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:heavy_duty_boots" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_heavy_plating" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:heavy_duty_boots" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/combat/heavy_duty_chestplate.json b/src/main/generated/data/galacticraft/advancement/recipes/combat/heavy_duty_chestplate.json deleted file mode 100644 index fb6170ed63..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/combat/heavy_duty_chestplate.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_heavy_plating": { - "conditions": { - "items": [ - { - "items": "galacticraft:heavy_plating" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:heavy_duty_chestplate" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_heavy_plating" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:heavy_duty_chestplate" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/combat/heavy_duty_helmet.json b/src/main/generated/data/galacticraft/advancement/recipes/combat/heavy_duty_helmet.json deleted file mode 100644 index 6b7ba226c2..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/combat/heavy_duty_helmet.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_heavy_plating": { - "conditions": { - "items": [ - { - "items": "galacticraft:heavy_plating" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:heavy_duty_helmet" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_heavy_plating" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:heavy_duty_helmet" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/combat/heavy_duty_leggings.json b/src/main/generated/data/galacticraft/advancement/recipes/combat/heavy_duty_leggings.json deleted file mode 100644 index 37bfdbadc5..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/combat/heavy_duty_leggings.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_heavy_plating": { - "conditions": { - "items": [ - { - "items": "galacticraft:heavy_plating" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:heavy_duty_leggings" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_heavy_plating" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:heavy_duty_leggings" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/combat/heavy_duty_sword.json b/src/main/generated/data/galacticraft/advancement/recipes/combat/heavy_duty_sword.json deleted file mode 100644 index 49dfac34ec..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/combat/heavy_duty_sword.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_steel": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_steel" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:heavy_duty_sword" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_steel" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:heavy_duty_sword" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/combat/throwable_meteor_chunk.json b/src/main/generated/data/galacticraft/advancement/recipes/combat/throwable_meteor_chunk.json deleted file mode 100644 index a5a58d87be..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/combat/throwable_meteor_chunk.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_raw_meteoric_iron": { - "conditions": { - "items": [ - { - "items": "galacticraft:raw_meteoric_iron" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:throwable_meteor_chunk" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_raw_meteoric_iron" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:throwable_meteor_chunk" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/combat/titanium_boots_smithing.json b/src/main/generated/data/galacticraft/advancement/recipes/combat/titanium_boots_smithing.json deleted file mode 100644 index 4c118cf9af..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/combat/titanium_boots_smithing.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_titanium": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_titanium" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:titanium_boots_smithing" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_titanium" - ] - ], - "rewards": { - "recipes": [ - "minecraft:titanium_boots_smithing" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/combat/titanium_chestplate_smithing.json b/src/main/generated/data/galacticraft/advancement/recipes/combat/titanium_chestplate_smithing.json deleted file mode 100644 index 4e921f4d56..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/combat/titanium_chestplate_smithing.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_titanium": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_titanium" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:titanium_chestplate_smithing" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_titanium" - ] - ], - "rewards": { - "recipes": [ - "minecraft:titanium_chestplate_smithing" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/combat/titanium_helmet_smithing.json b/src/main/generated/data/galacticraft/advancement/recipes/combat/titanium_helmet_smithing.json deleted file mode 100644 index b5c3e61e43..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/combat/titanium_helmet_smithing.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_titanium": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_titanium" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:titanium_helmet_smithing" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_titanium" - ] - ], - "rewards": { - "recipes": [ - "minecraft:titanium_helmet_smithing" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/combat/titanium_leggings_smithing.json b/src/main/generated/data/galacticraft/advancement/recipes/combat/titanium_leggings_smithing.json deleted file mode 100644 index 3500b1bfdf..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/combat/titanium_leggings_smithing.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_titanium": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_titanium" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:titanium_leggings_smithing" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_titanium" - ] - ], - "rewards": { - "recipes": [ - "minecraft:titanium_leggings_smithing" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/combat/titanium_sword_smithing.json b/src/main/generated/data/galacticraft/advancement/recipes/combat/titanium_sword_smithing.json deleted file mode 100644 index c6313a7233..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/combat/titanium_sword_smithing.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_titanium": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_titanium" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:titanium_sword_smithing" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_titanium" - ] - ], - "rewards": { - "recipes": [ - "minecraft:titanium_sword_smithing" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/compressed_aluminum.json b/src/main/generated/data/galacticraft/advancement/recipes/compressed_aluminum.json deleted file mode 100644 index 41caebc6b4..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/compressed_aluminum.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_aluminum_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:aluminum_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:compressed_aluminum" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_aluminum_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:compressed_aluminum" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/compressed_copper.json b/src/main/generated/data/galacticraft/advancement/recipes/compressed_copper.json deleted file mode 100644 index b24cdee16d..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/compressed_copper.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_copper_ingot": { - "conditions": { - "items": [ - { - "items": "#c:ingots/copper" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:compressed_copper" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_copper_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:compressed_copper" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/compressed_desh.json b/src/main/generated/data/galacticraft/advancement/recipes/compressed_desh.json deleted file mode 100644 index 356a77dd42..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/compressed_desh.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:compressed_desh" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:compressed_desh" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/compressed_iron.json b/src/main/generated/data/galacticraft/advancement/recipes/compressed_iron.json deleted file mode 100644 index 53e9497b39..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/compressed_iron.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_iron_ingot": { - "conditions": { - "items": [ - { - "items": "#c:ingots/iron" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:compressed_iron" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_iron_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:compressed_iron" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/compressed_steel.json b/src/main/generated/data/galacticraft/advancement/recipes/compressed_steel.json deleted file mode 100644 index 15b1400990..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/compressed_steel.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_iron": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_iron" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:compressed_steel" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_iron" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:compressed_steel" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/compressed_tin.json b/src/main/generated/data/galacticraft/advancement/recipes/compressed_tin.json deleted file mode 100644 index 536f1cd3e2..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/compressed_tin.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:compressed_tin" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_tin_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:tin_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_tin_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:compressed_tin" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/compressed_titanium.json b/src/main/generated/data/galacticraft/advancement/recipes/compressed_titanium.json deleted file mode 100644 index a6be28463a..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/compressed_titanium.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:compressed_titanium" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_titanium_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:titanium_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_titanium_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:compressed_titanium" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/decorations/dashed_light_panel.json b/src/main/generated/data/galacticraft/advancement/recipes/decorations/dashed_light_panel.json deleted file mode 100644 index a2a9ab9915..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/decorations/dashed_light_panel.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_steel": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_steel" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:dashed_light_panel" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_steel" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:dashed_light_panel" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/decorations/diagonal_light_panel.json b/src/main/generated/data/galacticraft/advancement/recipes/decorations/diagonal_light_panel.json deleted file mode 100644 index 64fb096ae5..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/decorations/diagonal_light_panel.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_steel": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_steel" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:diagonal_light_panel" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_steel" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:diagonal_light_panel" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/decorations/diagonal_light_panel_flipped.json b/src/main/generated/data/galacticraft/advancement/recipes/decorations/diagonal_light_panel_flipped.json deleted file mode 100644 index 12037c7131..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/decorations/diagonal_light_panel_flipped.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_steel": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_steel" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:diagonal_light_panel_flipped" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_steel" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:diagonal_light_panel_flipped" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/decorations/glowstone_lantern.json b/src/main/generated/data/galacticraft/advancement/recipes/decorations/glowstone_lantern.json deleted file mode 100644 index 3401f70702..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/decorations/glowstone_lantern.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_glowstone_torch": { - "conditions": { - "items": [ - { - "items": "galacticraft:glowstone_torch" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:glowstone_lantern" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_glowstone_torch" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:glowstone_lantern" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/decorations/glowstone_torch.json b/src/main/generated/data/galacticraft/advancement/recipes/decorations/glowstone_torch.json deleted file mode 100644 index b0692d9350..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/decorations/glowstone_torch.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_glowstone_dust": { - "conditions": { - "items": [ - { - "items": "minecraft:glowstone_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:glowstone_torch" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_glowstone_dust" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:glowstone_torch" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/decorations/linear_light_panel.json b/src/main/generated/data/galacticraft/advancement/recipes/decorations/linear_light_panel.json deleted file mode 100644 index 0677b5c755..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/decorations/linear_light_panel.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_steel": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_steel" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:linear_light_panel" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_steel" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:linear_light_panel" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/decorations/spotlight_light_panel.json b/src/main/generated/data/galacticraft/advancement/recipes/decorations/spotlight_light_panel.json deleted file mode 100644 index 6306e97165..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/decorations/spotlight_light_panel.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_steel": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_steel" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:spotlight_light_panel" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_steel" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:spotlight_light_panel" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/decorations/square_light_panel.json b/src/main/generated/data/galacticraft/advancement/recipes/decorations/square_light_panel.json deleted file mode 100644 index 5f241db592..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/decorations/square_light_panel.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_steel": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_steel" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:square_light_panel" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_steel" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:square_light_panel" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/decorations/vacuum_glass.json b/src/main/generated/data/galacticraft/advancement/recipes/decorations/vacuum_glass.json deleted file mode 100644 index 1068c6084c..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/decorations/vacuum_glass.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:vacuum_glass" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_tin_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:tin_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_tin_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:vacuum_glass" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/decorations/vacuum_glass_clear.json b/src/main/generated/data/galacticraft/advancement/recipes/decorations/vacuum_glass_clear.json deleted file mode 100644 index 120c041b5c..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/decorations/vacuum_glass_clear.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_aluminum_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:aluminum_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:vacuum_glass_clear" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_aluminum_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:vacuum_glass_clear" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/decorations/vacuum_glass_strong.json b/src/main/generated/data/galacticraft/advancement/recipes/decorations/vacuum_glass_strong.json deleted file mode 100644 index 811a460561..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/decorations/vacuum_glass_strong.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_aluminum": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_aluminum" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:vacuum_glass_strong" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_aluminum" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:vacuum_glass_strong" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/food/beef_patty_from_campfire_cooking.json b/src/main/generated/data/galacticraft/advancement/recipes/food/beef_patty_from_campfire_cooking.json deleted file mode 100644 index 57e25b0271..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/food/beef_patty_from_campfire_cooking.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_ground_beef": { - "conditions": { - "items": [ - { - "items": "galacticraft:ground_beef" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:beef_patty_from_campfire_cooking" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_ground_beef" - ] - ], - "rewards": { - "recipes": [ - "minecraft:beef_patty_from_campfire_cooking" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/food/beef_patty_from_smelting.json b/src/main/generated/data/galacticraft/advancement/recipes/food/beef_patty_from_smelting.json deleted file mode 100644 index aa654762bd..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/food/beef_patty_from_smelting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_ground_beef": { - "conditions": { - "items": [ - { - "items": "galacticraft:ground_beef" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:beef_patty_from_smelting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_ground_beef" - ] - ], - "rewards": { - "recipes": [ - "minecraft:beef_patty_from_smelting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/food/beef_patty_from_smoking.json b/src/main/generated/data/galacticraft/advancement/recipes/food/beef_patty_from_smoking.json deleted file mode 100644 index 269a1a97ff..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/food/beef_patty_from_smoking.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_ground_beef": { - "conditions": { - "items": [ - { - "items": "galacticraft:ground_beef" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:beef_patty_from_smoking" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_ground_beef" - ] - ], - "rewards": { - "recipes": [ - "minecraft:beef_patty_from_smoking" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/food/burger_bun.json b/src/main/generated/data/galacticraft/advancement/recipes/food/burger_bun.json deleted file mode 100644 index 61052c8b0c..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/food/burger_bun.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_egg": { - "conditions": { - "items": [ - { - "items": "minecraft:egg" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:burger_bun" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_egg" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:burger_bun" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/food/cheese_slice.json b/src/main/generated/data/galacticraft/advancement/recipes/food/cheese_slice.json deleted file mode 100644 index 7087ed3bd0..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/food/cheese_slice.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_cheese_block": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_cheese_block" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:cheese_slice" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_cheese_block" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:cheese_slice" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/food/cheeseburger.json b/src/main/generated/data/galacticraft/advancement/recipes/food/cheeseburger.json deleted file mode 100644 index 68cfce93fd..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/food/cheeseburger.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_ground_beef": { - "conditions": { - "items": [ - { - "items": "galacticraft:ground_beef" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:cheeseburger" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_ground_beef" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:cheeseburger" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/food/ground_beef.json b/src/main/generated/data/galacticraft/advancement/recipes/food/ground_beef.json deleted file mode 100644 index 563d0be478..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/food/ground_beef.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_beef": { - "conditions": { - "items": [ - { - "items": "minecraft:beef" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:ground_beef" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_beef" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:ground_beef" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/food/hot_throwable_meteor_chunk_from_blasting.json b/src/main/generated/data/galacticraft/advancement/recipes/food/hot_throwable_meteor_chunk_from_blasting.json deleted file mode 100644 index d419ec0935..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/food/hot_throwable_meteor_chunk_from_blasting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:hot_throwable_meteor_chunk_from_blasting" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_throwable_meteor_chunk": { - "conditions": { - "items": [ - { - "items": "galacticraft:throwable_meteor_chunk" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_throwable_meteor_chunk" - ] - ], - "rewards": { - "recipes": [ - "minecraft:hot_throwable_meteor_chunk_from_blasting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/food/hot_throwable_meteor_chunk_from_smelting.json b/src/main/generated/data/galacticraft/advancement/recipes/food/hot_throwable_meteor_chunk_from_smelting.json deleted file mode 100644 index 7e4b91fe7b..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/food/hot_throwable_meteor_chunk_from_smelting.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:hot_throwable_meteor_chunk_from_smelting" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_throwable_meteor_chunk": { - "conditions": { - "items": [ - { - "items": "galacticraft:throwable_meteor_chunk" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_throwable_meteor_chunk" - ] - ], - "rewards": { - "recipes": [ - "minecraft:hot_throwable_meteor_chunk_from_smelting" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/food/moon_cheese_block.json b/src/main/generated/data/galacticraft/advancement/recipes/food/moon_cheese_block.json deleted file mode 100644 index 94e4fa5348..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/food/moon_cheese_block.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cheese_curd": { - "conditions": { - "items": [ - { - "items": "galacticraft:cheese_curd" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:moon_cheese_block" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cheese_curd" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:moon_cheese_block" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/heavy_plating.json b/src/main/generated/data/galacticraft/advancement/recipes/heavy_plating.json deleted file mode 100644 index 6eeed5ce30..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/heavy_plating.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_bronze": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_bronze" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:heavy_plating" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_bronze" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:heavy_plating" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/heavy_plating_flipped.json b/src/main/generated/data/galacticraft/advancement/recipes/heavy_plating_flipped.json deleted file mode 100644 index 9de0964457..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/heavy_plating_flipped.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_bronze": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_bronze" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:heavy_plating_flipped" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_bronze" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:heavy_plating_flipped" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/heavy_plating_t2.json b/src/main/generated/data/galacticraft/advancement/recipes/heavy_plating_t2.json deleted file mode 100644 index f69af287e7..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/heavy_plating_t2.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_meteoric_iron": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_meteoric_iron" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:heavy_plating_t2" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_meteoric_iron" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:heavy_plating_t2" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/heavy_plating_t3.json b/src/main/generated/data/galacticraft/advancement/recipes/heavy_plating_t3.json deleted file mode 100644 index 7647deeca4..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/heavy_plating_t3.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_meteoric_iron": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_meteoric_iron" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:heavy_plating_t3" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_meteoric_iron" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:heavy_plating_t3" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/advanced_solar_panel.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/advanced_solar_panel.json deleted file mode 100644 index f04465f47b..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/advanced_solar_panel.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_advanced_wafer": { - "conditions": { - "items": [ - { - "items": "galacticraft:advanced_wafer" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:advanced_solar_panel" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_advanced_wafer" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:advanced_solar_panel" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_blasting_aluminum_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_blasting_aluminum_ore.json deleted file mode 100644 index 8a9a58697a..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_blasting_aluminum_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_aluminum_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:aluminum_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:aluminum_ingot_from_blasting_aluminum_ore" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_aluminum_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:aluminum_ingot_from_blasting_aluminum_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_blasting_deepslate_aluminum_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_blasting_deepslate_aluminum_ore.json deleted file mode 100644 index 3511eb82b5..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_blasting_deepslate_aluminum_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_deepslate_aluminum_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:deepslate_aluminum_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:aluminum_ingot_from_blasting_deepslate_aluminum_ore" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_deepslate_aluminum_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:aluminum_ingot_from_blasting_deepslate_aluminum_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_blasting_raw_aluminum.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_blasting_raw_aluminum.json deleted file mode 100644 index 299f569bc8..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_blasting_raw_aluminum.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_raw_aluminum": { - "conditions": { - "items": [ - { - "items": "galacticraft:raw_aluminum" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:aluminum_ingot_from_blasting_raw_aluminum" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_raw_aluminum" - ] - ], - "rewards": { - "recipes": [ - "minecraft:aluminum_ingot_from_blasting_raw_aluminum" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_nuggets.json deleted file mode 100644 index 09a14aa12d..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_nuggets.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_aluminum_nugget": { - "conditions": { - "items": [ - { - "items": "galacticraft:aluminum_nugget" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:aluminum_ingot_from_nuggets" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_aluminum_nugget" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:aluminum_ingot_from_nuggets" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_smelting_aluminum_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_smelting_aluminum_ore.json deleted file mode 100644 index fd30401f11..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_smelting_aluminum_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_aluminum_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:aluminum_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:aluminum_ingot_from_smelting_aluminum_ore" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_aluminum_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:aluminum_ingot_from_smelting_aluminum_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_smelting_deepslate_aluminum_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_smelting_deepslate_aluminum_ore.json deleted file mode 100644 index 9ae3da8ab8..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_smelting_deepslate_aluminum_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_deepslate_aluminum_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:deepslate_aluminum_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:aluminum_ingot_from_smelting_deepslate_aluminum_ore" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_deepslate_aluminum_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:aluminum_ingot_from_smelting_deepslate_aluminum_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_smelting_raw_aluminum.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_smelting_raw_aluminum.json deleted file mode 100644 index b879f49779..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_ingot_from_smelting_raw_aluminum.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_raw_aluminum": { - "conditions": { - "items": [ - { - "items": "galacticraft:raw_aluminum" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:aluminum_ingot_from_smelting_raw_aluminum" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_raw_aluminum" - ] - ], - "rewards": { - "recipes": [ - "minecraft:aluminum_ingot_from_smelting_raw_aluminum" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_nugget.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_nugget.json deleted file mode 100644 index cda59bdd33..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_nugget.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_aluminum_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:aluminum_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:aluminum_nugget" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_aluminum_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:aluminum_nugget" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_wire.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_wire.json deleted file mode 100644 index 50fe433c3a..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/aluminum_wire.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_glass_pane": { - "conditions": { - "items": [ - { - "items": "minecraft:glass_pane" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:aluminum_wire" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_glass_pane" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:aluminum_wire" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/ambient_thermal_controller.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/ambient_thermal_controller.json deleted file mode 100644 index d1374508ad..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/ambient_thermal_controller.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_oxygen_vent": { - "conditions": { - "items": [ - { - "items": "galacticraft:oxygen_vent" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:ambient_thermal_controller" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_oxygen_vent" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:ambient_thermal_controller" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/atmospheric_valve.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/atmospheric_valve.json deleted file mode 100644 index 628187c85c..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/atmospheric_valve.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:atmospheric_valve" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:atmospheric_valve" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/basic_solar_panel.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/basic_solar_panel.json deleted file mode 100644 index d9bc0a0ec2..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/basic_solar_panel.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_basic_wafer": { - "conditions": { - "items": [ - { - "items": "galacticraft:basic_wafer" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:basic_solar_panel" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_basic_wafer" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:basic_solar_panel" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/battery.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/battery.json deleted file mode 100644 index f96b6c469c..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/battery.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_tin": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_tin" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:battery" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_tin" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:battery" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/beam_core.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/beam_core.json deleted file mode 100644 index d9267f5f22..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/beam_core.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_iron": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_iron" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:beam_core" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_iron" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:beam_core" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/black_parachute.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/black_parachute.json deleted file mode 100644 index 03e8f24d35..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/black_parachute.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_black_dye": { - "conditions": { - "items": [ - { - "items": "galacticraft:white_parachute" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:black_parachute" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_black_dye" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:black_parachute" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/blue_parachute.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/blue_parachute.json deleted file mode 100644 index 2c239856bc..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/blue_parachute.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_blue_dye": { - "conditions": { - "items": [ - { - "items": "galacticraft:white_parachute" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:blue_parachute" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_blue_dye" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:blue_parachute" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/brown_parachute.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/brown_parachute.json deleted file mode 100644 index 9b2bbdd1f1..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/brown_parachute.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_brown_dye": { - "conditions": { - "items": [ - { - "items": "galacticraft:white_parachute" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:brown_parachute" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_brown_dye" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:brown_parachute" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/canvas.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/canvas.json deleted file mode 100644 index 65f0f44d7e..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/canvas.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_string": { - "conditions": { - "items": [ - { - "items": "minecraft:string" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:canvas" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_string" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:canvas" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/carbon_fragments_from_charcoal.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/carbon_fragments_from_charcoal.json deleted file mode 100644 index f3ea202aa0..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/carbon_fragments_from_charcoal.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_charcoal": { - "conditions": { - "items": [ - { - "items": "minecraft:charcoal" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:carbon_fragments_from_charcoal" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_charcoal" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:carbon_fragments_from_charcoal" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/carbon_fragments_from_coal.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/carbon_fragments_from_coal.json deleted file mode 100644 index 69f653df41..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/carbon_fragments_from_coal.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_coal": { - "conditions": { - "items": [ - { - "items": "#c:coal" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:carbon_fragments_from_coal" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_coal" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:carbon_fragments_from_coal" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/carbon_fragments_from_smelting_planks.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/carbon_fragments_from_smelting_planks.json deleted file mode 100644 index b9ed0409be..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/carbon_fragments_from_smelting_planks.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_planks": { - "conditions": { - "items": [ - { - "items": "#minecraft:planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:carbon_fragments_from_smelting_planks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_planks" - ] - ], - "rewards": { - "recipes": [ - "minecraft:carbon_fragments_from_smelting_planks" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/circuit_fabricator.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/circuit_fabricator.json deleted file mode 100644 index d0ea2d72db..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/circuit_fabricator.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_aluminum_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:aluminum_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:circuit_fabricator" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_aluminum_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:circuit_fabricator" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/coal_generator.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/coal_generator.json deleted file mode 100644 index 38e0334f17..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/coal_generator.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_aluminum_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:aluminum_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:coal_generator" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_aluminum_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:coal_generator" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/compressor.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/compressor.json deleted file mode 100644 index 7a99acff28..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/compressor.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_aluminum_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:aluminum_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:compressor" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_aluminum_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:compressor" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/copper_canister.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/copper_canister.json deleted file mode 100644 index 647062e0cf..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/copper_canister.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_copper_ingot": { - "conditions": { - "items": [ - { - "items": "minecraft:copper_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:copper_canister" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_copper_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:copper_canister" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/copper_ingot_from_blasting_lunaslate_copper_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/copper_ingot_from_blasting_lunaslate_copper_ore.json deleted file mode 100644 index 27acdad6c7..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/copper_ingot_from_blasting_lunaslate_copper_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_lunaslate_copper_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:lunaslate_copper_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:copper_ingot_from_blasting_lunaslate_copper_ore" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_lunaslate_copper_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:copper_ingot_from_blasting_lunaslate_copper_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/copper_ingot_from_blasting_moon_copper_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/copper_ingot_from_blasting_moon_copper_ore.json deleted file mode 100644 index e0aaeee18b..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/copper_ingot_from_blasting_moon_copper_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_copper_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_copper_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:copper_ingot_from_blasting_moon_copper_ore" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_copper_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:copper_ingot_from_blasting_moon_copper_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/copper_ingot_from_smelting_lunaslate_copper_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/copper_ingot_from_smelting_lunaslate_copper_ore.json deleted file mode 100644 index cb829509ea..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/copper_ingot_from_smelting_lunaslate_copper_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_lunaslate_copper_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:lunaslate_copper_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:copper_ingot_from_smelting_lunaslate_copper_ore" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_lunaslate_copper_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:copper_ingot_from_smelting_lunaslate_copper_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/copper_ingot_from_smelting_moon_copper_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/copper_ingot_from_smelting_moon_copper_ore.json deleted file mode 100644 index 866f138012..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/copper_ingot_from_smelting_moon_copper_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_copper_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_copper_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:copper_ingot_from_smelting_moon_copper_ore" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_copper_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:copper_ingot_from_smelting_moon_copper_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/cyan_parachute.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/cyan_parachute.json deleted file mode 100644 index e5592fa325..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/cyan_parachute.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cyan_dye": { - "conditions": { - "items": [ - { - "items": "galacticraft:white_parachute" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:cyan_parachute" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_cyan_dye" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:cyan_parachute" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_boots.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_boots.json deleted file mode 100644 index d5ba682ec2..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_boots.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:desh_boots" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:desh_boots" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_chestplate.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_chestplate.json deleted file mode 100644 index 405f2a0f5d..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_chestplate.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:desh_chestplate" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:desh_chestplate" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_helmet.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_helmet.json deleted file mode 100644 index 1ac2f0fdb7..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_helmet.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:desh_helmet" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:desh_helmet" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_ingot_from_blasting_desh_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_ingot_from_blasting_desh_ore.json deleted file mode 100644 index ce72566c9a..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_ingot_from_blasting_desh_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:desh_ingot_from_blasting_desh_ore" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:desh_ingot_from_blasting_desh_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_ingot_from_blasting_raw_desh.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_ingot_from_blasting_raw_desh.json deleted file mode 100644 index 5ce05eb6d7..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_ingot_from_blasting_raw_desh.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_raw_desh": { - "conditions": { - "items": [ - { - "items": "galacticraft:raw_desh" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:desh_ingot_from_blasting_raw_desh" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_raw_desh" - ] - ], - "rewards": { - "recipes": [ - "minecraft:desh_ingot_from_blasting_raw_desh" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_ingot_from_block.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_ingot_from_block.json deleted file mode 100644 index 881ff68501..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_ingot_from_block.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_block": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_block" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:desh_ingot_from_block" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_block" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:desh_ingot_from_block" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_ingot_from_nuggets.json deleted file mode 100644 index e9c1a71d7f..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_ingot_from_nuggets.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_nugget": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_nugget" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:desh_ingot_from_nuggets" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_nugget" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:desh_ingot_from_nuggets" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_ingot_from_smelting_desh_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_ingot_from_smelting_desh_ore.json deleted file mode 100644 index 086463d4ac..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_ingot_from_smelting_desh_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:desh_ingot_from_smelting_desh_ore" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:desh_ingot_from_smelting_desh_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_ingot_from_smelting_raw_desh.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_ingot_from_smelting_raw_desh.json deleted file mode 100644 index 9069f5ef9a..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_ingot_from_smelting_raw_desh.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_raw_desh": { - "conditions": { - "items": [ - { - "items": "galacticraft:raw_desh" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:desh_ingot_from_smelting_raw_desh" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_raw_desh" - ] - ], - "rewards": { - "recipes": [ - "minecraft:desh_ingot_from_smelting_raw_desh" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_leggings.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_leggings.json deleted file mode 100644 index 31b485f6b4..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_leggings.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:desh_leggings" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:desh_leggings" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_nugget.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_nugget.json deleted file mode 100644 index 4c89c23144..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_nugget.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:desh_nugget" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:desh_nugget" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_stick.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_stick.json deleted file mode 100644 index b1db94004b..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/desh_stick.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_stick": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_stick" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:desh_stick" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_stick" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:desh_stick" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/electric_arc_furnace.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/electric_arc_furnace.json deleted file mode 100644 index 0c3de13727..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/electric_arc_furnace.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_advanced_wafer": { - "conditions": { - "items": [ - { - "items": "galacticraft:advanced_wafer" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:electric_arc_furnace" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_advanced_wafer" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:electric_arc_furnace" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/electric_compressor.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/electric_compressor.json deleted file mode 100644 index 4c7746d5a5..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/electric_compressor.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_aluminum_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:aluminum_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:electric_compressor" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_aluminum_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:electric_compressor" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/electric_compressor_upgrade.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/electric_compressor_upgrade.json deleted file mode 100644 index 8cd1621fec..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/electric_compressor_upgrade.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_aluminum_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:aluminum_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:electric_compressor_upgrade" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_aluminum_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:electric_compressor_upgrade" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/electric_furnace.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/electric_furnace.json deleted file mode 100644 index 02d7f70136..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/electric_furnace.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_basic_wafer": { - "conditions": { - "items": [ - { - "items": "galacticraft:basic_wafer" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:electric_furnace" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_basic_wafer" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:electric_furnace" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/energy_storage_module.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/energy_storage_module.json deleted file mode 100644 index dd95863cd2..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/energy_storage_module.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_battery": { - "conditions": { - "items": [ - { - "items": "galacticraft:battery" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:energy_storage_module" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_battery" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:energy_storage_module" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/fluid_manipulator.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/fluid_manipulator.json deleted file mode 100644 index cd9c3da9e2..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/fluid_manipulator.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_meteoric_iron_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:meteoric_iron_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:fluid_manipulator" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_meteoric_iron_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:fluid_manipulator" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/fluid_pipe_walkway.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/fluid_pipe_walkway.json deleted file mode 100644 index 6ee36b617d..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/fluid_pipe_walkway.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:fluid_pipe_walkway" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_walkway": { - "conditions": { - "items": [ - { - "items": "galacticraft:walkway" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_walkway" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:fluid_pipe_walkway" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/fluid_pipe_walkway_shapeless.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/fluid_pipe_walkway_shapeless.json deleted file mode 100644 index 702efe0560..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/fluid_pipe_walkway_shapeless.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:fluid_pipe_walkway_shapeless" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_walkway": { - "conditions": { - "items": [ - { - "items": "galacticraft:walkway" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_walkway" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:fluid_pipe_walkway_shapeless" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/food_canner.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/food_canner.json deleted file mode 100644 index ecf8d58c85..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/food_canner.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_oxygen_concentrator": { - "conditions": { - "items": [ - { -<<<<<<<< HEAD:src/main/generated/data/galacticraft/advancement/recipes/misc/food_canner.json - "items": [ - "galacticraft:oxygen_concentrator" - ] -======== - "items": "galacticraft:tin_canister" ->>>>>>>> upstream/main:src/main/generated/data/galacticraft/advancement/recipes/food/canned_beef.json - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:food_canner" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_oxygen_concentrator" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:food_canner" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/frequency_module.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/frequency_module.json deleted file mode 100644 index 69fbdd65a9..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/frequency_module.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_aluminum": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_aluminum" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:frequency_module" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_aluminum" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:frequency_module" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/fuel_loader.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/fuel_loader.json deleted file mode 100644 index 71c66c2774..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/fuel_loader.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_fuel_bucket": { - "conditions": { - "items": [ - { - "items": "galacticraft:fuel_bucket" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:fuel_loader" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_fuel_bucket" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:fuel_loader" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/full_solar_panel.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/full_solar_panel.json deleted file mode 100644 index 17296d153a..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/full_solar_panel.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_single_solar_module": { - "conditions": { - "items": [ - { - "items": "galacticraft:single_solar_module" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:full_solar_panel" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_single_solar_module" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:full_solar_panel" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/glass_fluid_pipe.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/glass_fluid_pipe.json deleted file mode 100644 index 72ddaa4193..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/glass_fluid_pipe.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_glass_pane": { - "conditions": { - "items": [ - { - "items": "minecraft:glass_pane" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:glass_fluid_pipe" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_glass_pane" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:glass_fluid_pipe" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/gray_parachute.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/gray_parachute.json deleted file mode 100644 index b12a04688c..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/gray_parachute.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_gray_dye": { - "conditions": { - "items": [ - { - "items": "galacticraft:white_parachute" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:gray_parachute" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_gray_dye" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:gray_parachute" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/green_parachute.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/green_parachute.json deleted file mode 100644 index 34b80be474..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/green_parachute.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_green_dye": { - "conditions": { - "items": [ - { - "items": "galacticraft:white_parachute" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:green_parachute" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_green_dye" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:green_parachute" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/iron_ingot_from_blasting_iron_shard.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/iron_ingot_from_blasting_iron_shard.json deleted file mode 100644 index f1eec292f9..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/iron_ingot_from_blasting_iron_shard.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_iron_shard": { - "conditions": { - "items": [ - { - "items": "galacticraft:iron_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:iron_ingot_from_blasting_iron_shard" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_iron_shard" - ] - ], - "rewards": { - "recipes": [ - "minecraft:iron_ingot_from_blasting_iron_shard" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/iron_ingot_from_smelting_iron_shard.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/iron_ingot_from_smelting_iron_shard.json deleted file mode 100644 index 82944d893a..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/iron_ingot_from_smelting_iron_shard.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_iron_shard": { - "conditions": { - "items": [ - { - "items": "galacticraft:iron_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:iron_ingot_from_smelting_iron_shard" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_iron_shard" - ] - ], - "rewards": { - "recipes": [ - "minecraft:iron_ingot_from_smelting_iron_shard" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/isothermal_fabric.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/isothermal_fabric.json deleted file mode 100644 index d0481a9dcb..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/isothermal_fabric.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:isothermal_fabric" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:isothermal_fabric" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/large_oxygen_tank.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/large_oxygen_tank.json deleted file mode 100644 index bbf9f48440..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/large_oxygen_tank.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:large_oxygen_tank" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_tin_canister": { - "conditions": { - "items": [ - { - "items": "galacticraft:tin_canister" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_tin_canister" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:large_oxygen_tank" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_ingot_from_blasting_galena_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_ingot_from_blasting_galena_ore.json deleted file mode 100644 index ee3d9416c9..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_ingot_from_blasting_galena_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_galena_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:galena_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:lead_ingot_from_blasting_galena_ore" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_galena_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:lead_ingot_from_blasting_galena_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_ingot_from_blasting_raw_lead.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_ingot_from_blasting_raw_lead.json deleted file mode 100644 index 7c36eaa0f7..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_ingot_from_blasting_raw_lead.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_raw_lead": { - "conditions": { - "items": [ - { - "items": "galacticraft:raw_lead" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:lead_ingot_from_blasting_raw_lead" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_raw_lead" - ] - ], - "rewards": { - "recipes": [ - "minecraft:lead_ingot_from_blasting_raw_lead" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_ingot_from_block.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_ingot_from_block.json deleted file mode 100644 index 9bced11944..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_ingot_from_block.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_lead_block": { - "conditions": { - "items": [ - { - "items": "galacticraft:lead_block" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:lead_ingot_from_block" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_lead_block" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:lead_ingot_from_block" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_ingot_from_nuggets.json deleted file mode 100644 index 3596b34b35..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_ingot_from_nuggets.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_lead_nugget": { - "conditions": { - "items": [ - { - "items": "galacticraft:lead_nugget" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:lead_ingot_from_nuggets" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_lead_nugget" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:lead_ingot_from_nuggets" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_ingot_from_smelting_galena_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_ingot_from_smelting_galena_ore.json deleted file mode 100644 index d98780531e..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_ingot_from_smelting_galena_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_galena_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:galena_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:lead_ingot_from_smelting_galena_ore" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_galena_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:lead_ingot_from_smelting_galena_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_ingot_from_smelting_raw_lead.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_ingot_from_smelting_raw_lead.json deleted file mode 100644 index 348724daf0..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_ingot_from_smelting_raw_lead.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_raw_lead": { - "conditions": { - "items": [ - { - "items": "galacticraft:raw_lead" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:lead_ingot_from_smelting_raw_lead" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_raw_lead" - ] - ], - "rewards": { - "recipes": [ - "minecraft:lead_ingot_from_smelting_raw_lead" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_nugget.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_nugget.json deleted file mode 100644 index e774211ba5..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/lead_nugget.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_lead_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:lead_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:lead_nugget" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_lead_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:lead_nugget" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/light_blue_parachute.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/light_blue_parachute.json deleted file mode 100644 index 809bf1f825..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/light_blue_parachute.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_light_blue_dye": { - "conditions": { - "items": [ - { - "items": "galacticraft:white_parachute" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:light_blue_parachute" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_light_blue_dye" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:light_blue_parachute" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/light_gray_parachute.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/light_gray_parachute.json deleted file mode 100644 index d25fb65ee4..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/light_gray_parachute.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_light_gray_dye": { - "conditions": { - "items": [ - { - "items": "galacticraft:white_parachute" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:light_gray_parachute" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_light_gray_dye" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:light_gray_parachute" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/lime_parachute.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/lime_parachute.json deleted file mode 100644 index de809f49f2..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/lime_parachute.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_lime_dye": { - "conditions": { - "items": [ - { - "items": "galacticraft:white_parachute" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:lime_parachute" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_lime_dye" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:lime_parachute" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/lunar_sapphire_from_block.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/lunar_sapphire_from_block.json deleted file mode 100644 index 5a16ad80da..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/lunar_sapphire_from_block.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_lunar_sapphire_block": { - "conditions": { - "items": [ - { - "items": "galacticraft:lunar_sapphire_block" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:lunar_sapphire_from_block" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_lunar_sapphire_block" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:lunar_sapphire_from_block" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/magenta_parachute.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/magenta_parachute.json deleted file mode 100644 index d729eca046..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/magenta_parachute.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_magenta_dye": { - "conditions": { - "items": [ - { - "items": "galacticraft:white_parachute" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:magenta_parachute" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_magenta_dye" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:magenta_parachute" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/medium_oxygen_tank.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/medium_oxygen_tank.json deleted file mode 100644 index 7bdd488389..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/medium_oxygen_tank.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:medium_oxygen_tank" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_tin_canister": { - "conditions": { - "items": [ - { - "items": "galacticraft:tin_canister" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_tin_canister" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:medium_oxygen_tank" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/meteoric_iron_ingot_from_blasting_raw_meteoric_iron.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/meteoric_iron_ingot_from_blasting_raw_meteoric_iron.json deleted file mode 100644 index 9b76b635f7..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/meteoric_iron_ingot_from_blasting_raw_meteoric_iron.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_raw_meteoric_iron": { - "conditions": { - "items": [ - { - "items": "galacticraft:raw_meteoric_iron" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:meteoric_iron_ingot_from_blasting_raw_meteoric_iron" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_raw_meteoric_iron" - ] - ], - "rewards": { - "recipes": [ - "minecraft:meteoric_iron_ingot_from_blasting_raw_meteoric_iron" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/meteoric_iron_ingot_from_block.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/meteoric_iron_ingot_from_block.json deleted file mode 100644 index 11b6f17231..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/meteoric_iron_ingot_from_block.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_meteoric_iron_block": { - "conditions": { - "items": [ - { - "items": "galacticraft:meteoric_iron_block" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:meteoric_iron_ingot_from_block" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_meteoric_iron_block" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:meteoric_iron_ingot_from_block" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/meteoric_iron_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/meteoric_iron_ingot_from_nuggets.json deleted file mode 100644 index ac46074fe3..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/meteoric_iron_ingot_from_nuggets.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_meteoric_iron_nugget": { - "conditions": { - "items": [ - { - "items": "galacticraft:meteoric_iron_nugget" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:meteoric_iron_ingot_from_nuggets" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_meteoric_iron_nugget" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:meteoric_iron_ingot_from_nuggets" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/meteoric_iron_ingot_from_smelting_raw_meteoric_iron.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/meteoric_iron_ingot_from_smelting_raw_meteoric_iron.json deleted file mode 100644 index ba6ae18356..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/meteoric_iron_ingot_from_smelting_raw_meteoric_iron.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_raw_meteoric_iron": { - "conditions": { - "items": [ - { - "items": "galacticraft:raw_meteoric_iron" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:meteoric_iron_ingot_from_smelting_raw_meteoric_iron" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_raw_meteoric_iron" - ] - ], - "rewards": { - "recipes": [ - "minecraft:meteoric_iron_ingot_from_smelting_raw_meteoric_iron" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/meteoric_iron_nugget.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/meteoric_iron_nugget.json deleted file mode 100644 index 51b1191aa2..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/meteoric_iron_nugget.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_meteoric_iron_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:meteoric_iron_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:meteoric_iron_nugget" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_meteoric_iron_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:meteoric_iron_nugget" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/nose_cone.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/nose_cone.json deleted file mode 100644 index 1e80d2ef6c..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/nose_cone.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_heavy_plating": { - "conditions": { - "items": [ - { - "items": "galacticraft:heavy_plating" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:nose_cone" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_heavy_plating" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:nose_cone" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/olivine_block_from_shards.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/olivine_block_from_shards.json deleted file mode 100644 index 351e23f164..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/olivine_block_from_shards.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_olivine_shard": { - "conditions": { - "items": [ - { - "items": "galacticraft:olivine_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:olivine_block_from_shards" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_olivine_shard" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:olivine_block_from_shards" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/orange_parachute.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/orange_parachute.json deleted file mode 100644 index 894e2eb22b..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/orange_parachute.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_orange_dye": { - "conditions": { - "items": [ - { - "items": "galacticraft:white_parachute" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:orange_parachute" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_orange_dye" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:orange_parachute" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/orion_drive.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/orion_drive.json deleted file mode 100644 index cbeebbf6c7..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/orion_drive.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_ilmenite_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:ilmenite_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:orion_drive" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_ilmenite_ore" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:orion_drive" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_bubble_distributor.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_bubble_distributor.json deleted file mode 100644 index 47500505f8..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_bubble_distributor.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_steel": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_steel" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:oxygen_bubble_distributor" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_steel" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:oxygen_bubble_distributor" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_collector.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_collector.json deleted file mode 100644 index de1577c0d0..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_collector.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_oxygen_concentrator": { - "conditions": { - "items": [ - { - "items": "galacticraft:oxygen_concentrator" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:oxygen_collector" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_oxygen_concentrator" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:oxygen_collector" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_compressor.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_compressor.json deleted file mode 100644 index 2a035804f5..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_compressor.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_oxygen_concentrator": { - "conditions": { - "items": [ - { - "items": "galacticraft:oxygen_concentrator" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:oxygen_compressor" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_oxygen_concentrator" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:oxygen_compressor" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_concentrator.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_concentrator.json deleted file mode 100644 index d6f71120c9..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_concentrator.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_oxygen_vent": { - "conditions": { - "items": [ - { - "items": "galacticraft:oxygen_vent" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:oxygen_concentrator" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_oxygen_vent" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:oxygen_concentrator" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_decompressor.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_decompressor.json deleted file mode 100644 index 78be25a662..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_decompressor.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_oxygen_concentrator": { - "conditions": { - "items": [ - { - "items": "galacticraft:oxygen_concentrator" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:oxygen_decompressor" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_oxygen_concentrator" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:oxygen_decompressor" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_fan.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_fan.json deleted file mode 100644 index 30ae2fdaf4..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_fan.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_basic_wafer": { - "conditions": { - "items": [ - { - "items": "galacticraft:basic_wafer" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:oxygen_fan" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_basic_wafer" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:oxygen_fan" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_gear.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_gear.json deleted file mode 100644 index e17d8ff088..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_gear.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_glass_fluid_pipe": { - "conditions": { - "items": [ - { - "items": "galacticraft:glass_fluid_pipe" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:oxygen_gear" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_glass_fluid_pipe" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:oxygen_gear" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_mask.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_mask.json deleted file mode 100644 index 49d3afccf7..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_mask.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_glass_pane": { - "conditions": { - "items": [ - { - "items": "minecraft:glass_pane" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:oxygen_mask" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_glass_pane" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:oxygen_mask" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_sealer.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_sealer.json deleted file mode 100644 index ca7b4c6501..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_sealer.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_oxygen_fan": { - "conditions": { - "items": [ - { - "items": "galacticraft:oxygen_fan" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:oxygen_sealer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_oxygen_fan" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:oxygen_sealer" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_storage_module.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_storage_module.json deleted file mode 100644 index 71d669fe76..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_storage_module.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_large_oxygen_tank": { - "conditions": { - "items": [ - { - "items": "galacticraft:large_oxygen_tank" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:oxygen_storage_module" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_large_oxygen_tank" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:oxygen_storage_module" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_vent.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_vent.json deleted file mode 100644 index be08e91944..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/oxygen_vent.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_tin": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_tin" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:oxygen_vent" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_tin" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:oxygen_vent" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/pink_parachute.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/pink_parachute.json deleted file mode 100644 index 0e5cb63101..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/pink_parachute.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_pink_dye": { - "conditions": { - "items": [ - { - "items": "galacticraft:white_parachute" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:pink_parachute" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_pink_dye" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:pink_parachute" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/purple_parachute.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/purple_parachute.json deleted file mode 100644 index 0f6a93290b..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/purple_parachute.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_purple_dye": { - "conditions": { - "items": [ - { - "items": "galacticraft:white_parachute" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:purple_parachute" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_purple_dye" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:purple_parachute" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/red_parachute.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/red_parachute.json deleted file mode 100644 index c718e12a4b..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/red_parachute.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_red_dye": { - "conditions": { - "items": [ - { - "items": "galacticraft:white_parachute" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:red_parachute" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_red_dye" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:red_parachute" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/refinery.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/refinery.json deleted file mode 100644 index 0294e39c42..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/refinery.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_crude_oil_bucket": { - "conditions": { - "items": [ - { - "items": "galacticraft:crude_oil_bucket" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:refinery" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_crude_oil_bucket" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:refinery" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/rocket_engine.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/rocket_engine.json deleted file mode 100644 index 89a3a6189f..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/rocket_engine.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_heavy_plating": { - "conditions": { - "items": [ - { - "items": "galacticraft:heavy_plating" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:rocket_engine" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_heavy_plating" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:rocket_engine" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/rocket_fin.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/rocket_fin.json deleted file mode 100644 index 9412a1bf27..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/rocket_fin.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_heavy_plating": { - "conditions": { - "items": [ - { - "items": "galacticraft:heavy_plating" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:rocket_fin" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_heavy_plating" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:rocket_fin" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/rocket_workbench.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/rocket_workbench.json deleted file mode 100644 index f7011cbe32..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/rocket_workbench.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_advanced_wafer": { - "conditions": { - "items": [ - { - "items": "galacticraft:advanced_wafer" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:rocket_workbench" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_advanced_wafer" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:rocket_workbench" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/sealable_aluminum_wire.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/sealable_aluminum_wire.json deleted file mode 100644 index a4892b4785..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/sealable_aluminum_wire.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_aluminum_wire": { - "conditions": { - "items": [ - { - "items": "galacticraft:aluminum_wire" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:sealable_aluminum_wire" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_aluminum_wire" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:sealable_aluminum_wire" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/sensor_glasses.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/sensor_glasses.json deleted file mode 100644 index 74a910714a..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/sensor_glasses.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_sensor_lens": { - "conditions": { - "items": [ - { - "items": "galacticraft:sensor_lens" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:sensor_glasses" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_sensor_lens" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:sensor_glasses" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/sensor_lens.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/sensor_lens.json deleted file mode 100644 index 1e5b041393..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/sensor_lens.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_meteoric_iron": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_meteoric_iron" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:sensor_lens" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_meteoric_iron" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:sensor_lens" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/single_solar_module.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/single_solar_module.json deleted file mode 100644 index 5b5830cad9..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/single_solar_module.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_solar_array_wafer": { - "conditions": { - "items": [ - { - "items": "galacticraft:solar_array_wafer" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:single_solar_module" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_solar_array_wafer" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:single_solar_module" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/small_oxygen_tank.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/small_oxygen_tank.json deleted file mode 100644 index 5e4a73e8f1..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/small_oxygen_tank.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:small_oxygen_tank" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_tin_canister": { - "conditions": { - "items": [ - { - "items": "galacticraft:tin_canister" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_tin_canister" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:small_oxygen_tank" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/standard_wrench.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/standard_wrench.json deleted file mode 100644 index 090981fa5a..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/standard_wrench.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_steel": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_steel" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:standard_wrench" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_steel" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:standard_wrench" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/steel_pole.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/steel_pole.json deleted file mode 100644 index 3d82694e7b..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/steel_pole.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_steel": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_steel" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:steel_pole" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_steel" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:steel_pole" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/thermal_cloth.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/thermal_cloth.json deleted file mode 100644 index 18da7fee1d..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/thermal_cloth.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:thermal_cloth" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_wool": { - "conditions": { - "items": [ - { - "items": "#minecraft:wool" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_wool" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:thermal_cloth" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/thermal_padding_boots.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/thermal_padding_boots.json deleted file mode 100644 index 47ad3f25a1..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/thermal_padding_boots.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:thermal_padding_boots" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_thermal_cloth": { - "conditions": { - "items": [ - { - "items": "galacticraft:thermal_cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_thermal_cloth" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:thermal_padding_boots" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/thermal_padding_chestpiece.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/thermal_padding_chestpiece.json deleted file mode 100644 index 2f7b2bda81..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/thermal_padding_chestpiece.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:thermal_padding_chestpiece" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_thermal_cloth": { - "conditions": { - "items": [ - { - "items": "galacticraft:thermal_cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_thermal_cloth" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:thermal_padding_chestpiece" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/thermal_padding_helmet.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/thermal_padding_helmet.json deleted file mode 100644 index b9cf018948..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/thermal_padding_helmet.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:thermal_padding_helmet" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_thermal_cloth": { - "conditions": { - "items": [ - { - "items": "galacticraft:thermal_cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_thermal_cloth" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:thermal_padding_helmet" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/thermal_padding_leggings.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/thermal_padding_leggings.json deleted file mode 100644 index 057f34822d..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/thermal_padding_leggings.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:thermal_padding_leggings" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_thermal_cloth": { - "conditions": { - "items": [ - { - "items": "galacticraft:thermal_cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_thermal_cloth" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:thermal_padding_leggings" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_canister.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_canister.json deleted file mode 100644 index 978d878324..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_canister.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:tin_canister" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_tin_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:tin_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_tin_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:tin_canister" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_blasting_deepslate_tin_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_blasting_deepslate_tin_ore.json deleted file mode 100644 index 9024aaf15a..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_blasting_deepslate_tin_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_deepslate_tin_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:deepslate_tin_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:tin_ingot_from_blasting_deepslate_tin_ore" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_deepslate_tin_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:tin_ingot_from_blasting_deepslate_tin_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_blasting_moon_tin_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_blasting_moon_tin_ore.json deleted file mode 100644 index c5fefe1d1a..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_blasting_moon_tin_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_tin_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_tin_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:tin_ingot_from_blasting_moon_tin_ore" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_tin_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:tin_ingot_from_blasting_moon_tin_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_blasting_raw_tin.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_blasting_raw_tin.json deleted file mode 100644 index 891a36c23e..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_blasting_raw_tin.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_raw_tin": { - "conditions": { - "items": [ - { - "items": "galacticraft:raw_tin" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:tin_ingot_from_blasting_raw_tin" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_raw_tin" - ] - ], - "rewards": { - "recipes": [ - "minecraft:tin_ingot_from_blasting_raw_tin" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_blasting_tin_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_blasting_tin_ore.json deleted file mode 100644 index 914c125c09..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_blasting_tin_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:tin_ingot_from_blasting_tin_ore" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_tin_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:tin_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_tin_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:tin_ingot_from_blasting_tin_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_nuggets.json deleted file mode 100644 index 1ebafe3a20..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_nuggets.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:tin_ingot_from_nuggets" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_tin_nugget": { - "conditions": { - "items": [ - { - "items": "galacticraft:tin_nugget" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_tin_nugget" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:tin_ingot_from_nuggets" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_smelting_deepslate_tin_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_smelting_deepslate_tin_ore.json deleted file mode 100644 index c392e48d65..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_smelting_deepslate_tin_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_deepslate_tin_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:deepslate_tin_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:tin_ingot_from_smelting_deepslate_tin_ore" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_deepslate_tin_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:tin_ingot_from_smelting_deepslate_tin_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_smelting_moon_tin_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_smelting_moon_tin_ore.json deleted file mode 100644 index c1a09a2ad6..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_smelting_moon_tin_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_moon_tin_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:moon_tin_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:tin_ingot_from_smelting_moon_tin_ore" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_moon_tin_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:tin_ingot_from_smelting_moon_tin_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_smelting_raw_tin.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_smelting_raw_tin.json deleted file mode 100644 index b900869af2..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_smelting_raw_tin.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_raw_tin": { - "conditions": { - "items": [ - { - "items": "galacticraft:raw_tin" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:tin_ingot_from_smelting_raw_tin" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_raw_tin" - ] - ], - "rewards": { - "recipes": [ - "minecraft:tin_ingot_from_smelting_raw_tin" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_smelting_tin_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_smelting_tin_ore.json deleted file mode 100644 index 78e36dc930..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_ingot_from_smelting_tin_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:tin_ingot_from_smelting_tin_ore" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_tin_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:tin_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_tin_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:tin_ingot_from_smelting_tin_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_nugget.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_nugget.json deleted file mode 100644 index 93a91128a4..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/tin_nugget.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:tin_nugget" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_tin_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:tin_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_tin_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:tin_nugget" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_ingot_from_blasting_ilmenite_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_ingot_from_blasting_ilmenite_ore.json deleted file mode 100644 index 64b963e8cf..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_ingot_from_blasting_ilmenite_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_ilmenite_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:ilmenite_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:titanium_ingot_from_blasting_ilmenite_ore" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_ilmenite_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:titanium_ingot_from_blasting_ilmenite_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_ingot_from_blasting_raw_titanium.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_ingot_from_blasting_raw_titanium.json deleted file mode 100644 index e416b841d4..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_ingot_from_blasting_raw_titanium.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_raw_titanium": { - "conditions": { - "items": [ - { - "items": "galacticraft:raw_titanium" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:titanium_ingot_from_blasting_raw_titanium" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_raw_titanium" - ] - ], - "rewards": { - "recipes": [ - "minecraft:titanium_ingot_from_blasting_raw_titanium" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_ingot_from_block.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_ingot_from_block.json deleted file mode 100644 index 68e6b1e5b8..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_ingot_from_block.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:titanium_ingot_from_block" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_titanium_block": { - "conditions": { - "items": [ - { - "items": "galacticraft:titanium_block" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_titanium_block" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:titanium_ingot_from_block" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_ingot_from_nuggets.json deleted file mode 100644 index a8d5e1811d..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_ingot_from_nuggets.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:titanium_ingot_from_nuggets" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_titanium_nugget": { - "conditions": { - "items": [ - { - "items": "galacticraft:titanium_nugget" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_titanium_nugget" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:titanium_ingot_from_nuggets" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_ingot_from_smelting_ilmenite_ore.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_ingot_from_smelting_ilmenite_ore.json deleted file mode 100644 index 5ffddf7836..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_ingot_from_smelting_ilmenite_ore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_ilmenite_ore": { - "conditions": { - "items": [ - { - "items": "galacticraft:ilmenite_ore" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:titanium_ingot_from_smelting_ilmenite_ore" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_ilmenite_ore" - ] - ], - "rewards": { - "recipes": [ - "minecraft:titanium_ingot_from_smelting_ilmenite_ore" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_ingot_from_smelting_raw_titanium.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_ingot_from_smelting_raw_titanium.json deleted file mode 100644 index 0b49ba3a92..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_ingot_from_smelting_raw_titanium.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_raw_titanium": { - "conditions": { - "items": [ - { - "items": "galacticraft:raw_titanium" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:titanium_ingot_from_smelting_raw_titanium" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_raw_titanium" - ] - ], - "rewards": { - "recipes": [ - "minecraft:titanium_ingot_from_smelting_raw_titanium" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_nugget.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_nugget.json deleted file mode 100644 index 4141df3414..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/titanium_nugget.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:titanium_nugget" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_titanium_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:titanium_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_titanium_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:titanium_nugget" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/walkway.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/walkway.json deleted file mode 100644 index 48111576c2..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/walkway.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_titanium": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_titanium" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:walkway" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_titanium" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:walkway" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/white_parachute.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/white_parachute.json deleted file mode 100644 index 825377fd1a..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/white_parachute.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_canvas": { - "conditions": { - "items": [ - { - "items": "galacticraft:canvas" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:white_parachute" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_canvas" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:white_parachute" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/wire_walkway.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/wire_walkway.json deleted file mode 100644 index 52f8a8bfeb..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/wire_walkway.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:wire_walkway" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_walkway": { - "conditions": { - "items": [ - { - "items": "galacticraft:walkway" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_walkway" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:wire_walkway" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/wire_walkway_shapeless.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/wire_walkway_shapeless.json deleted file mode 100644 index aae6dc460d..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/wire_walkway_shapeless.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:wire_walkway_shapeless" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_walkway": { - "conditions": { - "items": [ - { - "items": "galacticraft:walkway" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_walkway" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:wire_walkway_shapeless" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/misc/yellow_parachute.json b/src/main/generated/data/galacticraft/advancement/recipes/misc/yellow_parachute.json deleted file mode 100644 index 08062f8dd0..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/misc/yellow_parachute.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:yellow_parachute" - }, - "trigger": "minecraft:recipe_unlocked" - }, - "has_yellow_dye": { - "conditions": { - "items": [ - { - "items": "galacticraft:white_parachute" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_yellow_dye" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:yellow_parachute" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/tools/desh_axe.json b/src/main/generated/data/galacticraft/advancement/recipes/tools/desh_axe.json deleted file mode 100644 index 11ec2b8423..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/tools/desh_axe.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:desh_axe" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:desh_axe" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/tools/desh_axe_flipped.json b/src/main/generated/data/galacticraft/advancement/recipes/tools/desh_axe_flipped.json deleted file mode 100644 index d83aba7a06..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/tools/desh_axe_flipped.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:desh_axe_flipped" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:desh_axe_flipped" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/tools/desh_hoe.json b/src/main/generated/data/galacticraft/advancement/recipes/tools/desh_hoe.json deleted file mode 100644 index 7d83543932..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/tools/desh_hoe.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:desh_hoe" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:desh_hoe" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/tools/desh_hoe_flipped.json b/src/main/generated/data/galacticraft/advancement/recipes/tools/desh_hoe_flipped.json deleted file mode 100644 index 31f7091cdb..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/tools/desh_hoe_flipped.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:desh_hoe_flipped" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:desh_hoe_flipped" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/tools/desh_pickaxe.json b/src/main/generated/data/galacticraft/advancement/recipes/tools/desh_pickaxe.json deleted file mode 100644 index 7576228489..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/tools/desh_pickaxe.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:desh_pickaxe" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:desh_pickaxe" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/tools/desh_shovel.json b/src/main/generated/data/galacticraft/advancement/recipes/tools/desh_shovel.json deleted file mode 100644 index 1b8429bed4..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/tools/desh_shovel.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_desh_ingot": { - "conditions": { - "items": [ - { - "items": "galacticraft:desh_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:desh_shovel" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_desh_ingot" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:desh_shovel" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/tools/heavy_duty_axe.json b/src/main/generated/data/galacticraft/advancement/recipes/tools/heavy_duty_axe.json deleted file mode 100644 index b70e4d6721..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/tools/heavy_duty_axe.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_steel": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_steel" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:heavy_duty_axe" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_steel" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:heavy_duty_axe" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/tools/heavy_duty_axe_flipped.json b/src/main/generated/data/galacticraft/advancement/recipes/tools/heavy_duty_axe_flipped.json deleted file mode 100644 index 2a4419dd84..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/tools/heavy_duty_axe_flipped.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_steel": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_steel" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:heavy_duty_axe_flipped" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_steel" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:heavy_duty_axe_flipped" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/tools/heavy_duty_hoe.json b/src/main/generated/data/galacticraft/advancement/recipes/tools/heavy_duty_hoe.json deleted file mode 100644 index fa7109dddb..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/tools/heavy_duty_hoe.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_steel": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_steel" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:heavy_duty_hoe" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_steel" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:heavy_duty_hoe" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/tools/heavy_duty_hoe_flipped.json b/src/main/generated/data/galacticraft/advancement/recipes/tools/heavy_duty_hoe_flipped.json deleted file mode 100644 index 93a072c7cf..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/tools/heavy_duty_hoe_flipped.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_steel": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_steel" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:heavy_duty_hoe_flipped" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_steel" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:heavy_duty_hoe_flipped" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/tools/heavy_duty_pickaxe.json b/src/main/generated/data/galacticraft/advancement/recipes/tools/heavy_duty_pickaxe.json deleted file mode 100644 index 08fdb95777..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/tools/heavy_duty_pickaxe.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_steel": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_steel" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:heavy_duty_pickaxe" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_steel" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:heavy_duty_pickaxe" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/tools/heavy_duty_shovel.json b/src/main/generated/data/galacticraft/advancement/recipes/tools/heavy_duty_shovel.json deleted file mode 100644 index 5704159302..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/tools/heavy_duty_shovel.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_steel": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_steel" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:heavy_duty_shovel" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_steel" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:heavy_duty_shovel" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/tools/titanium_axe_smithing.json b/src/main/generated/data/galacticraft/advancement/recipes/tools/titanium_axe_smithing.json deleted file mode 100644 index d72925d29d..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/tools/titanium_axe_smithing.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_titanium": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_titanium" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:titanium_axe_smithing" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_titanium" - ] - ], - "rewards": { - "recipes": [ - "minecraft:titanium_axe_smithing" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/tools/titanium_hoe_smithing.json b/src/main/generated/data/galacticraft/advancement/recipes/tools/titanium_hoe_smithing.json deleted file mode 100644 index 7cb2f3e230..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/tools/titanium_hoe_smithing.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_titanium": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_titanium" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:titanium_hoe_smithing" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_titanium" - ] - ], - "rewards": { - "recipes": [ - "minecraft:titanium_hoe_smithing" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/tools/titanium_pickaxe_smithing.json b/src/main/generated/data/galacticraft/advancement/recipes/tools/titanium_pickaxe_smithing.json deleted file mode 100644 index ffe5c948e9..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/tools/titanium_pickaxe_smithing.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_titanium": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_titanium" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:titanium_pickaxe_smithing" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_titanium" - ] - ], - "rewards": { - "recipes": [ - "minecraft:titanium_pickaxe_smithing" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/tools/titanium_shovel_smithing.json b/src/main/generated/data/galacticraft/advancement/recipes/tools/titanium_shovel_smithing.json deleted file mode 100644 index d5d08cfb7f..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/tools/titanium_shovel_smithing.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_titanium": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_titanium" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "minecraft:titanium_shovel_smithing" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_titanium" - ] - ], - "rewards": { - "recipes": [ - "minecraft:titanium_shovel_smithing" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/transportation/fueling_pad.json b/src/main/generated/data/galacticraft/advancement/recipes/transportation/fueling_pad.json deleted file mode 100644 index 7ce57161d0..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/transportation/fueling_pad.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_compressed_steel": { - "conditions": { - "items": [ - { - "items": "galacticraft:compressed_steel" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:fueling_pad" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_compressed_steel" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:fueling_pad" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/transportation/rocket_launch_pad.json b/src/main/generated/data/galacticraft/advancement/recipes/transportation/rocket_launch_pad.json deleted file mode 100644 index 69b116ef42..0000000000 --- a/src/main/generated/data/galacticraft/advancement/recipes/transportation/rocket_launch_pad.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_iron_block": { - "conditions": { - "items": [ - { - "items": "minecraft:iron_block" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "galacticraft:rocket_launch_pad" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_iron_block" - ] - ], - "rewards": { - "recipes": [ - "galacticraft:rocket_launch_pad" - ] - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/advanced_wafer.json b/src/main/generated/data/galacticraft/advancements/recipes/advanced_wafer.json similarity index 100% rename from src/main/generated/data/galacticraft/advancement/recipes/advanced_wafer.json rename to src/main/generated/data/galacticraft/advancements/recipes/advanced_wafer.json diff --git a/src/main/generated/data/galacticraft/advancement/recipes/basic_wafer.json b/src/main/generated/data/galacticraft/advancements/recipes/basic_wafer.json similarity index 100% rename from src/main/generated/data/galacticraft/advancement/recipes/basic_wafer.json rename to src/main/generated/data/galacticraft/advancements/recipes/basic_wafer.json diff --git a/src/main/generated/data/galacticraft/advancement/recipes/blue_solar_wafer.json b/src/main/generated/data/galacticraft/advancements/recipes/blue_solar_wafer.json similarity index 100% rename from src/main/generated/data/galacticraft/advancement/recipes/blue_solar_wafer.json rename to src/main/generated/data/galacticraft/advancements/recipes/blue_solar_wafer.json diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/aluminum_decoration.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/aluminum_decoration.json new file mode 100644 index 0000000000..326dbccfac --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/aluminum_decoration.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_aluminum": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_aluminum" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:aluminum_decoration" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_aluminum" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:aluminum_decoration" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/aluminum_decoration_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/aluminum_decoration_slab.json new file mode 100644 index 0000000000..5da42f29ac --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/aluminum_decoration_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_aluminum_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:aluminum_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:aluminum_decoration_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_aluminum_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:aluminum_decoration_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/aluminum_decoration_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/aluminum_decoration_stairs.json new file mode 100644 index 0000000000..5af224e4e8 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/aluminum_decoration_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_aluminum_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:aluminum_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:aluminum_decoration_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_aluminum_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:aluminum_decoration_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/aluminum_decoration_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/aluminum_decoration_wall.json new file mode 100644 index 0000000000..141cc9b010 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/aluminum_decoration_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_aluminum_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:aluminum_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:aluminum_decoration_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_aluminum_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:aluminum_decoration_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/bronze_decoration.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/bronze_decoration.json new file mode 100644 index 0000000000..292a11a2b1 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/bronze_decoration.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_bronze": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_bronze" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:bronze_decoration" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_bronze" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:bronze_decoration" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/bronze_decoration_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/bronze_decoration_slab.json new file mode 100644 index 0000000000..e4c1e75d35 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/bronze_decoration_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_bronze_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:bronze_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:bronze_decoration_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_bronze_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:bronze_decoration_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/bronze_decoration_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/bronze_decoration_stairs.json new file mode 100644 index 0000000000..ea8273c1e5 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/bronze_decoration_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_bronze_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:bronze_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:bronze_decoration_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_bronze_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:bronze_decoration_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/bronze_decoration_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/bronze_decoration_wall.json new file mode 100644 index 0000000000..609ef2d30d --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/bronze_decoration_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_bronze_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:bronze_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:bronze_decoration_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_bronze_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:bronze_decoration_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/cobbled_lunaslate_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/cobbled_lunaslate_slab.json new file mode 100644 index 0000000000..68ca547f16 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/cobbled_lunaslate_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cobbled_lunaslate": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:cobbled_lunaslate" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:cobbled_lunaslate_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_cobbled_lunaslate" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:cobbled_lunaslate_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/cobbled_lunaslate_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/cobbled_lunaslate_stairs.json new file mode 100644 index 0000000000..06b03c4009 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/cobbled_lunaslate_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cobbled_lunaslate": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:cobbled_lunaslate" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:cobbled_lunaslate_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_cobbled_lunaslate" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:cobbled_lunaslate_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/cobbled_lunaslate_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/cobbled_lunaslate_wall.json new file mode 100644 index 0000000000..3eb74e5a45 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/cobbled_lunaslate_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cobbled_lunaslate": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:cobbled_lunaslate" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:cobbled_lunaslate_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_cobbled_lunaslate" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:cobbled_lunaslate_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/copper_decoration.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/copper_decoration.json new file mode 100644 index 0000000000..302784f1d4 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/copper_decoration.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_copper": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_copper" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:copper_decoration" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_copper" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:copper_decoration" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/copper_decoration_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/copper_decoration_slab.json new file mode 100644 index 0000000000..443bd0ec26 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/copper_decoration_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_copper_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:copper_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:copper_decoration_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_copper_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:copper_decoration_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/copper_decoration_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/copper_decoration_stairs.json new file mode 100644 index 0000000000..30a3ad402a --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/copper_decoration_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_copper_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:copper_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:copper_decoration_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_copper_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:copper_decoration_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/copper_decoration_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/copper_decoration_wall.json new file mode 100644 index 0000000000..f3a509ffc9 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/copper_decoration_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_copper_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:copper_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:copper_decoration_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_copper_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:copper_decoration_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/cracked_moon_basalt_brick_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/cracked_moon_basalt_brick_slab.json new file mode 100644 index 0000000000..ae060e541c --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/cracked_moon_basalt_brick_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cracked_moon_basalt_brick": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:cracked_moon_basalt_brick" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:cracked_moon_basalt_brick_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_cracked_moon_basalt_brick" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:cracked_moon_basalt_brick_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/cracked_moon_basalt_brick_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/cracked_moon_basalt_brick_stairs.json new file mode 100644 index 0000000000..71965a29b7 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/cracked_moon_basalt_brick_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cracked_moon_basalt_brick": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:cracked_moon_basalt_brick" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:cracked_moon_basalt_brick_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_cracked_moon_basalt_brick" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:cracked_moon_basalt_brick_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/cracked_moon_basalt_brick_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/cracked_moon_basalt_brick_wall.json new file mode 100644 index 0000000000..5aca373761 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/cracked_moon_basalt_brick_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cracked_moon_basalt_brick": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:cracked_moon_basalt_brick" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:cracked_moon_basalt_brick_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_cracked_moon_basalt_brick" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:cracked_moon_basalt_brick_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/dark_decoration_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/dark_decoration_slab.json new file mode 100644 index 0000000000..35e65054ae --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/dark_decoration_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_dark_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:dark_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:dark_decoration_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_dark_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:dark_decoration_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/dark_decoration_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/dark_decoration_stairs.json new file mode 100644 index 0000000000..d43a3d2311 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/dark_decoration_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_dark_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:dark_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:dark_decoration_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_dark_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:dark_decoration_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/dark_decoration_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/dark_decoration_wall.json new file mode 100644 index 0000000000..de6de01ab3 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/dark_decoration_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_dark_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:dark_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:dark_decoration_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_dark_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:dark_decoration_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/desh_block.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/desh_block.json new file mode 100644 index 0000000000..3e6d8140ca --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/desh_block.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:desh_block" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:desh_block" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_aluminum_decoration.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_aluminum_decoration.json new file mode 100644 index 0000000000..0dbe3994b0 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_aluminum_decoration.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_aluminum": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_aluminum" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_aluminum_decoration" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_aluminum" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_aluminum_decoration" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_aluminum_decoration_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_aluminum_decoration_slab.json new file mode 100644 index 0000000000..38004141e6 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_aluminum_decoration_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_aluminum_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_aluminum_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_aluminum_decoration_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_aluminum_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_aluminum_decoration_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_aluminum_decoration_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_aluminum_decoration_stairs.json new file mode 100644 index 0000000000..d25c806852 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_aluminum_decoration_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_aluminum_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_aluminum_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_aluminum_decoration_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_aluminum_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_aluminum_decoration_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_aluminum_decoration_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_aluminum_decoration_wall.json new file mode 100644 index 0000000000..18c0c0a0f9 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_aluminum_decoration_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_aluminum_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_aluminum_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_aluminum_decoration_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_aluminum_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_aluminum_decoration_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_bronze_decoration.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_bronze_decoration.json new file mode 100644 index 0000000000..7dbab4b190 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_bronze_decoration.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_bronze": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_bronze" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_bronze_decoration" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_bronze" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_bronze_decoration" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_bronze_decoration_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_bronze_decoration_slab.json new file mode 100644 index 0000000000..f7ba53a379 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_bronze_decoration_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_bronze_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_bronze_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_bronze_decoration_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_bronze_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_bronze_decoration_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_bronze_decoration_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_bronze_decoration_stairs.json new file mode 100644 index 0000000000..2410c160d6 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_bronze_decoration_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_bronze_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_bronze_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_bronze_decoration_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_bronze_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_bronze_decoration_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_bronze_decoration_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_bronze_decoration_wall.json new file mode 100644 index 0000000000..1c96b9b6da --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_bronze_decoration_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_bronze_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_bronze_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_bronze_decoration_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_bronze_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_bronze_decoration_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_copper_decoration.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_copper_decoration.json new file mode 100644 index 0000000000..02fbade9cf --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_copper_decoration.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_copper": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_copper" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_copper_decoration" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_copper" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_copper_decoration" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_copper_decoration_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_copper_decoration_slab.json new file mode 100644 index 0000000000..73e5168628 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_copper_decoration_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_copper_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_copper_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_copper_decoration_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_copper_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_copper_decoration_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_copper_decoration_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_copper_decoration_stairs.json new file mode 100644 index 0000000000..5612b948fa --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_copper_decoration_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_copper_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_copper_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_copper_decoration_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_copper_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_copper_decoration_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_copper_decoration_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_copper_decoration_wall.json new file mode 100644 index 0000000000..149cbfa3ef --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_copper_decoration_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_copper_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_copper_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_copper_decoration_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_copper_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_copper_decoration_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_dark_decoration_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_dark_decoration_slab.json new file mode 100644 index 0000000000..b98fc71847 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_dark_decoration_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_dark_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_dark_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_dark_decoration_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_dark_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_dark_decoration_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_dark_decoration_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_dark_decoration_stairs.json new file mode 100644 index 0000000000..8d1d276cbd --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_dark_decoration_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_dark_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_dark_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_dark_decoration_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_dark_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_dark_decoration_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_dark_decoration_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_dark_decoration_wall.json new file mode 100644 index 0000000000..48529fbfd9 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_dark_decoration_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_dark_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_dark_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_dark_decoration_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_dark_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_dark_decoration_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_iron_decoration.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_iron_decoration.json new file mode 100644 index 0000000000..cf25230236 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_iron_decoration.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_iron": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_iron" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_iron_decoration" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_iron" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_iron_decoration" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_iron_decoration_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_iron_decoration_slab.json new file mode 100644 index 0000000000..ac83c4f1a2 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_iron_decoration_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_iron_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_iron_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_iron_decoration_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_iron_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_iron_decoration_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_iron_decoration_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_iron_decoration_stairs.json new file mode 100644 index 0000000000..8e839acc4b --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_iron_decoration_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_iron_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_iron_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_iron_decoration_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_iron_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_iron_decoration_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_iron_decoration_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_iron_decoration_wall.json new file mode 100644 index 0000000000..3bbad60622 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_iron_decoration_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_iron_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_iron_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_iron_decoration_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_iron_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_iron_decoration_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_meteoric_iron_decoration.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_meteoric_iron_decoration.json new file mode 100644 index 0000000000..f98020223c --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_meteoric_iron_decoration.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_meteoric_iron": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_meteoric_iron" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_meteoric_iron_decoration" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_meteoric_iron" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_meteoric_iron_decoration" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_meteoric_iron_decoration_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_meteoric_iron_decoration_slab.json new file mode 100644 index 0000000000..93dc96ed61 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_meteoric_iron_decoration_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_meteoric_iron_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_meteoric_iron_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_meteoric_iron_decoration_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_meteoric_iron_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_meteoric_iron_decoration_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_meteoric_iron_decoration_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_meteoric_iron_decoration_stairs.json new file mode 100644 index 0000000000..bbb50f5f10 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_meteoric_iron_decoration_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_meteoric_iron_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_meteoric_iron_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_meteoric_iron_decoration_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_meteoric_iron_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_meteoric_iron_decoration_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_meteoric_iron_decoration_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_meteoric_iron_decoration_wall.json new file mode 100644 index 0000000000..f6c73a2235 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_meteoric_iron_decoration_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_meteoric_iron_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_meteoric_iron_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_meteoric_iron_decoration_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_meteoric_iron_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_meteoric_iron_decoration_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_steel_decoration.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_steel_decoration.json new file mode 100644 index 0000000000..8839bd823d --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_steel_decoration.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_steel": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_steel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_steel_decoration" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_steel" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_steel_decoration" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_steel_decoration_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_steel_decoration_slab.json new file mode 100644 index 0000000000..c31ce6fdb3 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_steel_decoration_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_steel_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_steel_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_steel_decoration_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_steel_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_steel_decoration_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_steel_decoration_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_steel_decoration_stairs.json new file mode 100644 index 0000000000..007829b076 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_steel_decoration_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_steel_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_steel_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_steel_decoration_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_steel_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_steel_decoration_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_steel_decoration_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_steel_decoration_wall.json new file mode 100644 index 0000000000..3d6022607f --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_steel_decoration_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_steel_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_steel_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_steel_decoration_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_steel_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_steel_decoration_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_tin_decoration.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_tin_decoration.json new file mode 100644 index 0000000000..b578184635 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_tin_decoration.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_tin": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_tin" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_tin_decoration" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_tin" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_tin_decoration" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_tin_decoration_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_tin_decoration_slab.json new file mode 100644 index 0000000000..41512054f6 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_tin_decoration_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_tin_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_tin_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_tin_decoration_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_tin_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_tin_decoration_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_tin_decoration_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_tin_decoration_stairs.json new file mode 100644 index 0000000000..73eba3c488 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_tin_decoration_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_tin_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_tin_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_tin_decoration_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_tin_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_tin_decoration_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_tin_decoration_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_tin_decoration_wall.json new file mode 100644 index 0000000000..46a5f91ae1 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_tin_decoration_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_tin_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_tin_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_tin_decoration_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_tin_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_tin_decoration_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_titanium_decoration.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_titanium_decoration.json new file mode 100644 index 0000000000..8501041a91 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_titanium_decoration.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_titanium": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_titanium" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_titanium_decoration" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_titanium" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_titanium_decoration" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_titanium_decoration_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_titanium_decoration_slab.json new file mode 100644 index 0000000000..853aa27e84 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_titanium_decoration_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_titanium_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_titanium_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_titanium_decoration_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_titanium_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_titanium_decoration_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_titanium_decoration_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_titanium_decoration_stairs.json new file mode 100644 index 0000000000..7b49fab88f --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_titanium_decoration_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_titanium_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_titanium_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_titanium_decoration_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_titanium_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_titanium_decoration_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_titanium_decoration_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_titanium_decoration_wall.json new file mode 100644 index 0000000000..4fcecea1d1 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/detailed_titanium_decoration_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_detailed_titanium_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:detailed_titanium_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:detailed_titanium_decoration_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_detailed_titanium_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:detailed_titanium_decoration_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/grating.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/grating.json new file mode 100644 index 0000000000..01d8ddec7c --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/grating.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_iron_bars": { + "conditions": { + "items": [ + { + "items": [ + "minecraft:iron_bars" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:grating" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_iron_bars" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:grating" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/iron_decoration.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/iron_decoration.json new file mode 100644 index 0000000000..89ad0ac1b1 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/iron_decoration.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_iron": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_iron" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:iron_decoration" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_iron" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:iron_decoration" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/iron_decoration_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/iron_decoration_slab.json new file mode 100644 index 0000000000..4aed5764c8 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/iron_decoration_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_iron_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:iron_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:iron_decoration_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_iron_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:iron_decoration_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/iron_decoration_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/iron_decoration_stairs.json new file mode 100644 index 0000000000..436466b989 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/iron_decoration_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_iron_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:iron_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:iron_decoration_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_iron_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:iron_decoration_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/iron_decoration_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/iron_decoration_wall.json new file mode 100644 index 0000000000..f920d7e5f9 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/iron_decoration_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_iron_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:iron_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:iron_decoration_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_iron_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:iron_decoration_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/lead_block.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/lead_block.json new file mode 100644 index 0000000000..d40ce0c4c8 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/lead_block.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_lead_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:lead_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:lead_block" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_lead_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:lead_block" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/lunar_sapphire_block.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/lunar_sapphire_block.json new file mode 100644 index 0000000000..e2191e67af --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/lunar_sapphire_block.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_lunar_sapphire": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:lunar_sapphire" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:lunar_sapphire_block" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_lunar_sapphire" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:lunar_sapphire_block" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/lunaslate_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/lunaslate_slab.json new file mode 100644 index 0000000000..12e40c6c74 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/lunaslate_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_lunaslate": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:lunaslate" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:lunaslate_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_lunaslate" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:lunaslate_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/lunaslate_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/lunaslate_stairs.json new file mode 100644 index 0000000000..6e5581bdfc --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/lunaslate_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_lunaslate": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:lunaslate" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:lunaslate_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_lunaslate" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:lunaslate_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/lunaslate_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/lunaslate_wall.json new file mode 100644 index 0000000000..def8fa83ca --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/lunaslate_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_lunaslate": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:lunaslate" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:lunaslate_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_lunaslate" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:lunaslate_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/mars_cobblestone_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/mars_cobblestone_slab.json new file mode 100644 index 0000000000..e9d3a3c233 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/mars_cobblestone_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_mars_cobblestone": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:mars_cobblestone" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:mars_cobblestone_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_mars_cobblestone" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:mars_cobblestone_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/mars_cobblestone_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/mars_cobblestone_stairs.json new file mode 100644 index 0000000000..a73abdbb2a --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/mars_cobblestone_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_mars_cobblestone": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:mars_cobblestone" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:mars_cobblestone_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_mars_cobblestone" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:mars_cobblestone_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/mars_cobblestone_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/mars_cobblestone_wall.json new file mode 100644 index 0000000000..7c5a0dc332 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/mars_cobblestone_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_mars_cobblestone": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:mars_cobblestone" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:mars_cobblestone_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_mars_cobblestone" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:mars_cobblestone_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/mars_stone_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/mars_stone_slab.json new file mode 100644 index 0000000000..851650e8f0 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/mars_stone_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_mars_stone": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:mars_stone" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:mars_stone_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_mars_stone" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:mars_stone_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/mars_stone_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/mars_stone_stairs.json new file mode 100644 index 0000000000..04efa7e112 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/mars_stone_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_mars_stone": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:mars_stone" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:mars_stone_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_mars_stone" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:mars_stone_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/mars_stone_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/mars_stone_wall.json new file mode 100644 index 0000000000..eb19f36941 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/mars_stone_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_mars_stone": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:mars_stone" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:mars_stone_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_mars_stone" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:mars_stone_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/meteoric_iron_block.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/meteoric_iron_block.json new file mode 100644 index 0000000000..d7bb9a1ec4 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/meteoric_iron_block.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_meteoric_iron_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:meteoric_iron_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:meteoric_iron_block" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_meteoric_iron_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:meteoric_iron_block" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/meteoric_iron_decoration.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/meteoric_iron_decoration.json new file mode 100644 index 0000000000..3ec5e389b2 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/meteoric_iron_decoration.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_meteoric_iron": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_meteoric_iron" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:meteoric_iron_decoration" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_meteoric_iron" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:meteoric_iron_decoration" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/meteoric_iron_decoration_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/meteoric_iron_decoration_slab.json new file mode 100644 index 0000000000..f608da4112 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/meteoric_iron_decoration_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_meteoric_iron_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:meteoric_iron_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:meteoric_iron_decoration_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_meteoric_iron_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:meteoric_iron_decoration_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/meteoric_iron_decoration_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/meteoric_iron_decoration_stairs.json new file mode 100644 index 0000000000..23640a7ab2 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/meteoric_iron_decoration_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_meteoric_iron_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:meteoric_iron_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:meteoric_iron_decoration_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_meteoric_iron_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:meteoric_iron_decoration_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/meteoric_iron_decoration_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/meteoric_iron_decoration_wall.json new file mode 100644 index 0000000000..60aad4296c --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/meteoric_iron_decoration_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_meteoric_iron_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:meteoric_iron_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:meteoric_iron_decoration_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_meteoric_iron_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:meteoric_iron_decoration_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/moon_basalt_brick_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/moon_basalt_brick_slab.json new file mode 100644 index 0000000000..ba20ff4bc5 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/moon_basalt_brick_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_moon_basalt_brick": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:moon_basalt_brick" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:moon_basalt_brick_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_moon_basalt_brick" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:moon_basalt_brick_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/moon_basalt_brick_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/moon_basalt_brick_stairs.json new file mode 100644 index 0000000000..dd583ebb3d --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/moon_basalt_brick_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_moon_basalt_brick": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:moon_basalt_brick" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:moon_basalt_brick_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_moon_basalt_brick" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:moon_basalt_brick_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/moon_basalt_brick_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/moon_basalt_brick_wall.json new file mode 100644 index 0000000000..749b477147 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/moon_basalt_brick_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_moon_basalt_brick": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:moon_basalt_brick" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:moon_basalt_brick_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_moon_basalt_brick" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:moon_basalt_brick_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/moon_basalt_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/moon_basalt_slab.json new file mode 100644 index 0000000000..457353dad5 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/moon_basalt_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_moon_basalt": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:moon_basalt" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:moon_basalt_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_moon_basalt" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:moon_basalt_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/moon_basalt_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/moon_basalt_stairs.json new file mode 100644 index 0000000000..da2806c3ac --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/moon_basalt_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_moon_basalt": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:moon_basalt" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:moon_basalt_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_moon_basalt" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:moon_basalt_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/moon_basalt_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/moon_basalt_wall.json new file mode 100644 index 0000000000..7117376ba8 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/moon_basalt_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_moon_basalt": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:moon_basalt" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:moon_basalt_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_moon_basalt" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:moon_basalt_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/steel_decoration.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/steel_decoration.json new file mode 100644 index 0000000000..10a2d278dd --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/steel_decoration.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_steel": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_steel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:steel_decoration" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_steel" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:steel_decoration" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/steel_decoration_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/steel_decoration_slab.json new file mode 100644 index 0000000000..d7a0096139 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/steel_decoration_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_steel_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:steel_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:steel_decoration_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_steel_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:steel_decoration_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/steel_decoration_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/steel_decoration_stairs.json new file mode 100644 index 0000000000..94fdfbf6ba --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/steel_decoration_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_steel_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:steel_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:steel_decoration_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_steel_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:steel_decoration_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/steel_decoration_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/steel_decoration_wall.json new file mode 100644 index 0000000000..86d7314e30 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/steel_decoration_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_steel_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:steel_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:steel_decoration_wall" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_steel_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:steel_decoration_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/tin_decoration.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/tin_decoration.json new file mode 100644 index 0000000000..b06e289095 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/tin_decoration.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_tin": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_tin" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:tin_decoration" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_tin" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:tin_decoration" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/tin_decoration_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/tin_decoration_slab.json new file mode 100644 index 0000000000..bc20319022 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/tin_decoration_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:tin_decoration_slab" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_tin_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:tin_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_tin_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:tin_decoration_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/tin_decoration_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/tin_decoration_stairs.json new file mode 100644 index 0000000000..fc95d4922f --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/tin_decoration_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:tin_decoration_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_tin_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:tin_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_tin_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:tin_decoration_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/tin_decoration_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/tin_decoration_wall.json new file mode 100644 index 0000000000..851273ca15 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/tin_decoration_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:tin_decoration_wall" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_tin_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:tin_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_tin_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:tin_decoration_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/tin_ladder.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/tin_ladder.json new file mode 100644 index 0000000000..f6d8af3fc9 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/tin_ladder.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:tin_ladder" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_tin_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:tin_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_tin_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:tin_ladder" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/titanium_block.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/titanium_block.json new file mode 100644 index 0000000000..210ee24d64 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/titanium_block.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:titanium_block" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_titanium_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:titanium_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_titanium_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:titanium_block" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/titanium_decoration.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/titanium_decoration.json new file mode 100644 index 0000000000..d687795b33 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/titanium_decoration.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_titanium": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_titanium" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:titanium_decoration" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_titanium" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:titanium_decoration" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/titanium_decoration_slab.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/titanium_decoration_slab.json new file mode 100644 index 0000000000..e3a5934db6 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/titanium_decoration_slab.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:titanium_decoration_slab" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_titanium_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:titanium_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_titanium_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:titanium_decoration_slab" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/titanium_decoration_stairs.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/titanium_decoration_stairs.json new file mode 100644 index 0000000000..9e5a5a1b71 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/titanium_decoration_stairs.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:titanium_decoration_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_titanium_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:titanium_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_titanium_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:titanium_decoration_stairs" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/titanium_decoration_wall.json b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/titanium_decoration_wall.json new file mode 100644 index 0000000000..5f780a5895 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/building_blocks/titanium_decoration_wall.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:titanium_decoration_wall" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_titanium_decoration": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:titanium_decoration" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_titanium_decoration" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:titanium_decoration_wall" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/combat/desh_sword.json b/src/main/generated/data/galacticraft/advancements/recipes/combat/desh_sword.json new file mode 100644 index 0000000000..7925925ca5 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/combat/desh_sword.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:desh_sword" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:desh_sword" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/combat/heavy_duty_boots.json b/src/main/generated/data/galacticraft/advancements/recipes/combat/heavy_duty_boots.json new file mode 100644 index 0000000000..b7bcf02d21 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/combat/heavy_duty_boots.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_heavy_plating": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:heavy_plating" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:heavy_duty_boots" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_heavy_plating" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:heavy_duty_boots" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/combat/heavy_duty_chestplate.json b/src/main/generated/data/galacticraft/advancements/recipes/combat/heavy_duty_chestplate.json new file mode 100644 index 0000000000..af99139aa2 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/combat/heavy_duty_chestplate.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_heavy_plating": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:heavy_plating" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:heavy_duty_chestplate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_heavy_plating" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:heavy_duty_chestplate" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/combat/heavy_duty_helmet.json b/src/main/generated/data/galacticraft/advancements/recipes/combat/heavy_duty_helmet.json new file mode 100644 index 0000000000..542a7ab235 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/combat/heavy_duty_helmet.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_heavy_plating": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:heavy_plating" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:heavy_duty_helmet" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_heavy_plating" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:heavy_duty_helmet" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/combat/heavy_duty_leggings.json b/src/main/generated/data/galacticraft/advancements/recipes/combat/heavy_duty_leggings.json new file mode 100644 index 0000000000..d7c4e7eaa6 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/combat/heavy_duty_leggings.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_heavy_plating": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:heavy_plating" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:heavy_duty_leggings" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_heavy_plating" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:heavy_duty_leggings" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/combat/heavy_duty_sword.json b/src/main/generated/data/galacticraft/advancements/recipes/combat/heavy_duty_sword.json new file mode 100644 index 0000000000..bfd37dfdb0 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/combat/heavy_duty_sword.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_steel": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_steel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:heavy_duty_sword" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_steel" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:heavy_duty_sword" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/combat/throwable_meteor_chunk.json b/src/main/generated/data/galacticraft/advancements/recipes/combat/throwable_meteor_chunk.json new file mode 100644 index 0000000000..c8e9d148f2 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/combat/throwable_meteor_chunk.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_raw_meteoric_iron": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:raw_meteoric_iron" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:throwable_meteor_chunk" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_raw_meteoric_iron" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:throwable_meteor_chunk" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/combat/titanium_boots_smithing.json b/src/main/generated/data/galacticraft/advancements/recipes/combat/titanium_boots_smithing.json new file mode 100644 index 0000000000..dec2a34c2b --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/combat/titanium_boots_smithing.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_titanium": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_titanium" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:titanium_boots_smithing" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_titanium" + ] + ], + "rewards": { + "recipes": [ + "minecraft:titanium_boots_smithing" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/combat/titanium_chestplate_smithing.json b/src/main/generated/data/galacticraft/advancements/recipes/combat/titanium_chestplate_smithing.json new file mode 100644 index 0000000000..5a9fb6fdbd --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/combat/titanium_chestplate_smithing.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_titanium": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_titanium" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:titanium_chestplate_smithing" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_titanium" + ] + ], + "rewards": { + "recipes": [ + "minecraft:titanium_chestplate_smithing" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/combat/titanium_helmet_smithing.json b/src/main/generated/data/galacticraft/advancements/recipes/combat/titanium_helmet_smithing.json new file mode 100644 index 0000000000..e3e090b6d4 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/combat/titanium_helmet_smithing.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_titanium": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_titanium" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:titanium_helmet_smithing" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_titanium" + ] + ], + "rewards": { + "recipes": [ + "minecraft:titanium_helmet_smithing" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/combat/titanium_leggings_smithing.json b/src/main/generated/data/galacticraft/advancements/recipes/combat/titanium_leggings_smithing.json new file mode 100644 index 0000000000..56f8e72968 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/combat/titanium_leggings_smithing.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_titanium": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_titanium" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:titanium_leggings_smithing" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_titanium" + ] + ], + "rewards": { + "recipes": [ + "minecraft:titanium_leggings_smithing" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/combat/titanium_sword_smithing.json b/src/main/generated/data/galacticraft/advancements/recipes/combat/titanium_sword_smithing.json new file mode 100644 index 0000000000..9fea02449f --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/combat/titanium_sword_smithing.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_titanium": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_titanium" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:titanium_sword_smithing" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_titanium" + ] + ], + "rewards": { + "recipes": [ + "minecraft:titanium_sword_smithing" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/compressed_aluminum.json b/src/main/generated/data/galacticraft/advancements/recipes/compressed_aluminum.json new file mode 100644 index 0000000000..bc0e68f271 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/compressed_aluminum.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_aluminum_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:aluminum_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:compressed_aluminum" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_aluminum_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:compressed_aluminum" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/compressed_bronze.json b/src/main/generated/data/galacticraft/advancements/recipes/compressed_bronze.json similarity index 100% rename from src/main/generated/data/galacticraft/advancement/recipes/compressed_bronze.json rename to src/main/generated/data/galacticraft/advancements/recipes/compressed_bronze.json diff --git a/src/main/generated/data/galacticraft/advancements/recipes/compressed_copper.json b/src/main/generated/data/galacticraft/advancements/recipes/compressed_copper.json new file mode 100644 index 0000000000..b4a1beb547 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/compressed_copper.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_copper_ingot": { + "conditions": { + "items": [ + { + "tag": "c:copper_ingots" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:compressed_copper" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_copper_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:compressed_copper" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/compressed_desh.json b/src/main/generated/data/galacticraft/advancements/recipes/compressed_desh.json new file mode 100644 index 0000000000..92853c9be4 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/compressed_desh.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:compressed_desh" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:compressed_desh" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/compressed_iron.json b/src/main/generated/data/galacticraft/advancements/recipes/compressed_iron.json new file mode 100644 index 0000000000..bc0f0a278b --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/compressed_iron.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_iron_ingot": { + "conditions": { + "items": [ + { + "tag": "c:iron_ingots" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:compressed_iron" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_iron_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:compressed_iron" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/compressed_meteoric_iron.json b/src/main/generated/data/galacticraft/advancements/recipes/compressed_meteoric_iron.json similarity index 100% rename from src/main/generated/data/galacticraft/advancement/recipes/compressed_meteoric_iron.json rename to src/main/generated/data/galacticraft/advancements/recipes/compressed_meteoric_iron.json diff --git a/src/main/generated/data/galacticraft/advancements/recipes/compressed_steel.json b/src/main/generated/data/galacticraft/advancements/recipes/compressed_steel.json new file mode 100644 index 0000000000..9b7b58ee68 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/compressed_steel.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_iron": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_iron" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:compressed_steel" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_iron" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:compressed_steel" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/compressed_steel_from_ingots.json b/src/main/generated/data/galacticraft/advancements/recipes/compressed_steel_from_ingots.json similarity index 100% rename from src/main/generated/data/galacticraft/advancement/recipes/compressed_steel_from_ingots.json rename to src/main/generated/data/galacticraft/advancements/recipes/compressed_steel_from_ingots.json diff --git a/src/main/generated/data/galacticraft/advancements/recipes/compressed_tin.json b/src/main/generated/data/galacticraft/advancements/recipes/compressed_tin.json new file mode 100644 index 0000000000..ecf25a2438 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/compressed_tin.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:compressed_tin" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_tin_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:tin_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_tin_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:compressed_tin" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/compressed_titanium.json b/src/main/generated/data/galacticraft/advancements/recipes/compressed_titanium.json new file mode 100644 index 0000000000..a3047942a7 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/compressed_titanium.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:compressed_titanium" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_titanium_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:titanium_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_titanium_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:compressed_titanium" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/decorations/dashed_light_panel.json b/src/main/generated/data/galacticraft/advancements/recipes/decorations/dashed_light_panel.json new file mode 100644 index 0000000000..95d0641f35 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/decorations/dashed_light_panel.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_steel": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_steel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:dashed_light_panel" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_steel" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:dashed_light_panel" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/decorations/diagonal_light_panel.json b/src/main/generated/data/galacticraft/advancements/recipes/decorations/diagonal_light_panel.json new file mode 100644 index 0000000000..74d1a97262 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/decorations/diagonal_light_panel.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_steel": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_steel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:diagonal_light_panel" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_steel" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:diagonal_light_panel" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/decorations/diagonal_light_panel_flipped.json b/src/main/generated/data/galacticraft/advancements/recipes/decorations/diagonal_light_panel_flipped.json new file mode 100644 index 0000000000..fb4d4a029f --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/decorations/diagonal_light_panel_flipped.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_steel": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_steel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:diagonal_light_panel_flipped" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_steel" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:diagonal_light_panel_flipped" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/decorations/glowstone_lantern.json b/src/main/generated/data/galacticraft/advancements/recipes/decorations/glowstone_lantern.json new file mode 100644 index 0000000000..ecfe50972d --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/decorations/glowstone_lantern.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_glowstone_torch": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:glowstone_torch" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:glowstone_lantern" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_glowstone_torch" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:glowstone_lantern" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/decorations/glowstone_torch.json b/src/main/generated/data/galacticraft/advancements/recipes/decorations/glowstone_torch.json new file mode 100644 index 0000000000..3715109868 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/decorations/glowstone_torch.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_glowstone_dust": { + "conditions": { + "items": [ + { + "items": [ + "minecraft:glowstone_dust" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:glowstone_torch" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_glowstone_dust" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:glowstone_torch" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/decorations/linear_light_panel.json b/src/main/generated/data/galacticraft/advancements/recipes/decorations/linear_light_panel.json new file mode 100644 index 0000000000..65800b1cb1 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/decorations/linear_light_panel.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_steel": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_steel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:linear_light_panel" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_steel" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:linear_light_panel" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/decorations/spotlight_light_panel.json b/src/main/generated/data/galacticraft/advancements/recipes/decorations/spotlight_light_panel.json new file mode 100644 index 0000000000..88d7c80eec --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/decorations/spotlight_light_panel.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_steel": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_steel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:spotlight_light_panel" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_steel" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:spotlight_light_panel" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/decorations/square_light_panel.json b/src/main/generated/data/galacticraft/advancements/recipes/decorations/square_light_panel.json new file mode 100644 index 0000000000..c6605664bb --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/decorations/square_light_panel.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_steel": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_steel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:square_light_panel" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_steel" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:square_light_panel" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/decorations/vacuum_glass.json b/src/main/generated/data/galacticraft/advancements/recipes/decorations/vacuum_glass.json new file mode 100644 index 0000000000..80928128a2 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/decorations/vacuum_glass.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:vacuum_glass" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_tin_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:tin_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_tin_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:vacuum_glass" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/decorations/vacuum_glass_clear.json b/src/main/generated/data/galacticraft/advancements/recipes/decorations/vacuum_glass_clear.json new file mode 100644 index 0000000000..588c83cd8f --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/decorations/vacuum_glass_clear.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_aluminum_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:aluminum_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:vacuum_glass_clear" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_aluminum_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:vacuum_glass_clear" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/decorations/vacuum_glass_strong.json b/src/main/generated/data/galacticraft/advancements/recipes/decorations/vacuum_glass_strong.json new file mode 100644 index 0000000000..b570c59c99 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/decorations/vacuum_glass_strong.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_aluminum": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_aluminum" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:vacuum_glass_strong" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_aluminum" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:vacuum_glass_strong" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/food/beef_patty_from_campfire_cooking.json b/src/main/generated/data/galacticraft/advancements/recipes/food/beef_patty_from_campfire_cooking.json new file mode 100644 index 0000000000..00a8fa6daf --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/food/beef_patty_from_campfire_cooking.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_ground_beef": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:ground_beef" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:beef_patty_from_campfire_cooking" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_ground_beef" + ] + ], + "rewards": { + "recipes": [ + "minecraft:beef_patty_from_campfire_cooking" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/food/beef_patty_from_smelting.json b/src/main/generated/data/galacticraft/advancements/recipes/food/beef_patty_from_smelting.json new file mode 100644 index 0000000000..2a247b1f0d --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/food/beef_patty_from_smelting.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_ground_beef": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:ground_beef" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:beef_patty_from_smelting" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_ground_beef" + ] + ], + "rewards": { + "recipes": [ + "minecraft:beef_patty_from_smelting" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/food/beef_patty_from_smoking.json b/src/main/generated/data/galacticraft/advancements/recipes/food/beef_patty_from_smoking.json new file mode 100644 index 0000000000..42fcb4f5b3 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/food/beef_patty_from_smoking.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_ground_beef": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:ground_beef" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:beef_patty_from_smoking" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_ground_beef" + ] + ], + "rewards": { + "recipes": [ + "minecraft:beef_patty_from_smoking" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/food/burger_bun.json b/src/main/generated/data/galacticraft/advancements/recipes/food/burger_bun.json new file mode 100644 index 0000000000..b3e1806527 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/food/burger_bun.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_egg": { + "conditions": { + "items": [ + { + "items": [ + "minecraft:egg" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:burger_bun" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_egg" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:burger_bun" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/food/cheese_slice.json b/src/main/generated/data/galacticraft/advancements/recipes/food/cheese_slice.json new file mode 100644 index 0000000000..4593f342db --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/food/cheese_slice.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_moon_cheese_block": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:moon_cheese_block" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:cheese_slice" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_moon_cheese_block" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:cheese_slice" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/food/cheeseburger.json b/src/main/generated/data/galacticraft/advancements/recipes/food/cheeseburger.json new file mode 100644 index 0000000000..c0a493e0c9 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/food/cheeseburger.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_ground_beef": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:ground_beef" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:cheeseburger" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_ground_beef" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:cheeseburger" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/food/ground_beef.json b/src/main/generated/data/galacticraft/advancements/recipes/food/ground_beef.json new file mode 100644 index 0000000000..06e0a16233 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/food/ground_beef.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_beef": { + "conditions": { + "items": [ + { + "items": [ + "minecraft:beef" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:ground_beef" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_beef" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:ground_beef" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/food/hot_throwable_meteor_chunk_from_blasting.json b/src/main/generated/data/galacticraft/advancements/recipes/food/hot_throwable_meteor_chunk_from_blasting.json new file mode 100644 index 0000000000..30295c3353 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/food/hot_throwable_meteor_chunk_from_blasting.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:hot_throwable_meteor_chunk_from_blasting" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_throwable_meteor_chunk": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:throwable_meteor_chunk" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_throwable_meteor_chunk" + ] + ], + "rewards": { + "recipes": [ + "minecraft:hot_throwable_meteor_chunk_from_blasting" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/food/hot_throwable_meteor_chunk_from_smelting.json b/src/main/generated/data/galacticraft/advancements/recipes/food/hot_throwable_meteor_chunk_from_smelting.json new file mode 100644 index 0000000000..99960b8387 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/food/hot_throwable_meteor_chunk_from_smelting.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:hot_throwable_meteor_chunk_from_smelting" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_throwable_meteor_chunk": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:throwable_meteor_chunk" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_throwable_meteor_chunk" + ] + ], + "rewards": { + "recipes": [ + "minecraft:hot_throwable_meteor_chunk_from_smelting" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/food/moon_cheese_block.json b/src/main/generated/data/galacticraft/advancements/recipes/food/moon_cheese_block.json new file mode 100644 index 0000000000..a808fe359b --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/food/moon_cheese_block.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cheese_curd": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:cheese_curd" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:moon_cheese_block" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_cheese_curd" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:moon_cheese_block" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/heavy_plating.json b/src/main/generated/data/galacticraft/advancements/recipes/heavy_plating.json new file mode 100644 index 0000000000..8a5c9140a4 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/heavy_plating.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_bronze": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_bronze" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:heavy_plating" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_bronze" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:heavy_plating" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/heavy_plating_flipped.json b/src/main/generated/data/galacticraft/advancements/recipes/heavy_plating_flipped.json new file mode 100644 index 0000000000..ff2fcb472d --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/heavy_plating_flipped.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_bronze": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_bronze" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:heavy_plating_flipped" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_bronze" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:heavy_plating_flipped" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/heavy_plating_t2.json b/src/main/generated/data/galacticraft/advancements/recipes/heavy_plating_t2.json new file mode 100644 index 0000000000..92db2025ed --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/heavy_plating_t2.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_meteoric_iron": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_meteoric_iron" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:heavy_plating_t2" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_meteoric_iron" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:heavy_plating_t2" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/heavy_plating_t3.json b/src/main/generated/data/galacticraft/advancements/recipes/heavy_plating_t3.json new file mode 100644 index 0000000000..7a10a04563 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/heavy_plating_t3.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_meteoric_iron": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_meteoric_iron" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:heavy_plating_t3" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_meteoric_iron" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:heavy_plating_t3" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/advanced_solar_panel.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/advanced_solar_panel.json new file mode 100644 index 0000000000..29e0c50aae --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/advanced_solar_panel.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_advanced_wafer": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:advanced_wafer" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:advanced_solar_panel" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_advanced_wafer" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:advanced_solar_panel" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_blasting_aluminum_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_blasting_aluminum_ore.json new file mode 100644 index 0000000000..fdf6c29c37 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_blasting_aluminum_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_aluminum_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:aluminum_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:aluminum_ingot_from_blasting_aluminum_ore" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_aluminum_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:aluminum_ingot_from_blasting_aluminum_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_blasting_deepslate_aluminum_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_blasting_deepslate_aluminum_ore.json new file mode 100644 index 0000000000..8248ddf05f --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_blasting_deepslate_aluminum_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_deepslate_aluminum_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:deepslate_aluminum_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:aluminum_ingot_from_blasting_deepslate_aluminum_ore" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_deepslate_aluminum_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:aluminum_ingot_from_blasting_deepslate_aluminum_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_blasting_raw_aluminum.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_blasting_raw_aluminum.json new file mode 100644 index 0000000000..f77dbf56ce --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_blasting_raw_aluminum.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_raw_aluminum": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:raw_aluminum" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:aluminum_ingot_from_blasting_raw_aluminum" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_raw_aluminum" + ] + ], + "rewards": { + "recipes": [ + "minecraft:aluminum_ingot_from_blasting_raw_aluminum" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_nuggets.json new file mode 100644 index 0000000000..7cb95cd919 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_nuggets.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_aluminum_nugget": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:aluminum_nugget" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:aluminum_ingot_from_nuggets" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_aluminum_nugget" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:aluminum_ingot_from_nuggets" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_smelting_aluminum_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_smelting_aluminum_ore.json new file mode 100644 index 0000000000..f8ab09ac2d --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_smelting_aluminum_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_aluminum_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:aluminum_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:aluminum_ingot_from_smelting_aluminum_ore" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_aluminum_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:aluminum_ingot_from_smelting_aluminum_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_smelting_deepslate_aluminum_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_smelting_deepslate_aluminum_ore.json new file mode 100644 index 0000000000..3562584589 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_smelting_deepslate_aluminum_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_deepslate_aluminum_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:deepslate_aluminum_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:aluminum_ingot_from_smelting_deepslate_aluminum_ore" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_deepslate_aluminum_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:aluminum_ingot_from_smelting_deepslate_aluminum_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_smelting_raw_aluminum.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_smelting_raw_aluminum.json new file mode 100644 index 0000000000..2e6a6353ac --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_ingot_from_smelting_raw_aluminum.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_raw_aluminum": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:raw_aluminum" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:aluminum_ingot_from_smelting_raw_aluminum" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_raw_aluminum" + ] + ], + "rewards": { + "recipes": [ + "minecraft:aluminum_ingot_from_smelting_raw_aluminum" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_nugget.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_nugget.json new file mode 100644 index 0000000000..554f51bf35 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_nugget.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_aluminum_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:aluminum_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:aluminum_nugget" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_aluminum_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:aluminum_nugget" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_wire.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_wire.json new file mode 100644 index 0000000000..c0f6bad3ba --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/aluminum_wire.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_glass_pane": { + "conditions": { + "items": [ + { + "items": [ + "minecraft:glass_pane" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:aluminum_wire" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_glass_pane" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:aluminum_wire" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/ambient_thermal_controller.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/ambient_thermal_controller.json new file mode 100644 index 0000000000..8cd934dbf5 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/ambient_thermal_controller.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_oxygen_vent": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:oxygen_vent" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:ambient_thermal_controller" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_oxygen_vent" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:ambient_thermal_controller" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/atmospheric_valve.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/atmospheric_valve.json new file mode 100644 index 0000000000..6a8608c628 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/atmospheric_valve.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:atmospheric_valve" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:atmospheric_valve" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/basic_solar_panel.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/basic_solar_panel.json new file mode 100644 index 0000000000..bdf25a91e4 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/basic_solar_panel.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_basic_wafer": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:basic_wafer" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:basic_solar_panel" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_basic_wafer" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:basic_solar_panel" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/battery.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/battery.json new file mode 100644 index 0000000000..41952bbc99 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/battery.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_tin": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_tin" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:battery" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_tin" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:battery" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/beam_core.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/beam_core.json new file mode 100644 index 0000000000..61e4903bd4 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/beam_core.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_iron": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_iron" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:beam_core" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_iron" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:beam_core" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/black_parachute.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/black_parachute.json new file mode 100644 index 0000000000..ba26e9a3ed --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/black_parachute.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_black_dye": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:white_parachute" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:black_parachute" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_black_dye" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:black_parachute" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/blue_parachute.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/blue_parachute.json new file mode 100644 index 0000000000..e93a4ee6a6 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/blue_parachute.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_blue_dye": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:white_parachute" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:blue_parachute" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_blue_dye" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:blue_parachute" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/brown_parachute.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/brown_parachute.json new file mode 100644 index 0000000000..f2d54b553b --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/brown_parachute.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_brown_dye": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:white_parachute" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:brown_parachute" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_brown_dye" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:brown_parachute" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/canvas.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/canvas.json new file mode 100644 index 0000000000..ec3a062d49 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/canvas.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_string": { + "conditions": { + "items": [ + { + "items": [ + "minecraft:string" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:canvas" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_string" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:canvas" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/carbon_fragments_from_charcoal.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/carbon_fragments_from_charcoal.json new file mode 100644 index 0000000000..ffe0ad06b4 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/carbon_fragments_from_charcoal.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_charcoal": { + "conditions": { + "items": [ + { + "items": [ + "minecraft:charcoal" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:carbon_fragments_from_charcoal" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_charcoal" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:carbon_fragments_from_charcoal" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/carbon_fragments_from_coal.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/carbon_fragments_from_coal.json new file mode 100644 index 0000000000..e27af979e9 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/carbon_fragments_from_coal.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_coal": { + "conditions": { + "items": [ + { + "tag": "c:coal" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:carbon_fragments_from_coal" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_coal" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:carbon_fragments_from_coal" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/carbon_fragments_from_smelting_planks.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/carbon_fragments_from_smelting_planks.json new file mode 100644 index 0000000000..768f9ad608 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/carbon_fragments_from_smelting_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_planks": { + "conditions": { + "items": [ + { + "tag": "minecraft:planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:carbon_fragments_from_smelting_planks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_planks" + ] + ], + "rewards": { + "recipes": [ + "minecraft:carbon_fragments_from_smelting_planks" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/circuit_fabricator.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/circuit_fabricator.json new file mode 100644 index 0000000000..5a8700b9f5 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/circuit_fabricator.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_aluminum_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:aluminum_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:circuit_fabricator" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_aluminum_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:circuit_fabricator" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/coal_generator.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/coal_generator.json new file mode 100644 index 0000000000..dc45853bc6 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/coal_generator.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_aluminum_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:aluminum_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:coal_generator" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_aluminum_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:coal_generator" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/compressor.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/compressor.json new file mode 100644 index 0000000000..ab7106fe13 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/compressor.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_aluminum_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:aluminum_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:compressor" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_aluminum_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:compressor" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/copper_canister.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/copper_canister.json new file mode 100644 index 0000000000..9d3d675be3 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/copper_canister.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_copper_ingot": { + "conditions": { + "items": [ + { + "items": [ + "minecraft:copper_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:copper_canister" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_copper_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:copper_canister" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/copper_ingot_from_blasting_lunaslate_copper_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/copper_ingot_from_blasting_lunaslate_copper_ore.json new file mode 100644 index 0000000000..652e219508 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/copper_ingot_from_blasting_lunaslate_copper_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_lunaslate_copper_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:lunaslate_copper_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:copper_ingot_from_blasting_lunaslate_copper_ore" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_lunaslate_copper_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:copper_ingot_from_blasting_lunaslate_copper_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/copper_ingot_from_blasting_moon_copper_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/copper_ingot_from_blasting_moon_copper_ore.json new file mode 100644 index 0000000000..ea6aba0977 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/copper_ingot_from_blasting_moon_copper_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_moon_copper_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:moon_copper_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:copper_ingot_from_blasting_moon_copper_ore" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_moon_copper_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:copper_ingot_from_blasting_moon_copper_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/copper_ingot_from_smelting_lunaslate_copper_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/copper_ingot_from_smelting_lunaslate_copper_ore.json new file mode 100644 index 0000000000..57ec2d72ab --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/copper_ingot_from_smelting_lunaslate_copper_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_lunaslate_copper_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:lunaslate_copper_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:copper_ingot_from_smelting_lunaslate_copper_ore" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_lunaslate_copper_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:copper_ingot_from_smelting_lunaslate_copper_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/copper_ingot_from_smelting_moon_copper_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/copper_ingot_from_smelting_moon_copper_ore.json new file mode 100644 index 0000000000..bdb309ad5c --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/copper_ingot_from_smelting_moon_copper_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_moon_copper_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:moon_copper_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:copper_ingot_from_smelting_moon_copper_ore" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_moon_copper_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:copper_ingot_from_smelting_moon_copper_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/cyan_parachute.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/cyan_parachute.json new file mode 100644 index 0000000000..fde4a9a93a --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/cyan_parachute.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cyan_dye": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:white_parachute" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:cyan_parachute" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_cyan_dye" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:cyan_parachute" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_boots.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_boots.json new file mode 100644 index 0000000000..433076ae22 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_boots.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:desh_boots" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:desh_boots" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_chestplate.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_chestplate.json new file mode 100644 index 0000000000..c9fc9fa153 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_chestplate.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:desh_chestplate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:desh_chestplate" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_helmet.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_helmet.json new file mode 100644 index 0000000000..23a460ec1f --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_helmet.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:desh_helmet" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:desh_helmet" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_ingot_from_blasting_desh_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_ingot_from_blasting_desh_ore.json new file mode 100644 index 0000000000..97d7579b74 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_ingot_from_blasting_desh_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:desh_ingot_from_blasting_desh_ore" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:desh_ingot_from_blasting_desh_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_ingot_from_blasting_raw_desh.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_ingot_from_blasting_raw_desh.json new file mode 100644 index 0000000000..1c61433f3d --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_ingot_from_blasting_raw_desh.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_raw_desh": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:raw_desh" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:desh_ingot_from_blasting_raw_desh" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_raw_desh" + ] + ], + "rewards": { + "recipes": [ + "minecraft:desh_ingot_from_blasting_raw_desh" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_ingot_from_block.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_ingot_from_block.json new file mode 100644 index 0000000000..f50f15c4c8 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_ingot_from_block.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_block": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_block" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:desh_ingot_from_block" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_block" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:desh_ingot_from_block" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_ingot_from_nuggets.json new file mode 100644 index 0000000000..0aaad28f56 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_ingot_from_nuggets.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_nugget": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_nugget" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:desh_ingot_from_nuggets" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_nugget" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:desh_ingot_from_nuggets" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_ingot_from_smelting_desh_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_ingot_from_smelting_desh_ore.json new file mode 100644 index 0000000000..5c2e82f996 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_ingot_from_smelting_desh_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:desh_ingot_from_smelting_desh_ore" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:desh_ingot_from_smelting_desh_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_ingot_from_smelting_raw_desh.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_ingot_from_smelting_raw_desh.json new file mode 100644 index 0000000000..d4b505fa81 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_ingot_from_smelting_raw_desh.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_raw_desh": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:raw_desh" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:desh_ingot_from_smelting_raw_desh" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_raw_desh" + ] + ], + "rewards": { + "recipes": [ + "minecraft:desh_ingot_from_smelting_raw_desh" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_leggings.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_leggings.json new file mode 100644 index 0000000000..b5c75f783c --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_leggings.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:desh_leggings" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:desh_leggings" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_nugget.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_nugget.json new file mode 100644 index 0000000000..3e0c78fee1 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_nugget.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:desh_nugget" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:desh_nugget" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_stick.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_stick.json new file mode 100644 index 0000000000..555af6f449 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/desh_stick.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_stick": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_stick" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:desh_stick" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_stick" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:desh_stick" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/electric_arc_furnace.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/electric_arc_furnace.json new file mode 100644 index 0000000000..d006172318 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/electric_arc_furnace.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_advanced_wafer": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:advanced_wafer" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:electric_arc_furnace" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_advanced_wafer" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:electric_arc_furnace" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/electric_compressor.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/electric_compressor.json new file mode 100644 index 0000000000..ec2d40afdc --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/electric_compressor.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_aluminum_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:aluminum_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:electric_compressor" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_aluminum_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:electric_compressor" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/electric_compressor_upgrade.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/electric_compressor_upgrade.json new file mode 100644 index 0000000000..605501a831 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/electric_compressor_upgrade.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_aluminum_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:aluminum_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:electric_compressor_upgrade" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_aluminum_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:electric_compressor_upgrade" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/electric_furnace.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/electric_furnace.json new file mode 100644 index 0000000000..33c5cfc78b --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/electric_furnace.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_basic_wafer": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:basic_wafer" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:electric_furnace" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_basic_wafer" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:electric_furnace" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/energy_storage_module.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/energy_storage_module.json new file mode 100644 index 0000000000..bfcc0edbfa --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/energy_storage_module.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_battery": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:battery" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:energy_storage_module" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_battery" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:energy_storage_module" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/fluid_manipulator.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/fluid_manipulator.json new file mode 100644 index 0000000000..8b1562ef8a --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/fluid_manipulator.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_meteoric_iron_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:meteoric_iron_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:fluid_manipulator" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_meteoric_iron_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:fluid_manipulator" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/fluid_pipe_walkway.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/fluid_pipe_walkway.json new file mode 100644 index 0000000000..7c33bb0c01 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/fluid_pipe_walkway.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:fluid_pipe_walkway" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_walkway": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:walkway" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_walkway" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:fluid_pipe_walkway" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/fluid_pipe_walkway_shapeless.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/fluid_pipe_walkway_shapeless.json new file mode 100644 index 0000000000..d590aff8a9 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/fluid_pipe_walkway_shapeless.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:fluid_pipe_walkway_shapeless" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_walkway": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:walkway" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_walkway" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:fluid_pipe_walkway_shapeless" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/food_canner.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/food_canner.json new file mode 100644 index 0000000000..918b29a18e --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/food_canner.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_oxygen_concentrator": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:oxygen_concentrator" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:food_canner" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_oxygen_concentrator" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:food_canner" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/frequency_module.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/frequency_module.json new file mode 100644 index 0000000000..500182ccb5 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/frequency_module.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_aluminum": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_aluminum" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:frequency_module" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_aluminum" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:frequency_module" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/full_solar_panel.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/full_solar_panel.json new file mode 100644 index 0000000000..259dc47307 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/full_solar_panel.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_single_solar_module": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:single_solar_module" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:full_solar_panel" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_single_solar_module" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:full_solar_panel" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/glass_fluid_pipe.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/glass_fluid_pipe.json new file mode 100644 index 0000000000..ba8a9ae15e --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/glass_fluid_pipe.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_glass_pane": { + "conditions": { + "items": [ + { + "items": [ + "minecraft:glass_pane" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:glass_fluid_pipe" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_glass_pane" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:glass_fluid_pipe" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/gray_parachute.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/gray_parachute.json new file mode 100644 index 0000000000..18608f41a8 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/gray_parachute.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_gray_dye": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:white_parachute" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:gray_parachute" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_gray_dye" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:gray_parachute" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/green_parachute.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/green_parachute.json new file mode 100644 index 0000000000..9b04d678e2 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/green_parachute.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_green_dye": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:white_parachute" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:green_parachute" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_green_dye" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:green_parachute" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/iron_ingot_from_blasting_iron_shard.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/iron_ingot_from_blasting_iron_shard.json new file mode 100644 index 0000000000..20a1fe878f --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/iron_ingot_from_blasting_iron_shard.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_iron_shard": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:iron_shard" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:iron_ingot_from_blasting_iron_shard" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_iron_shard" + ] + ], + "rewards": { + "recipes": [ + "minecraft:iron_ingot_from_blasting_iron_shard" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/iron_ingot_from_smelting_iron_shard.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/iron_ingot_from_smelting_iron_shard.json new file mode 100644 index 0000000000..d8bdaea79a --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/iron_ingot_from_smelting_iron_shard.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_iron_shard": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:iron_shard" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:iron_ingot_from_smelting_iron_shard" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_iron_shard" + ] + ], + "rewards": { + "recipes": [ + "minecraft:iron_ingot_from_smelting_iron_shard" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/isothermal_fabric.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/isothermal_fabric.json new file mode 100644 index 0000000000..b3d0eccbb4 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/isothermal_fabric.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:isothermal_fabric" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:isothermal_fabric" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/large_oxygen_tank.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/large_oxygen_tank.json new file mode 100644 index 0000000000..d78127948b --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/large_oxygen_tank.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:large_oxygen_tank" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_tin_canister": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:tin_canister" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_tin_canister" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:large_oxygen_tank" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_ingot_from_blasting_galena_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_ingot_from_blasting_galena_ore.json new file mode 100644 index 0000000000..4d25d5e7e8 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_ingot_from_blasting_galena_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_galena_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:galena_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:lead_ingot_from_blasting_galena_ore" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_galena_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:lead_ingot_from_blasting_galena_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_ingot_from_blasting_raw_lead.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_ingot_from_blasting_raw_lead.json new file mode 100644 index 0000000000..e78c2cd136 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_ingot_from_blasting_raw_lead.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_raw_lead": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:raw_lead" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:lead_ingot_from_blasting_raw_lead" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_raw_lead" + ] + ], + "rewards": { + "recipes": [ + "minecraft:lead_ingot_from_blasting_raw_lead" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_ingot_from_block.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_ingot_from_block.json new file mode 100644 index 0000000000..f2219e7e41 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_ingot_from_block.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_lead_block": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:lead_block" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:lead_ingot_from_block" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_lead_block" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:lead_ingot_from_block" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_ingot_from_nuggets.json new file mode 100644 index 0000000000..ced4dc306f --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_ingot_from_nuggets.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_lead_nugget": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:lead_nugget" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:lead_ingot_from_nuggets" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_lead_nugget" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:lead_ingot_from_nuggets" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_ingot_from_smelting_galena_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_ingot_from_smelting_galena_ore.json new file mode 100644 index 0000000000..c32722a412 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_ingot_from_smelting_galena_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_galena_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:galena_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:lead_ingot_from_smelting_galena_ore" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_galena_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:lead_ingot_from_smelting_galena_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_ingot_from_smelting_raw_lead.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_ingot_from_smelting_raw_lead.json new file mode 100644 index 0000000000..7fd3fb8bd7 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_ingot_from_smelting_raw_lead.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_raw_lead": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:raw_lead" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:lead_ingot_from_smelting_raw_lead" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_raw_lead" + ] + ], + "rewards": { + "recipes": [ + "minecraft:lead_ingot_from_smelting_raw_lead" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_nugget.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_nugget.json new file mode 100644 index 0000000000..6ddb235c94 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/lead_nugget.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_lead_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:lead_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:lead_nugget" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_lead_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:lead_nugget" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/light_blue_parachute.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/light_blue_parachute.json new file mode 100644 index 0000000000..2da9cd3487 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/light_blue_parachute.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_light_blue_dye": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:white_parachute" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:light_blue_parachute" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_light_blue_dye" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:light_blue_parachute" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/light_gray_parachute.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/light_gray_parachute.json new file mode 100644 index 0000000000..98c8d7eb54 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/light_gray_parachute.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_light_gray_dye": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:white_parachute" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:light_gray_parachute" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_light_gray_dye" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:light_gray_parachute" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/lime_parachute.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/lime_parachute.json new file mode 100644 index 0000000000..80fab16bc9 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/lime_parachute.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_lime_dye": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:white_parachute" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:lime_parachute" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_lime_dye" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:lime_parachute" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/lunar_sapphire_from_block.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/lunar_sapphire_from_block.json new file mode 100644 index 0000000000..fb3c4eae81 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/lunar_sapphire_from_block.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_lunar_sapphire_block": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:lunar_sapphire_block" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:lunar_sapphire_from_block" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_lunar_sapphire_block" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:lunar_sapphire_from_block" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/magenta_parachute.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/magenta_parachute.json new file mode 100644 index 0000000000..b827b30c19 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/magenta_parachute.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_magenta_dye": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:white_parachute" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:magenta_parachute" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_magenta_dye" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:magenta_parachute" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/medium_oxygen_tank.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/medium_oxygen_tank.json new file mode 100644 index 0000000000..be7cc13348 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/medium_oxygen_tank.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:medium_oxygen_tank" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_tin_canister": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:tin_canister" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_tin_canister" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:medium_oxygen_tank" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/meteoric_iron_ingot_from_blasting_raw_meteoric_iron.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/meteoric_iron_ingot_from_blasting_raw_meteoric_iron.json new file mode 100644 index 0000000000..c19a93257e --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/meteoric_iron_ingot_from_blasting_raw_meteoric_iron.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_raw_meteoric_iron": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:raw_meteoric_iron" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:meteoric_iron_ingot_from_blasting_raw_meteoric_iron" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_raw_meteoric_iron" + ] + ], + "rewards": { + "recipes": [ + "minecraft:meteoric_iron_ingot_from_blasting_raw_meteoric_iron" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/meteoric_iron_ingot_from_block.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/meteoric_iron_ingot_from_block.json new file mode 100644 index 0000000000..032732711c --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/meteoric_iron_ingot_from_block.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_meteoric_iron_block": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:meteoric_iron_block" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:meteoric_iron_ingot_from_block" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_meteoric_iron_block" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:meteoric_iron_ingot_from_block" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/meteoric_iron_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/meteoric_iron_ingot_from_nuggets.json new file mode 100644 index 0000000000..0fc72fb635 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/meteoric_iron_ingot_from_nuggets.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_meteoric_iron_nugget": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:meteoric_iron_nugget" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:meteoric_iron_ingot_from_nuggets" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_meteoric_iron_nugget" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:meteoric_iron_ingot_from_nuggets" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/meteoric_iron_ingot_from_smelting_raw_meteoric_iron.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/meteoric_iron_ingot_from_smelting_raw_meteoric_iron.json new file mode 100644 index 0000000000..1a2ed5b5e7 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/meteoric_iron_ingot_from_smelting_raw_meteoric_iron.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_raw_meteoric_iron": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:raw_meteoric_iron" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:meteoric_iron_ingot_from_smelting_raw_meteoric_iron" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_raw_meteoric_iron" + ] + ], + "rewards": { + "recipes": [ + "minecraft:meteoric_iron_ingot_from_smelting_raw_meteoric_iron" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/meteoric_iron_nugget.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/meteoric_iron_nugget.json new file mode 100644 index 0000000000..eebbf3a439 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/meteoric_iron_nugget.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_meteoric_iron_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:meteoric_iron_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:meteoric_iron_nugget" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_meteoric_iron_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:meteoric_iron_nugget" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/nose_cone.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/nose_cone.json new file mode 100644 index 0000000000..3175dcbebe --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/nose_cone.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_heavy_plating": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:heavy_plating" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:nose_cone" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_heavy_plating" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:nose_cone" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/orange_parachute.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/orange_parachute.json new file mode 100644 index 0000000000..b85581d93a --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/orange_parachute.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_orange_dye": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:white_parachute" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:orange_parachute" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_orange_dye" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:orange_parachute" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/orion_drive.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/orion_drive.json new file mode 100644 index 0000000000..9addcc46a3 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/orion_drive.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_ilmenite_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:ilmenite_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:orion_drive" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_ilmenite_ore" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:orion_drive" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_bubble_distributor.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_bubble_distributor.json new file mode 100644 index 0000000000..8c0e5e7b00 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_bubble_distributor.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_steel": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_steel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:oxygen_bubble_distributor" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_steel" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:oxygen_bubble_distributor" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_collector.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_collector.json new file mode 100644 index 0000000000..37cdc322e7 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_collector.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_oxygen_concentrator": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:oxygen_concentrator" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:oxygen_collector" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_oxygen_concentrator" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:oxygen_collector" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_compressor.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_compressor.json new file mode 100644 index 0000000000..8becab622a --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_compressor.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_oxygen_concentrator": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:oxygen_concentrator" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:oxygen_compressor" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_oxygen_concentrator" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:oxygen_compressor" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_concentrator.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_concentrator.json new file mode 100644 index 0000000000..401445053f --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_concentrator.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_oxygen_vent": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:oxygen_vent" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:oxygen_concentrator" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_oxygen_vent" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:oxygen_concentrator" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_decompressor.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_decompressor.json new file mode 100644 index 0000000000..9f8dec190b --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_decompressor.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_oxygen_concentrator": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:oxygen_concentrator" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:oxygen_decompressor" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_oxygen_concentrator" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:oxygen_decompressor" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_fan.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_fan.json new file mode 100644 index 0000000000..e892116a75 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_fan.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_basic_wafer": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:basic_wafer" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:oxygen_fan" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_basic_wafer" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:oxygen_fan" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_gear.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_gear.json new file mode 100644 index 0000000000..259ef5d440 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_gear.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_glass_fluid_pipe": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:glass_fluid_pipe" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:oxygen_gear" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_glass_fluid_pipe" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:oxygen_gear" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_mask.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_mask.json new file mode 100644 index 0000000000..060963dec4 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_mask.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_glass_pane": { + "conditions": { + "items": [ + { + "items": [ + "minecraft:glass_pane" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:oxygen_mask" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_glass_pane" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:oxygen_mask" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_sealer.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_sealer.json new file mode 100644 index 0000000000..c58eff3ef4 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_sealer.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_oxygen_fan": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:oxygen_fan" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:oxygen_sealer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_oxygen_fan" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:oxygen_sealer" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_storage_module.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_storage_module.json new file mode 100644 index 0000000000..df11530dd3 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_storage_module.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_large_oxygen_tank": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:large_oxygen_tank" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:oxygen_storage_module" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_large_oxygen_tank" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:oxygen_storage_module" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_vent.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_vent.json new file mode 100644 index 0000000000..ffdc66ef98 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/oxygen_vent.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_tin": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_tin" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:oxygen_vent" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_tin" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:oxygen_vent" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/pink_parachute.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/pink_parachute.json new file mode 100644 index 0000000000..2f3b89913c --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/pink_parachute.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_pink_dye": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:white_parachute" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:pink_parachute" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_pink_dye" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:pink_parachute" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/purple_parachute.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/purple_parachute.json new file mode 100644 index 0000000000..aeb7dd5adb --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/purple_parachute.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_purple_dye": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:white_parachute" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:purple_parachute" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_purple_dye" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:purple_parachute" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/red_parachute.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/red_parachute.json new file mode 100644 index 0000000000..042c515a3e --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/red_parachute.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_red_dye": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:white_parachute" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:red_parachute" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_red_dye" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:red_parachute" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/refinery.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/refinery.json new file mode 100644 index 0000000000..1e55273fdb --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/refinery.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_crude_oil_bucket": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:crude_oil_bucket" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:refinery" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_crude_oil_bucket" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:refinery" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/rocket_engine.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/rocket_engine.json new file mode 100644 index 0000000000..189f298be2 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/rocket_engine.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_heavy_plating": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:heavy_plating" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:rocket_engine" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_heavy_plating" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:rocket_engine" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/rocket_fin.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/rocket_fin.json new file mode 100644 index 0000000000..29917ea7db --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/rocket_fin.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_heavy_plating": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:heavy_plating" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:rocket_fin" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_heavy_plating" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:rocket_fin" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/rocket_workbench.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/rocket_workbench.json new file mode 100644 index 0000000000..4105f94746 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/rocket_workbench.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_advanced_wafer": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:advanced_wafer" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:rocket_workbench" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_advanced_wafer" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:rocket_workbench" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/sealable_aluminum_wire.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/sealable_aluminum_wire.json new file mode 100644 index 0000000000..2c09ac39e7 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/sealable_aluminum_wire.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_aluminum_wire": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:aluminum_wire" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:sealable_aluminum_wire" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_aluminum_wire" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:sealable_aluminum_wire" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/sensor_glasses.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/sensor_glasses.json new file mode 100644 index 0000000000..03d3beed6d --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/sensor_glasses.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_sensor_lens": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:sensor_lens" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:sensor_glasses" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_sensor_lens" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:sensor_glasses" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/sensor_lens.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/sensor_lens.json new file mode 100644 index 0000000000..3a67263d4f --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/sensor_lens.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_meteoric_iron": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_meteoric_iron" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:sensor_lens" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_meteoric_iron" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:sensor_lens" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/single_solar_module.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/single_solar_module.json new file mode 100644 index 0000000000..1abf578802 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/single_solar_module.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_solar_array_wafer": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:solar_array_wafer" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:single_solar_module" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_solar_array_wafer" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:single_solar_module" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/small_oxygen_tank.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/small_oxygen_tank.json new file mode 100644 index 0000000000..71e9ee51b8 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/small_oxygen_tank.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:small_oxygen_tank" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_tin_canister": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:tin_canister" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_tin_canister" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:small_oxygen_tank" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/standard_wrench.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/standard_wrench.json new file mode 100644 index 0000000000..bf74fb52fb --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/standard_wrench.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_steel": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_steel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:standard_wrench" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_steel" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:standard_wrench" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/steel_pole.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/steel_pole.json new file mode 100644 index 0000000000..fe4015913c --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/steel_pole.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_steel": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_steel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:steel_pole" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_steel" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:steel_pole" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/thermal_cloth.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/thermal_cloth.json new file mode 100644 index 0000000000..d80abdebce --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/thermal_cloth.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:thermal_cloth" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_wool": { + "conditions": { + "items": [ + { + "tag": "minecraft:wool" + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_wool" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:thermal_cloth" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/thermal_padding_boots.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/thermal_padding_boots.json new file mode 100644 index 0000000000..9eef69ce18 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/thermal_padding_boots.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:thermal_padding_boots" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_thermal_cloth": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:thermal_cloth" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_thermal_cloth" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:thermal_padding_boots" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/thermal_padding_chestpiece.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/thermal_padding_chestpiece.json new file mode 100644 index 0000000000..c0bea409be --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/thermal_padding_chestpiece.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:thermal_padding_chestpiece" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_thermal_cloth": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:thermal_cloth" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_thermal_cloth" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:thermal_padding_chestpiece" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/thermal_padding_helmet.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/thermal_padding_helmet.json new file mode 100644 index 0000000000..b497e66f7e --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/thermal_padding_helmet.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:thermal_padding_helmet" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_thermal_cloth": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:thermal_cloth" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_thermal_cloth" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:thermal_padding_helmet" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/thermal_padding_leggings.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/thermal_padding_leggings.json new file mode 100644 index 0000000000..5444f63429 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/thermal_padding_leggings.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:thermal_padding_leggings" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_thermal_cloth": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:thermal_cloth" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_thermal_cloth" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:thermal_padding_leggings" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_canister.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_canister.json new file mode 100644 index 0000000000..b121421b60 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_canister.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:tin_canister" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_tin_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:tin_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_tin_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:tin_canister" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_blasting_deepslate_tin_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_blasting_deepslate_tin_ore.json new file mode 100644 index 0000000000..6d6fc42668 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_blasting_deepslate_tin_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_deepslate_tin_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:deepslate_tin_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:tin_ingot_from_blasting_deepslate_tin_ore" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_deepslate_tin_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:tin_ingot_from_blasting_deepslate_tin_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_blasting_moon_tin_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_blasting_moon_tin_ore.json new file mode 100644 index 0000000000..9d6595ef77 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_blasting_moon_tin_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_moon_tin_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:moon_tin_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:tin_ingot_from_blasting_moon_tin_ore" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_moon_tin_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:tin_ingot_from_blasting_moon_tin_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_blasting_raw_tin.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_blasting_raw_tin.json new file mode 100644 index 0000000000..4db7e679f8 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_blasting_raw_tin.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_raw_tin": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:raw_tin" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:tin_ingot_from_blasting_raw_tin" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_raw_tin" + ] + ], + "rewards": { + "recipes": [ + "minecraft:tin_ingot_from_blasting_raw_tin" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_blasting_tin_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_blasting_tin_ore.json new file mode 100644 index 0000000000..7f17c19ff6 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_blasting_tin_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:tin_ingot_from_blasting_tin_ore" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_tin_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:tin_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_tin_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:tin_ingot_from_blasting_tin_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_nuggets.json new file mode 100644 index 0000000000..2d4c2f2ee7 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_nuggets.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:tin_ingot_from_nuggets" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_tin_nugget": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:tin_nugget" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_tin_nugget" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:tin_ingot_from_nuggets" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_smelting_deepslate_tin_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_smelting_deepslate_tin_ore.json new file mode 100644 index 0000000000..86ef4d9a60 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_smelting_deepslate_tin_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_deepslate_tin_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:deepslate_tin_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:tin_ingot_from_smelting_deepslate_tin_ore" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_deepslate_tin_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:tin_ingot_from_smelting_deepslate_tin_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_smelting_moon_tin_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_smelting_moon_tin_ore.json new file mode 100644 index 0000000000..b12b6f2c1a --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_smelting_moon_tin_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_moon_tin_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:moon_tin_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:tin_ingot_from_smelting_moon_tin_ore" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_moon_tin_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:tin_ingot_from_smelting_moon_tin_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_smelting_raw_tin.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_smelting_raw_tin.json new file mode 100644 index 0000000000..8632d8008a --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_smelting_raw_tin.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_raw_tin": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:raw_tin" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:tin_ingot_from_smelting_raw_tin" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_raw_tin" + ] + ], + "rewards": { + "recipes": [ + "minecraft:tin_ingot_from_smelting_raw_tin" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_smelting_tin_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_smelting_tin_ore.json new file mode 100644 index 0000000000..e46d9c3672 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_ingot_from_smelting_tin_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:tin_ingot_from_smelting_tin_ore" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_tin_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:tin_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_tin_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:tin_ingot_from_smelting_tin_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_nugget.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_nugget.json new file mode 100644 index 0000000000..ef4f0086ad --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/tin_nugget.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:tin_nugget" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_tin_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:tin_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_tin_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:tin_nugget" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_ingot_from_blasting_ilmenite_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_ingot_from_blasting_ilmenite_ore.json new file mode 100644 index 0000000000..8a900c7c4d --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_ingot_from_blasting_ilmenite_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_ilmenite_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:ilmenite_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:titanium_ingot_from_blasting_ilmenite_ore" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_ilmenite_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:titanium_ingot_from_blasting_ilmenite_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_ingot_from_blasting_raw_titanium.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_ingot_from_blasting_raw_titanium.json new file mode 100644 index 0000000000..0da1d66c54 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_ingot_from_blasting_raw_titanium.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_raw_titanium": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:raw_titanium" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:titanium_ingot_from_blasting_raw_titanium" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_raw_titanium" + ] + ], + "rewards": { + "recipes": [ + "minecraft:titanium_ingot_from_blasting_raw_titanium" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_ingot_from_block.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_ingot_from_block.json new file mode 100644 index 0000000000..297fe7cd51 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_ingot_from_block.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:titanium_ingot_from_block" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_titanium_block": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:titanium_block" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_titanium_block" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:titanium_ingot_from_block" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_ingot_from_nuggets.json new file mode 100644 index 0000000000..19997282bb --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_ingot_from_nuggets.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:titanium_ingot_from_nuggets" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_titanium_nugget": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:titanium_nugget" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_titanium_nugget" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:titanium_ingot_from_nuggets" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_ingot_from_smelting_ilmenite_ore.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_ingot_from_smelting_ilmenite_ore.json new file mode 100644 index 0000000000..d829425c6d --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_ingot_from_smelting_ilmenite_ore.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_ilmenite_ore": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:ilmenite_ore" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:titanium_ingot_from_smelting_ilmenite_ore" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_ilmenite_ore" + ] + ], + "rewards": { + "recipes": [ + "minecraft:titanium_ingot_from_smelting_ilmenite_ore" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_ingot_from_smelting_raw_titanium.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_ingot_from_smelting_raw_titanium.json new file mode 100644 index 0000000000..62419d719d --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_ingot_from_smelting_raw_titanium.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_raw_titanium": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:raw_titanium" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:titanium_ingot_from_smelting_raw_titanium" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_raw_titanium" + ] + ], + "rewards": { + "recipes": [ + "minecraft:titanium_ingot_from_smelting_raw_titanium" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_nugget.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_nugget.json new file mode 100644 index 0000000000..b37f736b05 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/titanium_nugget.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:titanium_nugget" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_titanium_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:titanium_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_titanium_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:titanium_nugget" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/walkway.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/walkway.json new file mode 100644 index 0000000000..90bf5eb798 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/walkway.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_titanium": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_titanium" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:walkway" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_titanium" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:walkway" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/white_parachute.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/white_parachute.json new file mode 100644 index 0000000000..7691de55ee --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/white_parachute.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_canvas": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:canvas" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:white_parachute" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_canvas" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:white_parachute" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/wire_walkway.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/wire_walkway.json new file mode 100644 index 0000000000..da613b4575 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/wire_walkway.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:wire_walkway" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_walkway": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:walkway" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_walkway" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:wire_walkway" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/wire_walkway_shapeless.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/wire_walkway_shapeless.json new file mode 100644 index 0000000000..4e9abb91cb --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/wire_walkway_shapeless.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:wire_walkway_shapeless" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_walkway": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:walkway" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_walkway" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:wire_walkway_shapeless" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/misc/yellow_parachute.json b/src/main/generated/data/galacticraft/advancements/recipes/misc/yellow_parachute.json new file mode 100644 index 0000000000..c42273fa9f --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/misc/yellow_parachute.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:yellow_parachute" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_yellow_dye": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:white_parachute" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_yellow_dye" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:yellow_parachute" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancement/recipes/solar_array_wafer.json b/src/main/generated/data/galacticraft/advancements/recipes/solar_array_wafer.json similarity index 100% rename from src/main/generated/data/galacticraft/advancement/recipes/solar_array_wafer.json rename to src/main/generated/data/galacticraft/advancements/recipes/solar_array_wafer.json diff --git a/src/main/generated/data/galacticraft/advancements/recipes/tools/desh_axe.json b/src/main/generated/data/galacticraft/advancements/recipes/tools/desh_axe.json new file mode 100644 index 0000000000..e0809b9dd0 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/tools/desh_axe.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:desh_axe" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:desh_axe" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/tools/desh_axe_flipped.json b/src/main/generated/data/galacticraft/advancements/recipes/tools/desh_axe_flipped.json new file mode 100644 index 0000000000..c1e553dc8f --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/tools/desh_axe_flipped.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:desh_axe_flipped" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:desh_axe_flipped" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/tools/desh_hoe.json b/src/main/generated/data/galacticraft/advancements/recipes/tools/desh_hoe.json new file mode 100644 index 0000000000..c6e152c115 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/tools/desh_hoe.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:desh_hoe" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:desh_hoe" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/tools/desh_hoe_flipped.json b/src/main/generated/data/galacticraft/advancements/recipes/tools/desh_hoe_flipped.json new file mode 100644 index 0000000000..df601e6d82 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/tools/desh_hoe_flipped.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:desh_hoe_flipped" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:desh_hoe_flipped" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/tools/desh_pickaxe.json b/src/main/generated/data/galacticraft/advancements/recipes/tools/desh_pickaxe.json new file mode 100644 index 0000000000..c94fa55e95 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/tools/desh_pickaxe.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:desh_pickaxe" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:desh_pickaxe" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/tools/desh_shovel.json b/src/main/generated/data/galacticraft/advancements/recipes/tools/desh_shovel.json new file mode 100644 index 0000000000..aaaa836ac4 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/tools/desh_shovel.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_desh_ingot": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:desh_ingot" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:desh_shovel" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_desh_ingot" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:desh_shovel" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/tools/heavy_duty_axe.json b/src/main/generated/data/galacticraft/advancements/recipes/tools/heavy_duty_axe.json new file mode 100644 index 0000000000..7b60bd383a --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/tools/heavy_duty_axe.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_steel": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_steel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:heavy_duty_axe" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_steel" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:heavy_duty_axe" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/tools/heavy_duty_axe_flipped.json b/src/main/generated/data/galacticraft/advancements/recipes/tools/heavy_duty_axe_flipped.json new file mode 100644 index 0000000000..776b58fff5 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/tools/heavy_duty_axe_flipped.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_steel": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_steel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:heavy_duty_axe_flipped" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_steel" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:heavy_duty_axe_flipped" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/tools/heavy_duty_hoe.json b/src/main/generated/data/galacticraft/advancements/recipes/tools/heavy_duty_hoe.json new file mode 100644 index 0000000000..300d7e017b --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/tools/heavy_duty_hoe.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_steel": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_steel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:heavy_duty_hoe" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_steel" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:heavy_duty_hoe" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/tools/heavy_duty_hoe_flipped.json b/src/main/generated/data/galacticraft/advancements/recipes/tools/heavy_duty_hoe_flipped.json new file mode 100644 index 0000000000..27734bea84 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/tools/heavy_duty_hoe_flipped.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_steel": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_steel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:heavy_duty_hoe_flipped" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_steel" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:heavy_duty_hoe_flipped" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/tools/heavy_duty_pickaxe.json b/src/main/generated/data/galacticraft/advancements/recipes/tools/heavy_duty_pickaxe.json new file mode 100644 index 0000000000..511aa6e9e9 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/tools/heavy_duty_pickaxe.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_steel": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_steel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:heavy_duty_pickaxe" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_steel" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:heavy_duty_pickaxe" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/tools/heavy_duty_shovel.json b/src/main/generated/data/galacticraft/advancements/recipes/tools/heavy_duty_shovel.json new file mode 100644 index 0000000000..4574412bb5 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/tools/heavy_duty_shovel.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_steel": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_steel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:heavy_duty_shovel" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_steel" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:heavy_duty_shovel" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/tools/titanium_axe_smithing.json b/src/main/generated/data/galacticraft/advancements/recipes/tools/titanium_axe_smithing.json new file mode 100644 index 0000000000..505915c2be --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/tools/titanium_axe_smithing.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_titanium": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_titanium" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:titanium_axe_smithing" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_titanium" + ] + ], + "rewards": { + "recipes": [ + "minecraft:titanium_axe_smithing" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/tools/titanium_hoe_smithing.json b/src/main/generated/data/galacticraft/advancements/recipes/tools/titanium_hoe_smithing.json new file mode 100644 index 0000000000..552fa6999a --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/tools/titanium_hoe_smithing.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_titanium": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_titanium" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:titanium_hoe_smithing" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_titanium" + ] + ], + "rewards": { + "recipes": [ + "minecraft:titanium_hoe_smithing" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/tools/titanium_pickaxe_smithing.json b/src/main/generated/data/galacticraft/advancements/recipes/tools/titanium_pickaxe_smithing.json new file mode 100644 index 0000000000..b097025607 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/tools/titanium_pickaxe_smithing.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_titanium": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_titanium" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:titanium_pickaxe_smithing" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_titanium" + ] + ], + "rewards": { + "recipes": [ + "minecraft:titanium_pickaxe_smithing" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/tools/titanium_shovel_smithing.json b/src/main/generated/data/galacticraft/advancements/recipes/tools/titanium_shovel_smithing.json new file mode 100644 index 0000000000..d02a734121 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/tools/titanium_shovel_smithing.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_titanium": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_titanium" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "minecraft:titanium_shovel_smithing" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_titanium" + ] + ], + "rewards": { + "recipes": [ + "minecraft:titanium_shovel_smithing" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/transportation/fueling_pad.json b/src/main/generated/data/galacticraft/advancements/recipes/transportation/fueling_pad.json new file mode 100644 index 0000000000..91880f5c83 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/transportation/fueling_pad.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_compressed_steel": { + "conditions": { + "items": [ + { + "items": [ + "galacticraft:compressed_steel" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:fueling_pad" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_compressed_steel" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:fueling_pad" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/advancements/recipes/transportation/rocket_launch_pad.json b/src/main/generated/data/galacticraft/advancements/recipes/transportation/rocket_launch_pad.json new file mode 100644 index 0000000000..b5b9061300 --- /dev/null +++ b/src/main/generated/data/galacticraft/advancements/recipes/transportation/rocket_launch_pad.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_iron_block": { + "conditions": { + "items": [ + { + "items": [ + "minecraft:iron_block" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "galacticraft:rocket_launch_pad" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_iron_block" + ] + ], + "rewards": { + "recipes": [ + "galacticraft:rocket_launch_pad" + ] + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/banner_pattern/rocket.json b/src/main/generated/data/galacticraft/banner_pattern/rocket.json deleted file mode 100644 index a5457081bd..0000000000 --- a/src/main/generated/data/galacticraft/banner_pattern/rocket.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "asset_id": "galacticraft:rocket", - "translation_key": "banner_pattern.galacticraft.rocket" -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/galacticraft/celestial_body/asteroid.json b/src/main/generated/data/galacticraft/celestial_body/asteroid.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/celestial_body/asteroid.json rename to src/main/generated/data/galacticraft/celestial_body/asteroid.json diff --git a/src/main/generated/data/galacticraft/galacticraft/celestial_body/earth.json b/src/main/generated/data/galacticraft/celestial_body/earth.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/celestial_body/earth.json rename to src/main/generated/data/galacticraft/celestial_body/earth.json diff --git a/src/main/generated/data/galacticraft/galacticraft/celestial_body/jupiter.json b/src/main/generated/data/galacticraft/celestial_body/jupiter.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/celestial_body/jupiter.json rename to src/main/generated/data/galacticraft/celestial_body/jupiter.json diff --git a/src/main/generated/data/galacticraft/galacticraft/celestial_body/mars.json b/src/main/generated/data/galacticraft/celestial_body/mars.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/celestial_body/mars.json rename to src/main/generated/data/galacticraft/celestial_body/mars.json diff --git a/src/main/generated/data/galacticraft/galacticraft/celestial_body/mercury.json b/src/main/generated/data/galacticraft/celestial_body/mercury.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/celestial_body/mercury.json rename to src/main/generated/data/galacticraft/celestial_body/mercury.json diff --git a/src/main/generated/data/galacticraft/galacticraft/celestial_body/moon.json b/src/main/generated/data/galacticraft/celestial_body/moon.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/celestial_body/moon.json rename to src/main/generated/data/galacticraft/celestial_body/moon.json diff --git a/src/main/generated/data/galacticraft/galacticraft/celestial_body/neptune.json b/src/main/generated/data/galacticraft/celestial_body/neptune.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/celestial_body/neptune.json rename to src/main/generated/data/galacticraft/celestial_body/neptune.json diff --git a/src/main/generated/data/galacticraft/galacticraft/celestial_body/saturn.json b/src/main/generated/data/galacticraft/celestial_body/saturn.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/celestial_body/saturn.json rename to src/main/generated/data/galacticraft/celestial_body/saturn.json diff --git a/src/main/generated/data/galacticraft/galacticraft/celestial_body/sol.json b/src/main/generated/data/galacticraft/celestial_body/sol.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/celestial_body/sol.json rename to src/main/generated/data/galacticraft/celestial_body/sol.json diff --git a/src/main/generated/data/galacticraft/galacticraft/celestial_body/uranus.json b/src/main/generated/data/galacticraft/celestial_body/uranus.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/celestial_body/uranus.json rename to src/main/generated/data/galacticraft/celestial_body/uranus.json diff --git a/src/main/generated/data/galacticraft/galacticraft/celestial_body/venus.json b/src/main/generated/data/galacticraft/celestial_body/venus.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/celestial_body/venus.json rename to src/main/generated/data/galacticraft/celestial_body/venus.json diff --git a/src/main/generated/data/galacticraft/galacticraft/celestial_teleporter/direct.json b/src/main/generated/data/galacticraft/celestial_teleporter/direct.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/celestial_teleporter/direct.json rename to src/main/generated/data/galacticraft/celestial_teleporter/direct.json diff --git a/src/main/generated/data/galacticraft/galacticraft/celestial_teleporter/lander.json b/src/main/generated/data/galacticraft/celestial_teleporter/lander.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/celestial_teleporter/lander.json rename to src/main/generated/data/galacticraft/celestial_teleporter/lander.json diff --git a/src/main/generated/data/galacticraft/galacticraft/celestial_teleporter/overworld.json b/src/main/generated/data/galacticraft/celestial_teleporter/overworld.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/celestial_teleporter/overworld.json rename to src/main/generated/data/galacticraft/celestial_teleporter/overworld.json diff --git a/src/main/generated/data/galacticraft/dimension_type/moon.json b/src/main/generated/data/galacticraft/dimension_type/moon.json index b4d2a56cfb..0123cdd3aa 100644 --- a/src/main/generated/data/galacticraft/dimension_type/moon.json +++ b/src/main/generated/data/galacticraft/dimension_type/moon.json @@ -13,8 +13,10 @@ "monster_spawn_block_light_limit": 0, "monster_spawn_light_level": { "type": "minecraft:uniform", - "max_inclusive": 7, - "min_inclusive": 0 + "value": { + "max_inclusive": 7, + "min_inclusive": 0 + } }, "natural": true, "piglin_safe": false, diff --git a/src/main/generated/data/galacticraft/dimension_type/venus.json b/src/main/generated/data/galacticraft/dimension_type/venus.json index 44c647f056..d23582d501 100644 --- a/src/main/generated/data/galacticraft/dimension_type/venus.json +++ b/src/main/generated/data/galacticraft/dimension_type/venus.json @@ -13,8 +13,10 @@ "monster_spawn_block_light_limit": 0, "monster_spawn_light_level": { "type": "minecraft:uniform", - "max_inclusive": 7, - "min_inclusive": 0 + "value": { + "max_inclusive": 7, + "min_inclusive": 0 + } }, "natural": false, "piglin_safe": false, diff --git a/src/main/generated/data/galacticraft/galacticraft/galaxy/milky_way.json b/src/main/generated/data/galacticraft/galaxy/milky_way.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/galaxy/milky_way.json rename to src/main/generated/data/galacticraft/galaxy/milky_way.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/chiseled_moon_rock_brick.json b/src/main/generated/data/galacticraft/loot_table/blocks/chiseled_moon_rock_brick.json deleted file mode 100644 index 749d477fbc..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/chiseled_moon_rock_brick.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "galacticraft:chiseled_moon_rock_brick" - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_rock_brick.json b/src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_rock_brick.json deleted file mode 100644 index 04a23f6c6c..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_rock_brick.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "galacticraft:cracked_moon_rock_brick" - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_rock_brick_slab.json b/src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_rock_brick_slab.json deleted file mode 100644 index 0380e1cb9f..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_rock_brick_slab.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "galacticraft:cracked_moon_rock_brick_slab" - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_rock_brick_stairs.json b/src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_rock_brick_stairs.json deleted file mode 100644 index 45b47a14b5..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_rock_brick_stairs.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "galacticraft:cracked_moon_rock_brick_stairs" - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_rock_brick_wall.json b/src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_rock_brick_wall.json deleted file mode 100644 index 03c4c55a38..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_rock_brick_wall.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "galacticraft:cracked_moon_rock_brick_wall" - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/lunaslate.json b/src/main/generated/data/galacticraft/loot_table/blocks/lunaslate.json deleted file mode 100644 index 813e7e25dd..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/lunaslate.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:alternatives", - "children": [ - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ], - "name": "galacticraft:lunaslate" - }, - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "name": "galacticraft:cobbled_lunaslate" - } - ] - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/mars_stone.json b/src/main/generated/data/galacticraft/loot_table/blocks/mars_stone.json deleted file mode 100644 index ba64e709f8..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/mars_stone.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:alternatives", - "children": [ - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ], - "name": "galacticraft:mars_stone" - }, - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "name": "galacticraft:mars_cobblestone" - } - ] - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock.json b/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock.json deleted file mode 100644 index 6a78d73d85..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:alternatives", - "children": [ - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ], - "name": "galacticraft:moon_rock" - }, - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "name": "galacticraft:cobbled_moon_rock" - } - ] - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_brick.json b/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_brick.json deleted file mode 100644 index 894dc80e7b..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_brick.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "galacticraft:moon_rock_brick" - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_brick_slab.json b/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_brick_slab.json deleted file mode 100644 index 1c8b0c3b1d..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_brick_slab.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "galacticraft:moon_rock_brick_slab" - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_brick_stairs.json b/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_brick_stairs.json deleted file mode 100644 index 7313d7bb3b..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_brick_stairs.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "galacticraft:moon_rock_brick_stairs" - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_brick_wall.json b/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_brick_wall.json deleted file mode 100644 index 3441d3789a..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_brick_wall.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "galacticraft:moon_rock_brick_wall" - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_pillar.json b/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_pillar.json deleted file mode 100644 index 5c04a44fd4..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_pillar.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "galacticraft:moon_rock_pillar" - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/olivine_basalt.json b/src/main/generated/data/galacticraft/loot_table/blocks/olivine_basalt.json deleted file mode 100644 index 34e6dc1e6e..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/olivine_basalt.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:alternatives", - "children": [ - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ], - "name": "galacticraft:olivine_basalt" - }, - { - "type": "minecraft:item", - "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 2.0, - "min": 1.0 - }, - "function": "minecraft:set_count" - }, - { - "enchantment": "minecraft:fortune", - "formula": "minecraft:uniform_bonus_count", - "function": "minecraft:apply_bonus", - "parameters": { - "bonusMultiplier": 1 - } - }, - { - "function": "minecraft:explosion_decay" - } - ], - "name": "galacticraft:olivine_shard" - } - ] - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/olivine_block.json b/src/main/generated/data/galacticraft/loot_table/blocks/olivine_block.json deleted file mode 100644 index 8d8cc3bf56..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/olivine_block.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "galacticraft:olivine_block" - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/olivine_cluster.json b/src/main/generated/data/galacticraft/loot_table/blocks/olivine_cluster.json deleted file mode 100644 index d6c7b8e47d..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/olivine_cluster.json +++ /dev/null @@ -1,80 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:alternatives", - "children": [ - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ], - "name": "galacticraft:olivine_cluster" - }, - { - "type": "minecraft:alternatives", - "children": [ - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "items": "#minecraft:cluster_max_harvestables" - } - } - ], - "functions": [ - { - "add": false, - "count": 4.0, - "function": "minecraft:set_count" - }, - { - "enchantment": "minecraft:fortune", - "formula": "minecraft:ore_drops", - "function": "minecraft:apply_bonus" - } - ], - "name": "galacticraft:olivine_shard" - }, - { - "type": "minecraft:item", - "functions": [ - { - "add": false, - "count": 2.0, - "function": "minecraft:set_count" - }, - { - "function": "minecraft:explosion_decay" - } - ], - "name": "galacticraft:olivine_shard" - } - ] - } - ] - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/polished_moon_rock.json b/src/main/generated/data/galacticraft/loot_table/blocks/polished_moon_rock.json deleted file mode 100644 index aa776e564c..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/polished_moon_rock.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "galacticraft:polished_moon_rock" - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/polished_moon_rock_slab.json b/src/main/generated/data/galacticraft/loot_table/blocks/polished_moon_rock_slab.json deleted file mode 100644 index d27948ff91..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/polished_moon_rock_slab.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "galacticraft:polished_moon_rock_slab" - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/polished_moon_rock_stairs.json b/src/main/generated/data/galacticraft/loot_table/blocks/polished_moon_rock_stairs.json deleted file mode 100644 index 8131b1f018..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/polished_moon_rock_stairs.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "galacticraft:polished_moon_rock_stairs" - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/polished_moon_rock_wall.json b/src/main/generated/data/galacticraft/loot_table/blocks/polished_moon_rock_wall.json deleted file mode 100644 index b3e97b8bd6..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/polished_moon_rock_wall.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "galacticraft:polished_moon_rock_wall" - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/rich_olivine_basalt.json b/src/main/generated/data/galacticraft/loot_table/blocks/rich_olivine_basalt.json deleted file mode 100644 index d5f4644945..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/rich_olivine_basalt.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:alternatives", - "children": [ - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ], - "name": "galacticraft:rich_olivine_basalt" - }, - { - "type": "minecraft:item", - "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 4.0, - "min": 3.0 - }, - "function": "minecraft:set_count" - }, - { - "enchantment": "minecraft:fortune", - "formula": "minecraft:uniform_bonus_count", - "function": "minecraft:apply_bonus", - "parameters": { - "bonusMultiplier": 1 - } - }, - { - "function": "minecraft:explosion_decay" - } - ], - "name": "galacticraft:olivine_shard" - } - ] - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/vapor_spout.json b/src/main/generated/data/galacticraft/loot_table/blocks/vapor_spout.json deleted file mode 100644 index 026e5693d2..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/vapor_spout.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:alternatives", - "children": [ - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ], - "name": "galacticraft:vapor_spout" - }, - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "name": "galacticraft:soft_venus_rock" - } - ] - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/volcanic_rock.json b/src/main/generated/data/galacticraft/loot_table/blocks/volcanic_rock.json deleted file mode 100644 index a29f52d3f3..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/blocks/volcanic_rock.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "galacticraft:volcanic_rock" - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/entities/evolved_zombie.json b/src/main/generated/data/galacticraft/loot_table/entities/evolved_zombie.json deleted file mode 100644 index d2e5718d0d..0000000000 --- a/src/main/generated/data/galacticraft/loot_table/entities/evolved_zombie.json +++ /dev/null @@ -1,107 +0,0 @@ -{ - "type": "minecraft:entity", - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 2.0, - "min": 0.0 - }, - "function": "minecraft:set_count" - }, - { - "count": { - "type": "minecraft:uniform", - "max": 1.0, - "min": 0.0 - }, - "enchantment": "minecraft:looting", - "function": "minecraft:enchanted_count_increase" - } - ], - "name": "minecraft:rotten_flesh" - } - ], - "rolls": 1.0 - }, - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:killed_by_player" - }, - { - "condition": "minecraft:random_chance_with_enchanted_bonus", - "enchanted_chance": { - "type": "minecraft:linear", - "base": 0.035, - "per_level_above_first": 0.01 - }, - "enchantment": "minecraft:looting", - "unenchanted_chance": 0.025 - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "minecraft:iron_ingot" - }, - { - "type": "minecraft:item", - "name": "minecraft:carrot" - }, - { - "type": "minecraft:item", - "functions": [ - { - "conditions": [ - { - "condition": "minecraft:any_of", - "terms": [ - { - "condition": "minecraft:entity_properties", - "entity": "this", - "predicate": { - "flags": { - "is_on_fire": true - } - } - }, - { - "condition": "minecraft:entity_properties", - "entity": "direct_attacker", - "predicate": { - "equipment": { - "mainhand": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "#minecraft:smelts_loot" - } - ] - } - } - } - } - } - ] - } - ], - "function": "minecraft:furnace_smelt" - } - ], - "name": "minecraft:potato" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "galacticraft:entities/evolved_zombie" -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/advanced_solar_panel.json b/src/main/generated/data/galacticraft/loot_tables/blocks/advanced_solar_panel.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/advanced_solar_panel.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/advanced_solar_panel.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/air_lock_controller.json b/src/main/generated/data/galacticraft/loot_tables/blocks/air_lock_controller.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/air_lock_controller.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/air_lock_controller.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/air_lock_frame.json b/src/main/generated/data/galacticraft/loot_tables/blocks/air_lock_frame.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/air_lock_frame.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/air_lock_frame.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/air_lock_seal.json b/src/main/generated/data/galacticraft/loot_tables/blocks/air_lock_seal.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/air_lock_seal.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/air_lock_seal.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/aluminum_decoration.json b/src/main/generated/data/galacticraft/loot_tables/blocks/aluminum_decoration.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/aluminum_decoration.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/aluminum_decoration.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/aluminum_decoration_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/aluminum_decoration_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/aluminum_decoration_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/aluminum_decoration_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/aluminum_decoration_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/aluminum_decoration_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/aluminum_decoration_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/aluminum_decoration_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/aluminum_decoration_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/aluminum_decoration_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/aluminum_decoration_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/aluminum_decoration_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/aluminum_ore.json b/src/main/generated/data/galacticraft/loot_tables/blocks/aluminum_ore.json similarity index 75% rename from src/main/generated/data/galacticraft/loot_table/blocks/aluminum_ore.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/aluminum_ore.json index c5eb4e17a5..81c65c5224 100644 --- a/src/main/generated/data/galacticraft/loot_table/blocks/aluminum_ore.json +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/aluminum_ore.json @@ -13,16 +13,14 @@ { "condition": "minecraft:match_tool", "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 } - ] - } + } + ] } } ], diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/aluminum_wire.json b/src/main/generated/data/galacticraft/loot_tables/blocks/aluminum_wire.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/aluminum_wire.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/aluminum_wire.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/asteroid_aluminum_ore.json b/src/main/generated/data/galacticraft/loot_tables/blocks/asteroid_aluminum_ore.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/asteroid_aluminum_ore.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/asteroid_aluminum_ore.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/asteroid_iron_ore.json b/src/main/generated/data/galacticraft/loot_tables/blocks/asteroid_iron_ore.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/asteroid_iron_ore.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/asteroid_iron_ore.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/asteroid_rock.json b/src/main/generated/data/galacticraft/loot_tables/blocks/asteroid_rock.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/asteroid_rock.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/asteroid_rock.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/asteroid_rock_block_1.json b/src/main/generated/data/galacticraft/loot_tables/blocks/asteroid_rock_block_1.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/asteroid_rock_block_1.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/asteroid_rock_block_1.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/asteroid_rock_block_2.json b/src/main/generated/data/galacticraft/loot_tables/blocks/asteroid_rock_block_2.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/asteroid_rock_block_2.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/asteroid_rock_block_2.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/asteroid_silicon_ore.json b/src/main/generated/data/galacticraft/loot_tables/blocks/asteroid_silicon_ore.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/asteroid_silicon_ore.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/asteroid_silicon_ore.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/basic_solar_panel.json b/src/main/generated/data/galacticraft/loot_tables/blocks/basic_solar_panel.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/basic_solar_panel.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/basic_solar_panel.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/black_candle_moon_cheese_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/black_candle_moon_cheese_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/black_candle_moon_cheese_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/black_candle_moon_cheese_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/blue_candle_moon_cheese_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/blue_candle_moon_cheese_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/blue_candle_moon_cheese_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/blue_candle_moon_cheese_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/bronze_decoration.json b/src/main/generated/data/galacticraft/loot_tables/blocks/bronze_decoration.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/bronze_decoration.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/bronze_decoration.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/bronze_decoration_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/bronze_decoration_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/bronze_decoration_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/bronze_decoration_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/bronze_decoration_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/bronze_decoration_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/bronze_decoration_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/bronze_decoration_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/bronze_decoration_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/bronze_decoration_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/bronze_decoration_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/bronze_decoration_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/brown_candle_moon_cheese_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/brown_candle_moon_cheese_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/brown_candle_moon_cheese_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/brown_candle_moon_cheese_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/candle_moon_cheese_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/candle_moon_cheese_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/candle_moon_cheese_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/candle_moon_cheese_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/cavernous_vines.json b/src/main/generated/data/galacticraft/loot_tables/blocks/cavernous_vines.json similarity index 84% rename from src/main/generated/data/galacticraft/loot_table/blocks/cavernous_vines.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/cavernous_vines.json index 61927b5f35..8f057dc74c 100644 --- a/src/main/generated/data/galacticraft/loot_table/blocks/cavernous_vines.json +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/cavernous_vines.json @@ -7,7 +7,9 @@ { "condition": "minecraft:match_tool", "predicate": { - "items": "minecraft:shears" + "items": [ + "minecraft:shears" + ] } } ], diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/circuit_fabricator.json b/src/main/generated/data/galacticraft/loot_tables/blocks/circuit_fabricator.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/circuit_fabricator.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/circuit_fabricator.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/coal_generator.json b/src/main/generated/data/galacticraft/loot_tables/blocks/coal_generator.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/coal_generator.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/coal_generator.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/cobbled_lunaslate.json b/src/main/generated/data/galacticraft/loot_tables/blocks/cobbled_lunaslate.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/cobbled_lunaslate.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/cobbled_lunaslate.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/cobbled_lunaslate_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/cobbled_lunaslate_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/cobbled_lunaslate_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/cobbled_lunaslate_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/cobbled_lunaslate_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/cobbled_lunaslate_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/cobbled_lunaslate_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/cobbled_lunaslate_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/cobbled_lunaslate_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/cobbled_lunaslate_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/cobbled_lunaslate_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/cobbled_lunaslate_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/cobbled_moon_rock.json b/src/main/generated/data/galacticraft/loot_tables/blocks/cobbled_moon_rock.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/cobbled_moon_rock.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/cobbled_moon_rock.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/cobbled_moon_rock_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/cobbled_moon_rock_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/cobbled_moon_rock_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/cobbled_moon_rock_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/cobbled_moon_rock_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/cobbled_moon_rock_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/cobbled_moon_rock_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/cobbled_moon_rock_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/cobbled_moon_rock_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/cobbled_moon_rock_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/cobbled_moon_rock_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/cobbled_moon_rock_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/compressor.json b/src/main/generated/data/galacticraft/loot_tables/blocks/compressor.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/compressor.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/compressor.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/copper_decoration.json b/src/main/generated/data/galacticraft/loot_tables/blocks/copper_decoration.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/copper_decoration.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/copper_decoration.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/copper_decoration_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/copper_decoration_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/copper_decoration_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/copper_decoration_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/copper_decoration_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/copper_decoration_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/copper_decoration_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/copper_decoration_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/copper_decoration_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/copper_decoration_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/copper_decoration_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/copper_decoration_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_basalt_brick.json b/src/main/generated/data/galacticraft/loot_tables/blocks/cracked_moon_basalt_brick.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_basalt_brick.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/cracked_moon_basalt_brick.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_basalt_brick_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/cracked_moon_basalt_brick_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_basalt_brick_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/cracked_moon_basalt_brick_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_basalt_brick_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/cracked_moon_basalt_brick_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_basalt_brick_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/cracked_moon_basalt_brick_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_basalt_brick_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/cracked_moon_basalt_brick_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/cracked_moon_basalt_brick_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/cracked_moon_basalt_brick_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/cryogenic_chamber.json b/src/main/generated/data/galacticraft/loot_tables/blocks/cryogenic_chamber.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/cryogenic_chamber.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/cryogenic_chamber.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/cyan_candle_moon_cheese_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/cyan_candle_moon_cheese_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/cyan_candle_moon_cheese_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/cyan_candle_moon_cheese_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/dark_decoration.json b/src/main/generated/data/galacticraft/loot_tables/blocks/dark_decoration.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/dark_decoration.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/dark_decoration.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/dark_decoration_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/dark_decoration_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/dark_decoration_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/dark_decoration_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/dark_decoration_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/dark_decoration_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/dark_decoration_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/dark_decoration_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/dark_decoration_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/dark_decoration_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/dark_decoration_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/dark_decoration_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/dashed_light_panel.json b/src/main/generated/data/galacticraft/loot_tables/blocks/dashed_light_panel.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/dashed_light_panel.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/dashed_light_panel.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/deepslate_aluminum_ore.json b/src/main/generated/data/galacticraft/loot_tables/blocks/deepslate_aluminum_ore.json similarity index 75% rename from src/main/generated/data/galacticraft/loot_table/blocks/deepslate_aluminum_ore.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/deepslate_aluminum_ore.json index c5eb4e17a5..81c65c5224 100644 --- a/src/main/generated/data/galacticraft/loot_table/blocks/deepslate_aluminum_ore.json +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/deepslate_aluminum_ore.json @@ -13,16 +13,14 @@ { "condition": "minecraft:match_tool", "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 } - ] - } + } + ] } } ], diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/deepslate_silicon_ore.json b/src/main/generated/data/galacticraft/loot_tables/blocks/deepslate_silicon_ore.json similarity index 80% rename from src/main/generated/data/galacticraft/loot_table/blocks/deepslate_silicon_ore.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/deepslate_silicon_ore.json index 0f7bbb0ae7..b082a675f2 100644 --- a/src/main/generated/data/galacticraft/loot_table/blocks/deepslate_silicon_ore.json +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/deepslate_silicon_ore.json @@ -13,16 +13,14 @@ { "condition": "minecraft:match_tool", "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 } - ] - } + } + ] } } ], diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/deepslate_tin_ore.json b/src/main/generated/data/galacticraft/loot_tables/blocks/deepslate_tin_ore.json similarity index 75% rename from src/main/generated/data/galacticraft/loot_table/blocks/deepslate_tin_ore.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/deepslate_tin_ore.json index c2b4a8bc05..5d92523861 100644 --- a/src/main/generated/data/galacticraft/loot_table/blocks/deepslate_tin_ore.json +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/deepslate_tin_ore.json @@ -13,16 +13,14 @@ { "condition": "minecraft:match_tool", "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 } - ] - } + } + ] } } ], diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/dense_ice.json b/src/main/generated/data/galacticraft/loot_tables/blocks/dense_ice.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/dense_ice.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/dense_ice.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/desh_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/desh_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/desh_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/desh_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/desh_ore.json b/src/main/generated/data/galacticraft/loot_tables/blocks/desh_ore.json similarity index 75% rename from src/main/generated/data/galacticraft/loot_table/blocks/desh_ore.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/desh_ore.json index 2dacc6b8f7..02eeaec61b 100644 --- a/src/main/generated/data/galacticraft/loot_table/blocks/desh_ore.json +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/desh_ore.json @@ -13,16 +13,14 @@ { "condition": "minecraft:match_tool", "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 } - ] - } + } + ] } } ], diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_aluminum_decoration.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_aluminum_decoration.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_aluminum_decoration.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_aluminum_decoration.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_aluminum_decoration_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_aluminum_decoration_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_aluminum_decoration_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_aluminum_decoration_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_aluminum_decoration_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_aluminum_decoration_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_aluminum_decoration_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_aluminum_decoration_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_aluminum_decoration_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_aluminum_decoration_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_aluminum_decoration_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_aluminum_decoration_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_bronze_decoration.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_bronze_decoration.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_bronze_decoration.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_bronze_decoration.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_bronze_decoration_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_bronze_decoration_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_bronze_decoration_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_bronze_decoration_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_bronze_decoration_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_bronze_decoration_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_bronze_decoration_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_bronze_decoration_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_bronze_decoration_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_bronze_decoration_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_bronze_decoration_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_bronze_decoration_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_copper_decoration.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_copper_decoration.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_copper_decoration.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_copper_decoration.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_copper_decoration_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_copper_decoration_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_copper_decoration_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_copper_decoration_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_copper_decoration_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_copper_decoration_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_copper_decoration_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_copper_decoration_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_copper_decoration_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_copper_decoration_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_copper_decoration_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_copper_decoration_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_dark_decoration.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_dark_decoration.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_dark_decoration.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_dark_decoration.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_dark_decoration_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_dark_decoration_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_dark_decoration_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_dark_decoration_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_dark_decoration_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_dark_decoration_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_dark_decoration_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_dark_decoration_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_dark_decoration_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_dark_decoration_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_dark_decoration_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_dark_decoration_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_iron_decoration.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_iron_decoration.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_iron_decoration.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_iron_decoration.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_iron_decoration_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_iron_decoration_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_iron_decoration_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_iron_decoration_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_iron_decoration_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_iron_decoration_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_iron_decoration_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_iron_decoration_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_iron_decoration_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_iron_decoration_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_iron_decoration_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_iron_decoration_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_meteoric_iron_decoration.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_meteoric_iron_decoration.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_meteoric_iron_decoration.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_meteoric_iron_decoration.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_meteoric_iron_decoration_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_meteoric_iron_decoration_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_meteoric_iron_decoration_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_meteoric_iron_decoration_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_meteoric_iron_decoration_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_meteoric_iron_decoration_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_meteoric_iron_decoration_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_meteoric_iron_decoration_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_meteoric_iron_decoration_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_meteoric_iron_decoration_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_meteoric_iron_decoration_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_meteoric_iron_decoration_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_steel_decoration.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_steel_decoration.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_steel_decoration.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_steel_decoration.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_steel_decoration_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_steel_decoration_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_steel_decoration_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_steel_decoration_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_steel_decoration_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_steel_decoration_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_steel_decoration_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_steel_decoration_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_steel_decoration_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_steel_decoration_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_steel_decoration_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_steel_decoration_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_tin_decoration.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_tin_decoration.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_tin_decoration.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_tin_decoration.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_tin_decoration_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_tin_decoration_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_tin_decoration_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_tin_decoration_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_tin_decoration_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_tin_decoration_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_tin_decoration_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_tin_decoration_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_tin_decoration_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_tin_decoration_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_tin_decoration_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_tin_decoration_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_titanium_decoration.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_titanium_decoration.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_titanium_decoration.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_titanium_decoration.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_titanium_decoration_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_titanium_decoration_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_titanium_decoration_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_titanium_decoration_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_titanium_decoration_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_titanium_decoration_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_titanium_decoration_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_titanium_decoration_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/detailed_titanium_decoration_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/detailed_titanium_decoration_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/detailed_titanium_decoration_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/detailed_titanium_decoration_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/diagonal_light_panel.json b/src/main/generated/data/galacticraft/loot_tables/blocks/diagonal_light_panel.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/diagonal_light_panel.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/diagonal_light_panel.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/electric_arc_furnace.json b/src/main/generated/data/galacticraft/loot_tables/blocks/electric_arc_furnace.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/electric_arc_furnace.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/electric_arc_furnace.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/electric_compressor.json b/src/main/generated/data/galacticraft/loot_tables/blocks/electric_compressor.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/electric_compressor.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/electric_compressor.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/electric_furnace.json b/src/main/generated/data/galacticraft/loot_tables/blocks/electric_furnace.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/electric_furnace.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/electric_furnace.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/energy_storage_module.json b/src/main/generated/data/galacticraft/loot_tables/blocks/energy_storage_module.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/energy_storage_module.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/energy_storage_module.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/fallen_meteor.json b/src/main/generated/data/galacticraft/loot_tables/blocks/fallen_meteor.json similarity index 77% rename from src/main/generated/data/galacticraft/loot_table/blocks/fallen_meteor.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/fallen_meteor.json index 159e64d072..1a352f9f1b 100644 --- a/src/main/generated/data/galacticraft/loot_table/blocks/fallen_meteor.json +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/fallen_meteor.json @@ -13,16 +13,14 @@ { "condition": "minecraft:match_tool", "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 } - ] - } + } + ] } } ], diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/fluid_pipe_walkway.json b/src/main/generated/data/galacticraft/loot_tables/blocks/fluid_pipe_walkway.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/fluid_pipe_walkway.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/fluid_pipe_walkway.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/food_canner.json b/src/main/generated/data/galacticraft/loot_tables/blocks/food_canner.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/food_canner.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/food_canner.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/fuel_loader.json b/src/main/generated/data/galacticraft/loot_tables/blocks/fuel_loader.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/fuel_loader.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/fuel_loader.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/fueling_pad.json b/src/main/generated/data/galacticraft/loot_tables/blocks/fueling_pad.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/fueling_pad.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/fueling_pad.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/galena_ore.json b/src/main/generated/data/galacticraft/loot_tables/blocks/galena_ore.json similarity index 75% rename from src/main/generated/data/galacticraft/loot_table/blocks/galena_ore.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/galena_ore.json index 26abbf31d3..0acc90c068 100644 --- a/src/main/generated/data/galacticraft/loot_table/blocks/galena_ore.json +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/galena_ore.json @@ -13,16 +13,14 @@ { "condition": "minecraft:match_tool", "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 } - ] - } + } + ] } } ], diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/glass_fluid_pipe.json b/src/main/generated/data/galacticraft/loot_tables/blocks/glass_fluid_pipe.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/glass_fluid_pipe.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/glass_fluid_pipe.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/glowstone_lantern.json b/src/main/generated/data/galacticraft/loot_tables/blocks/glowstone_lantern.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/glowstone_lantern.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/glowstone_lantern.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/glowstone_torch.json b/src/main/generated/data/galacticraft/loot_tables/blocks/glowstone_torch.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/glowstone_torch.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/glowstone_torch.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/grating.json b/src/main/generated/data/galacticraft/loot_tables/blocks/grating.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/grating.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/grating.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/gray_candle_moon_cheese_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/gray_candle_moon_cheese_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/gray_candle_moon_cheese_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/gray_candle_moon_cheese_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/green_candle_moon_cheese_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/green_candle_moon_cheese_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/green_candle_moon_cheese_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/green_candle_moon_cheese_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/hard_venus_rock.json b/src/main/generated/data/galacticraft/loot_tables/blocks/hard_venus_rock.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/hard_venus_rock.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/hard_venus_rock.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/heavy_sealable_aluminum_wire.json b/src/main/generated/data/galacticraft/loot_tables/blocks/heavy_sealable_aluminum_wire.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/heavy_sealable_aluminum_wire.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/heavy_sealable_aluminum_wire.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/ilmenite_ore.json b/src/main/generated/data/galacticraft/loot_tables/blocks/ilmenite_ore.json similarity index 75% rename from src/main/generated/data/galacticraft/loot_table/blocks/ilmenite_ore.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/ilmenite_ore.json index e9c13151e6..6c7dbe4e04 100644 --- a/src/main/generated/data/galacticraft/loot_table/blocks/ilmenite_ore.json +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/ilmenite_ore.json @@ -13,16 +13,14 @@ { "condition": "minecraft:match_tool", "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 } - ] - } + } + ] } } ], diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/iron_decoration.json b/src/main/generated/data/galacticraft/loot_tables/blocks/iron_decoration.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/iron_decoration.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/iron_decoration.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/iron_decoration_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/iron_decoration_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/iron_decoration_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/iron_decoration_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/iron_decoration_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/iron_decoration_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/iron_decoration_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/iron_decoration_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/iron_decoration_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/iron_decoration_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/iron_decoration_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/iron_decoration_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/lead_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/lead_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/lead_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/lead_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/light_blue_candle_moon_cheese_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/light_blue_candle_moon_cheese_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/light_blue_candle_moon_cheese_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/light_blue_candle_moon_cheese_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/light_gray_candle_moon_cheese_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/light_gray_candle_moon_cheese_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/light_gray_candle_moon_cheese_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/light_gray_candle_moon_cheese_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/lime_candle_moon_cheese_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/lime_candle_moon_cheese_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/lime_candle_moon_cheese_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/lime_candle_moon_cheese_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/linear_light_panel.json b/src/main/generated/data/galacticraft/loot_tables/blocks/linear_light_panel.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/linear_light_panel.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/linear_light_panel.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/lunar_cartography_table.json b/src/main/generated/data/galacticraft/loot_tables/blocks/lunar_cartography_table.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/lunar_cartography_table.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/lunar_cartography_table.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/lunar_sapphire_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/lunar_sapphire_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/lunar_sapphire_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/lunar_sapphire_block.json diff --git a/src/main/generated/data/galacticraft/loot_tables/blocks/lunaslate.json b/src/main/generated/data/galacticraft/loot_tables/blocks/lunaslate.json new file mode 100644 index 0000000000..19689f043e --- /dev/null +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/lunaslate.json @@ -0,0 +1,44 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ], + "name": "galacticraft:lunaslate" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "name": "galacticraft:cobbled_lunaslate" + } + ] + } + ], + "rolls": 1.0 + } + ] +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/lunaslate_copper_ore.json b/src/main/generated/data/galacticraft/loot_tables/blocks/lunaslate_copper_ore.json similarity index 79% rename from src/main/generated/data/galacticraft/loot_table/blocks/lunaslate_copper_ore.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/lunaslate_copper_ore.json index 7753d3093d..077224bed2 100644 --- a/src/main/generated/data/galacticraft/loot_table/blocks/lunaslate_copper_ore.json +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/lunaslate_copper_ore.json @@ -13,16 +13,14 @@ { "condition": "minecraft:match_tool", "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 } - ] - } + } + ] } } ], diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/lunaslate_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/lunaslate_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/lunaslate_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/lunaslate_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/lunaslate_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/lunaslate_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/lunaslate_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/lunaslate_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/lunaslate_tin_ore.json b/src/main/generated/data/galacticraft/loot_tables/blocks/lunaslate_tin_ore.json similarity index 75% rename from src/main/generated/data/galacticraft/loot_table/blocks/lunaslate_tin_ore.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/lunaslate_tin_ore.json index 70e2f04ce8..ec9800f262 100644 --- a/src/main/generated/data/galacticraft/loot_table/blocks/lunaslate_tin_ore.json +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/lunaslate_tin_ore.json @@ -13,16 +13,14 @@ { "condition": "minecraft:match_tool", "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 } - ] - } + } + ] } } ], diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/lunaslate_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/lunaslate_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/lunaslate_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/lunaslate_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/magenta_candle_moon_cheese_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/magenta_candle_moon_cheese_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/magenta_candle_moon_cheese_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/magenta_candle_moon_cheese_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/mars_cobblestone.json b/src/main/generated/data/galacticraft/loot_tables/blocks/mars_cobblestone.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/mars_cobblestone.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/mars_cobblestone.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/mars_cobblestone_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/mars_cobblestone_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/mars_cobblestone_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/mars_cobblestone_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/mars_cobblestone_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/mars_cobblestone_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/mars_cobblestone_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/mars_cobblestone_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/mars_cobblestone_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/mars_cobblestone_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/mars_cobblestone_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/mars_cobblestone_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/mars_copper_ore.json b/src/main/generated/data/galacticraft/loot_tables/blocks/mars_copper_ore.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/mars_copper_ore.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/mars_copper_ore.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/mars_iron_ore.json b/src/main/generated/data/galacticraft/loot_tables/blocks/mars_iron_ore.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/mars_iron_ore.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/mars_iron_ore.json diff --git a/src/main/generated/data/galacticraft/loot_tables/blocks/mars_stone.json b/src/main/generated/data/galacticraft/loot_tables/blocks/mars_stone.json new file mode 100644 index 0000000000..34e702ea32 --- /dev/null +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/mars_stone.json @@ -0,0 +1,44 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ], + "name": "galacticraft:mars_stone" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "name": "galacticraft:mars_cobblestone" + } + ] + } + ], + "rolls": 1.0 + } + ] +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/mars_stone_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/mars_stone_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/mars_stone_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/mars_stone_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/mars_stone_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/mars_stone_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/mars_stone_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/mars_stone_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/mars_stone_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/mars_stone_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/mars_stone_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/mars_stone_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/mars_sub_surface_rock.json b/src/main/generated/data/galacticraft/loot_tables/blocks/mars_sub_surface_rock.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/mars_sub_surface_rock.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/mars_sub_surface_rock.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/mars_surface_rock.json b/src/main/generated/data/galacticraft/loot_tables/blocks/mars_surface_rock.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/mars_surface_rock.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/mars_surface_rock.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/mars_tin_ore.json b/src/main/generated/data/galacticraft/loot_tables/blocks/mars_tin_ore.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/mars_tin_ore.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/mars_tin_ore.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/meteoric_iron_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/meteoric_iron_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/meteoric_iron_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/meteoric_iron_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/meteoric_iron_decoration.json b/src/main/generated/data/galacticraft/loot_tables/blocks/meteoric_iron_decoration.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/meteoric_iron_decoration.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/meteoric_iron_decoration.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/meteoric_iron_decoration_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/meteoric_iron_decoration_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/meteoric_iron_decoration_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/meteoric_iron_decoration_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/meteoric_iron_decoration_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/meteoric_iron_decoration_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/meteoric_iron_decoration_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/meteoric_iron_decoration_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/meteoric_iron_decoration_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/meteoric_iron_decoration_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/meteoric_iron_decoration_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/meteoric_iron_decoration_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_basalt.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_basalt.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/moon_basalt.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/moon_basalt.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_basalt_brick.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_basalt_brick.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/moon_basalt_brick.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/moon_basalt_brick.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_basalt_brick_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_basalt_brick_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/moon_basalt_brick_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/moon_basalt_brick_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_basalt_brick_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_basalt_brick_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/moon_basalt_brick_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/moon_basalt_brick_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_basalt_brick_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_basalt_brick_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/moon_basalt_brick_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/moon_basalt_brick_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_basalt_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_basalt_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/moon_basalt_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/moon_basalt_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_basalt_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_basalt_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/moon_basalt_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/moon_basalt_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_basalt_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_basalt_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/moon_basalt_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/moon_basalt_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_cheese_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_cheese_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/moon_cheese_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/moon_cheese_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_copper_ore.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_copper_ore.json similarity index 79% rename from src/main/generated/data/galacticraft/loot_table/blocks/moon_copper_ore.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/moon_copper_ore.json index 7753d3093d..077224bed2 100644 --- a/src/main/generated/data/galacticraft/loot_table/blocks/moon_copper_ore.json +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_copper_ore.json @@ -13,16 +13,14 @@ { "condition": "minecraft:match_tool", "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 } - ] - } + } + ] } } ], diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_dirt.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_dirt.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/moon_dirt.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/moon_dirt.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_dirt_path.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_dirt_path.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/moon_dirt_path.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/moon_dirt_path.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_dungeon_brick.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_dungeon_brick.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/moon_dungeon_brick.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/moon_dungeon_brick.json diff --git a/src/main/generated/data/galacticraft/loot_tables/blocks/moon_rock.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_rock.json new file mode 100644 index 0000000000..8a10197dfe --- /dev/null +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_rock.json @@ -0,0 +1,44 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ], + "name": "galacticraft:moon_rock" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "name": "galacticraft:cobbled_moon_rock" + } + ] + } + ], + "rolls": 1.0 + } + ] +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_rock_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/moon_rock_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_rock_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/moon_rock_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_rock_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/moon_rock_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/moon_rock_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_surface_rock.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_surface_rock.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/moon_surface_rock.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/moon_surface_rock.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_tin_ore.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_tin_ore.json similarity index 75% rename from src/main/generated/data/galacticraft/loot_table/blocks/moon_tin_ore.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/moon_tin_ore.json index 711799f697..6f06d43633 100644 --- a/src/main/generated/data/galacticraft/loot_table/blocks/moon_tin_ore.json +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_tin_ore.json @@ -13,16 +13,14 @@ { "condition": "minecraft:match_tool", "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 } - ] - } + } + ] } } ], diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/moon_turf.json b/src/main/generated/data/galacticraft/loot_tables/blocks/moon_turf.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/moon_turf.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/moon_turf.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/orange_candle_moon_cheese_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/orange_candle_moon_cheese_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/orange_candle_moon_cheese_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/orange_candle_moon_cheese_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/oxygen_bubble_distributor.json b/src/main/generated/data/galacticraft/loot_tables/blocks/oxygen_bubble_distributor.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/oxygen_bubble_distributor.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/oxygen_bubble_distributor.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/oxygen_collector.json b/src/main/generated/data/galacticraft/loot_tables/blocks/oxygen_collector.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/oxygen_collector.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/oxygen_collector.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/oxygen_compressor.json b/src/main/generated/data/galacticraft/loot_tables/blocks/oxygen_compressor.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/oxygen_compressor.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/oxygen_compressor.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/oxygen_decompressor.json b/src/main/generated/data/galacticraft/loot_tables/blocks/oxygen_decompressor.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/oxygen_decompressor.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/oxygen_decompressor.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/oxygen_sealer.json b/src/main/generated/data/galacticraft/loot_tables/blocks/oxygen_sealer.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/oxygen_sealer.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/oxygen_sealer.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/oxygen_storage_module.json b/src/main/generated/data/galacticraft/loot_tables/blocks/oxygen_storage_module.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/oxygen_storage_module.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/oxygen_storage_module.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/parachest.json b/src/main/generated/data/galacticraft/loot_tables/blocks/parachest.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/parachest.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/parachest.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/pink_candle_moon_cheese_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/pink_candle_moon_cheese_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/pink_candle_moon_cheese_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/pink_candle_moon_cheese_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/player_transport_tube.json b/src/main/generated/data/galacticraft/loot_tables/blocks/player_transport_tube.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/player_transport_tube.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/player_transport_tube.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/pumice.json b/src/main/generated/data/galacticraft/loot_tables/blocks/pumice.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/pumice.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/pumice.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/purple_candle_moon_cheese_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/purple_candle_moon_cheese_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/purple_candle_moon_cheese_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/purple_candle_moon_cheese_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/red_candle_moon_cheese_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/red_candle_moon_cheese_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/red_candle_moon_cheese_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/red_candle_moon_cheese_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/refinery.json b/src/main/generated/data/galacticraft/loot_tables/blocks/refinery.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/refinery.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/refinery.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/rocket_launch_pad.json b/src/main/generated/data/galacticraft/loot_tables/blocks/rocket_launch_pad.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/rocket_launch_pad.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/rocket_launch_pad.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/rocket_workbench.json b/src/main/generated/data/galacticraft/loot_tables/blocks/rocket_workbench.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/rocket_workbench.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/rocket_workbench.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/scorched_venus_rock.json b/src/main/generated/data/galacticraft/loot_tables/blocks/scorched_venus_rock.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/scorched_venus_rock.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/scorched_venus_rock.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/sealable_aluminum_wire.json b/src/main/generated/data/galacticraft/loot_tables/blocks/sealable_aluminum_wire.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/sealable_aluminum_wire.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/sealable_aluminum_wire.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/silicon_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/silicon_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/silicon_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/silicon_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/silicon_ore.json b/src/main/generated/data/galacticraft/loot_tables/blocks/silicon_ore.json similarity index 79% rename from src/main/generated/data/galacticraft/loot_table/blocks/silicon_ore.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/silicon_ore.json index 9168968f96..9ee15d5681 100644 --- a/src/main/generated/data/galacticraft/loot_table/blocks/silicon_ore.json +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/silicon_ore.json @@ -13,16 +13,14 @@ { "condition": "minecraft:match_tool", "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 } - ] - } + } + ] } } ], diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/soft_venus_rock.json b/src/main/generated/data/galacticraft/loot_tables/blocks/soft_venus_rock.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/soft_venus_rock.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/soft_venus_rock.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/spotlight_light_panel.json b/src/main/generated/data/galacticraft/loot_tables/blocks/spotlight_light_panel.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/spotlight_light_panel.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/spotlight_light_panel.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/square_light_panel.json b/src/main/generated/data/galacticraft/loot_tables/blocks/square_light_panel.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/square_light_panel.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/square_light_panel.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/steel_decoration.json b/src/main/generated/data/galacticraft/loot_tables/blocks/steel_decoration.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/steel_decoration.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/steel_decoration.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/steel_decoration_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/steel_decoration_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/steel_decoration_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/steel_decoration_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/steel_decoration_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/steel_decoration_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/steel_decoration_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/steel_decoration_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/steel_decoration_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/steel_decoration_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/steel_decoration_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/steel_decoration_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/tin_decoration.json b/src/main/generated/data/galacticraft/loot_tables/blocks/tin_decoration.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/tin_decoration.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/tin_decoration.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/tin_decoration_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/tin_decoration_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/tin_decoration_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/tin_decoration_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/tin_decoration_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/tin_decoration_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/tin_decoration_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/tin_decoration_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/tin_decoration_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/tin_decoration_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/tin_decoration_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/tin_decoration_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/tin_ladder.json b/src/main/generated/data/galacticraft/loot_tables/blocks/tin_ladder.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/tin_ladder.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/tin_ladder.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/tin_ore.json b/src/main/generated/data/galacticraft/loot_tables/blocks/tin_ore.json similarity index 75% rename from src/main/generated/data/galacticraft/loot_table/blocks/tin_ore.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/tin_ore.json index 6783d088b6..8a4ae02c57 100644 --- a/src/main/generated/data/galacticraft/loot_table/blocks/tin_ore.json +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/tin_ore.json @@ -13,16 +13,14 @@ { "condition": "minecraft:match_tool", "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 } - ] - } + } + ] } } ], diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/titanium_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/titanium_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/titanium_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/titanium_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/titanium_decoration.json b/src/main/generated/data/galacticraft/loot_tables/blocks/titanium_decoration.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/titanium_decoration.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/titanium_decoration.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/titanium_decoration_slab.json b/src/main/generated/data/galacticraft/loot_tables/blocks/titanium_decoration_slab.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/titanium_decoration_slab.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/titanium_decoration_slab.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/titanium_decoration_stairs.json b/src/main/generated/data/galacticraft/loot_tables/blocks/titanium_decoration_stairs.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/titanium_decoration_stairs.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/titanium_decoration_stairs.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/titanium_decoration_wall.json b/src/main/generated/data/galacticraft/loot_tables/blocks/titanium_decoration_wall.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/titanium_decoration_wall.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/titanium_decoration_wall.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/unlit_lantern.json b/src/main/generated/data/galacticraft/loot_tables/blocks/unlit_lantern.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/unlit_lantern.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/unlit_lantern.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/unlit_torch.json b/src/main/generated/data/galacticraft/loot_tables/blocks/unlit_torch.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/unlit_torch.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/unlit_torch.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/vacuum_glass.json b/src/main/generated/data/galacticraft/loot_tables/blocks/vacuum_glass.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/vacuum_glass.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/vacuum_glass.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/vacuum_glass_clear.json b/src/main/generated/data/galacticraft/loot_tables/blocks/vacuum_glass_clear.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/vacuum_glass_clear.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/vacuum_glass_clear.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/vacuum_glass_strong.json b/src/main/generated/data/galacticraft/loot_tables/blocks/vacuum_glass_strong.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/vacuum_glass_strong.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/vacuum_glass_strong.json diff --git a/src/main/generated/data/galacticraft/loot_tables/blocks/vapor_spout.json b/src/main/generated/data/galacticraft/loot_tables/blocks/vapor_spout.json new file mode 100644 index 0000000000..05e56e5fd0 --- /dev/null +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/vapor_spout.json @@ -0,0 +1,44 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ], + "name": "galacticraft:vapor_spout" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "name": "galacticraft:soft_venus_rock" + } + ] + } + ], + "rolls": 1.0 + } + ] +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_tables/blocks/volcanic_rock.json b/src/main/generated/data/galacticraft/loot_tables/blocks/volcanic_rock.json new file mode 100644 index 0000000000..0c42f393fa --- /dev/null +++ b/src/main/generated/data/galacticraft/loot_tables/blocks/volcanic_rock.json @@ -0,0 +1,30 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "galacticraft:volcanic_rock" + } + ], + "rolls": 1.0 + } + ] +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/walkway.json b/src/main/generated/data/galacticraft/loot_tables/blocks/walkway.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/walkway.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/walkway.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/white_candle_moon_cheese_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/white_candle_moon_cheese_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/white_candle_moon_cheese_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/white_candle_moon_cheese_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/wire_walkway.json b/src/main/generated/data/galacticraft/loot_tables/blocks/wire_walkway.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/wire_walkway.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/wire_walkway.json diff --git a/src/main/generated/data/galacticraft/loot_table/blocks/yellow_candle_moon_cheese_block.json b/src/main/generated/data/galacticraft/loot_tables/blocks/yellow_candle_moon_cheese_block.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/blocks/yellow_candle_moon_cheese_block.json rename to src/main/generated/data/galacticraft/loot_tables/blocks/yellow_candle_moon_cheese_block.json diff --git a/src/main/generated/data/galacticraft/loot_table/entities/arch_grey.json b/src/main/generated/data/galacticraft/loot_tables/entities/arch_grey.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/entities/arch_grey.json rename to src/main/generated/data/galacticraft/loot_tables/entities/arch_grey.json diff --git a/src/main/generated/data/galacticraft/loot_table/entities/comet_cube.json b/src/main/generated/data/galacticraft/loot_tables/entities/comet_cube.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/entities/comet_cube.json rename to src/main/generated/data/galacticraft/loot_tables/entities/comet_cube.json diff --git a/src/main/generated/data/galacticraft/loot_table/entities/evolved_creeper.json b/src/main/generated/data/galacticraft/loot_tables/entities/evolved_creeper.json similarity index 88% rename from src/main/generated/data/galacticraft/loot_table/entities/evolved_creeper.json rename to src/main/generated/data/galacticraft/loot_tables/entities/evolved_creeper.json index 084841c7cb..17af7ebb28 100644 --- a/src/main/generated/data/galacticraft/loot_table/entities/evolved_creeper.json +++ b/src/main/generated/data/galacticraft/loot_tables/entities/evolved_creeper.json @@ -22,8 +22,7 @@ "max": 1.0, "min": 0.0 }, - "enchantment": "minecraft:looting", - "function": "minecraft:enchanted_count_increase" + "function": "minecraft:looting_enchant" } ], "name": "minecraft:gunpowder" @@ -36,7 +35,7 @@ "conditions": [ { "condition": "minecraft:entity_properties", - "entity": "attacker", + "entity": "killer", "predicate": { "type": "#minecraft:skeletons" } diff --git a/src/main/generated/data/galacticraft/loot_table/entities/evolved_evoker.json b/src/main/generated/data/galacticraft/loot_tables/entities/evolved_evoker.json similarity index 90% rename from src/main/generated/data/galacticraft/loot_table/entities/evolved_evoker.json rename to src/main/generated/data/galacticraft/loot_tables/entities/evolved_evoker.json index 6f2d0f2648..021e723227 100644 --- a/src/main/generated/data/galacticraft/loot_table/entities/evolved_evoker.json +++ b/src/main/generated/data/galacticraft/loot_tables/entities/evolved_evoker.json @@ -37,8 +37,7 @@ "max": 1.0, "min": 0.0 }, - "enchantment": "minecraft:looting", - "function": "minecraft:enchanted_count_increase" + "function": "minecraft:looting_enchant" } ], "name": "minecraft:emerald" diff --git a/src/main/generated/data/galacticraft/loot_table/entities/evolved_pillager.json b/src/main/generated/data/galacticraft/loot_tables/entities/evolved_pillager.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/entities/evolved_pillager.json rename to src/main/generated/data/galacticraft/loot_tables/entities/evolved_pillager.json diff --git a/src/main/generated/data/galacticraft/loot_table/entities/evolved_skeleton.json b/src/main/generated/data/galacticraft/loot_tables/entities/evolved_skeleton.json similarity index 85% rename from src/main/generated/data/galacticraft/loot_table/entities/evolved_skeleton.json rename to src/main/generated/data/galacticraft/loot_tables/entities/evolved_skeleton.json index 8ec4cd34cb..9295f08df8 100644 --- a/src/main/generated/data/galacticraft/loot_table/entities/evolved_skeleton.json +++ b/src/main/generated/data/galacticraft/loot_tables/entities/evolved_skeleton.json @@ -22,8 +22,7 @@ "max": 1.0, "min": 0.0 }, - "enchantment": "minecraft:looting", - "function": "minecraft:enchanted_count_increase" + "function": "minecraft:looting_enchant" } ], "name": "minecraft:arrow" @@ -52,8 +51,7 @@ "max": 1.0, "min": 0.0 }, - "enchantment": "minecraft:looting", - "function": "minecraft:enchanted_count_increase" + "function": "minecraft:looting_enchant" } ], "name": "minecraft:bone" diff --git a/src/main/generated/data/galacticraft/loot_table/entities/evolved_skeleton_boss.json b/src/main/generated/data/galacticraft/loot_tables/entities/evolved_skeleton_boss.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/entities/evolved_skeleton_boss.json rename to src/main/generated/data/galacticraft/loot_tables/entities/evolved_skeleton_boss.json diff --git a/src/main/generated/data/galacticraft/loot_table/entities/evolved_spider.json b/src/main/generated/data/galacticraft/loot_tables/entities/evolved_spider.json similarity index 86% rename from src/main/generated/data/galacticraft/loot_table/entities/evolved_spider.json rename to src/main/generated/data/galacticraft/loot_tables/entities/evolved_spider.json index e9278aa9a7..4b5d916492 100644 --- a/src/main/generated/data/galacticraft/loot_table/entities/evolved_spider.json +++ b/src/main/generated/data/galacticraft/loot_tables/entities/evolved_spider.json @@ -22,8 +22,7 @@ "max": 1.0, "min": 0.0 }, - "enchantment": "minecraft:looting", - "function": "minecraft:enchanted_count_increase" + "function": "minecraft:looting_enchant" } ], "name": "minecraft:string" @@ -57,8 +56,7 @@ "max": 1.0, "min": 0.0 }, - "enchantment": "minecraft:looting", - "function": "minecraft:enchanted_count_increase" + "function": "minecraft:looting_enchant" } ], "name": "minecraft:spider_eye" diff --git a/src/main/generated/data/galacticraft/loot_table/entities/evolved_vindicator.json b/src/main/generated/data/galacticraft/loot_tables/entities/evolved_vindicator.json similarity index 88% rename from src/main/generated/data/galacticraft/loot_table/entities/evolved_vindicator.json rename to src/main/generated/data/galacticraft/loot_tables/entities/evolved_vindicator.json index 1d75849ab5..a5c107e7c4 100644 --- a/src/main/generated/data/galacticraft/loot_table/entities/evolved_vindicator.json +++ b/src/main/generated/data/galacticraft/loot_tables/entities/evolved_vindicator.json @@ -27,8 +27,7 @@ "max": 1.0, "min": 0.0 }, - "enchantment": "minecraft:looting", - "function": "minecraft:enchanted_count_increase" + "function": "minecraft:looting_enchant" } ], "name": "minecraft:emerald" diff --git a/src/main/generated/data/galacticraft/loot_tables/entities/evolved_zombie.json b/src/main/generated/data/galacticraft/loot_tables/entities/evolved_zombie.json new file mode 100644 index 0000000000..a97824711d --- /dev/null +++ b/src/main/generated/data/galacticraft/loot_tables/entities/evolved_zombie.json @@ -0,0 +1,79 @@ +{ + "type": "minecraft:entity", + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 2.0, + "min": 0.0 + }, + "function": "minecraft:set_count" + }, + { + "count": { + "type": "minecraft:uniform", + "max": 1.0, + "min": 0.0 + }, + "function": "minecraft:looting_enchant" + } + ], + "name": "minecraft:rotten_flesh" + } + ], + "rolls": 1.0 + }, + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:killed_by_player" + }, + { + "chance": 0.025, + "condition": "minecraft:random_chance_with_looting", + "looting_multiplier": 0.01 + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:iron_ingot" + }, + { + "type": "minecraft:item", + "name": "minecraft:carrot" + }, + { + "type": "minecraft:item", + "functions": [ + { + "conditions": [ + { + "condition": "minecraft:entity_properties", + "entity": "this", + "predicate": { + "flags": { + "is_on_fire": true + } + } + } + ], + "function": "minecraft:furnace_smelt" + } + ], + "name": "minecraft:potato" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "galacticraft:entities/evolved_zombie" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/loot_table/entities/gazer.json b/src/main/generated/data/galacticraft/loot_tables/entities/gazer.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/entities/gazer.json rename to src/main/generated/data/galacticraft/loot_tables/entities/gazer.json diff --git a/src/main/generated/data/galacticraft/loot_table/entities/grey.json b/src/main/generated/data/galacticraft/loot_tables/entities/grey.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/entities/grey.json rename to src/main/generated/data/galacticraft/loot_tables/entities/grey.json diff --git a/src/main/generated/data/galacticraft/loot_table/entities/oli_grub.json b/src/main/generated/data/galacticraft/loot_tables/entities/oli_grub.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/entities/oli_grub.json rename to src/main/generated/data/galacticraft/loot_tables/entities/oli_grub.json diff --git a/src/main/generated/data/galacticraft/loot_table/entities/rumbler.json b/src/main/generated/data/galacticraft/loot_tables/entities/rumbler.json similarity index 100% rename from src/main/generated/data/galacticraft/loot_table/entities/rumbler.json rename to src/main/generated/data/galacticraft/loot_tables/entities/rumbler.json diff --git a/src/main/generated/data/galacticraft/recipe/advanced_solar_panel.json b/src/main/generated/data/galacticraft/recipe/advanced_solar_panel.json deleted file mode 100644 index 4c02d78b77..0000000000 --- a/src/main/generated/data/galacticraft/recipe/advanced_solar_panel.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "galacticraft:advanced_wafer" - }, - "F": { - "item": "galacticraft:full_solar_panel" - }, - "P": { - "item": "galacticraft:steel_pole" - }, - "S": { - "item": "galacticraft:compressed_steel" - }, - "W": { - "item": "galacticraft:heavy_sealable_aluminum_wire" - } - }, - "pattern": [ - "SFS", - "SPS", - "WAW" - ], - "result": { - "count": 1, - "id": "galacticraft:advanced_solar_panel" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/aluminum_decoration.json b/src/main/generated/data/galacticraft/recipe/aluminum_decoration.json deleted file mode 100644 index 97aa3f0250..0000000000 --- a/src/main/generated/data/galacticraft/recipe/aluminum_decoration.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:stone" - }, - "X": { - "item": "galacticraft:compressed_aluminum" - } - }, - "pattern": [ - "## ", - "##X" - ], - "result": { - "count": 4, - "id": "galacticraft:aluminum_decoration" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/aluminum_decoration_slab.json b/src/main/generated/data/galacticraft/recipe/aluminum_decoration_slab.json deleted file mode 100644 index 4c85697a7e..0000000000 --- a/src/main/generated/data/galacticraft/recipe/aluminum_decoration_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:aluminum_decoration" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:aluminum_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/aluminum_decoration_slab_from_aluminum_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/aluminum_decoration_slab_from_aluminum_decoration_stonecutting.json deleted file mode 100644 index 276a19aecf..0000000000 --- a/src/main/generated/data/galacticraft/recipe/aluminum_decoration_slab_from_aluminum_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:aluminum_decoration" - }, - "result": { - "count": 2, - "id": "galacticraft:aluminum_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/aluminum_decoration_stairs.json b/src/main/generated/data/galacticraft/recipe/aluminum_decoration_stairs.json deleted file mode 100644 index 0a0490f974..0000000000 --- a/src/main/generated/data/galacticraft/recipe/aluminum_decoration_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:aluminum_decoration" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:aluminum_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/aluminum_decoration_stairs_from_aluminum_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/aluminum_decoration_stairs_from_aluminum_decoration_stonecutting.json deleted file mode 100644 index 74271b416b..0000000000 --- a/src/main/generated/data/galacticraft/recipe/aluminum_decoration_stairs_from_aluminum_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:aluminum_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:aluminum_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/aluminum_decoration_wall.json b/src/main/generated/data/galacticraft/recipe/aluminum_decoration_wall.json deleted file mode 100644 index a2fcc5815b..0000000000 --- a/src/main/generated/data/galacticraft/recipe/aluminum_decoration_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:aluminum_decoration" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:aluminum_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/aluminum_decoration_wall_from_aluminum_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/aluminum_decoration_wall_from_aluminum_decoration_stonecutting.json deleted file mode 100644 index f97cbdee43..0000000000 --- a/src/main/generated/data/galacticraft/recipe/aluminum_decoration_wall_from_aluminum_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:aluminum_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:aluminum_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_blasting_aluminum_ore.json b/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_blasting_aluminum_ore.json deleted file mode 100644 index e3b68c94db..0000000000 --- a/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_blasting_aluminum_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:blasting", - "category": "misc", - "cookingtime": 100, - "experience": 0.7, - "group": "aluminum_ingot", - "ingredient": { - "item": "galacticraft:aluminum_ore" - }, - "result": { - "id": "galacticraft:aluminum_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_blasting_deepslate_aluminum_ore.json b/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_blasting_deepslate_aluminum_ore.json deleted file mode 100644 index f3ac629c7c..0000000000 --- a/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_blasting_deepslate_aluminum_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:blasting", - "category": "misc", - "cookingtime": 100, - "experience": 0.7, - "group": "aluminum_ingot", - "ingredient": { - "item": "galacticraft:deepslate_aluminum_ore" - }, - "result": { - "id": "galacticraft:aluminum_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_blasting_raw_aluminum.json b/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_blasting_raw_aluminum.json deleted file mode 100644 index e7df33f4c4..0000000000 --- a/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_blasting_raw_aluminum.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:blasting", - "category": "misc", - "cookingtime": 100, - "experience": 0.7, - "group": "aluminum_ingot", - "ingredient": { - "item": "galacticraft:raw_aluminum" - }, - "result": { - "id": "galacticraft:aluminum_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_nuggets.json deleted file mode 100644 index 0447461108..0000000000 --- a/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_nuggets.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "group": "aluminum_ingot", - "key": { - "#": { - "item": "galacticraft:aluminum_nugget" - } - }, - "pattern": [ - "###", - "###", - "###" - ], - "result": { - "count": 1, - "id": "galacticraft:aluminum_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_smelting_aluminum_ore.json b/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_smelting_aluminum_ore.json deleted file mode 100644 index 03eed98cd9..0000000000 --- a/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_smelting_aluminum_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.7, - "group": "aluminum_ingot", - "ingredient": { - "item": "galacticraft:aluminum_ore" - }, - "result": { - "id": "galacticraft:aluminum_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_smelting_deepslate_aluminum_ore.json b/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_smelting_deepslate_aluminum_ore.json deleted file mode 100644 index f02d5234f9..0000000000 --- a/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_smelting_deepslate_aluminum_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.7, - "group": "aluminum_ingot", - "ingredient": { - "item": "galacticraft:deepslate_aluminum_ore" - }, - "result": { - "id": "galacticraft:aluminum_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_smelting_raw_aluminum.json b/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_smelting_raw_aluminum.json deleted file mode 100644 index 666d873610..0000000000 --- a/src/main/generated/data/galacticraft/recipe/aluminum_ingot_from_smelting_raw_aluminum.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.7, - "group": "aluminum_ingot", - "ingredient": { - "item": "galacticraft:raw_aluminum" - }, - "result": { - "id": "galacticraft:aluminum_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/aluminum_nugget.json b/src/main/generated/data/galacticraft/recipe/aluminum_nugget.json deleted file mode 100644 index 138c800c16..0000000000 --- a/src/main/generated/data/galacticraft/recipe/aluminum_nugget.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:aluminum_ingot" - } - ], - "result": { - "count": 9, - "id": "galacticraft:aluminum_nugget" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/aluminum_wire.json b/src/main/generated/data/galacticraft/recipe/aluminum_wire.json deleted file mode 100644 index 60303d6ff8..0000000000 --- a/src/main/generated/data/galacticraft/recipe/aluminum_wire.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "galacticraft:aluminum_ingot" - }, - "W": { - "item": "minecraft:white_wool" - } - }, - "pattern": [ - "WWW", - "AAA", - "WWW" - ], - "result": { - "count": 6, - "id": "galacticraft:aluminum_wire" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/ambient_thermal_controller.json b/src/main/generated/data/galacticraft/recipe/ambient_thermal_controller.json deleted file mode 100644 index 5977d9a881..0000000000 --- a/src/main/generated/data/galacticraft/recipe/ambient_thermal_controller.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "B": { - "item": "galacticraft:compressed_bronze" - }, - "R": { - "tag": "c:dusts/redstone" - }, - "S": { - "item": "galacticraft:compressed_steel" - }, - "V": { - "item": "galacticraft:oxygen_vent" - }, - "W": { - "item": "galacticraft:basic_wafer" - } - }, - "pattern": [ - "RVR", - "BSB", - "BWB" - ], - "result": { - "count": 1, - "id": "galacticraft:ambient_thermal_controller" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/atmospheric_valve.json b/src/main/generated/data/galacticraft/recipe/atmospheric_valve.json deleted file mode 100644 index a864424dc2..0000000000 --- a/src/main/generated/data/galacticraft/recipe/atmospheric_valve.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "D": { - "item": "galacticraft:desh_ingot" - }, - "V": { - "item": "galacticraft:oxygen_vent" - } - }, - "pattern": [ - "DVD", - " D " - ], - "result": { - "count": 1, - "id": "galacticraft:atmospheric_valve" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/basic_solar_panel.json b/src/main/generated/data/galacticraft/recipe/basic_solar_panel.json deleted file mode 100644 index 5ad5fab7a5..0000000000 --- a/src/main/generated/data/galacticraft/recipe/basic_solar_panel.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "B": { - "item": "galacticraft:basic_wafer" - }, - "F": { - "item": "galacticraft:full_solar_panel" - }, - "P": { - "item": "galacticraft:steel_pole" - }, - "S": { - "item": "galacticraft:compressed_steel" - }, - "W": { - "item": "galacticraft:aluminum_wire" - } - }, - "pattern": [ - "SFS", - "SPS", - "WBW" - ], - "result": { - "count": 1, - "id": "galacticraft:basic_solar_panel" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/battery.json b/src/main/generated/data/galacticraft/recipe/battery.json deleted file mode 100644 index 9c49309b8c..0000000000 --- a/src/main/generated/data/galacticraft/recipe/battery.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "tag": "c:coal" - }, - "R": { - "tag": "c:dusts/redstone" - }, - "T": { - "item": "galacticraft:compressed_tin" - } - }, - "pattern": [ - " T ", - "TRT", - "TCT" - ], - "result": { - "count": 1, - "id": "galacticraft:battery" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/beam_core.json b/src/main/generated/data/galacticraft/recipe/beam_core.json deleted file mode 100644 index 77f5499643..0000000000 --- a/src/main/generated/data/galacticraft/recipe/beam_core.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "G": { - "tag": "c:glass_panes" - }, - "I": { - "tag": "c:plates/iron" - }, - "R": { - "tag": "c:dusts/redstone" - } - }, - "pattern": [ - "RIR", - "IGI", - "RIR" - ], - "result": { - "count": 1, - "id": "galacticraft:beam_core" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/beef_patty_from_campfire_cooking.json b/src/main/generated/data/galacticraft/recipe/beef_patty_from_campfire_cooking.json deleted file mode 100644 index bbf5ec75f6..0000000000 --- a/src/main/generated/data/galacticraft/recipe/beef_patty_from_campfire_cooking.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:campfire_cooking", - "category": "food", - "cookingtime": 600, - "experience": 1.0, - "ingredient": { - "item": "galacticraft:ground_beef" - }, - "result": { - "id": "galacticraft:beef_patty" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/beef_patty_from_smelting.json b/src/main/generated/data/galacticraft/recipe/beef_patty_from_smelting.json deleted file mode 100644 index d66641f5d4..0000000000 --- a/src/main/generated/data/galacticraft/recipe/beef_patty_from_smelting.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "food", - "cookingtime": 200, - "experience": 1.0, - "ingredient": { - "item": "galacticraft:ground_beef" - }, - "result": { - "id": "galacticraft:beef_patty" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/beef_patty_from_smoking.json b/src/main/generated/data/galacticraft/recipe/beef_patty_from_smoking.json deleted file mode 100644 index dd44ba9ce2..0000000000 --- a/src/main/generated/data/galacticraft/recipe/beef_patty_from_smoking.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:smoking", - "category": "food", - "cookingtime": 100, - "experience": 1.0, - "ingredient": { - "item": "galacticraft:ground_beef" - }, - "result": { - "id": "galacticraft:beef_patty" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/black_parachute.json b/src/main/generated/data/galacticraft/recipe/black_parachute.json deleted file mode 100644 index 8e588a27af..0000000000 --- a/src/main/generated/data/galacticraft/recipe/black_parachute.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:white_parachute" - }, - { - "item": "minecraft:black_dye" - } - ], - "result": { - "count": 1, - "id": "galacticraft:black_parachute" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/blue_parachute.json b/src/main/generated/data/galacticraft/recipe/blue_parachute.json deleted file mode 100644 index c481fa2afd..0000000000 --- a/src/main/generated/data/galacticraft/recipe/blue_parachute.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:white_parachute" - }, - { - "item": "minecraft:blue_dye" - } - ], - "result": { - "count": 1, - "id": "galacticraft:blue_parachute" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/bronze_decoration.json b/src/main/generated/data/galacticraft/recipe/bronze_decoration.json deleted file mode 100644 index 5e43ee41f7..0000000000 --- a/src/main/generated/data/galacticraft/recipe/bronze_decoration.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:stone" - }, - "X": { - "item": "galacticraft:compressed_bronze" - } - }, - "pattern": [ - "## ", - "##X" - ], - "result": { - "count": 4, - "id": "galacticraft:bronze_decoration" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/bronze_decoration_slab.json b/src/main/generated/data/galacticraft/recipe/bronze_decoration_slab.json deleted file mode 100644 index 1dcf6f37e2..0000000000 --- a/src/main/generated/data/galacticraft/recipe/bronze_decoration_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:bronze_decoration" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:bronze_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/bronze_decoration_slab_from_bronze_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/bronze_decoration_slab_from_bronze_decoration_stonecutting.json deleted file mode 100644 index 68469cb9a7..0000000000 --- a/src/main/generated/data/galacticraft/recipe/bronze_decoration_slab_from_bronze_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:bronze_decoration" - }, - "result": { - "count": 2, - "id": "galacticraft:bronze_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/bronze_decoration_stairs.json b/src/main/generated/data/galacticraft/recipe/bronze_decoration_stairs.json deleted file mode 100644 index e58fab3a64..0000000000 --- a/src/main/generated/data/galacticraft/recipe/bronze_decoration_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:bronze_decoration" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:bronze_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/bronze_decoration_stairs_from_bronze_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/bronze_decoration_stairs_from_bronze_decoration_stonecutting.json deleted file mode 100644 index 7e44c4909b..0000000000 --- a/src/main/generated/data/galacticraft/recipe/bronze_decoration_stairs_from_bronze_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:bronze_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:bronze_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/bronze_decoration_wall.json b/src/main/generated/data/galacticraft/recipe/bronze_decoration_wall.json deleted file mode 100644 index dcd5bef265..0000000000 --- a/src/main/generated/data/galacticraft/recipe/bronze_decoration_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:bronze_decoration" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:bronze_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/bronze_decoration_wall_from_bronze_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/bronze_decoration_wall_from_bronze_decoration_stonecutting.json deleted file mode 100644 index dcf6a6b1a3..0000000000 --- a/src/main/generated/data/galacticraft/recipe/bronze_decoration_wall_from_bronze_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:bronze_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:bronze_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/brown_parachute.json b/src/main/generated/data/galacticraft/recipe/brown_parachute.json deleted file mode 100644 index 90023268d6..0000000000 --- a/src/main/generated/data/galacticraft/recipe/brown_parachute.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:white_parachute" - }, - { - "item": "minecraft:brown_dye" - } - ], - "result": { - "count": 1, - "id": "galacticraft:brown_parachute" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/burger_bun.json b/src/main/generated/data/galacticraft/recipe/burger_bun.json deleted file mode 100644 index 8aa2610a03..0000000000 --- a/src/main/generated/data/galacticraft/recipe/burger_bun.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "minecraft:wheat" - }, - { - "item": "minecraft:wheat" - }, - { - "item": "minecraft:egg" - }, - { - "item": "minecraft:milk_bucket" - } - ], - "result": { - "count": 2, - "id": "galacticraft:burger_bun" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/canvas.json b/src/main/generated/data/galacticraft/recipe/canvas.json deleted file mode 100644 index 4357dd2741..0000000000 --- a/src/main/generated/data/galacticraft/recipe/canvas.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "I": { - "item": "minecraft:stick" - }, - "S": { - "item": "minecraft:string" - } - }, - "pattern": [ - "SSI", - "SSS", - "ISS" - ], - "result": { - "count": 1, - "id": "galacticraft:canvas" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/carbon_fragments_from_charcoal.json b/src/main/generated/data/galacticraft/recipe/carbon_fragments_from_charcoal.json deleted file mode 100644 index 05c8307db8..0000000000 --- a/src/main/generated/data/galacticraft/recipe/carbon_fragments_from_charcoal.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "minecraft:charcoal" - } - ], - "result": { - "count": 3, - "id": "galacticraft:carbon_fragments" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/carbon_fragments_from_coal.json b/src/main/generated/data/galacticraft/recipe/carbon_fragments_from_coal.json deleted file mode 100644 index ddbd8465c0..0000000000 --- a/src/main/generated/data/galacticraft/recipe/carbon_fragments_from_coal.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "tag": "c:coal" - } - ], - "result": { - "count": 3, - "id": "galacticraft:carbon_fragments" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/carbon_fragments_from_smelting_planks.json b/src/main/generated/data/galacticraft/recipe/carbon_fragments_from_smelting_planks.json deleted file mode 100644 index 9a01ff91f9..0000000000 --- a/src/main/generated/data/galacticraft/recipe/carbon_fragments_from_smelting_planks.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.1, - "ingredient": { - "tag": "minecraft:planks" - }, - "result": { - "id": "galacticraft:carbon_fragments" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cheese_slice.json b/src/main/generated/data/galacticraft/recipe/cheese_slice.json deleted file mode 100644 index 8c1589afdd..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cheese_slice.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:moon_cheese_block" - } - ], - "result": { - "count": 6, - "id": "galacticraft:cheese_slice" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cheeseburger.json b/src/main/generated/data/galacticraft/recipe/cheeseburger.json deleted file mode 100644 index 8878aabbae..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cheeseburger.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:cheese_slice" - }, - { - "item": "galacticraft:beef_patty" - }, - { - "item": "galacticraft:burger_bun" - } - ], - "result": { - "count": 1, - "id": "galacticraft:cheeseburger" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/chiseled_moon_rock_brick.json b/src/main/generated/data/galacticraft/recipe/chiseled_moon_rock_brick.json deleted file mode 100644 index 166fd9655c..0000000000 --- a/src/main/generated/data/galacticraft/recipe/chiseled_moon_rock_brick.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:moon_rock_brick_slab" - } - }, - "pattern": [ - "#", - "#" - ], - "result": { - "count": 1, - "id": "galacticraft:chiseled_moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/chiseled_moon_rock_brick_from_moon_rock_brick_stonecutting.json b/src/main/generated/data/galacticraft/recipe/chiseled_moon_rock_brick_from_moon_rock_brick_stonecutting.json deleted file mode 100644 index 662d944fe9..0000000000 --- a/src/main/generated/data/galacticraft/recipe/chiseled_moon_rock_brick_from_moon_rock_brick_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:moon_rock_brick" - }, - "result": { - "count": 1, - "id": "galacticraft:chiseled_moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/chiseled_moon_rock_brick_from_moon_rock_stonecutting.json b/src/main/generated/data/galacticraft/recipe/chiseled_moon_rock_brick_from_moon_rock_stonecutting.json deleted file mode 100644 index b31ca26e45..0000000000 --- a/src/main/generated/data/galacticraft/recipe/chiseled_moon_rock_brick_from_moon_rock_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:moon_rock" - }, - "result": { - "count": 1, - "id": "galacticraft:chiseled_moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/circuit_fabricator.json b/src/main/generated/data/galacticraft/recipe/circuit_fabricator.json deleted file mode 100644 index ca76e7a142..0000000000 --- a/src/main/generated/data/galacticraft/recipe/circuit_fabricator.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "galacticraft:aluminum_ingot" - }, - "B": { - "item": "minecraft:stone_button" - }, - "F": { - "item": "minecraft:furnace" - }, - "L": { - "item": "minecraft:lever" - }, - "R": { - "item": "minecraft:redstone_torch" - }, - "W": { - "item": "galacticraft:aluminum_wire" - } - }, - "pattern": [ - "ALA", - "BFB", - "WRW" - ], - "result": { - "count": 1, - "id": "galacticraft:circuit_fabricator" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/coal_generator.json b/src/main/generated/data/galacticraft/recipe/coal_generator.json deleted file mode 100644 index 484aebfd75..0000000000 --- a/src/main/generated/data/galacticraft/recipe/coal_generator.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "galacticraft:aluminum_ingot" - }, - "C": { - "tag": "c:ingots/copper" - }, - "F": { - "item": "minecraft:furnace" - }, - "W": { - "item": "galacticraft:aluminum_wire" - } - }, - "pattern": [ - "CCC", - "AFA", - "AWA" - ], - "result": { - "count": 1, - "id": "galacticraft:coal_generator" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cobbled_lunaslate_slab.json b/src/main/generated/data/galacticraft/recipe/cobbled_lunaslate_slab.json deleted file mode 100644 index f31600d28f..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cobbled_lunaslate_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:cobbled_lunaslate" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:cobbled_lunaslate_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cobbled_lunaslate_slab_from_cobbled_lunaslate_stonecutting.json b/src/main/generated/data/galacticraft/recipe/cobbled_lunaslate_slab_from_cobbled_lunaslate_stonecutting.json deleted file mode 100644 index eda1e1617d..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cobbled_lunaslate_slab_from_cobbled_lunaslate_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:cobbled_lunaslate" - }, - "result": { - "count": 2, - "id": "galacticraft:cobbled_lunaslate_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cobbled_lunaslate_stairs.json b/src/main/generated/data/galacticraft/recipe/cobbled_lunaslate_stairs.json deleted file mode 100644 index ab1f36ee6a..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cobbled_lunaslate_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:cobbled_lunaslate" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:cobbled_lunaslate_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cobbled_lunaslate_stairs_from_cobbled_lunaslate_stonecutting.json b/src/main/generated/data/galacticraft/recipe/cobbled_lunaslate_stairs_from_cobbled_lunaslate_stonecutting.json deleted file mode 100644 index ef875e4f68..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cobbled_lunaslate_stairs_from_cobbled_lunaslate_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:cobbled_lunaslate" - }, - "result": { - "count": 1, - "id": "galacticraft:cobbled_lunaslate_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cobbled_lunaslate_wall.json b/src/main/generated/data/galacticraft/recipe/cobbled_lunaslate_wall.json deleted file mode 100644 index 2c8fbe0dbb..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cobbled_lunaslate_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:cobbled_lunaslate" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:cobbled_lunaslate_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cobbled_lunaslate_wall_from_cobbled_lunaslate_stonecutting.json b/src/main/generated/data/galacticraft/recipe/cobbled_lunaslate_wall_from_cobbled_lunaslate_stonecutting.json deleted file mode 100644 index 4244800d15..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cobbled_lunaslate_wall_from_cobbled_lunaslate_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:cobbled_lunaslate" - }, - "result": { - "count": 1, - "id": "galacticraft:cobbled_lunaslate_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/compressing/compressed_aluminum.json b/src/main/generated/data/galacticraft/recipe/compressing/compressed_aluminum.json deleted file mode 100644 index 304d3bac4f..0000000000 --- a/src/main/generated/data/galacticraft/recipe/compressing/compressed_aluminum.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "galacticraft:compressing_shapeless", - "ingredients": [ - { - "tag": "c:ingots/aluminum" - }, - { - "tag": "c:ingots/aluminum" - } - ], - "result": { - "count": 1, - "id": "galacticraft:compressed_aluminum" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/compressing/compressed_copper.json b/src/main/generated/data/galacticraft/recipe/compressing/compressed_copper.json deleted file mode 100644 index 91ea5b3437..0000000000 --- a/src/main/generated/data/galacticraft/recipe/compressing/compressed_copper.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "galacticraft:compressing_shapeless", - "ingredients": [ - { - "tag": "c:ingots/copper" - }, - { - "tag": "c:ingots/copper" - } - ], - "result": { - "count": 1, - "id": "galacticraft:compressed_copper" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/compressing/compressed_desh.json b/src/main/generated/data/galacticraft/recipe/compressing/compressed_desh.json deleted file mode 100644 index b8ce2d078b..0000000000 --- a/src/main/generated/data/galacticraft/recipe/compressing/compressed_desh.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "galacticraft:compressing_shapeless", - "ingredients": [ - { - "item": "galacticraft:desh_ingot" - } - ], - "result": { - "count": 1, - "id": "galacticraft:compressed_desh" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/compressing/compressed_iron.json b/src/main/generated/data/galacticraft/recipe/compressing/compressed_iron.json deleted file mode 100644 index f6ae7f5b6e..0000000000 --- a/src/main/generated/data/galacticraft/recipe/compressing/compressed_iron.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "galacticraft:compressing_shapeless", - "ingredients": [ - { - "tag": "c:ingots/iron" - }, - { - "tag": "c:ingots/iron" - } - ], - "result": { - "count": 1, - "id": "galacticraft:compressed_iron" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/compressing/compressed_meteoric_iron.json b/src/main/generated/data/galacticraft/recipe/compressing/compressed_meteoric_iron.json deleted file mode 100644 index a6d1fc2be8..0000000000 --- a/src/main/generated/data/galacticraft/recipe/compressing/compressed_meteoric_iron.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "galacticraft:compressing_shapeless", - "ingredients": [ - { - "item": "galacticraft:meteoric_iron_ingot" - } - ], - "result": { - "count": 1, - "id": "galacticraft:compressed_meteoric_iron" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/compressing/compressed_steel.json b/src/main/generated/data/galacticraft/recipe/compressing/compressed_steel.json deleted file mode 100644 index 9e032e07c7..0000000000 --- a/src/main/generated/data/galacticraft/recipe/compressing/compressed_steel.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "galacticraft:compressing_shapeless", - "ingredients": [ - { - "tag": "c:coal" - }, - { - "item": "galacticraft:compressed_iron" - }, - { - "tag": "c:coal" - } - ], - "result": { - "count": 1, - "id": "galacticraft:compressed_steel" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/compressing/compressed_steel_from_ingots.json b/src/main/generated/data/galacticraft/recipe/compressing/compressed_steel_from_ingots.json deleted file mode 100644 index f8655193bd..0000000000 --- a/src/main/generated/data/galacticraft/recipe/compressing/compressed_steel_from_ingots.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "galacticraft:compressing_shapeless", - "ingredients": [ - { - "tag": "c:ingots/steel" - }, - { - "tag": "c:ingots/steel" - } - ], - "result": { - "count": 1, - "id": "galacticraft:compressed_steel" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/compressing/compressed_tin.json b/src/main/generated/data/galacticraft/recipe/compressing/compressed_tin.json deleted file mode 100644 index 29eccb66b6..0000000000 --- a/src/main/generated/data/galacticraft/recipe/compressing/compressed_tin.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "galacticraft:compressing_shapeless", - "ingredients": [ - { - "tag": "c:ingots/tin" - }, - { - "tag": "c:ingots/tin" - } - ], - "result": { - "count": 1, - "id": "galacticraft:compressed_tin" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/compressing/compressed_titanium.json b/src/main/generated/data/galacticraft/recipe/compressing/compressed_titanium.json deleted file mode 100644 index 81503f1218..0000000000 --- a/src/main/generated/data/galacticraft/recipe/compressing/compressed_titanium.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "galacticraft:compressing_shapeless", - "ingredients": [ - { - "item": "galacticraft:titanium_ingot" - }, - { - "item": "galacticraft:titanium_ingot" - } - ], - "result": { - "count": 1, - "id": "galacticraft:compressed_titanium" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/compressing/heavy_plating.json b/src/main/generated/data/galacticraft/recipe/compressing/heavy_plating.json deleted file mode 100644 index 8d66721b9e..0000000000 --- a/src/main/generated/data/galacticraft/recipe/compressing/heavy_plating.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "type": "galacticraft:compressing_shaped", - "key": { - "A": { - "item": "galacticraft:compressed_aluminum" - }, - "B": { - "item": "galacticraft:compressed_bronze" - }, - "S": { - "item": "galacticraft:compressed_steel" - } - }, - "pattern": [ - "BAS", - "BAS" - ], - "result": { - "count": 2, - "id": "galacticraft:heavy_plating" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/compressing/heavy_plating_flipped.json b/src/main/generated/data/galacticraft/recipe/compressing/heavy_plating_flipped.json deleted file mode 100644 index 3d1d5b8e8d..0000000000 --- a/src/main/generated/data/galacticraft/recipe/compressing/heavy_plating_flipped.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "type": "galacticraft:compressing_shaped", - "key": { - "A": { - "item": "galacticraft:compressed_aluminum" - }, - "B": { - "item": "galacticraft:compressed_bronze" - }, - "S": { - "item": "galacticraft:compressed_steel" - } - }, - "pattern": [ - "SAB", - "SAB" - ], - "result": { - "count": 2, - "id": "galacticraft:heavy_plating" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/compressing/heavy_plating_t2.json b/src/main/generated/data/galacticraft/recipe/compressing/heavy_plating_t2.json deleted file mode 100644 index 89d2fcfa0c..0000000000 --- a/src/main/generated/data/galacticraft/recipe/compressing/heavy_plating_t2.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "galacticraft:compressing_shapeless", - "ingredients": [ - { - "item": "galacticraft:heavy_plating" - }, - { - "item": "galacticraft:compressed_meteoric_iron" - } - ], - "result": { - "count": 1, - "id": "galacticraft:heavy_plating_t2" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/compressing/heavy_plating_t3.json b/src/main/generated/data/galacticraft/recipe/compressing/heavy_plating_t3.json deleted file mode 100644 index 45bb033497..0000000000 --- a/src/main/generated/data/galacticraft/recipe/compressing/heavy_plating_t3.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "galacticraft:compressing_shapeless", - "ingredients": [ - { - "item": "galacticraft:heavy_plating_t2" - }, - { - "item": "galacticraft:compressed_desh" - } - ], - "result": { - "count": 1, - "id": "galacticraft:heavy_plating_t3" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/compressor.json b/src/main/generated/data/galacticraft/recipe/compressor.json deleted file mode 100644 index bfbeb906e5..0000000000 --- a/src/main/generated/data/galacticraft/recipe/compressor.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "minecraft:anvil" - }, - "C": { - "tag": "c:ingots/copper" - }, - "I": { - "item": "galacticraft:aluminum_ingot" - }, - "W": { - "item": "galacticraft:basic_wafer" - } - }, - "pattern": [ - "IAI", - "ICI", - "IWI" - ], - "result": { - "count": 1, - "id": "galacticraft:compressor" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/copper_canister.json b/src/main/generated/data/galacticraft/recipe/copper_canister.json deleted file mode 100644 index 452edccec7..0000000000 --- a/src/main/generated/data/galacticraft/recipe/copper_canister.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "X": { - "item": "minecraft:copper_ingot" - } - }, - "pattern": [ - "X X", - "X X", - "XXX" - ], - "result": { - "count": 2, - "id": "galacticraft:copper_canister" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/copper_decoration.json b/src/main/generated/data/galacticraft/recipe/copper_decoration.json deleted file mode 100644 index d76be45974..0000000000 --- a/src/main/generated/data/galacticraft/recipe/copper_decoration.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:stone" - }, - "X": { - "item": "galacticraft:compressed_copper" - } - }, - "pattern": [ - "## ", - "##X" - ], - "result": { - "count": 4, - "id": "galacticraft:copper_decoration" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/copper_decoration_slab.json b/src/main/generated/data/galacticraft/recipe/copper_decoration_slab.json deleted file mode 100644 index 881b3924c0..0000000000 --- a/src/main/generated/data/galacticraft/recipe/copper_decoration_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:copper_decoration" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:copper_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/copper_decoration_slab_from_copper_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/copper_decoration_slab_from_copper_decoration_stonecutting.json deleted file mode 100644 index 4b22f52743..0000000000 --- a/src/main/generated/data/galacticraft/recipe/copper_decoration_slab_from_copper_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:copper_decoration" - }, - "result": { - "count": 2, - "id": "galacticraft:copper_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/copper_decoration_stairs.json b/src/main/generated/data/galacticraft/recipe/copper_decoration_stairs.json deleted file mode 100644 index bf5bd61c1c..0000000000 --- a/src/main/generated/data/galacticraft/recipe/copper_decoration_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:copper_decoration" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:copper_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/copper_decoration_stairs_from_copper_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/copper_decoration_stairs_from_copper_decoration_stonecutting.json deleted file mode 100644 index 9b08d987b2..0000000000 --- a/src/main/generated/data/galacticraft/recipe/copper_decoration_stairs_from_copper_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:copper_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:copper_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/copper_decoration_wall.json b/src/main/generated/data/galacticraft/recipe/copper_decoration_wall.json deleted file mode 100644 index 484fdc3ff9..0000000000 --- a/src/main/generated/data/galacticraft/recipe/copper_decoration_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:copper_decoration" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:copper_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/copper_decoration_wall_from_copper_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/copper_decoration_wall_from_copper_decoration_stonecutting.json deleted file mode 100644 index f446a737a7..0000000000 --- a/src/main/generated/data/galacticraft/recipe/copper_decoration_wall_from_copper_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:copper_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:copper_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/copper_ingot_from_blasting_lunaslate_copper_ore.json b/src/main/generated/data/galacticraft/recipe/copper_ingot_from_blasting_lunaslate_copper_ore.json deleted file mode 100644 index 6787798dba..0000000000 --- a/src/main/generated/data/galacticraft/recipe/copper_ingot_from_blasting_lunaslate_copper_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:blasting", - "category": "misc", - "cookingtime": 100, - "experience": 0.7, - "group": "copper_ingot", - "ingredient": { - "item": "galacticraft:lunaslate_copper_ore" - }, - "result": { - "id": "minecraft:copper_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/copper_ingot_from_blasting_moon_copper_ore.json b/src/main/generated/data/galacticraft/recipe/copper_ingot_from_blasting_moon_copper_ore.json deleted file mode 100644 index 852913e1b2..0000000000 --- a/src/main/generated/data/galacticraft/recipe/copper_ingot_from_blasting_moon_copper_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:blasting", - "category": "misc", - "cookingtime": 100, - "experience": 0.7, - "group": "copper_ingot", - "ingredient": { - "item": "galacticraft:moon_copper_ore" - }, - "result": { - "id": "minecraft:copper_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/copper_ingot_from_smelting_lunaslate_copper_ore.json b/src/main/generated/data/galacticraft/recipe/copper_ingot_from_smelting_lunaslate_copper_ore.json deleted file mode 100644 index a46be2cc06..0000000000 --- a/src/main/generated/data/galacticraft/recipe/copper_ingot_from_smelting_lunaslate_copper_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.7, - "group": "copper_ingot", - "ingredient": { - "item": "galacticraft:lunaslate_copper_ore" - }, - "result": { - "id": "minecraft:copper_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/copper_ingot_from_smelting_moon_copper_ore.json b/src/main/generated/data/galacticraft/recipe/copper_ingot_from_smelting_moon_copper_ore.json deleted file mode 100644 index 1b46d79f1b..0000000000 --- a/src/main/generated/data/galacticraft/recipe/copper_ingot_from_smelting_moon_copper_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.7, - "group": "copper_ingot", - "ingredient": { - "item": "galacticraft:moon_copper_ore" - }, - "result": { - "id": "minecraft:copper_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cracked_moon_basalt_brick_slab.json b/src/main/generated/data/galacticraft/recipe/cracked_moon_basalt_brick_slab.json deleted file mode 100644 index b66c8ac34c..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cracked_moon_basalt_brick_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:cracked_moon_basalt_brick" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:cracked_moon_basalt_brick_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cracked_moon_basalt_brick_slab_from_cracked_moon_basalt_brick_stonecutting.json b/src/main/generated/data/galacticraft/recipe/cracked_moon_basalt_brick_slab_from_cracked_moon_basalt_brick_stonecutting.json deleted file mode 100644 index 72eba0fff3..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cracked_moon_basalt_brick_slab_from_cracked_moon_basalt_brick_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:cracked_moon_basalt_brick" - }, - "result": { - "count": 2, - "id": "galacticraft:cracked_moon_basalt_brick_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cracked_moon_basalt_brick_stairs.json b/src/main/generated/data/galacticraft/recipe/cracked_moon_basalt_brick_stairs.json deleted file mode 100644 index fe49967fa6..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cracked_moon_basalt_brick_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:cracked_moon_basalt_brick" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:cracked_moon_basalt_brick_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cracked_moon_basalt_brick_stairs_from_cracked_moon_basalt_brick_stonecutting.json b/src/main/generated/data/galacticraft/recipe/cracked_moon_basalt_brick_stairs_from_cracked_moon_basalt_brick_stonecutting.json deleted file mode 100644 index d15226b938..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cracked_moon_basalt_brick_stairs_from_cracked_moon_basalt_brick_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:cracked_moon_basalt_brick" - }, - "result": { - "count": 1, - "id": "galacticraft:cracked_moon_basalt_brick_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cracked_moon_basalt_brick_wall.json b/src/main/generated/data/galacticraft/recipe/cracked_moon_basalt_brick_wall.json deleted file mode 100644 index 508d9753d1..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cracked_moon_basalt_brick_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:cracked_moon_basalt_brick" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:cracked_moon_basalt_brick_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cracked_moon_basalt_brick_wall_from_cracked_moon_basalt_brick_stonecutting.json b/src/main/generated/data/galacticraft/recipe/cracked_moon_basalt_brick_wall_from_cracked_moon_basalt_brick_stonecutting.json deleted file mode 100644 index e0be91364a..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cracked_moon_basalt_brick_wall_from_cracked_moon_basalt_brick_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:cracked_moon_basalt_brick" - }, - "result": { - "count": 1, - "id": "galacticraft:cracked_moon_basalt_brick_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick.json b/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick.json deleted file mode 100644 index b7c5cd759a..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "blocks", - "cookingtime": 200, - "experience": 0.1, - "ingredient": { - "item": "galacticraft:moon_rock_brick" - }, - "result": { - "id": "galacticraft:cracked_moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick_slab.json b/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick_slab.json deleted file mode 100644 index 16988176f9..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:cracked_moon_rock_brick" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:cracked_moon_rock_brick_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick_slab_from_cracked_moon_rock_brick_stonecutting.json b/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick_slab_from_cracked_moon_rock_brick_stonecutting.json deleted file mode 100644 index 465e4d9695..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick_slab_from_cracked_moon_rock_brick_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:cracked_moon_rock_brick" - }, - "result": { - "count": 2, - "id": "galacticraft:cracked_moon_rock_brick_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick_stairs.json b/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick_stairs.json deleted file mode 100644 index eeaabee85f..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:cracked_moon_rock_brick" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:cracked_moon_rock_brick_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick_stairs_from_cracked_moon_rock_brick_stonecutting.json b/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick_stairs_from_cracked_moon_rock_brick_stonecutting.json deleted file mode 100644 index 05b58cf102..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick_stairs_from_cracked_moon_rock_brick_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:cracked_moon_rock_brick" - }, - "result": { - "count": 1, - "id": "galacticraft:cracked_moon_rock_brick_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick_wall.json b/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick_wall.json deleted file mode 100644 index aed68a5585..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:cracked_moon_rock_brick" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:cracked_moon_rock_brick_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick_wall_from_cracked_moon_rock_brick_stonecutting.json b/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick_wall_from_cracked_moon_rock_brick_stonecutting.json deleted file mode 100644 index 2fee40f1a7..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cracked_moon_rock_brick_wall_from_cracked_moon_rock_brick_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:cracked_moon_rock_brick" - }, - "result": { - "count": 1, - "id": "galacticraft:cracked_moon_rock_brick_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/cyan_parachute.json b/src/main/generated/data/galacticraft/recipe/cyan_parachute.json deleted file mode 100644 index 32f143615e..0000000000 --- a/src/main/generated/data/galacticraft/recipe/cyan_parachute.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:white_parachute" - }, - { - "item": "minecraft:cyan_dye" - } - ], - "result": { - "count": 1, - "id": "galacticraft:cyan_parachute" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/dark_decoration_slab.json b/src/main/generated/data/galacticraft/recipe/dark_decoration_slab.json deleted file mode 100644 index e7d14c06fe..0000000000 --- a/src/main/generated/data/galacticraft/recipe/dark_decoration_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:dark_decoration" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:dark_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/dark_decoration_slab_from_dark_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/dark_decoration_slab_from_dark_decoration_stonecutting.json deleted file mode 100644 index bebd9d63c9..0000000000 --- a/src/main/generated/data/galacticraft/recipe/dark_decoration_slab_from_dark_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:dark_decoration" - }, - "result": { - "count": 2, - "id": "galacticraft:dark_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/dark_decoration_stairs.json b/src/main/generated/data/galacticraft/recipe/dark_decoration_stairs.json deleted file mode 100644 index 8f78ea3084..0000000000 --- a/src/main/generated/data/galacticraft/recipe/dark_decoration_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:dark_decoration" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:dark_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/dark_decoration_stairs_from_dark_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/dark_decoration_stairs_from_dark_decoration_stonecutting.json deleted file mode 100644 index 25cdea962a..0000000000 --- a/src/main/generated/data/galacticraft/recipe/dark_decoration_stairs_from_dark_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:dark_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:dark_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/dark_decoration_wall.json b/src/main/generated/data/galacticraft/recipe/dark_decoration_wall.json deleted file mode 100644 index 4bcba48744..0000000000 --- a/src/main/generated/data/galacticraft/recipe/dark_decoration_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:dark_decoration" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:dark_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/dark_decoration_wall_from_dark_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/dark_decoration_wall_from_dark_decoration_stonecutting.json deleted file mode 100644 index bebc552295..0000000000 --- a/src/main/generated/data/galacticraft/recipe/dark_decoration_wall_from_dark_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:dark_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:dark_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/dashed_light_panel.json b/src/main/generated/data/galacticraft/recipe/dashed_light_panel.json deleted file mode 100644 index edb8d15723..0000000000 --- a/src/main/generated/data/galacticraft/recipe/dashed_light_panel.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "G": { - "item": "galacticraft:glowstone_torch" - }, - "S": { - "item": "minecraft:glass_pane" - }, - "T": { - "item": "galacticraft:compressed_steel" - } - }, - "pattern": [ - "SGS", - " T " - ], - "result": { - "count": 1, - "id": "galacticraft:dashed_light_panel" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_axe.json b/src/main/generated/data/galacticraft/recipe/desh_axe.json deleted file mode 100644 index d554cc0c90..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_axe.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "D": { - "item": "galacticraft:desh_ingot" - }, - "S": { - "item": "galacticraft:desh_stick" - } - }, - "pattern": [ - "DD", - "DS", - " S" - ], - "result": { - "count": 1, - "id": "galacticraft:desh_axe" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_axe_flipped.json b/src/main/generated/data/galacticraft/recipe/desh_axe_flipped.json deleted file mode 100644 index cc433cc4e7..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_axe_flipped.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "D": { - "item": "galacticraft:desh_ingot" - }, - "S": { - "item": "galacticraft:desh_stick" - } - }, - "pattern": [ - "DD", - "SD", - "S " - ], - "result": { - "count": 1, - "id": "galacticraft:desh_axe" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_block.json b/src/main/generated/data/galacticraft/recipe/desh_block.json deleted file mode 100644 index 1dab2fdb97..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_block.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:desh_ingot" - } - }, - "pattern": [ - "###", - "###", - "###" - ], - "result": { - "count": 1, - "id": "galacticraft:desh_block" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_boots.json b/src/main/generated/data/galacticraft/recipe/desh_boots.json deleted file mode 100644 index 4de53099b8..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_boots.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "D": { - "item": "galacticraft:desh_ingot" - } - }, - "pattern": [ - "D D", - "D D" - ], - "result": { - "count": 1, - "id": "galacticraft:desh_boots" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_chestplate.json b/src/main/generated/data/galacticraft/recipe/desh_chestplate.json deleted file mode 100644 index 8541efe7c6..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_chestplate.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "D": { - "item": "galacticraft:desh_ingot" - } - }, - "pattern": [ - "D D", - "DDD", - "DDD" - ], - "result": { - "count": 1, - "id": "galacticraft:desh_chestplate" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_helmet.json b/src/main/generated/data/galacticraft/recipe/desh_helmet.json deleted file mode 100644 index 2d7f239f76..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_helmet.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "D": { - "item": "galacticraft:desh_ingot" - } - }, - "pattern": [ - "DDD", - "D D" - ], - "result": { - "count": 1, - "id": "galacticraft:desh_helmet" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_hoe.json b/src/main/generated/data/galacticraft/recipe/desh_hoe.json deleted file mode 100644 index d7ad6ef207..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_hoe.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "D": { - "item": "galacticraft:desh_ingot" - }, - "S": { - "item": "galacticraft:desh_stick" - } - }, - "pattern": [ - "DD", - " S", - " S" - ], - "result": { - "count": 1, - "id": "galacticraft:desh_hoe" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_hoe_flipped.json b/src/main/generated/data/galacticraft/recipe/desh_hoe_flipped.json deleted file mode 100644 index 537c5eb7b8..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_hoe_flipped.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "D": { - "item": "galacticraft:desh_ingot" - }, - "S": { - "item": "galacticraft:desh_stick" - } - }, - "pattern": [ - "DD", - "S ", - "S " - ], - "result": { - "count": 1, - "id": "galacticraft:desh_hoe" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_ingot_from_blasting_desh_ore.json b/src/main/generated/data/galacticraft/recipe/desh_ingot_from_blasting_desh_ore.json deleted file mode 100644 index cdb37e5d27..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_ingot_from_blasting_desh_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:blasting", - "category": "misc", - "cookingtime": 100, - "experience": 0.7, - "group": "desh_ingot", - "ingredient": { - "item": "galacticraft:desh_ore" - }, - "result": { - "id": "galacticraft:desh_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_ingot_from_blasting_raw_desh.json b/src/main/generated/data/galacticraft/recipe/desh_ingot_from_blasting_raw_desh.json deleted file mode 100644 index 769a5d2d76..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_ingot_from_blasting_raw_desh.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:blasting", - "category": "misc", - "cookingtime": 100, - "experience": 0.7, - "group": "desh_ingot", - "ingredient": { - "item": "galacticraft:raw_desh" - }, - "result": { - "id": "galacticraft:desh_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_ingot_from_block.json b/src/main/generated/data/galacticraft/recipe/desh_ingot_from_block.json deleted file mode 100644 index ca1f902fe3..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_ingot_from_block.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "group": "desh_ingot", - "ingredients": [ - { - "item": "galacticraft:desh_block" - } - ], - "result": { - "count": 9, - "id": "galacticraft:desh_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/recipe/desh_ingot_from_nuggets.json deleted file mode 100644 index a4d27173a2..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_ingot_from_nuggets.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "group": "desh_ingot", - "key": { - "#": { - "item": "galacticraft:desh_nugget" - } - }, - "pattern": [ - "###", - "###", - "###" - ], - "result": { - "count": 1, - "id": "galacticraft:desh_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_ingot_from_smelting_desh_ore.json b/src/main/generated/data/galacticraft/recipe/desh_ingot_from_smelting_desh_ore.json deleted file mode 100644 index 1b3f16b583..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_ingot_from_smelting_desh_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.7, - "group": "desh_ingot", - "ingredient": { - "item": "galacticraft:desh_ore" - }, - "result": { - "id": "galacticraft:desh_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_ingot_from_smelting_raw_desh.json b/src/main/generated/data/galacticraft/recipe/desh_ingot_from_smelting_raw_desh.json deleted file mode 100644 index c896233265..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_ingot_from_smelting_raw_desh.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.7, - "group": "desh_ingot", - "ingredient": { - "item": "galacticraft:raw_desh" - }, - "result": { - "id": "galacticraft:desh_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_leggings.json b/src/main/generated/data/galacticraft/recipe/desh_leggings.json deleted file mode 100644 index d0f2773a50..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_leggings.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "D": { - "item": "galacticraft:desh_ingot" - } - }, - "pattern": [ - "DDD", - "D D", - "D D" - ], - "result": { - "count": 1, - "id": "galacticraft:desh_leggings" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_nugget.json b/src/main/generated/data/galacticraft/recipe/desh_nugget.json deleted file mode 100644 index 928324f25c..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_nugget.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:desh_ingot" - } - ], - "result": { - "count": 9, - "id": "galacticraft:desh_nugget" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_pickaxe.json b/src/main/generated/data/galacticraft/recipe/desh_pickaxe.json deleted file mode 100644 index 76db84b721..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_pickaxe.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "D": { - "item": "galacticraft:desh_ingot" - }, - "S": { - "item": "galacticraft:desh_stick" - } - }, - "pattern": [ - "DDD", - " S ", - " S " - ], - "result": { - "count": 1, - "id": "galacticraft:desh_pickaxe" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_shovel.json b/src/main/generated/data/galacticraft/recipe/desh_shovel.json deleted file mode 100644 index 07d8ce6aa4..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_shovel.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "D": { - "item": "galacticraft:desh_ingot" - }, - "S": { - "item": "galacticraft:desh_stick" - } - }, - "pattern": [ - "D", - "S", - "S" - ], - "result": { - "count": 1, - "id": "galacticraft:desh_shovel" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_stick.json b/src/main/generated/data/galacticraft/recipe/desh_stick.json deleted file mode 100644 index b2aba4c565..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_stick.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "D": { - "item": "galacticraft:desh_ingot" - } - }, - "pattern": [ - "D", - "D" - ], - "result": { - "count": 4, - "id": "galacticraft:desh_stick" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/desh_sword.json b/src/main/generated/data/galacticraft/recipe/desh_sword.json deleted file mode 100644 index f5ebcd14dc..0000000000 --- a/src/main/generated/data/galacticraft/recipe/desh_sword.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "D": { - "item": "galacticraft:desh_ingot" - }, - "S": { - "item": "galacticraft:desh_stick" - } - }, - "pattern": [ - "D", - "S", - "S" - ], - "result": { - "count": 1, - "id": "galacticraft:desh_sword" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration.json b/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration.json deleted file mode 100644 index 0fc1b16523..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:stone" - }, - "X": { - "item": "galacticraft:compressed_aluminum" - } - }, - "pattern": [ - "##", - "##", - " X" - ], - "result": { - "count": 4, - "id": "galacticraft:detailed_aluminum_decoration" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration_slab.json b/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration_slab.json deleted file mode 100644 index fabc64dd46..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_aluminum_decoration" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:detailed_aluminum_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration_slab_from_detailed_aluminum_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration_slab_from_detailed_aluminum_decoration_stonecutting.json deleted file mode 100644 index 84daad2d97..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration_slab_from_detailed_aluminum_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_aluminum_decoration" - }, - "result": { - "count": 2, - "id": "galacticraft:detailed_aluminum_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration_stairs.json b/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration_stairs.json deleted file mode 100644 index a4a7e62e94..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_aluminum_decoration" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:detailed_aluminum_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration_stairs_from_detailed_aluminum_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration_stairs_from_detailed_aluminum_decoration_stonecutting.json deleted file mode 100644 index 0e6c011e53..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration_stairs_from_detailed_aluminum_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_aluminum_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:detailed_aluminum_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration_wall.json b/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration_wall.json deleted file mode 100644 index 6361a9d08a..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_aluminum_decoration" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:detailed_aluminum_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration_wall_from_detailed_aluminum_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration_wall_from_detailed_aluminum_decoration_stonecutting.json deleted file mode 100644 index 4b818b55e8..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_aluminum_decoration_wall_from_detailed_aluminum_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_aluminum_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:detailed_aluminum_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration.json b/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration.json deleted file mode 100644 index ff5c19014b..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:stone" - }, - "X": { - "item": "galacticraft:compressed_bronze" - } - }, - "pattern": [ - "##", - "##", - " X" - ], - "result": { - "count": 4, - "id": "galacticraft:detailed_bronze_decoration" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration_slab.json b/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration_slab.json deleted file mode 100644 index b827d41fd8..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_bronze_decoration" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:detailed_bronze_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration_slab_from_detailed_bronze_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration_slab_from_detailed_bronze_decoration_stonecutting.json deleted file mode 100644 index 7ac18a4cbd..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration_slab_from_detailed_bronze_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_bronze_decoration" - }, - "result": { - "count": 2, - "id": "galacticraft:detailed_bronze_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration_stairs.json b/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration_stairs.json deleted file mode 100644 index 40723c13f5..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_bronze_decoration" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:detailed_bronze_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration_stairs_from_detailed_bronze_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration_stairs_from_detailed_bronze_decoration_stonecutting.json deleted file mode 100644 index 3cef4198ba..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration_stairs_from_detailed_bronze_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_bronze_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:detailed_bronze_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration_wall.json b/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration_wall.json deleted file mode 100644 index c29bfa523d..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_bronze_decoration" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:detailed_bronze_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration_wall_from_detailed_bronze_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration_wall_from_detailed_bronze_decoration_stonecutting.json deleted file mode 100644 index e85c5f9598..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_bronze_decoration_wall_from_detailed_bronze_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_bronze_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:detailed_bronze_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration.json b/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration.json deleted file mode 100644 index 6d6479c56e..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:stone" - }, - "X": { - "item": "galacticraft:compressed_copper" - } - }, - "pattern": [ - "##", - "##", - " X" - ], - "result": { - "count": 4, - "id": "galacticraft:detailed_copper_decoration" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration_slab.json b/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration_slab.json deleted file mode 100644 index 9c59cfff73..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_copper_decoration" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:detailed_copper_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration_slab_from_detailed_copper_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration_slab_from_detailed_copper_decoration_stonecutting.json deleted file mode 100644 index 00e586f01d..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration_slab_from_detailed_copper_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_copper_decoration" - }, - "result": { - "count": 2, - "id": "galacticraft:detailed_copper_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration_stairs.json b/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration_stairs.json deleted file mode 100644 index dd04611e0d..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_copper_decoration" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:detailed_copper_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration_stairs_from_detailed_copper_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration_stairs_from_detailed_copper_decoration_stonecutting.json deleted file mode 100644 index ee223f0a93..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration_stairs_from_detailed_copper_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_copper_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:detailed_copper_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration_wall.json b/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration_wall.json deleted file mode 100644 index e56cfd9786..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_copper_decoration" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:detailed_copper_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration_wall_from_detailed_copper_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration_wall_from_detailed_copper_decoration_stonecutting.json deleted file mode 100644 index 9c87548ca0..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_copper_decoration_wall_from_detailed_copper_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_copper_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:detailed_copper_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_dark_decoration_slab.json b/src/main/generated/data/galacticraft/recipe/detailed_dark_decoration_slab.json deleted file mode 100644 index 8a18a6ec12..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_dark_decoration_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_dark_decoration" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:detailed_dark_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_dark_decoration_slab_from_detailed_dark_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_dark_decoration_slab_from_detailed_dark_decoration_stonecutting.json deleted file mode 100644 index 944fc17912..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_dark_decoration_slab_from_detailed_dark_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_dark_decoration" - }, - "result": { - "count": 2, - "id": "galacticraft:detailed_dark_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_dark_decoration_stairs.json b/src/main/generated/data/galacticraft/recipe/detailed_dark_decoration_stairs.json deleted file mode 100644 index 989a1f5b8c..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_dark_decoration_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_dark_decoration" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:detailed_dark_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_dark_decoration_stairs_from_detailed_dark_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_dark_decoration_stairs_from_detailed_dark_decoration_stonecutting.json deleted file mode 100644 index 9b2987ee0b..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_dark_decoration_stairs_from_detailed_dark_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_dark_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:detailed_dark_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_dark_decoration_wall.json b/src/main/generated/data/galacticraft/recipe/detailed_dark_decoration_wall.json deleted file mode 100644 index 5f31c84237..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_dark_decoration_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_dark_decoration" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:detailed_dark_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_dark_decoration_wall_from_detailed_dark_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_dark_decoration_wall_from_detailed_dark_decoration_stonecutting.json deleted file mode 100644 index fdf10e28f7..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_dark_decoration_wall_from_detailed_dark_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_dark_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:detailed_dark_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration.json b/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration.json deleted file mode 100644 index 928fc4bd94..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:stone" - }, - "X": { - "item": "galacticraft:compressed_iron" - } - }, - "pattern": [ - "##", - "##", - " X" - ], - "result": { - "count": 4, - "id": "galacticraft:detailed_iron_decoration" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration_slab.json b/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration_slab.json deleted file mode 100644 index 1ecc124ec5..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_iron_decoration" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:detailed_iron_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration_slab_from_detailed_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration_slab_from_detailed_iron_decoration_stonecutting.json deleted file mode 100644 index b16936116c..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration_slab_from_detailed_iron_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_iron_decoration" - }, - "result": { - "count": 2, - "id": "galacticraft:detailed_iron_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration_stairs.json b/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration_stairs.json deleted file mode 100644 index b6fb766b55..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_iron_decoration" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:detailed_iron_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration_stairs_from_detailed_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration_stairs_from_detailed_iron_decoration_stonecutting.json deleted file mode 100644 index ffb028d5b1..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration_stairs_from_detailed_iron_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_iron_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:detailed_iron_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration_wall.json b/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration_wall.json deleted file mode 100644 index 45d2cc2daa..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_iron_decoration" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:detailed_iron_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration_wall_from_detailed_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration_wall_from_detailed_iron_decoration_stonecutting.json deleted file mode 100644 index 0358fd2b18..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_iron_decoration_wall_from_detailed_iron_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_iron_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:detailed_iron_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration.json b/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration.json deleted file mode 100644 index 477987a55f..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:stone" - }, - "X": { - "item": "galacticraft:compressed_meteoric_iron" - } - }, - "pattern": [ - "##", - "##", - " X" - ], - "result": { - "count": 4, - "id": "galacticraft:detailed_meteoric_iron_decoration" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration_slab.json b/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration_slab.json deleted file mode 100644 index c09480d95f..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_meteoric_iron_decoration" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:detailed_meteoric_iron_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration_slab_from_detailed_meteoric_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration_slab_from_detailed_meteoric_iron_decoration_stonecutting.json deleted file mode 100644 index f28078523d..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration_slab_from_detailed_meteoric_iron_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_meteoric_iron_decoration" - }, - "result": { - "count": 2, - "id": "galacticraft:detailed_meteoric_iron_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration_stairs.json b/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration_stairs.json deleted file mode 100644 index 7c903dbec2..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_meteoric_iron_decoration" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:detailed_meteoric_iron_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration_stairs_from_detailed_meteoric_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration_stairs_from_detailed_meteoric_iron_decoration_stonecutting.json deleted file mode 100644 index 9ed1c948e7..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration_stairs_from_detailed_meteoric_iron_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_meteoric_iron_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:detailed_meteoric_iron_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration_wall.json b/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration_wall.json deleted file mode 100644 index 13f6579f13..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_meteoric_iron_decoration" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:detailed_meteoric_iron_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration_wall_from_detailed_meteoric_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration_wall_from_detailed_meteoric_iron_decoration_stonecutting.json deleted file mode 100644 index 6e10ba45eb..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_meteoric_iron_decoration_wall_from_detailed_meteoric_iron_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_meteoric_iron_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:detailed_meteoric_iron_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration.json b/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration.json deleted file mode 100644 index 41822d4c21..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:stone" - }, - "X": { - "item": "galacticraft:compressed_steel" - } - }, - "pattern": [ - "##", - "##", - " X" - ], - "result": { - "count": 4, - "id": "galacticraft:detailed_steel_decoration" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration_slab.json b/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration_slab.json deleted file mode 100644 index b052f521f8..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_steel_decoration" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:detailed_steel_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration_slab_from_detailed_steel_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration_slab_from_detailed_steel_decoration_stonecutting.json deleted file mode 100644 index 9a766f0c2c..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration_slab_from_detailed_steel_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_steel_decoration" - }, - "result": { - "count": 2, - "id": "galacticraft:detailed_steel_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration_stairs.json b/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration_stairs.json deleted file mode 100644 index 12c202d213..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_steel_decoration" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:detailed_steel_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration_stairs_from_detailed_steel_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration_stairs_from_detailed_steel_decoration_stonecutting.json deleted file mode 100644 index 81f8ecb6c0..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration_stairs_from_detailed_steel_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_steel_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:detailed_steel_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration_wall.json b/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration_wall.json deleted file mode 100644 index 2dbd82a686..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_steel_decoration" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:detailed_steel_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration_wall_from_detailed_steel_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration_wall_from_detailed_steel_decoration_stonecutting.json deleted file mode 100644 index 735c849684..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_steel_decoration_wall_from_detailed_steel_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_steel_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:detailed_steel_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration.json b/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration.json deleted file mode 100644 index 576f563b63..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:stone" - }, - "X": { - "item": "galacticraft:compressed_tin" - } - }, - "pattern": [ - "##", - "##", - " X" - ], - "result": { - "count": 4, - "id": "galacticraft:detailed_tin_decoration" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration_slab.json b/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration_slab.json deleted file mode 100644 index 72bc5f4022..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_tin_decoration" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:detailed_tin_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration_slab_from_detailed_tin_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration_slab_from_detailed_tin_decoration_stonecutting.json deleted file mode 100644 index 7e6e53a06f..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration_slab_from_detailed_tin_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_tin_decoration" - }, - "result": { - "count": 2, - "id": "galacticraft:detailed_tin_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration_stairs.json b/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration_stairs.json deleted file mode 100644 index a420181de4..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_tin_decoration" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:detailed_tin_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration_stairs_from_detailed_tin_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration_stairs_from_detailed_tin_decoration_stonecutting.json deleted file mode 100644 index 97c16ea3a3..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration_stairs_from_detailed_tin_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_tin_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:detailed_tin_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration_wall.json b/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration_wall.json deleted file mode 100644 index 58e0310e57..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_tin_decoration" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:detailed_tin_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration_wall_from_detailed_tin_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration_wall_from_detailed_tin_decoration_stonecutting.json deleted file mode 100644 index a42d712baf..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_tin_decoration_wall_from_detailed_tin_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_tin_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:detailed_tin_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration.json b/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration.json deleted file mode 100644 index 4e721fc4a2..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:stone" - }, - "X": { - "item": "galacticraft:compressed_titanium" - } - }, - "pattern": [ - "##", - "##", - " X" - ], - "result": { - "count": 4, - "id": "galacticraft:detailed_titanium_decoration" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration_slab.json b/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration_slab.json deleted file mode 100644 index a987d64634..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_titanium_decoration" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:detailed_titanium_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration_slab_from_detailed_titanium_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration_slab_from_detailed_titanium_decoration_stonecutting.json deleted file mode 100644 index 636e1bbdb9..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration_slab_from_detailed_titanium_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_titanium_decoration" - }, - "result": { - "count": 2, - "id": "galacticraft:detailed_titanium_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration_stairs.json b/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration_stairs.json deleted file mode 100644 index 2c96be714a..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_titanium_decoration" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:detailed_titanium_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration_stairs_from_detailed_titanium_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration_stairs_from_detailed_titanium_decoration_stonecutting.json deleted file mode 100644 index b234645254..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration_stairs_from_detailed_titanium_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_titanium_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:detailed_titanium_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration_wall.json b/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration_wall.json deleted file mode 100644 index 5788017478..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:detailed_titanium_decoration" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:detailed_titanium_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration_wall_from_detailed_titanium_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration_wall_from_detailed_titanium_decoration_stonecutting.json deleted file mode 100644 index 65d7758184..0000000000 --- a/src/main/generated/data/galacticraft/recipe/detailed_titanium_decoration_wall_from_detailed_titanium_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:detailed_titanium_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:detailed_titanium_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/diagonal_light_panel.json b/src/main/generated/data/galacticraft/recipe/diagonal_light_panel.json deleted file mode 100644 index 5e88c7bacf..0000000000 --- a/src/main/generated/data/galacticraft/recipe/diagonal_light_panel.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "G": { - "item": "galacticraft:glowstone_torch" - }, - "S": { - "item": "minecraft:glass_pane" - }, - "T": { - "item": "galacticraft:compressed_steel" - } - }, - "pattern": [ - " S", - "SG", - " T" - ], - "result": { - "count": 1, - "id": "galacticraft:diagonal_light_panel" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/diagonal_light_panel_flipped.json b/src/main/generated/data/galacticraft/recipe/diagonal_light_panel_flipped.json deleted file mode 100644 index 5e88c7bacf..0000000000 --- a/src/main/generated/data/galacticraft/recipe/diagonal_light_panel_flipped.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "G": { - "item": "galacticraft:glowstone_torch" - }, - "S": { - "item": "minecraft:glass_pane" - }, - "T": { - "item": "galacticraft:compressed_steel" - } - }, - "pattern": [ - " S", - "SG", - " T" - ], - "result": { - "count": 1, - "id": "galacticraft:diagonal_light_panel" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/electric_arc_furnace.json b/src/main/generated/data/galacticraft/recipe/electric_arc_furnace.json deleted file mode 100644 index c7a4bbb1ad..0000000000 --- a/src/main/generated/data/galacticraft/recipe/electric_arc_furnace.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "E": { - "item": "galacticraft:electric_furnace" - }, - "H": { - "item": "galacticraft:heavy_plating" - }, - "M": { - "item": "galacticraft:meteoric_iron_ingot" - }, - "W": { - "item": "galacticraft:advanced_wafer" - } - }, - "pattern": [ - "HHH", - "HEH", - "MWM" - ], - "result": { - "count": 1, - "id": "galacticraft:electric_arc_furnace" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/electric_compressor.json b/src/main/generated/data/galacticraft/recipe/electric_compressor.json deleted file mode 100644 index 2b1d693b7a..0000000000 --- a/src/main/generated/data/galacticraft/recipe/electric_compressor.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "minecraft:anvil" - }, - "B": { - "item": "galacticraft:compressed_bronze" - }, - "I": { - "item": "galacticraft:aluminum_wire" - }, - "S": { - "item": "galacticraft:compressed_steel" - }, - "W": { - "item": "galacticraft:advanced_wafer" - } - }, - "pattern": [ - "SAS", - "SBS", - "IWI" - ], - "result": { - "count": 1, - "id": "galacticraft:electric_compressor" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/electric_compressor_upgrade.json b/src/main/generated/data/galacticraft/recipe/electric_compressor_upgrade.json deleted file mode 100644 index 4833259d80..0000000000 --- a/src/main/generated/data/galacticraft/recipe/electric_compressor_upgrade.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "galacticraft:compressor" - }, - "I": { - "item": "galacticraft:aluminum_wire" - }, - "S": { - "item": "galacticraft:compressed_steel" - }, - "T": { - "item": "galacticraft:compressed_tin" - }, - "W": { - "item": "galacticraft:advanced_wafer" - } - }, - "pattern": [ - "STS", - "SCS", - "IWI" - ], - "result": { - "count": 1, - "id": "galacticraft:electric_compressor" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/electric_furnace.json b/src/main/generated/data/galacticraft/recipe/electric_furnace.json deleted file mode 100644 index 602bec559e..0000000000 --- a/src/main/generated/data/galacticraft/recipe/electric_furnace.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "galacticraft:compressed_aluminum" - }, - "F": { - "item": "minecraft:furnace" - }, - "S": { - "item": "galacticraft:compressed_steel" - }, - "W": { - "item": "galacticraft:basic_wafer" - } - }, - "pattern": [ - "SSS", - "SFS", - "AWA" - ], - "result": { - "count": 1, - "id": "galacticraft:electric_furnace" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/energy_storage_module.json b/src/main/generated/data/galacticraft/recipe/energy_storage_module.json deleted file mode 100644 index a50f45c33e..0000000000 --- a/src/main/generated/data/galacticraft/recipe/energy_storage_module.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "B": { - "item": "galacticraft:battery" - }, - "S": { - "item": "galacticraft:compressed_steel" - } - }, - "pattern": [ - "SSS", - "BBB", - "SSS" - ], - "result": { - "count": 1, - "id": "galacticraft:energy_storage_module" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/fluid_manipulator.json b/src/main/generated/data/galacticraft/recipe/fluid_manipulator.json deleted file mode 100644 index 7c0f45d087..0000000000 --- a/src/main/generated/data/galacticraft/recipe/fluid_manipulator.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "F": { - "item": "galacticraft:oxygen_fan" - }, - "M": { - "item": "galacticraft:meteoric_iron_ingot" - }, - "S": { - "item": "minecraft:slime_ball" - }, - "W": { - "item": "galacticraft:advanced_wafer" - } - }, - "pattern": [ - "MFM", - "SWS", - "MFM" - ], - "result": { - "count": 1, - "id": "galacticraft:fluid_manipulator" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/fluid_pipe_walkway.json b/src/main/generated/data/galacticraft/recipe/fluid_pipe_walkway.json deleted file mode 100644 index af3e4f24e4..0000000000 --- a/src/main/generated/data/galacticraft/recipe/fluid_pipe_walkway.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "P": { - "item": "galacticraft:glass_fluid_pipe" - }, - "T": { - "item": "galacticraft:compressed_titanium" - } - }, - "pattern": [ - "TTT", - "PTP", - "PPP" - ], - "result": { - "count": 5, - "id": "galacticraft:fluid_pipe_walkway" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/fluid_pipe_walkway_shapeless.json b/src/main/generated/data/galacticraft/recipe/fluid_pipe_walkway_shapeless.json deleted file mode 100644 index 8fed9c8fe5..0000000000 --- a/src/main/generated/data/galacticraft/recipe/fluid_pipe_walkway_shapeless.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:compressed_titanium" - }, - { - "item": "galacticraft:glass_fluid_pipe" - } - ], - "result": { - "count": 1, - "id": "galacticraft:fluid_pipe_walkway" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/frequency_module.json b/src/main/generated/data/galacticraft/recipe/frequency_module.json deleted file mode 100644 index 4f919c94fe..0000000000 --- a/src/main/generated/data/galacticraft/recipe/frequency_module.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "galacticraft:compressed_aluminum" - }, - "I": { - "item": "galacticraft:compressed_iron" - }, - "P": { - "item": "minecraft:repeater" - }, - "R": { - "tag": "c:dusts/redstone" - }, - "W": { - "item": "galacticraft:basic_wafer" - } - }, - "pattern": [ - " A ", - "IPI", - "RWR" - ], - "result": { - "count": 1, - "id": "galacticraft:frequency_module" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/fuel_loader.json b/src/main/generated/data/galacticraft/recipe/fuel_loader.json deleted file mode 100644 index 0b9238d3ce..0000000000 --- a/src/main/generated/data/galacticraft/recipe/fuel_loader.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "galacticraft:tin_canister" - }, - "T": { - "item": "galacticraft:compressed_tin" - }, - "U": { - "item": "galacticraft:compressed_copper" - }, - "W": { - "item": "galacticraft:basic_wafer" - } - }, - "pattern": [ - "UUU", - "UCU", - "TWT" - ], - "result": { - "count": 1, - "id": "galacticraft:fuel_loader" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/fueling_pad.json b/src/main/generated/data/galacticraft/recipe/fueling_pad.json deleted file mode 100644 index a0e1f9db34..0000000000 --- a/src/main/generated/data/galacticraft/recipe/fueling_pad.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "galacticraft:compressed_steel" - }, - "I": { - "item": "minecraft:iron_block" - } - }, - "pattern": [ - "CCC", - "III" - ], - "result": { - "count": 9, - "id": "galacticraft:fueling_pad" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/full_solar_panel.json b/src/main/generated/data/galacticraft/recipe/full_solar_panel.json deleted file mode 100644 index bf70f09257..0000000000 --- a/src/main/generated/data/galacticraft/recipe/full_solar_panel.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "M": { - "item": "galacticraft:single_solar_module" - }, - "W": { - "item": "galacticraft:aluminum_wire" - } - }, - "pattern": [ - "MMM", - "WWW", - "MMM" - ], - "result": { - "count": 1, - "id": "galacticraft:full_solar_panel" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/glass_fluid_pipe.json b/src/main/generated/data/galacticraft/recipe/glass_fluid_pipe.json deleted file mode 100644 index a38f5db7af..0000000000 --- a/src/main/generated/data/galacticraft/recipe/glass_fluid_pipe.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "X": { - "item": "minecraft:glass_pane" - } - }, - "pattern": [ - "XXX", - " ", - "XXX" - ], - "result": { - "count": 6, - "id": "galacticraft:glass_fluid_pipe" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/glowstone_lantern.json b/src/main/generated/data/galacticraft/recipe/glowstone_lantern.json deleted file mode 100644 index d3306b4860..0000000000 --- a/src/main/generated/data/galacticraft/recipe/glowstone_lantern.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "G": { - "item": "galacticraft:glowstone_torch" - }, - "I": { - "item": "minecraft:iron_nugget" - } - }, - "pattern": [ - "III", - "IGI", - "III" - ], - "result": { - "count": 1, - "id": "galacticraft:glowstone_lantern" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/glowstone_torch.json b/src/main/generated/data/galacticraft/recipe/glowstone_torch.json deleted file mode 100644 index 87b2262d20..0000000000 --- a/src/main/generated/data/galacticraft/recipe/glowstone_torch.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "G": { - "item": "minecraft:glowstone_dust" - }, - "S": { - "item": "minecraft:stick" - } - }, - "pattern": [ - "G", - "S" - ], - "result": { - "count": 4, - "id": "galacticraft:glowstone_torch" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/grating.json b/src/main/generated/data/galacticraft/recipe/grating.json deleted file mode 100644 index 968baefb35..0000000000 --- a/src/main/generated/data/galacticraft/recipe/grating.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "I": { - "item": "minecraft:iron_bars" - } - }, - "pattern": [ - "II", - "II" - ], - "result": { - "count": 4, - "id": "galacticraft:grating" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/gray_parachute.json b/src/main/generated/data/galacticraft/recipe/gray_parachute.json deleted file mode 100644 index bcd35314aa..0000000000 --- a/src/main/generated/data/galacticraft/recipe/gray_parachute.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:white_parachute" - }, - { - "item": "minecraft:gray_dye" - } - ], - "result": { - "count": 1, - "id": "galacticraft:gray_parachute" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/green_parachute.json b/src/main/generated/data/galacticraft/recipe/green_parachute.json deleted file mode 100644 index 9c55aa59d3..0000000000 --- a/src/main/generated/data/galacticraft/recipe/green_parachute.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:white_parachute" - }, - { - "item": "minecraft:green_dye" - } - ], - "result": { - "count": 1, - "id": "galacticraft:green_parachute" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/ground_beef.json b/src/main/generated/data/galacticraft/recipe/ground_beef.json deleted file mode 100644 index 06c6f31043..0000000000 --- a/src/main/generated/data/galacticraft/recipe/ground_beef.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "minecraft:beef" - } - ], - "result": { - "count": 2, - "id": "galacticraft:ground_beef" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/heavy_duty_axe.json b/src/main/generated/data/galacticraft/recipe/heavy_duty_axe.json deleted file mode 100644 index 5e76f1c23c..0000000000 --- a/src/main/generated/data/galacticraft/recipe/heavy_duty_axe.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "S": { - "item": "galacticraft:compressed_steel" - }, - "W": { - "item": "minecraft:stick" - } - }, - "pattern": [ - "SS", - "SW", - " W" - ], - "result": { - "count": 1, - "id": "galacticraft:heavy_duty_axe" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/heavy_duty_axe_flipped.json b/src/main/generated/data/galacticraft/recipe/heavy_duty_axe_flipped.json deleted file mode 100644 index dce289c23c..0000000000 --- a/src/main/generated/data/galacticraft/recipe/heavy_duty_axe_flipped.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "S": { - "item": "galacticraft:compressed_steel" - }, - "W": { - "item": "minecraft:stick" - } - }, - "pattern": [ - "SS", - "WS", - "W " - ], - "result": { - "count": 1, - "id": "galacticraft:heavy_duty_axe" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/heavy_duty_boots.json b/src/main/generated/data/galacticraft/recipe/heavy_duty_boots.json deleted file mode 100644 index b2cc80bf79..0000000000 --- a/src/main/generated/data/galacticraft/recipe/heavy_duty_boots.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "P": { - "item": "galacticraft:heavy_plating" - } - }, - "pattern": [ - "P P", - "P P" - ], - "result": { - "count": 1, - "id": "galacticraft:heavy_duty_boots" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/heavy_duty_chestplate.json b/src/main/generated/data/galacticraft/recipe/heavy_duty_chestplate.json deleted file mode 100644 index 355fae7cec..0000000000 --- a/src/main/generated/data/galacticraft/recipe/heavy_duty_chestplate.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "P": { - "item": "galacticraft:heavy_plating" - } - }, - "pattern": [ - "P P", - "PPP", - "PPP" - ], - "result": { - "count": 1, - "id": "galacticraft:heavy_duty_chestplate" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/heavy_duty_helmet.json b/src/main/generated/data/galacticraft/recipe/heavy_duty_helmet.json deleted file mode 100644 index 4c1d3e215b..0000000000 --- a/src/main/generated/data/galacticraft/recipe/heavy_duty_helmet.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "P": { - "item": "galacticraft:heavy_plating" - } - }, - "pattern": [ - "PPP", - "P P" - ], - "result": { - "count": 1, - "id": "galacticraft:heavy_duty_helmet" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/heavy_duty_hoe.json b/src/main/generated/data/galacticraft/recipe/heavy_duty_hoe.json deleted file mode 100644 index 3480b3b3bf..0000000000 --- a/src/main/generated/data/galacticraft/recipe/heavy_duty_hoe.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "S": { - "item": "galacticraft:compressed_steel" - }, - "W": { - "item": "minecraft:stick" - } - }, - "pattern": [ - "SS", - " W", - " W" - ], - "result": { - "count": 1, - "id": "galacticraft:heavy_duty_hoe" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/heavy_duty_hoe_flipped.json b/src/main/generated/data/galacticraft/recipe/heavy_duty_hoe_flipped.json deleted file mode 100644 index c1f72fa9e9..0000000000 --- a/src/main/generated/data/galacticraft/recipe/heavy_duty_hoe_flipped.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "S": { - "item": "galacticraft:compressed_steel" - }, - "W": { - "item": "minecraft:stick" - } - }, - "pattern": [ - "SS", - "W ", - "W " - ], - "result": { - "count": 1, - "id": "galacticraft:heavy_duty_hoe" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/heavy_duty_leggings.json b/src/main/generated/data/galacticraft/recipe/heavy_duty_leggings.json deleted file mode 100644 index 159683d26a..0000000000 --- a/src/main/generated/data/galacticraft/recipe/heavy_duty_leggings.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "P": { - "item": "galacticraft:heavy_plating" - } - }, - "pattern": [ - "PPP", - "P P", - "P P" - ], - "result": { - "count": 1, - "id": "galacticraft:heavy_duty_leggings" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/heavy_duty_pickaxe.json b/src/main/generated/data/galacticraft/recipe/heavy_duty_pickaxe.json deleted file mode 100644 index e8434418f5..0000000000 --- a/src/main/generated/data/galacticraft/recipe/heavy_duty_pickaxe.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "S": { - "item": "galacticraft:compressed_steel" - }, - "W": { - "item": "minecraft:stick" - } - }, - "pattern": [ - "SSS", - " W ", - " W " - ], - "result": { - "count": 1, - "id": "galacticraft:heavy_duty_pickaxe" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/heavy_duty_shovel.json b/src/main/generated/data/galacticraft/recipe/heavy_duty_shovel.json deleted file mode 100644 index 7c4265f3e0..0000000000 --- a/src/main/generated/data/galacticraft/recipe/heavy_duty_shovel.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "S": { - "item": "galacticraft:compressed_steel" - }, - "W": { - "item": "minecraft:stick" - } - }, - "pattern": [ - "S", - "W", - "W" - ], - "result": { - "count": 1, - "id": "galacticraft:heavy_duty_shovel" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/heavy_duty_sword.json b/src/main/generated/data/galacticraft/recipe/heavy_duty_sword.json deleted file mode 100644 index f46a7c5f8f..0000000000 --- a/src/main/generated/data/galacticraft/recipe/heavy_duty_sword.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "S": { - "item": "galacticraft:compressed_steel" - }, - "W": { - "item": "minecraft:stick" - } - }, - "pattern": [ - "S", - "S", - "W" - ], - "result": { - "count": 1, - "id": "galacticraft:heavy_duty_sword" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/hot_throwable_meteor_chunk_from_blasting.json b/src/main/generated/data/galacticraft/recipe/hot_throwable_meteor_chunk_from_blasting.json deleted file mode 100644 index ed610e2a2a..0000000000 --- a/src/main/generated/data/galacticraft/recipe/hot_throwable_meteor_chunk_from_blasting.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:blasting", - "category": "misc", - "cookingtime": 100, - "experience": 0.7, - "ingredient": { - "item": "galacticraft:throwable_meteor_chunk" - }, - "result": { - "id": "galacticraft:hot_throwable_meteor_chunk" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/hot_throwable_meteor_chunk_from_smelting.json b/src/main/generated/data/galacticraft/recipe/hot_throwable_meteor_chunk_from_smelting.json deleted file mode 100644 index 5f39b5b5fa..0000000000 --- a/src/main/generated/data/galacticraft/recipe/hot_throwable_meteor_chunk_from_smelting.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.7, - "ingredient": { - "item": "galacticraft:throwable_meteor_chunk" - }, - "result": { - "id": "galacticraft:hot_throwable_meteor_chunk" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/iron_decoration.json b/src/main/generated/data/galacticraft/recipe/iron_decoration.json deleted file mode 100644 index 634a1d3ae0..0000000000 --- a/src/main/generated/data/galacticraft/recipe/iron_decoration.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:stone" - }, - "X": { - "item": "galacticraft:compressed_iron" - } - }, - "pattern": [ - "## ", - "##X" - ], - "result": { - "count": 4, - "id": "galacticraft:iron_decoration" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/iron_decoration_slab.json b/src/main/generated/data/galacticraft/recipe/iron_decoration_slab.json deleted file mode 100644 index 0b903334f8..0000000000 --- a/src/main/generated/data/galacticraft/recipe/iron_decoration_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:iron_decoration" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:iron_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/iron_decoration_slab_from_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/iron_decoration_slab_from_iron_decoration_stonecutting.json deleted file mode 100644 index 1b28ebd04b..0000000000 --- a/src/main/generated/data/galacticraft/recipe/iron_decoration_slab_from_iron_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:iron_decoration" - }, - "result": { - "count": 2, - "id": "galacticraft:iron_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/iron_decoration_stairs.json b/src/main/generated/data/galacticraft/recipe/iron_decoration_stairs.json deleted file mode 100644 index 8872b129b2..0000000000 --- a/src/main/generated/data/galacticraft/recipe/iron_decoration_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:iron_decoration" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:iron_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/iron_decoration_stairs_from_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/iron_decoration_stairs_from_iron_decoration_stonecutting.json deleted file mode 100644 index c461b1f7d1..0000000000 --- a/src/main/generated/data/galacticraft/recipe/iron_decoration_stairs_from_iron_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:iron_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:iron_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/iron_decoration_wall.json b/src/main/generated/data/galacticraft/recipe/iron_decoration_wall.json deleted file mode 100644 index a6933825ed..0000000000 --- a/src/main/generated/data/galacticraft/recipe/iron_decoration_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:iron_decoration" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:iron_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/iron_decoration_wall_from_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/iron_decoration_wall_from_iron_decoration_stonecutting.json deleted file mode 100644 index 57a60ff43d..0000000000 --- a/src/main/generated/data/galacticraft/recipe/iron_decoration_wall_from_iron_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:iron_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:iron_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/iron_ingot_from_blasting_iron_shard.json b/src/main/generated/data/galacticraft/recipe/iron_ingot_from_blasting_iron_shard.json deleted file mode 100644 index ad172836a0..0000000000 --- a/src/main/generated/data/galacticraft/recipe/iron_ingot_from_blasting_iron_shard.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:blasting", - "category": "misc", - "cookingtime": 100, - "experience": 0.7, - "group": "iron_ingot", - "ingredient": { - "item": "galacticraft:iron_shard" - }, - "result": { - "id": "minecraft:iron_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/iron_ingot_from_smelting_iron_shard.json b/src/main/generated/data/galacticraft/recipe/iron_ingot_from_smelting_iron_shard.json deleted file mode 100644 index 0e8ca12979..0000000000 --- a/src/main/generated/data/galacticraft/recipe/iron_ingot_from_smelting_iron_shard.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.7, - "group": "iron_ingot", - "ingredient": { - "item": "galacticraft:iron_shard" - }, - "result": { - "id": "minecraft:iron_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/isothermal_fabric.json b/src/main/generated/data/galacticraft/recipe/isothermal_fabric.json deleted file mode 100644 index e1e0ef31d0..0000000000 --- a/src/main/generated/data/galacticraft/recipe/isothermal_fabric.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "D": { - "item": "galacticraft:desh_ingot" - }, - "T": { - "item": "galacticraft:thermal_cloth" - } - }, - "pattern": [ - "TDT" - ], - "result": { - "count": 1, - "id": "galacticraft:isothermal_fabric" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/large_oxygen_tank.json b/src/main/generated/data/galacticraft/recipe/large_oxygen_tank.json deleted file mode 100644 index afbac62a54..0000000000 --- a/src/main/generated/data/galacticraft/recipe/large_oxygen_tank.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "galacticraft:compressed_steel" - }, - "T": { - "item": "galacticraft:tin_canister" - }, - "W": { - "item": "minecraft:red_wool" - } - }, - "pattern": [ - "WWW", - "TTT", - "CCC" - ], - "result": { - "count": 1, - "id": "galacticraft:large_oxygen_tank" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/lead_block.json b/src/main/generated/data/galacticraft/recipe/lead_block.json deleted file mode 100644 index a679c27238..0000000000 --- a/src/main/generated/data/galacticraft/recipe/lead_block.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:lead_ingot" - } - }, - "pattern": [ - "###", - "###", - "###" - ], - "result": { - "count": 1, - "id": "galacticraft:lead_block" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/lead_ingot_from_blasting_galena_ore.json b/src/main/generated/data/galacticraft/recipe/lead_ingot_from_blasting_galena_ore.json deleted file mode 100644 index dc97199532..0000000000 --- a/src/main/generated/data/galacticraft/recipe/lead_ingot_from_blasting_galena_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:blasting", - "category": "misc", - "cookingtime": 100, - "experience": 0.7, - "group": "lead_ingot", - "ingredient": { - "item": "galacticraft:galena_ore" - }, - "result": { - "id": "galacticraft:lead_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/lead_ingot_from_blasting_raw_lead.json b/src/main/generated/data/galacticraft/recipe/lead_ingot_from_blasting_raw_lead.json deleted file mode 100644 index 28c9b662b3..0000000000 --- a/src/main/generated/data/galacticraft/recipe/lead_ingot_from_blasting_raw_lead.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:blasting", - "category": "misc", - "cookingtime": 100, - "experience": 0.7, - "group": "lead_ingot", - "ingredient": { - "item": "galacticraft:raw_lead" - }, - "result": { - "id": "galacticraft:lead_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/lead_ingot_from_block.json b/src/main/generated/data/galacticraft/recipe/lead_ingot_from_block.json deleted file mode 100644 index 26854d91ba..0000000000 --- a/src/main/generated/data/galacticraft/recipe/lead_ingot_from_block.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "group": "lead_ingot", - "ingredients": [ - { - "item": "galacticraft:lead_block" - } - ], - "result": { - "count": 9, - "id": "galacticraft:lead_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/lead_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/recipe/lead_ingot_from_nuggets.json deleted file mode 100644 index 7e51a437dc..0000000000 --- a/src/main/generated/data/galacticraft/recipe/lead_ingot_from_nuggets.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "group": "lead_ingot", - "key": { - "#": { - "item": "galacticraft:lead_nugget" - } - }, - "pattern": [ - "###", - "###", - "###" - ], - "result": { - "count": 1, - "id": "galacticraft:lead_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/lead_ingot_from_smelting_galena_ore.json b/src/main/generated/data/galacticraft/recipe/lead_ingot_from_smelting_galena_ore.json deleted file mode 100644 index 2ce563b96c..0000000000 --- a/src/main/generated/data/galacticraft/recipe/lead_ingot_from_smelting_galena_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.7, - "group": "lead_ingot", - "ingredient": { - "item": "galacticraft:galena_ore" - }, - "result": { - "id": "galacticraft:lead_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/lead_ingot_from_smelting_raw_lead.json b/src/main/generated/data/galacticraft/recipe/lead_ingot_from_smelting_raw_lead.json deleted file mode 100644 index c06853a3cf..0000000000 --- a/src/main/generated/data/galacticraft/recipe/lead_ingot_from_smelting_raw_lead.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.7, - "group": "lead_ingot", - "ingredient": { - "item": "galacticraft:raw_lead" - }, - "result": { - "id": "galacticraft:lead_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/lead_nugget.json b/src/main/generated/data/galacticraft/recipe/lead_nugget.json deleted file mode 100644 index 05c31fce8b..0000000000 --- a/src/main/generated/data/galacticraft/recipe/lead_nugget.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:lead_ingot" - } - ], - "result": { - "count": 9, - "id": "galacticraft:lead_nugget" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/light_blue_parachute.json b/src/main/generated/data/galacticraft/recipe/light_blue_parachute.json deleted file mode 100644 index 128be6a77e..0000000000 --- a/src/main/generated/data/galacticraft/recipe/light_blue_parachute.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:white_parachute" - }, - { - "item": "minecraft:light_blue_dye" - } - ], - "result": { - "count": 1, - "id": "galacticraft:light_blue_parachute" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/light_gray_parachute.json b/src/main/generated/data/galacticraft/recipe/light_gray_parachute.json deleted file mode 100644 index 01802f965d..0000000000 --- a/src/main/generated/data/galacticraft/recipe/light_gray_parachute.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:white_parachute" - }, - { - "item": "minecraft:light_gray_dye" - } - ], - "result": { - "count": 1, - "id": "galacticraft:light_gray_parachute" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/lime_parachute.json b/src/main/generated/data/galacticraft/recipe/lime_parachute.json deleted file mode 100644 index c9c9b98682..0000000000 --- a/src/main/generated/data/galacticraft/recipe/lime_parachute.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:white_parachute" - }, - { - "item": "minecraft:lime_dye" - } - ], - "result": { - "count": 1, - "id": "galacticraft:lime_parachute" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/linear_light_panel.json b/src/main/generated/data/galacticraft/recipe/linear_light_panel.json deleted file mode 100644 index 70726785ef..0000000000 --- a/src/main/generated/data/galacticraft/recipe/linear_light_panel.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "G": { - "item": "galacticraft:glowstone_torch" - }, - "S": { - "item": "minecraft:glass_pane" - }, - "T": { - "item": "galacticraft:compressed_steel" - } - }, - "pattern": [ - "S S", - "SGS", - "STS" - ], - "result": { - "count": 1, - "id": "galacticraft:linear_light_panel" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/lunar_sapphire_block.json b/src/main/generated/data/galacticraft/recipe/lunar_sapphire_block.json deleted file mode 100644 index b42b68f7f5..0000000000 --- a/src/main/generated/data/galacticraft/recipe/lunar_sapphire_block.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:lunar_sapphire" - } - }, - "pattern": [ - "###", - "###", - "###" - ], - "result": { - "count": 1, - "id": "galacticraft:lunar_sapphire_block" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/lunar_sapphire_from_block.json b/src/main/generated/data/galacticraft/recipe/lunar_sapphire_from_block.json deleted file mode 100644 index eda56816c6..0000000000 --- a/src/main/generated/data/galacticraft/recipe/lunar_sapphire_from_block.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "group": "lunar_sapphire", - "ingredients": [ - { - "item": "galacticraft:lunar_sapphire_block" - } - ], - "result": { - "count": 9, - "id": "galacticraft:lunar_sapphire" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/lunaslate_slab.json b/src/main/generated/data/galacticraft/recipe/lunaslate_slab.json deleted file mode 100644 index 46896359ed..0000000000 --- a/src/main/generated/data/galacticraft/recipe/lunaslate_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:lunaslate" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:lunaslate_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/lunaslate_slab_from_lunaslate_stonecutting.json b/src/main/generated/data/galacticraft/recipe/lunaslate_slab_from_lunaslate_stonecutting.json deleted file mode 100644 index 9025d9203b..0000000000 --- a/src/main/generated/data/galacticraft/recipe/lunaslate_slab_from_lunaslate_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:lunaslate" - }, - "result": { - "count": 2, - "id": "galacticraft:lunaslate_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/lunaslate_stairs.json b/src/main/generated/data/galacticraft/recipe/lunaslate_stairs.json deleted file mode 100644 index 034b2382d5..0000000000 --- a/src/main/generated/data/galacticraft/recipe/lunaslate_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:lunaslate" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:lunaslate_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/lunaslate_stairs_from_lunaslate_stonecutting.json b/src/main/generated/data/galacticraft/recipe/lunaslate_stairs_from_lunaslate_stonecutting.json deleted file mode 100644 index fa35f21e28..0000000000 --- a/src/main/generated/data/galacticraft/recipe/lunaslate_stairs_from_lunaslate_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:lunaslate" - }, - "result": { - "count": 1, - "id": "galacticraft:lunaslate_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/lunaslate_wall.json b/src/main/generated/data/galacticraft/recipe/lunaslate_wall.json deleted file mode 100644 index 3d261aaa32..0000000000 --- a/src/main/generated/data/galacticraft/recipe/lunaslate_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:lunaslate" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:lunaslate_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/lunaslate_wall_from_lunaslate_stonecutting.json b/src/main/generated/data/galacticraft/recipe/lunaslate_wall_from_lunaslate_stonecutting.json deleted file mode 100644 index 838de81801..0000000000 --- a/src/main/generated/data/galacticraft/recipe/lunaslate_wall_from_lunaslate_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:lunaslate" - }, - "result": { - "count": 1, - "id": "galacticraft:lunaslate_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/magenta_parachute.json b/src/main/generated/data/galacticraft/recipe/magenta_parachute.json deleted file mode 100644 index d634220c30..0000000000 --- a/src/main/generated/data/galacticraft/recipe/magenta_parachute.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:white_parachute" - }, - { - "item": "minecraft:magenta_dye" - } - ], - "result": { - "count": 1, - "id": "galacticraft:magenta_parachute" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/mars_cobblestone_slab.json b/src/main/generated/data/galacticraft/recipe/mars_cobblestone_slab.json deleted file mode 100644 index ccb8a44e95..0000000000 --- a/src/main/generated/data/galacticraft/recipe/mars_cobblestone_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:mars_cobblestone" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:mars_cobblestone_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/mars_cobblestone_slab_from_mars_cobblestone_stonecutting.json b/src/main/generated/data/galacticraft/recipe/mars_cobblestone_slab_from_mars_cobblestone_stonecutting.json deleted file mode 100644 index 91eb7cbb74..0000000000 --- a/src/main/generated/data/galacticraft/recipe/mars_cobblestone_slab_from_mars_cobblestone_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:mars_cobblestone" - }, - "result": { - "count": 2, - "id": "galacticraft:mars_cobblestone_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/mars_cobblestone_stairs.json b/src/main/generated/data/galacticraft/recipe/mars_cobblestone_stairs.json deleted file mode 100644 index adf98a2c50..0000000000 --- a/src/main/generated/data/galacticraft/recipe/mars_cobblestone_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:mars_cobblestone" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:mars_cobblestone_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/mars_cobblestone_stairs_from_mars_cobblestone_stonecutting.json b/src/main/generated/data/galacticraft/recipe/mars_cobblestone_stairs_from_mars_cobblestone_stonecutting.json deleted file mode 100644 index 460025316c..0000000000 --- a/src/main/generated/data/galacticraft/recipe/mars_cobblestone_stairs_from_mars_cobblestone_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:mars_cobblestone" - }, - "result": { - "count": 1, - "id": "galacticraft:mars_cobblestone_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/mars_cobblestone_wall.json b/src/main/generated/data/galacticraft/recipe/mars_cobblestone_wall.json deleted file mode 100644 index 5c95f4281a..0000000000 --- a/src/main/generated/data/galacticraft/recipe/mars_cobblestone_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:mars_cobblestone" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:mars_cobblestone_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/mars_cobblestone_wall_from_mars_cobblestone_stonecutting.json b/src/main/generated/data/galacticraft/recipe/mars_cobblestone_wall_from_mars_cobblestone_stonecutting.json deleted file mode 100644 index 7a1fad272d..0000000000 --- a/src/main/generated/data/galacticraft/recipe/mars_cobblestone_wall_from_mars_cobblestone_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:mars_cobblestone" - }, - "result": { - "count": 1, - "id": "galacticraft:mars_cobblestone_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/mars_stone_slab.json b/src/main/generated/data/galacticraft/recipe/mars_stone_slab.json deleted file mode 100644 index 78ac7faba8..0000000000 --- a/src/main/generated/data/galacticraft/recipe/mars_stone_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:mars_stone" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:mars_stone_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/mars_stone_slab_from_mars_stone_stonecutting.json b/src/main/generated/data/galacticraft/recipe/mars_stone_slab_from_mars_stone_stonecutting.json deleted file mode 100644 index 5b251d15ae..0000000000 --- a/src/main/generated/data/galacticraft/recipe/mars_stone_slab_from_mars_stone_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:mars_stone" - }, - "result": { - "count": 2, - "id": "galacticraft:mars_stone_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/mars_stone_stairs.json b/src/main/generated/data/galacticraft/recipe/mars_stone_stairs.json deleted file mode 100644 index 947e65d933..0000000000 --- a/src/main/generated/data/galacticraft/recipe/mars_stone_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:mars_stone" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:mars_stone_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/mars_stone_stairs_from_mars_stone_stonecutting.json b/src/main/generated/data/galacticraft/recipe/mars_stone_stairs_from_mars_stone_stonecutting.json deleted file mode 100644 index b08e3c5ce3..0000000000 --- a/src/main/generated/data/galacticraft/recipe/mars_stone_stairs_from_mars_stone_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:mars_stone" - }, - "result": { - "count": 1, - "id": "galacticraft:mars_stone_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/mars_stone_wall.json b/src/main/generated/data/galacticraft/recipe/mars_stone_wall.json deleted file mode 100644 index 11fd0db634..0000000000 --- a/src/main/generated/data/galacticraft/recipe/mars_stone_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:mars_stone" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:mars_stone_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/mars_stone_wall_from_mars_stone_stonecutting.json b/src/main/generated/data/galacticraft/recipe/mars_stone_wall_from_mars_stone_stonecutting.json deleted file mode 100644 index 5b63e76910..0000000000 --- a/src/main/generated/data/galacticraft/recipe/mars_stone_wall_from_mars_stone_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:mars_stone" - }, - "result": { - "count": 1, - "id": "galacticraft:mars_stone_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/medium_oxygen_tank.json b/src/main/generated/data/galacticraft/recipe/medium_oxygen_tank.json deleted file mode 100644 index f0f58d4812..0000000000 --- a/src/main/generated/data/galacticraft/recipe/medium_oxygen_tank.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "galacticraft:compressed_tin" - }, - "T": { - "item": "galacticraft:tin_canister" - }, - "W": { - "item": "minecraft:orange_wool" - } - }, - "pattern": [ - "WW", - "TT", - "CC" - ], - "result": { - "count": 1, - "id": "galacticraft:medium_oxygen_tank" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/meteoric_iron_block.json b/src/main/generated/data/galacticraft/recipe/meteoric_iron_block.json deleted file mode 100644 index 54338a550c..0000000000 --- a/src/main/generated/data/galacticraft/recipe/meteoric_iron_block.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:meteoric_iron_ingot" - } - }, - "pattern": [ - "###", - "###", - "###" - ], - "result": { - "count": 1, - "id": "galacticraft:meteoric_iron_block" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration.json b/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration.json deleted file mode 100644 index a4467fb2ab..0000000000 --- a/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:stone" - }, - "X": { - "item": "galacticraft:compressed_meteoric_iron" - } - }, - "pattern": [ - "## ", - "##X" - ], - "result": { - "count": 4, - "id": "galacticraft:meteoric_iron_decoration" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration_slab.json b/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration_slab.json deleted file mode 100644 index 0be7de11b5..0000000000 --- a/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:meteoric_iron_decoration" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:meteoric_iron_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration_slab_from_meteoric_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration_slab_from_meteoric_iron_decoration_stonecutting.json deleted file mode 100644 index 659f721b87..0000000000 --- a/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration_slab_from_meteoric_iron_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:meteoric_iron_decoration" - }, - "result": { - "count": 2, - "id": "galacticraft:meteoric_iron_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration_stairs.json b/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration_stairs.json deleted file mode 100644 index caef441532..0000000000 --- a/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:meteoric_iron_decoration" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:meteoric_iron_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration_stairs_from_meteoric_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration_stairs_from_meteoric_iron_decoration_stonecutting.json deleted file mode 100644 index 1fe1c6d77d..0000000000 --- a/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration_stairs_from_meteoric_iron_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:meteoric_iron_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:meteoric_iron_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration_wall.json b/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration_wall.json deleted file mode 100644 index 99cad5bfdc..0000000000 --- a/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:meteoric_iron_decoration" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:meteoric_iron_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration_wall_from_meteoric_iron_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration_wall_from_meteoric_iron_decoration_stonecutting.json deleted file mode 100644 index 6df5f53b66..0000000000 --- a/src/main/generated/data/galacticraft/recipe/meteoric_iron_decoration_wall_from_meteoric_iron_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:meteoric_iron_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:meteoric_iron_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/meteoric_iron_ingot_from_blasting_raw_meteoric_iron.json b/src/main/generated/data/galacticraft/recipe/meteoric_iron_ingot_from_blasting_raw_meteoric_iron.json deleted file mode 100644 index 61d531d882..0000000000 --- a/src/main/generated/data/galacticraft/recipe/meteoric_iron_ingot_from_blasting_raw_meteoric_iron.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:blasting", - "category": "misc", - "cookingtime": 100, - "experience": 0.7, - "group": "meteoric_iron_ingot", - "ingredient": { - "item": "galacticraft:raw_meteoric_iron" - }, - "result": { - "id": "galacticraft:meteoric_iron_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/meteoric_iron_ingot_from_block.json b/src/main/generated/data/galacticraft/recipe/meteoric_iron_ingot_from_block.json deleted file mode 100644 index 22d72b9c5c..0000000000 --- a/src/main/generated/data/galacticraft/recipe/meteoric_iron_ingot_from_block.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "group": "meteoric_iron_ingot", - "ingredients": [ - { - "item": "galacticraft:meteoric_iron_block" - } - ], - "result": { - "count": 9, - "id": "galacticraft:meteoric_iron_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/meteoric_iron_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/recipe/meteoric_iron_ingot_from_nuggets.json deleted file mode 100644 index b82c353df3..0000000000 --- a/src/main/generated/data/galacticraft/recipe/meteoric_iron_ingot_from_nuggets.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "group": "meteoric_iron_ingot", - "key": { - "#": { - "item": "galacticraft:meteoric_iron_nugget" - } - }, - "pattern": [ - "###", - "###", - "###" - ], - "result": { - "count": 1, - "id": "galacticraft:meteoric_iron_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/meteoric_iron_ingot_from_smelting_raw_meteoric_iron.json b/src/main/generated/data/galacticraft/recipe/meteoric_iron_ingot_from_smelting_raw_meteoric_iron.json deleted file mode 100644 index 8e82bf5835..0000000000 --- a/src/main/generated/data/galacticraft/recipe/meteoric_iron_ingot_from_smelting_raw_meteoric_iron.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.7, - "group": "meteoric_iron_ingot", - "ingredient": { - "item": "galacticraft:raw_meteoric_iron" - }, - "result": { - "id": "galacticraft:meteoric_iron_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/meteoric_iron_nugget.json b/src/main/generated/data/galacticraft/recipe/meteoric_iron_nugget.json deleted file mode 100644 index f83aa87dc2..0000000000 --- a/src/main/generated/data/galacticraft/recipe/meteoric_iron_nugget.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:meteoric_iron_ingot" - } - ], - "result": { - "count": 9, - "id": "galacticraft:meteoric_iron_nugget" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_basalt_brick_slab.json b/src/main/generated/data/galacticraft/recipe/moon_basalt_brick_slab.json deleted file mode 100644 index 15bf987fd8..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_basalt_brick_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:moon_basalt_brick" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:moon_basalt_brick_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_basalt_brick_slab_from_moon_basalt_brick_stonecutting.json b/src/main/generated/data/galacticraft/recipe/moon_basalt_brick_slab_from_moon_basalt_brick_stonecutting.json deleted file mode 100644 index 9645dc7254..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_basalt_brick_slab_from_moon_basalt_brick_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:moon_basalt_brick" - }, - "result": { - "count": 2, - "id": "galacticraft:moon_basalt_brick_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_basalt_brick_stairs.json b/src/main/generated/data/galacticraft/recipe/moon_basalt_brick_stairs.json deleted file mode 100644 index c6a57aa126..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_basalt_brick_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:moon_basalt_brick" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:moon_basalt_brick_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_basalt_brick_stairs_from_moon_basalt_brick_stonecutting.json b/src/main/generated/data/galacticraft/recipe/moon_basalt_brick_stairs_from_moon_basalt_brick_stonecutting.json deleted file mode 100644 index a7da2f81a7..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_basalt_brick_stairs_from_moon_basalt_brick_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:moon_basalt_brick" - }, - "result": { - "count": 1, - "id": "galacticraft:moon_basalt_brick_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_basalt_brick_wall.json b/src/main/generated/data/galacticraft/recipe/moon_basalt_brick_wall.json deleted file mode 100644 index 9d7bd3635d..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_basalt_brick_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:moon_basalt_brick" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:moon_basalt_brick_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_basalt_brick_wall_from_moon_basalt_brick_stonecutting.json b/src/main/generated/data/galacticraft/recipe/moon_basalt_brick_wall_from_moon_basalt_brick_stonecutting.json deleted file mode 100644 index 966e0a4943..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_basalt_brick_wall_from_moon_basalt_brick_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:moon_basalt_brick" - }, - "result": { - "count": 1, - "id": "galacticraft:moon_basalt_brick_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_basalt_slab.json b/src/main/generated/data/galacticraft/recipe/moon_basalt_slab.json deleted file mode 100644 index 1553e100f0..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_basalt_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:moon_basalt" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:moon_basalt_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_basalt_slab_from_moon_basalt_stonecutting.json b/src/main/generated/data/galacticraft/recipe/moon_basalt_slab_from_moon_basalt_stonecutting.json deleted file mode 100644 index bd6a560972..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_basalt_slab_from_moon_basalt_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:moon_basalt" - }, - "result": { - "count": 2, - "id": "galacticraft:moon_basalt_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_basalt_stairs.json b/src/main/generated/data/galacticraft/recipe/moon_basalt_stairs.json deleted file mode 100644 index dc877f1dc2..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_basalt_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:moon_basalt" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:moon_basalt_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_basalt_stairs_from_moon_basalt_stonecutting.json b/src/main/generated/data/galacticraft/recipe/moon_basalt_stairs_from_moon_basalt_stonecutting.json deleted file mode 100644 index 5c54b5b944..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_basalt_stairs_from_moon_basalt_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:moon_basalt" - }, - "result": { - "count": 1, - "id": "galacticraft:moon_basalt_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_basalt_wall.json b/src/main/generated/data/galacticraft/recipe/moon_basalt_wall.json deleted file mode 100644 index 810b6f01fe..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_basalt_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:moon_basalt" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:moon_basalt_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_basalt_wall_from_moon_basalt_stonecutting.json b/src/main/generated/data/galacticraft/recipe/moon_basalt_wall_from_moon_basalt_stonecutting.json deleted file mode 100644 index 29da8dba6f..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_basalt_wall_from_moon_basalt_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:moon_basalt" - }, - "result": { - "count": 1, - "id": "galacticraft:moon_basalt_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_cheese_block.json b/src/main/generated/data/galacticraft/recipe/moon_cheese_block.json deleted file mode 100644 index 7d5556a07a..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_cheese_block.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "galacticraft:cheese_curd" - }, - "M": { - "item": "minecraft:milk_bucket" - } - }, - "pattern": [ - "CCC", - "CMC", - "CCC" - ], - "result": { - "count": 1, - "id": "galacticraft:moon_cheese_block" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_rock.json b/src/main/generated/data/galacticraft/recipe/moon_rock.json deleted file mode 100644 index 90a77f1220..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_rock.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "blocks", - "cookingtime": 200, - "experience": 0.1, - "ingredient": { - "item": "galacticraft:cobbled_moon_rock" - }, - "result": { - "id": "galacticraft:moon_rock" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_rock_brick.json b/src/main/generated/data/galacticraft/recipe/moon_rock_brick.json deleted file mode 100644 index df41ba5969..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_rock_brick.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:moon_rock" - } - }, - "pattern": [ - "##", - "##" - ], - "result": { - "count": 4, - "id": "galacticraft:moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_rock_brick_from_moon_rock_stonecutting.json b/src/main/generated/data/galacticraft/recipe/moon_rock_brick_from_moon_rock_stonecutting.json deleted file mode 100644 index 4351dcff3f..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_rock_brick_from_moon_rock_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:moon_rock" - }, - "result": { - "count": 1, - "id": "galacticraft:moon_rock_brick" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_rock_brick_slab.json b/src/main/generated/data/galacticraft/recipe/moon_rock_brick_slab.json deleted file mode 100644 index f1699b5ad1..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_rock_brick_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:moon_rock_brick" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:moon_rock_brick_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_rock_brick_slab_from_moon_rock_brick_stonecutting.json b/src/main/generated/data/galacticraft/recipe/moon_rock_brick_slab_from_moon_rock_brick_stonecutting.json deleted file mode 100644 index 8e4b4c19eb..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_rock_brick_slab_from_moon_rock_brick_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:moon_rock_brick" - }, - "result": { - "count": 2, - "id": "galacticraft:moon_rock_brick_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_rock_brick_stairs.json b/src/main/generated/data/galacticraft/recipe/moon_rock_brick_stairs.json deleted file mode 100644 index 78973d139f..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_rock_brick_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:moon_rock_brick" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:moon_rock_brick_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_rock_brick_stairs_from_moon_rock_brick_stonecutting.json b/src/main/generated/data/galacticraft/recipe/moon_rock_brick_stairs_from_moon_rock_brick_stonecutting.json deleted file mode 100644 index 2b02f428f5..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_rock_brick_stairs_from_moon_rock_brick_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:moon_rock_brick" - }, - "result": { - "count": 1, - "id": "galacticraft:moon_rock_brick_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_rock_brick_wall.json b/src/main/generated/data/galacticraft/recipe/moon_rock_brick_wall.json deleted file mode 100644 index c87033e273..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_rock_brick_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:moon_rock_brick" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:moon_rock_brick_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_rock_brick_wall_from_moon_rock_brick_stonecutting.json b/src/main/generated/data/galacticraft/recipe/moon_rock_brick_wall_from_moon_rock_brick_stonecutting.json deleted file mode 100644 index 02a21e1d86..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_rock_brick_wall_from_moon_rock_brick_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:moon_rock_brick" - }, - "result": { - "count": 1, - "id": "galacticraft:moon_rock_brick_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_rock_pillar.json b/src/main/generated/data/galacticraft/recipe/moon_rock_pillar.json deleted file mode 100644 index 07fa880ebf..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_rock_pillar.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:moon_rock" - } - }, - "pattern": [ - "#", - "#" - ], - "result": { - "count": 2, - "id": "galacticraft:moon_rock_pillar" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_rock_slab.json b/src/main/generated/data/galacticraft/recipe/moon_rock_slab.json deleted file mode 100644 index 0d7733ea38..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_rock_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:moon_rock" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:moon_rock_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_rock_slab_from_moon_rock_stonecutting.json b/src/main/generated/data/galacticraft/recipe/moon_rock_slab_from_moon_rock_stonecutting.json deleted file mode 100644 index a9387a0246..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_rock_slab_from_moon_rock_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:moon_rock" - }, - "result": { - "count": 2, - "id": "galacticraft:moon_rock_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_rock_stairs.json b/src/main/generated/data/galacticraft/recipe/moon_rock_stairs.json deleted file mode 100644 index 5fe1a7a3ff..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_rock_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:moon_rock" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:moon_rock_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_rock_stairs_from_moon_rock_stonecutting.json b/src/main/generated/data/galacticraft/recipe/moon_rock_stairs_from_moon_rock_stonecutting.json deleted file mode 100644 index 04106c89bc..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_rock_stairs_from_moon_rock_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:moon_rock" - }, - "result": { - "count": 1, - "id": "galacticraft:moon_rock_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_rock_wall.json b/src/main/generated/data/galacticraft/recipe/moon_rock_wall.json deleted file mode 100644 index 42a13b8abf..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_rock_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:moon_rock" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:moon_rock_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/moon_rock_wall_from_moon_rock_stonecutting.json b/src/main/generated/data/galacticraft/recipe/moon_rock_wall_from_moon_rock_stonecutting.json deleted file mode 100644 index 791f623619..0000000000 --- a/src/main/generated/data/galacticraft/recipe/moon_rock_wall_from_moon_rock_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:moon_rock" - }, - "result": { - "count": 1, - "id": "galacticraft:moon_rock_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/nose_cone.json b/src/main/generated/data/galacticraft/recipe/nose_cone.json deleted file mode 100644 index 06413386aa..0000000000 --- a/src/main/generated/data/galacticraft/recipe/nose_cone.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "P": { - "item": "galacticraft:heavy_plating" - }, - "R": { - "item": "minecraft:redstone_torch" - } - }, - "pattern": [ - " R ", - " P ", - "P P" - ], - "result": { - "count": 1, - "id": "galacticraft:nose_cone" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/olivine_block_from_shards.json b/src/main/generated/data/galacticraft/recipe/olivine_block_from_shards.json deleted file mode 100644 index 9c1b567734..0000000000 --- a/src/main/generated/data/galacticraft/recipe/olivine_block_from_shards.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "#": { - "item": "galacticraft:olivine_shard" - } - }, - "pattern": [ - "##", - "##" - ], - "result": { - "count": 1, - "id": "galacticraft:olivine_block" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/orange_parachute.json b/src/main/generated/data/galacticraft/recipe/orange_parachute.json deleted file mode 100644 index 121f9a699f..0000000000 --- a/src/main/generated/data/galacticraft/recipe/orange_parachute.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:white_parachute" - }, - { - "item": "minecraft:orange_dye" - } - ], - "result": { - "count": 1, - "id": "galacticraft:orange_parachute" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/orion_drive.json b/src/main/generated/data/galacticraft/recipe/orion_drive.json deleted file mode 100644 index 17e9358984..0000000000 --- a/src/main/generated/data/galacticraft/recipe/orion_drive.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "B": { - "item": "galacticraft:beam_core" - }, - "C": { - "item": "minecraft:coal_ore" - }, - "D": { - "item": "minecraft:diamond_ore" - }, - "E": { - "item": "galacticraft:moon_cheese_block" - }, - "G": { - "item": "minecraft:gold_ore" - }, - "I": { - "item": "galacticraft:ilmenite_ore" - }, - "L": { - "item": "minecraft:lapis_ore" - }, - "R": { - "item": "minecraft:redstone_ore" - }, - "S": { - "item": "galacticraft:desh_ore" - } - }, - "pattern": [ - "DLG", - "RBC", - "ESI" - ], - "result": { - "count": 1, - "id": "galacticraft:orion_drive" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/oxygen_bubble_distributor.json b/src/main/generated/data/galacticraft/recipe/oxygen_bubble_distributor.json deleted file mode 100644 index 2924a60ff4..0000000000 --- a/src/main/generated/data/galacticraft/recipe/oxygen_bubble_distributor.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "galacticraft:compressed_aluminum" - }, - "F": { - "item": "galacticraft:oxygen_fan" - }, - "S": { - "item": "galacticraft:compressed_steel" - }, - "V": { - "item": "galacticraft:oxygen_vent" - } - }, - "pattern": [ - "SFS", - "VAV", - "SFS" - ], - "result": { - "count": 1, - "id": "galacticraft:oxygen_bubble_distributor" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/oxygen_collector.json b/src/main/generated/data/galacticraft/recipe/oxygen_collector.json deleted file mode 100644 index bc555ef206..0000000000 --- a/src/main/generated/data/galacticraft/recipe/oxygen_collector.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "galacticraft:compressed_aluminum" - }, - "C": { - "item": "galacticraft:oxygen_concentrator" - }, - "F": { - "item": "galacticraft:oxygen_fan" - }, - "S": { - "item": "galacticraft:compressed_steel" - }, - "T": { - "item": "galacticraft:tin_canister" - }, - "V": { - "item": "galacticraft:oxygen_vent" - } - }, - "pattern": [ - "SSS", - "FTV", - "ACA" - ], - "result": { - "count": 1, - "id": "galacticraft:oxygen_collector" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/oxygen_compressor.json b/src/main/generated/data/galacticraft/recipe/oxygen_compressor.json deleted file mode 100644 index 5f36851864..0000000000 --- a/src/main/generated/data/galacticraft/recipe/oxygen_compressor.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "galacticraft:compressed_aluminum" - }, - "B": { - "item": "galacticraft:compressed_bronze" - }, - "C": { - "item": "galacticraft:oxygen_concentrator" - }, - "S": { - "item": "galacticraft:compressed_steel" - } - }, - "pattern": [ - "SAS", - "ACA", - "SBS" - ], - "result": { - "count": 1, - "id": "galacticraft:oxygen_compressor" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/oxygen_concentrator.json b/src/main/generated/data/galacticraft/recipe/oxygen_concentrator.json deleted file mode 100644 index 6e00f89182..0000000000 --- a/src/main/generated/data/galacticraft/recipe/oxygen_concentrator.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "W": { - "tag": "c:plates/tin" - }, - "X": { - "item": "galacticraft:oxygen_vent" - }, - "Y": { - "item": "galacticraft:tin_canister" - }, - "Z": { - "tag": "c:plates/steel" - } - }, - "pattern": [ - "ZWZ", - "WYW", - "ZXZ" - ], - "result": { - "count": 1, - "id": "galacticraft:oxygen_concentrator" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/oxygen_decompressor.json b/src/main/generated/data/galacticraft/recipe/oxygen_decompressor.json deleted file mode 100644 index 0fd28927e8..0000000000 --- a/src/main/generated/data/galacticraft/recipe/oxygen_decompressor.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "galacticraft:compressed_aluminum" - }, - "C": { - "item": "galacticraft:oxygen_concentrator" - }, - "F": { - "item": "galacticraft:oxygen_fan" - }, - "R": { - "item": "minecraft:redstone_torch" - }, - "S": { - "item": "galacticraft:compressed_steel" - } - }, - "pattern": [ - "SFS", - "ACA", - "SRS" - ], - "result": { - "count": 1, - "id": "galacticraft:oxygen_decompressor" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/oxygen_fan.json b/src/main/generated/data/galacticraft/recipe/oxygen_fan.json deleted file mode 100644 index 8e2bde7d3f..0000000000 --- a/src/main/generated/data/galacticraft/recipe/oxygen_fan.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "R": { - "tag": "c:dusts/redstone" - }, - "S": { - "item": "galacticraft:compressed_steel" - }, - "W": { - "item": "galacticraft:basic_wafer" - } - }, - "pattern": [ - "S S", - " W ", - "SRS" - ], - "result": { - "count": 1, - "id": "galacticraft:oxygen_fan" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/oxygen_gear.json b/src/main/generated/data/galacticraft/recipe/oxygen_gear.json deleted file mode 100644 index fc6e53720a..0000000000 --- a/src/main/generated/data/galacticraft/recipe/oxygen_gear.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "X": { - "item": "galacticraft:oxygen_concentrator" - }, - "Y": { - "item": "galacticraft:glass_fluid_pipe" - } - }, - "pattern": [ - " Y ", - "YXY", - "Y Y" - ], - "result": { - "count": 1, - "id": "galacticraft:oxygen_gear" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/oxygen_mask.json b/src/main/generated/data/galacticraft/recipe/oxygen_mask.json deleted file mode 100644 index dd097aff35..0000000000 --- a/src/main/generated/data/galacticraft/recipe/oxygen_mask.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "G": { - "item": "minecraft:glass_pane" - }, - "H": { - "item": "minecraft:iron_helmet" - } - }, - "pattern": [ - "GGG", - "GHG", - "GGG" - ], - "result": { - "count": 1, - "id": "galacticraft:oxygen_mask" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/oxygen_sealer.json b/src/main/generated/data/galacticraft/recipe/oxygen_sealer.json deleted file mode 100644 index d681c82903..0000000000 --- a/src/main/generated/data/galacticraft/recipe/oxygen_sealer.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "galacticraft:compressed_aluminum" - }, - "F": { - "item": "galacticraft:oxygen_fan" - }, - "S": { - "item": "galacticraft:compressed_steel" - }, - "V": { - "item": "galacticraft:oxygen_vent" - } - }, - "pattern": [ - "ASA", - "VFV", - "ASA" - ], - "result": { - "count": 1, - "id": "galacticraft:oxygen_sealer" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/oxygen_storage_module.json b/src/main/generated/data/galacticraft/recipe/oxygen_storage_module.json deleted file mode 100644 index 7fbf8f5b92..0000000000 --- a/src/main/generated/data/galacticraft/recipe/oxygen_storage_module.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "S": { - "item": "galacticraft:compressed_steel" - }, - "T": { - "item": "galacticraft:large_oxygen_tank" - } - }, - "pattern": [ - "SSS", - "TTT", - "SSS" - ], - "result": { - "count": 1, - "id": "galacticraft:oxygen_storage_module" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/oxygen_vent.json b/src/main/generated/data/galacticraft/recipe/oxygen_vent.json deleted file mode 100644 index d30206adfa..0000000000 --- a/src/main/generated/data/galacticraft/recipe/oxygen_vent.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "S": { - "item": "galacticraft:compressed_steel" - }, - "T": { - "item": "galacticraft:compressed_tin" - } - }, - "pattern": [ - "TT", - "TS" - ], - "result": { - "count": 1, - "id": "galacticraft:oxygen_vent" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/pink_parachute.json b/src/main/generated/data/galacticraft/recipe/pink_parachute.json deleted file mode 100644 index d93433ac23..0000000000 --- a/src/main/generated/data/galacticraft/recipe/pink_parachute.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:white_parachute" - }, - { - "item": "minecraft:pink_dye" - } - ], - "result": { - "count": 1, - "id": "galacticraft:pink_parachute" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/polished_moon_rock.json b/src/main/generated/data/galacticraft/recipe/polished_moon_rock.json deleted file mode 100644 index 12927ec9df..0000000000 --- a/src/main/generated/data/galacticraft/recipe/polished_moon_rock.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:moon_rock_brick" - } - }, - "pattern": [ - "##", - "##" - ], - "result": { - "count": 4, - "id": "galacticraft:polished_moon_rock" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/polished_moon_rock_from_moon_rock_brick_stonecutting.json b/src/main/generated/data/galacticraft/recipe/polished_moon_rock_from_moon_rock_brick_stonecutting.json deleted file mode 100644 index 166793a868..0000000000 --- a/src/main/generated/data/galacticraft/recipe/polished_moon_rock_from_moon_rock_brick_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:moon_rock_brick" - }, - "result": { - "count": 1, - "id": "galacticraft:polished_moon_rock" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/polished_moon_rock_slab.json b/src/main/generated/data/galacticraft/recipe/polished_moon_rock_slab.json deleted file mode 100644 index 2f2306fa28..0000000000 --- a/src/main/generated/data/galacticraft/recipe/polished_moon_rock_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:polished_moon_rock" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:polished_moon_rock_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/polished_moon_rock_slab_from_polished_moon_rock_stonecutting.json b/src/main/generated/data/galacticraft/recipe/polished_moon_rock_slab_from_polished_moon_rock_stonecutting.json deleted file mode 100644 index e6e26d07d0..0000000000 --- a/src/main/generated/data/galacticraft/recipe/polished_moon_rock_slab_from_polished_moon_rock_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:polished_moon_rock" - }, - "result": { - "count": 2, - "id": "galacticraft:polished_moon_rock_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/polished_moon_rock_stairs.json b/src/main/generated/data/galacticraft/recipe/polished_moon_rock_stairs.json deleted file mode 100644 index b83676d227..0000000000 --- a/src/main/generated/data/galacticraft/recipe/polished_moon_rock_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:polished_moon_rock" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:polished_moon_rock_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/polished_moon_rock_stairs_from_polished_moon_rock_stonecutting.json b/src/main/generated/data/galacticraft/recipe/polished_moon_rock_stairs_from_polished_moon_rock_stonecutting.json deleted file mode 100644 index 5d7b4205b3..0000000000 --- a/src/main/generated/data/galacticraft/recipe/polished_moon_rock_stairs_from_polished_moon_rock_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:polished_moon_rock" - }, - "result": { - "count": 1, - "id": "galacticraft:polished_moon_rock_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/polished_moon_rock_wall.json b/src/main/generated/data/galacticraft/recipe/polished_moon_rock_wall.json deleted file mode 100644 index 04e62d0b67..0000000000 --- a/src/main/generated/data/galacticraft/recipe/polished_moon_rock_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:polished_moon_rock" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:polished_moon_rock_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/polished_moon_rock_wall_from_polished_moon_rock_stonecutting.json b/src/main/generated/data/galacticraft/recipe/polished_moon_rock_wall_from_polished_moon_rock_stonecutting.json deleted file mode 100644 index c32d9b4704..0000000000 --- a/src/main/generated/data/galacticraft/recipe/polished_moon_rock_wall_from_polished_moon_rock_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:polished_moon_rock" - }, - "result": { - "count": 1, - "id": "galacticraft:polished_moon_rock_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/purple_parachute.json b/src/main/generated/data/galacticraft/recipe/purple_parachute.json deleted file mode 100644 index 40c7616792..0000000000 --- a/src/main/generated/data/galacticraft/recipe/purple_parachute.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:white_parachute" - }, - { - "item": "minecraft:purple_dye" - } - ], - "result": { - "count": 1, - "id": "galacticraft:purple_parachute" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/red_parachute.json b/src/main/generated/data/galacticraft/recipe/red_parachute.json deleted file mode 100644 index 6746b31b5e..0000000000 --- a/src/main/generated/data/galacticraft/recipe/red_parachute.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:white_parachute" - }, - { - "item": "minecraft:red_dye" - } - ], - "result": { - "count": 1, - "id": "galacticraft:red_parachute" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/refinery.json b/src/main/generated/data/galacticraft/recipe/refinery.json deleted file mode 100644 index d05da1acb8..0000000000 --- a/src/main/generated/data/galacticraft/recipe/refinery.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "galacticraft:copper_canister" - }, - "F": { - "item": "minecraft:blast_furnace" - }, - "S": { - "item": "galacticraft:compressed_steel" - } - }, - "pattern": [ - "SCS", - "SCS", - "SFS" - ], - "result": { - "count": 1, - "id": "galacticraft:refinery" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/rocket_engine.json b/src/main/generated/data/galacticraft/recipe/rocket_engine.json deleted file mode 100644 index 003095556a..0000000000 --- a/src/main/generated/data/galacticraft/recipe/rocket_engine.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "B": { - "item": "minecraft:stone_button" - }, - "F": { - "item": "minecraft:flint_and_steel" - }, - "P": { - "item": "galacticraft:heavy_plating" - }, - "T": { - "item": "galacticraft:tin_canister" - }, - "V": { - "item": "galacticraft:oxygen_vent" - } - }, - "pattern": [ - " FB", - "PTP", - "PVP" - ], - "result": { - "count": 1, - "id": "galacticraft:rocket_engine" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/rocket_fin.json b/src/main/generated/data/galacticraft/recipe/rocket_fin.json deleted file mode 100644 index 538be82eb5..0000000000 --- a/src/main/generated/data/galacticraft/recipe/rocket_fin.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "P": { - "item": "galacticraft:heavy_plating" - }, - "S": { - "tag": "c:plates/steel" - } - }, - "pattern": [ - " S ", - "PSP", - "P P" - ], - "result": { - "count": 1, - "id": "galacticraft:rocket_fin" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/rocket_launch_pad.json b/src/main/generated/data/galacticraft/recipe/rocket_launch_pad.json deleted file mode 100644 index a76a77104d..0000000000 --- a/src/main/generated/data/galacticraft/recipe/rocket_launch_pad.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "galacticraft:compressed_iron" - }, - "I": { - "item": "minecraft:iron_block" - } - }, - "pattern": [ - "CCC", - "III" - ], - "result": { - "count": 9, - "id": "galacticraft:rocket_launch_pad" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/rocket_workbench.json b/src/main/generated/data/galacticraft/recipe/rocket_workbench.json deleted file mode 100644 index a13bcf4a7e..0000000000 --- a/src/main/generated/data/galacticraft/recipe/rocket_workbench.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:crafting_table" - }, - "L": { - "item": "minecraft:lever" - }, - "R": { - "item": "minecraft:redstone_torch" - }, - "S": { - "item": "galacticraft:compressed_steel" - }, - "W": { - "item": "galacticraft:advanced_wafer" - } - }, - "pattern": [ - "SCS", - "LWL", - "SRS" - ], - "result": { - "count": 1, - "id": "galacticraft:rocket_workbench" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/sealable_aluminum_wire.json b/src/main/generated/data/galacticraft/recipe/sealable_aluminum_wire.json deleted file mode 100644 index e0eb803943..0000000000 --- a/src/main/generated/data/galacticraft/recipe/sealable_aluminum_wire.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "T": { - "item": "galacticraft:tin_decoration" - }, - "W": { - "item": "galacticraft:aluminum_wire" - } - }, - "pattern": [ - "TWT" - ], - "result": { - "count": 6, - "id": "galacticraft:sealable_aluminum_wire" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/sensor_glasses.json b/src/main/generated/data/galacticraft/recipe/sensor_glasses.json deleted file mode 100644 index 4c2d9b2055..0000000000 --- a/src/main/generated/data/galacticraft/recipe/sensor_glasses.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "D": { - "tag": "c:gems/diamond" - }, - "L": { - "item": "galacticraft:sensor_lens" - }, - "M": { - "item": "galacticraft:meteoric_iron_ingot" - }, - "S": { - "item": "minecraft:string" - } - }, - "pattern": [ - "SDS", - "S S", - "LML" - ], - "result": { - "count": 1, - "id": "galacticraft:sensor_glasses" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/sensor_lens.json b/src/main/generated/data/galacticraft/recipe/sensor_lens.json deleted file mode 100644 index 55cce01507..0000000000 --- a/src/main/generated/data/galacticraft/recipe/sensor_lens.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "F": { - "item": "galacticraft:compressed_meteoric_iron" - }, - "P": { - "tag": "c:glass_panes" - }, - "R": { - "tag": "c:dusts/redstone" - } - }, - "pattern": [ - "RPR", - "PFP", - "RPR" - ], - "result": { - "count": 1, - "id": "galacticraft:sensor_lens" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/single_solar_module.json b/src/main/generated/data/galacticraft/recipe/single_solar_module.json deleted file mode 100644 index 118177f4d8..0000000000 --- a/src/main/generated/data/galacticraft/recipe/single_solar_module.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "G": { - "tag": "c:glass_blocks" - }, - "S": { - "item": "galacticraft:solar_array_wafer" - }, - "W": { - "item": "galacticraft:aluminum_wire" - } - }, - "pattern": [ - "GGG", - "SSS", - "WWW" - ], - "result": { - "count": 2, - "id": "galacticraft:single_solar_module" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/small_oxygen_tank.json b/src/main/generated/data/galacticraft/recipe/small_oxygen_tank.json deleted file mode 100644 index 8db1629485..0000000000 --- a/src/main/generated/data/galacticraft/recipe/small_oxygen_tank.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "galacticraft:compressed_copper" - }, - "T": { - "item": "galacticraft:tin_canister" - }, - "W": { - "item": "minecraft:lime_wool" - } - }, - "pattern": [ - "W", - "T", - "C" - ], - "result": { - "count": 1, - "id": "galacticraft:small_oxygen_tank" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/spotlight_light_panel.json b/src/main/generated/data/galacticraft/recipe/spotlight_light_panel.json deleted file mode 100644 index 587d6e1f6e..0000000000 --- a/src/main/generated/data/galacticraft/recipe/spotlight_light_panel.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "G": { - "item": "galacticraft:glowstone_torch" - }, - "S": { - "item": "minecraft:glass_pane" - }, - "T": { - "item": "galacticraft:compressed_steel" - } - }, - "pattern": [ - "S S", - " G ", - "STS" - ], - "result": { - "count": 1, - "id": "galacticraft:spotlight_light_panel" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/square_light_panel.json b/src/main/generated/data/galacticraft/recipe/square_light_panel.json deleted file mode 100644 index f4a5d05a78..0000000000 --- a/src/main/generated/data/galacticraft/recipe/square_light_panel.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "G": { - "item": "galacticraft:glowstone_torch" - }, - "S": { - "item": "minecraft:glass_pane" - }, - "T": { - "item": "galacticraft:compressed_steel" - } - }, - "pattern": [ - "SSS", - "SGS", - "STS" - ], - "result": { - "count": 1, - "id": "galacticraft:square_light_panel" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/standard_wrench.json b/src/main/generated/data/galacticraft/recipe/standard_wrench.json deleted file mode 100644 index 0b6120d280..0000000000 --- a/src/main/generated/data/galacticraft/recipe/standard_wrench.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "B": { - "item": "galacticraft:compressed_bronze" - }, - "S": { - "item": "galacticraft:compressed_steel" - } - }, - "pattern": [ - " S", - " B ", - "B " - ], - "result": { - "count": 1, - "id": "galacticraft:standard_wrench" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/steel_decoration.json b/src/main/generated/data/galacticraft/recipe/steel_decoration.json deleted file mode 100644 index 38af412a27..0000000000 --- a/src/main/generated/data/galacticraft/recipe/steel_decoration.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:stone" - }, - "X": { - "item": "galacticraft:compressed_steel" - } - }, - "pattern": [ - "## ", - "##X" - ], - "result": { - "count": 4, - "id": "galacticraft:steel_decoration" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/steel_decoration_slab.json b/src/main/generated/data/galacticraft/recipe/steel_decoration_slab.json deleted file mode 100644 index cc70db3b6d..0000000000 --- a/src/main/generated/data/galacticraft/recipe/steel_decoration_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:steel_decoration" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:steel_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/steel_decoration_slab_from_steel_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/steel_decoration_slab_from_steel_decoration_stonecutting.json deleted file mode 100644 index f75f813b0b..0000000000 --- a/src/main/generated/data/galacticraft/recipe/steel_decoration_slab_from_steel_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:steel_decoration" - }, - "result": { - "count": 2, - "id": "galacticraft:steel_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/steel_decoration_stairs.json b/src/main/generated/data/galacticraft/recipe/steel_decoration_stairs.json deleted file mode 100644 index 13e36f6622..0000000000 --- a/src/main/generated/data/galacticraft/recipe/steel_decoration_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:steel_decoration" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:steel_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/steel_decoration_stairs_from_steel_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/steel_decoration_stairs_from_steel_decoration_stonecutting.json deleted file mode 100644 index afd1c4fdd3..0000000000 --- a/src/main/generated/data/galacticraft/recipe/steel_decoration_stairs_from_steel_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:steel_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:steel_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/steel_decoration_wall.json b/src/main/generated/data/galacticraft/recipe/steel_decoration_wall.json deleted file mode 100644 index 94b9e0001f..0000000000 --- a/src/main/generated/data/galacticraft/recipe/steel_decoration_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:steel_decoration" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:steel_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/steel_decoration_wall_from_steel_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/steel_decoration_wall_from_steel_decoration_stonecutting.json deleted file mode 100644 index ad1444fc2a..0000000000 --- a/src/main/generated/data/galacticraft/recipe/steel_decoration_wall_from_steel_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:steel_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:steel_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/steel_pole.json b/src/main/generated/data/galacticraft/recipe/steel_pole.json deleted file mode 100644 index 9c6b18e126..0000000000 --- a/src/main/generated/data/galacticraft/recipe/steel_pole.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "I": { - "item": "galacticraft:compressed_steel" - } - }, - "pattern": [ - "I", - "I", - "I" - ], - "result": { - "count": 1, - "id": "galacticraft:steel_pole" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/thermal_cloth.json b/src/main/generated/data/galacticraft/recipe/thermal_cloth.json deleted file mode 100644 index 3884f5d17e..0000000000 --- a/src/main/generated/data/galacticraft/recipe/thermal_cloth.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "R": { - "tag": "c:dusts/redstone" - }, - "W": { - "tag": "minecraft:wool" - } - }, - "pattern": [ - " W ", - "WRW", - " W " - ], - "result": { - "count": 1, - "id": "galacticraft:thermal_cloth" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/thermal_padding_boots.json b/src/main/generated/data/galacticraft/recipe/thermal_padding_boots.json deleted file mode 100644 index 1798b735be..0000000000 --- a/src/main/generated/data/galacticraft/recipe/thermal_padding_boots.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "galacticraft:thermal_cloth" - } - }, - "pattern": [ - "C C", - "C C" - ], - "result": { - "count": 1, - "id": "galacticraft:thermal_padding_boots" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/thermal_padding_chestpiece.json b/src/main/generated/data/galacticraft/recipe/thermal_padding_chestpiece.json deleted file mode 100644 index d33f4544e0..0000000000 --- a/src/main/generated/data/galacticraft/recipe/thermal_padding_chestpiece.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "galacticraft:thermal_cloth" - } - }, - "pattern": [ - "C C", - "CCC", - "CCC" - ], - "result": { - "count": 1, - "id": "galacticraft:thermal_padding_chestpiece" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/thermal_padding_helmet.json b/src/main/generated/data/galacticraft/recipe/thermal_padding_helmet.json deleted file mode 100644 index 6881e5d8ba..0000000000 --- a/src/main/generated/data/galacticraft/recipe/thermal_padding_helmet.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "galacticraft:thermal_cloth" - } - }, - "pattern": [ - "CCC", - "C C" - ], - "result": { - "count": 1, - "id": "galacticraft:thermal_padding_helmet" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/thermal_padding_leggings.json b/src/main/generated/data/galacticraft/recipe/thermal_padding_leggings.json deleted file mode 100644 index 0edbe0fe6b..0000000000 --- a/src/main/generated/data/galacticraft/recipe/thermal_padding_leggings.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "galacticraft:thermal_cloth" - } - }, - "pattern": [ - "CCC", - "C C", - "C C" - ], - "result": { - "count": 1, - "id": "galacticraft:thermal_padding_leggings" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/throwable_meteor_chunk.json b/src/main/generated/data/galacticraft/recipe/throwable_meteor_chunk.json deleted file mode 100644 index a81710e1a6..0000000000 --- a/src/main/generated/data/galacticraft/recipe/throwable_meteor_chunk.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "equipment", - "ingredients": [ - { - "item": "galacticraft:raw_meteoric_iron" - } - ], - "result": { - "count": 3, - "id": "galacticraft:throwable_meteor_chunk" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/tin_canister.json b/src/main/generated/data/galacticraft/recipe/tin_canister.json deleted file mode 100644 index 7eb5acccc8..0000000000 --- a/src/main/generated/data/galacticraft/recipe/tin_canister.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "X": { - "tag": "c:ingots/tin" - } - }, - "pattern": [ - "X X", - "X X", - "XXX" - ], - "result": { - "count": 2, - "id": "galacticraft:tin_canister" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/tin_decoration.json b/src/main/generated/data/galacticraft/recipe/tin_decoration.json deleted file mode 100644 index 9aef63d4fd..0000000000 --- a/src/main/generated/data/galacticraft/recipe/tin_decoration.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:stone" - }, - "X": { - "item": "galacticraft:compressed_tin" - } - }, - "pattern": [ - "## ", - "##X" - ], - "result": { - "count": 4, - "id": "galacticraft:tin_decoration" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/tin_decoration_slab.json b/src/main/generated/data/galacticraft/recipe/tin_decoration_slab.json deleted file mode 100644 index 034d136957..0000000000 --- a/src/main/generated/data/galacticraft/recipe/tin_decoration_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:tin_decoration" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:tin_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/tin_decoration_slab_from_tin_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/tin_decoration_slab_from_tin_decoration_stonecutting.json deleted file mode 100644 index 256448fbb2..0000000000 --- a/src/main/generated/data/galacticraft/recipe/tin_decoration_slab_from_tin_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:tin_decoration" - }, - "result": { - "count": 2, - "id": "galacticraft:tin_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/tin_decoration_stairs.json b/src/main/generated/data/galacticraft/recipe/tin_decoration_stairs.json deleted file mode 100644 index 97a7fb39c1..0000000000 --- a/src/main/generated/data/galacticraft/recipe/tin_decoration_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:tin_decoration" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:tin_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/tin_decoration_stairs_from_tin_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/tin_decoration_stairs_from_tin_decoration_stonecutting.json deleted file mode 100644 index 0847675f47..0000000000 --- a/src/main/generated/data/galacticraft/recipe/tin_decoration_stairs_from_tin_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:tin_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:tin_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/tin_decoration_wall.json b/src/main/generated/data/galacticraft/recipe/tin_decoration_wall.json deleted file mode 100644 index 73148536ef..0000000000 --- a/src/main/generated/data/galacticraft/recipe/tin_decoration_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:tin_decoration" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:tin_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/tin_decoration_wall_from_tin_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/tin_decoration_wall_from_tin_decoration_stonecutting.json deleted file mode 100644 index 94079b06f3..0000000000 --- a/src/main/generated/data/galacticraft/recipe/tin_decoration_wall_from_tin_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:tin_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:tin_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/tin_ingot_from_blasting_deepslate_tin_ore.json b/src/main/generated/data/galacticraft/recipe/tin_ingot_from_blasting_deepslate_tin_ore.json deleted file mode 100644 index 217ac69d99..0000000000 --- a/src/main/generated/data/galacticraft/recipe/tin_ingot_from_blasting_deepslate_tin_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:blasting", - "category": "misc", - "cookingtime": 100, - "experience": 0.7, - "group": "tin_ingot", - "ingredient": { - "item": "galacticraft:deepslate_tin_ore" - }, - "result": { - "id": "galacticraft:tin_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/tin_ingot_from_blasting_moon_tin_ore.json b/src/main/generated/data/galacticraft/recipe/tin_ingot_from_blasting_moon_tin_ore.json deleted file mode 100644 index d987bfb9eb..0000000000 --- a/src/main/generated/data/galacticraft/recipe/tin_ingot_from_blasting_moon_tin_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:blasting", - "category": "misc", - "cookingtime": 100, - "experience": 0.7, - "group": "tin_ingot", - "ingredient": { - "item": "galacticraft:moon_tin_ore" - }, - "result": { - "id": "galacticraft:tin_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/tin_ingot_from_blasting_raw_tin.json b/src/main/generated/data/galacticraft/recipe/tin_ingot_from_blasting_raw_tin.json deleted file mode 100644 index 41eec5dc7a..0000000000 --- a/src/main/generated/data/galacticraft/recipe/tin_ingot_from_blasting_raw_tin.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:blasting", - "category": "misc", - "cookingtime": 100, - "experience": 0.7, - "group": "tin_ingot", - "ingredient": { - "item": "galacticraft:raw_tin" - }, - "result": { - "id": "galacticraft:tin_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/tin_ingot_from_blasting_tin_ore.json b/src/main/generated/data/galacticraft/recipe/tin_ingot_from_blasting_tin_ore.json deleted file mode 100644 index 2b52f3a7c7..0000000000 --- a/src/main/generated/data/galacticraft/recipe/tin_ingot_from_blasting_tin_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:blasting", - "category": "misc", - "cookingtime": 100, - "experience": 0.7, - "group": "tin_ingot", - "ingredient": { - "item": "galacticraft:tin_ore" - }, - "result": { - "id": "galacticraft:tin_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/tin_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/recipe/tin_ingot_from_nuggets.json deleted file mode 100644 index c43957ae4d..0000000000 --- a/src/main/generated/data/galacticraft/recipe/tin_ingot_from_nuggets.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "group": "tin_ingot", - "key": { - "#": { - "item": "galacticraft:tin_nugget" - } - }, - "pattern": [ - "###", - "###", - "###" - ], - "result": { - "count": 1, - "id": "galacticraft:tin_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/tin_ingot_from_smelting_deepslate_tin_ore.json b/src/main/generated/data/galacticraft/recipe/tin_ingot_from_smelting_deepslate_tin_ore.json deleted file mode 100644 index 0a7efa8e65..0000000000 --- a/src/main/generated/data/galacticraft/recipe/tin_ingot_from_smelting_deepslate_tin_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.7, - "group": "tin_ingot", - "ingredient": { - "item": "galacticraft:deepslate_tin_ore" - }, - "result": { - "id": "galacticraft:tin_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/tin_ingot_from_smelting_moon_tin_ore.json b/src/main/generated/data/galacticraft/recipe/tin_ingot_from_smelting_moon_tin_ore.json deleted file mode 100644 index b908569ee4..0000000000 --- a/src/main/generated/data/galacticraft/recipe/tin_ingot_from_smelting_moon_tin_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.7, - "group": "tin_ingot", - "ingredient": { - "item": "galacticraft:moon_tin_ore" - }, - "result": { - "id": "galacticraft:tin_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/tin_ingot_from_smelting_raw_tin.json b/src/main/generated/data/galacticraft/recipe/tin_ingot_from_smelting_raw_tin.json deleted file mode 100644 index 75a07bd18c..0000000000 --- a/src/main/generated/data/galacticraft/recipe/tin_ingot_from_smelting_raw_tin.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.7, - "group": "tin_ingot", - "ingredient": { - "item": "galacticraft:raw_tin" - }, - "result": { - "id": "galacticraft:tin_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/tin_ingot_from_smelting_tin_ore.json b/src/main/generated/data/galacticraft/recipe/tin_ingot_from_smelting_tin_ore.json deleted file mode 100644 index 36d82c4a22..0000000000 --- a/src/main/generated/data/galacticraft/recipe/tin_ingot_from_smelting_tin_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.7, - "group": "tin_ingot", - "ingredient": { - "item": "galacticraft:tin_ore" - }, - "result": { - "id": "galacticraft:tin_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/tin_ladder.json b/src/main/generated/data/galacticraft/recipe/tin_ladder.json deleted file mode 100644 index e4abb023e5..0000000000 --- a/src/main/generated/data/galacticraft/recipe/tin_ladder.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "T": { - "item": "galacticraft:tin_ingot" - } - }, - "pattern": [ - "T T", - "TTT", - "T T" - ], - "result": { - "count": 6, - "id": "galacticraft:tin_ladder" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/tin_nugget.json b/src/main/generated/data/galacticraft/recipe/tin_nugget.json deleted file mode 100644 index d268b692e0..0000000000 --- a/src/main/generated/data/galacticraft/recipe/tin_nugget.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:tin_ingot" - } - ], - "result": { - "count": 9, - "id": "galacticraft:tin_nugget" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_axe_smithing.json b/src/main/generated/data/galacticraft/recipe/titanium_axe_smithing.json deleted file mode 100644 index c95c042a8a..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_axe_smithing.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "galacticraft:compressed_titanium" - }, - "base": { - "item": "galacticraft:desh_axe" - }, - "result": { - "count": 1, - "id": "galacticraft:titanium_axe" - }, - "template": { - "item": "galacticraft:titanium_upgrade_smithing_template" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_block.json b/src/main/generated/data/galacticraft/recipe/titanium_block.json deleted file mode 100644 index 53348318fe..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_block.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:titanium_ingot" - } - }, - "pattern": [ - "###", - "###", - "###" - ], - "result": { - "count": 1, - "id": "galacticraft:titanium_block" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_boots_smithing.json b/src/main/generated/data/galacticraft/recipe/titanium_boots_smithing.json deleted file mode 100644 index bf562c51d8..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_boots_smithing.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "galacticraft:compressed_titanium" - }, - "base": { - "item": "galacticraft:desh_boots" - }, - "result": { - "count": 1, - "id": "galacticraft:titanium_boots" - }, - "template": { - "item": "galacticraft:titanium_upgrade_smithing_template" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_chestplate_smithing.json b/src/main/generated/data/galacticraft/recipe/titanium_chestplate_smithing.json deleted file mode 100644 index 5ebd6ad650..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_chestplate_smithing.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "galacticraft:compressed_titanium" - }, - "base": { - "item": "galacticraft:desh_chestplate" - }, - "result": { - "count": 1, - "id": "galacticraft:titanium_chestplate" - }, - "template": { - "item": "galacticraft:titanium_upgrade_smithing_template" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_decoration.json b/src/main/generated/data/galacticraft/recipe/titanium_decoration.json deleted file mode 100644 index c2f1e0dd60..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_decoration.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:stone" - }, - "X": { - "item": "galacticraft:compressed_titanium" - } - }, - "pattern": [ - "## ", - "##X" - ], - "result": { - "count": 4, - "id": "galacticraft:titanium_decoration" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_decoration_slab.json b/src/main/generated/data/galacticraft/recipe/titanium_decoration_slab.json deleted file mode 100644 index 8676042444..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_decoration_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:titanium_decoration" - } - }, - "pattern": [ - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:titanium_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_decoration_slab_from_titanium_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/titanium_decoration_slab_from_titanium_decoration_stonecutting.json deleted file mode 100644 index dc88ed1549..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_decoration_slab_from_titanium_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:titanium_decoration" - }, - "result": { - "count": 2, - "id": "galacticraft:titanium_decoration_slab" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_decoration_stairs.json b/src/main/generated/data/galacticraft/recipe/titanium_decoration_stairs.json deleted file mode 100644 index 8377d9ffd6..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_decoration_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:titanium_decoration" - } - }, - "pattern": [ - "# ", - "## ", - "###" - ], - "result": { - "count": 4, - "id": "galacticraft:titanium_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_decoration_stairs_from_titanium_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/titanium_decoration_stairs_from_titanium_decoration_stonecutting.json deleted file mode 100644 index 208c1fc804..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_decoration_stairs_from_titanium_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:titanium_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:titanium_decoration_stairs" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_decoration_wall.json b/src/main/generated/data/galacticraft/recipe/titanium_decoration_wall.json deleted file mode 100644 index 8961acd1dc..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_decoration_wall.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "galacticraft:titanium_decoration" - } - }, - "pattern": [ - "###", - "###" - ], - "result": { - "count": 6, - "id": "galacticraft:titanium_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_decoration_wall_from_titanium_decoration_stonecutting.json b/src/main/generated/data/galacticraft/recipe/titanium_decoration_wall_from_titanium_decoration_stonecutting.json deleted file mode 100644 index 6caeeb2e2e..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_decoration_wall_from_titanium_decoration_stonecutting.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "galacticraft:titanium_decoration" - }, - "result": { - "count": 1, - "id": "galacticraft:titanium_decoration_wall" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_helmet_smithing.json b/src/main/generated/data/galacticraft/recipe/titanium_helmet_smithing.json deleted file mode 100644 index e0dfc6cf85..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_helmet_smithing.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "galacticraft:compressed_titanium" - }, - "base": { - "item": "galacticraft:desh_helmet" - }, - "result": { - "count": 1, - "id": "galacticraft:titanium_helmet" - }, - "template": { - "item": "galacticraft:titanium_upgrade_smithing_template" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_hoe_smithing.json b/src/main/generated/data/galacticraft/recipe/titanium_hoe_smithing.json deleted file mode 100644 index a94ac20d90..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_hoe_smithing.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "galacticraft:compressed_titanium" - }, - "base": { - "item": "galacticraft:desh_hoe" - }, - "result": { - "count": 1, - "id": "galacticraft:titanium_hoe" - }, - "template": { - "item": "galacticraft:titanium_upgrade_smithing_template" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_ingot_from_blasting_ilmenite_ore.json b/src/main/generated/data/galacticraft/recipe/titanium_ingot_from_blasting_ilmenite_ore.json deleted file mode 100644 index daec66d9cd..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_ingot_from_blasting_ilmenite_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:blasting", - "category": "misc", - "cookingtime": 100, - "experience": 0.7, - "group": "titanium_ingot", - "ingredient": { - "item": "galacticraft:ilmenite_ore" - }, - "result": { - "id": "galacticraft:titanium_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_ingot_from_blasting_raw_titanium.json b/src/main/generated/data/galacticraft/recipe/titanium_ingot_from_blasting_raw_titanium.json deleted file mode 100644 index e27524e713..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_ingot_from_blasting_raw_titanium.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:blasting", - "category": "misc", - "cookingtime": 100, - "experience": 0.7, - "group": "titanium_ingot", - "ingredient": { - "item": "galacticraft:raw_titanium" - }, - "result": { - "id": "galacticraft:titanium_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_ingot_from_block.json b/src/main/generated/data/galacticraft/recipe/titanium_ingot_from_block.json deleted file mode 100644 index 51421b3d46..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_ingot_from_block.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "group": "titanium_ingot", - "ingredients": [ - { - "item": "galacticraft:titanium_block" - } - ], - "result": { - "count": 9, - "id": "galacticraft:titanium_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/recipe/titanium_ingot_from_nuggets.json deleted file mode 100644 index 23de2068ca..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_ingot_from_nuggets.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "group": "titanium_ingot", - "key": { - "#": { - "item": "galacticraft:titanium_nugget" - } - }, - "pattern": [ - "###", - "###", - "###" - ], - "result": { - "count": 1, - "id": "galacticraft:titanium_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_ingot_from_smelting_ilmenite_ore.json b/src/main/generated/data/galacticraft/recipe/titanium_ingot_from_smelting_ilmenite_ore.json deleted file mode 100644 index f3b1e0a6cd..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_ingot_from_smelting_ilmenite_ore.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.7, - "group": "titanium_ingot", - "ingredient": { - "item": "galacticraft:ilmenite_ore" - }, - "result": { - "id": "galacticraft:titanium_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_ingot_from_smelting_raw_titanium.json b/src/main/generated/data/galacticraft/recipe/titanium_ingot_from_smelting_raw_titanium.json deleted file mode 100644 index cb6d37df1e..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_ingot_from_smelting_raw_titanium.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.7, - "group": "titanium_ingot", - "ingredient": { - "item": "galacticraft:raw_titanium" - }, - "result": { - "id": "galacticraft:titanium_ingot" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_leggings_smithing.json b/src/main/generated/data/galacticraft/recipe/titanium_leggings_smithing.json deleted file mode 100644 index dfbdb92a98..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_leggings_smithing.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "galacticraft:compressed_titanium" - }, - "base": { - "item": "galacticraft:desh_leggings" - }, - "result": { - "count": 1, - "id": "galacticraft:titanium_leggings" - }, - "template": { - "item": "galacticraft:titanium_upgrade_smithing_template" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_nugget.json b/src/main/generated/data/galacticraft/recipe/titanium_nugget.json deleted file mode 100644 index 0552cb54c7..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_nugget.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:titanium_ingot" - } - ], - "result": { - "count": 9, - "id": "galacticraft:titanium_nugget" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_pickaxe_smithing.json b/src/main/generated/data/galacticraft/recipe/titanium_pickaxe_smithing.json deleted file mode 100644 index aa913b90f3..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_pickaxe_smithing.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "galacticraft:compressed_titanium" - }, - "base": { - "item": "galacticraft:desh_pickaxe" - }, - "result": { - "count": 1, - "id": "galacticraft:titanium_pickaxe" - }, - "template": { - "item": "galacticraft:titanium_upgrade_smithing_template" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_shovel_smithing.json b/src/main/generated/data/galacticraft/recipe/titanium_shovel_smithing.json deleted file mode 100644 index 4893343ff0..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_shovel_smithing.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "galacticraft:compressed_titanium" - }, - "base": { - "item": "galacticraft:desh_shovel" - }, - "result": { - "count": 1, - "id": "galacticraft:titanium_shovel" - }, - "template": { - "item": "galacticraft:titanium_upgrade_smithing_template" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/titanium_sword_smithing.json b/src/main/generated/data/galacticraft/recipe/titanium_sword_smithing.json deleted file mode 100644 index ac4b76990d..0000000000 --- a/src/main/generated/data/galacticraft/recipe/titanium_sword_smithing.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "galacticraft:compressed_titanium" - }, - "base": { - "item": "galacticraft:desh_sword" - }, - "result": { - "count": 1, - "id": "galacticraft:titanium_sword" - }, - "template": { - "item": "galacticraft:titanium_upgrade_smithing_template" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/vacuum_glass.json b/src/main/generated/data/galacticraft/recipe/vacuum_glass.json deleted file mode 100644 index df121a57e6..0000000000 --- a/src/main/generated/data/galacticraft/recipe/vacuum_glass.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "G": { - "item": "minecraft:glass" - }, - "T": { - "item": "galacticraft:tin_ingot" - } - }, - "pattern": [ - "TGT", - "GGG", - "TGT" - ], - "result": { - "count": 1, - "id": "galacticraft:vacuum_glass" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/vacuum_glass_clear.json b/src/main/generated/data/galacticraft/recipe/vacuum_glass_clear.json deleted file mode 100644 index 10bdd9f06b..0000000000 --- a/src/main/generated/data/galacticraft/recipe/vacuum_glass_clear.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "galacticraft:aluminum_ingot" - }, - "G": { - "item": "minecraft:glass" - } - }, - "pattern": [ - "AGA", - "GGG", - "AGA" - ], - "result": { - "count": 1, - "id": "galacticraft:vacuum_glass_clear" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/vacuum_glass_strong.json b/src/main/generated/data/galacticraft/recipe/vacuum_glass_strong.json deleted file mode 100644 index 5f98eab9a4..0000000000 --- a/src/main/generated/data/galacticraft/recipe/vacuum_glass_strong.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "galacticraft:compressed_aluminum" - }, - "G": { - "item": "minecraft:glass" - } - }, - "pattern": [ - "AGA", - "GGG", - "AGA" - ], - "result": { - "count": 1, - "id": "galacticraft:vacuum_glass_strong" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/walkway.json b/src/main/generated/data/galacticraft/recipe/walkway.json deleted file mode 100644 index c5164c2ad7..0000000000 --- a/src/main/generated/data/galacticraft/recipe/walkway.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "T": { - "item": "galacticraft:compressed_titanium" - } - }, - "pattern": [ - "TTT", - " T " - ], - "result": { - "count": 5, - "id": "galacticraft:walkway" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/white_parachute.json b/src/main/generated/data/galacticraft/recipe/white_parachute.json deleted file mode 100644 index 31e77deb6f..0000000000 --- a/src/main/generated/data/galacticraft/recipe/white_parachute.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "galacticraft:canvas" - }, - "S": { - "item": "minecraft:string" - } - }, - "pattern": [ - "CCC", - "S S", - " S " - ], - "result": { - "count": 1, - "id": "galacticraft:white_parachute" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/wire_walkway.json b/src/main/generated/data/galacticraft/recipe/wire_walkway.json deleted file mode 100644 index 9fbae4b170..0000000000 --- a/src/main/generated/data/galacticraft/recipe/wire_walkway.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "T": { - "item": "galacticraft:compressed_titanium" - }, - "W": { - "item": "galacticraft:aluminum_wire" - } - }, - "pattern": [ - "TTT", - "WTW", - "WWW" - ], - "result": { - "count": 5, - "id": "galacticraft:wire_walkway" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/wire_walkway_shapeless.json b/src/main/generated/data/galacticraft/recipe/wire_walkway_shapeless.json deleted file mode 100644 index cb131b92f0..0000000000 --- a/src/main/generated/data/galacticraft/recipe/wire_walkway_shapeless.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:compressed_titanium" - }, - { - "item": "galacticraft:aluminum_wire" - } - ], - "result": { - "count": 1, - "id": "galacticraft:wire_walkway" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/yellow_parachute.json b/src/main/generated/data/galacticraft/recipe/yellow_parachute.json deleted file mode 100644 index 3057213faa..0000000000 --- a/src/main/generated/data/galacticraft/recipe/yellow_parachute.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "galacticraft:white_parachute" - }, - { - "item": "minecraft:yellow_dye" - } - ], - "result": { - "count": 1, - "id": "galacticraft:yellow_parachute" - } -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/advanced_solar_panel.json b/src/main/generated/data/galacticraft/recipes/advanced_solar_panel.json new file mode 100644 index 0000000000..a2531f6c04 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/advanced_solar_panel.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "galacticraft:advanced_wafer" + }, + "F": { + "item": "galacticraft:full_solar_panel" + }, + "P": { + "item": "galacticraft:steel_pole" + }, + "S": { + "item": "galacticraft:compressed_steel" + }, + "W": { + "item": "galacticraft:heavy_sealable_aluminum_wire" + } + }, + "pattern": [ + "SFS", + "SPS", + "WAW" + ], + "result": { + "item": "galacticraft:advanced_solar_panel" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/aluminum_decoration.json b/src/main/generated/data/galacticraft/recipes/aluminum_decoration.json new file mode 100644 index 0000000000..cc71ca3502 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/aluminum_decoration.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:stone" + }, + "X": { + "item": "galacticraft:compressed_aluminum" + } + }, + "pattern": [ + "## ", + "##X" + ], + "result": { + "item": "galacticraft:aluminum_decoration" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/aluminum_decoration_slab.json b/src/main/generated/data/galacticraft/recipes/aluminum_decoration_slab.json new file mode 100644 index 0000000000..e90cd51ba7 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/aluminum_decoration_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:aluminum_decoration" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:aluminum_decoration_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/aluminum_decoration_stairs.json b/src/main/generated/data/galacticraft/recipes/aluminum_decoration_stairs.json new file mode 100644 index 0000000000..c1f95b667d --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/aluminum_decoration_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:aluminum_decoration" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:aluminum_decoration_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/aluminum_decoration_wall.json b/src/main/generated/data/galacticraft/recipes/aluminum_decoration_wall.json new file mode 100644 index 0000000000..14e8f3bd94 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/aluminum_decoration_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:aluminum_decoration" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:aluminum_decoration_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_blasting_aluminum_ore.json b/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_blasting_aluminum_ore.json new file mode 100644 index 0000000000..2542ed3609 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_blasting_aluminum_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:blasting", + "category": "misc", + "cookingtime": 100, + "experience": 0.7, + "group": "aluminum_ingot", + "ingredient": { + "item": "galacticraft:aluminum_ore" + }, + "result": "galacticraft:aluminum_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_blasting_deepslate_aluminum_ore.json b/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_blasting_deepslate_aluminum_ore.json new file mode 100644 index 0000000000..95865216a1 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_blasting_deepslate_aluminum_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:blasting", + "category": "misc", + "cookingtime": 100, + "experience": 0.7, + "group": "aluminum_ingot", + "ingredient": { + "item": "galacticraft:deepslate_aluminum_ore" + }, + "result": "galacticraft:aluminum_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_blasting_raw_aluminum.json b/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_blasting_raw_aluminum.json new file mode 100644 index 0000000000..206dd44a4d --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_blasting_raw_aluminum.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:blasting", + "category": "misc", + "cookingtime": 100, + "experience": 0.7, + "group": "aluminum_ingot", + "ingredient": { + "item": "galacticraft:raw_aluminum" + }, + "result": "galacticraft:aluminum_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_nuggets.json new file mode 100644 index 0000000000..6a093f01f7 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_nuggets.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "group": "aluminum_ingot", + "key": { + "#": { + "item": "galacticraft:aluminum_nugget" + } + }, + "pattern": [ + "###", + "###", + "###" + ], + "result": { + "item": "galacticraft:aluminum_ingot" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_smelting_aluminum_ore.json b/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_smelting_aluminum_ore.json new file mode 100644 index 0000000000..dee62a4395 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_smelting_aluminum_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:smelting", + "category": "misc", + "cookingtime": 200, + "experience": 0.7, + "group": "aluminum_ingot", + "ingredient": { + "item": "galacticraft:aluminum_ore" + }, + "result": "galacticraft:aluminum_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_smelting_deepslate_aluminum_ore.json b/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_smelting_deepslate_aluminum_ore.json new file mode 100644 index 0000000000..e4fd27e6bf --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_smelting_deepslate_aluminum_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:smelting", + "category": "misc", + "cookingtime": 200, + "experience": 0.7, + "group": "aluminum_ingot", + "ingredient": { + "item": "galacticraft:deepslate_aluminum_ore" + }, + "result": "galacticraft:aluminum_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_smelting_raw_aluminum.json b/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_smelting_raw_aluminum.json new file mode 100644 index 0000000000..46ba8f4f9b --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/aluminum_ingot_from_smelting_raw_aluminum.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:smelting", + "category": "misc", + "cookingtime": 200, + "experience": 0.7, + "group": "aluminum_ingot", + "ingredient": { + "item": "galacticraft:raw_aluminum" + }, + "result": "galacticraft:aluminum_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/aluminum_nugget.json b/src/main/generated/data/galacticraft/recipes/aluminum_nugget.json new file mode 100644 index 0000000000..ff549410f5 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/aluminum_nugget.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:aluminum_ingot" + } + ], + "result": { + "count": 9, + "item": "galacticraft:aluminum_nugget" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/aluminum_wire.json b/src/main/generated/data/galacticraft/recipes/aluminum_wire.json new file mode 100644 index 0000000000..5261febd68 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/aluminum_wire.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "galacticraft:aluminum_ingot" + }, + "W": { + "item": "minecraft:white_wool" + } + }, + "pattern": [ + "WWW", + "AAA", + "WWW" + ], + "result": { + "count": 6, + "item": "galacticraft:aluminum_wire" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/ambient_thermal_controller.json b/src/main/generated/data/galacticraft/recipes/ambient_thermal_controller.json new file mode 100644 index 0000000000..bea870f587 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/ambient_thermal_controller.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "item": "galacticraft:compressed_bronze" + }, + "R": { + "tag": "c:redstone_dusts" + }, + "S": { + "item": "galacticraft:compressed_steel" + }, + "V": { + "item": "galacticraft:oxygen_vent" + }, + "W": { + "item": "galacticraft:basic_wafer" + } + }, + "pattern": [ + "RVR", + "BSB", + "BWB" + ], + "result": { + "item": "galacticraft:ambient_thermal_controller" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/atmospheric_valve.json b/src/main/generated/data/galacticraft/recipes/atmospheric_valve.json new file mode 100644 index 0000000000..252930f06d --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/atmospheric_valve.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "D": { + "item": "galacticraft:desh_ingot" + }, + "V": { + "item": "galacticraft:oxygen_vent" + } + }, + "pattern": [ + "DVD", + " D " + ], + "result": { + "item": "galacticraft:atmospheric_valve" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/basic_solar_panel.json b/src/main/generated/data/galacticraft/recipes/basic_solar_panel.json new file mode 100644 index 0000000000..0a5613ef50 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/basic_solar_panel.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "item": "galacticraft:basic_wafer" + }, + "F": { + "item": "galacticraft:full_solar_panel" + }, + "P": { + "item": "galacticraft:steel_pole" + }, + "S": { + "item": "galacticraft:compressed_steel" + }, + "W": { + "item": "galacticraft:aluminum_wire" + } + }, + "pattern": [ + "SFS", + "SPS", + "WBW" + ], + "result": { + "item": "galacticraft:basic_solar_panel" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/battery.json b/src/main/generated/data/galacticraft/recipes/battery.json new file mode 100644 index 0000000000..49168e568d --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/battery.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "tag": "c:coal" + }, + "R": { + "tag": "c:redstone_dusts" + }, + "T": { + "item": "galacticraft:compressed_tin" + } + }, + "pattern": [ + " T ", + "TRT", + "TCT" + ], + "result": { + "item": "galacticraft:battery" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/beam_core.json b/src/main/generated/data/galacticraft/recipes/beam_core.json new file mode 100644 index 0000000000..5492ab7bcd --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/beam_core.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "G": { + "tag": "c:glass_panes" + }, + "I": { + "tag": "c:compressed_iron" + }, + "R": { + "tag": "c:redstone_dusts" + } + }, + "pattern": [ + "RIR", + "IGI", + "RIR" + ], + "result": { + "item": "galacticraft:beam_core" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/beef_patty_from_campfire_cooking.json b/src/main/generated/data/galacticraft/recipes/beef_patty_from_campfire_cooking.json new file mode 100644 index 0000000000..67d08732b6 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/beef_patty_from_campfire_cooking.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:campfire_cooking", + "category": "food", + "cookingtime": 600, + "experience": 1.0, + "ingredient": { + "item": "galacticraft:ground_beef" + }, + "result": "galacticraft:beef_patty" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/beef_patty_from_smelting.json b/src/main/generated/data/galacticraft/recipes/beef_patty_from_smelting.json new file mode 100644 index 0000000000..ac609843ef --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/beef_patty_from_smelting.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:smelting", + "category": "food", + "cookingtime": 200, + "experience": 1.0, + "ingredient": { + "item": "galacticraft:ground_beef" + }, + "result": "galacticraft:beef_patty" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/beef_patty_from_smoking.json b/src/main/generated/data/galacticraft/recipes/beef_patty_from_smoking.json new file mode 100644 index 0000000000..6e22abde8b --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/beef_patty_from_smoking.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:smoking", + "category": "food", + "cookingtime": 100, + "experience": 1.0, + "ingredient": { + "item": "galacticraft:ground_beef" + }, + "result": "galacticraft:beef_patty" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/black_parachute.json b/src/main/generated/data/galacticraft/recipes/black_parachute.json new file mode 100644 index 0000000000..e8e73a64c7 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/black_parachute.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:white_parachute" + }, + { + "item": "minecraft:black_dye" + } + ], + "result": { + "item": "galacticraft:black_parachute" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/blue_parachute.json b/src/main/generated/data/galacticraft/recipes/blue_parachute.json new file mode 100644 index 0000000000..aa4a3de73b --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/blue_parachute.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:white_parachute" + }, + { + "item": "minecraft:blue_dye" + } + ], + "result": { + "item": "galacticraft:blue_parachute" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/bronze_decoration.json b/src/main/generated/data/galacticraft/recipes/bronze_decoration.json new file mode 100644 index 0000000000..4c7cbb70d6 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/bronze_decoration.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:stone" + }, + "X": { + "item": "galacticraft:compressed_bronze" + } + }, + "pattern": [ + "## ", + "##X" + ], + "result": { + "item": "galacticraft:bronze_decoration" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/bronze_decoration_slab.json b/src/main/generated/data/galacticraft/recipes/bronze_decoration_slab.json new file mode 100644 index 0000000000..911a26b7da --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/bronze_decoration_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:bronze_decoration" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:bronze_decoration_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/bronze_decoration_stairs.json b/src/main/generated/data/galacticraft/recipes/bronze_decoration_stairs.json new file mode 100644 index 0000000000..72b43fd6e7 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/bronze_decoration_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:bronze_decoration" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:bronze_decoration_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/bronze_decoration_wall.json b/src/main/generated/data/galacticraft/recipes/bronze_decoration_wall.json new file mode 100644 index 0000000000..dbd61400ad --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/bronze_decoration_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:bronze_decoration" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:bronze_decoration_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/brown_parachute.json b/src/main/generated/data/galacticraft/recipes/brown_parachute.json new file mode 100644 index 0000000000..9b9a78602b --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/brown_parachute.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:white_parachute" + }, + { + "item": "minecraft:brown_dye" + } + ], + "result": { + "item": "galacticraft:brown_parachute" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/burger_bun.json b/src/main/generated/data/galacticraft/recipes/burger_bun.json new file mode 100644 index 0000000000..8d781b5a2b --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/burger_bun.json @@ -0,0 +1,22 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "minecraft:wheat" + }, + { + "item": "minecraft:wheat" + }, + { + "item": "minecraft:egg" + }, + { + "item": "minecraft:milk_bucket" + } + ], + "result": { + "count": 2, + "item": "galacticraft:burger_bun" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/canvas.json b/src/main/generated/data/galacticraft/recipes/canvas.json new file mode 100644 index 0000000000..7f1cee7ee8 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/canvas.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "I": { + "item": "minecraft:stick" + }, + "S": { + "item": "minecraft:string" + } + }, + "pattern": [ + "SSI", + "SSS", + "ISS" + ], + "result": { + "item": "galacticraft:canvas" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/carbon_fragments_from_charcoal.json b/src/main/generated/data/galacticraft/recipes/carbon_fragments_from_charcoal.json new file mode 100644 index 0000000000..99ed8dbbf7 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/carbon_fragments_from_charcoal.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "minecraft:charcoal" + } + ], + "result": { + "count": 3, + "item": "galacticraft:carbon_fragments" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/carbon_fragments_from_coal.json b/src/main/generated/data/galacticraft/recipes/carbon_fragments_from_coal.json new file mode 100644 index 0000000000..99fac6a009 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/carbon_fragments_from_coal.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "tag": "c:coal" + } + ], + "result": { + "count": 3, + "item": "galacticraft:carbon_fragments" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/carbon_fragments_from_smelting_planks.json b/src/main/generated/data/galacticraft/recipes/carbon_fragments_from_smelting_planks.json new file mode 100644 index 0000000000..04ca2527c3 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/carbon_fragments_from_smelting_planks.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:smelting", + "category": "misc", + "cookingtime": 200, + "experience": 0.1, + "ingredient": { + "tag": "minecraft:planks" + }, + "result": "galacticraft:carbon_fragments" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/cheese_slice.json b/src/main/generated/data/galacticraft/recipes/cheese_slice.json new file mode 100644 index 0000000000..26478f6d59 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/cheese_slice.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:moon_cheese_block" + } + ], + "result": { + "count": 6, + "item": "galacticraft:cheese_slice" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/cheeseburger.json b/src/main/generated/data/galacticraft/recipes/cheeseburger.json new file mode 100644 index 0000000000..04eb2f3c92 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/cheeseburger.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:cheese_slice" + }, + { + "item": "galacticraft:beef_patty" + }, + { + "item": "galacticraft:burger_bun" + } + ], + "result": { + "item": "galacticraft:cheeseburger" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/circuit_fabricator.json b/src/main/generated/data/galacticraft/recipes/circuit_fabricator.json new file mode 100644 index 0000000000..53c61ce223 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/circuit_fabricator.json @@ -0,0 +1,32 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "galacticraft:aluminum_ingot" + }, + "B": { + "item": "minecraft:stone_button" + }, + "F": { + "item": "minecraft:furnace" + }, + "L": { + "item": "minecraft:lever" + }, + "R": { + "item": "minecraft:redstone_torch" + }, + "W": { + "item": "galacticraft:aluminum_wire" + } + }, + "pattern": [ + "ALA", + "BFB", + "WRW" + ], + "result": { + "item": "galacticraft:circuit_fabricator" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/coal_generator.json b/src/main/generated/data/galacticraft/recipes/coal_generator.json new file mode 100644 index 0000000000..fd3258a36c --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/coal_generator.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "galacticraft:aluminum_ingot" + }, + "C": { + "tag": "c:copper_ingots" + }, + "F": { + "item": "minecraft:furnace" + }, + "W": { + "item": "galacticraft:aluminum_wire" + } + }, + "pattern": [ + "CCC", + "AFA", + "AWA" + ], + "result": { + "item": "galacticraft:coal_generator" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/cobbled_lunaslate_slab.json b/src/main/generated/data/galacticraft/recipes/cobbled_lunaslate_slab.json new file mode 100644 index 0000000000..f8b7d05ee4 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/cobbled_lunaslate_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:cobbled_lunaslate" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:cobbled_lunaslate_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/cobbled_lunaslate_stairs.json b/src/main/generated/data/galacticraft/recipes/cobbled_lunaslate_stairs.json new file mode 100644 index 0000000000..4a2224b93d --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/cobbled_lunaslate_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:cobbled_lunaslate" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:cobbled_lunaslate_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/cobbled_lunaslate_wall.json b/src/main/generated/data/galacticraft/recipes/cobbled_lunaslate_wall.json new file mode 100644 index 0000000000..9e0905f022 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/cobbled_lunaslate_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:cobbled_lunaslate" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:cobbled_lunaslate_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/compressing/compressed_aluminum.json b/src/main/generated/data/galacticraft/recipes/compressing/compressed_aluminum.json new file mode 100644 index 0000000000..b552da2177 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/compressing/compressed_aluminum.json @@ -0,0 +1,14 @@ +{ + "type": "galacticraft:compressing_shapeless", + "ingredients": [ + { + "tag": "c:aluminum_ingots" + }, + { + "tag": "c:aluminum_ingots" + } + ], + "result": { + "item": "galacticraft:compressed_aluminum" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/compressing/compressed_bronze.json b/src/main/generated/data/galacticraft/recipes/compressing/compressed_bronze.json similarity index 77% rename from src/main/generated/data/galacticraft/recipe/compressing/compressed_bronze.json rename to src/main/generated/data/galacticraft/recipes/compressing/compressed_bronze.json index f9b5a8c3da..135cda0f23 100644 --- a/src/main/generated/data/galacticraft/recipe/compressing/compressed_bronze.json +++ b/src/main/generated/data/galacticraft/recipes/compressing/compressed_bronze.json @@ -9,7 +9,6 @@ } ], "result": { - "count": 1, - "id": "galacticraft:compressed_bronze" + "item": "galacticraft:compressed_bronze" } } \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/compressing/compressed_copper.json b/src/main/generated/data/galacticraft/recipes/compressing/compressed_copper.json new file mode 100644 index 0000000000..daebd240d9 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/compressing/compressed_copper.json @@ -0,0 +1,14 @@ +{ + "type": "galacticraft:compressing_shapeless", + "ingredients": [ + { + "tag": "c:copper_ingots" + }, + { + "tag": "c:copper_ingots" + } + ], + "result": { + "item": "galacticraft:compressed_copper" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/compressing/compressed_desh.json b/src/main/generated/data/galacticraft/recipes/compressing/compressed_desh.json new file mode 100644 index 0000000000..5f085da8eb --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/compressing/compressed_desh.json @@ -0,0 +1,11 @@ +{ + "type": "galacticraft:compressing_shapeless", + "ingredients": [ + { + "item": "galacticraft:desh_ingot" + } + ], + "result": { + "item": "galacticraft:compressed_desh" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/compressing/compressed_iron.json b/src/main/generated/data/galacticraft/recipes/compressing/compressed_iron.json new file mode 100644 index 0000000000..f62fcd8e0e --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/compressing/compressed_iron.json @@ -0,0 +1,14 @@ +{ + "type": "galacticraft:compressing_shapeless", + "ingredients": [ + { + "tag": "c:iron_ingots" + }, + { + "tag": "c:iron_ingots" + } + ], + "result": { + "item": "galacticraft:compressed_iron" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/compressing/compressed_meteoric_iron.json b/src/main/generated/data/galacticraft/recipes/compressing/compressed_meteoric_iron.json new file mode 100644 index 0000000000..2b30cf968e --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/compressing/compressed_meteoric_iron.json @@ -0,0 +1,11 @@ +{ + "type": "galacticraft:compressing_shapeless", + "ingredients": [ + { + "item": "galacticraft:meteoric_iron_ingot" + } + ], + "result": { + "item": "galacticraft:compressed_meteoric_iron" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/compressing/compressed_steel.json b/src/main/generated/data/galacticraft/recipes/compressing/compressed_steel.json new file mode 100644 index 0000000000..f7c5c6a44a --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/compressing/compressed_steel.json @@ -0,0 +1,17 @@ +{ + "type": "galacticraft:compressing_shapeless", + "ingredients": [ + { + "tag": "c:coal" + }, + { + "item": "galacticraft:compressed_iron" + }, + { + "tag": "c:coal" + } + ], + "result": { + "item": "galacticraft:compressed_steel" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/compressing/compressed_steel_from_ingots.json b/src/main/generated/data/galacticraft/recipes/compressing/compressed_steel_from_ingots.json new file mode 100644 index 0000000000..79eb65b727 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/compressing/compressed_steel_from_ingots.json @@ -0,0 +1,14 @@ +{ + "type": "galacticraft:compressing_shapeless", + "ingredients": [ + { + "tag": "c:steel_ingots" + }, + { + "tag": "c:steel_ingots" + } + ], + "result": { + "item": "galacticraft:compressed_steel" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/compressing/compressed_tin.json b/src/main/generated/data/galacticraft/recipes/compressing/compressed_tin.json new file mode 100644 index 0000000000..ab9a697fb9 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/compressing/compressed_tin.json @@ -0,0 +1,14 @@ +{ + "type": "galacticraft:compressing_shapeless", + "ingredients": [ + { + "tag": "c:tin_ingots" + }, + { + "tag": "c:tin_ingots" + } + ], + "result": { + "item": "galacticraft:compressed_tin" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/compressing/compressed_titanium.json b/src/main/generated/data/galacticraft/recipes/compressing/compressed_titanium.json new file mode 100644 index 0000000000..e120741ccb --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/compressing/compressed_titanium.json @@ -0,0 +1,14 @@ +{ + "type": "galacticraft:compressing_shapeless", + "ingredients": [ + { + "item": "galacticraft:titanium_ingot" + }, + { + "item": "galacticraft:titanium_ingot" + } + ], + "result": { + "item": "galacticraft:compressed_titanium" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/compressing/heavy_plating.json b/src/main/generated/data/galacticraft/recipes/compressing/heavy_plating.json new file mode 100644 index 0000000000..1ea4c1a22b --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/compressing/heavy_plating.json @@ -0,0 +1,22 @@ +{ + "type": "galacticraft:compressing_shaped", + "key": { + "A": { + "item": "galacticraft:compressed_aluminum" + }, + "B": { + "item": "galacticraft:compressed_bronze" + }, + "S": { + "item": "galacticraft:compressed_steel" + } + }, + "pattern": [ + "BAS", + "BAS" + ], + "result": { + "Count": 2, + "id": "galacticraft:heavy_plating" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/compressing/heavy_plating_flipped.json b/src/main/generated/data/galacticraft/recipes/compressing/heavy_plating_flipped.json new file mode 100644 index 0000000000..293a1be516 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/compressing/heavy_plating_flipped.json @@ -0,0 +1,22 @@ +{ + "type": "galacticraft:compressing_shaped", + "key": { + "A": { + "item": "galacticraft:compressed_aluminum" + }, + "B": { + "item": "galacticraft:compressed_bronze" + }, + "S": { + "item": "galacticraft:compressed_steel" + } + }, + "pattern": [ + "SAB", + "SAB" + ], + "result": { + "Count": 2, + "id": "galacticraft:heavy_plating" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/compressing/heavy_plating_t2.json b/src/main/generated/data/galacticraft/recipes/compressing/heavy_plating_t2.json new file mode 100644 index 0000000000..9fe35a2542 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/compressing/heavy_plating_t2.json @@ -0,0 +1,14 @@ +{ + "type": "galacticraft:compressing_shapeless", + "ingredients": [ + { + "item": "galacticraft:heavy_plating" + }, + { + "item": "galacticraft:compressed_meteoric_iron" + } + ], + "result": { + "item": "galacticraft:heavy_plating_t2" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/compressing/heavy_plating_t3.json b/src/main/generated/data/galacticraft/recipes/compressing/heavy_plating_t3.json new file mode 100644 index 0000000000..3fdc8ff556 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/compressing/heavy_plating_t3.json @@ -0,0 +1,14 @@ +{ + "type": "galacticraft:compressing_shapeless", + "ingredients": [ + { + "item": "galacticraft:heavy_plating_t2" + }, + { + "item": "galacticraft:compressed_desh" + } + ], + "result": { + "item": "galacticraft:heavy_plating_t3" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/compressor.json b/src/main/generated/data/galacticraft/recipes/compressor.json new file mode 100644 index 0000000000..94c77fca6f --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/compressor.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "minecraft:anvil" + }, + "C": { + "tag": "c:copper_ingots" + }, + "I": { + "item": "galacticraft:aluminum_ingot" + }, + "W": { + "item": "galacticraft:basic_wafer" + } + }, + "pattern": [ + "IAI", + "ICI", + "IWI" + ], + "result": { + "item": "galacticraft:compressor" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/copper_canister.json b/src/main/generated/data/galacticraft/recipes/copper_canister.json new file mode 100644 index 0000000000..b94cdf5306 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/copper_canister.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "X": { + "item": "minecraft:copper_ingot" + } + }, + "pattern": [ + "X X", + "X X", + "XXX" + ], + "result": { + "count": 2, + "item": "galacticraft:copper_canister" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/copper_decoration.json b/src/main/generated/data/galacticraft/recipes/copper_decoration.json new file mode 100644 index 0000000000..8587954d34 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/copper_decoration.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:stone" + }, + "X": { + "item": "galacticraft:compressed_copper" + } + }, + "pattern": [ + "## ", + "##X" + ], + "result": { + "item": "galacticraft:copper_decoration" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/copper_decoration_slab.json b/src/main/generated/data/galacticraft/recipes/copper_decoration_slab.json new file mode 100644 index 0000000000..1f5282e4d9 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/copper_decoration_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:copper_decoration" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:copper_decoration_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/copper_decoration_stairs.json b/src/main/generated/data/galacticraft/recipes/copper_decoration_stairs.json new file mode 100644 index 0000000000..63a703a1f2 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/copper_decoration_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:copper_decoration" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:copper_decoration_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/copper_decoration_wall.json b/src/main/generated/data/galacticraft/recipes/copper_decoration_wall.json new file mode 100644 index 0000000000..6f3569ddec --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/copper_decoration_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:copper_decoration" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:copper_decoration_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/copper_ingot_from_blasting_lunaslate_copper_ore.json b/src/main/generated/data/galacticraft/recipes/copper_ingot_from_blasting_lunaslate_copper_ore.json new file mode 100644 index 0000000000..baa83c9feb --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/copper_ingot_from_blasting_lunaslate_copper_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:blasting", + "category": "misc", + "cookingtime": 100, + "experience": 0.7, + "group": "copper_ingot", + "ingredient": { + "item": "galacticraft:lunaslate_copper_ore" + }, + "result": "minecraft:copper_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/copper_ingot_from_blasting_moon_copper_ore.json b/src/main/generated/data/galacticraft/recipes/copper_ingot_from_blasting_moon_copper_ore.json new file mode 100644 index 0000000000..284ad84589 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/copper_ingot_from_blasting_moon_copper_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:blasting", + "category": "misc", + "cookingtime": 100, + "experience": 0.7, + "group": "copper_ingot", + "ingredient": { + "item": "galacticraft:moon_copper_ore" + }, + "result": "minecraft:copper_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/copper_ingot_from_smelting_lunaslate_copper_ore.json b/src/main/generated/data/galacticraft/recipes/copper_ingot_from_smelting_lunaslate_copper_ore.json new file mode 100644 index 0000000000..55358ec57a --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/copper_ingot_from_smelting_lunaslate_copper_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:smelting", + "category": "misc", + "cookingtime": 200, + "experience": 0.7, + "group": "copper_ingot", + "ingredient": { + "item": "galacticraft:lunaslate_copper_ore" + }, + "result": "minecraft:copper_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/copper_ingot_from_smelting_moon_copper_ore.json b/src/main/generated/data/galacticraft/recipes/copper_ingot_from_smelting_moon_copper_ore.json new file mode 100644 index 0000000000..5a9c8e6b93 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/copper_ingot_from_smelting_moon_copper_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:smelting", + "category": "misc", + "cookingtime": 200, + "experience": 0.7, + "group": "copper_ingot", + "ingredient": { + "item": "galacticraft:moon_copper_ore" + }, + "result": "minecraft:copper_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/cracked_moon_basalt_brick_slab.json b/src/main/generated/data/galacticraft/recipes/cracked_moon_basalt_brick_slab.json new file mode 100644 index 0000000000..6cc850217a --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/cracked_moon_basalt_brick_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:cracked_moon_basalt_brick" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:cracked_moon_basalt_brick_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/cracked_moon_basalt_brick_stairs.json b/src/main/generated/data/galacticraft/recipes/cracked_moon_basalt_brick_stairs.json new file mode 100644 index 0000000000..f425fc88bf --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/cracked_moon_basalt_brick_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:cracked_moon_basalt_brick" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:cracked_moon_basalt_brick_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/cracked_moon_basalt_brick_wall.json b/src/main/generated/data/galacticraft/recipes/cracked_moon_basalt_brick_wall.json new file mode 100644 index 0000000000..b6d2043866 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/cracked_moon_basalt_brick_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:cracked_moon_basalt_brick" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:cracked_moon_basalt_brick_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/cyan_parachute.json b/src/main/generated/data/galacticraft/recipes/cyan_parachute.json new file mode 100644 index 0000000000..e7e3d50a74 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/cyan_parachute.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:white_parachute" + }, + { + "item": "minecraft:cyan_dye" + } + ], + "result": { + "item": "galacticraft:cyan_parachute" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/dark_decoration_slab.json b/src/main/generated/data/galacticraft/recipes/dark_decoration_slab.json new file mode 100644 index 0000000000..45762625d7 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/dark_decoration_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:dark_decoration" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:dark_decoration_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/dark_decoration_stairs.json b/src/main/generated/data/galacticraft/recipes/dark_decoration_stairs.json new file mode 100644 index 0000000000..2feb1b81ef --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/dark_decoration_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:dark_decoration" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:dark_decoration_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/dark_decoration_wall.json b/src/main/generated/data/galacticraft/recipes/dark_decoration_wall.json new file mode 100644 index 0000000000..837bfe5709 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/dark_decoration_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:dark_decoration" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:dark_decoration_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/dashed_light_panel.json b/src/main/generated/data/galacticraft/recipes/dashed_light_panel.json new file mode 100644 index 0000000000..c415645569 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/dashed_light_panel.json @@ -0,0 +1,22 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "G": { + "item": "galacticraft:glowstone_torch" + }, + "S": { + "item": "minecraft:glass_pane" + }, + "T": { + "item": "galacticraft:compressed_steel" + } + }, + "pattern": [ + "SGS", + " T " + ], + "result": { + "item": "galacticraft:dashed_light_panel" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_axe.json b/src/main/generated/data/galacticraft/recipes/desh_axe.json new file mode 100644 index 0000000000..4d0c3dee2b --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_axe.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "D": { + "item": "galacticraft:desh_ingot" + }, + "S": { + "item": "galacticraft:desh_stick" + } + }, + "pattern": [ + "DD", + "DS", + " S" + ], + "result": { + "item": "galacticraft:desh_axe" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_axe_flipped.json b/src/main/generated/data/galacticraft/recipes/desh_axe_flipped.json new file mode 100644 index 0000000000..3ee78a5ead --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_axe_flipped.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "D": { + "item": "galacticraft:desh_ingot" + }, + "S": { + "item": "galacticraft:desh_stick" + } + }, + "pattern": [ + "DD", + "SD", + "S " + ], + "result": { + "item": "galacticraft:desh_axe" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_block.json b/src/main/generated/data/galacticraft/recipes/desh_block.json new file mode 100644 index 0000000000..0f1e149a53 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_block.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:desh_ingot" + } + }, + "pattern": [ + "###", + "###", + "###" + ], + "result": { + "item": "galacticraft:desh_block" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_boots.json b/src/main/generated/data/galacticraft/recipes/desh_boots.json new file mode 100644 index 0000000000..c807ab93f8 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_boots.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "D": { + "item": "galacticraft:desh_ingot" + } + }, + "pattern": [ + "D D", + "D D" + ], + "result": { + "item": "galacticraft:desh_boots" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_chestplate.json b/src/main/generated/data/galacticraft/recipes/desh_chestplate.json new file mode 100644 index 0000000000..2dc6a80e1f --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_chestplate.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "D": { + "item": "galacticraft:desh_ingot" + } + }, + "pattern": [ + "D D", + "DDD", + "DDD" + ], + "result": { + "item": "galacticraft:desh_chestplate" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_helmet.json b/src/main/generated/data/galacticraft/recipes/desh_helmet.json new file mode 100644 index 0000000000..4d82a24696 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_helmet.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "D": { + "item": "galacticraft:desh_ingot" + } + }, + "pattern": [ + "DDD", + "D D" + ], + "result": { + "item": "galacticraft:desh_helmet" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_hoe.json b/src/main/generated/data/galacticraft/recipes/desh_hoe.json new file mode 100644 index 0000000000..d44abc18b3 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_hoe.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "D": { + "item": "galacticraft:desh_ingot" + }, + "S": { + "item": "galacticraft:desh_stick" + } + }, + "pattern": [ + "DD", + " S", + " S" + ], + "result": { + "item": "galacticraft:desh_hoe" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_hoe_flipped.json b/src/main/generated/data/galacticraft/recipes/desh_hoe_flipped.json new file mode 100644 index 0000000000..86dc39d162 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_hoe_flipped.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "D": { + "item": "galacticraft:desh_ingot" + }, + "S": { + "item": "galacticraft:desh_stick" + } + }, + "pattern": [ + "DD", + "S ", + "S " + ], + "result": { + "item": "galacticraft:desh_hoe" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_ingot_from_blasting_desh_ore.json b/src/main/generated/data/galacticraft/recipes/desh_ingot_from_blasting_desh_ore.json new file mode 100644 index 0000000000..e616d8d5c1 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_ingot_from_blasting_desh_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:blasting", + "category": "misc", + "cookingtime": 100, + "experience": 0.7, + "group": "desh_ingot", + "ingredient": { + "item": "galacticraft:desh_ore" + }, + "result": "galacticraft:desh_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_ingot_from_blasting_raw_desh.json b/src/main/generated/data/galacticraft/recipes/desh_ingot_from_blasting_raw_desh.json new file mode 100644 index 0000000000..4418a026c5 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_ingot_from_blasting_raw_desh.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:blasting", + "category": "misc", + "cookingtime": 100, + "experience": 0.7, + "group": "desh_ingot", + "ingredient": { + "item": "galacticraft:raw_desh" + }, + "result": "galacticraft:desh_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_ingot_from_block.json b/src/main/generated/data/galacticraft/recipes/desh_ingot_from_block.json new file mode 100644 index 0000000000..313e45db00 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_ingot_from_block.json @@ -0,0 +1,14 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "group": "desh_ingot", + "ingredients": [ + { + "item": "galacticraft:desh_block" + } + ], + "result": { + "count": 9, + "item": "galacticraft:desh_ingot" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/recipes/desh_ingot_from_nuggets.json new file mode 100644 index 0000000000..a067580350 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_ingot_from_nuggets.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "group": "desh_ingot", + "key": { + "#": { + "item": "galacticraft:desh_nugget" + } + }, + "pattern": [ + "###", + "###", + "###" + ], + "result": { + "item": "galacticraft:desh_ingot" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_ingot_from_smelting_desh_ore.json b/src/main/generated/data/galacticraft/recipes/desh_ingot_from_smelting_desh_ore.json new file mode 100644 index 0000000000..6e225c9787 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_ingot_from_smelting_desh_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:smelting", + "category": "misc", + "cookingtime": 200, + "experience": 0.7, + "group": "desh_ingot", + "ingredient": { + "item": "galacticraft:desh_ore" + }, + "result": "galacticraft:desh_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_ingot_from_smelting_raw_desh.json b/src/main/generated/data/galacticraft/recipes/desh_ingot_from_smelting_raw_desh.json new file mode 100644 index 0000000000..55ad78b2c0 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_ingot_from_smelting_raw_desh.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:smelting", + "category": "misc", + "cookingtime": 200, + "experience": 0.7, + "group": "desh_ingot", + "ingredient": { + "item": "galacticraft:raw_desh" + }, + "result": "galacticraft:desh_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_leggings.json b/src/main/generated/data/galacticraft/recipes/desh_leggings.json new file mode 100644 index 0000000000..bb20043cb9 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_leggings.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "D": { + "item": "galacticraft:desh_ingot" + } + }, + "pattern": [ + "DDD", + "D D", + "D D" + ], + "result": { + "item": "galacticraft:desh_leggings" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_nugget.json b/src/main/generated/data/galacticraft/recipes/desh_nugget.json new file mode 100644 index 0000000000..6eda4af386 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_nugget.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:desh_ingot" + } + ], + "result": { + "count": 9, + "item": "galacticraft:desh_nugget" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_pickaxe.json b/src/main/generated/data/galacticraft/recipes/desh_pickaxe.json new file mode 100644 index 0000000000..4f612b2767 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_pickaxe.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "D": { + "item": "galacticraft:desh_ingot" + }, + "S": { + "item": "galacticraft:desh_stick" + } + }, + "pattern": [ + "DDD", + " S ", + " S " + ], + "result": { + "item": "galacticraft:desh_pickaxe" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_shovel.json b/src/main/generated/data/galacticraft/recipes/desh_shovel.json new file mode 100644 index 0000000000..254ac7d091 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_shovel.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "D": { + "item": "galacticraft:desh_ingot" + }, + "S": { + "item": "galacticraft:desh_stick" + } + }, + "pattern": [ + "D", + "S", + "S" + ], + "result": { + "item": "galacticraft:desh_shovel" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_stick.json b/src/main/generated/data/galacticraft/recipes/desh_stick.json new file mode 100644 index 0000000000..d94d77ed66 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_stick.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "D": { + "item": "galacticraft:desh_ingot" + } + }, + "pattern": [ + "D", + "D" + ], + "result": { + "count": 4, + "item": "galacticraft:desh_stick" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/desh_sword.json b/src/main/generated/data/galacticraft/recipes/desh_sword.json new file mode 100644 index 0000000000..35ad6b9cf5 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/desh_sword.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "D": { + "item": "galacticraft:desh_ingot" + }, + "S": { + "item": "galacticraft:desh_stick" + } + }, + "pattern": [ + "D", + "S", + "S" + ], + "result": { + "item": "galacticraft:desh_sword" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_aluminum_decoration.json b/src/main/generated/data/galacticraft/recipes/detailed_aluminum_decoration.json new file mode 100644 index 0000000000..2505d287c2 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_aluminum_decoration.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:stone" + }, + "X": { + "item": "galacticraft:compressed_aluminum" + } + }, + "pattern": [ + "##", + "##", + " X" + ], + "result": { + "item": "galacticraft:detailed_aluminum_decoration" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_aluminum_decoration_slab.json b/src/main/generated/data/galacticraft/recipes/detailed_aluminum_decoration_slab.json new file mode 100644 index 0000000000..e5e079bb3e --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_aluminum_decoration_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_aluminum_decoration" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:detailed_aluminum_decoration_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_aluminum_decoration_stairs.json b/src/main/generated/data/galacticraft/recipes/detailed_aluminum_decoration_stairs.json new file mode 100644 index 0000000000..99b3f0cf5a --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_aluminum_decoration_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_aluminum_decoration" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:detailed_aluminum_decoration_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_aluminum_decoration_wall.json b/src/main/generated/data/galacticraft/recipes/detailed_aluminum_decoration_wall.json new file mode 100644 index 0000000000..f4d37ac057 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_aluminum_decoration_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_aluminum_decoration" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:detailed_aluminum_decoration_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_bronze_decoration.json b/src/main/generated/data/galacticraft/recipes/detailed_bronze_decoration.json new file mode 100644 index 0000000000..a885ba1e86 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_bronze_decoration.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:stone" + }, + "X": { + "item": "galacticraft:compressed_bronze" + } + }, + "pattern": [ + "##", + "##", + " X" + ], + "result": { + "item": "galacticraft:detailed_bronze_decoration" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_bronze_decoration_slab.json b/src/main/generated/data/galacticraft/recipes/detailed_bronze_decoration_slab.json new file mode 100644 index 0000000000..a0802cc5d8 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_bronze_decoration_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_bronze_decoration" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:detailed_bronze_decoration_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_bronze_decoration_stairs.json b/src/main/generated/data/galacticraft/recipes/detailed_bronze_decoration_stairs.json new file mode 100644 index 0000000000..30a0a543e4 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_bronze_decoration_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_bronze_decoration" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:detailed_bronze_decoration_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_bronze_decoration_wall.json b/src/main/generated/data/galacticraft/recipes/detailed_bronze_decoration_wall.json new file mode 100644 index 0000000000..6aab3c31eb --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_bronze_decoration_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_bronze_decoration" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:detailed_bronze_decoration_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_copper_decoration.json b/src/main/generated/data/galacticraft/recipes/detailed_copper_decoration.json new file mode 100644 index 0000000000..4df26c100f --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_copper_decoration.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:stone" + }, + "X": { + "item": "galacticraft:compressed_copper" + } + }, + "pattern": [ + "##", + "##", + " X" + ], + "result": { + "item": "galacticraft:detailed_copper_decoration" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_copper_decoration_slab.json b/src/main/generated/data/galacticraft/recipes/detailed_copper_decoration_slab.json new file mode 100644 index 0000000000..934c58e56b --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_copper_decoration_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_copper_decoration" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:detailed_copper_decoration_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_copper_decoration_stairs.json b/src/main/generated/data/galacticraft/recipes/detailed_copper_decoration_stairs.json new file mode 100644 index 0000000000..d797999390 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_copper_decoration_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_copper_decoration" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:detailed_copper_decoration_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_copper_decoration_wall.json b/src/main/generated/data/galacticraft/recipes/detailed_copper_decoration_wall.json new file mode 100644 index 0000000000..d4278d2282 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_copper_decoration_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_copper_decoration" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:detailed_copper_decoration_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_dark_decoration_slab.json b/src/main/generated/data/galacticraft/recipes/detailed_dark_decoration_slab.json new file mode 100644 index 0000000000..11a761028b --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_dark_decoration_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_dark_decoration" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:detailed_dark_decoration_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_dark_decoration_stairs.json b/src/main/generated/data/galacticraft/recipes/detailed_dark_decoration_stairs.json new file mode 100644 index 0000000000..71fd714bf4 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_dark_decoration_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_dark_decoration" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:detailed_dark_decoration_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_dark_decoration_wall.json b/src/main/generated/data/galacticraft/recipes/detailed_dark_decoration_wall.json new file mode 100644 index 0000000000..a63d443fae --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_dark_decoration_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_dark_decoration" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:detailed_dark_decoration_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_iron_decoration.json b/src/main/generated/data/galacticraft/recipes/detailed_iron_decoration.json new file mode 100644 index 0000000000..57a579676a --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_iron_decoration.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:stone" + }, + "X": { + "item": "galacticraft:compressed_iron" + } + }, + "pattern": [ + "##", + "##", + " X" + ], + "result": { + "item": "galacticraft:detailed_iron_decoration" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_iron_decoration_slab.json b/src/main/generated/data/galacticraft/recipes/detailed_iron_decoration_slab.json new file mode 100644 index 0000000000..c2e62873e2 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_iron_decoration_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_iron_decoration" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:detailed_iron_decoration_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_iron_decoration_stairs.json b/src/main/generated/data/galacticraft/recipes/detailed_iron_decoration_stairs.json new file mode 100644 index 0000000000..b1b949ceab --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_iron_decoration_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_iron_decoration" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:detailed_iron_decoration_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_iron_decoration_wall.json b/src/main/generated/data/galacticraft/recipes/detailed_iron_decoration_wall.json new file mode 100644 index 0000000000..9f14bb9331 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_iron_decoration_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_iron_decoration" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:detailed_iron_decoration_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_meteoric_iron_decoration.json b/src/main/generated/data/galacticraft/recipes/detailed_meteoric_iron_decoration.json new file mode 100644 index 0000000000..9bb07807bf --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_meteoric_iron_decoration.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:stone" + }, + "X": { + "item": "galacticraft:compressed_meteoric_iron" + } + }, + "pattern": [ + "##", + "##", + " X" + ], + "result": { + "item": "galacticraft:detailed_meteoric_iron_decoration" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_meteoric_iron_decoration_slab.json b/src/main/generated/data/galacticraft/recipes/detailed_meteoric_iron_decoration_slab.json new file mode 100644 index 0000000000..aaac00a6c5 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_meteoric_iron_decoration_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_meteoric_iron_decoration" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:detailed_meteoric_iron_decoration_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_meteoric_iron_decoration_stairs.json b/src/main/generated/data/galacticraft/recipes/detailed_meteoric_iron_decoration_stairs.json new file mode 100644 index 0000000000..3e4948332a --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_meteoric_iron_decoration_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_meteoric_iron_decoration" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:detailed_meteoric_iron_decoration_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_meteoric_iron_decoration_wall.json b/src/main/generated/data/galacticraft/recipes/detailed_meteoric_iron_decoration_wall.json new file mode 100644 index 0000000000..7f5bd65d8e --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_meteoric_iron_decoration_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_meteoric_iron_decoration" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:detailed_meteoric_iron_decoration_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_steel_decoration.json b/src/main/generated/data/galacticraft/recipes/detailed_steel_decoration.json new file mode 100644 index 0000000000..eff446e377 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_steel_decoration.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:stone" + }, + "X": { + "item": "galacticraft:compressed_steel" + } + }, + "pattern": [ + "##", + "##", + " X" + ], + "result": { + "item": "galacticraft:detailed_steel_decoration" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_steel_decoration_slab.json b/src/main/generated/data/galacticraft/recipes/detailed_steel_decoration_slab.json new file mode 100644 index 0000000000..6816a451ca --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_steel_decoration_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_steel_decoration" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:detailed_steel_decoration_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_steel_decoration_stairs.json b/src/main/generated/data/galacticraft/recipes/detailed_steel_decoration_stairs.json new file mode 100644 index 0000000000..b44aab3706 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_steel_decoration_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_steel_decoration" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:detailed_steel_decoration_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_steel_decoration_wall.json b/src/main/generated/data/galacticraft/recipes/detailed_steel_decoration_wall.json new file mode 100644 index 0000000000..8387e21c7d --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_steel_decoration_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_steel_decoration" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:detailed_steel_decoration_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_tin_decoration.json b/src/main/generated/data/galacticraft/recipes/detailed_tin_decoration.json new file mode 100644 index 0000000000..66240dbb63 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_tin_decoration.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:stone" + }, + "X": { + "item": "galacticraft:compressed_tin" + } + }, + "pattern": [ + "##", + "##", + " X" + ], + "result": { + "item": "galacticraft:detailed_tin_decoration" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_tin_decoration_slab.json b/src/main/generated/data/galacticraft/recipes/detailed_tin_decoration_slab.json new file mode 100644 index 0000000000..8c4911311c --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_tin_decoration_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_tin_decoration" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:detailed_tin_decoration_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_tin_decoration_stairs.json b/src/main/generated/data/galacticraft/recipes/detailed_tin_decoration_stairs.json new file mode 100644 index 0000000000..0ca8755ce0 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_tin_decoration_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_tin_decoration" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:detailed_tin_decoration_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_tin_decoration_wall.json b/src/main/generated/data/galacticraft/recipes/detailed_tin_decoration_wall.json new file mode 100644 index 0000000000..60b798ae41 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_tin_decoration_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_tin_decoration" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:detailed_tin_decoration_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_titanium_decoration.json b/src/main/generated/data/galacticraft/recipes/detailed_titanium_decoration.json new file mode 100644 index 0000000000..42831abc00 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_titanium_decoration.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:stone" + }, + "X": { + "item": "galacticraft:compressed_titanium" + } + }, + "pattern": [ + "##", + "##", + " X" + ], + "result": { + "item": "galacticraft:detailed_titanium_decoration" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_titanium_decoration_slab.json b/src/main/generated/data/galacticraft/recipes/detailed_titanium_decoration_slab.json new file mode 100644 index 0000000000..a3aa185590 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_titanium_decoration_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_titanium_decoration" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:detailed_titanium_decoration_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_titanium_decoration_stairs.json b/src/main/generated/data/galacticraft/recipes/detailed_titanium_decoration_stairs.json new file mode 100644 index 0000000000..1a607f4338 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_titanium_decoration_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_titanium_decoration" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:detailed_titanium_decoration_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/detailed_titanium_decoration_wall.json b/src/main/generated/data/galacticraft/recipes/detailed_titanium_decoration_wall.json new file mode 100644 index 0000000000..1bd5130043 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/detailed_titanium_decoration_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:detailed_titanium_decoration" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:detailed_titanium_decoration_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/diagonal_light_panel.json b/src/main/generated/data/galacticraft/recipes/diagonal_light_panel.json new file mode 100644 index 0000000000..cd681d6d97 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/diagonal_light_panel.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "G": { + "item": "galacticraft:glowstone_torch" + }, + "S": { + "item": "minecraft:glass_pane" + }, + "T": { + "item": "galacticraft:compressed_steel" + } + }, + "pattern": [ + " S", + "SG", + " T" + ], + "result": { + "item": "galacticraft:diagonal_light_panel" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/diagonal_light_panel_flipped.json b/src/main/generated/data/galacticraft/recipes/diagonal_light_panel_flipped.json new file mode 100644 index 0000000000..cd681d6d97 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/diagonal_light_panel_flipped.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "G": { + "item": "galacticraft:glowstone_torch" + }, + "S": { + "item": "minecraft:glass_pane" + }, + "T": { + "item": "galacticraft:compressed_steel" + } + }, + "pattern": [ + " S", + "SG", + " T" + ], + "result": { + "item": "galacticraft:diagonal_light_panel" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/electric_arc_furnace.json b/src/main/generated/data/galacticraft/recipes/electric_arc_furnace.json new file mode 100644 index 0000000000..e4ea2d5916 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/electric_arc_furnace.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "E": { + "item": "galacticraft:electric_furnace" + }, + "H": { + "item": "galacticraft:heavy_plating" + }, + "M": { + "item": "galacticraft:meteoric_iron_ingot" + }, + "W": { + "item": "galacticraft:advanced_wafer" + } + }, + "pattern": [ + "HHH", + "HEH", + "MWM" + ], + "result": { + "item": "galacticraft:electric_arc_furnace" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/electric_compressor.json b/src/main/generated/data/galacticraft/recipes/electric_compressor.json new file mode 100644 index 0000000000..6cbfd459fc --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/electric_compressor.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "minecraft:anvil" + }, + "B": { + "item": "galacticraft:compressed_bronze" + }, + "I": { + "item": "galacticraft:aluminum_wire" + }, + "S": { + "item": "galacticraft:compressed_steel" + }, + "W": { + "item": "galacticraft:advanced_wafer" + } + }, + "pattern": [ + "SAS", + "SBS", + "IWI" + ], + "result": { + "item": "galacticraft:electric_compressor" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/electric_compressor_upgrade.json b/src/main/generated/data/galacticraft/recipes/electric_compressor_upgrade.json new file mode 100644 index 0000000000..53c484daf3 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/electric_compressor_upgrade.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "galacticraft:compressor" + }, + "I": { + "item": "galacticraft:aluminum_wire" + }, + "S": { + "item": "galacticraft:compressed_steel" + }, + "T": { + "item": "galacticraft:compressed_tin" + }, + "W": { + "item": "galacticraft:advanced_wafer" + } + }, + "pattern": [ + "STS", + "SCS", + "IWI" + ], + "result": { + "item": "galacticraft:electric_compressor" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/electric_furnace.json b/src/main/generated/data/galacticraft/recipes/electric_furnace.json new file mode 100644 index 0000000000..3b7f7c9656 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/electric_furnace.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "galacticraft:compressed_aluminum" + }, + "F": { + "item": "minecraft:furnace" + }, + "S": { + "item": "galacticraft:compressed_steel" + }, + "W": { + "item": "galacticraft:basic_wafer" + } + }, + "pattern": [ + "SSS", + "SFS", + "AWA" + ], + "result": { + "item": "galacticraft:electric_furnace" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/energy_storage_module.json b/src/main/generated/data/galacticraft/recipes/energy_storage_module.json new file mode 100644 index 0000000000..a3b96b5c3c --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/energy_storage_module.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "item": "galacticraft:battery" + }, + "S": { + "item": "galacticraft:compressed_steel" + } + }, + "pattern": [ + "SSS", + "BBB", + "SSS" + ], + "result": { + "item": "galacticraft:energy_storage_module" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/fabrication/advanced_wafer.json b/src/main/generated/data/galacticraft/recipes/fabrication/advanced_wafer.json similarity index 90% rename from src/main/generated/data/galacticraft/recipe/fabrication/advanced_wafer.json rename to src/main/generated/data/galacticraft/recipes/fabrication/advanced_wafer.json index 69570d4884..a048c3a2f3 100644 --- a/src/main/generated/data/galacticraft/recipe/fabrication/advanced_wafer.json +++ b/src/main/generated/data/galacticraft/recipes/fabrication/advanced_wafer.json @@ -4,7 +4,7 @@ "item": "minecraft:repeater" }, "result": { - "count": 1, + "Count": 1, "id": "galacticraft:advanced_wafer" } } \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/fabrication/basic_wafer.json b/src/main/generated/data/galacticraft/recipes/fabrication/basic_wafer.json similarity index 90% rename from src/main/generated/data/galacticraft/recipe/fabrication/basic_wafer.json rename to src/main/generated/data/galacticraft/recipes/fabrication/basic_wafer.json index 299f62fe8d..fd65f6a473 100644 --- a/src/main/generated/data/galacticraft/recipe/fabrication/basic_wafer.json +++ b/src/main/generated/data/galacticraft/recipes/fabrication/basic_wafer.json @@ -4,7 +4,7 @@ "item": "minecraft:redstone_torch" }, "result": { - "count": 3, + "Count": 3, "id": "galacticraft:basic_wafer" } } \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/fabrication/blue_solar_wafer.json b/src/main/generated/data/galacticraft/recipes/fabrication/blue_solar_wafer.json similarity index 90% rename from src/main/generated/data/galacticraft/recipe/fabrication/blue_solar_wafer.json rename to src/main/generated/data/galacticraft/recipes/fabrication/blue_solar_wafer.json index 66431e61b7..571f1384b9 100644 --- a/src/main/generated/data/galacticraft/recipe/fabrication/blue_solar_wafer.json +++ b/src/main/generated/data/galacticraft/recipes/fabrication/blue_solar_wafer.json @@ -4,7 +4,7 @@ "item": "minecraft:lapis_lazuli" }, "result": { - "count": 9, + "Count": 9, "id": "galacticraft:blue_solar_wafer" } } \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/fabrication/solar_array_wafer.json b/src/main/generated/data/galacticraft/recipes/fabrication/solar_array_wafer.json similarity index 91% rename from src/main/generated/data/galacticraft/recipe/fabrication/solar_array_wafer.json rename to src/main/generated/data/galacticraft/recipes/fabrication/solar_array_wafer.json index bec0cfa582..73c9617f42 100644 --- a/src/main/generated/data/galacticraft/recipe/fabrication/solar_array_wafer.json +++ b/src/main/generated/data/galacticraft/recipes/fabrication/solar_array_wafer.json @@ -4,7 +4,7 @@ "item": "galacticraft:solar_dust" }, "result": { - "count": 3, + "Count": 3, "id": "galacticraft:solar_array_wafer" } } \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/fluid_manipulator.json b/src/main/generated/data/galacticraft/recipes/fluid_manipulator.json new file mode 100644 index 0000000000..1d7b2c6754 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/fluid_manipulator.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "F": { + "item": "galacticraft:oxygen_fan" + }, + "M": { + "item": "galacticraft:meteoric_iron_ingot" + }, + "S": { + "item": "minecraft:slime_ball" + }, + "W": { + "item": "galacticraft:advanced_wafer" + } + }, + "pattern": [ + "MFM", + "SWS", + "MFM" + ], + "result": { + "item": "galacticraft:fluid_manipulator" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/fluid_pipe_walkway.json b/src/main/generated/data/galacticraft/recipes/fluid_pipe_walkway.json new file mode 100644 index 0000000000..6ab9fef26d --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/fluid_pipe_walkway.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "P": { + "item": "galacticraft:glass_fluid_pipe" + }, + "T": { + "item": "galacticraft:compressed_titanium" + } + }, + "pattern": [ + "TTT", + "PTP", + "PPP" + ], + "result": { + "count": 5, + "item": "galacticraft:fluid_pipe_walkway" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/fluid_pipe_walkway_shapeless.json b/src/main/generated/data/galacticraft/recipes/fluid_pipe_walkway_shapeless.json new file mode 100644 index 0000000000..9ae4e14878 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/fluid_pipe_walkway_shapeless.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:compressed_titanium" + }, + { + "item": "galacticraft:glass_fluid_pipe" + } + ], + "result": { + "item": "galacticraft:fluid_pipe_walkway" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipe/food_canner.json b/src/main/generated/data/galacticraft/recipes/food_canner.json similarity index 100% rename from src/main/generated/data/galacticraft/recipe/food_canner.json rename to src/main/generated/data/galacticraft/recipes/food_canner.json diff --git a/src/main/generated/data/galacticraft/recipes/frequency_module.json b/src/main/generated/data/galacticraft/recipes/frequency_module.json new file mode 100644 index 0000000000..26f007d4e7 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/frequency_module.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "galacticraft:compressed_aluminum" + }, + "I": { + "item": "galacticraft:compressed_iron" + }, + "P": { + "item": "minecraft:repeater" + }, + "R": { + "tag": "c:redstone_dusts" + }, + "W": { + "item": "galacticraft:basic_wafer" + } + }, + "pattern": [ + " A ", + "IPI", + "RWR" + ], + "result": { + "item": "galacticraft:frequency_module" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/fueling_pad.json b/src/main/generated/data/galacticraft/recipes/fueling_pad.json new file mode 100644 index 0000000000..e1535aedf1 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/fueling_pad.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "galacticraft:compressed_steel" + }, + "I": { + "item": "minecraft:iron_block" + } + }, + "pattern": [ + "CCC", + "III" + ], + "result": { + "count": 9, + "item": "galacticraft:fueling_pad" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/full_solar_panel.json b/src/main/generated/data/galacticraft/recipes/full_solar_panel.json new file mode 100644 index 0000000000..699c201062 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/full_solar_panel.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "M": { + "item": "galacticraft:single_solar_module" + }, + "W": { + "item": "galacticraft:aluminum_wire" + } + }, + "pattern": [ + "MMM", + "WWW", + "MMM" + ], + "result": { + "item": "galacticraft:full_solar_panel" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/glass_fluid_pipe.json b/src/main/generated/data/galacticraft/recipes/glass_fluid_pipe.json new file mode 100644 index 0000000000..80d2eb9238 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/glass_fluid_pipe.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "X": { + "item": "minecraft:glass_pane" + } + }, + "pattern": [ + "XXX", + " ", + "XXX" + ], + "result": { + "count": 6, + "item": "galacticraft:glass_fluid_pipe" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/glowstone_lantern.json b/src/main/generated/data/galacticraft/recipes/glowstone_lantern.json new file mode 100644 index 0000000000..efb54a80e8 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/glowstone_lantern.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "G": { + "item": "galacticraft:glowstone_torch" + }, + "I": { + "item": "minecraft:iron_nugget" + } + }, + "pattern": [ + "III", + "IGI", + "III" + ], + "result": { + "item": "galacticraft:glowstone_lantern" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/glowstone_torch.json b/src/main/generated/data/galacticraft/recipes/glowstone_torch.json new file mode 100644 index 0000000000..6165285fd4 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/glowstone_torch.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "G": { + "item": "minecraft:glowstone_dust" + }, + "S": { + "item": "minecraft:stick" + } + }, + "pattern": [ + "G", + "S" + ], + "result": { + "count": 4, + "item": "galacticraft:glowstone_torch" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/grating.json b/src/main/generated/data/galacticraft/recipes/grating.json new file mode 100644 index 0000000000..346fe2bf2a --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/grating.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "I": { + "item": "minecraft:iron_bars" + } + }, + "pattern": [ + "II", + "II" + ], + "result": { + "count": 4, + "item": "galacticraft:grating" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/gray_parachute.json b/src/main/generated/data/galacticraft/recipes/gray_parachute.json new file mode 100644 index 0000000000..575a261f5c --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/gray_parachute.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:white_parachute" + }, + { + "item": "minecraft:gray_dye" + } + ], + "result": { + "item": "galacticraft:gray_parachute" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/green_parachute.json b/src/main/generated/data/galacticraft/recipes/green_parachute.json new file mode 100644 index 0000000000..d64e647a86 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/green_parachute.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:white_parachute" + }, + { + "item": "minecraft:green_dye" + } + ], + "result": { + "item": "galacticraft:green_parachute" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/ground_beef.json b/src/main/generated/data/galacticraft/recipes/ground_beef.json new file mode 100644 index 0000000000..6b33bf17f3 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/ground_beef.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "minecraft:beef" + } + ], + "result": { + "count": 2, + "item": "galacticraft:ground_beef" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/heavy_duty_axe.json b/src/main/generated/data/galacticraft/recipes/heavy_duty_axe.json new file mode 100644 index 0000000000..1a7524e85b --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/heavy_duty_axe.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "S": { + "item": "galacticraft:compressed_steel" + }, + "W": { + "item": "minecraft:stick" + } + }, + "pattern": [ + "SS", + "SW", + " W" + ], + "result": { + "item": "galacticraft:heavy_duty_axe" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/heavy_duty_axe_flipped.json b/src/main/generated/data/galacticraft/recipes/heavy_duty_axe_flipped.json new file mode 100644 index 0000000000..12c6c0a08e --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/heavy_duty_axe_flipped.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "S": { + "item": "galacticraft:compressed_steel" + }, + "W": { + "item": "minecraft:stick" + } + }, + "pattern": [ + "SS", + "WS", + "W " + ], + "result": { + "item": "galacticraft:heavy_duty_axe" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/heavy_duty_boots.json b/src/main/generated/data/galacticraft/recipes/heavy_duty_boots.json new file mode 100644 index 0000000000..125104446d --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/heavy_duty_boots.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "P": { + "item": "galacticraft:heavy_plating" + } + }, + "pattern": [ + "P P", + "P P" + ], + "result": { + "item": "galacticraft:heavy_duty_boots" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/heavy_duty_chestplate.json b/src/main/generated/data/galacticraft/recipes/heavy_duty_chestplate.json new file mode 100644 index 0000000000..4ac79fb3a5 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/heavy_duty_chestplate.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "P": { + "item": "galacticraft:heavy_plating" + } + }, + "pattern": [ + "P P", + "PPP", + "PPP" + ], + "result": { + "item": "galacticraft:heavy_duty_chestplate" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/heavy_duty_helmet.json b/src/main/generated/data/galacticraft/recipes/heavy_duty_helmet.json new file mode 100644 index 0000000000..920016b22c --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/heavy_duty_helmet.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "P": { + "item": "galacticraft:heavy_plating" + } + }, + "pattern": [ + "PPP", + "P P" + ], + "result": { + "item": "galacticraft:heavy_duty_helmet" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/heavy_duty_hoe.json b/src/main/generated/data/galacticraft/recipes/heavy_duty_hoe.json new file mode 100644 index 0000000000..e7becb0f7f --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/heavy_duty_hoe.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "S": { + "item": "galacticraft:compressed_steel" + }, + "W": { + "item": "minecraft:stick" + } + }, + "pattern": [ + "SS", + " W", + " W" + ], + "result": { + "item": "galacticraft:heavy_duty_hoe" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/heavy_duty_hoe_flipped.json b/src/main/generated/data/galacticraft/recipes/heavy_duty_hoe_flipped.json new file mode 100644 index 0000000000..e31180fbf5 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/heavy_duty_hoe_flipped.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "S": { + "item": "galacticraft:compressed_steel" + }, + "W": { + "item": "minecraft:stick" + } + }, + "pattern": [ + "SS", + "W ", + "W " + ], + "result": { + "item": "galacticraft:heavy_duty_hoe" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/heavy_duty_leggings.json b/src/main/generated/data/galacticraft/recipes/heavy_duty_leggings.json new file mode 100644 index 0000000000..e4f409d94f --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/heavy_duty_leggings.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "P": { + "item": "galacticraft:heavy_plating" + } + }, + "pattern": [ + "PPP", + "P P", + "P P" + ], + "result": { + "item": "galacticraft:heavy_duty_leggings" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/heavy_duty_pickaxe.json b/src/main/generated/data/galacticraft/recipes/heavy_duty_pickaxe.json new file mode 100644 index 0000000000..4c8e10c2f7 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/heavy_duty_pickaxe.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "S": { + "item": "galacticraft:compressed_steel" + }, + "W": { + "item": "minecraft:stick" + } + }, + "pattern": [ + "SSS", + " W ", + " W " + ], + "result": { + "item": "galacticraft:heavy_duty_pickaxe" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/heavy_duty_shovel.json b/src/main/generated/data/galacticraft/recipes/heavy_duty_shovel.json new file mode 100644 index 0000000000..3535fc1dfe --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/heavy_duty_shovel.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "S": { + "item": "galacticraft:compressed_steel" + }, + "W": { + "item": "minecraft:stick" + } + }, + "pattern": [ + "S", + "W", + "W" + ], + "result": { + "item": "galacticraft:heavy_duty_shovel" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/heavy_duty_sword.json b/src/main/generated/data/galacticraft/recipes/heavy_duty_sword.json new file mode 100644 index 0000000000..7a10bbc773 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/heavy_duty_sword.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "S": { + "item": "galacticraft:compressed_steel" + }, + "W": { + "item": "minecraft:stick" + } + }, + "pattern": [ + "S", + "S", + "W" + ], + "result": { + "item": "galacticraft:heavy_duty_sword" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/hot_throwable_meteor_chunk_from_blasting.json b/src/main/generated/data/galacticraft/recipes/hot_throwable_meteor_chunk_from_blasting.json new file mode 100644 index 0000000000..9366246e52 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/hot_throwable_meteor_chunk_from_blasting.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:blasting", + "category": "misc", + "cookingtime": 100, + "experience": 0.7, + "ingredient": { + "item": "galacticraft:throwable_meteor_chunk" + }, + "result": "galacticraft:hot_throwable_meteor_chunk" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/hot_throwable_meteor_chunk_from_smelting.json b/src/main/generated/data/galacticraft/recipes/hot_throwable_meteor_chunk_from_smelting.json new file mode 100644 index 0000000000..40bf36a2b1 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/hot_throwable_meteor_chunk_from_smelting.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:smelting", + "category": "misc", + "cookingtime": 200, + "experience": 0.7, + "ingredient": { + "item": "galacticraft:throwable_meteor_chunk" + }, + "result": "galacticraft:hot_throwable_meteor_chunk" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/iron_decoration.json b/src/main/generated/data/galacticraft/recipes/iron_decoration.json new file mode 100644 index 0000000000..0b468caaea --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/iron_decoration.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:stone" + }, + "X": { + "item": "galacticraft:compressed_iron" + } + }, + "pattern": [ + "## ", + "##X" + ], + "result": { + "item": "galacticraft:iron_decoration" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/iron_decoration_slab.json b/src/main/generated/data/galacticraft/recipes/iron_decoration_slab.json new file mode 100644 index 0000000000..de2bb8e6c8 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/iron_decoration_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:iron_decoration" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:iron_decoration_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/iron_decoration_stairs.json b/src/main/generated/data/galacticraft/recipes/iron_decoration_stairs.json new file mode 100644 index 0000000000..1f1b94f331 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/iron_decoration_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:iron_decoration" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:iron_decoration_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/iron_decoration_wall.json b/src/main/generated/data/galacticraft/recipes/iron_decoration_wall.json new file mode 100644 index 0000000000..e87db7d19b --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/iron_decoration_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:iron_decoration" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:iron_decoration_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/iron_ingot_from_blasting_iron_shard.json b/src/main/generated/data/galacticraft/recipes/iron_ingot_from_blasting_iron_shard.json new file mode 100644 index 0000000000..7843363925 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/iron_ingot_from_blasting_iron_shard.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:blasting", + "category": "misc", + "cookingtime": 100, + "experience": 0.7, + "group": "iron_ingot", + "ingredient": { + "item": "galacticraft:iron_shard" + }, + "result": "minecraft:iron_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/iron_ingot_from_smelting_iron_shard.json b/src/main/generated/data/galacticraft/recipes/iron_ingot_from_smelting_iron_shard.json new file mode 100644 index 0000000000..534657cca8 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/iron_ingot_from_smelting_iron_shard.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:smelting", + "category": "misc", + "cookingtime": 200, + "experience": 0.7, + "group": "iron_ingot", + "ingredient": { + "item": "galacticraft:iron_shard" + }, + "result": "minecraft:iron_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/isothermal_fabric.json b/src/main/generated/data/galacticraft/recipes/isothermal_fabric.json new file mode 100644 index 0000000000..e2cba1c974 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/isothermal_fabric.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "D": { + "item": "galacticraft:desh_ingot" + }, + "T": { + "item": "galacticraft:thermal_cloth" + } + }, + "pattern": [ + "TDT" + ], + "result": { + "item": "galacticraft:isothermal_fabric" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/large_oxygen_tank.json b/src/main/generated/data/galacticraft/recipes/large_oxygen_tank.json new file mode 100644 index 0000000000..78d1a26f28 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/large_oxygen_tank.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "galacticraft:compressed_steel" + }, + "T": { + "item": "galacticraft:tin_canister" + }, + "W": { + "item": "minecraft:red_wool" + } + }, + "pattern": [ + "WWW", + "TTT", + "CCC" + ], + "result": { + "item": "galacticraft:large_oxygen_tank" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/lead_block.json b/src/main/generated/data/galacticraft/recipes/lead_block.json new file mode 100644 index 0000000000..575af69b05 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/lead_block.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:lead_ingot" + } + }, + "pattern": [ + "###", + "###", + "###" + ], + "result": { + "item": "galacticraft:lead_block" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/lead_ingot_from_blasting_galena_ore.json b/src/main/generated/data/galacticraft/recipes/lead_ingot_from_blasting_galena_ore.json new file mode 100644 index 0000000000..2a65a68e51 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/lead_ingot_from_blasting_galena_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:blasting", + "category": "misc", + "cookingtime": 100, + "experience": 0.7, + "group": "lead_ingot", + "ingredient": { + "item": "galacticraft:galena_ore" + }, + "result": "galacticraft:lead_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/lead_ingot_from_blasting_raw_lead.json b/src/main/generated/data/galacticraft/recipes/lead_ingot_from_blasting_raw_lead.json new file mode 100644 index 0000000000..d101c5bb8c --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/lead_ingot_from_blasting_raw_lead.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:blasting", + "category": "misc", + "cookingtime": 100, + "experience": 0.7, + "group": "lead_ingot", + "ingredient": { + "item": "galacticraft:raw_lead" + }, + "result": "galacticraft:lead_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/lead_ingot_from_block.json b/src/main/generated/data/galacticraft/recipes/lead_ingot_from_block.json new file mode 100644 index 0000000000..450c0bb412 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/lead_ingot_from_block.json @@ -0,0 +1,14 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "group": "lead_ingot", + "ingredients": [ + { + "item": "galacticraft:lead_block" + } + ], + "result": { + "count": 9, + "item": "galacticraft:lead_ingot" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/lead_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/recipes/lead_ingot_from_nuggets.json new file mode 100644 index 0000000000..3f4617d247 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/lead_ingot_from_nuggets.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "group": "lead_ingot", + "key": { + "#": { + "item": "galacticraft:lead_nugget" + } + }, + "pattern": [ + "###", + "###", + "###" + ], + "result": { + "item": "galacticraft:lead_ingot" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/lead_ingot_from_smelting_galena_ore.json b/src/main/generated/data/galacticraft/recipes/lead_ingot_from_smelting_galena_ore.json new file mode 100644 index 0000000000..0a39ea5dee --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/lead_ingot_from_smelting_galena_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:smelting", + "category": "misc", + "cookingtime": 200, + "experience": 0.7, + "group": "lead_ingot", + "ingredient": { + "item": "galacticraft:galena_ore" + }, + "result": "galacticraft:lead_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/lead_ingot_from_smelting_raw_lead.json b/src/main/generated/data/galacticraft/recipes/lead_ingot_from_smelting_raw_lead.json new file mode 100644 index 0000000000..73f394c3ba --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/lead_ingot_from_smelting_raw_lead.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:smelting", + "category": "misc", + "cookingtime": 200, + "experience": 0.7, + "group": "lead_ingot", + "ingredient": { + "item": "galacticraft:raw_lead" + }, + "result": "galacticraft:lead_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/lead_nugget.json b/src/main/generated/data/galacticraft/recipes/lead_nugget.json new file mode 100644 index 0000000000..2f18f3bb28 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/lead_nugget.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:lead_ingot" + } + ], + "result": { + "count": 9, + "item": "galacticraft:lead_nugget" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/light_blue_parachute.json b/src/main/generated/data/galacticraft/recipes/light_blue_parachute.json new file mode 100644 index 0000000000..59dd5687b9 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/light_blue_parachute.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:white_parachute" + }, + { + "item": "minecraft:light_blue_dye" + } + ], + "result": { + "item": "galacticraft:light_blue_parachute" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/light_gray_parachute.json b/src/main/generated/data/galacticraft/recipes/light_gray_parachute.json new file mode 100644 index 0000000000..72b869f1d1 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/light_gray_parachute.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:white_parachute" + }, + { + "item": "minecraft:light_gray_dye" + } + ], + "result": { + "item": "galacticraft:light_gray_parachute" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/lime_parachute.json b/src/main/generated/data/galacticraft/recipes/lime_parachute.json new file mode 100644 index 0000000000..bfcfd001e2 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/lime_parachute.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:white_parachute" + }, + { + "item": "minecraft:lime_dye" + } + ], + "result": { + "item": "galacticraft:lime_parachute" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/linear_light_panel.json b/src/main/generated/data/galacticraft/recipes/linear_light_panel.json new file mode 100644 index 0000000000..229c1b7173 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/linear_light_panel.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "G": { + "item": "galacticraft:glowstone_torch" + }, + "S": { + "item": "minecraft:glass_pane" + }, + "T": { + "item": "galacticraft:compressed_steel" + } + }, + "pattern": [ + "S S", + "SGS", + "STS" + ], + "result": { + "item": "galacticraft:linear_light_panel" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/lunar_sapphire_block.json b/src/main/generated/data/galacticraft/recipes/lunar_sapphire_block.json new file mode 100644 index 0000000000..6321bb5286 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/lunar_sapphire_block.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:lunar_sapphire" + } + }, + "pattern": [ + "###", + "###", + "###" + ], + "result": { + "item": "galacticraft:lunar_sapphire_block" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/lunar_sapphire_from_block.json b/src/main/generated/data/galacticraft/recipes/lunar_sapphire_from_block.json new file mode 100644 index 0000000000..454568e171 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/lunar_sapphire_from_block.json @@ -0,0 +1,14 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "group": "lunar_sapphire", + "ingredients": [ + { + "item": "galacticraft:lunar_sapphire_block" + } + ], + "result": { + "count": 9, + "item": "galacticraft:lunar_sapphire" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/lunaslate_slab.json b/src/main/generated/data/galacticraft/recipes/lunaslate_slab.json new file mode 100644 index 0000000000..93dbfadae4 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/lunaslate_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:lunaslate" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:lunaslate_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/lunaslate_stairs.json b/src/main/generated/data/galacticraft/recipes/lunaslate_stairs.json new file mode 100644 index 0000000000..0adc3fd0f0 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/lunaslate_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:lunaslate" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:lunaslate_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/lunaslate_wall.json b/src/main/generated/data/galacticraft/recipes/lunaslate_wall.json new file mode 100644 index 0000000000..317b014cf4 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/lunaslate_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:lunaslate" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:lunaslate_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/magenta_parachute.json b/src/main/generated/data/galacticraft/recipes/magenta_parachute.json new file mode 100644 index 0000000000..491ecb1663 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/magenta_parachute.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:white_parachute" + }, + { + "item": "minecraft:magenta_dye" + } + ], + "result": { + "item": "galacticraft:magenta_parachute" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/mars_cobblestone_slab.json b/src/main/generated/data/galacticraft/recipes/mars_cobblestone_slab.json new file mode 100644 index 0000000000..9b85a5cb3c --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/mars_cobblestone_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:mars_cobblestone" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:mars_cobblestone_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/mars_cobblestone_stairs.json b/src/main/generated/data/galacticraft/recipes/mars_cobblestone_stairs.json new file mode 100644 index 0000000000..c621803ec3 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/mars_cobblestone_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:mars_cobblestone" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:mars_cobblestone_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/mars_cobblestone_wall.json b/src/main/generated/data/galacticraft/recipes/mars_cobblestone_wall.json new file mode 100644 index 0000000000..d8507ab7f2 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/mars_cobblestone_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:mars_cobblestone" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:mars_cobblestone_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/mars_stone_slab.json b/src/main/generated/data/galacticraft/recipes/mars_stone_slab.json new file mode 100644 index 0000000000..b54824dfd5 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/mars_stone_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:mars_stone" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:mars_stone_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/mars_stone_stairs.json b/src/main/generated/data/galacticraft/recipes/mars_stone_stairs.json new file mode 100644 index 0000000000..e9333d4d02 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/mars_stone_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:mars_stone" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:mars_stone_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/mars_stone_wall.json b/src/main/generated/data/galacticraft/recipes/mars_stone_wall.json new file mode 100644 index 0000000000..74c2635c68 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/mars_stone_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:mars_stone" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:mars_stone_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/medium_oxygen_tank.json b/src/main/generated/data/galacticraft/recipes/medium_oxygen_tank.json new file mode 100644 index 0000000000..550e25d474 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/medium_oxygen_tank.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "galacticraft:compressed_tin" + }, + "T": { + "item": "galacticraft:tin_canister" + }, + "W": { + "item": "minecraft:orange_wool" + } + }, + "pattern": [ + "WW", + "TT", + "CC" + ], + "result": { + "item": "galacticraft:medium_oxygen_tank" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/meteoric_iron_block.json b/src/main/generated/data/galacticraft/recipes/meteoric_iron_block.json new file mode 100644 index 0000000000..35da493d24 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/meteoric_iron_block.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:meteoric_iron_ingot" + } + }, + "pattern": [ + "###", + "###", + "###" + ], + "result": { + "item": "galacticraft:meteoric_iron_block" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/meteoric_iron_decoration.json b/src/main/generated/data/galacticraft/recipes/meteoric_iron_decoration.json new file mode 100644 index 0000000000..f32675ea56 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/meteoric_iron_decoration.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:stone" + }, + "X": { + "item": "galacticraft:compressed_meteoric_iron" + } + }, + "pattern": [ + "## ", + "##X" + ], + "result": { + "item": "galacticraft:meteoric_iron_decoration" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/meteoric_iron_decoration_slab.json b/src/main/generated/data/galacticraft/recipes/meteoric_iron_decoration_slab.json new file mode 100644 index 0000000000..b0141ebc33 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/meteoric_iron_decoration_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:meteoric_iron_decoration" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:meteoric_iron_decoration_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/meteoric_iron_decoration_stairs.json b/src/main/generated/data/galacticraft/recipes/meteoric_iron_decoration_stairs.json new file mode 100644 index 0000000000..ab6d3d37f9 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/meteoric_iron_decoration_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:meteoric_iron_decoration" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:meteoric_iron_decoration_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/meteoric_iron_decoration_wall.json b/src/main/generated/data/galacticraft/recipes/meteoric_iron_decoration_wall.json new file mode 100644 index 0000000000..9308516021 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/meteoric_iron_decoration_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:meteoric_iron_decoration" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:meteoric_iron_decoration_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/meteoric_iron_ingot_from_blasting_raw_meteoric_iron.json b/src/main/generated/data/galacticraft/recipes/meteoric_iron_ingot_from_blasting_raw_meteoric_iron.json new file mode 100644 index 0000000000..74b068f2b9 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/meteoric_iron_ingot_from_blasting_raw_meteoric_iron.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:blasting", + "category": "misc", + "cookingtime": 100, + "experience": 0.7, + "group": "meteoric_iron_ingot", + "ingredient": { + "item": "galacticraft:raw_meteoric_iron" + }, + "result": "galacticraft:meteoric_iron_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/meteoric_iron_ingot_from_block.json b/src/main/generated/data/galacticraft/recipes/meteoric_iron_ingot_from_block.json new file mode 100644 index 0000000000..62fbbf7f15 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/meteoric_iron_ingot_from_block.json @@ -0,0 +1,14 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "group": "meteoric_iron_ingot", + "ingredients": [ + { + "item": "galacticraft:meteoric_iron_block" + } + ], + "result": { + "count": 9, + "item": "galacticraft:meteoric_iron_ingot" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/meteoric_iron_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/recipes/meteoric_iron_ingot_from_nuggets.json new file mode 100644 index 0000000000..8b607f6fd9 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/meteoric_iron_ingot_from_nuggets.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "group": "meteoric_iron_ingot", + "key": { + "#": { + "item": "galacticraft:meteoric_iron_nugget" + } + }, + "pattern": [ + "###", + "###", + "###" + ], + "result": { + "item": "galacticraft:meteoric_iron_ingot" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/meteoric_iron_ingot_from_smelting_raw_meteoric_iron.json b/src/main/generated/data/galacticraft/recipes/meteoric_iron_ingot_from_smelting_raw_meteoric_iron.json new file mode 100644 index 0000000000..85f984b135 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/meteoric_iron_ingot_from_smelting_raw_meteoric_iron.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:smelting", + "category": "misc", + "cookingtime": 200, + "experience": 0.7, + "group": "meteoric_iron_ingot", + "ingredient": { + "item": "galacticraft:raw_meteoric_iron" + }, + "result": "galacticraft:meteoric_iron_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/meteoric_iron_nugget.json b/src/main/generated/data/galacticraft/recipes/meteoric_iron_nugget.json new file mode 100644 index 0000000000..965a503c31 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/meteoric_iron_nugget.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:meteoric_iron_ingot" + } + ], + "result": { + "count": 9, + "item": "galacticraft:meteoric_iron_nugget" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/moon_basalt_brick_slab.json b/src/main/generated/data/galacticraft/recipes/moon_basalt_brick_slab.json new file mode 100644 index 0000000000..a503a29d65 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/moon_basalt_brick_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:moon_basalt_brick" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:moon_basalt_brick_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/moon_basalt_brick_stairs.json b/src/main/generated/data/galacticraft/recipes/moon_basalt_brick_stairs.json new file mode 100644 index 0000000000..83cc442a10 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/moon_basalt_brick_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:moon_basalt_brick" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:moon_basalt_brick_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/moon_basalt_brick_wall.json b/src/main/generated/data/galacticraft/recipes/moon_basalt_brick_wall.json new file mode 100644 index 0000000000..d50b503c56 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/moon_basalt_brick_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:moon_basalt_brick" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:moon_basalt_brick_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/moon_basalt_slab.json b/src/main/generated/data/galacticraft/recipes/moon_basalt_slab.json new file mode 100644 index 0000000000..331a3f9ccd --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/moon_basalt_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:moon_basalt" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:moon_basalt_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/moon_basalt_stairs.json b/src/main/generated/data/galacticraft/recipes/moon_basalt_stairs.json new file mode 100644 index 0000000000..ab07abde12 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/moon_basalt_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:moon_basalt" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:moon_basalt_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/moon_basalt_wall.json b/src/main/generated/data/galacticraft/recipes/moon_basalt_wall.json new file mode 100644 index 0000000000..4e7c8b2953 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/moon_basalt_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:moon_basalt" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:moon_basalt_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/moon_cheese_block.json b/src/main/generated/data/galacticraft/recipes/moon_cheese_block.json new file mode 100644 index 0000000000..594c8f2e9d --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/moon_cheese_block.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "galacticraft:cheese_curd" + }, + "M": { + "item": "minecraft:milk_bucket" + } + }, + "pattern": [ + "CCC", + "CMC", + "CCC" + ], + "result": { + "item": "galacticraft:moon_cheese_block" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/nose_cone.json b/src/main/generated/data/galacticraft/recipes/nose_cone.json new file mode 100644 index 0000000000..51b3b8a05e --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/nose_cone.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "P": { + "item": "galacticraft:heavy_plating" + }, + "R": { + "item": "minecraft:redstone_torch" + } + }, + "pattern": [ + " R ", + " P ", + "P P" + ], + "result": { + "item": "galacticraft:nose_cone" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/orange_parachute.json b/src/main/generated/data/galacticraft/recipes/orange_parachute.json new file mode 100644 index 0000000000..faf7f419e3 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/orange_parachute.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:white_parachute" + }, + { + "item": "minecraft:orange_dye" + } + ], + "result": { + "item": "galacticraft:orange_parachute" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/orion_drive.json b/src/main/generated/data/galacticraft/recipes/orion_drive.json new file mode 100644 index 0000000000..65c1672072 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/orion_drive.json @@ -0,0 +1,41 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "item": "galacticraft:beam_core" + }, + "C": { + "item": "minecraft:coal_ore" + }, + "D": { + "item": "minecraft:diamond_ore" + }, + "E": { + "item": "galacticraft:moon_cheese_block" + }, + "G": { + "item": "minecraft:gold_ore" + }, + "I": { + "item": "galacticraft:ilmenite_ore" + }, + "L": { + "item": "minecraft:lapis_ore" + }, + "R": { + "item": "minecraft:redstone_ore" + }, + "S": { + "item": "galacticraft:desh_ore" + } + }, + "pattern": [ + "DLG", + "RBC", + "ESI" + ], + "result": { + "item": "galacticraft:orion_drive" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/oxygen_bubble_distributor.json b/src/main/generated/data/galacticraft/recipes/oxygen_bubble_distributor.json new file mode 100644 index 0000000000..0835415ca2 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/oxygen_bubble_distributor.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "galacticraft:compressed_aluminum" + }, + "F": { + "item": "galacticraft:oxygen_fan" + }, + "S": { + "item": "galacticraft:compressed_steel" + }, + "V": { + "item": "galacticraft:oxygen_vent" + } + }, + "pattern": [ + "SFS", + "VAV", + "SFS" + ], + "result": { + "item": "galacticraft:oxygen_bubble_distributor" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/oxygen_collector.json b/src/main/generated/data/galacticraft/recipes/oxygen_collector.json new file mode 100644 index 0000000000..73883aeb3f --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/oxygen_collector.json @@ -0,0 +1,32 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "galacticraft:compressed_aluminum" + }, + "C": { + "item": "galacticraft:oxygen_concentrator" + }, + "F": { + "item": "galacticraft:oxygen_fan" + }, + "S": { + "item": "galacticraft:compressed_steel" + }, + "T": { + "item": "galacticraft:tin_canister" + }, + "V": { + "item": "galacticraft:oxygen_vent" + } + }, + "pattern": [ + "SSS", + "FTV", + "ACA" + ], + "result": { + "item": "galacticraft:oxygen_collector" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/oxygen_compressor.json b/src/main/generated/data/galacticraft/recipes/oxygen_compressor.json new file mode 100644 index 0000000000..586c20288b --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/oxygen_compressor.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "galacticraft:compressed_aluminum" + }, + "B": { + "item": "galacticraft:compressed_bronze" + }, + "C": { + "item": "galacticraft:oxygen_concentrator" + }, + "S": { + "item": "galacticraft:compressed_steel" + } + }, + "pattern": [ + "SAS", + "ACA", + "SBS" + ], + "result": { + "item": "galacticraft:oxygen_compressor" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/oxygen_concentrator.json b/src/main/generated/data/galacticraft/recipes/oxygen_concentrator.json new file mode 100644 index 0000000000..3cfcc7fb1e --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/oxygen_concentrator.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "W": { + "tag": "c:compressed_tin" + }, + "X": { + "item": "galacticraft:oxygen_vent" + }, + "Y": { + "item": "galacticraft:tin_canister" + }, + "Z": { + "tag": "c:compressed_steel" + } + }, + "pattern": [ + "ZWZ", + "WYW", + "ZXZ" + ], + "result": { + "item": "galacticraft:oxygen_concentrator" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/oxygen_decompressor.json b/src/main/generated/data/galacticraft/recipes/oxygen_decompressor.json new file mode 100644 index 0000000000..2094da8674 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/oxygen_decompressor.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "galacticraft:compressed_aluminum" + }, + "C": { + "item": "galacticraft:oxygen_concentrator" + }, + "F": { + "item": "galacticraft:oxygen_fan" + }, + "R": { + "item": "minecraft:redstone_torch" + }, + "S": { + "item": "galacticraft:compressed_steel" + } + }, + "pattern": [ + "SFS", + "ACA", + "SRS" + ], + "result": { + "item": "galacticraft:oxygen_decompressor" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/oxygen_fan.json b/src/main/generated/data/galacticraft/recipes/oxygen_fan.json new file mode 100644 index 0000000000..12e17fce8d --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/oxygen_fan.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "R": { + "tag": "c:redstone_dusts" + }, + "S": { + "item": "galacticraft:compressed_steel" + }, + "W": { + "item": "galacticraft:basic_wafer" + } + }, + "pattern": [ + "S S", + " W ", + "SRS" + ], + "result": { + "item": "galacticraft:oxygen_fan" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/oxygen_gear.json b/src/main/generated/data/galacticraft/recipes/oxygen_gear.json new file mode 100644 index 0000000000..8f508427d8 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/oxygen_gear.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "X": { + "item": "galacticraft:oxygen_concentrator" + }, + "Y": { + "item": "galacticraft:glass_fluid_pipe" + } + }, + "pattern": [ + " Y ", + "YXY", + "Y Y" + ], + "result": { + "item": "galacticraft:oxygen_gear" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/oxygen_mask.json b/src/main/generated/data/galacticraft/recipes/oxygen_mask.json new file mode 100644 index 0000000000..fd90fec836 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/oxygen_mask.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "G": { + "item": "minecraft:glass_pane" + }, + "H": { + "item": "minecraft:iron_helmet" + } + }, + "pattern": [ + "GGG", + "GHG", + "GGG" + ], + "result": { + "item": "galacticraft:oxygen_mask" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/oxygen_sealer.json b/src/main/generated/data/galacticraft/recipes/oxygen_sealer.json new file mode 100644 index 0000000000..ebd60648bf --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/oxygen_sealer.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "galacticraft:compressed_aluminum" + }, + "F": { + "item": "galacticraft:oxygen_fan" + }, + "S": { + "item": "galacticraft:compressed_steel" + }, + "V": { + "item": "galacticraft:oxygen_vent" + } + }, + "pattern": [ + "ASA", + "VFV", + "ASA" + ], + "result": { + "item": "galacticraft:oxygen_sealer" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/oxygen_storage_module.json b/src/main/generated/data/galacticraft/recipes/oxygen_storage_module.json new file mode 100644 index 0000000000..cece3e6840 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/oxygen_storage_module.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "S": { + "item": "galacticraft:compressed_steel" + }, + "T": { + "item": "galacticraft:large_oxygen_tank" + } + }, + "pattern": [ + "SSS", + "TTT", + "SSS" + ], + "result": { + "item": "galacticraft:oxygen_storage_module" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/oxygen_vent.json b/src/main/generated/data/galacticraft/recipes/oxygen_vent.json new file mode 100644 index 0000000000..191b03916c --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/oxygen_vent.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "S": { + "item": "galacticraft:compressed_steel" + }, + "T": { + "item": "galacticraft:compressed_tin" + } + }, + "pattern": [ + "TT", + "TS" + ], + "result": { + "item": "galacticraft:oxygen_vent" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/pink_parachute.json b/src/main/generated/data/galacticraft/recipes/pink_parachute.json new file mode 100644 index 0000000000..4c987d6236 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/pink_parachute.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:white_parachute" + }, + { + "item": "minecraft:pink_dye" + } + ], + "result": { + "item": "galacticraft:pink_parachute" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/purple_parachute.json b/src/main/generated/data/galacticraft/recipes/purple_parachute.json new file mode 100644 index 0000000000..05753f75cd --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/purple_parachute.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:white_parachute" + }, + { + "item": "minecraft:purple_dye" + } + ], + "result": { + "item": "galacticraft:purple_parachute" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/red_parachute.json b/src/main/generated/data/galacticraft/recipes/red_parachute.json new file mode 100644 index 0000000000..aa11d6b03e --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/red_parachute.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:white_parachute" + }, + { + "item": "minecraft:red_dye" + } + ], + "result": { + "item": "galacticraft:red_parachute" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/refinery.json b/src/main/generated/data/galacticraft/recipes/refinery.json new file mode 100644 index 0000000000..edd49b440b --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/refinery.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "galacticraft:copper_canister" + }, + "F": { + "item": "minecraft:blast_furnace" + }, + "S": { + "item": "galacticraft:compressed_steel" + } + }, + "pattern": [ + "SCS", + "SCS", + "SFS" + ], + "result": { + "item": "galacticraft:refinery" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/rocket_engine.json b/src/main/generated/data/galacticraft/recipes/rocket_engine.json new file mode 100644 index 0000000000..4a74aaec49 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/rocket_engine.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "item": "minecraft:stone_button" + }, + "F": { + "item": "minecraft:flint_and_steel" + }, + "P": { + "item": "galacticraft:heavy_plating" + }, + "T": { + "item": "galacticraft:tin_canister" + }, + "V": { + "item": "galacticraft:oxygen_vent" + } + }, + "pattern": [ + " FB", + "PTP", + "PVP" + ], + "result": { + "item": "galacticraft:rocket_engine" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/rocket_fin.json b/src/main/generated/data/galacticraft/recipes/rocket_fin.json new file mode 100644 index 0000000000..049efe1376 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/rocket_fin.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "P": { + "item": "galacticraft:heavy_plating" + }, + "S": { + "tag": "c:compressed_steel" + } + }, + "pattern": [ + " S ", + "PSP", + "P P" + ], + "result": { + "item": "galacticraft:rocket_fin" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/rocket_launch_pad.json b/src/main/generated/data/galacticraft/recipes/rocket_launch_pad.json new file mode 100644 index 0000000000..022a919143 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/rocket_launch_pad.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "galacticraft:compressed_iron" + }, + "I": { + "item": "minecraft:iron_block" + } + }, + "pattern": [ + "CCC", + "III" + ], + "result": { + "count": 9, + "item": "galacticraft:rocket_launch_pad" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/rocket_workbench.json b/src/main/generated/data/galacticraft/recipes/rocket_workbench.json new file mode 100644 index 0000000000..3a8c2e83f8 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/rocket_workbench.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:crafting_table" + }, + "L": { + "item": "minecraft:lever" + }, + "R": { + "item": "minecraft:redstone_torch" + }, + "S": { + "item": "galacticraft:compressed_steel" + }, + "W": { + "item": "galacticraft:advanced_wafer" + } + }, + "pattern": [ + "SCS", + "LWL", + "SRS" + ], + "result": { + "item": "galacticraft:rocket_workbench" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/sealable_aluminum_wire.json b/src/main/generated/data/galacticraft/recipes/sealable_aluminum_wire.json new file mode 100644 index 0000000000..de4441439e --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/sealable_aluminum_wire.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "T": { + "item": "galacticraft:tin_decoration" + }, + "W": { + "item": "galacticraft:aluminum_wire" + } + }, + "pattern": [ + "TWT" + ], + "result": { + "count": 6, + "item": "galacticraft:sealable_aluminum_wire" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/sensor_glasses.json b/src/main/generated/data/galacticraft/recipes/sensor_glasses.json new file mode 100644 index 0000000000..e7cb0cfa21 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/sensor_glasses.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "D": { + "tag": "c:diamonds" + }, + "L": { + "item": "galacticraft:sensor_lens" + }, + "M": { + "item": "galacticraft:meteoric_iron_ingot" + }, + "S": { + "item": "minecraft:string" + } + }, + "pattern": [ + "SDS", + "S S", + "LML" + ], + "result": { + "item": "galacticraft:sensor_glasses" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/sensor_lens.json b/src/main/generated/data/galacticraft/recipes/sensor_lens.json new file mode 100644 index 0000000000..53d78b8575 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/sensor_lens.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "F": { + "item": "galacticraft:compressed_meteoric_iron" + }, + "P": { + "tag": "c:glass_panes" + }, + "R": { + "tag": "c:redstone_dusts" + } + }, + "pattern": [ + "RPR", + "PFP", + "RPR" + ], + "result": { + "item": "galacticraft:sensor_lens" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/single_solar_module.json b/src/main/generated/data/galacticraft/recipes/single_solar_module.json new file mode 100644 index 0000000000..19a597679e --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/single_solar_module.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "G": { + "tag": "c:glass_blocks" + }, + "S": { + "item": "galacticraft:solar_array_wafer" + }, + "W": { + "item": "galacticraft:aluminum_wire" + } + }, + "pattern": [ + "GGG", + "SSS", + "WWW" + ], + "result": { + "count": 2, + "item": "galacticraft:single_solar_module" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/small_oxygen_tank.json b/src/main/generated/data/galacticraft/recipes/small_oxygen_tank.json new file mode 100644 index 0000000000..b320a32ac4 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/small_oxygen_tank.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "galacticraft:compressed_copper" + }, + "T": { + "item": "galacticraft:tin_canister" + }, + "W": { + "item": "minecraft:lime_wool" + } + }, + "pattern": [ + "W", + "T", + "C" + ], + "result": { + "item": "galacticraft:small_oxygen_tank" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/spotlight_light_panel.json b/src/main/generated/data/galacticraft/recipes/spotlight_light_panel.json new file mode 100644 index 0000000000..d932785348 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/spotlight_light_panel.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "G": { + "item": "galacticraft:glowstone_torch" + }, + "S": { + "item": "minecraft:glass_pane" + }, + "T": { + "item": "galacticraft:compressed_steel" + } + }, + "pattern": [ + "S S", + " G ", + "STS" + ], + "result": { + "item": "galacticraft:spotlight_light_panel" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/square_light_panel.json b/src/main/generated/data/galacticraft/recipes/square_light_panel.json new file mode 100644 index 0000000000..d8f506d946 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/square_light_panel.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "G": { + "item": "galacticraft:glowstone_torch" + }, + "S": { + "item": "minecraft:glass_pane" + }, + "T": { + "item": "galacticraft:compressed_steel" + } + }, + "pattern": [ + "SSS", + "SGS", + "STS" + ], + "result": { + "item": "galacticraft:square_light_panel" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/standard_wrench.json b/src/main/generated/data/galacticraft/recipes/standard_wrench.json new file mode 100644 index 0000000000..1fed6671d1 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/standard_wrench.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "item": "galacticraft:compressed_bronze" + }, + "S": { + "item": "galacticraft:compressed_steel" + } + }, + "pattern": [ + " S", + " B ", + "B " + ], + "result": { + "item": "galacticraft:standard_wrench" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/steel_decoration.json b/src/main/generated/data/galacticraft/recipes/steel_decoration.json new file mode 100644 index 0000000000..5c29a60e1c --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/steel_decoration.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:stone" + }, + "X": { + "item": "galacticraft:compressed_steel" + } + }, + "pattern": [ + "## ", + "##X" + ], + "result": { + "item": "galacticraft:steel_decoration" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/steel_decoration_slab.json b/src/main/generated/data/galacticraft/recipes/steel_decoration_slab.json new file mode 100644 index 0000000000..d39c8471dd --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/steel_decoration_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:steel_decoration" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:steel_decoration_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/steel_decoration_stairs.json b/src/main/generated/data/galacticraft/recipes/steel_decoration_stairs.json new file mode 100644 index 0000000000..87b387655f --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/steel_decoration_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:steel_decoration" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:steel_decoration_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/steel_decoration_wall.json b/src/main/generated/data/galacticraft/recipes/steel_decoration_wall.json new file mode 100644 index 0000000000..fdfe2869af --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/steel_decoration_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:steel_decoration" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:steel_decoration_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/steel_pole.json b/src/main/generated/data/galacticraft/recipes/steel_pole.json new file mode 100644 index 0000000000..d5658ccc37 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/steel_pole.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "I": { + "item": "galacticraft:compressed_steel" + } + }, + "pattern": [ + "I", + "I", + "I" + ], + "result": { + "item": "galacticraft:steel_pole" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/thermal_cloth.json b/src/main/generated/data/galacticraft/recipes/thermal_cloth.json new file mode 100644 index 0000000000..2343f37eee --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/thermal_cloth.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "R": { + "tag": "c:redstone_dusts" + }, + "W": { + "tag": "minecraft:wool" + } + }, + "pattern": [ + " W ", + "WRW", + " W " + ], + "result": { + "item": "galacticraft:thermal_cloth" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/thermal_padding_boots.json b/src/main/generated/data/galacticraft/recipes/thermal_padding_boots.json new file mode 100644 index 0000000000..e84d58c866 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/thermal_padding_boots.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "galacticraft:thermal_cloth" + } + }, + "pattern": [ + "C C", + "C C" + ], + "result": { + "item": "galacticraft:thermal_padding_boots" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/thermal_padding_chestpiece.json b/src/main/generated/data/galacticraft/recipes/thermal_padding_chestpiece.json new file mode 100644 index 0000000000..3f11e6dcb8 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/thermal_padding_chestpiece.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "galacticraft:thermal_cloth" + } + }, + "pattern": [ + "C C", + "CCC", + "CCC" + ], + "result": { + "item": "galacticraft:thermal_padding_chestpiece" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/thermal_padding_helmet.json b/src/main/generated/data/galacticraft/recipes/thermal_padding_helmet.json new file mode 100644 index 0000000000..e60ffce498 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/thermal_padding_helmet.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "galacticraft:thermal_cloth" + } + }, + "pattern": [ + "CCC", + "C C" + ], + "result": { + "item": "galacticraft:thermal_padding_helmet" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/thermal_padding_leggings.json b/src/main/generated/data/galacticraft/recipes/thermal_padding_leggings.json new file mode 100644 index 0000000000..da29135539 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/thermal_padding_leggings.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "galacticraft:thermal_cloth" + } + }, + "pattern": [ + "CCC", + "C C", + "C C" + ], + "result": { + "item": "galacticraft:thermal_padding_leggings" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/throwable_meteor_chunk.json b/src/main/generated/data/galacticraft/recipes/throwable_meteor_chunk.json new file mode 100644 index 0000000000..3c28da5988 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/throwable_meteor_chunk.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "equipment", + "ingredients": [ + { + "item": "galacticraft:raw_meteoric_iron" + } + ], + "result": { + "count": 3, + "item": "galacticraft:throwable_meteor_chunk" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/tin_canister.json b/src/main/generated/data/galacticraft/recipes/tin_canister.json new file mode 100644 index 0000000000..8ba7e07e42 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/tin_canister.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "X": { + "tag": "c:tin_ingots" + } + }, + "pattern": [ + "X X", + "X X", + "XXX" + ], + "result": { + "count": 2, + "item": "galacticraft:tin_canister" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/tin_decoration.json b/src/main/generated/data/galacticraft/recipes/tin_decoration.json new file mode 100644 index 0000000000..6d64394880 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/tin_decoration.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:stone" + }, + "X": { + "item": "galacticraft:compressed_tin" + } + }, + "pattern": [ + "## ", + "##X" + ], + "result": { + "item": "galacticraft:tin_decoration" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/tin_decoration_slab.json b/src/main/generated/data/galacticraft/recipes/tin_decoration_slab.json new file mode 100644 index 0000000000..2102ac8334 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/tin_decoration_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:tin_decoration" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:tin_decoration_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/tin_decoration_stairs.json b/src/main/generated/data/galacticraft/recipes/tin_decoration_stairs.json new file mode 100644 index 0000000000..b5a8ab6ecc --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/tin_decoration_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:tin_decoration" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:tin_decoration_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/tin_decoration_wall.json b/src/main/generated/data/galacticraft/recipes/tin_decoration_wall.json new file mode 100644 index 0000000000..d338d8881a --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/tin_decoration_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:tin_decoration" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:tin_decoration_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/tin_ingot_from_blasting_deepslate_tin_ore.json b/src/main/generated/data/galacticraft/recipes/tin_ingot_from_blasting_deepslate_tin_ore.json new file mode 100644 index 0000000000..05a2f4d09f --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/tin_ingot_from_blasting_deepslate_tin_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:blasting", + "category": "misc", + "cookingtime": 100, + "experience": 0.7, + "group": "tin_ingot", + "ingredient": { + "item": "galacticraft:deepslate_tin_ore" + }, + "result": "galacticraft:tin_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/tin_ingot_from_blasting_moon_tin_ore.json b/src/main/generated/data/galacticraft/recipes/tin_ingot_from_blasting_moon_tin_ore.json new file mode 100644 index 0000000000..f5c495c24e --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/tin_ingot_from_blasting_moon_tin_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:blasting", + "category": "misc", + "cookingtime": 100, + "experience": 0.7, + "group": "tin_ingot", + "ingredient": { + "item": "galacticraft:moon_tin_ore" + }, + "result": "galacticraft:tin_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/tin_ingot_from_blasting_raw_tin.json b/src/main/generated/data/galacticraft/recipes/tin_ingot_from_blasting_raw_tin.json new file mode 100644 index 0000000000..9afb9e80c2 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/tin_ingot_from_blasting_raw_tin.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:blasting", + "category": "misc", + "cookingtime": 100, + "experience": 0.7, + "group": "tin_ingot", + "ingredient": { + "item": "galacticraft:raw_tin" + }, + "result": "galacticraft:tin_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/tin_ingot_from_blasting_tin_ore.json b/src/main/generated/data/galacticraft/recipes/tin_ingot_from_blasting_tin_ore.json new file mode 100644 index 0000000000..ac28f19750 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/tin_ingot_from_blasting_tin_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:blasting", + "category": "misc", + "cookingtime": 100, + "experience": 0.7, + "group": "tin_ingot", + "ingredient": { + "item": "galacticraft:tin_ore" + }, + "result": "galacticraft:tin_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/tin_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/recipes/tin_ingot_from_nuggets.json new file mode 100644 index 0000000000..429fca6103 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/tin_ingot_from_nuggets.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "group": "tin_ingot", + "key": { + "#": { + "item": "galacticraft:tin_nugget" + } + }, + "pattern": [ + "###", + "###", + "###" + ], + "result": { + "item": "galacticraft:tin_ingot" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/tin_ingot_from_smelting_deepslate_tin_ore.json b/src/main/generated/data/galacticraft/recipes/tin_ingot_from_smelting_deepslate_tin_ore.json new file mode 100644 index 0000000000..916a1e1dcc --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/tin_ingot_from_smelting_deepslate_tin_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:smelting", + "category": "misc", + "cookingtime": 200, + "experience": 0.7, + "group": "tin_ingot", + "ingredient": { + "item": "galacticraft:deepslate_tin_ore" + }, + "result": "galacticraft:tin_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/tin_ingot_from_smelting_moon_tin_ore.json b/src/main/generated/data/galacticraft/recipes/tin_ingot_from_smelting_moon_tin_ore.json new file mode 100644 index 0000000000..3bd9c81bc9 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/tin_ingot_from_smelting_moon_tin_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:smelting", + "category": "misc", + "cookingtime": 200, + "experience": 0.7, + "group": "tin_ingot", + "ingredient": { + "item": "galacticraft:moon_tin_ore" + }, + "result": "galacticraft:tin_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/tin_ingot_from_smelting_raw_tin.json b/src/main/generated/data/galacticraft/recipes/tin_ingot_from_smelting_raw_tin.json new file mode 100644 index 0000000000..40c083add4 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/tin_ingot_from_smelting_raw_tin.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:smelting", + "category": "misc", + "cookingtime": 200, + "experience": 0.7, + "group": "tin_ingot", + "ingredient": { + "item": "galacticraft:raw_tin" + }, + "result": "galacticraft:tin_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/tin_ingot_from_smelting_tin_ore.json b/src/main/generated/data/galacticraft/recipes/tin_ingot_from_smelting_tin_ore.json new file mode 100644 index 0000000000..8f8be5ef4e --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/tin_ingot_from_smelting_tin_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:smelting", + "category": "misc", + "cookingtime": 200, + "experience": 0.7, + "group": "tin_ingot", + "ingredient": { + "item": "galacticraft:tin_ore" + }, + "result": "galacticraft:tin_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/tin_ladder.json b/src/main/generated/data/galacticraft/recipes/tin_ladder.json new file mode 100644 index 0000000000..f19839f382 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/tin_ladder.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "T": { + "item": "galacticraft:tin_ingot" + } + }, + "pattern": [ + "T T", + "TTT", + "T T" + ], + "result": { + "count": 6, + "item": "galacticraft:tin_ladder" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/tin_nugget.json b/src/main/generated/data/galacticraft/recipes/tin_nugget.json new file mode 100644 index 0000000000..790768ab5a --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/tin_nugget.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:tin_ingot" + } + ], + "result": { + "count": 9, + "item": "galacticraft:tin_nugget" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_axe_smithing.json b/src/main/generated/data/galacticraft/recipes/titanium_axe_smithing.json new file mode 100644 index 0000000000..b7548cd567 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_axe_smithing.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:smithing_transform", + "addition": { + "item": "galacticraft:compressed_titanium" + }, + "base": { + "item": "galacticraft:desh_axe" + }, + "result": { + "item": "galacticraft:titanium_axe" + }, + "template": { + "item": "galacticraft:titanium_upgrade_smithing_template" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_block.json b/src/main/generated/data/galacticraft/recipes/titanium_block.json new file mode 100644 index 0000000000..f6a6f02c0e --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_block.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:titanium_ingot" + } + }, + "pattern": [ + "###", + "###", + "###" + ], + "result": { + "item": "galacticraft:titanium_block" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_boots_smithing.json b/src/main/generated/data/galacticraft/recipes/titanium_boots_smithing.json new file mode 100644 index 0000000000..a0af9a8a35 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_boots_smithing.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:smithing_transform", + "addition": { + "item": "galacticraft:compressed_titanium" + }, + "base": { + "item": "galacticraft:desh_boots" + }, + "result": { + "item": "galacticraft:titanium_boots" + }, + "template": { + "item": "galacticraft:titanium_upgrade_smithing_template" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_chestplate_smithing.json b/src/main/generated/data/galacticraft/recipes/titanium_chestplate_smithing.json new file mode 100644 index 0000000000..f9087588d1 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_chestplate_smithing.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:smithing_transform", + "addition": { + "item": "galacticraft:compressed_titanium" + }, + "base": { + "item": "galacticraft:desh_chestplate" + }, + "result": { + "item": "galacticraft:titanium_chestplate" + }, + "template": { + "item": "galacticraft:titanium_upgrade_smithing_template" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_decoration.json b/src/main/generated/data/galacticraft/recipes/titanium_decoration.json new file mode 100644 index 0000000000..eca841e96b --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_decoration.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:stone" + }, + "X": { + "item": "galacticraft:compressed_titanium" + } + }, + "pattern": [ + "## ", + "##X" + ], + "result": { + "item": "galacticraft:titanium_decoration" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_decoration_slab.json b/src/main/generated/data/galacticraft/recipes/titanium_decoration_slab.json new file mode 100644 index 0000000000..710356235a --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_decoration_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:titanium_decoration" + } + }, + "pattern": [ + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:titanium_decoration_slab" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_decoration_stairs.json b/src/main/generated/data/galacticraft/recipes/titanium_decoration_stairs.json new file mode 100644 index 0000000000..fe231ed99d --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_decoration_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:titanium_decoration" + } + }, + "pattern": [ + "# ", + "## ", + "###" + ], + "result": { + "count": 4, + "item": "galacticraft:titanium_decoration_stairs" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_decoration_wall.json b/src/main/generated/data/galacticraft/recipes/titanium_decoration_wall.json new file mode 100644 index 0000000000..db289e9aed --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_decoration_wall.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "galacticraft:titanium_decoration" + } + }, + "pattern": [ + "###", + "###" + ], + "result": { + "count": 6, + "item": "galacticraft:titanium_decoration_wall" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_helmet_smithing.json b/src/main/generated/data/galacticraft/recipes/titanium_helmet_smithing.json new file mode 100644 index 0000000000..b62dfdcfcf --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_helmet_smithing.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:smithing_transform", + "addition": { + "item": "galacticraft:compressed_titanium" + }, + "base": { + "item": "galacticraft:desh_helmet" + }, + "result": { + "item": "galacticraft:titanium_helmet" + }, + "template": { + "item": "galacticraft:titanium_upgrade_smithing_template" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_hoe_smithing.json b/src/main/generated/data/galacticraft/recipes/titanium_hoe_smithing.json new file mode 100644 index 0000000000..5c3ab99aab --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_hoe_smithing.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:smithing_transform", + "addition": { + "item": "galacticraft:compressed_titanium" + }, + "base": { + "item": "galacticraft:desh_hoe" + }, + "result": { + "item": "galacticraft:titanium_hoe" + }, + "template": { + "item": "galacticraft:titanium_upgrade_smithing_template" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_ingot_from_blasting_ilmenite_ore.json b/src/main/generated/data/galacticraft/recipes/titanium_ingot_from_blasting_ilmenite_ore.json new file mode 100644 index 0000000000..d75ab28a3c --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_ingot_from_blasting_ilmenite_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:blasting", + "category": "misc", + "cookingtime": 100, + "experience": 0.7, + "group": "titanium_ingot", + "ingredient": { + "item": "galacticraft:ilmenite_ore" + }, + "result": "galacticraft:titanium_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_ingot_from_blasting_raw_titanium.json b/src/main/generated/data/galacticraft/recipes/titanium_ingot_from_blasting_raw_titanium.json new file mode 100644 index 0000000000..1203969961 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_ingot_from_blasting_raw_titanium.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:blasting", + "category": "misc", + "cookingtime": 100, + "experience": 0.7, + "group": "titanium_ingot", + "ingredient": { + "item": "galacticraft:raw_titanium" + }, + "result": "galacticraft:titanium_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_ingot_from_block.json b/src/main/generated/data/galacticraft/recipes/titanium_ingot_from_block.json new file mode 100644 index 0000000000..b90e4a8856 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_ingot_from_block.json @@ -0,0 +1,14 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "group": "titanium_ingot", + "ingredients": [ + { + "item": "galacticraft:titanium_block" + } + ], + "result": { + "count": 9, + "item": "galacticraft:titanium_ingot" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_ingot_from_nuggets.json b/src/main/generated/data/galacticraft/recipes/titanium_ingot_from_nuggets.json new file mode 100644 index 0000000000..2deb328e3a --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_ingot_from_nuggets.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "group": "titanium_ingot", + "key": { + "#": { + "item": "galacticraft:titanium_nugget" + } + }, + "pattern": [ + "###", + "###", + "###" + ], + "result": { + "item": "galacticraft:titanium_ingot" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_ingot_from_smelting_ilmenite_ore.json b/src/main/generated/data/galacticraft/recipes/titanium_ingot_from_smelting_ilmenite_ore.json new file mode 100644 index 0000000000..ae4ec08d08 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_ingot_from_smelting_ilmenite_ore.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:smelting", + "category": "misc", + "cookingtime": 200, + "experience": 0.7, + "group": "titanium_ingot", + "ingredient": { + "item": "galacticraft:ilmenite_ore" + }, + "result": "galacticraft:titanium_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_ingot_from_smelting_raw_titanium.json b/src/main/generated/data/galacticraft/recipes/titanium_ingot_from_smelting_raw_titanium.json new file mode 100644 index 0000000000..44413c4a3a --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_ingot_from_smelting_raw_titanium.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:smelting", + "category": "misc", + "cookingtime": 200, + "experience": 0.7, + "group": "titanium_ingot", + "ingredient": { + "item": "galacticraft:raw_titanium" + }, + "result": "galacticraft:titanium_ingot" +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_leggings_smithing.json b/src/main/generated/data/galacticraft/recipes/titanium_leggings_smithing.json new file mode 100644 index 0000000000..63749047a9 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_leggings_smithing.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:smithing_transform", + "addition": { + "item": "galacticraft:compressed_titanium" + }, + "base": { + "item": "galacticraft:desh_leggings" + }, + "result": { + "item": "galacticraft:titanium_leggings" + }, + "template": { + "item": "galacticraft:titanium_upgrade_smithing_template" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_nugget.json b/src/main/generated/data/galacticraft/recipes/titanium_nugget.json new file mode 100644 index 0000000000..8620c57358 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_nugget.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:titanium_ingot" + } + ], + "result": { + "count": 9, + "item": "galacticraft:titanium_nugget" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_pickaxe_smithing.json b/src/main/generated/data/galacticraft/recipes/titanium_pickaxe_smithing.json new file mode 100644 index 0000000000..362056547d --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_pickaxe_smithing.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:smithing_transform", + "addition": { + "item": "galacticraft:compressed_titanium" + }, + "base": { + "item": "galacticraft:desh_pickaxe" + }, + "result": { + "item": "galacticraft:titanium_pickaxe" + }, + "template": { + "item": "galacticraft:titanium_upgrade_smithing_template" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_shovel_smithing.json b/src/main/generated/data/galacticraft/recipes/titanium_shovel_smithing.json new file mode 100644 index 0000000000..d7880fb626 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_shovel_smithing.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:smithing_transform", + "addition": { + "item": "galacticraft:compressed_titanium" + }, + "base": { + "item": "galacticraft:desh_shovel" + }, + "result": { + "item": "galacticraft:titanium_shovel" + }, + "template": { + "item": "galacticraft:titanium_upgrade_smithing_template" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/titanium_sword_smithing.json b/src/main/generated/data/galacticraft/recipes/titanium_sword_smithing.json new file mode 100644 index 0000000000..a2b54b2568 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/titanium_sword_smithing.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:smithing_transform", + "addition": { + "item": "galacticraft:compressed_titanium" + }, + "base": { + "item": "galacticraft:desh_sword" + }, + "result": { + "item": "galacticraft:titanium_sword" + }, + "template": { + "item": "galacticraft:titanium_upgrade_smithing_template" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/vacuum_glass.json b/src/main/generated/data/galacticraft/recipes/vacuum_glass.json new file mode 100644 index 0000000000..5cccc72cf1 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/vacuum_glass.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "G": { + "item": "minecraft:glass" + }, + "T": { + "item": "galacticraft:tin_ingot" + } + }, + "pattern": [ + "TGT", + "GGG", + "TGT" + ], + "result": { + "item": "galacticraft:vacuum_glass" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/vacuum_glass_clear.json b/src/main/generated/data/galacticraft/recipes/vacuum_glass_clear.json new file mode 100644 index 0000000000..2977b773ba --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/vacuum_glass_clear.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "galacticraft:aluminum_ingot" + }, + "G": { + "item": "minecraft:glass" + } + }, + "pattern": [ + "AGA", + "GGG", + "AGA" + ], + "result": { + "item": "galacticraft:vacuum_glass_clear" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/vacuum_glass_strong.json b/src/main/generated/data/galacticraft/recipes/vacuum_glass_strong.json new file mode 100644 index 0000000000..e89639d17f --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/vacuum_glass_strong.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "galacticraft:compressed_aluminum" + }, + "G": { + "item": "minecraft:glass" + } + }, + "pattern": [ + "AGA", + "GGG", + "AGA" + ], + "result": { + "item": "galacticraft:vacuum_glass_strong" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/walkway.json b/src/main/generated/data/galacticraft/recipes/walkway.json new file mode 100644 index 0000000000..c2e9cd9c49 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/walkway.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "T": { + "item": "galacticraft:compressed_titanium" + } + }, + "pattern": [ + "TTT", + " T " + ], + "result": { + "count": 5, + "item": "galacticraft:walkway" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/white_parachute.json b/src/main/generated/data/galacticraft/recipes/white_parachute.json new file mode 100644 index 0000000000..8dc29b6695 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/white_parachute.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "galacticraft:canvas" + }, + "S": { + "item": "minecraft:string" + } + }, + "pattern": [ + "CCC", + "S S", + " S " + ], + "result": { + "item": "galacticraft:white_parachute" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/wire_walkway.json b/src/main/generated/data/galacticraft/recipes/wire_walkway.json new file mode 100644 index 0000000000..fd68c5a01e --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/wire_walkway.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "T": { + "item": "galacticraft:compressed_titanium" + }, + "W": { + "item": "galacticraft:aluminum_wire" + } + }, + "pattern": [ + "TTT", + "WTW", + "WWW" + ], + "result": { + "count": 5, + "item": "galacticraft:wire_walkway" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/wire_walkway_shapeless.json b/src/main/generated/data/galacticraft/recipes/wire_walkway_shapeless.json new file mode 100644 index 0000000000..7f99394a5e --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/wire_walkway_shapeless.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:compressed_titanium" + }, + { + "item": "galacticraft:aluminum_wire" + } + ], + "result": { + "item": "galacticraft:wire_walkway" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/recipes/yellow_parachute.json b/src/main/generated/data/galacticraft/recipes/yellow_parachute.json new file mode 100644 index 0000000000..64fb7d4b36 --- /dev/null +++ b/src/main/generated/data/galacticraft/recipes/yellow_parachute.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "galacticraft:white_parachute" + }, + { + "item": "minecraft:yellow_dye" + } + ], + "result": { + "item": "galacticraft:yellow_parachute" + } +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/galacticraft/rocket_body/tier_1.json b/src/main/generated/data/galacticraft/rocket_body/tier_1.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/rocket_body/tier_1.json rename to src/main/generated/data/galacticraft/rocket_body/tier_1.json diff --git a/src/main/generated/data/galacticraft/galacticraft/rocket_booster/tier_1.json b/src/main/generated/data/galacticraft/rocket_booster/tier_1.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/rocket_booster/tier_1.json rename to src/main/generated/data/galacticraft/rocket_booster/tier_1.json diff --git a/src/main/generated/data/galacticraft/galacticraft/rocket_cone/advanced_cone.json b/src/main/generated/data/galacticraft/rocket_cone/advanced_cone.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/rocket_cone/advanced_cone.json rename to src/main/generated/data/galacticraft/rocket_cone/advanced_cone.json diff --git a/src/main/generated/data/galacticraft/galacticraft/rocket_cone/sloped_cone.json b/src/main/generated/data/galacticraft/rocket_cone/sloped_cone.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/rocket_cone/sloped_cone.json rename to src/main/generated/data/galacticraft/rocket_cone/sloped_cone.json diff --git a/src/main/generated/data/galacticraft/galacticraft/rocket_cone/tier_1.json b/src/main/generated/data/galacticraft/rocket_cone/tier_1.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/rocket_cone/tier_1.json rename to src/main/generated/data/galacticraft/rocket_cone/tier_1.json diff --git a/src/main/generated/data/galacticraft/galacticraft/rocket_engine/tier_1.json b/src/main/generated/data/galacticraft/rocket_engine/tier_1.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/rocket_engine/tier_1.json rename to src/main/generated/data/galacticraft/rocket_engine/tier_1.json diff --git a/src/main/generated/data/galacticraft/galacticraft/rocket_fin/tier_1.json b/src/main/generated/data/galacticraft/rocket_fin/tier_1.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/rocket_fin/tier_1.json rename to src/main/generated/data/galacticraft/rocket_fin/tier_1.json diff --git a/src/main/generated/data/galacticraft/galacticraft/rocket_upgrade/storage.json b/src/main/generated/data/galacticraft/rocket_upgrade/storage.json similarity index 100% rename from src/main/generated/data/galacticraft/galacticraft/rocket_upgrade/storage.json rename to src/main/generated/data/galacticraft/rocket_upgrade/storage.json diff --git a/src/main/generated/data/galacticraft/tags/block/base_stone_moon.json b/src/main/generated/data/galacticraft/tags/block/base_stone_moon.json deleted file mode 100644 index 7c4f7ef42a..0000000000 --- a/src/main/generated/data/galacticraft/tags/block/base_stone_moon.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:moon_rock" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/tags/block/footprints.json b/src/main/generated/data/galacticraft/tags/block/footprints.json deleted file mode 100644 index a114c23338..0000000000 --- a/src/main/generated/data/galacticraft/tags/block/footprints.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:moon_turf" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/tags/block/infiniburn_moon.json b/src/main/generated/data/galacticraft/tags/block/infiniburn_moon.json deleted file mode 100644 index b3a1c2a891..0000000000 --- a/src/main/generated/data/galacticraft/tags/block/infiniburn_moon.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:moon_basalt_brick" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/tags/block/lunaslate_ore_replaceables.json b/src/main/generated/data/galacticraft/tags/block/lunaslate_ore_replaceables.json deleted file mode 100644 index 4c308aa61b..0000000000 --- a/src/main/generated/data/galacticraft/tags/block/lunaslate_ore_replaceables.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:lunaslate" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/tags/block/moon_stone_ore_replaceables.json b/src/main/generated/data/galacticraft/tags/block/moon_stone_ore_replaceables.json deleted file mode 100644 index 7c4f7ef42a..0000000000 --- a/src/main/generated/data/galacticraft/tags/block/moon_stone_ore_replaceables.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:moon_rock" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/tags/blocks/base_stone_moon.json b/src/main/generated/data/galacticraft/tags/blocks/base_stone_moon.json new file mode 100644 index 0000000000..de47b916d9 --- /dev/null +++ b/src/main/generated/data/galacticraft/tags/blocks/base_stone_moon.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "galacticraft:moon_rock" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/tags/blocks/footprints.json b/src/main/generated/data/galacticraft/tags/blocks/footprints.json new file mode 100644 index 0000000000..3f789cb87d --- /dev/null +++ b/src/main/generated/data/galacticraft/tags/blocks/footprints.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "galacticraft:moon_turf" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/tags/blocks/infiniburn_moon.json b/src/main/generated/data/galacticraft/tags/blocks/infiniburn_moon.json new file mode 100644 index 0000000000..cdf6adddef --- /dev/null +++ b/src/main/generated/data/galacticraft/tags/blocks/infiniburn_moon.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "galacticraft:moon_basalt_brick" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/tags/blocks/lunaslate_ore_replaceables.json b/src/main/generated/data/galacticraft/tags/blocks/lunaslate_ore_replaceables.json new file mode 100644 index 0000000000..42d3ed74f7 --- /dev/null +++ b/src/main/generated/data/galacticraft/tags/blocks/lunaslate_ore_replaceables.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "galacticraft:lunaslate" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/tags/block/machines.json b/src/main/generated/data/galacticraft/tags/blocks/machines.json similarity index 97% rename from src/main/generated/data/galacticraft/tags/block/machines.json rename to src/main/generated/data/galacticraft/tags/blocks/machines.json index 4f99685ee9..2e0a71a0bf 100644 --- a/src/main/generated/data/galacticraft/tags/block/machines.json +++ b/src/main/generated/data/galacticraft/tags/blocks/machines.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:circuit_fabricator", "galacticraft:compressor", diff --git a/src/main/generated/data/galacticraft/tags/block/moon_carver_replaceables.json b/src/main/generated/data/galacticraft/tags/blocks/moon_carver_replaceables.json similarity index 90% rename from src/main/generated/data/galacticraft/tags/block/moon_carver_replaceables.json rename to src/main/generated/data/galacticraft/tags/blocks/moon_carver_replaceables.json index 9910c68012..d2af7e353f 100644 --- a/src/main/generated/data/galacticraft/tags/block/moon_carver_replaceables.json +++ b/src/main/generated/data/galacticraft/tags/blocks/moon_carver_replaceables.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:moon_rock", "galacticraft:moon_surface_rock", diff --git a/src/main/generated/data/galacticraft/tags/block/moon_crater_carver_replaceables.json b/src/main/generated/data/galacticraft/tags/blocks/moon_crater_carver_replaceables.json similarity index 90% rename from src/main/generated/data/galacticraft/tags/block/moon_crater_carver_replaceables.json rename to src/main/generated/data/galacticraft/tags/blocks/moon_crater_carver_replaceables.json index 9910c68012..d2af7e353f 100644 --- a/src/main/generated/data/galacticraft/tags/block/moon_crater_carver_replaceables.json +++ b/src/main/generated/data/galacticraft/tags/blocks/moon_crater_carver_replaceables.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:moon_rock", "galacticraft:moon_surface_rock", diff --git a/src/main/generated/data/galacticraft/tags/blocks/moon_stone_ore_replaceables.json b/src/main/generated/data/galacticraft/tags/blocks/moon_stone_ore_replaceables.json new file mode 100644 index 0000000000..de47b916d9 --- /dev/null +++ b/src/main/generated/data/galacticraft/tags/blocks/moon_stone_ore_replaceables.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "galacticraft:moon_rock" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/tags/dimension_type/footprints.json b/src/main/generated/data/galacticraft/tags/dimension_type/footprints.json index 5268a02a44..7d9f74be1b 100644 --- a/src/main/generated/data/galacticraft/tags/dimension_type/footprints.json +++ b/src/main/generated/data/galacticraft/tags/dimension_type/footprints.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:moon" ] diff --git a/src/main/generated/data/galacticraft/tags/dimension_type/space.json b/src/main/generated/data/galacticraft/tags/dimension_type/space.json index ab25c8d9b1..b2229f1dde 100644 --- a/src/main/generated/data/galacticraft/tags/dimension_type/space.json +++ b/src/main/generated/data/galacticraft/tags/dimension_type/space.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:moon", "galacticraft:venus", diff --git a/src/main/generated/data/galacticraft/tags/entity_type/has_footprints.json b/src/main/generated/data/galacticraft/tags/entity_type/has_footprints.json deleted file mode 100644 index 42e185776c..0000000000 --- a/src/main/generated/data/galacticraft/tags/entity_type/has_footprints.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "minecraft:player" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/tags/entity_types/has_footprints.json b/src/main/generated/data/galacticraft/tags/entity_types/has_footprints.json new file mode 100644 index 0000000000..bf6dd51f30 --- /dev/null +++ b/src/main/generated/data/galacticraft/tags/entity_types/has_footprints.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "minecraft:player" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/tags/fluid/oxygen.json b/src/main/generated/data/galacticraft/tags/fluid/oxygen.json deleted file mode 100644 index 289d9479a2..0000000000 --- a/src/main/generated/data/galacticraft/tags/fluid/oxygen.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:oxygen" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/tags/fluids/oxygen.json b/src/main/generated/data/galacticraft/tags/fluids/oxygen.json new file mode 100644 index 0000000000..a1b9381520 --- /dev/null +++ b/src/main/generated/data/galacticraft/tags/fluids/oxygen.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "galacticraft:oxygen" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/tags/worldgen/biome/asteroid.json b/src/main/generated/data/galacticraft/tags/worldgen/biome/asteroid.json index 9dcaf92d95..66fb4071e5 100644 --- a/src/main/generated/data/galacticraft/tags/worldgen/biome/asteroid.json +++ b/src/main/generated/data/galacticraft/tags/worldgen/biome/asteroid.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:asteroid_field" ] diff --git a/src/main/generated/data/galacticraft/tags/worldgen/biome/has_structure/moon_pillager_base.json b/src/main/generated/data/galacticraft/tags/worldgen/biome/has_structure/moon_pillager_base.json index 4b57bb3129..22d0bff0ee 100644 --- a/src/main/generated/data/galacticraft/tags/worldgen/biome/has_structure/moon_pillager_base.json +++ b/src/main/generated/data/galacticraft/tags/worldgen/biome/has_structure/moon_pillager_base.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:basaltic_mare" ] diff --git a/src/main/generated/data/galacticraft/tags/worldgen/biome/has_structure/moon_ruins.json b/src/main/generated/data/galacticraft/tags/worldgen/biome/has_structure/moon_ruins.json index 4b57bb3129..22d0bff0ee 100644 --- a/src/main/generated/data/galacticraft/tags/worldgen/biome/has_structure/moon_ruins.json +++ b/src/main/generated/data/galacticraft/tags/worldgen/biome/has_structure/moon_ruins.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:basaltic_mare" ] diff --git a/src/main/generated/data/galacticraft/tags/worldgen/biome/has_structure/moon_village_highlands.json b/src/main/generated/data/galacticraft/tags/worldgen/biome/has_structure/moon_village_highlands.json index 0ba4c44be2..1f3bcff6d5 100644 --- a/src/main/generated/data/galacticraft/tags/worldgen/biome/has_structure/moon_village_highlands.json +++ b/src/main/generated/data/galacticraft/tags/worldgen/biome/has_structure/moon_village_highlands.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:lunar_highlands" ] diff --git a/src/main/generated/data/galacticraft/tags/worldgen/biome/moon.json b/src/main/generated/data/galacticraft/tags/worldgen/biome/moon.json index f33cf29088..a819237f0b 100644 --- a/src/main/generated/data/galacticraft/tags/worldgen/biome/moon.json +++ b/src/main/generated/data/galacticraft/tags/worldgen/biome/moon.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:comet_tundra", "galacticraft:basaltic_mare", diff --git a/src/main/generated/data/galacticraft/tags/worldgen/biome/venus.json b/src/main/generated/data/galacticraft/tags/worldgen/biome/venus.json index 4bd2e1f59a..f6083e2a77 100644 --- a/src/main/generated/data/galacticraft/tags/worldgen/biome/venus.json +++ b/src/main/generated/data/galacticraft/tags/worldgen/biome/venus.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:venus_valley", "galacticraft:venus_flat", diff --git a/src/main/generated/data/galacticraft/tags/worldgen/structure/moon_ruins.json b/src/main/generated/data/galacticraft/tags/worldgen/structure/moon_ruins.json index 21d13cc033..e2a6be84a9 100644 --- a/src/main/generated/data/galacticraft/tags/worldgen/structure/moon_ruins.json +++ b/src/main/generated/data/galacticraft/tags/worldgen/structure/moon_ruins.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:moon_ruins" ] diff --git a/src/main/generated/data/galacticraft/worldgen/configured_carver/moon_canyon_carver.json b/src/main/generated/data/galacticraft/worldgen/configured_carver/moon_canyon_carver.json index 1c83ac1673..c62532ae3f 100644 --- a/src/main/generated/data/galacticraft/worldgen/configured_carver/moon_canyon_carver.json +++ b/src/main/generated/data/galacticraft/worldgen/configured_carver/moon_canyon_carver.json @@ -9,19 +9,25 @@ "shape": { "distance_factor": { "type": "minecraft:uniform", - "max_exclusive": 1.0, - "min_inclusive": 0.75 + "value": { + "max_exclusive": 1.0, + "min_inclusive": 0.75 + } }, "horizontal_radius_factor": { "type": "minecraft:uniform", - "max_exclusive": 1.0, - "min_inclusive": 0.75 + "value": { + "max_exclusive": 1.0, + "min_inclusive": 0.75 + } }, "thickness": { "type": "minecraft:trapezoid", - "max": 6.0, - "min": 0.0, - "plateau": 2.0 + "value": { + "max": 6.0, + "min": 0.0, + "plateau": 2.0 + } }, "vertical_radius_center_factor": 0.0, "vertical_radius_default_factor": 1.0, @@ -29,8 +35,10 @@ }, "vertical_rotation": { "type": "minecraft:uniform", - "max_exclusive": 0.125, - "min_inclusive": -0.125 + "value": { + "max_exclusive": 0.125, + "min_inclusive": -0.125 + } }, "y": { "type": "minecraft:uniform", diff --git a/src/main/generated/data/galacticraft/worldgen/configured_carver/moon_crater_carver.json b/src/main/generated/data/galacticraft/worldgen/configured_carver/moon_crater_carver.json index 6e2166c3d8..90ee59548f 100644 --- a/src/main/generated/data/galacticraft/worldgen/configured_carver/moon_crater_carver.json +++ b/src/main/generated/data/galacticraft/worldgen/configured_carver/moon_crater_carver.json @@ -26,8 +26,10 @@ }, "y_scale": { "type": "minecraft:uniform", - "max_exclusive": 0.6, - "min_inclusive": 0.4 + "value": { + "max_exclusive": 0.6, + "min_inclusive": 0.4 + } } } } \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/worldgen/configured_carver/moon_highlands_cave_carver.json b/src/main/generated/data/galacticraft/worldgen/configured_carver/moon_highlands_cave_carver.json index c4d4ad41d8..e919e7cf6a 100644 --- a/src/main/generated/data/galacticraft/worldgen/configured_carver/moon_highlands_cave_carver.json +++ b/src/main/generated/data/galacticraft/worldgen/configured_carver/moon_highlands_cave_carver.json @@ -3,13 +3,17 @@ "config": { "floor_level": { "type": "minecraft:uniform", - "max_exclusive": -0.4, - "min_inclusive": -1.0 + "value": { + "max_exclusive": -0.4, + "min_inclusive": -1.0 + } }, "horizontal_radius_multiplier": { "type": "minecraft:uniform", - "max_exclusive": 1.4, - "min_inclusive": 0.7 + "value": { + "max_exclusive": 1.4, + "min_inclusive": 0.7 + } }, "lava_level": { "above_bottom": -64 @@ -18,8 +22,10 @@ "replaceable": [], "vertical_radius_multiplier": { "type": "minecraft:uniform", - "max_exclusive": 1.3, - "min_inclusive": 0.8 + "value": { + "max_exclusive": 1.3, + "min_inclusive": 0.8 + } }, "y": { "type": "minecraft:uniform", @@ -32,8 +38,10 @@ }, "yScale": { "type": "minecraft:uniform", - "max_exclusive": 0.9, - "min_inclusive": 0.1 + "value": { + "max_exclusive": 0.9, + "min_inclusive": 0.1 + } } } } \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/worldgen/configured_carver/moon_mare_cave_carver.json b/src/main/generated/data/galacticraft/worldgen/configured_carver/moon_mare_cave_carver.json index 421f09f469..c441f3df3e 100644 --- a/src/main/generated/data/galacticraft/worldgen/configured_carver/moon_mare_cave_carver.json +++ b/src/main/generated/data/galacticraft/worldgen/configured_carver/moon_mare_cave_carver.json @@ -3,13 +3,17 @@ "config": { "floor_level": { "type": "minecraft:uniform", - "max_exclusive": -0.4, - "min_inclusive": -1.0 + "value": { + "max_exclusive": -0.4, + "min_inclusive": -1.0 + } }, "horizontal_radius_multiplier": { "type": "minecraft:uniform", - "max_exclusive": 1.4, - "min_inclusive": 0.7 + "value": { + "max_exclusive": 1.4, + "min_inclusive": 0.7 + } }, "lava_level": { "above_bottom": -64 @@ -18,8 +22,10 @@ "replaceable": [], "vertical_radius_multiplier": { "type": "minecraft:uniform", - "max_exclusive": 1.3, - "min_inclusive": 0.8 + "value": { + "max_exclusive": 1.3, + "min_inclusive": 0.8 + } }, "y": { "type": "minecraft:uniform", @@ -32,8 +38,10 @@ }, "yScale": { "type": "minecraft:uniform", - "max_exclusive": 0.9, - "min_inclusive": 0.1 + "value": { + "max_exclusive": 0.9, + "min_inclusive": 0.1 + } } } } \ No newline at end of file diff --git a/src/main/generated/data/galacticraft/worldgen/structure/moon_ruins.json b/src/main/generated/data/galacticraft/worldgen/structure/moon_ruins.json index c9c8485e1e..cd9ba64a6d 100644 --- a/src/main/generated/data/galacticraft/worldgen/structure/moon_ruins.json +++ b/src/main/generated/data/galacticraft/worldgen/structure/moon_ruins.json @@ -3,6 +3,7 @@ "config": { "biomes": "#galacticraft:has_structure/moon_ruins", "spawn_overrides": {}, - "step": "surface_structures" + "step": "surface_structures", + "terrain_adaptation": "beard_thin" } } \ No newline at end of file diff --git a/src/main/generated/data/minecraft/tags/banner_pattern/no_item_required.json b/src/main/generated/data/minecraft/tags/banner_pattern/no_item_required.json index 04d4662fa7..a341e925d9 100644 --- a/src/main/generated/data/minecraft/tags/banner_pattern/no_item_required.json +++ b/src/main/generated/data/minecraft/tags/banner_pattern/no_item_required.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:rocket" ] diff --git a/src/main/generated/data/minecraft/tags/block/dragon_immune.json b/src/main/generated/data/minecraft/tags/block/dragon_immune.json deleted file mode 100644 index e8540748e5..0000000000 --- a/src/main/generated/data/minecraft/tags/block/dragon_immune.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:air_lock_seal" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/minecraft/tags/block/wither_immune.json b/src/main/generated/data/minecraft/tags/block/wither_immune.json deleted file mode 100644 index e8540748e5..0000000000 --- a/src/main/generated/data/minecraft/tags/block/wither_immune.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "galacticraft:air_lock_seal" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/minecraft/tags/block/candle_cakes.json b/src/main/generated/data/minecraft/tags/blocks/candle_cakes.json similarity index 97% rename from src/main/generated/data/minecraft/tags/block/candle_cakes.json rename to src/main/generated/data/minecraft/tags/blocks/candle_cakes.json index 45284a186e..845965541b 100644 --- a/src/main/generated/data/minecraft/tags/block/candle_cakes.json +++ b/src/main/generated/data/minecraft/tags/blocks/candle_cakes.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:candle_moon_cheese_block", "galacticraft:white_candle_moon_cheese_block", diff --git a/src/main/generated/data/minecraft/tags/block/climbable.json b/src/main/generated/data/minecraft/tags/blocks/climbable.json similarity index 86% rename from src/main/generated/data/minecraft/tags/block/climbable.json rename to src/main/generated/data/minecraft/tags/blocks/climbable.json index 500d966950..ca9512fbcf 100644 --- a/src/main/generated/data/minecraft/tags/block/climbable.json +++ b/src/main/generated/data/minecraft/tags/blocks/climbable.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:tin_ladder", "galacticraft:cavernous_vines", diff --git a/src/main/generated/data/minecraft/tags/blocks/dragon_immune.json b/src/main/generated/data/minecraft/tags/blocks/dragon_immune.json new file mode 100644 index 0000000000..9641003823 --- /dev/null +++ b/src/main/generated/data/minecraft/tags/blocks/dragon_immune.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "galacticraft:air_lock_seal" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/minecraft/tags/block/mineable/pickaxe.json b/src/main/generated/data/minecraft/tags/blocks/mineable/pickaxe.json similarity index 86% rename from src/main/generated/data/minecraft/tags/block/mineable/pickaxe.json rename to src/main/generated/data/minecraft/tags/blocks/mineable/pickaxe.json index 2282bc72c0..7fd7884c24 100644 --- a/src/main/generated/data/minecraft/tags/block/mineable/pickaxe.json +++ b/src/main/generated/data/minecraft/tags/blocks/mineable/pickaxe.json @@ -1,12 +1,11 @@ { + "replace": false, "values": [ "#galacticraft:machines", "galacticraft:silicon_ore", "galacticraft:deepslate_silicon_ore", "galacticraft:moon_copper_ore", "galacticraft:lunaslate_copper_ore", - "galacticraft:olivine_basalt", - "galacticraft:rich_olivine_basalt", "galacticraft:tin_ore", "galacticraft:deepslate_tin_ore", "galacticraft:moon_tin_ore", @@ -19,11 +18,7 @@ "galacticraft:desh_ore", "galacticraft:ilmenite_ore", "galacticraft:galena_ore", - "galacticraft:olivine_cluster", "galacticraft:moon_rock_slab", - "galacticraft:moon_rock_brick_slab", - "galacticraft:cracked_moon_rock_brick_slab", - "galacticraft:polished_moon_rock_slab", "galacticraft:lunaslate_slab", "galacticraft:cobbled_moon_rock_slab", "galacticraft:cobbled_lunaslate_slab", @@ -33,9 +28,6 @@ "galacticraft:mars_stone_slab", "galacticraft:mars_cobblestone_slab", "galacticraft:moon_rock_stairs", - "galacticraft:moon_rock_brick_stairs", - "galacticraft:cracked_moon_rock_brick_stairs", - "galacticraft:polished_moon_rock_stairs", "galacticraft:lunaslate_stairs", "galacticraft:cobbled_moon_rock_stairs", "galacticraft:cobbled_lunaslate_stairs", @@ -68,7 +60,6 @@ "galacticraft:titanium_block", "galacticraft:lead_block", "galacticraft:lunar_sapphire_block", - "galacticraft:olivine_block", "galacticraft:moon_turf", "galacticraft:moon_dirt", "galacticraft:moon_dirt_path", @@ -104,11 +95,6 @@ "galacticraft:detailed_meteoric_iron_decoration", "galacticraft:detailed_dark_decoration", "galacticraft:moon_rock", - "galacticraft:moon_rock_brick", - "galacticraft:cracked_moon_rock_brick", - "galacticraft:polished_moon_rock", - "galacticraft:chiseled_moon_rock_brick", - "galacticraft:moon_rock_pillar", "galacticraft:lunaslate", "galacticraft:cobbled_moon_rock", "galacticraft:cobbled_lunaslate", diff --git a/src/main/generated/data/minecraft/tags/block/mineable/shovel.json b/src/main/generated/data/minecraft/tags/blocks/mineable/shovel.json similarity index 85% rename from src/main/generated/data/minecraft/tags/block/mineable/shovel.json rename to src/main/generated/data/minecraft/tags/blocks/mineable/shovel.json index ad46c2cae4..a22846fa6a 100644 --- a/src/main/generated/data/minecraft/tags/block/mineable/shovel.json +++ b/src/main/generated/data/minecraft/tags/blocks/mineable/shovel.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:moon_turf", "galacticraft:moon_dirt", diff --git a/src/main/generated/data/minecraft/tags/block/needs_diamond_tool.json b/src/main/generated/data/minecraft/tags/blocks/needs_diamond_tool.json similarity index 80% rename from src/main/generated/data/minecraft/tags/block/needs_diamond_tool.json rename to src/main/generated/data/minecraft/tags/blocks/needs_diamond_tool.json index 956a59e9c1..7963d477e8 100644 --- a/src/main/generated/data/minecraft/tags/block/needs_diamond_tool.json +++ b/src/main/generated/data/minecraft/tags/blocks/needs_diamond_tool.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:desh_ore", "galacticraft:ilmenite_ore" diff --git a/src/main/generated/data/minecraft/tags/block/needs_iron_tool.json b/src/main/generated/data/minecraft/tags/blocks/needs_iron_tool.json similarity index 86% rename from src/main/generated/data/minecraft/tags/block/needs_iron_tool.json rename to src/main/generated/data/minecraft/tags/blocks/needs_iron_tool.json index ff9cfa24c9..bb246b889a 100644 --- a/src/main/generated/data/minecraft/tags/block/needs_iron_tool.json +++ b/src/main/generated/data/minecraft/tags/blocks/needs_iron_tool.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:silicon_ore", "galacticraft:deepslate_silicon_ore", diff --git a/src/main/generated/data/minecraft/tags/block/needs_stone_tool.json b/src/main/generated/data/minecraft/tags/blocks/needs_stone_tool.json similarity index 96% rename from src/main/generated/data/minecraft/tags/block/needs_stone_tool.json rename to src/main/generated/data/minecraft/tags/blocks/needs_stone_tool.json index c47ee42391..9a03f4e1cf 100644 --- a/src/main/generated/data/minecraft/tags/block/needs_stone_tool.json +++ b/src/main/generated/data/minecraft/tags/blocks/needs_stone_tool.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:grating", "galacticraft:walkway", diff --git a/src/main/generated/data/minecraft/tags/block/replaceable.json b/src/main/generated/data/minecraft/tags/blocks/replaceable.json similarity index 84% rename from src/main/generated/data/minecraft/tags/block/replaceable.json rename to src/main/generated/data/minecraft/tags/blocks/replaceable.json index 2602fc067b..01ca3d980d 100644 --- a/src/main/generated/data/minecraft/tags/block/replaceable.json +++ b/src/main/generated/data/minecraft/tags/blocks/replaceable.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:crude_oil", "galacticraft:fuel", diff --git a/src/main/generated/data/minecraft/tags/block/slabs.json b/src/main/generated/data/minecraft/tags/blocks/slabs.json similarity index 90% rename from src/main/generated/data/minecraft/tags/block/slabs.json rename to src/main/generated/data/minecraft/tags/blocks/slabs.json index ca01b89f6d..13fbf284dd 100644 --- a/src/main/generated/data/minecraft/tags/block/slabs.json +++ b/src/main/generated/data/minecraft/tags/blocks/slabs.json @@ -1,9 +1,7 @@ { + "replace": false, "values": [ "galacticraft:moon_rock_slab", - "galacticraft:moon_rock_brick_slab", - "galacticraft:cracked_moon_rock_brick_slab", - "galacticraft:polished_moon_rock_slab", "galacticraft:lunaslate_slab", "galacticraft:cobbled_moon_rock_slab", "galacticraft:cobbled_lunaslate_slab", diff --git a/src/main/generated/data/minecraft/tags/block/stairs.json b/src/main/generated/data/minecraft/tags/blocks/stairs.json similarity index 90% rename from src/main/generated/data/minecraft/tags/block/stairs.json rename to src/main/generated/data/minecraft/tags/blocks/stairs.json index d84adc1b8a..cd221be8a8 100644 --- a/src/main/generated/data/minecraft/tags/block/stairs.json +++ b/src/main/generated/data/minecraft/tags/blocks/stairs.json @@ -1,9 +1,7 @@ { + "replace": false, "values": [ "galacticraft:moon_rock_stairs", - "galacticraft:moon_rock_brick_stairs", - "galacticraft:cracked_moon_rock_brick_stairs", - "galacticraft:polished_moon_rock_stairs", "galacticraft:lunaslate_stairs", "galacticraft:cobbled_moon_rock_stairs", "galacticraft:cobbled_lunaslate_stairs", diff --git a/src/main/generated/data/minecraft/tags/block/wall_post_override.json b/src/main/generated/data/minecraft/tags/blocks/wall_post_override.json similarity index 81% rename from src/main/generated/data/minecraft/tags/block/wall_post_override.json rename to src/main/generated/data/minecraft/tags/blocks/wall_post_override.json index e7c0687b0b..2d26afab57 100644 --- a/src/main/generated/data/minecraft/tags/block/wall_post_override.json +++ b/src/main/generated/data/minecraft/tags/blocks/wall_post_override.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:glowstone_torch", "galacticraft:unlit_torch" diff --git a/src/main/generated/data/minecraft/tags/block/walls.json b/src/main/generated/data/minecraft/tags/blocks/walls.json similarity index 90% rename from src/main/generated/data/minecraft/tags/block/walls.json rename to src/main/generated/data/minecraft/tags/blocks/walls.json index c0fd378f9e..21f06b46a2 100644 --- a/src/main/generated/data/minecraft/tags/block/walls.json +++ b/src/main/generated/data/minecraft/tags/blocks/walls.json @@ -1,9 +1,7 @@ { + "replace": false, "values": [ "galacticraft:moon_rock_wall", - "galacticraft:moon_rock_brick_wall", - "galacticraft:cracked_moon_rock_brick_wall", - "galacticraft:polished_moon_rock_wall", "galacticraft:lunaslate_wall", "galacticraft:cobbled_moon_rock_wall", "galacticraft:cobbled_lunaslate_wall", diff --git a/src/main/generated/data/minecraft/tags/blocks/wither_immune.json b/src/main/generated/data/minecraft/tags/blocks/wither_immune.json new file mode 100644 index 0000000000..9641003823 --- /dev/null +++ b/src/main/generated/data/minecraft/tags/blocks/wither_immune.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "galacticraft:air_lock_seal" + ] +} \ No newline at end of file diff --git a/src/main/generated/data/minecraft/tags/item/creeper_drop_music_discs.json b/src/main/generated/data/minecraft/tags/item/creeper_drop_music_discs.json deleted file mode 100644 index f72d209df7..0000000000 --- a/src/main/generated/data/minecraft/tags/item/creeper_drop_music_discs.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "values": [] -} \ No newline at end of file diff --git a/src/main/generated/data/minecraft/tags/item/meat.json b/src/main/generated/data/minecraft/tags/item/meat.json deleted file mode 100644 index 1de0493c58..0000000000 --- a/src/main/generated/data/minecraft/tags/item/meat.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "galacticraft:ground_beef", - "galacticraft:beef_patty" - ] -} \ No newline at end of file diff --git a/src/main/generated/data/minecraft/tags/item/axes.json b/src/main/generated/data/minecraft/tags/items/axes.json similarity index 85% rename from src/main/generated/data/minecraft/tags/item/axes.json rename to src/main/generated/data/minecraft/tags/items/axes.json index 4e02a1690e..e505069e63 100644 --- a/src/main/generated/data/minecraft/tags/item/axes.json +++ b/src/main/generated/data/minecraft/tags/items/axes.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:heavy_duty_axe", "galacticraft:desh_axe", diff --git a/src/main/generated/data/minecraft/tags/item/cluster_max_harvestables.json b/src/main/generated/data/minecraft/tags/items/cluster_max_harvestables.json similarity index 86% rename from src/main/generated/data/minecraft/tags/item/cluster_max_harvestables.json rename to src/main/generated/data/minecraft/tags/items/cluster_max_harvestables.json index 99f73f6730..9551af1f03 100644 --- a/src/main/generated/data/minecraft/tags/item/cluster_max_harvestables.json +++ b/src/main/generated/data/minecraft/tags/items/cluster_max_harvestables.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:heavy_duty_pickaxe", "galacticraft:desh_pickaxe", diff --git a/src/main/generated/data/minecraft/tags/items/creeper_drop_music_discs.json b/src/main/generated/data/minecraft/tags/items/creeper_drop_music_discs.json new file mode 100644 index 0000000000..5e8aecc986 --- /dev/null +++ b/src/main/generated/data/minecraft/tags/items/creeper_drop_music_discs.json @@ -0,0 +1,4 @@ +{ + "replace": false, + "values": [] +} \ No newline at end of file diff --git a/src/main/generated/data/minecraft/tags/item/hoes.json b/src/main/generated/data/minecraft/tags/items/hoes.json similarity index 85% rename from src/main/generated/data/minecraft/tags/item/hoes.json rename to src/main/generated/data/minecraft/tags/items/hoes.json index 918c90cdb6..4b996f1c2f 100644 --- a/src/main/generated/data/minecraft/tags/item/hoes.json +++ b/src/main/generated/data/minecraft/tags/items/hoes.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:heavy_duty_hoe", "galacticraft:desh_hoe", diff --git a/src/main/generated/data/minecraft/tags/item/pickaxes.json b/src/main/generated/data/minecraft/tags/items/pickaxes.json similarity index 86% rename from src/main/generated/data/minecraft/tags/item/pickaxes.json rename to src/main/generated/data/minecraft/tags/items/pickaxes.json index 99f73f6730..9551af1f03 100644 --- a/src/main/generated/data/minecraft/tags/item/pickaxes.json +++ b/src/main/generated/data/minecraft/tags/items/pickaxes.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:heavy_duty_pickaxe", "galacticraft:desh_pickaxe", diff --git a/src/main/generated/data/minecraft/tags/item/shovels.json b/src/main/generated/data/minecraft/tags/items/shovels.json similarity index 86% rename from src/main/generated/data/minecraft/tags/item/shovels.json rename to src/main/generated/data/minecraft/tags/items/shovels.json index e2ed44cffa..0b2d806d4b 100644 --- a/src/main/generated/data/minecraft/tags/item/shovels.json +++ b/src/main/generated/data/minecraft/tags/items/shovels.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:heavy_duty_shovel", "galacticraft:desh_shovel", diff --git a/src/main/generated/data/minecraft/tags/item/swords.json b/src/main/generated/data/minecraft/tags/items/swords.json similarity index 86% rename from src/main/generated/data/minecraft/tags/item/swords.json rename to src/main/generated/data/minecraft/tags/items/swords.json index c60c66739b..94536c3d7e 100644 --- a/src/main/generated/data/minecraft/tags/item/swords.json +++ b/src/main/generated/data/minecraft/tags/items/swords.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:heavy_duty_sword", "galacticraft:desh_sword", diff --git a/src/main/generated/data/minecraft/tags/item/trimmable_armor.json b/src/main/generated/data/minecraft/tags/items/trimmable_armor.json similarity index 95% rename from src/main/generated/data/minecraft/tags/item/trimmable_armor.json rename to src/main/generated/data/minecraft/tags/items/trimmable_armor.json index fdf192685c..95c914521a 100644 --- a/src/main/generated/data/minecraft/tags/item/trimmable_armor.json +++ b/src/main/generated/data/minecraft/tags/items/trimmable_armor.json @@ -1,4 +1,5 @@ { + "replace": false, "values": [ "galacticraft:heavy_duty_helmet", "galacticraft:heavy_duty_chestplate", diff --git a/src/main/java/dev/galacticraft/api/accessor/LevelBodyAccessor.java b/src/main/java/dev/galacticraft/api/accessor/LevelBodyAccessor.java deleted file mode 100644 index c03d2b3736..0000000000 --- a/src/main/java/dev/galacticraft/api/accessor/LevelBodyAccessor.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.api.accessor; - -import dev.galacticraft.api.universe.celestialbody.CelestialBody; -import net.minecraft.core.Holder; -import org.jetbrains.annotations.Nullable; - -public interface LevelBodyAccessor { - default @Nullable Holder> galacticraft$getCelestialBody() { - throw new RuntimeException("This should be overridden by mixin!"); - } -} diff --git a/src/main/java/dev/galacticraft/api/component/GCDataComponents.java b/src/main/java/dev/galacticraft/api/component/GCDataComponents.java deleted file mode 100644 index 9c8cb67385..0000000000 --- a/src/main/java/dev/galacticraft/api/component/GCDataComponents.java +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.api.component; - -import com.mojang.serialization.Codec; -import com.mojang.serialization.codecs.RecordCodecBuilder; -import dev.galacticraft.api.rocket.part.*; -import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.util.StreamCodecs; -import net.minecraft.core.Registry; -import net.minecraft.core.component.DataComponentType; -import net.minecraft.core.registries.BuiltInRegistries; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.resources.ResourceKey; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.util.ExtraCodecs; -import net.minecraft.world.item.EitherHolder; - -import java.util.function.UnaryOperator; - -public class GCDataComponents { - public static final DataComponentType>> ROCKET_CONE = register("rocket_cone", b -> b - .persistent(RocketCone.EITHER_CODEC).networkSynchronized(RocketCone.EITHER_STREAM_CODEC)); - public static final DataComponentType>> ROCKET_BODY = register("rocket_body", b -> b - .persistent(RocketBody.EITHER_CODEC).networkSynchronized(RocketBody.EITHER_STREAM_CODEC)); - public static final DataComponentType>> ROCKET_FIN = register("rocket_fin", b -> b - .persistent(RocketFin.EITHER_CODEC).networkSynchronized(RocketFin.EITHER_STREAM_CODEC)); - public static final DataComponentType>> ROCKET_BOOSTER = register("rocket_booster", b -> b - .persistent(RocketBooster.EITHER_CODEC).networkSynchronized(RocketBooster.EITHER_STREAM_CODEC)); - public static final DataComponentType>> ROCKET_ENGINE = register("rocket_engine", b -> b - .persistent(RocketEngine.EITHER_CODEC).networkSynchronized(RocketEngine.EITHER_STREAM_CODEC)); - public static final DataComponentType>> ROCKET_UPGRADE = register("rocket_upgrade", b -> b - .persistent(RocketUpgrade.EITHER_CODEC).networkSynchronized(RocketUpgrade.EITHER_STREAM_CODEC)); - public static final DataComponentType AMOUNT = register("amount", b -> b - .persistent(Codec.LONG).networkSynchronized(StreamCodecs.LONG)); - public static final DataComponentType COLOR = register("color", b -> b - .persistent(ExtraCodecs.NON_NEGATIVE_INT).networkSynchronized(ByteBufCodecs.INT)); - public static final DataComponentType TICKS_UNTIL_COOL = register("ticks_until_cool", b -> b - .persistent(ExtraCodecs.NON_NEGATIVE_INT).networkSynchronized(ByteBufCodecs.INT)); - public static final DataComponentType CREATIVE = register("creative", b -> b - .persistent(Codec.BOOL).networkSynchronized(ByteBufCodecs.BOOL)); - - public static final DataComponentType> KEY = register("key", b -> b - .persistent(RecordCodecBuilder.create(i -> - i.group( - ResourceLocation.CODEC.fieldOf("registry").forGetter(ResourceKey::registry), - ResourceLocation.CODEC.fieldOf("location").forGetter(ResourceKey::location) - ).apply(i, (r, l) -> ResourceKey.create(ResourceKey.createRegistryKey(r), l)) - )).networkSynchronized(StreamCodec.composite( - ResourceLocation.STREAM_CODEC, - ResourceKey::registry, - ResourceLocation.STREAM_CODEC, - ResourceKey::location, - (r, l) -> ResourceKey.create(ResourceKey.createRegistryKey(r), l) - ))); - - private static DataComponentType register(String id, UnaryOperator> op) { - return Registry.register(BuiltInRegistries.DATA_COMPONENT_TYPE, Constant.id(id), op.apply(DataComponentType.builder()).build()); - } - - public static void init() {} -} diff --git a/src/main/java/dev/galacticraft/api/data/TranslationProvider.java b/src/main/java/dev/galacticraft/api/data/TranslationProvider.java index 86624e4ab3..82c9f82321 100644 --- a/src/main/java/dev/galacticraft/api/data/TranslationProvider.java +++ b/src/main/java/dev/galacticraft/api/data/TranslationProvider.java @@ -30,7 +30,6 @@ import net.minecraft.data.CachedOutput; import net.minecraft.data.DataProvider; import net.minecraft.data.PackOutput; -import net.minecraft.network.chat.contents.TranslatableContents; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.effect.MobEffect; @@ -55,7 +54,7 @@ public abstract class TranslationProvider implements DataProvider { public TranslationProvider(FabricDataOutput output, CompletableFuture registriesFuture) { this.registriesFuture = registriesFuture; this.modId = output.getModId(); - this.path = output.createPathProvider(PackOutput.Target.RESOURCE_PACK, "lang").json(ResourceLocation.fromNamespaceAndPath(modId, "en_us")); + this.path = output.createPathProvider(PackOutput.Target.RESOURCE_PACK, "lang").json(new ResourceLocation(modId, "en_us")); } protected void generateDefaultTranslations(@NotNull HolderLookup.Provider registries) { @@ -100,7 +99,7 @@ protected void mobEffect(MobEffect effect, String translation) { } protected void enchantment(Enchantment enchantment, String translation) { - this.add(((TranslatableContents)enchantment.description().getContents()).getKey(), translation); + this.add(enchantment.getDescriptionId(), translation); } protected void addDefaulted(Holder.Reference reference) { diff --git a/src/main/java/dev/galacticraft/api/entity/attribute/GcApiEntityAttributes.java b/src/main/java/dev/galacticraft/api/entity/attribute/GcApiEntityAttributes.java index 548b86e873..414bce7a45 100644 --- a/src/main/java/dev/galacticraft/api/entity/attribute/GcApiEntityAttributes.java +++ b/src/main/java/dev/galacticraft/api/entity/attribute/GcApiEntityAttributes.java @@ -23,14 +23,15 @@ package dev.galacticraft.api.entity.attribute; import dev.galacticraft.mod.Constant; -import net.minecraft.core.Holder; import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.world.entity.ai.attributes.Attribute; import net.minecraft.world.entity.ai.attributes.RangedAttribute; public final class GcApiEntityAttributes { - public static final Holder.Reference CAN_BREATHE_IN_SPACE = Registry.registerForHolder(BuiltInRegistries.ATTRIBUTE, Constant.id("can_breathe_in_space"), (new RangedAttribute("galacticraft.attribute.name.generic.can_breathe_in_space", 0.0D, 0.0D, 1.0D)).setSyncable(true)); + public static final Attribute CAN_BREATHE_IN_SPACE = Registry.register(BuiltInRegistries.ATTRIBUTE, Constant.id("can_breathe_in_space"), (new RangedAttribute("galacticraft.attribute.name.generic.can_breathe_in_space", 0.0D, 0.0D, 1.0D)).setSyncable(true)); + + public static final Attribute LOCAL_GRAVITY_LEVEL = Registry.register(BuiltInRegistries.ATTRIBUTE, Constant.id("local_gravity_level"), (new RangedAttribute("galacticraft.attribute.name.generic.local_gravity_level", 0.0D, 0.0D, 1.0D)).setSyncable(true)); private GcApiEntityAttributes() {} diff --git a/src/main/java/dev/galacticraft/api/gas/GasComposition.java b/src/main/java/dev/galacticraft/api/gas/GasComposition.java index 7084b2915c..b533c42e35 100644 --- a/src/main/java/dev/galacticraft/api/gas/GasComposition.java +++ b/src/main/java/dev/galacticraft/api/gas/GasComposition.java @@ -24,7 +24,7 @@ import com.mojang.serialization.Codec; import com.mojang.serialization.codecs.RecordCodecBuilder; -import dev.galacticraft.impl.codec.MapKvCodec; +import dev.galacticraft.impl.codec.MapCodec; import dev.galacticraft.impl.gas.GasCompositionImpl; import it.unimi.dsi.fastutil.objects.Object2DoubleArrayMap; import it.unimi.dsi.fastutil.objects.Object2DoubleMap; @@ -37,7 +37,7 @@ import org.jetbrains.annotations.NotNull; public interface GasComposition { - MapKvCodec, Double, Object2DoubleMap>> MAP_CODEC = MapKvCodec.create(Object2DoubleArrayMap::new, ResourceKey.codec(Registries.FLUID), Codec.DOUBLE); + MapCodec, Double, Object2DoubleMap>> MAP_CODEC = MapCodec.create(Object2DoubleArrayMap::new, ResourceKey.codec(Registries.FLUID), Codec.DOUBLE); Codec CODEC = RecordCodecBuilder.create(atmosphericInfoInstance -> atmosphericInfoInstance.group( MAP_CODEC.fieldOf("composition").forGetter(GasComposition::composition), Codec.DOUBLE.fieldOf("temperature").forGetter(GasComposition::temperature), diff --git a/src/main/java/dev/galacticraft/api/registry/AddonRegistries.java b/src/main/java/dev/galacticraft/api/registry/AddonRegistries.java index c91f85f1f0..d76ce8e196 100644 --- a/src/main/java/dev/galacticraft/api/registry/AddonRegistries.java +++ b/src/main/java/dev/galacticraft/api/registry/AddonRegistries.java @@ -34,6 +34,7 @@ import dev.galacticraft.mod.Constant; import net.minecraft.core.Registry; import net.minecraft.resources.ResourceKey; +import net.minecraft.resources.ResourceLocation; public final class AddonRegistries { private AddonRegistries() {} diff --git a/src/main/java/dev/galacticraft/api/rocket/LaunchStage.java b/src/main/java/dev/galacticraft/api/rocket/LaunchStage.java index f9df09f620..684608d057 100644 --- a/src/main/java/dev/galacticraft/api/rocket/LaunchStage.java +++ b/src/main/java/dev/galacticraft/api/rocket/LaunchStage.java @@ -22,9 +22,6 @@ package dev.galacticraft.api.rocket; -import dev.galacticraft.mod.util.StreamCodecs; -import io.netty.buffer.ByteBuf; -import net.minecraft.network.codec.StreamCodec; import net.minecraft.util.StringRepresentable; import org.jetbrains.annotations.NotNull; @@ -56,8 +53,6 @@ public enum LaunchStage implements StringRepresentable { */ FAILED; - public static final StreamCodec STREAM_CODEC = StreamCodecs.ofEnum(LaunchStage.values()); - public LaunchStage next() { if (this.ordinal() < LAUNCHED.ordinal()) { return LaunchStage.values()[ordinal() + 1]; diff --git a/src/main/java/dev/galacticraft/api/rocket/RocketData.java b/src/main/java/dev/galacticraft/api/rocket/RocketData.java index 61f76305d8..10e062ce69 100644 --- a/src/main/java/dev/galacticraft/api/rocket/RocketData.java +++ b/src/main/java/dev/galacticraft/api/rocket/RocketData.java @@ -22,184 +22,120 @@ package dev.galacticraft.api.rocket; -import com.mojang.serialization.Codec; -import com.mojang.serialization.codecs.RecordCodecBuilder; -import dev.galacticraft.api.component.GCDataComponents; +import dev.galacticraft.api.registry.RocketRegistries; import dev.galacticraft.api.rocket.part.*; import dev.galacticraft.api.rocket.travelpredicate.TravelPredicateType; import dev.galacticraft.api.universe.celestialbody.CelestialBody; -import dev.galacticraft.mod.content.GCRocketParts; -import dev.galacticraft.mod.util.StreamCodecs; -import net.minecraft.core.Holder; -import net.minecraft.core.HolderLookup; -import net.minecraft.core.component.DataComponentPatch; -import net.minecraft.core.component.DataComponentType; -import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; +import dev.galacticraft.impl.rocket.RocketDataImpl; +import net.minecraft.core.RegistryAccess; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.resources.ResourceKey; import net.minecraft.util.FastColor; -import net.minecraft.world.item.EitherHolder; import org.jetbrains.annotations.Contract; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import org.jetbrains.annotations.Unmodifiable; -import java.util.Optional; - -public record RocketData(@Nullable EitherHolder> cone, @Nullable EitherHolder> body, - @Nullable EitherHolder> fin, - @Nullable EitherHolder> booster, - @Nullable EitherHolder> engine, - @Nullable EitherHolder> upgrade, int color -) { - public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( - RocketCone.EITHER_CODEC.fieldOf("cone").forGetter(RocketData::cone), - RocketBody.EITHER_CODEC.fieldOf("body").forGetter(RocketData::body), - RocketFin.EITHER_CODEC.fieldOf("fin").forGetter(RocketData::fin), - RocketBooster.EITHER_CODEC.fieldOf("booster").forGetter(RocketData::booster), - RocketEngine.EITHER_CODEC.fieldOf("engine").forGetter(RocketData::engine), - RocketUpgrade.EITHER_CODEC.fieldOf("upgrade").forGetter(RocketData::upgrade), - Codec.INT.fieldOf("color").forGetter(RocketData::color) - ).apply(instance, RocketData::new)); - - public static final StreamCodec STREAM_CODEC = StreamCodecs.composite( - RocketCone.EITHER_STREAM_CODEC, - RocketData::cone, - RocketBody.EITHER_STREAM_CODEC, - RocketData::body, - RocketFin.EITHER_STREAM_CODEC, - RocketData::fin, - RocketBooster.EITHER_STREAM_CODEC, - RocketData::booster, - RocketEngine.EITHER_STREAM_CODEC, - RocketData::engine, - RocketUpgrade.EITHER_STREAM_CODEC, - RocketData::upgrade, - ByteBufCodecs.INT, - RocketData::color, - RocketData::new - ); - - public static final RocketData DEFAULT_ROCKET = new RocketData( - new EitherHolder<>(GCRocketParts.TIER_1_CONE), - new EitherHolder<>(GCRocketParts.TIER_1_BODY), - new EitherHolder<>(GCRocketParts.TIER_1_FIN), - null, - new EitherHolder<>(GCRocketParts.TIER_1_ENGINE), - null, - 0xFFFFFFFF - ); - - @Contract("_, _, _, _, _, _, _ -> new") - static @NotNull RocketData create(int color, @Nullable Holder> cone, @Nullable Holder> body, - @Nullable Holder> fin, @Nullable Holder> booster, - @Nullable Holder> engine, @Nullable Holder> upgrade) { - return new RocketData(maybeHolder(cone), maybeHolder(body), maybeHolder(fin), maybeHolder(booster), maybeHolder(engine), maybeHolder(upgrade), color); - } - +public interface RocketData { @Contract("_, _, _, _, _, _, _ -> new") static @NotNull RocketData create(int color, @Nullable ResourceKey> cone, @Nullable ResourceKey> body, @Nullable ResourceKey> fin, @Nullable ResourceKey> booster, @Nullable ResourceKey> engine, @Nullable ResourceKey> upgrade) { - return new RocketData(maybeHolder(cone), maybeHolder(body), maybeHolder(fin), maybeHolder(booster), maybeHolder(engine), maybeHolder(upgrade), color); + return new RocketDataImpl(color, cone, body, fin, booster, engine, upgrade); } - @Contract("_, _, _, _, _, _, _ -> new") - static @NotNull RocketData create(int color, @Nullable EitherHolder> cone, @Nullable EitherHolder> body, - @Nullable EitherHolder> fin, @Nullable EitherHolder> booster, - @Nullable EitherHolder> engine, @Nullable EitherHolder> upgrade) { - return new RocketData(cone, body, fin, booster, engine, upgrade, color); + @Unmodifiable + static RocketData fromNbt(@Nullable CompoundTag nbt) { + return RocketDataImpl.fromNbt(nbt == null ? RocketDataImpl.DEFAULT_ROCKET : nbt); } - public static RocketData fromPatch(DataComponentPatch patch) { - return new RocketData( - maybeOptional(patch.get(GCDataComponents.ROCKET_CONE)), - maybeOptional(patch.get(GCDataComponents.ROCKET_BODY)), - maybeOptional(patch.get(GCDataComponents.ROCKET_FIN)), - maybeOptional(patch.get(GCDataComponents.ROCKET_BOOSTER)), - maybeOptional(patch.get(GCDataComponents.ROCKET_ENGINE)), - maybeOptional(patch.get(GCDataComponents.ROCKET_UPGRADE)), - patch.get(GCDataComponents.COLOR) != null && patch.get(GCDataComponents.COLOR).isPresent() ? patch.get(GCDataComponents.COLOR).get() : 0xFFFFFFFF - ); + @Unmodifiable + static RocketData fromNetwork(FriendlyByteBuf buf) { + return RocketDataImpl.fromNetwork(buf); } - //TODO: HSV? - public int red() { + int color(); + + default int red() { return FastColor.ARGB32.red(this.color()); } - public int green() { + default int green() { return FastColor.ARGB32.green(this.color()); } - public int blue() { + default int blue() { return FastColor.ARGB32.blue(this.color()); } - public int alpha() { + default int alpha() { return FastColor.ARGB32.alpha(this.color()); } - public boolean isValid() { - return this.cone() != null && this.body() != null && this.fin() != null && this.engine() != null; - } + @Nullable ResourceKey> cone(); - public DataComponentPatch asPatch() { - DataComponentPatch.Builder builder = DataComponentPatch.builder(); - maybeSet(builder, GCDataComponents.ROCKET_CONE, this.cone); - maybeSet(builder, GCDataComponents.ROCKET_BODY, this.body); - maybeSet(builder, GCDataComponents.ROCKET_FIN, this.fin); - maybeSet(builder, GCDataComponents.ROCKET_BOOSTER, this.booster); - maybeSet(builder, GCDataComponents.ROCKET_ENGINE, this.engine); - maybeSet(builder, GCDataComponents.ROCKET_UPGRADE, this.upgrade); - return builder.build(); - } + @Nullable ResourceKey> body(); - public boolean canTravel(@NotNull HolderLookup.Provider lookup, CelestialBody from, CelestialBody to) { - Holder> cone = maybeGet(lookup, this.cone); - Holder> body = maybeGet(lookup, this.body); - Holder> fin = maybeGet(lookup, this.fin); - Holder> booster = maybeGet(lookup, this.booster); - Holder> engine = maybeGet(lookup, this.engine); - Holder> upgrade = maybeGet(lookup, this.upgrade); - - if (cone != null && body != null && fin != null && engine != null) { - TravelPredicateType.Result type = TravelPredicateType.Result.PASS; - type = type.merge(cone.value().travelPredicate().canTravel(from, to, cone, body, fin, booster, engine, upgrade)); - type = type.merge(body.value().travelPredicate().canTravel(from, to, cone, body, fin, booster, engine, upgrade)); - type = type.merge(fin.value().travelPredicate().canTravel(from, to, cone, body, fin, booster, engine, upgrade)); - type = type.merge(booster == null ? TravelPredicateType.Result.PASS : booster.value().travelPredicate().canTravel(from, to, cone, body, fin, booster, engine, upgrade)); - type = type.merge(engine.value().travelPredicate().canTravel(from, to, cone, body, fin, booster, engine, upgrade)); - type = type.merge(upgrade == null ? TravelPredicateType.Result.PASS : upgrade.value().travelPredicate().canTravel(from, to, cone, body, fin, booster, engine, upgrade)); - return type == TravelPredicateType.Result.ALLOW; - } - - return false; - } + @Nullable ResourceKey> fin(); - private static EitherHolder maybeHolder(@Nullable Holder holder) { - return holder == null ? null : new EitherHolder<>(holder); - } + @Nullable ResourceKey> booster(); - private static EitherHolder maybeHolder(@Nullable ResourceKey key) { - return key == null ? null : new EitherHolder<>(key); - } + @Nullable ResourceKey> engine(); - private static @Nullable Holder maybeGet(@NotNull HolderLookup.Provider lookup, @Nullable EitherHolder holder) { - return holder == null ? null : holder.unwrap(lookup).orElse(null); + @Nullable ResourceKey> upgrade(); + + default void toNbt(@NotNull CompoundTag nbt) { + nbt.putInt("Color", this.color()); + if (this.cone() != null) nbt.putString("Cone", this.cone().location().toString()); + if (this.body() != null) nbt.putString("Body", this.body().location().toString()); + if (this.fin() != null) nbt.putString("Fin", this.fin().location().toString()); + if (this.booster() != null) nbt.putString("Booster", this.booster().location().toString()); + if (this.engine() != null) nbt.putString("Engine", this.engine().location().toString()); + if (this.upgrade() != null) nbt.putString("Upgrade", this.upgrade().location().toString()); } - private void maybeSet(DataComponentPatch.Builder builder, DataComponentType type, @Nullable T value) { - if (value != null) { - builder.set(type, value); - } else { - builder.remove(type); - } + default void toNetwork(FriendlyByteBuf buf) { + buf.writeVarInt(this.color()); + buf.writeBoolean(this.cone() != null); + buf.writeBoolean(this.body() != null); + buf.writeBoolean(this.fin() != null); + buf.writeBoolean(this.booster() != null); + buf.writeBoolean(this.engine() != null); + buf.writeBoolean(this.upgrade() != null); + if (this.cone() != null) buf.writeResourceLocation(this.cone().location()); + if (this.body() != null) buf.writeResourceLocation(this.body().location()); + if (this.fin() != null) buf.writeResourceLocation(this.fin().location()); + if (this.booster() != null) buf.writeResourceLocation(this.booster().location()); + if (this.engine() != null) buf.writeResourceLocation(this.engine().location()); + if (this.upgrade() != null) buf.writeResourceLocation(this.upgrade().location()); } - private static T maybeOptional(@Nullable Optional value) { - // its a nullable optional value - //noinspection OptionalAssignedToNull - return value != null ? value.orElse(null) : null; + default boolean isValid() { + return this.cone() != null && this.body() != null && this.fin() != null && this.engine() != null; } -} + + default boolean canTravel(@NotNull RegistryAccess manager, CelestialBody from, CelestialBody to) { + if (!this.isValid()) return false; + TravelPredicateType.Result type = TravelPredicateType.Result.PASS; + RocketCone cone = manager.registryOrThrow(RocketRegistries.ROCKET_CONE).get(this.cone()); + RocketBody body = manager.registryOrThrow(RocketRegistries.ROCKET_BODY).get(this.body()); + RocketFin fin = manager.registryOrThrow(RocketRegistries.ROCKET_FIN).get(this.fin()); + RocketBooster booster = manager.registryOrThrow(RocketRegistries.ROCKET_BOOSTER).get(this.booster()); + RocketEngine engine = manager.registryOrThrow(RocketRegistries.ROCKET_ENGINE).get(this.engine()); + RocketUpgrade upgrade = manager.registryOrThrow(RocketRegistries.ROCKET_UPGRADE).get(this.upgrade()); + + assert cone != null; + assert body != null; + assert fin != null; + assert engine != null; + + type = type.merge(cone.travelPredicate().canTravel(from, to, cone, body, fin, booster, engine, upgrade)); + type = type.merge(body.travelPredicate().canTravel(from, to, cone, body, fin, booster, engine, upgrade)); + type = type.merge(fin.travelPredicate().canTravel(from, to, cone, body, fin, booster, engine, upgrade)); + type = type.merge(booster == null ? TravelPredicateType.Result.PASS : booster.travelPredicate().canTravel(from, to, cone, body, fin, booster, engine, upgrade)); + type = type.merge(engine.travelPredicate().canTravel(from, to, cone, body, fin, booster, engine, upgrade)); + type = type.merge(upgrade == null ? TravelPredicateType.Result.PASS : upgrade.travelPredicate().canTravel(from, to, cone, body, fin, booster, engine, upgrade)); + + return type == TravelPredicateType.Result.ALLOW; + }} diff --git a/src/main/java/dev/galacticraft/api/rocket/entity/Rocket.java b/src/main/java/dev/galacticraft/api/rocket/entity/Rocket.java index 2d86923f8a..5bd515c8dc 100644 --- a/src/main/java/dev/galacticraft/api/rocket/entity/Rocket.java +++ b/src/main/java/dev/galacticraft/api/rocket/entity/Rocket.java @@ -26,13 +26,16 @@ import dev.galacticraft.api.rocket.RocketData; import dev.galacticraft.api.rocket.part.*; import dev.galacticraft.mod.api.entity.Dockable; +import net.fabricmc.fabric.api.transfer.v1.fluid.FluidVariant; +import net.fabricmc.fabric.api.transfer.v1.storage.Storage; import net.minecraft.core.BlockPos; -import net.minecraft.core.Holder; import net.minecraft.world.damagesource.DamageSource; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.material.Fluid; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -public interface Rocket extends Dockable { +public interface Rocket extends RocketData, Dockable { /** * Returns the launch stage of this rocket. * @return the launch stage of this rocket. @@ -41,19 +44,17 @@ public interface Rocket extends Dockable { void setLaunchStage(LaunchStage stage); - @NotNull RocketData getData(); + @Nullable RocketCone getCone(); - @Nullable Holder> cone(); + @Nullable RocketBody getBody(); - @Nullable Holder> body(); + @Nullable RocketFin getFin(); - @Nullable Holder> fin(); + @Nullable RocketBooster getBooster(); - @Nullable Holder> booster(); + @Nullable RocketEngine getEngine(); - @Nullable Holder> engine(); - - @Nullable Holder> upgrade(); + @Nullable RocketUpgrade getUpgrade(); @NotNull BlockPos getLinkedPad(); diff --git a/src/main/java/dev/galacticraft/api/rocket/part/RocketBody.java b/src/main/java/dev/galacticraft/api/rocket/part/RocketBody.java index fb388c86d7..aa0c046438 100644 --- a/src/main/java/dev/galacticraft/api/rocket/part/RocketBody.java +++ b/src/main/java/dev/galacticraft/api/rocket/part/RocketBody.java @@ -28,14 +28,10 @@ import dev.galacticraft.api.rocket.part.config.RocketBodyConfig; import dev.galacticraft.api.rocket.part.type.RocketBodyType; import dev.galacticraft.impl.rocket.part.RocketBodyImpl; -import dev.galacticraft.mod.util.StreamCodecs; import net.minecraft.core.Holder; import net.minecraft.core.HolderSet; import net.minecraft.core.RegistryCodecs; -import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.RegistryFileCodec; -import net.minecraft.world.item.EitherHolder; import org.jetbrains.annotations.Contract; import org.jetbrains.annotations.NotNull; @@ -43,10 +39,6 @@ public non-sealed interface RocketBody> DIRECT_CODEC = BuiltInRocketRegistries.ROCKET_BODY_TYPE.byNameCodec().dispatch(RocketBody::type, RocketBodyType::codec); Codec>> CODEC = RegistryFileCodec.create(RocketRegistries.ROCKET_BODY, DIRECT_CODEC); Codec>> LIST_CODEC = RegistryCodecs.homogeneousList(RocketRegistries.ROCKET_BODY, DIRECT_CODEC); - StreamCodec>> STREAM_CODEC = StreamCodecs.ofHolder(RocketRegistries.ROCKET_BODY); - - Codec>> EITHER_CODEC = EitherHolder.codec(RocketRegistries.ROCKET_BODY, CODEC); - StreamCodec>> EITHER_STREAM_CODEC = EitherHolder.streamCodec(RocketRegistries.ROCKET_BODY, STREAM_CODEC); @Contract(pure = true, value = "_, _ -> new") static @NotNull > RocketBody create(@NotNull C config, @NotNull T type) { diff --git a/src/main/java/dev/galacticraft/api/rocket/part/RocketBooster.java b/src/main/java/dev/galacticraft/api/rocket/part/RocketBooster.java index b000a07caf..49deaf3ddf 100644 --- a/src/main/java/dev/galacticraft/api/rocket/part/RocketBooster.java +++ b/src/main/java/dev/galacticraft/api/rocket/part/RocketBooster.java @@ -28,14 +28,10 @@ import dev.galacticraft.api.rocket.part.config.RocketBoosterConfig; import dev.galacticraft.api.rocket.part.type.RocketBoosterType; import dev.galacticraft.impl.rocket.part.RocketBoosterImpl; -import dev.galacticraft.mod.util.StreamCodecs; import net.minecraft.core.Holder; import net.minecraft.core.HolderSet; import net.minecraft.core.RegistryCodecs; -import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.RegistryFileCodec; -import net.minecraft.world.item.EitherHolder; import org.jetbrains.annotations.Contract; import org.jetbrains.annotations.NotNull; @@ -43,10 +39,6 @@ public non-sealed interface RocketBooster> DIRECT_CODEC = BuiltInRocketRegistries.ROCKET_BOOSTER_TYPE.byNameCodec().dispatch(RocketBooster::type, RocketBoosterType::codec); Codec>> CODEC = RegistryFileCodec.create(RocketRegistries.ROCKET_BOOSTER, DIRECT_CODEC); Codec>> LIST_CODEC = RegistryCodecs.homogeneousList(RocketRegistries.ROCKET_BOOSTER, DIRECT_CODEC); - StreamCodec>> STREAM_CODEC = StreamCodecs.ofHolder(RocketRegistries.ROCKET_BOOSTER); - - Codec>> EITHER_CODEC = EitherHolder.codec(RocketRegistries.ROCKET_BOOSTER, CODEC); - StreamCodec>> EITHER_STREAM_CODEC = EitherHolder.streamCodec(RocketRegistries.ROCKET_BOOSTER, STREAM_CODEC); @Contract(pure = true, value = "_, _ -> new") static @NotNull > RocketBooster create(@NotNull C config, @NotNull T type) { diff --git a/src/main/java/dev/galacticraft/api/rocket/part/RocketCone.java b/src/main/java/dev/galacticraft/api/rocket/part/RocketCone.java index c4a201b7fb..701c89db0a 100644 --- a/src/main/java/dev/galacticraft/api/rocket/part/RocketCone.java +++ b/src/main/java/dev/galacticraft/api/rocket/part/RocketCone.java @@ -28,14 +28,10 @@ import dev.galacticraft.api.rocket.part.config.RocketConeConfig; import dev.galacticraft.api.rocket.part.type.RocketConeType; import dev.galacticraft.impl.rocket.part.RocketConeImpl; -import dev.galacticraft.mod.util.StreamCodecs; import net.minecraft.core.Holder; import net.minecraft.core.HolderSet; import net.minecraft.core.RegistryCodecs; -import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.RegistryFileCodec; -import net.minecraft.world.item.EitherHolder; import org.jetbrains.annotations.Contract; import org.jetbrains.annotations.NotNull; @@ -43,10 +39,6 @@ public non-sealed interface RocketCone> DIRECT_CODEC = BuiltInRocketRegistries.ROCKET_CONE_TYPE.byNameCodec().dispatch(RocketCone::type, RocketConeType::codec); Codec>> CODEC = RegistryFileCodec.create(RocketRegistries.ROCKET_CONE, DIRECT_CODEC); Codec>> LIST_CODEC = RegistryCodecs.homogeneousList(RocketRegistries.ROCKET_CONE, DIRECT_CODEC); - StreamCodec>> STREAM_CODEC = StreamCodecs.ofHolder(RocketRegistries.ROCKET_CONE); - - Codec>> EITHER_CODEC = EitherHolder.codec(RocketRegistries.ROCKET_CONE, CODEC); - StreamCodec>> EITHER_STREAM_CODEC = EitherHolder.streamCodec(RocketRegistries.ROCKET_CONE, STREAM_CODEC); @Contract(pure = true, value = "_, _ -> new") static @NotNull > RocketCone create(@NotNull C config, @NotNull T type) { diff --git a/src/main/java/dev/galacticraft/api/rocket/part/RocketEngine.java b/src/main/java/dev/galacticraft/api/rocket/part/RocketEngine.java index 2661192e8b..41bf72882a 100644 --- a/src/main/java/dev/galacticraft/api/rocket/part/RocketEngine.java +++ b/src/main/java/dev/galacticraft/api/rocket/part/RocketEngine.java @@ -28,14 +28,10 @@ import dev.galacticraft.api.rocket.part.config.RocketEngineConfig; import dev.galacticraft.api.rocket.part.type.RocketEngineType; import dev.galacticraft.impl.rocket.part.RocketEngineImpl; -import dev.galacticraft.mod.util.StreamCodecs; import net.minecraft.core.Holder; import net.minecraft.core.HolderSet; import net.minecraft.core.RegistryCodecs; -import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.RegistryFileCodec; -import net.minecraft.world.item.EitherHolder; import org.jetbrains.annotations.Contract; import org.jetbrains.annotations.NotNull; @@ -43,11 +39,7 @@ public non-sealed interface RocketEngine> DIRECT_CODEC = BuiltInRocketRegistries.ROCKET_ENGINE_TYPE.byNameCodec().dispatch(RocketEngine::type, RocketEngineType::codec); Codec>> CODEC = RegistryFileCodec.create(RocketRegistries.ROCKET_ENGINE, DIRECT_CODEC); Codec>> LIST_CODEC = RegistryCodecs.homogeneousList(RocketRegistries.ROCKET_ENGINE, DIRECT_CODEC); - StreamCodec>> STREAM_CODEC = StreamCodecs.ofHolder(RocketRegistries.ROCKET_ENGINE); - Codec>> EITHER_CODEC = EitherHolder.codec(RocketRegistries.ROCKET_ENGINE, CODEC); - StreamCodec>> EITHER_STREAM_CODEC = EitherHolder.streamCodec(RocketRegistries.ROCKET_ENGINE, STREAM_CODEC); - @Contract(pure = true, value = "_, _ -> new") static @NotNull > RocketEngine create(@NotNull C config, @NotNull T type) { return new RocketEngineImpl<>(config, type); diff --git a/src/main/java/dev/galacticraft/api/rocket/part/RocketFin.java b/src/main/java/dev/galacticraft/api/rocket/part/RocketFin.java index 23810756b6..63aad39b40 100644 --- a/src/main/java/dev/galacticraft/api/rocket/part/RocketFin.java +++ b/src/main/java/dev/galacticraft/api/rocket/part/RocketFin.java @@ -28,14 +28,10 @@ import dev.galacticraft.api.rocket.part.config.RocketFinConfig; import dev.galacticraft.api.rocket.part.type.RocketFinType; import dev.galacticraft.impl.rocket.part.RocketFinImpl; -import dev.galacticraft.mod.util.StreamCodecs; import net.minecraft.core.Holder; import net.minecraft.core.HolderSet; import net.minecraft.core.RegistryCodecs; -import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.RegistryFileCodec; -import net.minecraft.world.item.EitherHolder; import org.jetbrains.annotations.Contract; import org.jetbrains.annotations.NotNull; @@ -43,10 +39,6 @@ public non-sealed interface RocketFin> DIRECT_CODEC = BuiltInRocketRegistries.ROCKET_FIN_TYPE.byNameCodec().dispatch(RocketFin::type, RocketFinType::codec); Codec>> CODEC = RegistryFileCodec.create(RocketRegistries.ROCKET_FIN, DIRECT_CODEC); Codec>> LIST_CODEC = RegistryCodecs.homogeneousList(RocketRegistries.ROCKET_FIN, DIRECT_CODEC); - StreamCodec>> STREAM_CODEC = StreamCodecs.ofHolder(RocketRegistries.ROCKET_FIN); - - Codec>> EITHER_CODEC = EitherHolder.codec(RocketRegistries.ROCKET_FIN, CODEC); - StreamCodec>> EITHER_STREAM_CODEC = EitherHolder.streamCodec(RocketRegistries.ROCKET_FIN, STREAM_CODEC); @Contract(pure = true, value = "_, _ -> new") static @NotNull > RocketFin create(@NotNull C config, @NotNull T type) { diff --git a/src/main/java/dev/galacticraft/api/rocket/part/RocketUpgrade.java b/src/main/java/dev/galacticraft/api/rocket/part/RocketUpgrade.java index 7e34ac2272..27ecd9c752 100644 --- a/src/main/java/dev/galacticraft/api/rocket/part/RocketUpgrade.java +++ b/src/main/java/dev/galacticraft/api/rocket/part/RocketUpgrade.java @@ -28,14 +28,10 @@ import dev.galacticraft.api.rocket.part.config.RocketUpgradeConfig; import dev.galacticraft.api.rocket.part.type.RocketUpgradeType; import dev.galacticraft.impl.rocket.part.RocketUpgradeImpl; -import dev.galacticraft.mod.util.StreamCodecs; import net.minecraft.core.Holder; import net.minecraft.core.HolderSet; import net.minecraft.core.RegistryCodecs; -import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.RegistryFileCodec; -import net.minecraft.world.item.EitherHolder; import org.jetbrains.annotations.Contract; import org.jetbrains.annotations.NotNull; @@ -43,10 +39,6 @@ public non-sealed interface RocketUpgrade> DIRECT_CODEC = BuiltInRocketRegistries.ROCKET_UPGRADE_TYPE.byNameCodec().dispatch(RocketUpgrade::type, RocketUpgradeType::codec); Codec>> CODEC = RegistryFileCodec.create(RocketRegistries.ROCKET_UPGRADE, DIRECT_CODEC); Codec>> LIST_CODEC = RegistryCodecs.homogeneousList(RocketRegistries.ROCKET_UPGRADE, DIRECT_CODEC); - StreamCodec>> STREAM_CODEC = StreamCodecs.ofHolder(RocketRegistries.ROCKET_UPGRADE); - - Codec>> EITHER_CODEC = EitherHolder.codec(RocketRegistries.ROCKET_UPGRADE, CODEC); - StreamCodec>> EITHER_STREAM_CODEC = EitherHolder.streamCodec(RocketRegistries.ROCKET_UPGRADE, STREAM_CODEC); @Contract(pure = true, value = "_, _ -> new") static @NotNull > RocketUpgrade create(@NotNull C config, @NotNull T type) { diff --git a/src/main/java/dev/galacticraft/api/rocket/part/type/RocketBodyType.java b/src/main/java/dev/galacticraft/api/rocket/part/type/RocketBodyType.java index 992298ec2d..d4eea58574 100644 --- a/src/main/java/dev/galacticraft/api/rocket/part/type/RocketBodyType.java +++ b/src/main/java/dev/galacticraft/api/rocket/part/type/RocketBodyType.java @@ -23,7 +23,6 @@ package dev.galacticraft.api.rocket.part.type; import com.mojang.serialization.Codec; -import com.mojang.serialization.MapCodec; import dev.galacticraft.api.rocket.part.RocketBody; import dev.galacticraft.api.rocket.part.config.RocketBodyConfig; import org.jetbrains.annotations.Contract; @@ -33,10 +32,10 @@ * The body of a rocket. Controls the number of installable rocket upgrades and the maximum passenger count. */ public non-sealed abstract class RocketBodyType implements RocketPartType { - private final @NotNull MapCodec>> codec; + private final @NotNull Codec>> codec; protected RocketBodyType(@NotNull Codec configCodec) { - this.codec = configCodec.fieldOf("config").xmap(this::configure, RocketBody::config); + this.codec = configCodec.fieldOf("config").xmap(this::configure, RocketBody::config).codec(); } @Override @@ -45,7 +44,7 @@ protected RocketBodyType(@NotNull Codec configCodec) { } @Override - public @NotNull MapCodec>> codec() { + public @NotNull Codec>> codec() { return this.codec; } diff --git a/src/main/java/dev/galacticraft/api/rocket/part/type/RocketBoosterType.java b/src/main/java/dev/galacticraft/api/rocket/part/type/RocketBoosterType.java index 796683a929..5db1f2d172 100644 --- a/src/main/java/dev/galacticraft/api/rocket/part/type/RocketBoosterType.java +++ b/src/main/java/dev/galacticraft/api/rocket/part/type/RocketBoosterType.java @@ -23,7 +23,6 @@ package dev.galacticraft.api.rocket.part.type; import com.mojang.serialization.Codec; -import com.mojang.serialization.MapCodec; import dev.galacticraft.api.rocket.part.RocketBooster; import dev.galacticraft.api.rocket.part.config.RocketBoosterConfig; import org.jetbrains.annotations.Contract; @@ -33,10 +32,10 @@ * The booster of a rocket. Controls how fast the rocket accelerates, where the rocket can travel to, and how much fuel is consumed. */ public non-sealed abstract class RocketBoosterType implements RocketPartType { - private final @NotNull MapCodec>> codec; + private final @NotNull Codec>> codec; protected RocketBoosterType(@NotNull Codec configCodec) { - this.codec = configCodec.fieldOf("config").xmap(this::configure, RocketBooster::config); + this.codec = configCodec.fieldOf("config").xmap(this::configure, RocketBooster::config).codec(); } public @NotNull RocketBooster> configure(@NotNull C config) { @@ -44,7 +43,7 @@ protected RocketBoosterType(@NotNull Codec configCodec) { } @Override - public @NotNull MapCodec>> codec() { + public @NotNull Codec>> codec() { return this.codec; } diff --git a/src/main/java/dev/galacticraft/api/rocket/part/type/RocketConeType.java b/src/main/java/dev/galacticraft/api/rocket/part/type/RocketConeType.java index 6415441c0c..c92fccb028 100644 --- a/src/main/java/dev/galacticraft/api/rocket/part/type/RocketConeType.java +++ b/src/main/java/dev/galacticraft/api/rocket/part/type/RocketConeType.java @@ -23,7 +23,6 @@ package dev.galacticraft.api.rocket.part.type; import com.mojang.serialization.Codec; -import com.mojang.serialization.MapCodec; import dev.galacticraft.api.rocket.part.RocketCone; import dev.galacticraft.api.rocket.part.config.RocketConeConfig; import org.jetbrains.annotations.NotNull; @@ -32,10 +31,10 @@ * The cone of a rocket. Controls how fast the rocket can accelerate. */ public non-sealed abstract class RocketConeType implements RocketPartType { - private final @NotNull MapCodec>> codec; + private final @NotNull Codec>> codec; public RocketConeType(@NotNull Codec configCodec) { - this.codec = configCodec.fieldOf("config").xmap(this::configure, RocketCone::config); + this.codec = configCodec.fieldOf("config").xmap(this::configure, RocketCone::config).codec(); } @Override @@ -44,7 +43,7 @@ public RocketConeType(@NotNull Codec configCodec) { } @Override - public @NotNull MapCodec>> codec() { + public @NotNull Codec>> codec() { return this.codec; } diff --git a/src/main/java/dev/galacticraft/api/rocket/part/type/RocketEngineType.java b/src/main/java/dev/galacticraft/api/rocket/part/type/RocketEngineType.java index b883d59acd..7473a0dac5 100644 --- a/src/main/java/dev/galacticraft/api/rocket/part/type/RocketEngineType.java +++ b/src/main/java/dev/galacticraft/api/rocket/part/type/RocketEngineType.java @@ -23,7 +23,6 @@ package dev.galacticraft.api.rocket.part.type; import com.mojang.serialization.Codec; -import com.mojang.serialization.MapCodec; import dev.galacticraft.api.rocket.part.RocketEngine; import dev.galacticraft.api.rocket.part.config.RocketEngineConfig; import org.jetbrains.annotations.NotNull; @@ -32,10 +31,10 @@ * The engine of a rocket. Controls how much fuel the rocket can hold. */ public non-sealed abstract class RocketEngineType implements RocketPartType { - private final @NotNull MapCodec>> codec; + private final @NotNull Codec>> codec; protected RocketEngineType(@NotNull Codec configCodec) { - this.codec = configCodec.fieldOf("config").xmap(this::configure, RocketEngine::config); + this.codec = configCodec.fieldOf("config").xmap(this::configure, RocketEngine::config).codec(); } @Override @@ -44,7 +43,7 @@ protected RocketEngineType(@NotNull Codec configCodec) { } @Override - public @NotNull MapCodec>> codec() { + public @NotNull Codec>> codec() { return this.codec; } diff --git a/src/main/java/dev/galacticraft/api/rocket/part/type/RocketFinType.java b/src/main/java/dev/galacticraft/api/rocket/part/type/RocketFinType.java index 7aa73f4dc6..9963ea334a 100644 --- a/src/main/java/dev/galacticraft/api/rocket/part/type/RocketFinType.java +++ b/src/main/java/dev/galacticraft/api/rocket/part/type/RocketFinType.java @@ -23,7 +23,6 @@ package dev.galacticraft.api.rocket.part.type; import com.mojang.serialization.Codec; -import com.mojang.serialization.MapCodec; import dev.galacticraft.api.rocket.part.RocketFin; import dev.galacticraft.api.rocket.part.config.RocketFinConfig; import org.jetbrains.annotations.NotNull; @@ -32,10 +31,10 @@ * The fins of a rocket. Controls how fast the rocket can accelerate. */ public non-sealed abstract class RocketFinType implements RocketPartType { - private final @NotNull MapCodec>> codec; + private final @NotNull Codec>> codec; protected RocketFinType(@NotNull Codec configCodec) { - this.codec = configCodec.fieldOf("config").xmap(this::configure, RocketFin::config); + this.codec = configCodec.fieldOf("config").xmap(this::configure, RocketFin::config).codec(); } @Override @@ -44,7 +43,7 @@ protected RocketFinType(@NotNull Codec configCodec) { } @Override - public @NotNull MapCodec>> codec() { + public @NotNull Codec>> codec() { return this.codec; } diff --git a/src/main/java/dev/galacticraft/api/rocket/part/type/RocketPartType.java b/src/main/java/dev/galacticraft/api/rocket/part/type/RocketPartType.java index 91b2338585..79bccb68c9 100644 --- a/src/main/java/dev/galacticraft/api/rocket/part/type/RocketPartType.java +++ b/src/main/java/dev/galacticraft/api/rocket/part/type/RocketPartType.java @@ -22,7 +22,7 @@ package dev.galacticraft.api.rocket.part.type; -import com.mojang.serialization.MapCodec; +import com.mojang.serialization.Codec; import dev.galacticraft.api.rocket.entity.Rocket; import dev.galacticraft.api.rocket.part.RocketPart; import dev.galacticraft.api.rocket.part.config.RocketPartConfig; @@ -46,7 +46,7 @@ public sealed interface RocketPartType permits Rocke */ void tick(@NotNull Rocket rocket, @NotNull C config); - @NotNull MapCodec>> codec(); + @NotNull Codec>> codec(); @NotNull ConfiguredTravelPredicate travelPredicate(@NotNull C config); diff --git a/src/main/java/dev/galacticraft/api/rocket/part/type/RocketUpgradeType.java b/src/main/java/dev/galacticraft/api/rocket/part/type/RocketUpgradeType.java index f6c4f2c5dc..d405292059 100644 --- a/src/main/java/dev/galacticraft/api/rocket/part/type/RocketUpgradeType.java +++ b/src/main/java/dev/galacticraft/api/rocket/part/type/RocketUpgradeType.java @@ -23,7 +23,6 @@ package dev.galacticraft.api.rocket.part.type; import com.mojang.serialization.Codec; -import com.mojang.serialization.MapCodec; import dev.galacticraft.api.rocket.part.RocketUpgrade; import dev.galacticraft.api.rocket.part.config.RocketUpgradeConfig; import org.jetbrains.annotations.NotNull; @@ -32,10 +31,10 @@ * An upgrade for a rocket. */ public non-sealed abstract class RocketUpgradeType implements RocketPartType { - private final @NotNull MapCodec>> codec; + private final @NotNull Codec>> codec; protected RocketUpgradeType(@NotNull Codec configCodec) { - this.codec = configCodec.fieldOf("config").xmap(this::configure, RocketUpgrade::config); + this.codec = configCodec.fieldOf("config").xmap(this::configure, RocketUpgrade::config).codec(); } @Override @@ -44,7 +43,7 @@ protected RocketUpgradeType(@NotNull Codec configCodec) { } @Override - public @NotNull MapCodec>> codec() { + public @NotNull Codec>> codec() { return this.codec; } } diff --git a/src/main/java/dev/galacticraft/api/rocket/recipe/RocketPartRecipe.java b/src/main/java/dev/galacticraft/api/rocket/recipe/RocketPartRecipe.java index 5826115a61..6c3b6ae02f 100644 --- a/src/main/java/dev/galacticraft/api/rocket/recipe/RocketPartRecipe.java +++ b/src/main/java/dev/galacticraft/api/rocket/recipe/RocketPartRecipe.java @@ -28,14 +28,14 @@ import dev.galacticraft.api.rocket.recipe.type.RocketPartRecipeType; import dev.galacticraft.impl.rocket.recipe.RocketPartRecipeImpl; import net.minecraft.core.NonNullList; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; +import net.minecraft.world.Container; import net.minecraft.world.item.crafting.Ingredient; import net.minecraft.world.item.crafting.Recipe; -import net.minecraft.world.item.crafting.RecipeInput; import org.jetbrains.annotations.Contract; import org.jetbrains.annotations.NotNull; -public interface RocketPartRecipe> extends Recipe { +public interface RocketPartRecipe> extends Recipe { Codec> DIRECT_CODEC = BuiltInRocketRegistries.ROCKET_PART_RECIPE_TYPE.byNameCodec().dispatch(RocketPartRecipe::type, RocketPartRecipeType::codec); @Contract("_, _ -> new") @@ -56,7 +56,7 @@ public interface RocketPartRecipe getIngredients(); - static void bootstrapRegistries(BootstrapContext> context) { + static void bootstrapRegistries(BootstapContext> context) { } } diff --git a/src/main/java/dev/galacticraft/api/rocket/recipe/type/RocketPartRecipeType.java b/src/main/java/dev/galacticraft/api/rocket/recipe/type/RocketPartRecipeType.java index 232fae06dd..6778aaa56b 100644 --- a/src/main/java/dev/galacticraft/api/rocket/recipe/type/RocketPartRecipeType.java +++ b/src/main/java/dev/galacticraft/api/rocket/recipe/type/RocketPartRecipeType.java @@ -23,25 +23,24 @@ package dev.galacticraft.api.rocket.recipe.type; import com.mojang.serialization.Codec; -import com.mojang.serialization.MapCodec; import dev.galacticraft.api.rocket.recipe.RocketPartRecipe; import dev.galacticraft.api.rocket.recipe.config.RocketPartRecipeConfig; import dev.galacticraft.machinelib.api.filter.ResourceFilter; import net.minecraft.core.NonNullList; +import net.minecraft.world.Container; import net.minecraft.world.item.Item; import net.minecraft.world.item.crafting.Ingredient; -import net.minecraft.world.item.crafting.RecipeInput; import net.minecraft.world.level.Level; import org.jetbrains.annotations.NotNull; public abstract class RocketPartRecipeType { - private final @NotNull MapCodec>> codec; + private final @NotNull Codec>> codec; protected RocketPartRecipeType(@NotNull Codec configCodec) { - this.codec = configCodec.fieldOf("config").xmap(this::configure, RocketPartRecipe::config); + this.codec = configCodec.fieldOf("config").xmap(this::configure, RocketPartRecipe::config).codec(); } - public @NotNull MapCodec>> codec() { + public @NotNull Codec>> codec() { return this.codec; } @@ -57,7 +56,7 @@ protected RocketPartRecipeType(@NotNull Codec configCodec) { public abstract @NotNull NonNullList ingredients(C config); - public abstract boolean matches(RecipeInput input, Level level, C config); + public abstract boolean matches(Container container, Level level, C config); @FunctionalInterface public interface SlotConsumer { diff --git a/src/main/java/dev/galacticraft/api/rocket/travelpredicate/ConfiguredTravelPredicate.java b/src/main/java/dev/galacticraft/api/rocket/travelpredicate/ConfiguredTravelPredicate.java index a513cdc622..19d95133dc 100644 --- a/src/main/java/dev/galacticraft/api/rocket/travelpredicate/ConfiguredTravelPredicate.java +++ b/src/main/java/dev/galacticraft/api/rocket/travelpredicate/ConfiguredTravelPredicate.java @@ -37,7 +37,7 @@ public record ConfiguredTravelPredicate>> CODEC = RegistryFileCodec.create(RocketRegistries.TRAVEL_PREDICATE, DIRECT_CODEC); public static final Codec>> LIST_CODEC = RegistryCodecs.homogeneousList(RocketRegistries.TRAVEL_PREDICATE, DIRECT_CODEC); - public TravelPredicateType.Result canTravel(CelestialBody from, CelestialBody to, Holder> cone, Holder> body, Holder> fin, Holder> booster, Holder> engine, Holder> upgrade) { + public TravelPredicateType.Result canTravel(CelestialBody from, CelestialBody to, RocketCone cone, RocketBody body, RocketFin fin, RocketBooster booster, RocketEngine engine, RocketUpgrade upgrade) { return this.type.canTravel(from, to, cone, body, fin, booster, engine, upgrade, this.config); } } diff --git a/src/main/java/dev/galacticraft/api/rocket/travelpredicate/TravelPredicateType.java b/src/main/java/dev/galacticraft/api/rocket/travelpredicate/TravelPredicateType.java index feb707244b..e46089b793 100644 --- a/src/main/java/dev/galacticraft/api/rocket/travelpredicate/TravelPredicateType.java +++ b/src/main/java/dev/galacticraft/api/rocket/travelpredicate/TravelPredicateType.java @@ -23,7 +23,6 @@ package dev.galacticraft.api.rocket.travelpredicate; import com.mojang.serialization.Codec; -import com.mojang.serialization.MapCodec; import dev.galacticraft.api.registry.BuiltInRocketRegistries; import dev.galacticraft.api.rocket.part.*; import dev.galacticraft.api.universe.celestialbody.CelestialBody; @@ -36,19 +35,19 @@ public abstract class TravelPredicateType { private final @NotNull Holder.Reference> reference = BuiltInRocketRegistries.TRAVEL_PREDICATE_TYPE.createIntrusiveHolder(this); - private final @NotNull MapCodec>> codec; + private final @NotNull Codec>> codec; public TravelPredicateType(@NotNull Codec configCodec) { - this.codec = configCodec.fieldOf("config").xmap(this::configure, ConfiguredTravelPredicate::config); + this.codec = configCodec.fieldOf("config").xmap(this::configure, ConfiguredTravelPredicate::config).codec(); } public ConfiguredTravelPredicate> configure(C config) { return new ConfiguredTravelPredicate<>(config, this); } - public abstract Result canTravel(CelestialBody from, CelestialBody to, Holder> cone, Holder> body, Holder> fin, Holder> booster, Holder> engine, Holder> upgrade, C config); + public abstract Result canTravel(CelestialBody from, CelestialBody to, RocketCone cone, RocketBody body, RocketFin fin, RocketBooster booster, RocketEngine engine, RocketUpgrade upgrade, C config); - public MapCodec>> codec() { + public Codec>> codec() { return this.codec; } diff --git a/src/main/java/dev/galacticraft/api/satellite/SatelliteRecipe.java b/src/main/java/dev/galacticraft/api/satellite/SatelliteRecipe.java index c9113efdc2..aa6e96daba 100644 --- a/src/main/java/dev/galacticraft/api/satellite/SatelliteRecipe.java +++ b/src/main/java/dev/galacticraft/api/satellite/SatelliteRecipe.java @@ -42,15 +42,15 @@ public interface SatelliteRecipe extends Predicate { @Override public DataResult encode(Int2ObjectMap input, DynamicOps ops, T prefix) { RecordBuilder mapBuilder = ops.mapBuilder(); - input.forEach((amount, ingredient) -> mapBuilder.add(ops.createInt(amount).toString(), Ingredient.CODEC.encodeStart(ops, ingredient).getOrThrow())); + input.forEach((amount, ingredient) -> mapBuilder.add(ops.createInt(amount).toString(), Ingredient.CODEC.encodeStart(ops, ingredient).get().orThrow())); return mapBuilder.build(prefix); } @Override public DataResult, T>> decode(DynamicOps ops, T input) { - MapLike mapLike = ops.getMap(input).getOrThrow(); + MapLike mapLike = ops.getMap(input).get().orThrow(); Int2ObjectMap list = new Int2ObjectArrayMap<>(); - mapLike.entries().forEachOrdered(ttPair -> list.put(Integer.decode(ops.getStringValue(ttPair.getFirst()).getOrThrow()).intValue(), Ingredient.CODEC.decode(ops, ttPair.getSecond()).getOrThrow().getFirst())); + mapLike.entries().forEachOrdered(ttPair -> list.put(Integer.decode(ops.getStringValue(ttPair.getFirst()).get().orThrow()).intValue(), Ingredient.CODEC.decode(ops, ttPair.getSecond()).get().orThrow().getFirst())); return DataResult.success(new Pair<>(list, input)); } }.fieldOf("ingredients").forGetter(SatelliteRecipe::ingredients) diff --git a/src/main/java/dev/galacticraft/api/universe/celestialbody/CelestialBody.java b/src/main/java/dev/galacticraft/api/universe/celestialbody/CelestialBody.java index 09c608c512..714a0ab529 100644 --- a/src/main/java/dev/galacticraft/api/universe/celestialbody/CelestialBody.java +++ b/src/main/java/dev/galacticraft/api/universe/celestialbody/CelestialBody.java @@ -23,41 +23,77 @@ package dev.galacticraft.api.universe.celestialbody; import com.mojang.serialization.Codec; +import dev.galacticraft.api.entity.attribute.GcApiEntityAttributes; import dev.galacticraft.api.gas.GasComposition; import dev.galacticraft.api.registry.AddonRegistries; import dev.galacticraft.api.registry.BuiltInAddonRegistries; +import dev.galacticraft.api.universe.celestialbody.landable.Landable; import dev.galacticraft.api.universe.display.CelestialDisplay; import dev.galacticraft.api.universe.display.ring.CelestialRingDisplay; import dev.galacticraft.api.universe.galaxy.Galaxy; import dev.galacticraft.api.universe.position.CelestialPosition; -import dev.galacticraft.mod.util.StreamCodecs; -import net.minecraft.core.Holder; -import net.minecraft.core.HolderSet; -import net.minecraft.core.RegistryCodecs; -import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.core.*; import net.minecraft.network.chat.Component; -import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.RegistryFileCodec; +import net.minecraft.resources.ResourceKey; +import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.entity.ai.attributes.Attributes; +import net.minecraft.world.entity.ai.attributes.AttributeInstance; import net.minecraft.world.level.Level; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import java.util.Optional; + public record CelestialBody>(T type, C config) { public static final Codec> DIRECT_CODEC = BuiltInAddonRegistries.CELESTIAL_BODY_TYPE.byNameCodec().dispatch(CelestialBody::type, CelestialBodyType::codec); public static final Codec>> CODEC = RegistryFileCodec.create(AddonRegistries.CELESTIAL_BODY, DIRECT_CODEC); public static final Codec>> LIST_CODEC = RegistryCodecs.homogeneousList(AddonRegistries.CELESTIAL_BODY, DIRECT_CODEC); - public static final StreamCodec>> STREAM_CODEC = StreamCodecs.ofHolder(AddonRegistries.CELESTIAL_BODY); - public static double getGravity(Entity entity) { - return modifyGravity(entity.level(), entity instanceof LivingEntity living ? living.getAttributeBaseValue(Attributes.GRAVITY) : 0.08d); + public static Registry> getRegistry(RegistryAccess manager) { + return manager.registryOrThrow(AddonRegistries.CELESTIAL_BODY); } - public static double modifyGravity(Level level, double d) { - Holder> holder = level.galacticraft$getCelestialBody(); - return holder != null ? holder.value().gravity() * d : d; + public static CelestialBody getById(RegistryAccess manager, ResourceLocation id) { + return getById(getRegistry(manager), id); + } + + public static ResourceLocation getId(RegistryAccess manager, CelestialBody celestialBody) { + return getId(getRegistry(manager), celestialBody); + } + + public static & Landable> Optional> getByDimension(RegistryAccess manager, ResourceKey key) { + return getByDimension(getRegistry(manager), key); + } + + public static & Landable> Optional> getByDimension(Level level) { + return getByDimension(level.registryAccess(), level.dimension()); + } + + public static CelestialBody getById(Registry> registry, ResourceLocation id) { + return registry.get(id); + } + + public static ResourceLocation getId(Registry> registry, CelestialBody celestialBody) { + return registry.getKey(celestialBody); + } + + public static & Landable> Optional> getByDimension(Registry> registry, ResourceKey key) { + for (CelestialBody body : registry) { + if (body.type() instanceof Landable landable && landable.world(body.config()).equals(key)) + return Optional.of((CelestialBody) body); + } + return Optional.empty(); + } + + public static double getGravity(Entity entity) { + if (entity instanceof LivingEntity living) { + AttributeInstance attribute = living.getAttribute(GcApiEntityAttributes.LOCAL_GRAVITY_LEVEL); + if (attribute != null && attribute.getValue() > 0) + return attribute.getValue() * 0.08d; + } + return CelestialBody.getByDimension(entity.level()).map(celestialBodyType -> celestialBodyType.gravity() * 0.08d).orElse(0.08); } /** diff --git a/src/main/java/dev/galacticraft/api/universe/celestialbody/CelestialBodyType.java b/src/main/java/dev/galacticraft/api/universe/celestialbody/CelestialBodyType.java index 988a3cbbfe..3877add031 100644 --- a/src/main/java/dev/galacticraft/api/universe/celestialbody/CelestialBodyType.java +++ b/src/main/java/dev/galacticraft/api/universe/celestialbody/CelestialBodyType.java @@ -23,7 +23,6 @@ package dev.galacticraft.api.universe.celestialbody; import com.mojang.serialization.Codec; -import com.mojang.serialization.MapCodec; import dev.galacticraft.api.gas.GasComposition; import dev.galacticraft.api.universe.display.CelestialDisplay; import dev.galacticraft.api.universe.display.ring.CelestialRingDisplay; @@ -36,10 +35,10 @@ import org.jetbrains.annotations.Nullable; public abstract class CelestialBodyType { - private final MapCodec>> codec; + private final Codec>> codec; public CelestialBodyType(Codec codec) { - this.codec = codec.fieldOf("config").xmap((config) -> new CelestialBody<>(this, config), CelestialBody::config); + this.codec = codec.fieldOf("config").xmap((config) -> new CelestialBody<>(this, config), CelestialBody::config).codec(); } /** @@ -132,7 +131,7 @@ public long dayLength(C config) { * * @return a codec that will (de)serialize a fully-configured celestial body of this type. */ - public MapCodec>> codec() { + public Codec>> codec() { return this.codec; } diff --git a/src/main/java/dev/galacticraft/api/universe/celestialbody/landable/teleporter/type/CelestialTeleporterType.java b/src/main/java/dev/galacticraft/api/universe/celestialbody/landable/teleporter/type/CelestialTeleporterType.java index 55107d97a2..a03ba27afe 100644 --- a/src/main/java/dev/galacticraft/api/universe/celestialbody/landable/teleporter/type/CelestialTeleporterType.java +++ b/src/main/java/dev/galacticraft/api/universe/celestialbody/landable/teleporter/type/CelestialTeleporterType.java @@ -23,7 +23,6 @@ package dev.galacticraft.api.universe.celestialbody.landable.teleporter.type; import com.mojang.serialization.Codec; -import com.mojang.serialization.MapCodec; import dev.galacticraft.api.universe.celestialbody.CelestialBody; import dev.galacticraft.api.universe.celestialbody.landable.teleporter.CelestialTeleporter; import dev.galacticraft.api.universe.celestialbody.landable.teleporter.config.CelestialTeleporterConfig; @@ -32,13 +31,13 @@ import org.jetbrains.annotations.NotNull; public abstract class CelestialTeleporterType { - private final MapCodec>> codec; + private final Codec>> codec; public CelestialTeleporterType(Codec codec) { - this.codec = codec.fieldOf("config").xmap((config) -> new CelestialTeleporter<>(this, config), CelestialTeleporter::config); + this.codec = codec.fieldOf("config").xmap((config) -> new CelestialTeleporter<>(this, config), CelestialTeleporter::config).codec(); } - public @NotNull MapCodec>> codec() { + public @NotNull Codec>> codec() { return this.codec; } diff --git a/src/main/java/dev/galacticraft/api/universe/display/CelestialDisplay.java b/src/main/java/dev/galacticraft/api/universe/display/CelestialDisplay.java index ccd792eb65..3b92a9ad2b 100644 --- a/src/main/java/dev/galacticraft/api/universe/display/CelestialDisplay.java +++ b/src/main/java/dev/galacticraft/api/universe/display/CelestialDisplay.java @@ -22,7 +22,7 @@ package dev.galacticraft.api.universe.display; -import com.mojang.blaze3d.vertex.Tesselator; +import com.mojang.blaze3d.vertex.BufferBuilder; import com.mojang.serialization.Codec; import dev.galacticraft.api.registry.BuiltInAddonRegistries; import net.fabricmc.api.EnvType; @@ -34,7 +34,7 @@ public record CelestialDisplay> CODEC = BuiltInAddonRegistries.CELESTIAL_DISPLAY_TYPE.byNameCodec().dispatch(CelestialDisplay::type, CelestialDisplayType::codec); @Environment(EnvType.CLIENT) - public Vector4f render(GuiGraphics graphics, Tesselator tesselator, int scale, double mouseX, double mouseY, float delta) { - return this.type().render(graphics, tesselator, scale, mouseX, mouseY, delta, this.config()); + public Vector4f render(GuiGraphics graphics, BufferBuilder buffer, int scale, double mouseX, double mouseY, float delta) { + return this.type().render(graphics, buffer, scale, mouseX, mouseY, delta, this.config()); } } diff --git a/src/main/java/dev/galacticraft/api/universe/display/CelestialDisplayType.java b/src/main/java/dev/galacticraft/api/universe/display/CelestialDisplayType.java index dd00e520d1..953d0970e1 100644 --- a/src/main/java/dev/galacticraft/api/universe/display/CelestialDisplayType.java +++ b/src/main/java/dev/galacticraft/api/universe/display/CelestialDisplayType.java @@ -22,9 +22,8 @@ package dev.galacticraft.api.universe.display; -import com.mojang.blaze3d.vertex.Tesselator; +import com.mojang.blaze3d.vertex.BufferBuilder; import com.mojang.serialization.Codec; -import com.mojang.serialization.MapCodec; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.client.gui.GuiGraphics; @@ -32,16 +31,16 @@ public abstract class CelestialDisplayType { public static final Vector4f NULL_VECTOR = new Vector4f(0, 0, 0, 0); - private final MapCodec>> codec; + private final Codec>> codec; public CelestialDisplayType(Codec codec) { - this.codec = codec.fieldOf("config").xmap((config) -> new CelestialDisplay<>(this, config), CelestialDisplay::config); + this.codec = codec.fieldOf("config").xmap((config) -> new CelestialDisplay<>(this, config), CelestialDisplay::config).codec(); } @Environment(EnvType.CLIENT) - public abstract Vector4f render(GuiGraphics graphics, Tesselator tesselator, int size, double mouseX, double mouseY, float delta, C config); + public abstract Vector4f render(GuiGraphics graphics, BufferBuilder buffer, int size, double mouseX, double mouseY, float delta, C config); - public MapCodec>> codec() { + public Codec>> codec() { return this.codec; } diff --git a/src/main/java/dev/galacticraft/api/universe/display/ring/CelestialRingDisplay.java b/src/main/java/dev/galacticraft/api/universe/display/ring/CelestialRingDisplay.java index d835e50878..4d9451385a 100644 --- a/src/main/java/dev/galacticraft/api/universe/display/ring/CelestialRingDisplay.java +++ b/src/main/java/dev/galacticraft/api/universe/display/ring/CelestialRingDisplay.java @@ -28,13 +28,17 @@ import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.client.gui.GuiGraphics; +import net.minecraft.client.renderer.ShaderInstance; import org.joml.Vector3f; +import java.util.function.Consumer; +import java.util.function.Supplier; + public record CelestialRingDisplay>(T type, C config) { public static final Codec> CODEC = BuiltInAddonRegistries.CELESTIAL_RING_DISPLAY_TYPE.byNameCodec().dispatch(CelestialRingDisplay::type, CelestialRingDisplayType::codec); @Environment(EnvType.CLIENT) - public boolean render(CelestialBody body, GuiGraphics graphics, int count, Vector3f systemOffset, float alpha, float lineScale, double mouseX, double mouseY, float delta) { - return this.type().render(body, graphics, count, systemOffset, lineScale, alpha, mouseX, mouseY, delta, this.config()); + public boolean render(CelestialBody body, GuiGraphics graphics, int count, Vector3f systemOffset, float alpha, float lineScale, double mouseX, double mouseY, float delta, Consumer> shaderSetter) { + return this.type().render(body, graphics, count, systemOffset, lineScale, alpha, mouseX, mouseY, delta, shaderSetter, this.config()); } } diff --git a/src/main/java/dev/galacticraft/api/universe/display/ring/CelestialRingDisplayType.java b/src/main/java/dev/galacticraft/api/universe/display/ring/CelestialRingDisplayType.java index 77b85d319d..b6a9d26294 100644 --- a/src/main/java/dev/galacticraft/api/universe/display/ring/CelestialRingDisplayType.java +++ b/src/main/java/dev/galacticraft/api/universe/display/ring/CelestialRingDisplayType.java @@ -22,25 +22,30 @@ package dev.galacticraft.api.universe.display.ring; +import com.mojang.blaze3d.vertex.BufferBuilder; import com.mojang.serialization.Codec; -import com.mojang.serialization.MapCodec; import dev.galacticraft.api.universe.celestialbody.CelestialBody; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.client.gui.GuiGraphics; +import net.minecraft.client.renderer.ShaderInstance; import org.joml.Vector3f; +import org.joml.Vector4f; + +import java.util.function.Consumer; +import java.util.function.Supplier; public abstract class CelestialRingDisplayType { - private final MapCodec>> codec; + private final Codec>> codec; public CelestialRingDisplayType(Codec codec) { - this.codec = codec.fieldOf("config").xmap((config) -> new CelestialRingDisplay<>(this, config), CelestialRingDisplay::config); + this.codec = codec.fieldOf("config").xmap((config) -> new CelestialRingDisplay<>(this, config), CelestialRingDisplay::config).codec(); } @Environment(EnvType.CLIENT) - public abstract boolean render(CelestialBody body, GuiGraphics graphics, int count, Vector3f systemOffset, float lineScale, float alpha, double mouseX, double mouseY, float delta, C config); + public abstract boolean render(CelestialBody body, GuiGraphics graphics, int count, Vector3f systemOffset, float lineScale, float alpha, double mouseX, double mouseY, float delta, Consumer> shaderSetter, C config); - public MapCodec>> codec() { + public Codec>> codec() { return this.codec; } diff --git a/src/main/java/dev/galacticraft/api/universe/galaxy/Galaxy.java b/src/main/java/dev/galacticraft/api/universe/galaxy/Galaxy.java index 406f98b7a9..4494c1575e 100644 --- a/src/main/java/dev/galacticraft/api/universe/galaxy/Galaxy.java +++ b/src/main/java/dev/galacticraft/api/universe/galaxy/Galaxy.java @@ -28,12 +28,9 @@ import dev.galacticraft.api.universe.display.CelestialDisplay; import dev.galacticraft.api.universe.position.CelestialPosition; import dev.galacticraft.impl.universe.galaxy.GalaxyImpl; -import dev.galacticraft.mod.util.StreamCodecs; import net.minecraft.core.*; -import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.ComponentSerialization; -import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.RegistryFileCodec; import net.minecraft.resources.ResourceLocation; import org.jetbrains.annotations.Contract; @@ -48,7 +45,6 @@ public interface Galaxy { ).apply(instance, Galaxy::create)); Codec> CODEC = RegistryFileCodec.create(AddonRegistries.GALAXY, DIRECT_CODEC); Codec> LIST_CODEC = RegistryCodecs.homogeneousList(AddonRegistries.GALAXY, DIRECT_CODEC); - StreamCodec STREAM_CODEC = StreamCodecs.ofRegistryEntry(AddonRegistries.GALAXY); @Contract("_, _, _, _ -> new") static @NotNull Galaxy create(@NotNull Component name, @NotNull Component description, CelestialPosition position, CelestialDisplay display) { diff --git a/src/main/java/dev/galacticraft/api/universe/position/CelestialPositionType.java b/src/main/java/dev/galacticraft/api/universe/position/CelestialPositionType.java index b478fb16f3..983a38d77b 100644 --- a/src/main/java/dev/galacticraft/api/universe/position/CelestialPositionType.java +++ b/src/main/java/dev/galacticraft/api/universe/position/CelestialPositionType.java @@ -23,13 +23,12 @@ package dev.galacticraft.api.universe.position; import com.mojang.serialization.Codec; -import com.mojang.serialization.MapCodec; public abstract class CelestialPositionType { - private final MapCodec>> codec; + private final Codec>> codec; public CelestialPositionType(Codec codec) { - this.codec = codec.fieldOf("config").xmap((config) -> new CelestialPosition<>(this, config), CelestialPosition::config); + this.codec = codec.fieldOf("config").xmap((config) -> new CelestialPosition<>(this, config), CelestialPosition::config).codec(); } public abstract double x(C config, long worldTime, float delta); @@ -40,7 +39,7 @@ public float lineScale(C config) { return Float.NaN; } - public MapCodec>> codec() { + public Codec>> codec() { return this.codec; } diff --git a/src/main/java/dev/galacticraft/impl/client/accessor/ClientResearchAccessor.java b/src/main/java/dev/galacticraft/impl/client/accessor/ClientResearchAccessor.java index b21b71d560..b7e724c2f8 100644 --- a/src/main/java/dev/galacticraft/impl/client/accessor/ClientResearchAccessor.java +++ b/src/main/java/dev/galacticraft/impl/client/accessor/ClientResearchAccessor.java @@ -28,10 +28,8 @@ import net.minecraft.resources.ResourceLocation; import org.jetbrains.annotations.ApiStatus; -import java.util.List; - @Environment(EnvType.CLIENT) @ApiStatus.Internal public interface ClientResearchAccessor extends ResearchAccessor { - void galacticraft$updateResearch(boolean add, List ids); + void galacticraft$updateResearch(boolean add, ResourceLocation[] ids); } diff --git a/src/main/java/dev/galacticraft/impl/client/rocket/render/BakedModelRocketPartRenderer.java b/src/main/java/dev/galacticraft/impl/client/rocket/render/BakedModelRocketPartRenderer.java index 3ab34ecd37..3767dee25d 100644 --- a/src/main/java/dev/galacticraft/impl/client/rocket/render/BakedModelRocketPartRenderer.java +++ b/src/main/java/dev/galacticraft/impl/client/rocket/render/BakedModelRocketPartRenderer.java @@ -30,15 +30,13 @@ import dev.galacticraft.api.entity.rocket.render.RocketPartRenderer; import dev.galacticraft.api.rocket.entity.Rocket; import dev.galacticraft.mod.client.model.GCBakedModel; -import dev.galacticraft.mod.client.model.GCRenderTypes; +import dev.galacticraft.mod.client.model.GCSheets; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.multiplayer.ClientLevel; -import net.minecraft.client.renderer.GameRenderer; -import net.minecraft.client.renderer.MultiBufferSource; -import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.*; import net.minecraft.client.renderer.texture.TextureAtlas; import java.util.function.Supplier; @@ -53,7 +51,7 @@ public BakedModelRocketPartRenderer(Supplier model) { @Override public void renderGUI(GuiGraphics graphics, int x, int y, int mouseX, int mouseY, float delta) { - RenderSystem.setShader(GameRenderer::getPositionTexColorShader); + RenderSystem.setShader(GameRenderer::getPositionColorTexShader); PoseStack pose = graphics.pose(); pose.pushPose(); pose.translate(x, y-5, 10); //todo: add GUI model transforms to models @@ -93,14 +91,14 @@ public void renderGUI(GuiGraphics graphics, int x, int y, int mouseX, int mouseY @Override public void render(ClientLevel world, PoseStack matrices, Rocket rocket, MultiBufferSource vertices, float partialTick, int light, int overlay) { - int color = rocket.getData().color(); + RenderSystem.setShaderColor(rocket.red() / 255.0f, rocket.green() / 255.0f, rocket.blue() / 255.0f, rocket.alpha() / 255.0f); // matrices.translate(0.5D, 0.5D, 0.5D); // PoseStack.Pose entry = matrices.last(); // VertexConsumer vertexConsumer = vertices.getBuffer(layer.get()); // RenderSystem.setShader(GameRenderer::getPositionColorTexShader); - VertexConsumer consumer = vertices.getBuffer(GCRenderTypes.obj(GCRenderTypes.OBJ_ATLAS)); - this.model.get().render(matrices, null, consumer, light, overlay, color); + VertexConsumer consumer = vertices.getBuffer(GCSheets.obj(GCSheets.OBJ_ATLAS)); + this.model.get().render(matrices, null, consumer, light, overlay); // Minecraft.getInstance().getBlockRenderer().getModelRenderer().renderModel(entry, vertexConsumer, null, this.model.get(), 1, 1, 1, light, overlay); } } diff --git a/src/main/java/dev/galacticraft/impl/codec/MapCodec.java b/src/main/java/dev/galacticraft/impl/codec/MapCodec.java new file mode 100644 index 0000000000..2bf108627c --- /dev/null +++ b/src/main/java/dev/galacticraft/impl/codec/MapCodec.java @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.impl.codec; + +import com.mojang.datafixers.util.Pair; +import com.mojang.serialization.*; + +import java.util.Map; +import java.util.function.Supplier; + +public record MapCodec>(Supplier supplier, Encoder encoderA, Decoder decoderA, + Encoder encoderB, Decoder decoderB) implements Codec { + + public static > MapCodec create(Supplier supplier, Encoder encoderA, Decoder decoderA, Encoder encoderB, Decoder decoderB) { + return new MapCodec<>(supplier, encoderA, decoderA, encoderB, decoderB); + } + + public static > MapCodec create(Supplier supplier, Codec codecA, Codec codecB) { + return new MapCodec<>(supplier, codecA, codecA, codecB, codecB); + } + + @Override + public DataResult> decode(DynamicOps ops, T input) { + M map = supplier.get(); + ops.getMap(input).get().orThrow().entries().forEach(pair -> map.put(this.decoderA.decode(ops, pair.getFirst()).get().orThrow().getFirst(), this.decoderB.decode(ops, pair.getSecond()).get().orThrow().getFirst())); + return DataResult.success(new Pair<>(map, input)); + } + + @Override + public DataResult encode(M input, DynamicOps ops, T prefix) { + RecordBuilder recordBuilder = ops.mapBuilder(); + input.forEach((a, b) -> recordBuilder.add(encoderA.encode(a, ops, prefix), encoderB.encode(b, ops, prefix))); + return recordBuilder.build(prefix); + } +} diff --git a/src/main/java/dev/galacticraft/impl/codec/MapKvCodec.java b/src/main/java/dev/galacticraft/impl/codec/MapKvCodec.java deleted file mode 100644 index 09a3265935..0000000000 --- a/src/main/java/dev/galacticraft/impl/codec/MapKvCodec.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.impl.codec; - -import com.mojang.datafixers.util.Pair; -import com.mojang.serialization.*; - -import java.util.Map; -import java.util.function.Supplier; - -public record MapKvCodec>(Supplier supplier, Encoder encoderA, Decoder decoderA, - Encoder encoderB, Decoder decoderB) implements Codec { - - public static > MapKvCodec create(Supplier supplier, Encoder encoderA, Decoder decoderA, Encoder encoderB, Decoder decoderB) { - return new MapKvCodec<>(supplier, encoderA, decoderA, encoderB, decoderB); - } - - public static > MapKvCodec create(Supplier supplier, Codec codecA, Codec codecB) { - return new MapKvCodec<>(supplier, codecA, codecA, codecB, codecB); - } - - @Override - public DataResult> decode(DynamicOps ops, T input) { - M map = supplier.get(); - ops.getMap(input).getOrThrow().entries().forEach(pair -> map.put(this.decoderA.decode(ops, pair.getFirst()).getOrThrow().getFirst(), this.decoderB.decode(ops, pair.getSecond()).getOrThrow().getFirst())); - return DataResult.success(new Pair<>(map, input)); - } - - @Override - public DataResult encode(M input, DynamicOps ops, T prefix) { - RecordBuilder recordBuilder = ops.mapBuilder(); - input.forEach((k, v) -> recordBuilder.add(encoderA.encode(k, ops, prefix), encoderB.encode(v, ops, prefix))); - return recordBuilder.build(prefix); - } -} diff --git a/src/main/java/dev/galacticraft/impl/data/GCDynamicRegistryProvider.java b/src/main/java/dev/galacticraft/impl/data/GCDynamicRegistryProvider.java index f2c6ee444f..91f9d6c2b5 100644 --- a/src/main/java/dev/galacticraft/impl/data/GCDynamicRegistryProvider.java +++ b/src/main/java/dev/galacticraft/impl/data/GCDynamicRegistryProvider.java @@ -22,15 +22,31 @@ package dev.galacticraft.impl.data; +import java.nio.file.Path; +import java.util.ArrayList; +import java.util.IdentityHashMap; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.stream.Collectors; + import com.google.gson.JsonElement; import com.mojang.serialization.Codec; import com.mojang.serialization.DynamicOps; import com.mojang.serialization.Encoder; import com.mojang.serialization.JsonOps; +import org.jetbrains.annotations.ApiStatus; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput; import net.fabricmc.fabric.api.event.registry.DynamicRegistries; import net.fabricmc.fabric.impl.registry.sync.DynamicRegistriesImpl; -import net.minecraft.core.*; +import net.minecraft.core.Holder; +import net.minecraft.core.HolderGetter; +import net.minecraft.core.HolderLookup; +import net.minecraft.core.HolderOwner; +import net.minecraft.core.Registry; import net.minecraft.core.registries.Registries; import net.minecraft.data.CachedOutput; import net.minecraft.data.DataProvider; @@ -41,16 +57,6 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.levelgen.carver.ConfiguredWorldCarver; import net.minecraft.world.level.levelgen.placement.PlacedFeature; -import org.jetbrains.annotations.ApiStatus; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.nio.file.Path; -import java.util.*; -import java.util.concurrent.CompletableFuture; -import java.util.stream.Collectors; /** * Modified version of {@link net.fabricmc.fabric.api.datagen.v1.provider.FabricDynamicRegistryProvider} to support {@link RegistryDataLoader#DIMENSION_REGISTRIES} @@ -124,7 +130,7 @@ public HolderGetter> configuredCarvers() { */ public Holder ref(ResourceKey key) { RegistryEntries entries = getQueuedEntries(key); - return new UniversalReferenceHack<>(entries.lookup, key); + return Holder.Reference.createStandAlone(entries.lookup, key); } /** @@ -191,7 +197,7 @@ public Holder add(ResourceKey key, T value) { throw new IllegalArgumentException("Trying to add registry key " + key + " more than once."); } - return new UniversalReferenceHack<>(lookup, key); + return Holder.Reference.createStandAlone(lookup, key); } public Holder add(ResourceLocation id, T value) { @@ -200,23 +206,25 @@ public Holder add(ResourceLocation id, T value) { } @Override - public @NotNull CompletableFuture run(CachedOutput writer) { - return registriesFuture.thenCompose(registries -> CompletableFuture - .supplyAsync(() -> { - Entries entries = new Entries(registries, output.getModId()); - configure(registries, entries); - return entries; - }) - .thenCompose(entries -> { - final RegistryOps dynamicOps = registries.createSerializationContext(JsonOps.INSTANCE); - ArrayList> futures = new ArrayList<>(); - - for (RegistryEntries registryEntries : entries.queuedEntries.values()) { - futures.add(writeRegistryEntries(writer, dynamicOps, registryEntries)); - } - - return CompletableFuture.allOf(futures.toArray(CompletableFuture[]::new)); - })); + public CompletableFuture run(CachedOutput writer) { + return registriesFuture.thenCompose(registries -> { + return CompletableFuture + .supplyAsync(() -> { + Entries entries = new Entries(registries, output.getModId()); + configure(registries, entries); + return entries; + }) + .thenCompose(entries -> { + final RegistryOps dynamicOps = RegistryOps.create(JsonOps.INSTANCE, registries); + ArrayList> futures = new ArrayList<>(); + + for (RegistryEntries registryEntries : entries.queuedEntries.values()) { + futures.add(writeRegistryEntries(writer, dynamicOps, registryEntries)); + } + + return CompletableFuture.allOf(futures.toArray(CompletableFuture[]::new)); + }); + }); } private CompletableFuture writeRegistryEntries(CachedOutput writer, RegistryOps ops, RegistryEntries entries) { @@ -245,15 +253,4 @@ private static CompletableFuture writeToPath(Path path, CachedOutput cach return CompletableFuture.completedFuture(null); } - - private static class UniversalReferenceHack extends Holder.Reference { - protected UniversalReferenceHack(HolderOwner holderOwner, @Nullable ResourceKey resourceKey) { - super(Holder.Reference.Type.STAND_ALONE, holderOwner, resourceKey, null); - } - - @Override - public boolean canSerializeIn(HolderOwner owner) { - return true; - } - } } diff --git a/src/main/java/dev/galacticraft/impl/data/GeneratingBootstrapContext.java b/src/main/java/dev/galacticraft/impl/data/GeneratingBootstrapContext.java index 288264dbfe..3b5ecfeead 100644 --- a/src/main/java/dev/galacticraft/impl/data/GeneratingBootstrapContext.java +++ b/src/main/java/dev/galacticraft/impl/data/GeneratingBootstrapContext.java @@ -23,15 +23,16 @@ package dev.galacticraft.impl.data; import com.mojang.serialization.Lifecycle; +import net.fabricmc.fabric.api.datagen.v1.provider.FabricDynamicRegistryProvider; import net.minecraft.core.Holder; import net.minecraft.core.HolderGetter; import net.minecraft.core.HolderLookup; import net.minecraft.core.Registry; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.resources.ResourceKey; import org.jetbrains.annotations.NotNull; -public record GeneratingBootstrapContext(HolderLookup.Provider registries, GCDynamicRegistryProvider.Entries entries) implements BootstrapContext { +public record GeneratingBootstrapContext(HolderLookup.Provider registries, GCDynamicRegistryProvider.Entries entries) implements BootstapContext { @Override public Holder.Reference register(ResourceKey resourceKey, T object, Lifecycle lifecycle) { return (Holder.Reference) this.entries.add(resourceKey, object); diff --git a/src/main/java/dev/galacticraft/impl/internal/accessor/ChunkOxygenSyncer.java b/src/main/java/dev/galacticraft/impl/internal/accessor/ChunkOxygenSyncer.java index 1084956ce0..bb210032ee 100644 --- a/src/main/java/dev/galacticraft/impl/internal/accessor/ChunkOxygenSyncer.java +++ b/src/main/java/dev/galacticraft/impl/internal/accessor/ChunkOxygenSyncer.java @@ -22,15 +22,15 @@ package dev.galacticraft.impl.internal.accessor; -import dev.galacticraft.impl.network.s2c.OxygenUpdatePayload; +import net.minecraft.network.FriendlyByteBuf; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; public interface ChunkOxygenSyncer { - default @Nullable OxygenUpdatePayload.OxygenData[] galacticraft$syncOxygenPacketsToClient() { + default @Nullable FriendlyByteBuf galacticraft$syncOxygenPacketsToClient() { return null; } - default void galacticraft$readOxygenUpdate(@NotNull OxygenUpdatePayload.OxygenData[] data) { + default void galacticraft$readOxygenUpdate(@NotNull FriendlyByteBuf buf) { } } diff --git a/src/main/java/dev/galacticraft/impl/internal/accessor/ChunkSectionOxygenAccessor.java b/src/main/java/dev/galacticraft/impl/internal/accessor/ChunkSectionOxygenAccessor.java index cf9e8a78f3..7b1b076887 100644 --- a/src/main/java/dev/galacticraft/impl/internal/accessor/ChunkSectionOxygenAccessor.java +++ b/src/main/java/dev/galacticraft/impl/internal/accessor/ChunkSectionOxygenAccessor.java @@ -31,23 +31,17 @@ @ApiStatus.Internal public interface ChunkSectionOxygenAccessor { - default boolean galacticraft$isInverted(int x, int y, int z) { - return this.galacticraft$isInverted(x + (y << 4) + (z << 8)); - } + boolean galacticraft$isInverted(int x, int y, int z); - boolean galacticraft$isInverted(int pos); + void galacticraft$setInverted(int x, int y, int z, boolean inverted); - default void galacticraft$setInverted(int x, int y, int z, boolean inverted) { - this.galacticraft$setInverted(x + (y << 4) + (z << 8), inverted); - } + @Nullable BitSet galacticraft$inversionBits(); - void galacticraft$setInverted(int pos, boolean value); + void galacticraft$setInversionBits(@Nullable BitSet set); - boolean galacticraft$isEmpty(); + short galacticraft$modifiedBlocks(); - @Nullable BitSet galacticraft$getBits(); - - void galacticraft$setBits(@Nullable BitSet set); + void galacticraft$setModifiedBlocks(short amount); void galacticraft$writeOxygenPacket(@NotNull FriendlyByteBuf buf); diff --git a/src/main/java/dev/galacticraft/impl/internal/client/fabric/GalacticraftAPIClient.java b/src/main/java/dev/galacticraft/impl/internal/client/fabric/GalacticraftAPIClient.java index 83b0a478f1..0ba056f8dc 100644 --- a/src/main/java/dev/galacticraft/impl/internal/client/fabric/GalacticraftAPIClient.java +++ b/src/main/java/dev/galacticraft/impl/internal/client/fabric/GalacticraftAPIClient.java @@ -22,20 +22,63 @@ package dev.galacticraft.impl.internal.client.fabric; -import dev.galacticraft.impl.network.GCApiClientPacketReceivers; +import dev.galacticraft.api.accessor.GearInventoryProvider; +import dev.galacticraft.api.accessor.SatelliteAccessor; +import dev.galacticraft.api.universe.celestialbody.CelestialBody; +import dev.galacticraft.impl.client.accessor.ClientResearchAccessor; +import dev.galacticraft.impl.internal.accessor.ChunkOxygenSyncer; +import dev.galacticraft.impl.universe.celestialbody.type.SatelliteType; +import dev.galacticraft.impl.universe.position.config.SatelliteConfig; import dev.galacticraft.mod.Constant; import net.fabricmc.api.ClientModInitializer; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; +import net.minecraft.nbt.NbtOps; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.item.ItemStack; import org.jetbrains.annotations.ApiStatus; +import java.util.Objects; + @ApiStatus.Internal @Environment(EnvType.CLIENT) public class GalacticraftAPIClient implements ClientModInitializer { @Override public void onInitializeClient() { Constant.LOGGER.info("Loaded client module"); + ClientPlayNetworking.registerGlobalReceiver(Constant.id("research_update"), (client, networkHandler, buffer, sender) -> { + int len = buffer.readVarInt(); + boolean add = buffer.readBoolean(); + ResourceLocation[] ids = new ResourceLocation[len]; + for (int i = 0; i < len; i++) { + ids[i] = new ResourceLocation(buffer.readUtf()); + } + client.execute(() -> ((ClientResearchAccessor) Objects.requireNonNull(client.player)).galacticraft$updateResearch(add, ids)); + }); + ClientPlayNetworking.registerGlobalReceiver(Constant.id("add_satellite"), (client, networkHandler, buffer, sender) -> ((SatelliteAccessor) networkHandler).galacticraft$addSatellite(buffer.readResourceLocation(), new CelestialBody<>(SatelliteType.INSTANCE, SatelliteConfig.CODEC.decode(NbtOps.INSTANCE, buffer.readNbt()).get().orThrow().getFirst()))); + ClientPlayNetworking.registerGlobalReceiver(Constant.id("remove_satellite"), (client, networkHandler, buffer, sender) -> { + FriendlyByteBuf buf = new FriendlyByteBuf(buffer.copy()); + ((SatelliteAccessor) networkHandler).galacticraft$removeSatellite(buf.readResourceLocation()); + }); + ClientPlayNetworking.registerGlobalReceiver(Constant.id("oxygen_update"), (client, handler, buf, responseSender) -> { + int x = buf.readInt(); + int y = buf.readInt(); + ((ChunkOxygenSyncer) handler.getLevel().getChunk(x, y)).galacticraft$readOxygenUpdate(buf); + }); - GCApiClientPacketReceivers.register(); + ClientPlayNetworking.registerGlobalReceiver(Constant.id("gear_inv_sync"), (client, handler, buf, responseSender) -> { + int entity = buf.readInt(); + ItemStack[] stacks = new ItemStack[buf.readInt()]; + for (int i = 0; i < stacks.length; i++) { + stacks[i] = buf.readItem(); + } + client.execute(() -> { + for (int i = 0; i < stacks.length; i++) { + ((GearInventoryProvider) Objects.requireNonNull(client.level.getEntity(entity))).galacticraft$getGearInv().setItem(i, stacks[i]); + } + }); + }); } } diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/LevelCelestialBodyMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/LevelCelestialBodyMixin.java deleted file mode 100644 index 92c72621e4..0000000000 --- a/src/main/java/dev/galacticraft/impl/internal/mixin/LevelCelestialBodyMixin.java +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.impl.internal.mixin; - -import dev.galacticraft.api.accessor.LevelBodyAccessor; -import dev.galacticraft.api.registry.AddonRegistries; -import dev.galacticraft.api.universe.celestialbody.CelestialBody; -import dev.galacticraft.api.universe.celestialbody.landable.Landable; -import net.minecraft.core.Holder; -import net.minecraft.core.RegistryAccess; -import net.minecraft.resources.ResourceKey; -import net.minecraft.util.profiling.ProfilerFiller; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.dimension.DimensionType; -import net.minecraft.world.level.storage.WritableLevelData; -import org.jetbrains.annotations.Nullable; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Unique; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; - -import java.util.function.Supplier; - -@Mixin(value = Level.class, priority = 100) // apply before oxygen level mixin -public class LevelCelestialBodyMixin implements LevelBodyAccessor { - @Unique - private Holder> celestialBody = null; - - @Inject(method = "(Lnet/minecraft/world/level/storage/WritableLevelData;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/core/Holder;Ljava/util/function/Supplier;ZZJI)V", at = @At("RETURN")) - private void init(WritableLevelData writableLevelData, - ResourceKey levelKey, - RegistryAccess registryAccess, - Holder holder, - Supplier supplier, - boolean bl, - boolean bl2, - long l, - int i, CallbackInfo ci) { - this.celestialBody = registryAccess.registryOrThrow(AddonRegistries.CELESTIAL_BODY).holders().filter( - b -> b.value().type() instanceof Landable landable && landable.world(b.value().config()).equals(levelKey) - ).findFirst().orElse(null); - } - - @Override - public @Nullable Holder> galacticraft$getCelestialBody() { - return this.celestialBody; - } -} diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/LevelTimeAccessMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/LevelTimeAccessMixin.java index 16f178b6dd..863a002dd5 100644 --- a/src/main/java/dev/galacticraft/impl/internal/mixin/LevelTimeAccessMixin.java +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/LevelTimeAccessMixin.java @@ -22,6 +22,7 @@ package dev.galacticraft.impl.internal.mixin; +import dev.galacticraft.api.universe.celestialbody.CelestialBody; import dev.galacticraft.mod.tag.GCTags; import net.minecraft.core.registries.Registries; import net.minecraft.world.level.Level; @@ -42,10 +43,10 @@ private void getGalacticTimeOfDay(float partialTicks, CallbackInfoReturnable reference.is(GCTags.SPACE)).orElse(false)) { + var holder = CelestialBody.getByDimension(level); + if (holder.isPresent() && dimensionTypeRegistry.getHolder(dimensionTypeRegistry.getId(dimensionType())).map(reference -> reference.is(GCTags.SPACE)).orElse(false)) { long worldTime = this.dayTime(); - long dayLength = holder.value().dayLength(); + long dayLength = holder.get().dayLength(); int j = (int) (worldTime % dayLength); float f1 = (j + partialTicks) / dayLength - 0.25F; diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/MinecraftServerMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/MinecraftServerMixin.java index 2c46779805..a42f8ec60e 100644 --- a/src/main/java/dev/galacticraft/impl/internal/mixin/MinecraftServerMixin.java +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/MinecraftServerMixin.java @@ -79,7 +79,7 @@ private void galacticraft_saveSatellites(boolean suppressLogs, boolean bl, boole Path path = this.storageSource.getLevelPath(LevelResource.ROOT); ListTag nbt = new ListTag(); for (Map.Entry> entry : this.satellites.entrySet()) { - CompoundTag compound = (CompoundTag) SatelliteConfig.CODEC.encode(entry.getValue().config(), NbtOps.INSTANCE, new CompoundTag()).getOrThrow(); + CompoundTag compound = (CompoundTag) SatelliteConfig.CODEC.encode(entry.getValue().config(), NbtOps.INSTANCE, new CompoundTag()).get().orThrow(); compound.putString("id", entry.getKey().toString()); nbt.add(compound); } @@ -100,13 +100,13 @@ private void galacticraft_loadSatellites(CallbackInfo ci) { ListTag nbt = NbtIo.readCompressed(worldFile.resolve("satellites.dat"), NbtAccounter.unlimitedHeap()).getList("satellites", NbtType.COMPOUND); for (Tag compound : nbt) { assert compound instanceof CompoundTag : "Not a compound?!"; - ResourceLocation id = ResourceLocation.parse(((CompoundTag) compound).getString("id")); + ResourceLocation id = new ResourceLocation(((CompoundTag) compound).getString("id")); DataResult> decode = SatelliteConfig.CODEC.decode(NbtOps.INSTANCE, compound); if (decode.error().isPresent()) { Constant.LOGGER.error("Skipping satellite '{}' - {}", id, decode.error().get().message()); continue; } - this.satellites.put(id, new CelestialBody<>(SatelliteType.INSTANCE, decode.getOrThrow().getFirst())); + this.satellites.put(id, new CelestialBody<>(SatelliteType.INSTANCE, decode.get().orThrow().getFirst())); } } catch (Throwable exception) { throw new RuntimeException("Failed to read satellite data!", exception); diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/client/AbstractClientPlayerEntityMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/client/AbstractClientPlayerEntityMixin.java index 0abb269536..43d15afb66 100644 --- a/src/main/java/dev/galacticraft/impl/internal/mixin/client/AbstractClientPlayerEntityMixin.java +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/client/AbstractClientPlayerEntityMixin.java @@ -33,13 +33,11 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.multiplayer.ClientLevel; import net.minecraft.client.player.AbstractClientPlayer; -import net.minecraft.core.Holder; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.Tag; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.Container; import net.minecraft.world.SimpleContainer; -import net.minecraft.world.entity.Entity; import net.minecraft.world.item.ItemStack; import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mixin; @@ -47,7 +45,6 @@ import org.spongepowered.asm.mixin.Unique; import java.util.HashSet; -import java.util.List; import java.util.Set; @Mixin(AbstractClientPlayer.class) @@ -67,8 +64,7 @@ public abstract class AbstractClientPlayerEntityMixin implements ClientResearchA private SimpleContainer galacticraft_createGearInventory() { SimpleContainer inv = new GearInventory(); inv.addListener((inventory) -> { - Holder> holder = this.clientLevel.galacticraft$getCelestialBody(); - float pressure = holder != null ? holder.value().atmosphere().pressure() : 1.0f; + float pressure = CelestialBody.getByDimension(this.clientLevel).map(body -> body.atmosphere().pressure()).orElse(1.0f); if (pressure != 1.0f) { for (int i = 0; i < inventory.getContainerSize(); i++) { ItemStack stack = inventory.getItem(i); @@ -95,7 +91,7 @@ private SimpleContainer galacticraft_createGearInventory() { } @Override - public void galacticraft$updateResearch(boolean add, List ids) { + public void galacticraft$updateResearch(boolean add, ResourceLocation[] ids) { for (ResourceLocation id : ids) { if (add) { this.unlockedResearch.add(id); @@ -127,11 +123,11 @@ private SimpleContainer galacticraft_createGearInventory() { @Override public void galacticraft$writeGearToNbt(CompoundTag tag) { - tag.put(Constant.Nbt.GEAR_INV, this.galacticraft$getGearInv().createTag(((Entity)(Object)this).registryAccess())); + tag.put(Constant.Nbt.GEAR_INV, this.galacticraft$getGearInv().createTag()); } @Override public void galacticraft$readGearFromNbt(CompoundTag tag) { - this.galacticraft$getGearInv().fromTag(tag.getList(Constant.Nbt.GEAR_INV, Tag.TAG_COMPOUND), ((Entity)(Object)this).registryAccess()); + this.galacticraft$getGearInv().fromTag(tag.getList(Constant.Nbt.GEAR_INV, Tag.TAG_COMPOUND)); } } diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/client/MinecraftClientMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/client/MinecraftClientMixin.java index bee83e5940..e3cd249783 100644 --- a/src/main/java/dev/galacticraft/impl/internal/mixin/client/MinecraftClientMixin.java +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/client/MinecraftClientMixin.java @@ -27,10 +27,8 @@ import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.screens.ReceivingLevelScreen; import net.minecraft.client.multiplayer.ClientLevel; import net.minecraft.client.sounds.SoundManager; -import net.minecraft.core.Holder; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.injection.At; @@ -44,14 +42,9 @@ public abstract class MinecraftClientMixin { public abstract SoundManager getSoundManager(); @Inject(method = "setLevel", at = @At("RETURN")) - private void updateSoundMultiplier(ClientLevel level, ReceivingLevelScreen.Reason reason, CallbackInfo ci) { - if (level != null) { - Holder> holder = level.galacticraft$getCelestialBody(); - if (holder != null) { - ((SoundSystemAccessor) ((SoundManagerAccessor) this.getSoundManager()).getSoundSystem()).galacticraft$updateAtmosphericVolumeMultiplier(holder.value().atmosphere().pressure()); - } else { - ((SoundSystemAccessor) ((SoundManagerAccessor) this.getSoundManager()).getSoundSystem()).galacticraft$updateAtmosphericVolumeMultiplier(1.0f); - } + private void galacticraft_updateSoundMultiplier(ClientLevel world, CallbackInfo ci) { + if (world != null) { + ((SoundSystemAccessor) ((SoundManagerAccessor) this.getSoundManager()).getSoundSystem()).galacticraft$updateAtmosphericVolumeMultiplier(CelestialBody.getByDimension(world).map(body -> body.atmosphere().pressure()).orElse(1.0f)); } else { ((SoundSystemAccessor) ((SoundManagerAccessor) this.getSoundManager()).getSoundSystem()).galacticraft$updateAtmosphericVolumeMultiplier(1.0f); } diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/client/ParticleManagerMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/client/ParticleManagerMixin.java index f86e6a8903..b07c09a045 100644 --- a/src/main/java/dev/galacticraft/impl/internal/mixin/client/ParticleManagerMixin.java +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/client/ParticleManagerMixin.java @@ -28,7 +28,6 @@ import net.minecraft.client.multiplayer.ClientLevel; import net.minecraft.client.particle.Particle; import net.minecraft.client.particle.ParticleEngine; -import net.minecraft.core.Holder; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.injection.At; @@ -43,7 +42,6 @@ public abstract class ParticleManagerMixin { @Inject(method = "add(Lnet/minecraft/client/particle/Particle;)V", at = @At("RETURN")) protected void galacticraft_overrideGravity(Particle particle, CallbackInfo ci) { - Holder> holder = this.level.galacticraft$getCelestialBody(); - if (holder != null) ((ParticleAccessor) particle).setGravityStrength(((ParticleAccessor) particle).getGravityStrength() * holder.value().gravity()); + CelestialBody.getByDimension(this.level).ifPresent(celestialBodyType -> ((ParticleAccessor) particle).setGravityStrength(((ParticleAccessor) particle).getGravityStrength() * celestialBodyType.gravity())); } } diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/gear/LivingEntityMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/gear/LivingEntityMixin.java index 292ea4940b..2747c01f14 100644 --- a/src/main/java/dev/galacticraft/impl/internal/mixin/gear/LivingEntityMixin.java +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/gear/LivingEntityMixin.java @@ -47,7 +47,6 @@ import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.enchantment.EnchantmentEffectComponents; import net.minecraft.world.item.enchantment.EnchantmentHelper; import net.minecraft.world.level.GameRules; import net.minecraft.world.level.Level; @@ -70,7 +69,7 @@ public LivingEntityMixin(EntityType type, Level world) { @Redirect(method = "baseTick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/LivingEntity;isEyeInFluid(Lnet/minecraft/tags/TagKey;)Z", ordinal = 0)) private boolean galacticraft_testForBreathability(LivingEntity entity, TagKey tag) { - return entity.isEyeInFluid(tag) || !entity.level().isBreathable(entity.blockPosition().relative(Direction.UP, (int) Math.floor(this.getEyeHeight(entity.getPose())))); + return entity.isEyeInFluid(tag) || !entity.level().isBreathable(entity.blockPosition().relative(Direction.UP, (int) Math.floor(this.getEyeHeight(entity.getPose(), entity.getDimensions(entity.getPose()))))); } @Inject(method = "tick", at = @At(value = "RETURN")) @@ -84,7 +83,7 @@ private void tickAccessories(CallbackInfo ci) { } } - @Inject(method = "decreaseAirSupply", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/LivingEntity;getAttribute(Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/ai/attributes/AttributeInstance;"), cancellable = true) + @Inject(method = "decreaseAirSupply", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/item/enchantment/EnchantmentHelper;getRespiration(Lnet/minecraft/world/entity/LivingEntity;)I"), cancellable = true) private void galacticraft_modifyAirLevel(int air, CallbackInfoReturnable ci) { AttributeInstance attribute = ((LivingEntity) (Object) this).getAttribute(GcApiEntityAttributes.CAN_BREATHE_IN_SPACE); if (attribute != null && attribute.getValue() >= 0.99D) { @@ -128,7 +127,7 @@ private void galacticraft_dropGearInventory(CallbackInfo ci) { for (int i = 0; i < gearInv.getContainerSize(); ++i) { ItemStack itemStack = gearInv.getItem(i); gearInv.setItem(i, ItemStack.EMPTY); - if (!itemStack.isEmpty() && !EnchantmentHelper.has(itemStack, EnchantmentEffectComponents.PREVENT_EQUIPMENT_DROP)) { + if (!itemStack.isEmpty() && !EnchantmentHelper.hasVanishingCurse(itemStack)) { //noinspection ConstantConditions if (((Object) this) instanceof Player player) { player.drop(itemStack, true, false); diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/gear/PlayerListMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/gear/PlayerListMixin.java index 72b16531dd..04b76c2258 100644 --- a/src/main/java/dev/galacticraft/impl/internal/mixin/gear/PlayerListMixin.java +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/gear/PlayerListMixin.java @@ -22,15 +22,16 @@ package dev.galacticraft.impl.internal.mixin.gear; -import dev.galacticraft.impl.network.s2c.GearInvPayload; +import dev.galacticraft.mod.Constant; +import net.fabricmc.fabric.api.networking.v1.PacketByteBufs; import net.fabricmc.fabric.api.networking.v1.PlayerLookup; import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; import net.minecraft.network.Connection; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.server.level.ServerPlayer; import net.minecraft.server.network.CommonListenerCookie; import net.minecraft.server.players.PlayerList; import net.minecraft.world.Container; -import net.minecraft.world.item.ItemStack; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; @@ -42,19 +43,20 @@ public abstract class PlayerListMixin { @Inject(method = "placeNewPlayer", at = @At("RETURN")) private void syncGearInventory(Connection connection, ServerPlayer player, CommonListenerCookie cookie, CallbackInfo ci) { + FriendlyByteBuf buf = PacketByteBufs.create(); Container inventory = player.galacticraft$getGearInv(); - ItemStack[] stacks = new ItemStack[inventory.getContainerSize()]; + buf.writeInt(player.getId()); + buf.writeInt(inventory.getContainerSize()); for (int i = 0; i < inventory.getContainerSize(); i++) { - stacks[i] = inventory.getItem(i); + buf.writeItem(inventory.getItem(i)); } - GearInvPayload gearInvPayload = new GearInvPayload(player.getId(), stacks); Collection tracking = PlayerLookup.tracking(player); if (!tracking.contains(player)) { - ServerPlayNetworking.send(player, gearInvPayload); + ServerPlayNetworking.send(player, Constant.id("gear_inv_sync"), buf); } - for (ServerPlayer remote : tracking) { - ServerPlayNetworking.send(remote, gearInvPayload); + for (ServerPlayer pl : tracking) { + ServerPlayNetworking.send(pl, Constant.id("gear_inv_sync"), PacketByteBufs.copy(buf)); } } } diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/gear/ServerPlayerMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/gear/ServerPlayerMixin.java index 366c7bcc88..10f82eea03 100644 --- a/src/main/java/dev/galacticraft/impl/internal/mixin/gear/ServerPlayerMixin.java +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/gear/ServerPlayerMixin.java @@ -24,19 +24,18 @@ import dev.galacticraft.api.accessor.GearInventoryProvider; import dev.galacticraft.impl.internal.inventory.MappedInventory; -import dev.galacticraft.impl.network.s2c.GearInvPayload; import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.world.inventory.GearInventory; +import net.fabricmc.fabric.api.networking.v1.PacketByteBufs; import net.fabricmc.fabric.api.networking.v1.PlayerLookup; import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.Tag; -import net.minecraft.server.level.ServerLevel; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.server.level.ServerPlayer; import net.minecraft.server.network.ServerGamePacketListenerImpl; import net.minecraft.world.Container; import net.minecraft.world.SimpleContainer; -import net.minecraft.world.item.ItemStack; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.Unique; @@ -47,8 +46,6 @@ public abstract class ServerPlayerMixin implements GearInventoryProvider { @Shadow public ServerGamePacketListenerImpl connection; - @Shadow public abstract ServerLevel serverLevel(); - private final @Unique SimpleContainer gearInv = this.galacticraft_createGearInventory(); private final @Unique Container tankInv = MappedInventory.create(this.gearInv, 4, 5); private final @Unique Container thermalArmorInv = MappedInventory.create(this.gearInv, 0, 1, 2, 3); @@ -58,20 +55,21 @@ public abstract class ServerPlayerMixin implements GearInventoryProvider { private SimpleContainer galacticraft_createGearInventory() { SimpleContainer inv = new GearInventory(); inv.addListener((inventory) -> { - ItemStack[] stacks = new ItemStack[inventory.getContainerSize()]; + FriendlyByteBuf buf = PacketByteBufs.create(); + buf.writeInt(((ServerPlayer) (Object) this).getId()); + buf.writeInt(inventory.getContainerSize()); for (int i = 0; i < inventory.getContainerSize(); i++) { - stacks[i] = inventory.getItem(i); + buf.writeItem(inventory.getItem(i)); } - ServerPlayer player = (ServerPlayer) (Object) this; - GearInvPayload payload = new GearInvPayload(player.getId(), stacks); if (this.connection != null) { - Collection tracking = PlayerLookup.tracking(player); - if (!tracking.contains(player)) { - ServerPlayNetworking.send(player, payload); + Collection tracking = PlayerLookup.tracking(((ServerPlayer) (Object) this)); + //noinspection SuspiciousMethodCalls + if (!tracking.contains(this)) { + ServerPlayNetworking.send(((ServerPlayer) (Object) this), Constant.id("gear_inv_sync"), buf); } - for (ServerPlayer remote : tracking) { - ServerPlayNetworking.send(remote, payload); + for (ServerPlayer player : tracking) { + ServerPlayNetworking.send(player, Constant.id("gear_inv_sync"), PacketByteBufs.copy(buf)); } } }); @@ -100,11 +98,11 @@ private SimpleContainer galacticraft_createGearInventory() { @Override public void galacticraft$writeGearToNbt(CompoundTag tag) { - tag.put(Constant.Nbt.GEAR_INV, this.galacticraft$getGearInv().createTag(this.serverLevel().registryAccess())); + tag.put(Constant.Nbt.GEAR_INV, this.galacticraft$getGearInv().createTag()); } @Override public void galacticraft$readGearFromNbt(CompoundTag tag) { - this.galacticraft$getGearInv().fromTag(tag.getList(Constant.Nbt.GEAR_INV, Tag.TAG_COMPOUND), this.serverLevel().registryAccess()); + this.galacticraft$getGearInv().fromTag(tag.getList(Constant.Nbt.GEAR_INV, Tag.TAG_COMPOUND)); } } diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/gravity/ArrowGravityMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/gravity/ArrowGravityMixin.java new file mode 100644 index 0000000000..daeb7487c6 --- /dev/null +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/gravity/ArrowGravityMixin.java @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.impl.internal.mixin.gravity; + +import dev.galacticraft.api.universe.celestialbody.CelestialBody; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.projectile.AbstractArrow; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.Constant; +import org.spongepowered.asm.mixin.injection.ModifyConstant; + +@Mixin(AbstractArrow.class) +public class ArrowGravityMixin { + @ModifyConstant(method = "tick", constant = @Constant(doubleValue = 0.05000000074505806)) // that's what it is in the bytecode + private double galacticraft_changeArrowGravity(double defaultValue) { + return CelestialBody.getByDimension(((Entity) (Object) this).level()).map(celestialBody -> celestialBody.gravity() * defaultValue).orElse(defaultValue); + } +} diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/gravity/EntityGravityMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/gravity/EntityGravityMixin.java index 5e3f8d699e..6730e38924 100644 --- a/src/main/java/dev/galacticraft/impl/internal/mixin/gravity/EntityGravityMixin.java +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/gravity/EntityGravityMixin.java @@ -23,23 +23,18 @@ package dev.galacticraft.impl.internal.mixin.gravity; import dev.galacticraft.api.universe.celestialbody.CelestialBody; -import net.minecraft.core.Holder; import net.minecraft.world.entity.Entity; -import net.minecraft.world.level.Level; +import net.minecraft.world.entity.item.ItemEntity; +import net.minecraft.world.entity.item.PrimedTnt; +import net.minecraft.world.entity.vehicle.AbstractMinecart; import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.Constant; +import org.spongepowered.asm.mixin.injection.ModifyConstant; -@Mixin(Entity.class) +@Mixin({ItemEntity.class, PrimedTnt.class, AbstractMinecart.class}) public abstract class EntityGravityMixin { - @Shadow protected abstract double getDefaultGravity(); - - @Shadow private Level level; - - @Redirect(method = "getGravity", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;getDefaultGravity()D")) - private double replaceGravity(Entity instance) { - Holder> holder = this.level.galacticraft$getCelestialBody(); - return (holder != null ? holder.value().gravity() : 1.0d) * this.getDefaultGravity(); + @ModifyConstant(method = "tick", constant = @Constant(doubleValue = -0.04D)) + private double galacticraft_changeEntityGravity(double defaultValue) { + return CelestialBody.getByDimension(((Entity) (Object) this).level()).map(celestialBody -> celestialBody.gravity() * defaultValue).orElse(defaultValue); } -} +} \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/gravity/LivingEntityMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/gravity/LivingEntityMixin.java new file mode 100644 index 0000000000..9660e37fd5 --- /dev/null +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/gravity/LivingEntityMixin.java @@ -0,0 +1,84 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.impl.internal.mixin.gravity; + +import dev.galacticraft.api.entity.attribute.GcApiEntityAttributes; +import dev.galacticraft.api.universe.celestialbody.CelestialBody; +import net.minecraft.util.Mth; +import net.minecraft.world.effect.MobEffect; +import net.minecraft.world.effect.MobEffectInstance; +import net.minecraft.world.effect.MobEffects; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.ai.attributes.AttributeInstance; +import net.minecraft.world.level.Level; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Constant; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.ModifyConstant; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(LivingEntity.class) +public abstract class LivingEntityMixin extends Entity { + @Shadow @Nullable public abstract MobEffectInstance getEffect(MobEffect mobEffect); + + public LivingEntityMixin(EntityType type, Level level) { + super(type, level); + } + + @ModifyConstant(method = "travel", constant = @Constant(doubleValue = 0.08)) + private double galacticraft_modifyGravity(double d) { + AttributeInstance attribute = ((LivingEntity) (Object) this).getAttribute(GcApiEntityAttributes.LOCAL_GRAVITY_LEVEL); + if (attribute != null && attribute.getValue() > 0) { + return attribute.getValue() * 0.08d; + } else { + return CelestialBody.getByDimension(this.level()).map(celestialBodyType -> celestialBodyType.gravity() * 0.08d).orElse(0.08); + } + } + + @ModifyConstant(method = "travel", constant = @Constant(doubleValue = 0.01)) + private double galacticraft_modifySlowFallingGravity(double d) { + AttributeInstance attribute = ((LivingEntity) (Object) this).getAttribute(GcApiEntityAttributes.LOCAL_GRAVITY_LEVEL); + if (attribute != null && attribute.getValue() > 0) { + return attribute.getValue() * 0.01d; + } else { + return CelestialBody.getByDimension(this.level()).map(celestialBodyType -> celestialBodyType.gravity() * 0.01d).orElse(0.01); + } + } + + @Inject(method = "calculateFallDamage", at = @At("HEAD"), cancellable = true) + protected void galacticraft_modifyFallDamage(float fallDistance, float damageMultiplier, CallbackInfoReturnable cir) { + MobEffectInstance effectInstance = this.getEffect(MobEffects.JUMP); + AttributeInstance attribute = ((LivingEntity) (Object) this).getAttribute(GcApiEntityAttributes.LOCAL_GRAVITY_LEVEL); + float ff = effectInstance == null ? 0.0F : (float) (effectInstance.getAmplifier() + 6); + if (attribute != null && attribute.getValue() > 0) { + cir.setReturnValue((int) (Mth.ceil((fallDistance * attribute.getValue()) - 3.0F - ff) * damageMultiplier)); + } else { + CelestialBody.getByDimension(this.level()).ifPresent(celestialBodyType -> cir.setReturnValue((int) (Mth.ceil((fallDistance * celestialBodyType.gravity()) - 3.0F - ff) * damageMultiplier))); + } + } +} diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/ChunkHolderMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/ChunkHolderMixin.java index 4d20384bc0..e2e8d16587 100644 --- a/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/ChunkHolderMixin.java +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/ChunkHolderMixin.java @@ -23,11 +23,11 @@ package dev.galacticraft.impl.internal.mixin.oxygen; import dev.galacticraft.impl.internal.accessor.ChunkOxygenSyncer; -import dev.galacticraft.impl.network.s2c.OxygenUpdatePayload; +import dev.galacticraft.mod.Constant; import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.protocol.Packet; import net.minecraft.server.level.ChunkHolder; -import net.minecraft.server.level.GenerationChunkHolder; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.chunk.LevelChunk; @@ -46,12 +46,11 @@ public abstract class ChunkHolderMixin { @Shadow @Final private ChunkHolder.PlayerProvider playerProvider; + @Shadow @Final ChunkPos pos; + @Inject(method = "broadcastChanges", at = @At("HEAD")) private void galacticraft_flushOxygenPackets(LevelChunk chunk, CallbackInfo ci) { - OxygenUpdatePayload.OxygenData[] data = ((ChunkOxygenSyncer) chunk).galacticraft$syncOxygenPacketsToClient(); - if (data != null) { - ChunkPos pos = ((GenerationChunkHolder) (Object) this).getPos(); - this.broadcast(this.playerProvider.getPlayers(pos, false), ServerPlayNetworking.createS2CPacket(new OxygenUpdatePayload(pos.toLong(), data))); - } + FriendlyByteBuf buf = ((ChunkOxygenSyncer) chunk).galacticraft$syncOxygenPacketsToClient(); + if (buf != null) this.broadcast(this.playerProvider.getPlayers(this.pos, false), ServerPlayNetworking.createS2CPacket(Constant.id("oxygen_update"), buf)); } } diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/ChunkSerializerMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/ChunkSerializerMixin.java index 4bec52e4d0..6bbfca6f39 100644 --- a/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/ChunkSerializerMixin.java +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/ChunkSerializerMixin.java @@ -27,17 +27,14 @@ import dev.galacticraft.mod.Constant; import net.minecraft.core.Holder; import net.minecraft.core.Registry; -import net.minecraft.core.SectionPos; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.ListTag; -import net.minecraft.nbt.Tag; import net.minecraft.server.level.ServerLevel; import net.minecraft.world.entity.ai.village.poi.PoiManager; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.biome.Biome; import net.minecraft.world.level.chunk.*; import net.minecraft.world.level.chunk.storage.ChunkSerializer; -import net.minecraft.world.level.chunk.storage.RegionStorageInfo; import net.minecraft.world.level.levelgen.BelowZeroRetrogen; import net.minecraft.world.level.levelgen.blending.BlendingData; import net.minecraft.world.level.lighting.LevelLightEngine; @@ -48,27 +45,31 @@ import org.spongepowered.asm.mixin.injection.callback.LocalCapture; import java.util.BitSet; -import java.util.Objects; @Mixin(ChunkSerializer.class) public abstract class ChunkSerializerMixin { @Inject(method = "write", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/chunk/LevelChunkSection;getStates()Lnet/minecraft/world/level/chunk/PalettedContainer;"), locals = LocalCapture.CAPTURE_FAILHARD) private static void galacticraft_serializeOxygen(ServerLevel world, ChunkAccess chunk, CallbackInfoReturnable cir, ChunkPos chunkPos, CompoundTag nbtCompound, BlendingData blendingData, BelowZeroRetrogen belowZeroRetrogen, UpgradeData upgradeData, LevelChunkSection[] chunkSections, ListTag nbtList, LevelLightEngine lightingProvider, Registry registry, Codec>> codec, boolean bl, int i, int j, boolean bl2, DataLayer chunkNibbleArray, DataLayer chunkNibbleArray2, CompoundTag nbtCompound2, LevelChunkSection section) { var accessor = (ChunkSectionOxygenAccessor) section; - if (!accessor.galacticraft$isEmpty()) { + if (accessor.galacticraft$modifiedBlocks() > 0) { CompoundTag nbt = new CompoundTag(); - nbt.putByteArray(Constant.Nbt.OXYGEN, Objects.requireNonNull(accessor.galacticraft$getBits()).toByteArray()); + nbt.putShort(Constant.Nbt.CHANGE_COUNT, ((ChunkSectionOxygenAccessor) section).galacticraft$modifiedBlocks()); + if (((ChunkSectionOxygenAccessor) section).galacticraft$modifiedBlocks() > 0) { + BitSet bits = ((ChunkSectionOxygenAccessor) section).galacticraft$inversionBits(); + assert bits != null; + nbt.putLongArray(Constant.Nbt.OXYGEN, bits.toLongArray()); + } nbtCompound2.put(Constant.Nbt.GC_API, nbt); } } @Inject(method = "read", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/ai/village/poi/PoiManager;checkConsistencyWithBlocks(Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/chunk/LevelChunkSection;)V"), locals = LocalCapture.CAPTURE_FAILHARD) - private static void galacticraft_deserializeOxygen(ServerLevel world, PoiManager poiStorage, RegionStorageInfo key, ChunkPos chunkPos, CompoundTag nbt, CallbackInfoReturnable cir, ChunkPos chunkPos2, UpgradeData upgradeData, boolean bl, ListTag listTag, int i, LevelChunkSection[] levelChunkSections, boolean bl2, ChunkSource chunkSource, LevelLightEngine levelLightEngine, Registry registry, Codec codec, boolean bl3, int j, CompoundTag compoundTag, int k, int l, PalettedContainer palettedContainer, PalettedContainerRO palettedContainerRO, LevelChunkSection levelChunkSection, SectionPos sectionPos) { - CompoundTag apiCompound = compoundTag.getCompound(Constant.Nbt.GC_API); - if (apiCompound.contains(Constant.Nbt.OXYGEN, Tag.TAG_BYTE_ARRAY)) { - ((ChunkSectionOxygenAccessor) levelChunkSection).galacticraft$setBits(BitSet.valueOf(apiCompound.getByteArray(Constant.Nbt.OXYGEN))); - } else { - ((ChunkSectionOxygenAccessor) levelChunkSection).galacticraft$setBits(null); + private static void galacticraft_deserializeOxygen(ServerLevel world, PoiManager poiStorage, ChunkPos chunkPos, CompoundTag nbt, CallbackInfoReturnable cir, ChunkPos chunkPos2, UpgradeData upgradeData, boolean bl, ListTag nbtList, int i, LevelChunkSection[] chunkSections, boolean bl2, ChunkSource chunkManager, LevelLightEngine lightingProvider, Registry registry, Codec>> codec, boolean bl3, int j, CompoundTag nbtCompound, int k, int l, PalettedContainer palettedContainer, PalettedContainerRO readableContainer, LevelChunkSection section) { + CompoundTag apiCompound = nbtCompound.getCompound(Constant.Nbt.GC_API); + short changedCount = apiCompound.getShort(Constant.Nbt.CHANGE_COUNT); + ((ChunkSectionOxygenAccessor) section).galacticraft$setModifiedBlocks(changedCount); + if (changedCount > 0) { + ((ChunkSectionOxygenAccessor) section).galacticraft$setInversionBits(BitSet.valueOf(apiCompound.getLongArray(Constant.Nbt.OXYGEN))); } } } diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/LevelChunkMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/LevelChunkMixin.java index 8f415474f7..8065f8d786 100644 --- a/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/LevelChunkMixin.java +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/LevelChunkMixin.java @@ -25,9 +25,10 @@ import dev.galacticraft.impl.internal.accessor.ChunkOxygenAccessor; import dev.galacticraft.impl.internal.accessor.ChunkOxygenSyncer; import dev.galacticraft.impl.internal.accessor.ChunkSectionOxygenAccessor; -import dev.galacticraft.impl.network.s2c.OxygenUpdatePayload; +import io.netty.buffer.Unpooled; import net.minecraft.core.BlockPos; import net.minecraft.core.Registry; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.Level; import net.minecraft.world.level.LevelHeightAccessor; @@ -48,8 +49,6 @@ import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; -import java.util.BitSet; - @Mixin(LevelChunk.class) public abstract class LevelChunkMixin extends ChunkAccess implements ChunkOxygenAccessor, ChunkOxygenSyncer { @Shadow @Final Level level; @@ -70,42 +69,38 @@ private LevelChunkMixin(ChunkPos pos, UpgradeData upgradeData, LevelHeightAccess if (inverted != accessor.galacticraft$isInverted(x, y & 15, z)) { if (!this.level.isClientSide) { this.unsaved = true; - this.dirtySections |= (short) (0b1 << this.getSectionIndex(y)); + this.dirtySections |= (0b1 << this.getSectionIndex(y)); } accessor.galacticraft$setInverted(x, y & 15, z, inverted); } } @Override - public @Nullable OxygenUpdatePayload.OxygenData[] galacticraft$syncOxygenPacketsToClient() { + public @Nullable FriendlyByteBuf galacticraft$syncOxygenPacketsToClient() { assert !this.level.isClientSide; - if (this.dirtySections != 0b0) { - int count = 0; + if (this.dirtySections != 0) { + FriendlyByteBuf buf = new FriendlyByteBuf(Unpooled.buffer(Integer.BYTES * 2 + Short.BYTES + (Short.BYTES + 1))); + buf.writeInt(this.getPos().x); + buf.writeInt(this.getPos().z); + buf.writeShort(this.dirtySections); for (int i = 0; i < this.sections.length; i++) { if ((this.dirtySections & (0b1 << i++)) != 0) { - count++; - } - } - - OxygenUpdatePayload.OxygenData[] data = new OxygenUpdatePayload.OxygenData[count]; - - int idx = 0; - for (byte i = 0; i < this.sections.length; i++) { - if ((this.dirtySections & (0b1 << i++)) != 0) { - BitSet data1 = ((ChunkSectionOxygenAccessor) this.sections[i]).galacticraft$getBits(); - data[idx++] = new OxygenUpdatePayload.OxygenData(i, data1 == null ? new BitSet(0) : data1); + ((ChunkSectionOxygenAccessor) this.sections[i]).galacticraft$writeOxygenPacket(buf); } } this.dirtySections = 0; - return data; + return buf; } return null; } @Override - public void galacticraft$readOxygenUpdate(@NotNull OxygenUpdatePayload.OxygenData[] buf) { - for (OxygenUpdatePayload.@NotNull OxygenData oxygenData : buf) { - ((ChunkSectionOxygenAccessor) this.sections[oxygenData.section()]).galacticraft$setBits(oxygenData.data()); + public void galacticraft$readOxygenUpdate(@NotNull FriendlyByteBuf buf) { + short dirty = buf.readShort(); + for (int i = 0; i < this.sections.length; i++) { + if ((dirty & (0b1 << i++)) != 0) { + ((ChunkSectionOxygenAccessor) this.sections[i]).galacticraft$readOxygenPacket(buf); + } } } diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/LevelChunkSectionMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/LevelChunkSectionMixin.java index c217624c12..03f0006f60 100644 --- a/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/LevelChunkSectionMixin.java +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/LevelChunkSectionMixin.java @@ -23,8 +23,8 @@ package dev.galacticraft.impl.internal.mixin.oxygen; import dev.galacticraft.impl.internal.accessor.ChunkSectionOxygenAccessor; +import dev.galacticraft.mod.Constant; import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.network.VarInt; import net.minecraft.world.level.chunk.LevelChunkSection; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -39,36 +39,47 @@ @Mixin(LevelChunkSection.class) public abstract class LevelChunkSectionMixin implements ChunkSectionOxygenAccessor { - private @Unique @Nullable BitSet bits = null; + private @Unique @Nullable BitSet inversionBits = null; + private @Unique short modifiedBlocks = 0; @Override - public boolean galacticraft$isInverted(int pos) { - return this.bits != null && this.bits.get(pos); + public boolean galacticraft$isInverted(int x, int y, int z) { + if (this.modifiedBlocks == 0) return false; + assert this.inversionBits != null; // if modifiedBlocks > 0 inverted should not be null. + return this.inversionBits.get(x + (y << 4) + (z << 8)); } @Override - public void galacticraft$setInverted(int pos, boolean value) { - if (value) { - if (this.bits == null) this.bits = new BitSet(pos); - this.bits.set(pos); - } else if (this.bits != null) { - this.bits.clear(pos); + public void galacticraft$setInverted(int x, int y, int z, boolean inverted) { + int bitIndex = x + (y << 4) + (z << 8); + if (inverted) { + if (this.inversionBits == null) { + assert this.modifiedBlocks == 0; + this.inversionBits = new BitSet(bitIndex); // do not allocate a full bitset if not necessary + this.inversionBits.set(bitIndex); + this.modifiedBlocks = 1; + } else { + if (!this.inversionBits.get(bitIndex)) { + this.inversionBits.set(bitIndex); + this.modifiedBlocks++; + } + } + } else if (this.inversionBits != null && this.inversionBits.get(bitIndex)) { + this.inversionBits.clear(bitIndex); + if (--this.modifiedBlocks == 0) { + this.inversionBits = null; + } } } @Inject(method = "getSerializedSize", at = @At("RETURN"), cancellable = true) private void increaseChunkPacketSize(CallbackInfoReturnable cir) { - if (this.bits == null) { - cir.setReturnValue(cir.getReturnValueI() + VarInt.getByteSize(0)); - } else { - byte[] byteArray = this.bits.toByteArray(); - cir.setReturnValue(cir.getReturnValueI() + (VarInt.getByteSize(byteArray.length) + byteArray.length)); - } + cir.setReturnValue(cir.getReturnValueI() + (this.modifiedBlocks == 0 ? 0 : (Constant.Chunk.CHUNK_SECTION_AREA / Byte.SIZE)) + 2 + 1); } @Inject(method = "hasOnlyAir()Z", at = @At("RETURN"), cancellable = true) private void verifyOxygenEmpty(CallbackInfoReturnable cir) { - cir.setReturnValue(cir.getReturnValueZ() && this.galacticraft$isEmpty()); + cir.setReturnValue(cir.getReturnValueZ() && this.modifiedBlocks == 0); } @Inject(method = "write", at = @At("RETURN")) @@ -82,37 +93,42 @@ private void galacticraft_fromPacket(FriendlyByteBuf buf, CallbackInfo ci) { } @Override - public boolean galacticraft$isEmpty() { - return this.bits == null || this.bits.isEmpty(); + public BitSet galacticraft$inversionBits() { + return this.inversionBits; } @Override - public BitSet galacticraft$getBits() { - return this.bits; + public void galacticraft$setInversionBits(BitSet set) { + this.inversionBits = set; } @Override - public void galacticraft$setBits(@Nullable BitSet set) { - this.bits = set; + public short galacticraft$modifiedBlocks() { + return this.modifiedBlocks; + } + + @Override + public void galacticraft$setModifiedBlocks(short amount) { + this.modifiedBlocks = amount; } @Override public void galacticraft$writeOxygenPacket(@NotNull FriendlyByteBuf buf) { - if (this.bits != null) { - byte[] bytes = this.bits.toByteArray(); - buf.writeByteArray(bytes); - } else { - buf.writeVarInt(0); + buf.writeShort(this.galacticraft$modifiedBlocks()); + + if (this.galacticraft$modifiedBlocks() > 0) { + assert this.inversionBits != null; + buf.writeLongArray(this.inversionBits.toLongArray()); } } @Override public void galacticraft$readOxygenPacket(@NotNull FriendlyByteBuf buf) { - byte[] bytes = buf.readByteArray(); - if (bytes.length != 0) { - this.bits = BitSet.valueOf(bytes); + this.galacticraft$setModifiedBlocks(buf.readShort()); + if (this.galacticraft$modifiedBlocks() > 0) { + this.galacticraft$setInversionBits(BitSet.valueOf(buf.readLongArray())); } else { - this.bits = null; + this.galacticraft$setInversionBits(null); } } } diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/LevelMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/LevelMixin.java index 97a78ce909..e70cdc2086 100644 --- a/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/LevelMixin.java +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/oxygen/LevelMixin.java @@ -22,7 +22,6 @@ package dev.galacticraft.impl.internal.mixin.oxygen; -import dev.galacticraft.api.accessor.LevelBodyAccessor; import dev.galacticraft.api.accessor.LevelOxygenAccessor; import dev.galacticraft.api.universe.celestialbody.CelestialBody; import dev.galacticraft.impl.internal.accessor.ChunkOxygenAccessor; @@ -53,8 +52,7 @@ public abstract class LevelMixin implements LevelOxygenAccessor, InternalLevelOx @Inject(method = "", at = @At("RETURN")) private void initializeOxygenValues(WritableLevelData writableLevelData, ResourceKey resourceKey, RegistryAccess registryAccess, Holder holder, Supplier supplier, boolean bl, boolean bl2, long l, int i, CallbackInfo ci) { - Holder> holder1 = ((LevelBodyAccessor) this).galacticraft$getCelestialBody(); - this.setDefaultBreathable(holder1 != null ? holder1.value().atmosphere().breathable() : this.breathable); + this.setDefaultBreathable(CelestialBody.getByDimension(registryAccess, resourceKey).map(c -> c.atmosphere().breathable()).orElse(true)); } @Override diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/registry/RegistryDataLoaderMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/registry/RegistryDataLoaderMixin.java new file mode 100644 index 0000000000..7855940d16 --- /dev/null +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/registry/RegistryDataLoaderMixin.java @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.impl.internal.mixin.registry; + +import dev.galacticraft.api.registry.AddonRegistries; +import dev.galacticraft.api.registry.RocketRegistries; +import dev.galacticraft.api.rocket.part.*; +import dev.galacticraft.api.universe.celestialbody.CelestialBody; +import dev.galacticraft.api.universe.celestialbody.landable.teleporter.CelestialTeleporter; +import dev.galacticraft.api.universe.galaxy.Galaxy; +import net.minecraft.resources.RegistryDataLoader; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Mutable; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.ArrayList; +import java.util.List; + +@Mixin(RegistryDataLoader.class) +public abstract class RegistryDataLoaderMixin { + @Mutable + @Shadow @Final public static List> WORLDGEN_REGISTRIES; + + @Inject(method = "", at = @At("RETURN")) + private static void addGalacticraftAPIDynamicRegistries(CallbackInfo ci) { + WORLDGEN_REGISTRIES = new ArrayList<>(WORLDGEN_REGISTRIES); + WORLDGEN_REGISTRIES.add(new RegistryDataLoader.RegistryData<>(AddonRegistries.GALAXY, Galaxy.DIRECT_CODEC)); + WORLDGEN_REGISTRIES.add(new RegistryDataLoader.RegistryData<>(AddonRegistries.CELESTIAL_BODY, CelestialBody.DIRECT_CODEC)); + + WORLDGEN_REGISTRIES.add(new RegistryDataLoader.RegistryData<>(RocketRegistries.ROCKET_CONE, RocketCone.DIRECT_CODEC)); + WORLDGEN_REGISTRIES.add(new RegistryDataLoader.RegistryData<>(RocketRegistries.ROCKET_BODY, RocketBody.DIRECT_CODEC)); + WORLDGEN_REGISTRIES.add(new RegistryDataLoader.RegistryData<>(RocketRegistries.ROCKET_FIN, RocketFin.DIRECT_CODEC)); + WORLDGEN_REGISTRIES.add(new RegistryDataLoader.RegistryData<>(RocketRegistries.ROCKET_BOOSTER, RocketBooster.DIRECT_CODEC)); + WORLDGEN_REGISTRIES.add(new RegistryDataLoader.RegistryData<>(RocketRegistries.ROCKET_ENGINE, RocketEngine.DIRECT_CODEC)); + WORLDGEN_REGISTRIES.add(new RegistryDataLoader.RegistryData<>(RocketRegistries.ROCKET_UPGRADE, RocketUpgrade.DIRECT_CODEC)); + + WORLDGEN_REGISTRIES.add(new RegistryDataLoader.RegistryData<>(AddonRegistries.CELESTIAL_TELEPORTER, CelestialTeleporter.DIRECT_CODEC)); + } +} diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/registry/RegistrySynchronizationMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/registry/RegistrySynchronizationMixin.java new file mode 100644 index 0000000000..b7f3befdb8 --- /dev/null +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/registry/RegistrySynchronizationMixin.java @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.impl.internal.mixin.registry; + +import com.google.common.collect.ImmutableMap; +import com.mojang.serialization.Codec; +import dev.galacticraft.api.registry.AddonRegistries; +import dev.galacticraft.api.registry.RocketRegistries; +import dev.galacticraft.api.rocket.part.*; +import dev.galacticraft.api.universe.celestialbody.CelestialBody; +import dev.galacticraft.api.universe.celestialbody.landable.teleporter.CelestialTeleporter; +import dev.galacticraft.api.universe.galaxy.Galaxy; +import net.minecraft.core.Registry; +import net.minecraft.core.RegistrySynchronization; +import net.minecraft.resources.ResourceKey; +import org.spongepowered.asm.mixin.Dynamic; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; +import org.spongepowered.asm.mixin.injection.callback.LocalCapture; + +@Mixin(RegistrySynchronization.class) +public abstract class RegistrySynchronizationMixin { + @Shadow + private static void put(ImmutableMap.Builder>, RegistrySynchronization.NetworkedRegistryData> builder, ResourceKey> resourceKey, Codec codec) { + } + + @Dynamic("1.19.4 synthetic") + @Inject(method = "method_45958", at = @At(value = "INVOKE", target = "Lcom/google/common/collect/ImmutableMap$Builder;build()Lcom/google/common/collect/ImmutableMap;", remap = false), locals = LocalCapture.CAPTURE_FAILEXCEPTION) + private static void addRegistries(CallbackInfoReturnable>, RegistrySynchronization.NetworkedRegistryData>> cir, ImmutableMap.Builder>, RegistrySynchronization.NetworkedRegistryData> builder) { + put(builder, AddonRegistries.CELESTIAL_BODY, CelestialBody.DIRECT_CODEC); + put(builder, AddonRegistries.GALAXY, Galaxy.DIRECT_CODEC); + + put(builder, RocketRegistries.ROCKET_CONE, RocketCone.DIRECT_CODEC); + put(builder, RocketRegistries.ROCKET_BODY, RocketBody.DIRECT_CODEC); + put(builder, RocketRegistries.ROCKET_FIN, RocketFin.DIRECT_CODEC); + put(builder, RocketRegistries.ROCKET_BOOSTER, RocketBooster.DIRECT_CODEC); + put(builder, RocketRegistries.ROCKET_ENGINE, RocketEngine.DIRECT_CODEC); + put(builder, RocketRegistries.ROCKET_UPGRADE, RocketUpgrade.DIRECT_CODEC); + + put(builder, AddonRegistries.CELESTIAL_TELEPORTER, CelestialTeleporter.DIRECT_CODEC); + } +} diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/research/AdvancementRewardsMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/research/AdvancementRewardsMixin.java index 65d1714b5d..5ef7b3fc26 100644 --- a/src/main/java/dev/galacticraft/impl/internal/mixin/research/AdvancementRewardsMixin.java +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/research/AdvancementRewardsMixin.java @@ -22,6 +22,9 @@ package dev.galacticraft.impl.internal.mixin.research; +import com.google.gson.JsonArray; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; import dev.galacticraft.api.accessor.ServerResearchAccessor; import dev.galacticraft.impl.internal.accessor.AdvancementRewardsAccessor; import net.minecraft.advancements.AdvancementRewards; @@ -51,7 +54,7 @@ public abstract class AdvancementRewardsMixin implements AdvancementRewardsAcces // JsonArray array = json.get("rocket_parts").getAsJsonArray(); // ResourceLocation[] ids = new ResourceLocation[array.size()]; // for (int i = 0; i < array.size(); i++) { -// ids[i] = ResourceLocation.parse(array.get(i).getAsString()); +// ids[i] = new ResourceLocation(array.get(i).getAsString()); // } // ((AdvancementRewardsAccessor) rewards).setRocketPartRecipeRewards(ids); // } diff --git a/src/main/java/dev/galacticraft/impl/internal/mixin/research/ServerPlayerMixin.java b/src/main/java/dev/galacticraft/impl/internal/mixin/research/ServerPlayerMixin.java index 2b7af86ce5..240e2ebab6 100644 --- a/src/main/java/dev/galacticraft/impl/internal/mixin/research/ServerPlayerMixin.java +++ b/src/main/java/dev/galacticraft/impl/internal/mixin/research/ServerPlayerMixin.java @@ -23,13 +23,16 @@ package dev.galacticraft.impl.internal.mixin.research; import dev.galacticraft.api.accessor.ServerResearchAccessor; -import dev.galacticraft.impl.network.s2c.ResearchUpdatePayload; +import dev.galacticraft.mod.Constant; +import io.netty.buffer.Unpooled; import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.ListTag; import net.minecraft.nbt.StringTag; import net.minecraft.nbt.Tag; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.resources.ResourceLocation; +import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; @@ -40,11 +43,12 @@ import java.util.Collections; import java.util.HashSet; -import java.util.List; import java.util.Set; @Mixin(ServerPlayer.class) public abstract class ServerPlayerMixin implements ServerResearchAccessor { + @Shadow public abstract ServerLevel serverLevel(); + @Shadow public abstract boolean isCreative(); private final @Unique Set unlockedRecipes = new HashSet<>(); @@ -59,7 +63,15 @@ public abstract class ServerPlayerMixin implements ServerResearchAccessor { public void galacticraft$unlockRocketPartRecipes(ResourceLocation... ids) { Collections.addAll(this.unlockedRecipes, ids); - ServerPlayNetworking.send((ServerPlayer) (Object)this, new ResearchUpdatePayload(true, List.of(ids))); + FriendlyByteBuf buf = new FriendlyByteBuf(Unpooled.buffer()); + buf.writeVarInt(ids.length); + buf.writeBoolean(true); + for (ResourceLocation id : ids) { + buf.writeUtf(id.toString()); + } + ServerPlayNetworking.send((ServerPlayer) (Object)this, + Constant.id("research_update"), + buf); } @Override @@ -68,7 +80,15 @@ public abstract class ServerPlayerMixin implements ServerResearchAccessor { this.unlockedRecipes.remove(id); } - ServerPlayNetworking.send((ServerPlayer) (Object)this, new ResearchUpdatePayload(false, List.of(ids))); + FriendlyByteBuf buf = new FriendlyByteBuf(Unpooled.buffer()); + buf.writeVarInt(ids.length); + buf.writeBoolean(false); + for (ResourceLocation id : ids) { + buf.writeUtf(id.toString()); + } + ServerPlayNetworking.send((ServerPlayer) (Object)this, + Constant.id("research_update"), + buf); } @Inject(method = "readAdditionalSaveData", at = @At("RETURN")) @@ -76,7 +96,7 @@ private void galacticraft_readCustomDataFromNbt(CompoundTag nbt, CallbackInfo ci this.unlockedRecipes.clear(); ListTag list = nbt.getList("gcResearch", Tag.TAG_STRING); for (int i = 0; i < list.size(); i++) { - this.unlockedRecipes.add(ResourceLocation.parse(list.getString(i))); + this.unlockedRecipes.add(new ResourceLocation(list.getString(i))); } } diff --git a/src/main/java/dev/galacticraft/impl/network/GCApiClientPacketReceivers.java b/src/main/java/dev/galacticraft/impl/network/GCApiClientPacketReceivers.java deleted file mode 100644 index b886544ca8..0000000000 --- a/src/main/java/dev/galacticraft/impl/network/GCApiClientPacketReceivers.java +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.impl.network; - -import dev.galacticraft.impl.network.s2c.*; -import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; - -/** - * Handles server-bound (C2S) packets. - */ -public class GCApiClientPacketReceivers { - public static void register() { - registerPacket(AddSatellitePayload.TYPE); - registerPacket(GearInvPayload.TYPE); - registerPacket(OxygenUpdatePayload.TYPE); - registerPacket(RemoveSatellitePayload.TYPE); - registerPacket(ResearchUpdatePayload.TYPE); - } - - public static

void registerPacket(CustomPacketPayload.Type

type) { - ClientPlayNetworking.registerGlobalReceiver(type, (payload, context) -> context.client().execute(payload.handle(context))); - } -} diff --git a/src/main/java/dev/galacticraft/impl/network/GCApiPackets.java b/src/main/java/dev/galacticraft/impl/network/GCApiPackets.java deleted file mode 100644 index 77b9448e89..0000000000 --- a/src/main/java/dev/galacticraft/impl/network/GCApiPackets.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.impl.network; - -import dev.galacticraft.impl.network.c2s.FlagDataPayload; -import dev.galacticraft.impl.network.c2s.TeamNamePayload; -import dev.galacticraft.impl.network.s2c.*; -import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry; - -public class GCApiPackets { - public static void register() { - PayloadTypeRegistry.playS2C().register(AddSatellitePayload.TYPE, AddSatellitePayload.CODEC); - PayloadTypeRegistry.playS2C().register(GearInvPayload.TYPE, GearInvPayload.CODEC); - PayloadTypeRegistry.playS2C().register(OxygenUpdatePayload.TYPE, OxygenUpdatePayload.CODEC); - PayloadTypeRegistry.playS2C().register(RemoveSatellitePayload.TYPE, RemoveSatellitePayload.CODEC); - PayloadTypeRegistry.playS2C().register(ResearchUpdatePayload.TYPE, ResearchUpdatePayload.CODEC); - - PayloadTypeRegistry.playC2S().register(FlagDataPayload.TYPE, FlagDataPayload.CODEC); - PayloadTypeRegistry.playC2S().register(TeamNamePayload.TYPE, TeamNamePayload.CODEC); - } -} diff --git a/src/main/java/dev/galacticraft/impl/network/GCApiServerPacketReceivers.java b/src/main/java/dev/galacticraft/impl/network/GCApiServerPacketReceivers.java deleted file mode 100644 index a63e9b00c7..0000000000 --- a/src/main/java/dev/galacticraft/impl/network/GCApiServerPacketReceivers.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.impl.network; - -import dev.galacticraft.impl.network.c2s.C2SPayload; -import dev.galacticraft.impl.network.c2s.FlagDataPayload; -import dev.galacticraft.impl.network.c2s.TeamNamePayload; -import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; - -/** - * Handles server-bound (C2S) packets. - */ -public class GCApiServerPacketReceivers { - public static void register() { - registerPacket(FlagDataPayload.TYPE); - registerPacket(TeamNamePayload.TYPE); - } - - public static

void registerPacket(CustomPacketPayload.Type

type) { - ServerPlayNetworking.registerGlobalReceiver(type, C2SPayload::handle); - } -} diff --git a/src/main/java/dev/galacticraft/impl/network/c2s/C2SPayload.java b/src/main/java/dev/galacticraft/impl/network/c2s/C2SPayload.java deleted file mode 100644 index 69fc5f826d..0000000000 --- a/src/main/java/dev/galacticraft/impl/network/c2s/C2SPayload.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.impl.network.c2s; - -import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import org.jetbrains.annotations.NotNull; - -public interface C2SPayload extends CustomPacketPayload { - void handle(@NotNull ServerPlayNetworking.Context context); -} diff --git a/src/main/java/dev/galacticraft/impl/network/c2s/FlagDataPayload.java b/src/main/java/dev/galacticraft/impl/network/c2s/FlagDataPayload.java deleted file mode 100644 index c5a04a94dc..0000000000 --- a/src/main/java/dev/galacticraft/impl/network/c2s/FlagDataPayload.java +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.impl.network.c2s; - -import dev.galacticraft.mod.Constant; -import io.netty.buffer.ByteBuf; -import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import org.jetbrains.annotations.NotNull; - -public record FlagDataPayload(byte[] data) implements C2SPayload { - public static final ResourceLocation ID = Constant.id("flag_data"); - public static final Type TYPE = new Type<>(ID); - public static final StreamCodec CODEC = ByteBufCodecs.BYTE_ARRAY.map(FlagDataPayload::new, FlagDataPayload::data); - - public FlagDataPayload { - if (data.length != 48 * 32 * 3) throw new IllegalArgumentException(); - } - - @Override - public @NotNull Type type() { - return TYPE; - } - - @Override - public void handle(ServerPlayNetworking.@NotNull Context context) { - } -} diff --git a/src/main/java/dev/galacticraft/impl/network/c2s/TeamNamePayload.java b/src/main/java/dev/galacticraft/impl/network/c2s/TeamNamePayload.java deleted file mode 100644 index cfb37d3592..0000000000 --- a/src/main/java/dev/galacticraft/impl/network/c2s/TeamNamePayload.java +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.impl.network.c2s; - -import dev.galacticraft.mod.Constant; -import io.netty.buffer.ByteBuf; -import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import org.jetbrains.annotations.NotNull; - -public record TeamNamePayload(String name) implements C2SPayload { - public static final ResourceLocation ID = Constant.id("team_name"); - public static final Type TYPE = new Type<>(ID); - public static final StreamCodec CODEC = ByteBufCodecs.STRING_UTF8.map(TeamNamePayload::new, TeamNamePayload::name); - - public TeamNamePayload { - if (name.length() > 32) throw new IllegalArgumentException("Team name cannot be longer than 32 characters"); //todo: actual constraints - } - - @Override - public @NotNull Type type() { - return TYPE; - } - - @Override - public void handle(ServerPlayNetworking.@NotNull Context context) { - - } -} diff --git a/src/main/java/dev/galacticraft/impl/network/s2c/AddSatellitePayload.java b/src/main/java/dev/galacticraft/impl/network/s2c/AddSatellitePayload.java deleted file mode 100644 index 77b14b9d32..0000000000 --- a/src/main/java/dev/galacticraft/impl/network/s2c/AddSatellitePayload.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.impl.network.s2c; - -import dev.galacticraft.api.client.accessor.ClientSatelliteAccessor; -import dev.galacticraft.api.universe.celestialbody.CelestialBody; -import dev.galacticraft.impl.universe.celestialbody.type.SatelliteType; -import dev.galacticraft.impl.universe.position.config.SatelliteConfig; -import dev.galacticraft.mod.Constant; -import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; -import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import org.jetbrains.annotations.NotNull; - -public record AddSatellitePayload(ResourceLocation id, SatelliteConfig config) implements S2CPayload { - public static final ResourceLocation ID = Constant.id("add_satellite"); - public static final Type TYPE = new Type<>(ID); - public static final StreamCodec CODEC = StreamCodec.composite( - ResourceLocation.STREAM_CODEC, - p -> p.id, - SatelliteConfig.STREAM_CODEC, - p -> p.config, - AddSatellitePayload::new); - - @Override - public @NotNull Type type() { - return TYPE; - } - - @Override - public Runnable handle(ClientPlayNetworking.@NotNull Context context) { - return () -> ((ClientSatelliteAccessor) context.client().player.connection).galacticraft$addSatellite(this.id, new CelestialBody<>(SatelliteType.INSTANCE, this.config)); - } -} diff --git a/src/main/java/dev/galacticraft/impl/network/s2c/GearInvPayload.java b/src/main/java/dev/galacticraft/impl/network/s2c/GearInvPayload.java deleted file mode 100644 index 1bba2ec53c..0000000000 --- a/src/main/java/dev/galacticraft/impl/network/s2c/GearInvPayload.java +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.impl.network.s2c; - -import dev.galacticraft.api.accessor.GearInventoryProvider; -import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.util.StreamCodecs; -import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; -import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.Container; -import net.minecraft.world.item.ItemStack; -import org.jetbrains.annotations.NotNull; - -import java.util.Objects; - -public record GearInvPayload(int entityId, ItemStack[] items) implements S2CPayload { - public static final ResourceLocation ID = Constant.id("gear_inv"); - public static final Type TYPE = new Type<>(ID); - public static final StreamCodec CODEC = StreamCodec.composite( - ByteBufCodecs.VAR_INT, - GearInvPayload::entityId, - StreamCodecs.array(ItemStack.OPTIONAL_STREAM_CODEC, ItemStack[]::new), - GearInvPayload::items, - GearInvPayload::new - ); - - @Override - public @NotNull Type type() { - return TYPE; - } - - @Override - public Runnable handle(ClientPlayNetworking.@NotNull Context context) { - return () -> { - Container container = ((GearInventoryProvider) Objects.requireNonNull(context.client().level.getEntity(this.entityId))).galacticraft$getGearInv(); - for (int i = 0; i < this.items.length; i++) { - container.setItem(i, this.items[i]); - } - }; - } -} diff --git a/src/main/java/dev/galacticraft/impl/network/s2c/OxygenUpdatePayload.java b/src/main/java/dev/galacticraft/impl/network/s2c/OxygenUpdatePayload.java deleted file mode 100644 index 6f7c351762..0000000000 --- a/src/main/java/dev/galacticraft/impl/network/s2c/OxygenUpdatePayload.java +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.impl.network.s2c; - -import dev.galacticraft.impl.internal.accessor.ChunkSectionOxygenAccessor; -import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.util.StreamCodecs; -import io.netty.buffer.ByteBuf; -import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.level.ChunkPos; -import net.minecraft.world.level.chunk.LevelChunk; -import org.jetbrains.annotations.NotNull; - -import java.util.BitSet; - -public record OxygenUpdatePayload(long chunk, OxygenData[] data) implements S2CPayload { - public static final ResourceLocation ID = Constant.id("oxygen_update"); - public static final Type TYPE = new Type<>(ID); - public static final StreamCodec CODEC = StreamCodec.composite( - StreamCodecs.LONG, - d -> d.chunk, - StreamCodecs.array(OxygenData.CODEC, OxygenData[]::new), - d -> d.data, - OxygenUpdatePayload::new - ); - - @Override - public @NotNull Type type() { - return TYPE; - } - - @Override - public Runnable handle(ClientPlayNetworking.@NotNull Context context) { - return () -> { - LevelChunk chunk = context.client().level.getChunk(ChunkPos.getX(this.chunk), ChunkPos.getZ(this.chunk)); - for (OxygenData datum : this.data) { - ChunkSectionOxygenAccessor accessor = (ChunkSectionOxygenAccessor) chunk.getSection(datum.section); - accessor.galacticraft$setBits(datum.data); - } - }; - } - - public record OxygenData(byte section, @NotNull BitSet data) { - private static final StreamCodec BIT_SET_CODEC = ByteBufCodecs.BYTE_ARRAY.map(BitSet::valueOf, BitSet::toByteArray); - public static final StreamCodec CODEC = StreamCodec.composite( - ByteBufCodecs.BYTE, - d -> d.section, - BIT_SET_CODEC, - d -> d.data, - OxygenData::new - ); - } -} diff --git a/src/main/java/dev/galacticraft/impl/network/s2c/RemoveSatellitePayload.java b/src/main/java/dev/galacticraft/impl/network/s2c/RemoveSatellitePayload.java deleted file mode 100644 index d8b9338861..0000000000 --- a/src/main/java/dev/galacticraft/impl/network/s2c/RemoveSatellitePayload.java +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.impl.network.s2c; - -import dev.galacticraft.api.accessor.SatelliteAccessor; -import dev.galacticraft.mod.Constant; -import io.netty.buffer.ByteBuf; -import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import org.jetbrains.annotations.NotNull; - -public record RemoveSatellitePayload(ResourceLocation id) implements S2CPayload { - public static final ResourceLocation ID = Constant.id("remove_satellite"); - public static final Type TYPE = new Type<>(ID); - public static final StreamCodec CODEC = ResourceLocation.STREAM_CODEC.map(RemoveSatellitePayload::new, RemoveSatellitePayload::id); - - @Override - public Runnable handle(ClientPlayNetworking.@NotNull Context context) { - return () -> ((SatelliteAccessor) context.client().getConnection()).galacticraft$removeSatellite(this.id); - } - - @Override - public @NotNull Type type() { - return TYPE; - } -} diff --git a/src/main/java/dev/galacticraft/impl/network/s2c/ResearchUpdatePayload.java b/src/main/java/dev/galacticraft/impl/network/s2c/ResearchUpdatePayload.java deleted file mode 100644 index db56b68b4a..0000000000 --- a/src/main/java/dev/galacticraft/impl/network/s2c/ResearchUpdatePayload.java +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.impl.network.s2c; - -import dev.galacticraft.impl.client.accessor.ClientResearchAccessor; -import dev.galacticraft.mod.Constant; -import io.netty.buffer.ByteBuf; -import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import org.jetbrains.annotations.NotNull; - -import java.util.List; - -public record ResearchUpdatePayload(boolean add, List ids) implements S2CPayload { - public static final ResourceLocation ID = Constant.id("research_update"); - public static final Type TYPE = new Type<>(ID); - public static final StreamCodec CODEC = StreamCodec.composite( - ByteBufCodecs.BOOL, - p -> p.add, - ByteBufCodecs.list().apply(ResourceLocation.STREAM_CODEC), - p -> p.ids, - ResearchUpdatePayload::new - ); - - @Override - public Runnable handle(ClientPlayNetworking.@NotNull Context context) { - return () -> ((ClientResearchAccessor)context.player()).galacticraft$updateResearch(this.add, this.ids); - } - - @Override - public @NotNull Type type() { - return TYPE; - } -} diff --git a/src/main/java/dev/galacticraft/impl/network/s2c/S2CPayload.java b/src/main/java/dev/galacticraft/impl/network/s2c/S2CPayload.java deleted file mode 100644 index 1bb4a00965..0000000000 --- a/src/main/java/dev/galacticraft/impl/network/s2c/S2CPayload.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.impl.network.s2c; - -import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import org.jetbrains.annotations.NotNull; - -public interface S2CPayload extends CustomPacketPayload { - Runnable handle(@NotNull ClientPlayNetworking.Context context); -} diff --git a/src/main/java/dev/galacticraft/impl/rocket/RocketDataImpl.java b/src/main/java/dev/galacticraft/impl/rocket/RocketDataImpl.java new file mode 100644 index 0000000000..9f5b8fa19c --- /dev/null +++ b/src/main/java/dev/galacticraft/impl/rocket/RocketDataImpl.java @@ -0,0 +1,88 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.impl.rocket; + +import dev.galacticraft.api.registry.RocketRegistries; +import dev.galacticraft.api.rocket.RocketData; +import dev.galacticraft.api.rocket.part.*; +import dev.galacticraft.mod.content.GCRocketParts; +import net.minecraft.Util; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.resources.ResourceKey; +import net.minecraft.resources.ResourceLocation; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.Contract; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.jetbrains.annotations.Unmodifiable; + +@ApiStatus.Internal +public record RocketDataImpl(int color, @Nullable ResourceKey> cone, @Nullable ResourceKey> body, + @Nullable ResourceKey> fin, @Nullable ResourceKey> booster, + @Nullable ResourceKey> engine, @Nullable ResourceKey> upgrade) implements RocketData { + + public static final CompoundTag DEFAULT_ROCKET = Util.make(new CompoundTag(), tag -> { + RocketData.create(0xFFFFFFFF, + GCRocketParts.TIER_1_CONE, + GCRocketParts.TIER_1_BODY, + GCRocketParts.TIER_1_FIN, + null, + GCRocketParts.TIER_1_ENGINE, + null) + .toNbt(tag); + }); + + @Contract("_ -> new") + public static @NotNull RocketDataImpl fromNbt(CompoundTag nbt) { + return new RocketDataImpl( + nbt.getInt("Color"), + nbt.contains("Cone") ? ResourceKey.create(RocketRegistries.ROCKET_CONE, new ResourceLocation(nbt.getString("Cone"))) : null, + nbt.contains("Body") ? ResourceKey.create(RocketRegistries.ROCKET_BODY, new ResourceLocation(nbt.getString("Body"))) : null, + nbt.contains("Fin") ? ResourceKey.create(RocketRegistries.ROCKET_FIN, new ResourceLocation(nbt.getString("Fin"))) : null, + nbt.contains("Booster") ? ResourceKey.create(RocketRegistries.ROCKET_BOOSTER, new ResourceLocation(nbt.getString("Booster"))) : null, + nbt.contains("Engine") ? ResourceKey.create(RocketRegistries.ROCKET_ENGINE, new ResourceLocation(nbt.getString("Engine"))) : null, + nbt.contains("Upgrade") ? ResourceKey.create(RocketRegistries.ROCKET_UPGRADE, new ResourceLocation(nbt.getString("Upgrade"))) : null + ); + } + + @Contract("_ -> new") + public static @NotNull RocketDataImpl fromNetwork(FriendlyByteBuf buf) { + int color = buf.readVarInt(); + boolean hasCone = buf.readBoolean(); + boolean hasBody = buf.readBoolean(); + boolean hasFin = buf.readBoolean(); + boolean hasBooster = buf.readBoolean(); + boolean hasEngine = buf.readBoolean(); + boolean hasUpgrade = buf.readBoolean(); + return new RocketDataImpl( + color, + hasCone ? ResourceKey.create(RocketRegistries.ROCKET_CONE, buf.readResourceLocation()) : null, + hasBody ? ResourceKey.create(RocketRegistries.ROCKET_BODY, buf.readResourceLocation()) : null, + hasFin ? ResourceKey.create(RocketRegistries.ROCKET_FIN, buf.readResourceLocation()) : null, + hasBooster ? ResourceKey.create(RocketRegistries.ROCKET_BOOSTER, buf.readResourceLocation()) : null, + hasEngine ? ResourceKey.create(RocketRegistries.ROCKET_ENGINE, buf.readResourceLocation()) : null, + hasUpgrade ? ResourceKey.create(RocketRegistries.ROCKET_UPGRADE, buf.readResourceLocation()) : null + ); + } +} diff --git a/src/main/java/dev/galacticraft/impl/rocket/recipe/RocketPartRecipeImpl.java b/src/main/java/dev/galacticraft/impl/rocket/recipe/RocketPartRecipeImpl.java index 2270b8afc6..329f8621e6 100644 --- a/src/main/java/dev/galacticraft/impl/rocket/recipe/RocketPartRecipeImpl.java +++ b/src/main/java/dev/galacticraft/impl/rocket/recipe/RocketPartRecipeImpl.java @@ -25,11 +25,12 @@ import dev.galacticraft.api.rocket.recipe.RocketPartRecipe; import dev.galacticraft.api.rocket.recipe.config.RocketPartRecipeConfig; import dev.galacticraft.api.rocket.recipe.type.RocketPartRecipeType; -import net.minecraft.core.HolderLookup; import net.minecraft.core.NonNullList; +import net.minecraft.core.RegistryAccess; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.Container; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Ingredient; -import net.minecraft.world.item.crafting.RecipeInput; import net.minecraft.world.item.crafting.RecipeSerializer; import net.minecraft.world.item.crafting.RecipeType; import net.minecraft.world.level.Level; @@ -57,12 +58,12 @@ public void place(@NotNull RocketPartRecipeType.SlotConsumer consumer, int leftE } @Override - public boolean matches(RecipeInput input, Level level) { - return this.type.matches(input, level, this.config); + public boolean matches(Container container, Level level) { + return this.type.matches(container, level, this.config); } @Override - public @NotNull ItemStack assemble(RecipeInput input, HolderLookup.Provider lookup) { + public @NotNull ItemStack assemble(Container container, RegistryAccess registryAccess) { return ItemStack.EMPTY; } @@ -72,7 +73,7 @@ public boolean canCraftInDimensions(int width, int height) { } @Override - public @NotNull ItemStack getResultItem(HolderLookup.Provider registriesLookup) { + public @NotNull ItemStack getResultItem(RegistryAccess registryAccess) { return ItemStack.EMPTY; } diff --git a/src/main/java/dev/galacticraft/impl/rocket/recipe/config/CenteredPatternedRocketPartRecipeConfig.java b/src/main/java/dev/galacticraft/impl/rocket/recipe/config/CenteredPatternedRocketPartRecipeConfig.java index 2822b8c45f..626fdfa3d6 100644 --- a/src/main/java/dev/galacticraft/impl/rocket/recipe/config/CenteredPatternedRocketPartRecipeConfig.java +++ b/src/main/java/dev/galacticraft/impl/rocket/recipe/config/CenteredPatternedRocketPartRecipeConfig.java @@ -76,7 +76,7 @@ public record CenteredPatternedRocketPartRecipeConfig(int height, @NotNull List< if (element.isJsonPrimitive()) { spacing.put(key, element.getAsInt()); } else { - ingredients.put(key, Ingredient.CODEC.decode(JsonOps.INSTANCE, element).getOrThrow().getFirst()); + Ingredient.CODEC.decode(JsonOps.INSTANCE, element).get().ifLeft(pair -> ingredients.put(key, pair.getFirst())); } } diff --git a/src/main/java/dev/galacticraft/impl/rocket/recipe/config/PatternedRocketPartRecipeConfig.java b/src/main/java/dev/galacticraft/impl/rocket/recipe/config/PatternedRocketPartRecipeConfig.java index edaa910445..ae290c46c5 100644 --- a/src/main/java/dev/galacticraft/impl/rocket/recipe/config/PatternedRocketPartRecipeConfig.java +++ b/src/main/java/dev/galacticraft/impl/rocket/recipe/config/PatternedRocketPartRecipeConfig.java @@ -76,7 +76,7 @@ public record PatternedRocketPartRecipeConfig(int height, @NotNull List ingredients.put(key, pair.getFirst())); } }); diff --git a/src/main/java/dev/galacticraft/impl/rocket/recipe/type/CenteredPatternedRocketPartRecipeType.java b/src/main/java/dev/galacticraft/impl/rocket/recipe/type/CenteredPatternedRocketPartRecipeType.java index 7108a2e415..aa171d104e 100644 --- a/src/main/java/dev/galacticraft/impl/rocket/recipe/type/CenteredPatternedRocketPartRecipeType.java +++ b/src/main/java/dev/galacticraft/impl/rocket/recipe/type/CenteredPatternedRocketPartRecipeType.java @@ -26,9 +26,9 @@ import dev.galacticraft.api.rocket.recipe.type.RocketPartRecipeType; import dev.galacticraft.impl.rocket.recipe.config.CenteredPatternedRocketPartRecipeConfig; import net.minecraft.core.NonNullList; +import net.minecraft.world.Container; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Ingredient; -import net.minecraft.world.item.crafting.RecipeInput; import net.minecraft.world.level.Level; import org.jetbrains.annotations.NotNull; @@ -61,7 +61,7 @@ public void place(@NotNull SlotConsumer consumer, int leftEdge, int rightEdge, i if (item == null) return true; ItemStack stack = new ItemStack(item, 1); - stack.applyComponents(tag); + stack.setTag(tag); return slot.ingredient().test(stack); }); } @@ -73,10 +73,10 @@ public void place(@NotNull SlotConsumer consumer, int leftEdge, int rightEdge, i } @Override - public boolean matches(RecipeInput input, Level level, CenteredPatternedRocketPartRecipeConfig config) { + public boolean matches(Container container, Level level, CenteredPatternedRocketPartRecipeConfig config) { List slots = config.slots(); for (int i = 0, n = slots.size(); i < n; i++) { - ItemStack stack = input.getItem(i); + ItemStack stack = container.getItem(i); if (stack.isEmpty() || !slots.get(i).ingredient().test(stack)) { return false; } diff --git a/src/main/java/dev/galacticraft/impl/rocket/recipe/type/PatternedRocketPartRecipeType.java b/src/main/java/dev/galacticraft/impl/rocket/recipe/type/PatternedRocketPartRecipeType.java index 0e49715515..95a6cbffd0 100644 --- a/src/main/java/dev/galacticraft/impl/rocket/recipe/type/PatternedRocketPartRecipeType.java +++ b/src/main/java/dev/galacticraft/impl/rocket/recipe/type/PatternedRocketPartRecipeType.java @@ -26,9 +26,9 @@ import dev.galacticraft.api.rocket.recipe.type.RocketPartRecipeType; import dev.galacticraft.impl.rocket.recipe.config.PatternedRocketPartRecipeConfig; import net.minecraft.core.NonNullList; +import net.minecraft.world.Container; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Ingredient; -import net.minecraft.world.item.crafting.RecipeInput; import net.minecraft.world.level.Level; import org.jetbrains.annotations.NotNull; @@ -56,11 +56,11 @@ public void place(@NotNull SlotConsumer consumer, int leftEdge, int rightEdge, i List slots = config.left(); for (int i = 0; i < slots.size(); i++) { RocketPartRecipeSlot slot = slots.get(i); - consumer.createSlot(i, leftEdge + slot.x(), bottomEdge - this.height(config) + slot.y(), (item, patch) -> { + consumer.createSlot(i, leftEdge + slot.x(), bottomEdge - this.height(config) + slot.y(), (item, tag) -> { if (item == null) return true; ItemStack stack = new ItemStack(item, 1); - stack.applyComponents(patch); + stack.setTag(tag); return slot.ingredient().test(stack); }); } @@ -68,11 +68,11 @@ public void place(@NotNull SlotConsumer consumer, int leftEdge, int rightEdge, i slots = config.right(); for (int i = 0; i < slots.size(); i++) { RocketPartRecipeSlot slot = slots.get(i); - consumer.createSlot(i + size, rightEdge + slot.x(), bottomEdge - this.height(config) + slot.y(), (item, patch) -> { + consumer.createSlot(i + size, rightEdge + slot.x(), bottomEdge - this.height(config) + slot.y(), (item, tag) -> { if (item == null) return true; ItemStack stack = new ItemStack(item, 1); - stack.applyComponents(patch); + stack.setTag(tag); return slot.ingredient().test(stack); }); } @@ -84,17 +84,17 @@ public void place(@NotNull SlotConsumer consumer, int leftEdge, int rightEdge, i } @Override - public boolean matches(RecipeInput input, Level level, PatternedRocketPartRecipeConfig config) { + public boolean matches(Container container, Level level, PatternedRocketPartRecipeConfig config) { List left = config.left(); for (int i = 0, leftSize = left.size(); i < leftSize; i++) { - ItemStack stack = input.getItem(i); + ItemStack stack = container.getItem(i); if (stack.isEmpty() || !left.get(i).ingredient().test(stack)) { return false; } } List right = config.right(); for (int i = 0, rightSize = right.size(); i < rightSize; i++) { - ItemStack stack = input.getItem(left.size() + i); + ItemStack stack = container.getItem(left.size() + i); if (stack.isEmpty() || !left.get(i).ingredient().test(stack)) { return false; } diff --git a/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/AccessWeightTravelPredicateType.java b/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/AccessWeightTravelPredicateType.java index 6ac3df6de2..14c04a2711 100644 --- a/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/AccessWeightTravelPredicateType.java +++ b/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/AccessWeightTravelPredicateType.java @@ -28,7 +28,6 @@ import dev.galacticraft.api.universe.celestialbody.CelestialBody; import dev.galacticraft.api.universe.celestialbody.Tiered; import dev.galacticraft.impl.rocket.travelpredicate.config.AccessWeightTravelPredicateConfig; -import net.minecraft.core.Holder; public final class AccessWeightTravelPredicateType extends TravelPredicateType { public static final AccessWeightTravelPredicateType INSTANCE = new AccessWeightTravelPredicateType(AccessWeightTravelPredicateConfig.CODEC); @@ -38,7 +37,7 @@ private AccessWeightTravelPredicateType(Codec } @Override - public Result canTravel(CelestialBody from, CelestialBody to, Holder> cone, Holder> body, Holder> fin, Holder> booster, Holder> engine, Holder> upgrade, AccessWeightTravelPredicateConfig config) { + public Result canTravel(CelestialBody from, CelestialBody to, RocketCone cone, RocketBody body, RocketFin fin, RocketBooster booster, RocketEngine engine, RocketUpgrade upgrade, AccessWeightTravelPredicateConfig config) { if (to.type() instanceof Tiered tiered) { int weight = tiered.accessWeight(to.config()); if (weight <= config.weight()) { diff --git a/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/AndTravelPredicateType.java b/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/AndTravelPredicateType.java index a9eef98b15..c8dbba82e1 100644 --- a/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/AndTravelPredicateType.java +++ b/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/AndTravelPredicateType.java @@ -28,7 +28,6 @@ import dev.galacticraft.api.rocket.travelpredicate.TravelPredicateType; import dev.galacticraft.api.universe.celestialbody.CelestialBody; import dev.galacticraft.impl.rocket.travelpredicate.config.AndTravelPredicateConfig; -import net.minecraft.core.Holder; public final class AndTravelPredicateType extends TravelPredicateType { public static final AndTravelPredicateType INSTANCE = new AndTravelPredicateType(AndTravelPredicateConfig.CODEC); @@ -38,7 +37,7 @@ private AndTravelPredicateType(Codec configCodec) { } @Override - public Result canTravel(CelestialBody from, CelestialBody to, Holder> cone, Holder> body, Holder> fin, Holder> booster, Holder> engine, Holder> upgrade, AndTravelPredicateConfig config) { + public Result canTravel(CelestialBody from, CelestialBody to, RocketCone cone, RocketBody body, RocketFin fin, RocketBooster booster, RocketEngine engine, RocketUpgrade upgrade, AndTravelPredicateConfig config) { Result result = Result.PASS; for (ConfiguredTravelPredicate predicate : config.predicates()) { result = result.merge(predicate.canTravel(from, to, cone, body, fin, booster, engine, upgrade)); diff --git a/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/ConstantTravelPredicateType.java b/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/ConstantTravelPredicateType.java index 0250917ad6..a585e04010 100644 --- a/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/ConstantTravelPredicateType.java +++ b/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/ConstantTravelPredicateType.java @@ -26,7 +26,6 @@ import dev.galacticraft.api.rocket.travelpredicate.TravelPredicateType; import dev.galacticraft.api.universe.celestialbody.CelestialBody; import dev.galacticraft.impl.rocket.travelpredicate.config.ConstantTravelPredicateConfig; -import net.minecraft.core.Holder; public final class ConstantTravelPredicateType extends TravelPredicateType { public static final ConstantTravelPredicateType INSTANCE = new ConstantTravelPredicateType(); @@ -36,7 +35,7 @@ private ConstantTravelPredicateType() { } @Override - public Result canTravel(CelestialBody from, CelestialBody to, Holder> cone, Holder> body, Holder> fin, Holder> booster, Holder> engine, Holder> upgrade, ConstantTravelPredicateConfig config) { + public Result canTravel(CelestialBody from, CelestialBody to, RocketCone cone, RocketBody body, RocketFin fin, RocketBooster booster, RocketEngine engine, RocketUpgrade upgrade, ConstantTravelPredicateConfig config) { return config.type(); } } diff --git a/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/DefaultTravelPredicateType.java b/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/DefaultTravelPredicateType.java index 6a1c6143b6..52499f4a79 100644 --- a/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/DefaultTravelPredicateType.java +++ b/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/DefaultTravelPredicateType.java @@ -27,7 +27,6 @@ import dev.galacticraft.api.rocket.travelpredicate.TravelPredicateType; import dev.galacticraft.api.universe.celestialbody.CelestialBody; import dev.galacticraft.impl.rocket.travelpredicate.config.DefaultTravelPredicateConfig; -import net.minecraft.core.Holder; public final class DefaultTravelPredicateType extends TravelPredicateType { public static final DefaultTravelPredicateType INSTANCE = new DefaultTravelPredicateType(); @@ -38,7 +37,7 @@ private DefaultTravelPredicateType() { } @Override - public Result canTravel(CelestialBody from, CelestialBody to, Holder> cone, Holder> body, Holder> fin, Holder> booster, Holder> engine, Holder> upgrade, DefaultTravelPredicateConfig config) { + public Result canTravel(CelestialBody from, CelestialBody to, RocketCone cone, RocketBody body, RocketFin fin, RocketBooster booster, RocketEngine engine, RocketUpgrade upgrade, DefaultTravelPredicateConfig config) { return Result.PASS; } } diff --git a/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/OrTravelPredicateType.java b/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/OrTravelPredicateType.java index cf45b902e3..e0419f4220 100644 --- a/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/OrTravelPredicateType.java +++ b/src/main/java/dev/galacticraft/impl/rocket/travelpredicate/type/OrTravelPredicateType.java @@ -28,7 +28,6 @@ import dev.galacticraft.api.rocket.travelpredicate.TravelPredicateType; import dev.galacticraft.api.universe.celestialbody.CelestialBody; import dev.galacticraft.impl.rocket.travelpredicate.config.OrTravelPredicateConfig; -import net.minecraft.core.Holder; public final class OrTravelPredicateType extends TravelPredicateType { public static final OrTravelPredicateType INSTANCE = new OrTravelPredicateType(OrTravelPredicateConfig.CODEC); @@ -37,7 +36,7 @@ private OrTravelPredicateType(Codec configCodec) { } @Override - public Result canTravel(CelestialBody from, CelestialBody to, Holder> cone, Holder> body, Holder> fin, Holder> booster, Holder> engine, Holder> upgrade, OrTravelPredicateConfig config) { + public Result canTravel(CelestialBody from, CelestialBody to, RocketCone cone, RocketBody body, RocketFin fin, RocketBooster booster, RocketEngine engine, RocketUpgrade upgrade, OrTravelPredicateConfig config) { for (ConfiguredTravelPredicate predicate : config.predicates()) { Result result = predicate.canTravel(from, to, cone, body, fin, booster, engine, upgrade); if (result != Result.PASS) return result; diff --git a/src/main/java/dev/galacticraft/impl/universe/BuiltinObjects.java b/src/main/java/dev/galacticraft/impl/universe/BuiltinObjects.java index 9fd8716361..801cec485e 100644 --- a/src/main/java/dev/galacticraft/impl/universe/BuiltinObjects.java +++ b/src/main/java/dev/galacticraft/impl/universe/BuiltinObjects.java @@ -43,6 +43,7 @@ import dev.galacticraft.mod.Constant; import net.minecraft.core.Registry; import net.minecraft.resources.ResourceKey; +import net.minecraft.resources.ResourceLocation; public class BuiltinObjects { public static final ResourceKey MILKY_WAY_KEY = ResourceKey.create(AddonRegistries.GALAXY, Constant.id("milky_way")); diff --git a/src/main/java/dev/galacticraft/impl/universe/celestialbody/type/SatelliteType.java b/src/main/java/dev/galacticraft/impl/universe/celestialbody/type/SatelliteType.java index c6609190a7..80f7c8a91f 100644 --- a/src/main/java/dev/galacticraft/impl/universe/celestialbody/type/SatelliteType.java +++ b/src/main/java/dev/galacticraft/impl/universe/celestialbody/type/SatelliteType.java @@ -37,7 +37,6 @@ import dev.galacticraft.api.universe.galaxy.Galaxy; import dev.galacticraft.api.universe.position.CelestialPosition; import dev.galacticraft.dynamicdimensions.api.DynamicDimensionRegistry; -import dev.galacticraft.impl.network.s2c.AddSatellitePayload; import dev.galacticraft.impl.universe.BuiltinObjects; import dev.galacticraft.impl.universe.display.config.IconCelestialDisplayConfig; import dev.galacticraft.impl.universe.display.config.ring.DefaultCelestialRingDisplayConfig; @@ -50,10 +49,14 @@ import dev.galacticraft.mod.data.gen.SatelliteChunkGenerator; import dev.galacticraft.mod.util.Translations; import dev.galacticraft.mod.world.biome.GCBiomes; +import io.netty.buffer.Unpooled; import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; import net.minecraft.core.Holder; import net.minecraft.core.RegistryAccess; import net.minecraft.core.registries.Registries; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.NbtOps; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; @@ -65,7 +68,7 @@ import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.Level; import net.minecraft.world.level.chunk.ChunkGenerator; -import net.minecraft.world.level.chunk.status.ChunkStatus; +import net.minecraft.world.level.chunk.ChunkStatus; import net.minecraft.world.level.dimension.DimensionType; import net.minecraft.world.level.dimension.LevelStem; import net.minecraft.world.level.levelgen.structure.templatesystem.StructureTemplate; @@ -105,8 +108,8 @@ protected SatelliteType(Codec codec) { } @ApiStatus.Internal - public static CelestialBody registerSatellite(@NotNull MinecraftServer server, @NotNull ServerPlayer player, Holder> parent, StructureTemplate structure) { - ResourceLocation id = ResourceLocation.parse(parent.unwrapKey().get().location() + "_" + player.getScoreboardName().toLowerCase(Locale.ROOT)); + public static CelestialBody registerSatellite(@NotNull MinecraftServer server, @NotNull ServerPlayer player, Holder.Reference> parent, StructureTemplate structure) { + ResourceLocation id = new ResourceLocation(parent.key().location() + "_" + player.getScoreboardName().toLowerCase(Locale.ROOT)); DimensionType type = new DimensionType(OptionalLong.empty(), true, false, false, true, 1, false, false, 0, 256, 256, TagKey.create(Registries.BLOCK, Constant.id("infiniburn_space")), Constant.id("space_sky"), 0, new DimensionType.MonsterSettings(false, true, UniformInt.of(0, 7), 0)); SatelliteChunkGenerator chunkGenerator = new SatelliteChunkGenerator(server.registryAccess().registryOrThrow(Registries.BIOME).getHolderOrThrow(GCBiomes.SPACE), structure); SatelliteOwnershipData ownershipData = SatelliteOwnershipData.create(player.getUUID(), player.getScoreboardName(), new LinkedList<>(), false); @@ -121,7 +124,7 @@ public static CelestialBody registerSatellite(@N } @ApiStatus.Internal - public static CelestialBody create(ResourceLocation id, MinecraftServer server, Holder> parent, CelestialPosition position, CelestialDisplay display, CelestialRingDisplay ring, + public static CelestialBody create(ResourceLocation id, MinecraftServer server, Holder.Reference> parent, CelestialPosition position, CelestialDisplay display, CelestialRingDisplay ring, ChunkGenerator generator, DimensionType type, SatelliteOwnershipData ownershipData, String name) { Constant.LOGGER.debug("Attempting to create a world dynamically ({})", id); @@ -135,7 +138,8 @@ public static CelestialBody create(ResourceLocat ((SatelliteAccessor) server).galacticraft$addSatellite(id, satellite); for (ServerPlayer player : server.getPlayerList().getPlayers()) { - ServerPlayNetworking.send(player, new AddSatellitePayload(id, satellite.config())); + CompoundTag compound = (CompoundTag) SatelliteConfig.CODEC.encode(satellite.config(), NbtOps.INSTANCE, new CompoundTag()).get().orThrow(); + ServerPlayNetworking.send(player, Constant.id("add_satellite"), new FriendlyByteBuf(Unpooled.buffer()).writeResourceLocation(id).writeNbt(compound)); } return satellite; } diff --git a/src/main/java/dev/galacticraft/impl/universe/display/type/EmptyCelestialDisplayType.java b/src/main/java/dev/galacticraft/impl/universe/display/type/EmptyCelestialDisplayType.java index feacf3ef4f..38d3804d8f 100644 --- a/src/main/java/dev/galacticraft/impl/universe/display/type/EmptyCelestialDisplayType.java +++ b/src/main/java/dev/galacticraft/impl/universe/display/type/EmptyCelestialDisplayType.java @@ -22,7 +22,7 @@ package dev.galacticraft.impl.universe.display.type; -import com.mojang.blaze3d.vertex.Tesselator; +import com.mojang.blaze3d.vertex.BufferBuilder; import dev.galacticraft.api.universe.display.CelestialDisplayType; import dev.galacticraft.impl.universe.display.config.EmptyCelestialDisplayConfig; import net.minecraft.client.gui.GuiGraphics; @@ -36,7 +36,7 @@ private EmptyCelestialDisplayType() { } @Override - public Vector4f render(GuiGraphics graphics, Tesselator tesselator, int size, double mouseX, double mouseY, float delta, EmptyCelestialDisplayConfig config) { + public Vector4f render(GuiGraphics graphics, BufferBuilder buffer, int size, double mouseX, double mouseY, float delta, EmptyCelestialDisplayConfig config) { return NULL_VECTOR; } } diff --git a/src/main/java/dev/galacticraft/impl/universe/display/type/IconCelestialDisplayType.java b/src/main/java/dev/galacticraft/impl/universe/display/type/IconCelestialDisplayType.java index bc9b46ab7a..a822bc758e 100644 --- a/src/main/java/dev/galacticraft/impl/universe/display/type/IconCelestialDisplayType.java +++ b/src/main/java/dev/galacticraft/impl/universe/display/type/IconCelestialDisplayType.java @@ -23,7 +23,7 @@ package dev.galacticraft.impl.universe.display.type; import com.mojang.blaze3d.platform.GlStateManager; -import com.mojang.blaze3d.vertex.Tesselator; +import com.mojang.blaze3d.vertex.BufferBuilder; import com.mojang.serialization.Codec; import dev.galacticraft.api.universe.display.CelestialDisplayType; import dev.galacticraft.impl.universe.display.config.IconCelestialDisplayConfig; @@ -42,7 +42,7 @@ protected IconCelestialDisplayType(Codec codec) { } @Override - public Vector4f render(GuiGraphics graphics, Tesselator tesselator, int size, double mouseX, double mouseY, float delta, IconCelestialDisplayConfig config) { + public Vector4f render(GuiGraphics graphics, BufferBuilder buffer, int size, double mouseX, double mouseY, float delta, IconCelestialDisplayConfig config) { float realSize = config.scale() * size; AbstractTexture texture = Minecraft.getInstance().getTextureManager().getTexture(config.texture()); texture.bind(); diff --git a/src/main/java/dev/galacticraft/impl/universe/display/type/SpinningIconCelestialDisplayType.java b/src/main/java/dev/galacticraft/impl/universe/display/type/SpinningIconCelestialDisplayType.java index c868f77378..3d55f32745 100644 --- a/src/main/java/dev/galacticraft/impl/universe/display/type/SpinningIconCelestialDisplayType.java +++ b/src/main/java/dev/galacticraft/impl/universe/display/type/SpinningIconCelestialDisplayType.java @@ -22,7 +22,7 @@ package dev.galacticraft.impl.universe.display.type; -import com.mojang.blaze3d.vertex.Tesselator; +import com.mojang.blaze3d.vertex.BufferBuilder; import com.mojang.math.Axis; import com.mojang.serialization.Codec; import dev.galacticraft.impl.universe.display.config.IconCelestialDisplayConfig; @@ -37,10 +37,10 @@ protected SpinningIconCelestialDisplayType(Codec cod } @Override - public Vector4f render(GuiGraphics graphics, Tesselator tesselator, int size, double mouseX, double mouseY, float delta, IconCelestialDisplayConfig config) { + public Vector4f render(GuiGraphics graphics, BufferBuilder buffer, int size, double mouseX, double mouseY, float delta, IconCelestialDisplayConfig config) { float degrees = Minecraft.getInstance().level.getGameTime() * 66.666666666666F / 10.0F % 360.0f; graphics.pose().mulPose(Axis.ZP.rotationDegrees(degrees)); - Vector4f render = super.render(graphics, tesselator, size, mouseX, mouseY, delta, config); + Vector4f render = super.render(graphics, buffer, size, mouseX, mouseY, delta, config); graphics.pose().mulPose(Axis.ZN.rotationDegrees(degrees)); // revert changes to the pose for position tracking return render; } diff --git a/src/main/java/dev/galacticraft/impl/universe/display/type/ring/AsteroidCelestialRingDisplayType.java b/src/main/java/dev/galacticraft/impl/universe/display/type/ring/AsteroidCelestialRingDisplayType.java index 734e998434..eee6ceebf0 100644 --- a/src/main/java/dev/galacticraft/impl/universe/display/type/ring/AsteroidCelestialRingDisplayType.java +++ b/src/main/java/dev/galacticraft/impl/universe/display/type/ring/AsteroidCelestialRingDisplayType.java @@ -33,10 +33,14 @@ import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.gui.screens.Screen; import net.minecraft.client.renderer.GameRenderer; +import net.minecraft.client.renderer.ShaderInstance; import net.minecraft.util.Mth; import org.joml.Matrix4f; import org.joml.Vector3f; +import java.util.function.Consumer; +import java.util.function.Supplier; + public class AsteroidCelestialRingDisplayType extends CelestialRingDisplayType { public static final AsteroidCelestialRingDisplayType INSTANCE = new AsteroidCelestialRingDisplayType(DefaultCelestialRingDisplayConfig.CODEC); @@ -45,13 +49,15 @@ public AsteroidCelestialRingDisplayType(Codec } @Override - public boolean render(CelestialBody body, GuiGraphics graphics, int count, Vector3f systemOffset, float lineScale, float alpha, double mouseX, double mouseY, float delta, DefaultCelestialRingDisplayConfig config) { - RenderSystem.setShader(GameRenderer::getRendertypeLinesShader); + public boolean render(CelestialBody body, GuiGraphics graphics, int count, Vector3f systemOffset, float lineScale, float alpha, double mouseX, double mouseY, float delta, Consumer> shaderSetter, DefaultCelestialRingDisplayConfig config) { + shaderSetter.accept(GameRenderer::getRendertypeLinesShader); PoseStack matrices = graphics.pose(); matrices.pushPose(); Screen screen = Minecraft.getInstance().screen; float[] color = screen instanceof CelestialSelectionScreen ? new float[]{0.7F, 0.0F, 0.0F, alpha / 2.0F} : new float[]{0.3F, 0.1F, 0.1F, 1.0F}; - BufferBuilder buffer = Tesselator.getInstance().begin(VertexFormat.Mode.LINE_STRIP, DefaultVertexFormat.POSITION_COLOR_NORMAL); + Tesselator tesselator = Tesselator.getInstance(); + BufferBuilder buffer = tesselator.getBuilder(); + buffer.begin(VertexFormat.Mode.LINE_STRIP, DefaultVertexFormat.POSITION_COLOR_NORMAL); final float theta = Mth.TWO_PI / 90; final float cos = Mth.cos(theta); @@ -71,38 +77,42 @@ public boolean render(CelestialBody body, GuiGraphics graphics, int count, float y1 = y; Matrix4f model = matrices.last().pose(); for (int i = 0; i < 180; i++) { - buffer.addVertex(model, x, y, 0).setColor(color[0], color[1], color[2], color[3]); + buffer.vertex(model, x, y, 0).color(color[0], color[1], color[2], color[3]); if (i < 90) { - buffer.setNormal(1, 1, 1); + buffer.normal(1, 1, 1); } else { - buffer.setNormal(1, -1, -1); + buffer.normal(1, -1, -1); } + buffer.endVertex(); + temp = x; x = cos * x - sin * y; y = sin * temp + cos * y; } - buffer.addVertex(model, x1, y1, 0).setColor(color[0], color[1], color[2], color[3]).setNormal(1, 1, 1); //LINE_LOOP is gone + buffer.vertex(model, x1, y1, 0).color(color[0], color[1], color[2], color[3]).normal(1, 1, 1).endVertex(); //LINE_LOOP is gone x = x1; y = y1; for (int i = 0; i < 180; i++) { - buffer.addVertex(model, x, y, 0).setColor(color[0], color[1], color[2], color[3]); + buffer.vertex(model, x, y, 0).color(color[0], color[1], color[2], color[3]); if (i < 90) { - buffer.setNormal(1, 1, 1); + buffer.normal(1, 1, 1); } else { - buffer.setNormal(1, -1, -1); + buffer.normal(1, -1, -1); } + buffer.endVertex(); + temp = x; x = cos2 * x - sin2 * y; y = sin2 * temp + cos2 * y; } - buffer.addVertex(model, x1, y1, 0).setColor(color[0], color[1], color[2], color[3]).setNormal(1, 1, 1); //LINE_LOOP is gone + buffer.vertex(model, x1, y1, 0).color(color[0], color[1], color[2], color[3]).normal(1, 1, 1).endVertex(); //LINE_LOOP is gone - BufferUploader.drawWithShader(buffer.buildOrThrow()); - buffer = Tesselator.getInstance().begin(VertexFormat.Mode.LINE_STRIP, DefaultVertexFormat.POSITION_COLOR_NORMAL); + tesselator.end(); + buffer.begin(VertexFormat.Mode.LINE_STRIP, DefaultVertexFormat.POSITION_COLOR_NORMAL); x = min * body.position().lineScale(); y = 0; @@ -111,38 +121,43 @@ public boolean render(CelestialBody body, GuiGraphics graphics, int count, y1 = y; for (int i = 0; i < 180; i++) { - buffer.addVertex(model, x, y, 0).setColor(color[0], color[1], color[2], color[3]); + buffer.vertex(model, x, y, 0).color(color[0], color[1], color[2], color[3]); if (i < 90) { - buffer.setNormal(1, 1, 1); + buffer.normal(1, 1, 1); } else { - buffer.setNormal(1, -1, -1); + buffer.normal(1, -1, -1); } + buffer.endVertex(); + temp = x; x = cos * x - sin * y; y = sin * temp + cos * y; } - buffer.addVertex(model, x1, y1, 0).setColor(color[0], color[1], color[2], color[3]).setNormal(1, 1, 1); //LINE_LOOP is gone + buffer.vertex(model, x1, y1, 0).color(color[0], color[1], color[2], color[3]).normal(1, 1, 1).endVertex(); //LINE_LOOP is gone x = x1; y = y1; for (int i = 0; i < 180; i++) { - buffer.addVertex(model, x, y, 0).setColor(color[0], color[1], color[2], color[3]); + buffer.vertex(model, x, y, 0).color(color[0], color[1], color[2], color[3]); if (i < 90) { - buffer.setNormal(1, 1, 1); + buffer.normal(1, 1, 1); } else { - buffer.setNormal(1, -1, -1); + buffer.normal(1, -1, -1); } + buffer.endVertex(); + temp = x; x = cos2 * x - sin2 * y; y = sin2 * temp + cos2 * y; } - buffer.addVertex(model, x1, y1, 0).setColor(color[0], color[1], color[2], color[3]).setNormal(1, 1, 1); //LINE_LOOP is gone + buffer.vertex(model, x1, y1, 0).color(color[0], color[1], color[2], color[3]).normal(1, 1, 1).endVertex(); //LINE_LOOP is gone - BufferUploader.drawWithShader(buffer.buildOrThrow()); - buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_COLOR); + tesselator.end(); + RenderSystem.setShader(GameRenderer::getPositionColorShader); + buffer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_COLOR); x = min * body.position().lineScale(); y = 0; @@ -150,8 +165,8 @@ public boolean render(CelestialBody body, GuiGraphics graphics, int count, float y2 = 0; for (int i = 0; i < 90; i++) { - buffer.addVertex(model, x2, y2, 0).setColor(0.7F, 0.0F, 0.0F, alpha / 10.0F); - buffer.addVertex(model, x, y, 0).setColor(0.7F, 0.0F, 0.0F, alpha / 10.0F); + buffer.vertex(model, x2, y2, 0).color(0.7F, 0.0F, 0.0F, alpha / 10.0F).endVertex(); + buffer.vertex(model, x, y, 0).color(0.7F, 0.0F, 0.0F, alpha / 10.0F).endVertex(); temp = x; x = cos * x - sin * y; @@ -160,12 +175,11 @@ public boolean render(CelestialBody body, GuiGraphics graphics, int count, x2 = cos * x2 - sin * y2; y2 = sin * temp + cos * y2; - buffer.addVertex(model, x, y, 0).setColor(0.7F, 0.0F, 0.0F, alpha / 10.0F); - buffer.addVertex(model, x2, y2, 0).setColor(0.7F, 0.0F, 0.0F, alpha / 10.0F); + buffer.vertex(model, x, y, 0).color(0.7F, 0.0F, 0.0F, alpha / 10.0F).endVertex(); + buffer.vertex(model, x2, y2, 0).color(0.7F, 0.0F, 0.0F, alpha / 10.0F).endVertex(); } - RenderSystem.setShader(GameRenderer::getPositionColorShader); - BufferUploader.drawWithShader(buffer.buildOrThrow()); + tesselator.end(); matrices.popPose(); return false; } diff --git a/src/main/java/dev/galacticraft/impl/universe/display/type/ring/DefaultCelestialRingDisplayType.java b/src/main/java/dev/galacticraft/impl/universe/display/type/ring/DefaultCelestialRingDisplayType.java index 5fc6183e74..da49115fd5 100644 --- a/src/main/java/dev/galacticraft/impl/universe/display/type/ring/DefaultCelestialRingDisplayType.java +++ b/src/main/java/dev/galacticraft/impl/universe/display/type/ring/DefaultCelestialRingDisplayType.java @@ -22,7 +22,6 @@ package dev.galacticraft.impl.universe.display.type.ring; -import com.mojang.blaze3d.systems.RenderSystem; import com.mojang.blaze3d.vertex.*; import com.mojang.serialization.Codec; import dev.galacticraft.api.universe.celestialbody.CelestialBody; @@ -30,10 +29,14 @@ import dev.galacticraft.impl.universe.display.config.ring.DefaultCelestialRingDisplayConfig; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.renderer.GameRenderer; +import net.minecraft.client.renderer.ShaderInstance; import net.minecraft.util.Mth; import org.joml.Matrix4f; import org.joml.Vector3f; +import java.util.function.Consumer; +import java.util.function.Supplier; + public class DefaultCelestialRingDisplayType extends CelestialRingDisplayType { public static final DefaultCelestialRingDisplayType INSTANCE = new DefaultCelestialRingDisplayType(DefaultCelestialRingDisplayConfig.CODEC); @@ -42,8 +45,8 @@ public DefaultCelestialRingDisplayType(Codec } @Override - public boolean render(CelestialBody body, GuiGraphics graphics, int count, Vector3f systemOffset, float lineScale, float alpha, double mouseX, double mouseY, float delta, DefaultCelestialRingDisplayConfig config) { - RenderSystem.setShader(GameRenderer::getRendertypeLinesShader); + public boolean render(CelestialBody body, GuiGraphics graphics, int count, Vector3f systemOffset, float lineScale, float alpha, double mouseX, double mouseY, float delta, Consumer> shaderSetter, DefaultCelestialRingDisplayConfig config) { + shaderSetter.accept(GameRenderer::getRendertypeLinesShader); PoseStack matrices = graphics.pose(); @@ -69,43 +72,49 @@ public boolean render(CelestialBody body, GuiGraphics graphics, int count, default -> throw new IllegalStateException("Unexpected value: " + count % 2); }; - BufferBuilder buffer = Tesselator.getInstance().begin(VertexFormat.Mode.LINE_STRIP, DefaultVertexFormat.POSITION_COLOR_NORMAL); + Tesselator tesselator = Tesselator.getInstance(); + BufferBuilder buffer = tesselator.getBuilder(); + buffer.begin(VertexFormat.Mode.LINE_STRIP, DefaultVertexFormat.POSITION_COLOR_NORMAL); float temp; float x1 = x; float y1 = y; Matrix4f model = matrices.last().pose(); for (int i = 0; i < 180; i++) { - buffer.addVertex(model, x, y, 0).setColor(color[0], color[1], color[2], color[3]); + buffer.vertex(model, x, y, 0).color(color[0], color[1], color[2], color[3]); if (i < 90) { - buffer.setNormal(1, 1, 1); + buffer.normal(1, 1, 1); } else { - buffer.setNormal(1, -1, -1); + buffer.normal(1, -1, -1); } + buffer.endVertex(); + temp = x; x = cos * x - sin * y; y = sin * temp + cos * y; } - buffer.addVertex(model, x1, y1, 0).setColor(color[0], color[1], color[2], color[3]).setNormal(1, 1, 1); //LINE_LOOP is gone + buffer.vertex(model, x1, y1, 0).color(color[0], color[1], color[2], color[3]).normal(1, 1, 1).endVertex(); //LINE_LOOP is gone x = x1; y = y1; for (int i = 0; i < 180; i++) { - buffer.addVertex(model, x, y, 0).setColor(color[0], color[1], color[2], color[3]); + buffer.vertex(model, x, y, 0).color(color[0], color[1], color[2], color[3]); if (i < 90) { - buffer.setNormal(1, 1, 1); + buffer.normal(1, 1, 1); } else { - buffer.setNormal(1, -1, -1); + buffer.normal(1, -1, -1); } + buffer.endVertex(); + temp = x; x = cos2 * x - sin2 * y; y = sin2 * temp + cos2 * y; } - buffer.addVertex(model, x1, y1, 0).setColor(color[0], color[1], color[2], color[3]).setNormal(1, 1, 1); //LINE_LOOP is gone + buffer.vertex(model, x1, y1, 0).color(color[0], color[1], color[2], color[3]).normal(1, 1, 1).endVertex(); //LINE_LOOP is gone - BufferUploader.drawWithShader(buffer.buildOrThrow()); + tesselator.end(); matrices.popPose(); return true; diff --git a/src/main/java/dev/galacticraft/impl/universe/display/type/ring/EmptyCelestialRingDisplayType.java b/src/main/java/dev/galacticraft/impl/universe/display/type/ring/EmptyCelestialRingDisplayType.java index 8bdd05857c..426eab1cc3 100644 --- a/src/main/java/dev/galacticraft/impl/universe/display/type/ring/EmptyCelestialRingDisplayType.java +++ b/src/main/java/dev/galacticraft/impl/universe/display/type/ring/EmptyCelestialRingDisplayType.java @@ -27,8 +27,12 @@ import dev.galacticraft.api.universe.display.ring.CelestialRingDisplayType; import dev.galacticraft.impl.universe.display.config.ring.DefaultCelestialRingDisplayConfig; import net.minecraft.client.gui.GuiGraphics; +import net.minecraft.client.renderer.ShaderInstance; import org.joml.Vector3f; +import java.util.function.Consumer; +import java.util.function.Supplier; + public class EmptyCelestialRingDisplayType extends CelestialRingDisplayType { public static final EmptyCelestialRingDisplayType INSTANCE = new EmptyCelestialRingDisplayType(DefaultCelestialRingDisplayConfig.CODEC); @@ -37,7 +41,7 @@ public EmptyCelestialRingDisplayType(Codec co } @Override - public boolean render(CelestialBody body, GuiGraphics graphics, int count, Vector3f systemOffset, float lineScale, float alpha, double mouseX, double mouseY, float delta, DefaultCelestialRingDisplayConfig config) { + public boolean render(CelestialBody body, GuiGraphics graphics, int count, Vector3f systemOffset, float lineScale, float alpha, double mouseX, double mouseY, float delta, Consumer> shaderSetter, DefaultCelestialRingDisplayConfig config) { return false; } } diff --git a/src/main/java/dev/galacticraft/impl/universe/galaxy/GalaxyImpl.java b/src/main/java/dev/galacticraft/impl/universe/galaxy/GalaxyImpl.java index 342d832a48..2e72a6e15e 100644 --- a/src/main/java/dev/galacticraft/impl/universe/galaxy/GalaxyImpl.java +++ b/src/main/java/dev/galacticraft/impl/universe/galaxy/GalaxyImpl.java @@ -31,7 +31,7 @@ import dev.galacticraft.impl.universe.position.config.StaticCelestialPositionConfig; import dev.galacticraft.impl.universe.position.type.StaticCelestialPositionType; import dev.galacticraft.mod.util.Translations; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.network.chat.Component; import org.jetbrains.annotations.Contract; import org.jetbrains.annotations.NotNull; @@ -43,7 +43,7 @@ public record GalaxyImpl(@NotNull Component name, CelestialPosition position, CelestialDisplay display) implements Galaxy { - public static void bootstrapRegistries(@NotNull BootstrapContext context) { + public static void bootstrapRegistries(@NotNull BootstapContext context) { context.register(BuiltinObjects.MILKY_WAY_KEY, createMilkyWay()); } diff --git a/src/main/java/dev/galacticraft/impl/universe/position/config/SatelliteConfig.java b/src/main/java/dev/galacticraft/impl/universe/position/config/SatelliteConfig.java index 5977543e22..e9d9f4b55d 100644 --- a/src/main/java/dev/galacticraft/impl/universe/position/config/SatelliteConfig.java +++ b/src/main/java/dev/galacticraft/impl/universe/position/config/SatelliteConfig.java @@ -34,12 +34,9 @@ import dev.galacticraft.api.universe.display.ring.CelestialRingDisplay; import dev.galacticraft.api.universe.galaxy.Galaxy; import dev.galacticraft.api.universe.position.CelestialPosition; -import dev.galacticraft.mod.util.StreamCodecs; import net.minecraft.core.Holder; import net.minecraft.core.registries.Registries; -import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; -import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.RegistryFileCodec; import net.minecraft.resources.ResourceKey; import net.minecraft.world.level.Level; @@ -62,7 +59,6 @@ public final class SatelliteConfig implements CelestialBodyConfig { Codec.INT.fieldOf("accessWeight").forGetter(SatelliteConfig::accessWeight), LevelStem.CODEC.fieldOf("dimension_options").forGetter(SatelliteConfig::dimensionOptions) ).apply(instance, SatelliteConfig::new)); - public static final StreamCodec STREAM_CODEC = StreamCodecs.wrapCodec(CODEC); private final Holder> parent; private final Holder galaxy; diff --git a/src/main/java/dev/galacticraft/mod/Constant.java b/src/main/java/dev/galacticraft/mod/Constant.java index ec5e625495..7232225d33 100644 --- a/src/main/java/dev/galacticraft/mod/Constant.java +++ b/src/main/java/dev/galacticraft/mod/Constant.java @@ -51,7 +51,7 @@ public interface Constant { @Contract(value = "_ -> new", pure = true) static @NotNull ResourceLocation id(String id) { - return ResourceLocation.fromNamespaceAndPath(MOD_ID, id); + return new ResourceLocation(MOD_ID, id); } @Contract(value = "_, _ -> new", pure = true) @@ -67,64 +67,35 @@ interface Block { String MOON_TURF = "moon_turf"; String MOON_SURFACE_ROCK = "moon_surface_rock"; String MOON_DUNGEON_BRICK = "moon_dungeon_brick"; - String MOON_ROCK = "moon_rock"; String MOON_ROCK_SLAB = "moon_rock_slab"; String MOON_ROCK_STAIRS = "moon_rock_stairs"; String MOON_ROCK_WALL = "moon_rock_wall"; - - String MOON_ROCK_BRICK = "moon_rock_brick"; - String MOON_ROCK_BRICK_SLAB = "moon_rock_brick_slab"; - String MOON_ROCK_BRICK_STAIRS = "moon_rock_brick_stairs"; - String MOON_ROCK_BRICK_WALL = "moon_rock_brick_wall"; - - String CRACKED_MOON_ROCK_BRICK = "cracked_moon_rock_brick"; - String CRACKED_MOON_ROCK_BRICK_SLAB = "cracked_moon_rock_brick_slab"; - String CRACKED_MOON_ROCK_BRICK_STAIRS = "cracked_moon_rock_brick_stairs"; - String CRACKED_MOON_ROCK_BRICK_WALL = "cracked_moon_rock_brick_wall"; - - String POLISHED_MOON_ROCK = "polished_moon_rock"; - String POLISHED_MOON_ROCK_SLAB = "polished_moon_rock_slab"; - String POLISHED_MOON_ROCK_STAIRS = "polished_moon_rock_stairs"; - String POLISHED_MOON_ROCK_WALL = "polished_moon_rock_wall"; - - String CHISELED_MOON_ROCK_BRICK = "chiseled_moon_rock_brick"; - String MOON_ROCK_PILLAR = "moon_rock_pillar"; - String COBBLED_MOON_ROCK = "cobbled_moon_rock"; String COBBLED_MOON_ROCK_SLAB = "cobbled_moon_rock_slab"; String COBBLED_MOON_ROCK_STAIRS = "cobbled_moon_rock_stairs"; String COBBLED_MOON_ROCK_WALL = "cobbled_moon_rock_wall"; - String LUNASLATE = "lunaslate"; String LUNASLATE_SLAB = "lunaslate_slab"; String LUNASLATE_STAIRS = "lunaslate_stairs"; String LUNASLATE_WALL = "lunaslate_wall"; - String COBBLED_LUNASLATE = "cobbled_lunaslate"; String COBBLED_LUNASLATE_SLAB = "cobbled_lunaslate_slab"; String COBBLED_LUNASLATE_STAIRS = "cobbled_lunaslate_stairs"; String COBBLED_LUNASLATE_WALL = "cobbled_lunaslate_wall"; - String MOON_BASALT = "moon_basalt"; String MOON_BASALT_SLAB = "moon_basalt_slab"; String MOON_BASALT_STAIRS = "moon_basalt_stairs"; String MOON_BASALT_WALL = "moon_basalt_wall"; - String MOON_BASALT_BRICK = "moon_basalt_brick"; String MOON_BASALT_BRICK_SLAB = "moon_basalt_brick_slab"; String MOON_BASALT_BRICK_STAIRS = "moon_basalt_brick_stairs"; String MOON_BASALT_BRICK_WALL = "moon_basalt_brick_wall"; - String CRACKED_MOON_BASALT_BRICK = "cracked_moon_basalt_brick"; String CRACKED_MOON_BASALT_BRICK_SLAB = "cracked_moon_basalt_brick_slab"; String CRACKED_MOON_BASALT_BRICK_STAIRS = "cracked_moon_basalt_brick_stairs"; String CRACKED_MOON_BASALT_BRICK_WALL = "cracked_moon_basalt_brick_wall"; - String OLIVINE_CLUSTER = "olivine_cluster"; - String OLIVINE_BASALT = "olivine_basalt"; - String RICH_OLIVINE_BASALT = "rich_olivine_basalt"; - String MOON_DIRT = "moon_dirt"; String MARS_SURFACE_ROCK = "mars_surface_rock"; String MARS_SUB_SURFACE_ROCK = "mars_sub_surface_rock"; @@ -177,7 +148,6 @@ interface Block { String TITANIUM_BLOCK = "titanium_block"; String LEAD_BLOCK = "lead_block"; String LUNAR_SAPPHIRE_BLOCK = "lunar_sapphire_block"; - String OLIVINE_BLOCK = "olivine_block"; // Decorative BLocks String ALUMINUM_DECORATION = "aluminum_decoration"; @@ -213,6 +183,7 @@ interface Block { String UNLIT_LANTERN = "unlit_lantern"; String CAVERNOUS_VINES = "cavernous_vines"; String CAVERNOUS_VINES_PLANT = "cavernous_vines_plant"; + String MOON_BERRY_BUSH = "moon_berry_bush"; String WEB_TORCH = "web_torch"; String FALLEN_METEOR = "fallen_meteor"; String SLIMELING_EGG = "slimeling_egg"; @@ -367,7 +338,6 @@ interface Item { String TITANIUM_NUGGET = "titanium_nugget"; String STEEL_INGOT = "steel_ingot"; String LUNAR_SAPPHIRE = "lunar_sapphire"; - String OLIVINE_SHARD = "olivine_shard"; String DESH_STICK = "desh_stick"; String CARBON_FRAGMENTS = "carbon_fragments"; String IRON_SHARD = "iron_shard"; @@ -404,6 +374,7 @@ interface Item { String AMBIENT_THERMAL_CONTROLLER = "ambient_thermal_controller"; String LIQUID_CANISTER = "liquid_canister"; //FOOD + String MOON_BERRIES = "moon_berries"; String CHEESE_CURD = "cheese_curd"; String CHEESE_SLICE = "cheese_slice"; String BURGER_BUN = "burger_bun"; @@ -774,7 +745,7 @@ interface Energy { @ApiStatus.Internal interface Misc { ResourceLocation INVALID = Constant.id("invalid"); - ResourceLocation EMPTY = ResourceLocation.withDefaultNamespace("empty"); + ResourceLocation EMPTY = new ResourceLocation("empty"); Direction[] DIRECTIONS = Direction.values(); Direction[] HORIZONTALS = {Direction.NORTH, Direction.EAST, Direction.SOUTH, Direction.WEST}; Direction[] VERTICALS = {Direction.UP, Direction.DOWN}; @@ -783,6 +754,11 @@ interface Misc { int MAX_STRING_READ = 32767; } + @ApiStatus.Internal + interface Mixin { + String DATAGEN_SKIP_README = "HashCacheMixin"; + } + interface Recipe { String FABRICATION = "fabrication"; String COMPRESSING = "compressing"; @@ -829,7 +805,7 @@ interface Carver { } interface Packet { - ResourceLocation STREAM_CODECBUBBLE_SIZE = id("bubble_size"); + ResourceLocation BUBBLE_SIZE = id("bubble_size"); ResourceLocation BUBBLE_MAX = id("bubble_max"); ResourceLocation BUBBLE_VISIBLE = id("bubble_visible"); ResourceLocation OPEN_GC_INVENTORY = id("open_gc_inv"); diff --git a/src/main/java/dev/galacticraft/mod/Galacticraft.java b/src/main/java/dev/galacticraft/mod/Galacticraft.java index ffbc97d425..3f4a451c17 100644 --- a/src/main/java/dev/galacticraft/mod/Galacticraft.java +++ b/src/main/java/dev/galacticraft/mod/Galacticraft.java @@ -33,7 +33,7 @@ import dev.galacticraft.mod.events.GCEventHandlers; import dev.galacticraft.mod.lookup.GCApiLookupProviders; import dev.galacticraft.mod.machine.GCMachineStatuses; -import dev.galacticraft.mod.network.GCPackets; +import dev.galacticraft.mod.misc.banner.GCBannerPatterns; import dev.galacticraft.mod.network.GCServerPacketReceivers; import dev.galacticraft.mod.particle.GCParticleTypes; import dev.galacticraft.mod.recipe.GCRecipes; @@ -48,7 +48,7 @@ import dev.galacticraft.mod.world.gen.feature.GCOrePlacedFeatures; import dev.galacticraft.mod.world.gen.feature.GCPlacedFeatures; import dev.galacticraft.mod.world.gen.structure.GCStructureTypes; -import dev.galacticraft.mod.world.gen.surfacerule.MoonSurfaceRules; +import dev.galacticraft.mod.world.gen.surfacebuilder.MoonSurfaceRules; import dev.galacticraft.mod.world.poi.GCPointOfInterestTypes; import net.fabricmc.api.ModInitializer; import net.fabricmc.fabric.api.event.registry.RegistryEntryAddedCallback; @@ -78,6 +78,7 @@ public void onInitialize() { GCRecipes.register(); GCEntityDataSerializers.register(); GCEntityTypes.register(); + GCLootTables.register(); GCGases.register(); GCOrePlacedFeatures.register(); GCPlacedFeatures.register(); @@ -90,13 +91,13 @@ public void onInitialize() { GCParticleTypes.register(); GCCommands.register(); GCLightSources.register(); - GCPackets.register(); GCServerPacketReceivers.register(); GCSounds.register(); GCPointOfInterestTypes.register(); MoonVillagerTypes.register(); GCVillagerProfessions.register(); GCMachineStatuses.register(); + GCBannerPatterns.register(); GCTeleporterTypes.register(); GCStats.register(); GCCelestialHandlers.register(); diff --git a/src/main/java/dev/galacticraft/mod/GalacticraftMixinPlugin.java b/src/main/java/dev/galacticraft/mod/GalacticraftMixinPlugin.java index e486caf468..c4316c438f 100644 --- a/src/main/java/dev/galacticraft/mod/GalacticraftMixinPlugin.java +++ b/src/main/java/dev/galacticraft/mod/GalacticraftMixinPlugin.java @@ -22,10 +22,13 @@ package dev.galacticraft.mod; +import net.fabricmc.fabric.impl.datagen.FabricDataGenHelper; +import net.fabricmc.loader.api.FabricLoader; import org.objectweb.asm.tree.ClassNode; import org.spongepowered.asm.mixin.extensibility.IMixinConfigPlugin; import org.spongepowered.asm.mixin.extensibility.IMixinInfo; +import java.util.ArrayList; import java.util.List; import java.util.Set; @@ -50,7 +53,13 @@ public void acceptTargets(Set myTargets, Set otherTargets) { @Override public List getMixins() { - return null; + List optionalMixins = new ArrayList<>(); + if (FabricLoader.getInstance().isDevelopmentEnvironment()) { + if (FabricDataGenHelper.ENABLED) { + optionalMixins.add(Constant.Mixin.DATAGEN_SKIP_README); + } + } + return optionalMixins; } @Override diff --git a/src/main/java/dev/galacticraft/mod/api/block/FluidLoggable.java b/src/main/java/dev/galacticraft/mod/api/block/FluidLoggable.java index c88571390b..c96645c258 100644 --- a/src/main/java/dev/galacticraft/mod/api/block/FluidLoggable.java +++ b/src/main/java/dev/galacticraft/mod/api/block/FluidLoggable.java @@ -49,7 +49,7 @@ public interface FluidLoggable extends BucketPickup, LiquidBlockContainer { FluidState EMPTY_STATE = Fluids.EMPTY.defaultFluidState(); - ResourceLocation INVALID = ResourceLocation.withDefaultNamespace("invalid"); + ResourceLocation INVALID = new ResourceLocation("invalid"); String DOT_REP = "_gc_dot_"; String DASH_REP = "_gc_dash_"; // yes this is bad.... but who's going to name a mod/fluid something like that String COLON_REP = "_gc_colon_"; @@ -75,7 +75,7 @@ public Collection getPossibleValues() { @Override public Optional getValue(String name) { - return Optional.of(ResourceLocation.parse(name.replace(DOT_REP, ".").replace(DASH_REP, "-").replace(COLON_REP, ":"))); + return Optional.of(new ResourceLocation(name.replace(DOT_REP, ".").replace(DASH_REP, "-").replace(COLON_REP, ":"))); } @Override diff --git a/src/main/java/dev/galacticraft/mod/api/block/FluidPipe.java b/src/main/java/dev/galacticraft/mod/api/block/FluidPipe.java index 70f371fbb3..b05b690fde 100644 --- a/src/main/java/dev/galacticraft/mod/api/block/FluidPipe.java +++ b/src/main/java/dev/galacticraft/mod/api/block/FluidPipe.java @@ -29,6 +29,7 @@ import net.fabricmc.loader.api.FabricLoader; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; +import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.player.Player; import net.minecraft.world.level.Level; @@ -46,14 +47,15 @@ public FluidPipe(Properties settings) { } @Override - protected InteractionResult useWithoutItem(BlockState state, Level level, BlockPos pos, Player player, BlockHitResult hit) { - if (!level.isClientSide() && Galacticraft.CONFIG.isDebugLogEnabled() && FabricLoader.getInstance().isDevelopmentEnvironment()) { - BlockEntity entity = level.getBlockEntity(pos); + @Deprecated + public InteractionResult use(BlockState state, Level world, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hit) { + if (!world.isClientSide() && Galacticraft.CONFIG.isDebugLogEnabled() && FabricLoader.getInstance().isDevelopmentEnvironment()) { + BlockEntity entity = world.getBlockEntity(pos); if (entity instanceof Pipe pipe) { Constant.LOGGER.info("Network: {}", pipe.getNetwork()); } } - return super.useWithoutItem(state, level, pos, player, hit); + return super.use(state, world, pos, player, hand, hit); } @Override diff --git a/src/main/java/dev/galacticraft/mod/api/block/MultiBlockBase.java b/src/main/java/dev/galacticraft/mod/api/block/MultiBlockBase.java index a9a7deff7b..b09074f0ee 100644 --- a/src/main/java/dev/galacticraft/mod/api/block/MultiBlockBase.java +++ b/src/main/java/dev/galacticraft/mod/api/block/MultiBlockBase.java @@ -23,11 +23,13 @@ package dev.galacticraft.mod.api.block; import net.minecraft.core.BlockPos; +import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.player.Player; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.BlockHitResult; import org.jetbrains.annotations.Unmodifiable; import java.util.List; @@ -48,7 +50,7 @@ default void onPartDestroyed(Level level, Player player, BlockState blockState, void onMultiBlockPlaced(Level level, BlockPos blockPos, BlockState blockState); - default InteractionResult multiBlockUseWithoutItem(BlockState baseState, Level level, BlockPos basePos, Player player) { + default InteractionResult onMultiBlockUse(BlockState blockState, Level level, BlockPos basePos, Player player, InteractionHand interactionHand, BlockHitResult blockHitResult) { return InteractionResult.PASS; } } diff --git a/src/main/java/dev/galacticraft/mod/api/block/MultiBlockMachineBlock.java b/src/main/java/dev/galacticraft/mod/api/block/MultiBlockMachineBlock.java index 0249d51a42..a5781207f4 100644 --- a/src/main/java/dev/galacticraft/mod/api/block/MultiBlockMachineBlock.java +++ b/src/main/java/dev/galacticraft/mod/api/block/MultiBlockMachineBlock.java @@ -22,13 +22,13 @@ package dev.galacticraft.mod.api.block; -import dev.galacticraft.machinelib.api.block.SimpleMachineBlock; +import dev.galacticraft.machinelib.api.block.MachineBlock; +import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; import net.minecraft.core.BlockPos; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.Explosion; import net.minecraft.world.level.Level; import net.minecraft.world.level.LevelReader; import net.minecraft.world.level.block.Block; @@ -36,7 +36,7 @@ import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.Nullable; -public abstract class MultiBlockMachineBlock extends SimpleMachineBlock implements MultiBlockBase { +public abstract class MultiBlockMachineBlock extends MachineBlock implements MultiBlockBase { protected MultiBlockMachineBlock(Properties settings, ResourceLocation factory) { super(settings, factory); } @@ -58,18 +58,6 @@ public BlockState playerWillDestroy(Level world, BlockPos pos, BlockState state, return returnState; } - @Override - public void wasExploded(Level world, BlockPos pos, Explosion explosion) { - for (BlockPos part : this.getOtherParts(world.getBlockState(pos))) { - part = pos.immutable().offset(part); - if (!(world.getBlockEntity(part) instanceof MultiBlockPart)) { - continue; - } - world.removeBlock(part, false); - } - super.wasExploded(world, pos, explosion); - } - @Override public boolean canSurvive(BlockState state, LevelReader world, BlockPos pos) { for (BlockPos otherPart : this.getOtherParts(state)) { diff --git a/src/main/java/dev/galacticraft/mod/api/block/WireBlock.java b/src/main/java/dev/galacticraft/mod/api/block/WireBlock.java index b64ece3c52..0d3825a793 100644 --- a/src/main/java/dev/galacticraft/mod/api/block/WireBlock.java +++ b/src/main/java/dev/galacticraft/mod/api/block/WireBlock.java @@ -29,6 +29,7 @@ import net.fabricmc.loader.api.FabricLoader; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; +import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.player.Player; import net.minecraft.world.level.Level; @@ -46,14 +47,15 @@ public WireBlock(Properties settings) { } @Override - protected InteractionResult useWithoutItem(BlockState state, Level level, BlockPos pos, Player player, BlockHitResult hit) { - if (!level.isClientSide() && Galacticraft.CONFIG.isDebugLogEnabled() && FabricLoader.getInstance().isDevelopmentEnvironment()) { - BlockEntity entity = level.getBlockEntity(pos); + @Deprecated + public InteractionResult use(BlockState state, Level world, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hit) { + if (!world.isClientSide() && Galacticraft.CONFIG.isDebugLogEnabled() && FabricLoader.getInstance().isDevelopmentEnvironment()) { + BlockEntity entity = world.getBlockEntity(pos); if (entity instanceof Wire wire) { Constant.LOGGER.info("Network: {}", wire.getNetwork()); } } - return super.useWithoutItem(state, level, pos, player, hit); + return super.use(state, world, pos, player, hand, hit); } @Override diff --git a/src/main/java/dev/galacticraft/mod/api/block/entity/AbstractSolarPanelBlockEntity.java b/src/main/java/dev/galacticraft/mod/api/block/entity/AbstractSolarPanelBlockEntity.java index afce2ccaf5..c08b17c47e 100644 --- a/src/main/java/dev/galacticraft/mod/api/block/entity/AbstractSolarPanelBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/api/block/entity/AbstractSolarPanelBlockEntity.java @@ -25,31 +25,35 @@ import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; import dev.galacticraft.machinelib.api.machine.MachineStatus; import dev.galacticraft.machinelib.api.machine.MachineStatuses; -import dev.galacticraft.machinelib.api.storage.StorageSpec; -import dev.galacticraft.machinelib.api.util.EnergySource; +import dev.galacticraft.machinelib.api.machine.MachineType; import dev.galacticraft.mod.machine.GCMachineStatuses; +import dev.galacticraft.mod.screen.SolarPanelMenu; import net.minecraft.core.BlockPos; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.profiling.ProfilerFiller; -import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.entity.player.Inventory; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; public abstract class AbstractSolarPanelBlockEntity extends MachineBlockEntity implements SolarPanel { public static final int CHARGE_SLOT = 0; protected final boolean[] blockage = new boolean[9]; protected int blocked = 0; public long currentEnergyGeneration = 0; - private final EnergySource energySource = new EnergySource(this); - public AbstractSolarPanelBlockEntity(BlockEntityType type, BlockPos pos, BlockState state, StorageSpec spec) { - super(type, pos, state, spec); + public AbstractSolarPanelBlockEntity(MachineType> type, BlockPos pos, BlockState state) { + super(type, pos, state); } @Override public void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @NotNull BlockState state, @NotNull ProfilerFiller profiler) { profiler.push("charge"); - this.drainPowerToSlot(CHARGE_SLOT); + this.drainPowerToStack(CHARGE_SLOT); profiler.popPush("blockage"); this.blocked = 0; for (int x = -1; x < 2; x++) { //todo: cache? @@ -66,7 +70,7 @@ public void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @Not @Override public @NotNull MachineStatus tick(@NotNull ServerLevel level, @NotNull BlockPos pos, @NotNull BlockState state, @NotNull ProfilerFiller profiler) { profiler.push("push_energy"); - this.energySource.trySpreadEnergy(level, pos, state); + this.trySpreadEnergy(level, state); profiler.pop(); if (this.blocked >= 9) return GCMachineStatuses.BLOCKED; if (this.energyStorage().isFull()) return MachineStatuses.CAPACITOR_FULL; @@ -90,6 +94,29 @@ public void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @Not protected abstract long calculateEnergyProduction(long time, double multiplier); + @Nullable + @Override + public AbstractContainerMenu createMenu(int syncId, Inventory inv, Player player) { + if (this.getSecurity().hasAccess(player)) { + return new SolarPanelMenu<>( + syncId, + ((ServerPlayer) player), + this + ); + } + return null; + } + + @Override + public void writeScreenOpeningData(ServerPlayer player, @NotNull FriendlyByteBuf buf) { + super.writeScreenOpeningData(player, buf); + + buf.writeBoolean(this.followsSun()); + buf.writeBoolean(this.nightCollection()); + buf.writeByte(this.getSource().ordinal()); + buf.writeVarLong(this.getCurrentEnergyGeneration()); + } + @Override public boolean @NotNull [] getBlockage() { return this.blockage; diff --git a/src/main/java/dev/galacticraft/mod/api/block/entity/Walkway.java b/src/main/java/dev/galacticraft/mod/api/block/entity/Walkway.java index 7f2afa3581..410bcb27a8 100644 --- a/src/main/java/dev/galacticraft/mod/api/block/entity/Walkway.java +++ b/src/main/java/dev/galacticraft/mod/api/block/entity/Walkway.java @@ -23,12 +23,13 @@ package dev.galacticraft.mod.api.block.entity; import dev.galacticraft.mod.Constant; -import net.minecraft.core.Direction; -import net.minecraft.nbt.CompoundTag; import org.jetbrains.annotations.NotNull; import java.util.Objects; +import net.minecraft.core.Direction; +import net.minecraft.nbt.CompoundTag; + public interface Walkway extends Connected { Direction getDirection(); diff --git a/src/main/java/dev/galacticraft/mod/api/data/recipe/GCRecipeBuilder.java b/src/main/java/dev/galacticraft/mod/api/data/recipe/GCRecipeBuilder.java index 1ed33fa900..1aaad93ddd 100644 --- a/src/main/java/dev/galacticraft/mod/api/data/recipe/GCRecipeBuilder.java +++ b/src/main/java/dev/galacticraft/mod/api/data/recipe/GCRecipeBuilder.java @@ -77,7 +77,7 @@ public void save(RecipeOutput output, ResourceLocation id) { .rewards(AdvancementRewards.Builder.recipe(id)) .requirements(AdvancementRequirements.Strategy.OR); this.criteria.forEach(builder::addCriterion); - output.accept(ResourceLocation.fromNamespaceAndPath(id.getNamespace(), this.subPath + '/' + id.getPath()), createRecipe(id), builder.build(id.withPrefix("recipes/"))); + output.accept(new ResourceLocation(id.getNamespace(), this.subPath + '/' + id.getPath()), createRecipe(id), builder.build(id.withPrefix("recipes/"))); } public abstract Recipe createRecipe(ResourceLocation id); diff --git a/src/main/java/dev/galacticraft/mod/api/data/recipe/ShapelessCompressorRecipeBuilder.java b/src/main/java/dev/galacticraft/mod/api/data/recipe/ShapelessCompressorRecipeBuilder.java index dd3459c4de..5dc7339945 100644 --- a/src/main/java/dev/galacticraft/mod/api/data/recipe/ShapelessCompressorRecipeBuilder.java +++ b/src/main/java/dev/galacticraft/mod/api/data/recipe/ShapelessCompressorRecipeBuilder.java @@ -115,6 +115,6 @@ public void save(RecipeOutput output, ResourceLocation recipeId) { .rewards(AdvancementRewards.Builder.recipe(recipeId)) .requirements(AdvancementRequirements.Strategy.OR); this.criteria.forEach(builder::addCriterion); - output.accept(ResourceLocation.fromNamespaceAndPath(recipeId.getNamespace(), "compressing/" + recipeId.getPath()), new ShapelessCompressingRecipe(this.group == null ? "" : this.group, new ItemStack(this.result, count), this.ingredients, 200), builder.build(recipeId.withPrefix("recipes/"))); + output.accept(new ResourceLocation(recipeId.getNamespace(), "compressing/" + recipeId.getPath()), new ShapelessCompressingRecipe(this.group == null ? "" : this.group, new ItemStack(this.result, count), this.ingredients, 200), builder.build(recipeId.withPrefix("recipes/"))); } } diff --git a/src/main/java/dev/galacticraft/mod/api/pipe/impl/PipeNetworkImpl.java b/src/main/java/dev/galacticraft/mod/api/pipe/impl/PipeNetworkImpl.java index 3b72481ba3..79a27927e0 100644 --- a/src/main/java/dev/galacticraft/mod/api/pipe/impl/PipeNetworkImpl.java +++ b/src/main/java/dev/galacticraft/mod/api/pipe/impl/PipeNetworkImpl.java @@ -60,7 +60,7 @@ public class PipeNetworkImpl extends SnapshotParticipant { long insert = (long) (requested * ratio); if (insert > 0) { diff --git a/src/main/java/dev/galacticraft/mod/attachments/GCServerPlayer.java b/src/main/java/dev/galacticraft/mod/attachments/GCServerPlayer.java index eb56a23834..db92ae0415 100644 --- a/src/main/java/dev/galacticraft/mod/attachments/GCServerPlayer.java +++ b/src/main/java/dev/galacticraft/mod/attachments/GCServerPlayer.java @@ -26,6 +26,7 @@ import com.mojang.serialization.codecs.RecordCodecBuilder; import dev.galacticraft.api.rocket.RocketData; import net.minecraft.core.NonNullList; +import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.item.ItemStack; @@ -38,10 +39,17 @@ public class GCServerPlayer { public long fuel; public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( - RocketData.CODEC.optionalFieldOf("rocket_data").forGetter(o -> Optional.ofNullable(o.rocketData)), + CompoundTag.CODEC.optionalFieldOf("rocket_data").forGetter(o -> { + if (o.rocketData != null) { + CompoundTag tag = new CompoundTag(); + o.rocketData.toNbt(tag); + return Optional.of(tag); + } + return Optional.empty(); + }), Codec.LONG.fieldOf("fuel").forGetter(GCServerPlayer::getFuel), ItemStack.CODEC.listOf().fieldOf("rocket_stacks").forGetter(GCServerPlayer::getRocketStacks) - ).apply(instance, (data, fuel, stacks) -> new GCServerPlayer(data.orElse(null), fuel, stacks))); + ).apply(instance, GCServerPlayer::new)); public static GCServerPlayer get(ServerPlayer player) { return player.getAttachedOrCreate(GCAttachments.SERVER_PLAYER, () -> new GCServerPlayer(player)); @@ -51,8 +59,8 @@ public static GCServerPlayer get(ServerPlayer player) { public GCServerPlayer(ServerPlayer player) { } - public GCServerPlayer(RocketData data, long fuel, List stacks) { - this.rocketData = data; + public GCServerPlayer(Optional data, long fuel, List stacks) { + this.rocketData = data.map(RocketData::fromNbt).orElse(null); this.fuel = fuel; this.stacks = NonNullList.of(ItemStack.EMPTY, stacks.toArray(ItemStack[]::new)); } diff --git a/src/main/java/dev/galacticraft/mod/client/gl/BufferWriter.java b/src/main/java/dev/galacticraft/mod/client/gl/BufferWriter.java new file mode 100644 index 0000000000..041ee54dde --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/client/gl/BufferWriter.java @@ -0,0 +1,135 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.client.gl; + +import com.google.common.collect.ImmutableList; +import com.mojang.blaze3d.vertex.BufferVertexConsumer; +import com.mojang.blaze3d.vertex.DefaultedVertexConsumer; +import com.mojang.blaze3d.vertex.VertexFormat; +import com.mojang.blaze3d.vertex.VertexFormatElement; +import com.mojang.logging.LogUtils; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3fc; +import org.joml.Vector4fc; +import org.lwjgl.system.MemoryUtil; +import org.slf4j.Logger; + +import java.nio.ByteBuffer; + +public class BufferWriter extends DefaultedVertexConsumer implements BufferVertexConsumer { + private static final Logger LOGGER = LogUtils.getLogger(); + private static final int FLOAT32_SIZE = 4; + private static final int INT16_SIZE = 2; + private static final int INT32_SIZE = 4; + + private int nextElementByte; + private int vertices; + @Nullable + private VertexFormatElement currentElement; + private int elementIndex; + private VertexFormat format; + ByteBuffer data; + + public BufferWriter(VertexFormat format, int initialSize) { + this.data = MemoryUtil.memAlloc(initialSize); + this.format = format; + this.currentElement = format.getElements().get(0); + } + + public BufferWriter(VertexFormat format) { + this(format, 64); + } + + public void rewind() { + this.data.rewind(); + } + + public void int3(int a, int b, int c) { + this.ensureCapacity(INT32_SIZE * 3); + this.data.putInt(a).putInt(b).putInt(c); + } + + public void free() { + MemoryUtil.memFree(this.data); + } + + private void ensureCapacity(int bytes) { + if (this.data.remaining() >= bytes) return; + this.data = MemoryUtil.memRealloc(this.data, this.data.capacity() * 2); + + LOGGER.debug("Resizing buffer from " + this.data.capacity() + " bytes to " + this.data.capacity() * 2); + } + + @Override + public VertexFormatElement currentElement() { + if (this.currentElement == null) { + throw new IllegalStateException("BufferWriter not started"); + } else { + return this.currentElement; + } + } + + @Override + public void nextElement() { + ImmutableList elements = this.format.getElements(); + this.elementIndex = (this.elementIndex + 1) % elements.size(); + this.nextElementByte += this.currentElement.getByteSize(); + VertexFormatElement vertexFormatElement = elements.get(this.elementIndex); + this.currentElement = vertexFormatElement; + if (vertexFormatElement.getUsage() == VertexFormatElement.Usage.PADDING) { // Why does mojank have this? + this.nextElement(); + } + + if (this.defaultColorSet && this.currentElement.getUsage() == VertexFormatElement.Usage.COLOR) { + BufferVertexConsumer.super.color(this.defaultR, this.defaultG, this.defaultB, this.defaultA); + } + } + + @Override + public void putByte(int index, byte byteValue) { +// this.ensureCapacity(1); + this.data.put(byteValue); + } + + @Override + public void putShort(int index, short shortValue) { +// this.ensureCapacity(INT16_SIZE); + this.data.putShort(shortValue); + } + + @Override + public void putFloat(int index, float floatValue) { +// this.ensureCapacity(FLOAT32_SIZE); + this.data.putFloat(floatValue); + } + + @Override + public void endVertex() { + if (this.elementIndex != 0) { + throw new IllegalStateException("Not filled all elements of the vertex"); + } else { + ++this.vertices; + this.ensureCapacity(format.getVertexSize()); + } + } +} diff --git a/src/main/java/dev/galacticraft/mod/client/gl/GlElementArrayBuffer.java b/src/main/java/dev/galacticraft/mod/client/gl/GlElementArrayBuffer.java new file mode 100644 index 0000000000..e6bcc4035c --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/client/gl/GlElementArrayBuffer.java @@ -0,0 +1,59 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.client.gl; + +import static org.lwjgl.opengl.GL45.*; + +public class GlElementArrayBuffer extends GlObject { + + private int eboSize = 0; + + public GlElementArrayBuffer() { + super(glGenBuffers()); + } + + public void bind() { + glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, this.handle); + } + + public void unbind() { + glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0); + } + + public void upload(BufferWriter writer, boolean dynamic) { + this.bind(); + + if (writer.data.position() > this.eboSize) { + glBufferData(GL_ELEMENT_ARRAY_BUFFER, writer.data.slice(0, writer.data.position()), dynamic ? GL_DYNAMIC_DRAW : GL_STATIC_DRAW); + this.eboSize = writer.data.position(); + } else { + glBufferSubData(GL_ELEMENT_ARRAY_BUFFER, 0, writer.data.slice(0, writer.data.position())); + } + + this.unbind(); + } + + public void delete() { + glDeleteBuffers(this.handle); + } +} \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/client/gl/GlObject.java b/src/main/java/dev/galacticraft/mod/client/gl/GlObject.java new file mode 100644 index 0000000000..2e26f316f5 --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/client/gl/GlObject.java @@ -0,0 +1,35 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.client.gl; + +public abstract class GlObject { + protected final int handle; + + public GlObject(int handle) { + this.handle = handle; + } + + public int getHandle() { + return handle; + } +} diff --git a/src/main/java/dev/galacticraft/mod/client/gl/GlVertexArray.java b/src/main/java/dev/galacticraft/mod/client/gl/GlVertexArray.java new file mode 100644 index 0000000000..63115c3fa1 --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/client/gl/GlVertexArray.java @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.client.gl; + +import static org.lwjgl.opengl.GL45.*; + +public class GlVertexArray extends GlObject { + + public GlVertexArray() { + super(glGenVertexArrays()); + } + + public void draw(int count) { + this.bind(); + glDrawArrays(GL_TRIANGLES, 0, count); + this.unbind(); + } + + public void bind() { + glBindVertexArray(this.handle); + } + + public void unbind() { + glBindVertexArray(0); + } + + public void delete() { + glDeleteVertexArrays(this.handle); + } +} diff --git a/src/main/java/dev/galacticraft/mod/client/gl/GlVertexBuffer.java b/src/main/java/dev/galacticraft/mod/client/gl/GlVertexBuffer.java new file mode 100644 index 0000000000..677f18482f --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/client/gl/GlVertexBuffer.java @@ -0,0 +1,59 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.client.gl; + +import static org.lwjgl.opengl.GL45.*; + +public class GlVertexBuffer extends GlObject { + + private int vboSize = 0; + + public GlVertexBuffer() { + super(glGenBuffers()); + } + + public void bind() { + glBindBuffer(GL_ARRAY_BUFFER, this.handle); + } + + public void unbind() { + glBindBuffer(GL_ARRAY_BUFFER, 0); + } + + public void upload(BufferWriter writer, boolean dynamic) { + this.bind(); + + if (writer.data.position() > this.vboSize) { + glBufferData(GL_ARRAY_BUFFER, writer.data.slice(0, writer.data.position()), dynamic ? GL_DYNAMIC_DRAW : GL_STATIC_DRAW); + this.vboSize = writer.data.position(); + } else { + glBufferSubData(GL_ARRAY_BUFFER, 0, writer.data.slice(0, writer.data.position())); + } + + this.unbind(); + } + + public void delete() { + glDeleteBuffers(this.handle); + } +} \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/client/gl/MeshBuffer.java b/src/main/java/dev/galacticraft/mod/client/gl/MeshBuffer.java new file mode 100644 index 0000000000..ec739e2f5b --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/client/gl/MeshBuffer.java @@ -0,0 +1,161 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.client.gl; + +import com.mojang.blaze3d.platform.GlConst; +import com.mojang.blaze3d.platform.GlStateManager; +import com.mojang.blaze3d.platform.Window; +import com.mojang.blaze3d.systems.RenderSystem; +import com.mojang.blaze3d.vertex.BufferUploader; +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexBuffer; +import com.mojang.blaze3d.vertex.VertexFormat; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.ShaderInstance; +import org.lwjgl.opengl.GL11; +import org.lwjgl.opengl.GL30; + +/** + * More flexible version of {@link com.mojang.blaze3d.vertex.VertexBuffer} + */ +public class MeshBuffer { + private GlVertexBuffer vbo; + private GlElementArrayBuffer ebo; + private GlVertexArray vao; + private final VertexFormat format; + public final BufferWriter buffer; + public final BufferWriter indicesBuffer; + + public MeshBuffer(VertexFormat format) { + RenderSystem.assertOnRenderThread(); + this.vbo = new GlVertexBuffer(); + this.vao = new GlVertexArray(); + this.ebo = new GlElementArrayBuffer(); + + this.format = format; + + this.buffer = new BufferWriter(format, 786432); + this.indicesBuffer = new BufferWriter(format, 786432); + } + + public void upload(boolean dynamic) { + this.vbo.bind(); + this.vao.bind(); + this.ebo.bind(); + format.setupBufferState(); + + this.vbo.upload(this.buffer, dynamic); + this.ebo.upload(this.indicesBuffer, dynamic); + } + + /** + * Render this mesh to the screen. + * @param mode The current vertex mode to use (avoid using {@link GL11#GL_QUADS} and {@link GL11#GL_QUAD_STRIP} as they are deprecated) + * @param modelMatrix The models transform to use in the shader + */ + public void draw(int mode, PoseStack modelMatrix, ShaderInstance shader) { + this.vao.bind(); + for(int i = 0; i < 12; ++i) { + int j = RenderSystem.getShaderTexture(i); + shader.setSampler("Sampler" + i, j); + } + + if (shader.MODEL_VIEW_MATRIX != null) { + shader.MODEL_VIEW_MATRIX.set(modelMatrix.last().pose()); + } + + if (shader.PROJECTION_MATRIX != null) { + shader.PROJECTION_MATRIX.set(RenderSystem.getProjectionMatrix()); + } + + if (shader.INVERSE_VIEW_ROTATION_MATRIX != null) { + shader.INVERSE_VIEW_ROTATION_MATRIX.set(RenderSystem.getInverseViewRotationMatrix()); + } + + if (shader.COLOR_MODULATOR != null) { + shader.COLOR_MODULATOR.set(RenderSystem.getShaderColor()); + } + + if (shader.GLINT_ALPHA != null) { + shader.GLINT_ALPHA.set(RenderSystem.getShaderGlintAlpha()); + } + + if (shader.FOG_START != null) { + shader.FOG_START.set(RenderSystem.getShaderFogStart()); + } + + if (shader.FOG_END != null) { + shader.FOG_END.set(RenderSystem.getShaderFogEnd()); + } + + if (shader.FOG_COLOR != null) { + shader.FOG_COLOR.set(RenderSystem.getShaderFogColor()); + } + + if (shader.FOG_SHAPE != null) { + shader.FOG_SHAPE.set(RenderSystem.getShaderFogShape().getIndex()); + } + + if (shader.TEXTURE_MATRIX != null) { + shader.TEXTURE_MATRIX.set(RenderSystem.getTextureMatrix()); + } + + if (shader.GAME_TIME != null) { + shader.GAME_TIME.set(RenderSystem.getShaderGameTime()); + } + + if (shader.SCREEN_SIZE != null) { + Window window = Minecraft.getInstance().getWindow(); + shader.SCREEN_SIZE.set((float)window.getWidth(), (float)window.getHeight()); + } + + if (shader.LINE_WIDTH != null && (mode == GlConst.GL_LINES || mode == GlConst.GL_LINE_STRIP)) { + shader.LINE_WIDTH.set(RenderSystem.getShaderLineWidth()); + } + + RenderSystem.setupShaderLights(shader); + shader.apply(); + + this.ebo.bind(); + RenderSystem.drawElements(mode, this.indicesBuffer.data.position() / 4, GlConst.GL_UNSIGNED_INT); + shader.clear(); + this.vao.unbind(); + } + + /** + * Render this mesh to the screen. + * @param modelMatrix The models transform to use in the shader + */ + public void draw(PoseStack modelMatrix, ShaderInstance shader) { +// RenderSystem.setShader(() -> shader); + draw(GlConst.GL_TRIANGLES, modelMatrix, shader); + } + + public void delete() { + this.vao.delete(); + this.ebo.delete(); + this.vbo.delete(); + this.buffer.free(); + this.indicesBuffer.free(); + } +} diff --git a/src/main/java/dev/galacticraft/mod/client/gui/overlay/CountdownOverlay.java b/src/main/java/dev/galacticraft/mod/client/gui/overlay/CountdownOverlay.java index 64de610d62..8726d186f8 100644 --- a/src/main/java/dev/galacticraft/mod/client/gui/overlay/CountdownOverlay.java +++ b/src/main/java/dev/galacticraft/mod/client/gui/overlay/CountdownOverlay.java @@ -24,13 +24,12 @@ import dev.galacticraft.api.rocket.LaunchStage; import dev.galacticraft.mod.content.entity.orbital.RocketEntity; -import net.minecraft.client.DeltaTracker; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.util.FastColor; public class CountdownOverlay { - public static void renderCountdown(GuiGraphics graphics, DeltaTracker delta) { + public static void renderCountdown(GuiGraphics graphics, float tickDelta) { Minecraft mc = Minecraft.getInstance(); if (mc.player.getVehicle() instanceof RocketEntity rocket && rocket.getLaunchStage() == LaunchStage.IGNITED) { int count = (int) Math.floor(((float) rocket.getTimeAsState()) / 20.0f); diff --git a/src/main/java/dev/galacticraft/mod/client/gui/overlay/LanderOverlay.java b/src/main/java/dev/galacticraft/mod/client/gui/overlay/LanderOverlay.java index 0198285eef..8937700343 100644 --- a/src/main/java/dev/galacticraft/mod/client/gui/overlay/LanderOverlay.java +++ b/src/main/java/dev/galacticraft/mod/client/gui/overlay/LanderOverlay.java @@ -25,7 +25,6 @@ import com.mojang.blaze3d.platform.Window; import dev.galacticraft.mod.content.entity.orbital.lander.LanderEntity; import dev.galacticraft.mod.util.Translations; -import net.minecraft.client.DeltaTracker; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.network.chat.Component; @@ -34,7 +33,7 @@ public class LanderOverlay { private static long tickCount; - public static void onRenderHud(GuiGraphics graphics, DeltaTracker delta) { + public static void onRenderHud(GuiGraphics graphics, float tickDelta) { Minecraft mc = Minecraft.getInstance(); final Window scaledresolution = mc.getWindow(); final int width = scaledresolution.getGuiScaledWidth(); diff --git a/src/main/java/dev/galacticraft/mod/client/gui/overlay/OxygenOverlay.java b/src/main/java/dev/galacticraft/mod/client/gui/overlay/OxygenOverlay.java index 4452c9c604..e69b29748d 100644 --- a/src/main/java/dev/galacticraft/mod/client/gui/overlay/OxygenOverlay.java +++ b/src/main/java/dev/galacticraft/mod/client/gui/overlay/OxygenOverlay.java @@ -24,6 +24,8 @@ import dev.galacticraft.api.gas.Gases; import dev.galacticraft.api.universe.celestialbody.CelestialBody; +import dev.galacticraft.api.universe.celestialbody.CelestialBodyConfig; +import dev.galacticraft.api.universe.celestialbody.landable.Landable; import dev.galacticraft.machinelib.api.util.StorageHelper; import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.util.DrawableUtil; @@ -31,18 +33,16 @@ import net.fabricmc.fabric.api.transfer.v1.fluid.FluidStorage; import net.fabricmc.fabric.api.transfer.v1.fluid.FluidVariant; import net.fabricmc.fabric.api.transfer.v1.storage.Storage; -import net.minecraft.client.DeltaTracker; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiGraphics; -import net.minecraft.core.Holder; import net.minecraft.world.Container; public class OxygenOverlay { - public static void onHudRender(GuiGraphics graphics, DeltaTracker delta) { + public static void onHudRender(GuiGraphics graphics, float tickDelta) { Minecraft mc = Minecraft.getInstance(); if (mc.level != null && mc.player != null && !mc.player.isSpectator()) { - Holder> body = mc.level.galacticraft$getCelestialBody(); - if (body != null && !body.value().atmosphere().breathable()) { + CelestialBody> body = CelestialBody.getByDimension(mc.level).orElse(null); + if (body != null && !body.atmosphere().breathable()) { Container inv = mc.player.galacticraft$getOxygenTanks(); final int y = 4; for (int i = 0; i < inv.getContainerSize(); i++) { @@ -55,8 +55,8 @@ public static void onHudRender(GuiGraphics graphics, DeltaTracker delta) { long capacity = 1; if (storage != null) { - amount = StorageHelper.calculateAmount(FluidVariant.of(Gases.OXYGEN), storage); - capacity = StorageHelper.theoreticalCapacity(storage); + amount = StorageHelper.calculateAmount(FluidVariant.of(Gases.OXYGEN), storage, null); + capacity = StorageHelper.calculateCapacity(FluidVariant.of(Gases.OXYGEN), storage, null); } else if (mc.player.isCreative()) { amount = capacity; } diff --git a/src/main/java/dev/galacticraft/mod/client/gui/overlay/RocketOverlay.java b/src/main/java/dev/galacticraft/mod/client/gui/overlay/RocketOverlay.java index a3da95fb3a..1f3c93cca8 100644 --- a/src/main/java/dev/galacticraft/mod/client/gui/overlay/RocketOverlay.java +++ b/src/main/java/dev/galacticraft/mod/client/gui/overlay/RocketOverlay.java @@ -27,7 +27,6 @@ import com.mojang.math.Axis; import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.content.entity.orbital.RocketEntity; -import net.minecraft.client.DeltaTracker; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.renderer.GameRenderer; @@ -59,7 +58,7 @@ protected static int getPlayerPositionY(Player player) return (int) Math.floor(player.getY()); } - public static void onHudRender(GuiGraphics graphics, DeltaTracker delta) { + public static void onHudRender(GuiGraphics graphics, float tickDelta) { Minecraft mc = Minecraft.getInstance(); if (playerHead == null) { playerHead = mc.getSkinManager().getInsecureSkin(mc.player.getGameProfile()).texture(); @@ -81,13 +80,15 @@ public static void onHudRender(GuiGraphics graphics, DeltaTracker delta) { float var8 = 1.0F; float sizeScale = 0.65F; - BufferBuilder buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); + final Tesselator tess = Tesselator.getInstance(); + BufferBuilder worldRenderer = tess.getBuilder(); RenderSystem.setShader(GameRenderer::getPositionTexShader); - buffer.addVertex(var1 + 0, var2 + 242.0F * sizeScale, 0.0F).setUv((var3 + 0) * var7, (var4 + var6) * var8) - .addVertex(var1 + 20.0F * sizeScale, var2 + 242.0F * sizeScale, 0.0F).setUv((var3 + var5) * var7, (var4 + var6) * var8) - .addVertex(var1 + 20.0F * sizeScale, var2 + 0, 0.0F).setUv((var3 + var5) * var7, (var4 + 0) * var8) - .addVertex(var1 + 0, var2 + 0, 0.0F).setUv((var3 + 0) * var7, (var4 + 0) * var8); - BufferUploader.drawWithShader(buffer.buildOrThrow()); + worldRenderer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); + worldRenderer.vertex(var1 + 0, var2 + 242.0F * sizeScale, 0.0).uv((var3 + 0) * var7, (var4 + var6) * var8).endVertex(); + worldRenderer.vertex(var1 + 20.0F * sizeScale, var2 + 242.0F * sizeScale, 0.0).uv((var3 + var5) * var7, (var4 + var6) * var8).endVertex(); + worldRenderer.vertex(var1 + 20.0F * sizeScale, var2 + 0, 0.0).uv((var3 + var5) * var7, (var4 + 0) * var8).endVertex(); + worldRenderer.vertex(var1 + 0, var2 + 0, 0.0).uv((var3 + 0) * var7, (var4 + 0) * var8).endVertex(); + BufferUploader.drawWithShader(worldRenderer.end()); RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 1.0F); @@ -117,7 +118,7 @@ public static void onHudRender(GuiGraphics graphics, DeltaTracker delta) { try { MultiBufferSource.BufferSource source = Minecraft.getInstance().renderBuffers().bufferSource(); - spaceshipRender.render(rocketEntity, rocketEntity.getYRot(), delta.getGameTimeDeltaTicks(), graphics.pose(), source, LightTexture.FULL_BRIGHT); + spaceshipRender.render(rocketEntity, rocketEntity.getYRot(), tickDelta, graphics.pose(), source, LightTexture.FULL_BRIGHT); source.endBatch(); } catch (Exception e) { e.printStackTrace(); @@ -131,20 +132,20 @@ public static void onHudRender(GuiGraphics graphics, DeltaTracker delta) { graphics.pose().translate(0F, -12F + headOffset, 60F); RenderSystem.setShader(GameRenderer::getPositionTexShader); - buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); - buffer.addVertex(var1 + 0, var2 + var6 - 10, 0.0F).setUv((var3 + 0) * var7, (var4 + var6) * var8) - .addVertex(var1 + var5, var2 + var6 - 10, 0.0F).setUv((var3 + var5) * var7, (var4 + var6) * var8) - .addVertex(var1 + var5, var2 - 10, 0.0F).setUv((var3 + var5) * var7, (var4 + 0) * var8) - .addVertex(var1 + 0, var2 - 10, 0.0F).setUv((var3 + 0) * var7, (var4 + 0) * var8); - BufferUploader.drawWithShader(buffer.buildOrThrow()); + worldRenderer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); + worldRenderer.vertex(var1 + 0, var2 + var6 - 10, 0.0).uv((var3 + 0) * var7, (var4 + var6) * var8).endVertex(); + worldRenderer.vertex(var1 + var5, var2 + var6 - 10, 0.0).uv((var3 + var5) * var7, (var4 + var6) * var8).endVertex(); + worldRenderer.vertex(var1 + var5, var2 - 10, 0.0).uv((var3 + var5) * var7, (var4 + 0) * var8).endVertex(); + worldRenderer.vertex(var1 + 0, var2 - 10, 0.0).uv((var3 + 0) * var7, (var4 + 0) * var8).endVertex(); + BufferUploader.drawWithShader(worldRenderer.end()); RenderSystem.setShader(GameRenderer::getPositionTexShader); - buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); - buffer.addVertex(var1 + 0, var2 + var6, 0.0F).setUv((var3b + 0) * var7, (var4 + var6) * var8) - .addVertex(var1 + var5, var2 + var6, 0.0F).setUv((var3b + var5) * var7, (var4 + var6) * var8) - .addVertex(var1 + var5, var2 + 0, 0.0F).setUv((var3b + var5) * var7, (var4 + 0) * var8) - .addVertex(var1 + 0, var2 + 0, 0.0F).setUv((var3b + 0) * var7, (var4 + 0) * var8); - BufferUploader.drawWithShader(buffer.buildOrThrow()); + worldRenderer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); + worldRenderer.vertex(var1 + 0, var2 + var6, 0.0).uv((var3b + 0) * var7, (var4 + var6) * var8).endVertex(); + worldRenderer.vertex(var1 + var5, var2 + var6, 0.0).uv((var3b + var5) * var7, (var4 + var6) * var8).endVertex(); + worldRenderer.vertex(var1 + var5, var2 + 0, 0.0).uv((var3b + var5) * var7, (var4 + 0) * var8).endVertex(); + worldRenderer.vertex(var1 + 0, var2 + 0, 0.0).uv((var3b + 0) * var7, (var4 + 0) * var8).endVertex(); + BufferUploader.drawWithShader(worldRenderer.end()); RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 1.0F); RenderSystem.disableBlend(); diff --git a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/CelestialScreen.java b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/CelestialScreen.java index 9f846cc6c3..1fcc17a852 100644 --- a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/CelestialScreen.java +++ b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/CelestialScreen.java @@ -530,7 +530,7 @@ public void drawCelestialBodies(GuiGraphics graphics, double mouseX, double mous this.setupMatrix(body, matrices, moon ? 0.25F : 1.0F, delta); CelestialDisplay display = body.display(); RenderSystem.setShaderColor(1.0f, 1.0f, 1.0f, alpha); - Vector4f vector4f = display.render(graphics, Tesselator.getInstance(), getWidthForCelestialBody(body), mouseX, mouseY, delta); + Vector4f vector4f = display.render(graphics, Tesselator.getInstance().getBuilder(), getWidthForCelestialBody(body), mouseX, mouseY, delta); Matrix4f planetMatrix = matrices.last().pose(); Matrix4f matrix0 = RenderSystem.getProjectionMatrix().mul(planetMatrix, planetMatrix); @@ -597,17 +597,18 @@ public void setIsometric(float delta, PoseStack matrices) { */ public void drawGrid(GuiGraphics graphics, float gridSize, float gridScale) { RenderSystem.depthMask(false); - VertexConsumer buffer = graphics.bufferSource().getBuffer(RenderType.LINES); + VertexConsumer vertexConsumer = graphics.bufferSource().getBuffer(RenderType.LINES); Matrix4f model = graphics.pose().last().pose(); RenderSystem.lineWidth(2.0f); gridSize += gridScale / 2.0f; for (float v = -gridSize; v <= gridSize; v += gridScale) { - buffer.addVertex(model, v, -gridSize, 0).setColor(0, 51, 127, 140).setNormal(1.0f, 1.0f, 1.0f) - .addVertex(model, v, gridSize, 0).setColor(0, 51, 127, 140).setNormal(1.0f, 1.0f, 1.0f) - .addVertex(model, -gridSize, v, 0).setColor(0, 51, 127, 140).setNormal(1.0f, 0.0f, 1.0f) - .addVertex(model, gridSize, v, 0).setColor(0, 51, 127, 140).setNormal(1.0f, 0.0f, 1.0f); + vertexConsumer.vertex(model, v, -gridSize, 0).color(0, 51, 127, 140).normal(1.0f, 1.0f, 1.0f).endVertex(); + vertexConsumer.vertex(model, v, gridSize, 0).color(0, 51, 127, 140).normal(1.0f, 1.0f, 1.0f).endVertex(); + + vertexConsumer.vertex(model, -gridSize, v, 0).color(0, 51, 127, 140).normal(1.0f, 0.0f, 1.0f).endVertex(); + vertexConsumer.vertex(model, gridSize, v, 0).color(0, 51, 127, 140).normal(1.0f, 0.0f, 1.0f).endVertex(); } graphics.bufferSource().endBatch(); @@ -626,7 +627,7 @@ public void drawOrbitRings(GuiGraphics graphics, double mouseX, double mouseY, f if (body.parent() != null) { systemOffset = getCelestialBodyPosition(body.parent().value(), delta); } - if (body.ring().render(body, graphics, count, systemOffset, getAlpha(body), lineScale(body), mouseX, mouseY, delta)) + if (body.ring().render(body, graphics, count, systemOffset, getAlpha(body), lineScale(body), mouseX, mouseY, delta, RenderSystem::setShader)) count++; } RenderSystem.lineWidth(1.0f); diff --git a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/CelestialSelectionScreen.java b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/CelestialSelectionScreen.java index 7b100eb565..f4f39096f6 100644 --- a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/CelestialSelectionScreen.java +++ b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/CelestialSelectionScreen.java @@ -36,13 +36,13 @@ import dev.galacticraft.impl.universe.position.config.SatelliteConfig; import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.client.util.Graphics; -import dev.galacticraft.mod.network.c2s.PlanetTeleportPayload; -import dev.galacticraft.mod.network.c2s.SatelliteCreationPayload; import dev.galacticraft.mod.util.Translations; import it.unimi.dsi.fastutil.ints.Int2ObjectMap; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; +import net.fabricmc.fabric.api.networking.v1.PacketByteBufs; +import net.minecraft.SharedConstants; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.gui.screens.Screen; import net.minecraft.client.resources.language.I18n; @@ -50,7 +50,6 @@ import net.minecraft.network.chat.contents.TranslatableContents; import net.minecraft.resources.ResourceLocation; import net.minecraft.util.FastColor; -import net.minecraft.util.StringUtil; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Ingredient; import org.jetbrains.annotations.Nullable; @@ -268,7 +267,7 @@ public boolean keyPressed(int key, int scanCode, int modifiers) { @Override public boolean charTyped(char character, int modifiers) { - if (this.renamingSpaceStation && StringUtil.isAllowedChatCharacter(character)) { + if (this.renamingSpaceStation && SharedConstants.isAllowedChatCharacter(character)) { this.renamingString = this.renamingString + character; this.renamingString = this.renamingString.substring(0, Math.min(this.renamingString.length(), MAX_SPACE_STATION_NAME_LENGTH)); return true; @@ -278,7 +277,7 @@ public boolean charTyped(char character, int modifiers) { } public boolean isValid(String string) { - return !string.isEmpty() && StringUtil.isAllowedChatCharacter(string.charAt(string.length() - 1)); + return !string.isEmpty() && SharedConstants.isAllowedChatCharacter(string.charAt(string.length() - 1)); } protected boolean canCreateSpaceStation(CelestialBody atBody) { @@ -322,7 +321,7 @@ protected void teleportToSelectedBody() { if (this.data == null || this.data.canTravel(manager, this.fromBody, this.selectedBody)) { try { assert this.minecraft != null; - ClientPlayNetworking.send(new PlanetTeleportPayload(celestialBodies.getKey(this.selectedBody))); + ClientPlayNetworking.send(Constant.Packet.PLANET_TP, PacketByteBufs.create().writeResourceLocation(celestialBodies.getKey(this.selectedBody))); this.minecraft.setScreen(new SpaceTravelScreen(isSatellite(selectedBody) ? ((Satellite) this.selectedBody.type()).getCustomName(this.selectedBody.config()).getString() : ((TranslatableContents)this.selectedBody.name().getContents()).getKey(), ((Landable) this.selectedBody.type()).world(this.selectedBody.config()))); } catch (Exception e) { e.printStackTrace(); @@ -362,7 +361,7 @@ public boolean mouseClicked(double x, double y, int button) { if (recipe.test(this.minecraft.player.getInventory()) || this.minecraft.player.getAbilities().instabuild) { // GalacticraftCore.packetPipeline.sendToServer(new PacketSimple(EnumSimplePacket.S_BIND_SPACE_STATION_ID, GCCoreUtil.getWorld(this.minecraft.level), new Object[]{this.selectedBody.getWorld()})); - ClientPlayNetworking.send(new SatelliteCreationPayload(celestialBodies.getHolderOrThrow(celestialBodies.getResourceKey(this.selectedBody).get()))); + ClientPlayNetworking.send(Constant.Packet.CREATE_SATELLITE, PacketByteBufs.create().writeResourceLocation(celestialBodies.getKey(this.selectedBody))); //Zoom in on planet to show the new SpaceStation if not already zoomed if (!this.isZoomed()) { diff --git a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/CircuitFabricatorScreen.java b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/CircuitFabricatorScreen.java index 5c96fa28b8..fec7780193 100644 --- a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/CircuitFabricatorScreen.java +++ b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/CircuitFabricatorScreen.java @@ -34,11 +34,11 @@ import net.fabricmc.api.Environment; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.network.chat.Component; +import net.minecraft.world.Container; import net.minecraft.world.entity.player.Inventory; -import net.minecraft.world.item.crafting.RecipeInput; @Environment(EnvType.CLIENT) -public class CircuitFabricatorScreen extends MachineScreen> { +public class CircuitFabricatorScreen extends MachineScreen> { private static final int PROGRESS_SIZE = 4; private static final int INITIAL_PROGRESS_U = 0; private static final int INITIAL_PROGRESS_V = 186; @@ -74,7 +74,7 @@ public class CircuitFabricatorScreen extends MachineScreen handler, Inventory inv, Component title) { + public CircuitFabricatorScreen(RecipeMachineMenu handler, Inventory inv, Component title) { super(handler, title, Constant.ScreenTexture.CIRCUIT_FABRICATOR_SCREEN); this.imageHeight = 176; diff --git a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/ElectricArcFurnaceScreen.java b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/ElectricArcFurnaceScreen.java index a62b301608..db94c27239 100644 --- a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/ElectricArcFurnaceScreen.java +++ b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/ElectricArcFurnaceScreen.java @@ -29,11 +29,11 @@ import dev.galacticraft.mod.util.DrawableUtil; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.network.chat.Component; +import net.minecraft.world.Container; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.item.crafting.BlastingRecipe; -import net.minecraft.world.item.crafting.SingleRecipeInput; -public class ElectricArcFurnaceScreen extends MachineScreen> { +public class ElectricArcFurnaceScreen extends MachineScreen> { private static final int ARROW_X = 68; private static final int ARROW_Y = 35; private static final int ARROW_U = 176; @@ -41,7 +41,7 @@ public class ElectricArcFurnaceScreen extends MachineScreen handler, Inventory inv, Component title) { + public ElectricArcFurnaceScreen(RecipeMachineMenu handler, Inventory inv, Component title) { super(handler, title, Constant.ScreenTexture.ELECTRIC_ARC_FURNACE_SCREEN); } diff --git a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/ElectricCompressorScreen.java b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/ElectricCompressorScreen.java index 3368e17073..92499e2112 100644 --- a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/ElectricCompressorScreen.java +++ b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/ElectricCompressorScreen.java @@ -34,10 +34,10 @@ import net.minecraft.client.gui.GuiGraphics; import net.minecraft.network.chat.Component; import net.minecraft.world.entity.player.Inventory; -import net.minecraft.world.item.crafting.CraftingInput; +import net.minecraft.world.inventory.CraftingContainer; @Environment(EnvType.CLIENT) -public class ElectricCompressorScreen extends MachineScreen> { +public class ElectricCompressorScreen extends MachineScreen> { private static final int PROGRESS_U = 177; private static final int PROGRESS_V = 0; private static final int PROGRESS_X = 87; @@ -45,7 +45,7 @@ public class ElectricCompressorScreen extends MachineScreen handler, Inventory inv, Component title) { + public ElectricCompressorScreen(RecipeMachineMenu handler, Inventory inv, Component title) { super(handler, title, Constant.ScreenTexture.ELECTRIC_COMPRESSOR_SCREEN); } diff --git a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/ElectricFurnaceScreen.java b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/ElectricFurnaceScreen.java index 579bef18fc..7807562564 100644 --- a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/ElectricFurnaceScreen.java +++ b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/ElectricFurnaceScreen.java @@ -29,11 +29,11 @@ import dev.galacticraft.mod.util.DrawableUtil; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.network.chat.Component; +import net.minecraft.world.Container; import net.minecraft.world.entity.player.Inventory; -import net.minecraft.world.item.crafting.SingleRecipeInput; import net.minecraft.world.item.crafting.SmeltingRecipe; -public class ElectricFurnaceScreen extends MachineScreen> { +public class ElectricFurnaceScreen extends MachineScreen> { private static final int ARROW_X = 74; private static final int ARROW_Y = 34; private static final int ARROW_U = 176; @@ -41,7 +41,7 @@ public class ElectricFurnaceScreen extends MachineScreen handler, Inventory inv, Component title) { + public ElectricFurnaceScreen(RecipeMachineMenu handler, Inventory inv, Component title) { super(handler, title, Constant.ScreenTexture.ELECTRIC_FURNACE_SCREEN); } diff --git a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/FuelLoaderScreen.java b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/FuelLoaderScreen.java index a98566d622..577a82b7f4 100644 --- a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/FuelLoaderScreen.java +++ b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/FuelLoaderScreen.java @@ -67,9 +67,9 @@ public FuelLoaderScreen(FuelLoaderMenu handler, Inventory inv, Component title) protected void renderMachineBackground(GuiGraphics graphics, int mouseX, int mouseY, float delta) { super.renderMachineBackground(graphics, mouseX, mouseY, delta); - FluidResourceSlot slot = this.menu.fluidStorage.slot(FuelLoaderBlockEntity.FUEL_TANK); + FluidResourceSlot slot = this.menu.fluidStorage.getSlot(FuelLoaderBlockEntity.FUEL_TANK); if (!slot.isEmpty()) { - GraphicsUtil.drawFluid(graphics, this.leftPos + 69, this.topPos + 8, TANK_OVERLAY_WIDTH, TANK_OVERLAY_HEIGHT, slot.getCapacity(), FluidVariant.of(slot.getResource(), slot.getComponents()), slot.getAmount()); + GraphicsUtil.drawFluid(graphics, this.leftPos + 69, this.topPos + 8, TANK_OVERLAY_WIDTH, TANK_OVERLAY_HEIGHT, slot.getCapacity(), FluidVariant.of(slot.getResource(), slot.getTag()), slot.getAmount()); graphics.blit(Constant.ScreenTexture.FUEL_LOADER_SCREEN, this.leftPos + 69, this.topPos + 8, TANK_OVERLAY_U, TANK_OVERLAY_V, TANK_OVERLAY_WIDTH, TANK_OVERLAY_HEIGHT); } @@ -89,8 +89,8 @@ public void renderTooltip(GuiGraphics graphics, int mouseX, int mouseY) { super.renderTooltip(graphics, mouseX, mouseY); List list = new ArrayList<>(); if (DrawableUtil.isWithin(mouseX, mouseY, this.leftPos + 69, this.topPos + 17, TANK_OVERLAY_WIDTH, TANK_OVERLAY_HEIGHT)) { - FluidResourceSlot slot = this.menu.fluidStorage.slot(FuelLoaderBlockEntity.FUEL_TANK); - DisplayUtil.createFluidTooltip(list, slot.getResource(), slot.getComponents(), slot.getAmount(), slot.getCapacity()); + FluidResourceSlot slot = this.menu.fluidStorage.getSlot(FuelLoaderBlockEntity.FUEL_TANK); + DisplayUtil.createFluidTooltip(list, slot.getResource(), slot.getTag(), slot.getAmount(), slot.getCapacity()); } else if (DrawableUtil.isWithin(mouseX, mouseY, this.leftPos + 145, this.topPos + 37, ROCKET_FACE_WIDTH, ROCKET_FACE_HEIGHT)) { DisplayUtil.createFluidTooltip(list, GCFluids.FUEL, null, this.menu.rocketAmount, this.menu.rocketCapacity); } diff --git a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/OxygenBubbleDistributorScreen.java b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/OxygenBubbleDistributorScreen.java index 1f54a44278..80f2a8e54f 100644 --- a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/OxygenBubbleDistributorScreen.java +++ b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/OxygenBubbleDistributorScreen.java @@ -26,8 +26,8 @@ import dev.galacticraft.machinelib.client.api.screen.MachineScreen; import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.content.block.entity.machine.OxygenBubbleDistributorBlockEntity; -import dev.galacticraft.mod.network.c2s.BubbleMaxPayload; -import dev.galacticraft.mod.network.c2s.BubbleVisibilityPayload; +import dev.galacticraft.mod.network.packets.BubbleMaxPacket; +import dev.galacticraft.mod.network.packets.ToggleBubbleVisibilityPacket; import dev.galacticraft.mod.screen.OxygenBubbleDistributorMenu; import dev.galacticraft.mod.util.DrawableUtil; import dev.galacticraft.mod.util.Translations; @@ -138,7 +138,7 @@ private boolean checkClick(double mouseX, double mouseY, int button) { if (button == 0) { if (DrawableUtil.isWithin(mouseX, mouseY, this.leftPos + 156, this.topPos + 16, Constant.TextureCoordinate.BUTTON_WIDTH, Constant.TextureCoordinate.BUTTON_HEIGHT)) { this.menu.bubbleVisible = ! this.menu.bubbleVisible; - ClientPlayNetworking.send(new BubbleVisibilityPayload(this.menu.bubbleVisible)); + ClientPlayNetworking.send(new ToggleBubbleVisibilityPacket(this.menu.bubbleVisible)); return true; } @@ -146,7 +146,7 @@ private boolean checkClick(double mouseX, double mouseY, int button) { if (this.menu.targetSize != Byte.MAX_VALUE) { this.menu.targetSize = ((byte) (this.menu.targetSize + 1)); textField.setValue(String.valueOf(this.menu.targetSize)); - ClientPlayNetworking.send(new BubbleMaxPayload(this.menu.targetSize)); + ClientPlayNetworking.send(new BubbleMaxPacket(this.menu.targetSize)); return true; } } @@ -155,7 +155,7 @@ private boolean checkClick(double mouseX, double mouseY, int button) { if (this.menu.targetSize > 1) { this.menu.targetSize = (byte) (this.menu.targetSize - 1); textField.setValue(String.valueOf(this.menu.targetSize)); - ClientPlayNetworking.send(new BubbleMaxPayload(this.menu.targetSize)); + ClientPlayNetworking.send(new BubbleMaxPacket(this.menu.targetSize)); return true; } } diff --git a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/OxygenStorageModuleScreen.java b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/OxygenStorageModuleScreen.java index 78b44f8c8f..db34d79ce7 100644 --- a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/OxygenStorageModuleScreen.java +++ b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/OxygenStorageModuleScreen.java @@ -46,12 +46,12 @@ protected void renderMachineBackground(GuiGraphics graphics, int mouseX, int mou super.renderMachineBackground(graphics, mouseX, mouseY, delta); this.drawOxygenBufferBar(graphics); - graphics.drawCenteredString(font, Component.translatable(Translations.Ui.CURRENT_OXYGEN, this.menu.fluidStorage.slot(OxygenStorageModuleBlockEntity.OXYGEN_TANK).getAmount()), width / 2, topPos + 33, ChatFormatting.DARK_GRAY.getColor()); - graphics.drawCenteredString(font, Component.translatable(Translations.Ui.MAX_OXYGEN, this.menu.fluidStorage.slot(OxygenStorageModuleBlockEntity.OXYGEN_TANK).getCapacity()), width / 2, topPos + 45, ChatFormatting.DARK_GRAY.getColor()); + graphics.drawCenteredString(font, Component.translatable(Translations.Ui.CURRENT_OXYGEN, this.menu.fluidStorage.getSlot(OxygenStorageModuleBlockEntity.OXYGEN_TANK).getAmount()), width / 2, topPos + 33, ChatFormatting.DARK_GRAY.getColor()); + graphics.drawCenteredString(font, Component.translatable(Translations.Ui.MAX_OXYGEN, this.menu.fluidStorage.getSlot(OxygenStorageModuleBlockEntity.OXYGEN_TANK).getCapacity()), width / 2, topPos + 45, ChatFormatting.DARK_GRAY.getColor()); } private void drawOxygenBufferBar(GuiGraphics graphics) { - FluidResourceSlot slot = this.menu.fluidStorage.slot(OxygenStorageModuleBlockEntity.OXYGEN_TANK); + FluidResourceSlot slot = this.menu.fluidStorage.getSlot(OxygenStorageModuleBlockEntity.OXYGEN_TANK); double oxygenScale = (double)slot.getAmount() / (double)slot.getCapacity(); graphics.blit(Constant.ScreenTexture.OXYGEN_STORAGE_MODULE_SCREEN, this.leftPos + 52, this.topPos + 57, 176, 0, (int) (72.0D * oxygenScale), 3); diff --git a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/RocketWorkbenchScreen.java b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/RocketWorkbenchScreen.java index eedbc298dc..328cc5f138 100644 --- a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/RocketWorkbenchScreen.java +++ b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/RocketWorkbenchScreen.java @@ -30,13 +30,13 @@ import dev.galacticraft.api.rocket.part.RocketPart; import dev.galacticraft.api.rocket.part.RocketPartTypes; import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.client.util.Graphics; +import dev.galacticraft.mod.client.util.BatchedRenderer; import dev.galacticraft.mod.content.GCEntityTypes; import dev.galacticraft.mod.content.GCRocketParts; import dev.galacticraft.mod.content.block.entity.RocketWorkbenchBlockEntity; import dev.galacticraft.mod.content.entity.orbital.RocketEntity; import dev.galacticraft.mod.machine.storage.VariableSizedContainer; -import dev.galacticraft.mod.network.c2s.SelectPartPayload; +import dev.galacticraft.mod.network.packets.SelectPartPacket; import dev.galacticraft.mod.screen.RocketWorkbenchMenu; import dev.galacticraft.mod.util.Translations; import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; @@ -170,37 +170,40 @@ protected void containerTick() { this.menu.upgradeRecipes.calculateCraftable(contents); } - this.entity.setData(this.menu.createData()); + this.entity.setCone(this.menu.cone.selection != null ? this.menu.cone.selection : null); + this.entity.setBody(this.menu.body.selection != null ? this.menu.body.selection : null); + this.entity.setFin(this.menu.fins.selection != null ? this.menu.fins.selection : null); + this.entity.setBooster(this.menu.booster.selection != null ? this.menu.booster.selection : null); + this.entity.setEngine(this.menu.engine.selection != null ? this.menu.engine.selection : null); + this.entity.setUpgrade(this.menu.upgrade.selection != null ? this.menu.upgrade.selection : null); this.entity.setXRot(0.0f); this.entity.setYRot(90.0f - 20.0f); } @Override - protected void renderBg(GuiGraphics guiGraphics, float delta, int mouseX, int mouseY) { + protected void renderBg(GuiGraphics graphics, float delta, int mouseX, int mouseY) { this.inventoryLabelY = this.imageHeight - 96 + this.menu.additionalHeight; - drawSelection(guiGraphics, mouseX, mouseY, delta); + drawSelection(graphics, mouseX, mouseY, delta); - try (Graphics graphics = Graphics.managed(guiGraphics, this.font)) { - try (Graphics.Texture texture = graphics.texture(Constant.ScreenTexture.ROCKET_WORKBENCH_SCREEN, 512, 512)) { - texture.blit(this.leftPos, this.topPos + this.menu.additionalHeight + CAP_HEIGHT, 0, 0, BASE_UI_WIDTH, BASE_UI_HEIGHT); + try (BatchedRenderer render = new BatchedRenderer(graphics, Constant.ScreenTexture.ROCKET_WORKBENCH_SCREEN, 512, 256)) { + render.blit(this.leftPos, this.topPos + this.menu.additionalHeight + CAP_HEIGHT, 0, 0, BASE_UI_WIDTH, BASE_UI_HEIGHT); - if (this.menu.additionalHeight > 0) { - texture.blit(this.leftPos, this.topPos + CAP_HEIGHT, HEIGHT_EXT_U, 0, MAIN_UI_WIDTH, this.menu.additionalHeight); - } + if (this.menu.additionalHeight > 0) { + render.blit(this.leftPos, this.topPos + CAP_HEIGHT, HEIGHT_EXT_U, 0, MAIN_UI_WIDTH, this.menu.additionalHeight); + } - texture.blit(this.leftPos, this.topPos, 0, BASE_UI_HEIGHT, BASE_UI_WIDTH, CAP_HEIGHT); + render.blit(this.leftPos, this.topPos, 0, BASE_UI_HEIGHT, BASE_UI_WIDTH, CAP_HEIGHT); - for (Slot slot : this.menu.slots) { - if (slot.container instanceof VariableSizedContainer) { - texture.blit(this.leftPos + slot.x - 1, this.topPos + slot.y - 1, NORMAL_SLOT_U, NORMAL_SLOT_V, NORMAL_SLOT_SIZE, NORMAL_SLOT_SIZE); - } + for (Slot slot : this.menu.slots) { + if (slot.container instanceof VariableSizedContainer) { + render.blit(this.leftPos + slot.x - 1, this.topPos + slot.y - 1, NORMAL_SLOT_U, NORMAL_SLOT_V, NORMAL_SLOT_SIZE, NORMAL_SLOT_SIZE); } } } - renderEntityInInventory(guiGraphics, this.leftPos + ROCKET_PREVIEW_X, this.topPos + ROCKET_PREVIEW_Y, 15, SmithingScreen.ARMOR_STAND_ANGLE, null, this.entity); + renderEntityInInventory(graphics, this.leftPos + ROCKET_PREVIEW_X, this.topPos + ROCKET_PREVIEW_Y, 15, SmithingScreen.ARMOR_STAND_ANGLE, null, this.entity); } @Override @@ -242,7 +245,7 @@ public boolean clickSelection(double mouseX, double mouseY, int button) { if (button == GLFW.GLFW_MOUSE_BUTTON_1) { Holder.Reference> ref = this.recipes.get(i); this.getSelection().setSelection(ref != null ? ref.key().location() : null); - ClientPlayNetworking.send(new SelectPartPayload(this.openTab.type, ref != null ? ref.key().location() : null)); + ClientPlayNetworking.send(new SelectPartPacket(this.openTab.type, ref != null ? ref.key() : null)); return true; } else if (button == GLFW.GLFW_MOUSE_BUTTON_2) { //todo @@ -276,54 +279,52 @@ private void setOpenTab(Tab openTab) { } } - private void drawSelection(GuiGraphics guiGraphics, int mouseX, int mouseY, float delta) { - PoseStack pose = guiGraphics.pose(); + private void drawSelection(GuiGraphics graphics, int mouseX, int mouseY, float delta) { + PoseStack pose = graphics.pose(); pose.pushPose(); pose.translate(this.leftPos - SELECTION_SCREEN_WIDTH - SCREEN_SPACING, this.topPos, 0); mouseX -= this.leftPos - SELECTION_SCREEN_WIDTH - SCREEN_SPACING; mouseY -= this.topPos; int size = this.recipes != null ? this.recipes.size() : 0; - try (Graphics graphics = Graphics.managed(guiGraphics, this.font)) { - try (Graphics.Texture texture = graphics.texture(Constant.ScreenTexture.ROCKET_WORKBENCH_SCREEN, 512, 512)) { - texture.blit(0, 0, 0, 0, SELECTION_SCREEN_WIDTH, SELECTION_SCREEN_HEIGHT); - - { - int y = 4; - for (Tab tab : Tab.values()) { - if (tab == Tab.COLOR) continue; - if (tab == this.openTab) { - texture.blit(-(TAB_SELECTED_WIDTH - 3), y, TAB_SELECTED_U, TAB_SELECTED_V, TAB_SELECTED_WIDTH, TAB_HEIGHT); - } else { - texture.blit(-TAB_WIDTH, y, TAB_U, TAB_V, TAB_WIDTH, TAB_HEIGHT); - } - y += TAB_SPACING + TAB_HEIGHT; + try (BatchedRenderer render = new BatchedRenderer(graphics, Constant.ScreenTexture.ROCKET_SELECTION, 256, 256)) { + render.blit(0, 0, 0, 0, SELECTION_SCREEN_WIDTH, SELECTION_SCREEN_HEIGHT); + + { + int y = 4; + for (Tab tab : Tab.values()) { + if (tab == Tab.COLOR) continue; + if (tab == this.openTab) { + render.blit(-(TAB_SELECTED_WIDTH - 3), y, TAB_SELECTED_U, TAB_SELECTED_V, TAB_SELECTED_WIDTH, TAB_HEIGHT); + } else { + render.blit(-TAB_WIDTH, y, TAB_U, TAB_V, TAB_WIDTH, TAB_HEIGHT); } + y += TAB_SPACING + TAB_HEIGHT; } + } - if (this.openTab != Tab.COLOR) { - assert this.recipes != null; - final int pages = Math.floorDiv(size, RECIPES_PER_PAGE) + size % RECIPES_PER_PAGE == 0 ? 0 : 1; + if (this.openTab != Tab.COLOR) { + assert this.recipes != null; + final int pages = Math.floorDiv(size, RECIPES_PER_PAGE) + size % RECIPES_PER_PAGE == 0 ? 0 : 1; - if (this.page >= pages) { - this.page = 0; - } - int i = this.page * 5 * 7; - for (int y = 0; y < 7 && i < size; y++) { - for (int x = 0; x < 5 && i < size; x++) { - Holder.Reference> part = this.recipes.get(i); - int uOffset = isCraftable(part) ? RECIPE_CRAFTABLE_U : RECIPE_UNCRAFTABLE_U; - int vOffset = Objects.equals(this.getSelection().selection, part == null ? null : part.key().location()) ? RECIPE_SELECTED_V : RECIPE_V; - texture.blit(11 + x * RECIPE_WIDTH, 29 + y * RECIPE_HEIGHT, uOffset, vOffset, RECIPE_WIDTH, RECIPE_HEIGHT); - if (part != null && mouseIn(mouseX, mouseY, 11 + x * RECIPE_WIDTH, 29 + y * RECIPE_HEIGHT, RECIPE_WIDTH, RECIPE_HEIGHT)) { - setTooltipForNextRenderPass(RocketPart.getName(part.key())); - } - i++; + if (this.page >= pages) { + this.page = 0; + } + int i = this.page * 5 * 7; + for (int y = 0; y < 7 && i < size; y++) { + for (int x = 0; x < 5 && i < size; x++) { + Holder.Reference> part = this.recipes.get(i); + int uOffset = isCraftable(part) ? RECIPE_CRAFTABLE_U : RECIPE_UNCRAFTABLE_U; + int vOffset = Objects.equals(this.getSelection().selection, part == null ? null : part.key().location()) ? RECIPE_SELECTED_V : RECIPE_V; + render.blit(11 + x * RECIPE_WIDTH, 29 + y * RECIPE_HEIGHT, uOffset, vOffset, RECIPE_WIDTH, RECIPE_HEIGHT); + if (part != null && mouseIn(mouseX, mouseY, 11 + x * RECIPE_WIDTH, 29 + y * RECIPE_HEIGHT, RECIPE_WIDTH, RECIPE_HEIGHT)) { + setTooltipForNextRenderPass(RocketPart.getName(part.key())); } + i++; } - } else { - //todo color } + } else { + //todo color } } @@ -334,7 +335,7 @@ private void drawSelection(GuiGraphics guiGraphics, int mouseX, int mouseY, floa continue; // graphics.renderFakeItem(new ItemStack(Items.RED_DYE), -TAB_WIDTH + TAB_ICON_OFFSET, y); } else { - RocketPartRendererRegistry.INSTANCE.getRenderer(tab.part).renderGUI(guiGraphics, -TAB_WIDTH + TAB_ICON_OFFSET, y, mouseX, mouseY, delta); + RocketPartRendererRegistry.INSTANCE.getRenderer(tab.part).renderGUI(graphics, -TAB_WIDTH + TAB_ICON_OFFSET, y, mouseX, mouseY, delta); } y += TAB_SPACING + TAB_HEIGHT; } @@ -348,7 +349,7 @@ private void drawSelection(GuiGraphics guiGraphics, int mouseX, int mouseY, floa Holder.Reference> recipe = this.recipes.get(i); if (recipe != null) { RocketPartRenderer renderer = RocketPartRendererRegistry.INSTANCE.getRenderer(recipe.key()); - renderer.renderGUI(guiGraphics, 15 + x * RECIPE_WIDTH, 33 + y * RECIPE_HEIGHT, mouseX, mouseY, delta); + renderer.renderGUI(graphics, 15 + x * RECIPE_WIDTH, 33 + y * RECIPE_HEIGHT, mouseX, mouseY, delta); } i++; } @@ -356,7 +357,7 @@ private void drawSelection(GuiGraphics guiGraphics, int mouseX, int mouseY, floa } else { } - guiGraphics.drawString(this.font, this.openTab.name, 12, 14, 0xEEEEEE, true); + graphics.drawString(this.font, this.openTab.name, 12, 14, 0xEEEEEE, true); pose.popPose(); } @@ -365,7 +366,7 @@ public static void renderEntityInInventory( ) { guiGraphics.pose().pushPose(); guiGraphics.pose().translate(x, y, 50.0); - guiGraphics.pose().mulPose(new Matrix4f().scaling((float)scale, (float)scale, (float)(-scale))); + guiGraphics.pose().mulPoseMatrix(new Matrix4f().scaling((float)scale, (float)scale, (float)(-scale))); guiGraphics.pose().mulPose(pose); Lighting.setupForEntityInInventory(); EntityRenderDispatcher entityRenderDispatcher = Minecraft.getInstance().getEntityRenderDispatcher(); diff --git a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/SolarPanelScreen.java b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/SolarPanelScreen.java index d50b4b17d2..b1b7d56429 100644 --- a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/SolarPanelScreen.java +++ b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/SolarPanelScreen.java @@ -25,7 +25,6 @@ import com.mojang.blaze3d.systems.RenderSystem; import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; import dev.galacticraft.machinelib.client.api.screen.MachineScreen; -import dev.galacticraft.machinelib.client.api.util.GraphicsUtil; import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.api.block.entity.SolarPanel; import dev.galacticraft.mod.api.solarpanel.LightSource; @@ -42,7 +41,7 @@ import java.util.LinkedList; import java.util.List; -public class SolarPanelScreen> extends MachineScreen { +public class SolarPanelScreen> extends MachineScreen { private static final int DAY_SOURCE_U = 0; private static final int DAY_SOURCE_V = 0; private static final int OVERCAST_SOURCE_U = 32; @@ -78,9 +77,9 @@ public class SolarPanelScreen paths) { this.minecraft.getTextureManager().register(location, texture); this.minecraft.setScreen(new ConfirmFlagScreen(yes -> { if (yes) { - ByteBuf buf = ByteBufAllocator.DEFAULT.buffer(48 * 32 * 3, 48 * 32 * 3); + int[] array = new int[48 * 32]; for (int y = 0; y < 32; y++) { for (int x = 0; x < 48; x++) { - int color = finalImage.getPixelRGBA(x, y); - //ignore alpha channel - buf.writeByte((color >> 16) & 0xFF) - .writeByte((color >> 8) & 0xFF) - .writeByte(color & 0xFF); + array[y * 48 + x] = (finalImage.getPixelRGBA(x, y) /*& 0x00FFFFFF will be done on server (don't trust clients, so why do extra work?)*/); //ignore alpha channel } } - ClientPlayNetworking.send(new FlagDataPayload(buf.array())); + ClientPlayNetworking.send(Constant.id("flag_data"), PacketByteBufs.create().writeVarIntArray(array)); this.minecraft.getTextureManager().register(this.teamFlag, texture); } else { finalImage.close(); diff --git a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/SpaceTravelScreen.java b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/SpaceTravelScreen.java index d25157eb2c..75d7501d09 100644 --- a/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/SpaceTravelScreen.java +++ b/src/main/java/dev/galacticraft/mod/client/gui/screen/ingame/SpaceTravelScreen.java @@ -23,7 +23,10 @@ package dev.galacticraft.mod.client.gui.screen.ingame; import com.mojang.blaze3d.systems.RenderSystem; -import com.mojang.blaze3d.vertex.*; +import com.mojang.blaze3d.vertex.BufferBuilder; +import com.mojang.blaze3d.vertex.DefaultVertexFormat; +import com.mojang.blaze3d.vertex.Tesselator; +import com.mojang.blaze3d.vertex.VertexFormat; import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.util.Translations; import net.minecraft.client.GameNarrator; @@ -63,16 +66,17 @@ public boolean shouldCloseOnEsc() { @Override public void render(GuiGraphics graphics, int mouseX, int mouseY, float delta) { - RenderSystem.setShader(GameRenderer::getPositionTexColorShader); + Tesselator tessellator = Tesselator.getInstance(); + BufferBuilder bufferBuilder = tessellator.getBuilder(); + RenderSystem.setShader(GameRenderer::getPositionColorTexShader); this.minecraft.getTextureManager().bindForSetup(TEXTURE); RenderSystem.setShaderTexture(0, TEXTURE); - BufferBuilder buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX_COLOR); - buffer.addVertex(0.0F, this.height, 0.0F).setUv(0.0F, (float)this.height / 32.0F).setColor(200, 200, 200, 255) - .addVertex(this.width, this.height, 0.0F).setUv((float)this.width / 32.0F, (float)this.height / 32.0F).setColor(200, 200, 200, 255) - .addVertex(this.width, 0.0F, 0.0F).setUv((float)this.width / 32.0F, 0.0F).setColor(200, 200, 200, 255) - .addVertex(0.0F, 0.0F, 0.0F).setUv(0.0F, 0.0F).setColor(200, 200, 200, 255); - BufferUploader.drawWithShader(buffer.buildOrThrow()); - + bufferBuilder.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_COLOR_TEX); + bufferBuilder.vertex(0.0D, this.height, 0.0D).color(200, 200, 200, 255).uv(0.0F, (float)this.height / 32.0F).endVertex(); + bufferBuilder.vertex(this.width, this.height, 0.0D).color(200, 200, 200, 255).uv((float)this.width / 32.0F, (float)this.height / 32.0F).endVertex(); + bufferBuilder.vertex(this.width, 0.0D, 0.0D).color(200, 200, 200, 255).uv((float)this.width / 32.0F, 0.0F).endVertex(); + bufferBuilder.vertex(0.0D, 0.0D, 0.0D).color(200, 200, 200, 255).uv(0.0F, 0.0F).endVertex(); + tessellator.end(); if (minecraft.level.random.nextInt(30) == 1) { if (dots.equals("...")) { dots = "."; diff --git a/src/main/java/dev/galacticraft/mod/client/model/BakedObjModel.java b/src/main/java/dev/galacticraft/mod/client/model/BakedObjModel.java index 9f15b55cae..b0f5117d40 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/BakedObjModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/BakedObjModel.java @@ -27,6 +27,7 @@ import de.javagl.obj.*; import dev.galacticraft.mod.client.model.types.ObjModel; import org.jetbrains.annotations.Nullable; +import org.joml.Matrix4f; import java.util.List; @@ -43,37 +44,38 @@ public BakedObjModel(Obj obj, List materials) { } @Override - public void render(PoseStack modelStack, @Nullable GCModelState state, VertexConsumer consumer, int light, int overlay, int color) { + public void render(PoseStack modelStack, @Nullable GCModelState state, VertexConsumer consumer, int light, int overlay) { ObjModel.BakedMaterial lastMaterial = null; if (state == null) { for (int index = 0; index < obj.getNumFaces(); index++) { ObjFace face = obj.getFace(index); - lastMaterial = renderFace(lastMaterial, face, consumer, modelStack, light, overlay, color); + lastMaterial = renderFace(lastMaterial, face, consumer, modelStack, light, overlay); } } else { ObjGroup group = obj.getGroup(state.getName()); for (int index = 0; index < group.getNumFaces(); index++) { ObjFace face = group.getFace(index); - lastMaterial = renderFace(lastMaterial, face, consumer, modelStack, light, overlay, color); + lastMaterial = renderFace(lastMaterial, face, consumer, modelStack, light, overlay); } } } - protected ObjModel.BakedMaterial renderFace(ObjModel.BakedMaterial lastMaterial, ObjFace face, VertexConsumer consumer, PoseStack matrices, int light, int overlay, int color) { + protected ObjModel.BakedMaterial renderFace(ObjModel.BakedMaterial lastMaterial, ObjFace face, VertexConsumer consumer, PoseStack matrices, int light, int overlay) { ObjModel.BakedMaterial material = findMaterial(this.obj.getActivatedMaterialGroupName(face), lastMaterial); consumer = (material != null ? material.sprite() : GCModelLoader.INSTANCE.getDefaultSprite()).wrap(consumer); PoseStack.Pose last = matrices.last(); for (int vtx = 0; vtx < face.getNumVertices(); vtx++) { FloatTuple pos = obj.getVertex(face.getVertexIndex(vtx)); - consumer.addVertex(last.pose(), pos.getX(), pos.getY(), pos.getZ()); - consumer.setColor(color); + consumer.vertex(last.pose(), pos.getX(), pos.getY(), pos.getZ()); + consumer.color(255, 255, 255, 255); FloatTuple uv = obj.getTexCoord(face.getTexCoordIndex(vtx)); - consumer.setUv(uv.getX(), 1 - uv.getY()); + consumer.uv(uv.getX(), 1 - uv.getY()); - consumer.setOverlay(overlay); - consumer.setLight(light); + consumer.overlayCoords(overlay); + consumer.uv2(light); FloatTuple normals = obj.getNormal(face.getNormalIndex(vtx)); - consumer.setNormal(last, normals.getX(), normals.getY(), normals.getZ()); + consumer.normal(last.normal(), normals.getX(), normals.getY(), normals.getZ()); + consumer.endVertex(); } return material; diff --git a/src/main/java/dev/galacticraft/mod/client/model/FluidPipeWalkwayBakedModel.java b/src/main/java/dev/galacticraft/mod/client/model/FluidPipeWalkwayBakedModel.java index f9378132dd..af08e49435 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/FluidPipeWalkwayBakedModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/FluidPipeWalkwayBakedModel.java @@ -81,46 +81,46 @@ protected FluidPipeWalkwayBakedModel(ModelBaker loader, Function getDependencies() { public void resolveParents(Function function) { } - @Nullable @Override - public BakedModel bake(ModelBaker baker, Function textureGetter, ModelState state) { - return FluidPipeWalkwayBakedModel.getInstance(baker, textureGetter, state); + public BakedModel bake(ModelBaker loader, Function spriteFunction, ModelState rotationContainer, ResourceLocation modelId) { + return FluidPipeWalkwayBakedModel.getInstance(loader, spriteFunction, rotationContainer); } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/client/model/GCBakedModel.java b/src/main/java/dev/galacticraft/mod/client/model/GCBakedModel.java index 6e5683ac54..d672553c70 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/GCBakedModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/GCBakedModel.java @@ -24,12 +24,9 @@ import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; +import net.minecraft.client.renderer.MultiBufferSource; import org.jetbrains.annotations.Nullable; public interface GCBakedModel extends AutoCloseable { - default void render(PoseStack modelStack, @Nullable GCModelState state, VertexConsumer consumer, int light, int overlay) { - this.render(modelStack, state, consumer, light, overlay, 0xFFFFFFFF); - } - - void render(PoseStack modelStack, @Nullable GCModelState state, VertexConsumer consumer, int light, int overlay, int color); + void render(PoseStack modelStack, @Nullable GCModelState state, VertexConsumer consumer, int light, int overlay); } diff --git a/src/main/java/dev/galacticraft/mod/client/model/GCMissingModel.java b/src/main/java/dev/galacticraft/mod/client/model/GCMissingModel.java index 05bb5347f7..cad7db410d 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/GCMissingModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/GCMissingModel.java @@ -24,16 +24,16 @@ import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; -import org.jetbrains.annotations.Nullable; public class GCMissingModel implements GCBakedModel { + @Override - public void render(PoseStack modelStack, @Nullable GCModelState state, VertexConsumer consumer, int light, int overlay, int color) { + public void render(PoseStack modelStack, GCModelState state, VertexConsumer vertexConsumer, int light, int overlay) { } @Override - public void close() { + public void close() throws Exception { } } diff --git a/src/main/java/dev/galacticraft/mod/client/model/GCModel.java b/src/main/java/dev/galacticraft/mod/client/model/GCModel.java index 2cdf1e041b..2a1cb6f8fd 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/GCModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/GCModel.java @@ -22,7 +22,7 @@ package dev.galacticraft.mod.client.model; -import com.mojang.serialization.MapCodec; +import com.mojang.serialization.Codec; import net.minecraft.client.renderer.texture.TextureAtlasSprite; import net.minecraft.client.resources.model.Material; import net.minecraft.resources.ResourceLocation; @@ -39,7 +39,7 @@ public interface GCModel { GCBakedModel bake(ResourceManager resourceManager, Function spriteGetter); interface GCModelType { - MapCodec codec(); + Codec codec(); ResourceLocation getId(); } diff --git a/src/main/java/dev/galacticraft/mod/client/model/GCModelLoader.java b/src/main/java/dev/galacticraft/mod/client/model/GCModelLoader.java index 2820ad6289..c7457fb947 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/GCModelLoader.java +++ b/src/main/java/dev/galacticraft/mod/client/model/GCModelLoader.java @@ -35,7 +35,6 @@ import com.mojang.serialization.JsonOps; import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.client.event.RocketAtlasCallback; -import dev.galacticraft.mod.client.render.rocket.GalacticraftRocketPartRenderers; import dev.galacticraft.mod.client.resources.RocketTextureManager; import net.fabricmc.fabric.api.client.model.loading.v1.ModelLoadingPlugin; import net.fabricmc.fabric.api.resource.IdentifiableResourceReloadListener; @@ -112,17 +111,6 @@ public void onInitializeModelLoader(Context pluginContext) { } return null; }); - - pluginContext.addModels( - GalacticraftRocketPartRenderers.DEFAULT_CONE, - GalacticraftRocketPartRenderers.SLOPED_CONE, - GalacticraftRocketPartRenderers.ADVANCED_CONE, - GalacticraftRocketPartRenderers.DEFAULT_BODY, - GalacticraftRocketPartRenderers.DEFAULT_ENGINE, - GalacticraftRocketPartRenderers.DEFAULT_FIN, - GalacticraftRocketPartRenderers.BOOSTER_TIER_1, - GalacticraftRocketPartRenderers.BOOSTER_TIER_2 - ); } public static void registerModelType(GCModel.GCModelType type) { @@ -138,7 +126,7 @@ public ResourceLocation getFabricId() { public CompletableFuture reload(PreparationBarrier synchronizer, ResourceManager resourceManager, ProfilerFiller preparationsProfiler, ProfilerFiller reloadProfiler, Executor backgroundExecutor, Executor gameExecutor) { preparationsProfiler.startTick(); Map atlasMap = new HashMap<>(); - atlasMap.put(GCRenderTypes.OBJ_ATLAS, Constant.id("obj")); + atlasMap.put(GCSheets.OBJ_ATLAS, Constant.id("obj")); TextureManager textureManager = Minecraft.getInstance().getTextureManager(); RocketAtlasCallback.EVENT.invoker().collectAtlases(atlasMap, textureManager); this.atlases = new AtlasSet(atlasMap, textureManager); @@ -230,12 +218,14 @@ private static CompletableFuture> loadModels(Reso DataResult model = MODEL_CODEC.parse(JsonOps.INSTANCE, GsonHelper.convertToJsonObject(GsonHelper.fromJson(GSON, reader, JsonElement.class), "top element")); if (model.error().isPresent()) return null; - modelPair = Pair.of(entry.getKey(), model.getOrThrow(error -> new RuntimeException(String.format("Failed to load model: %s, %s", modelId, error)))); + modelPair = Pair.of(entry.getKey(), model.getOrThrow(false, error -> Constant.LOGGER.error("Failed to load model: {}, {}", modelId, error))); } catch (Throwable error) { - try { - reader.close(); - } catch (Throwable nestedError) { - error.addSuppressed(nestedError); + if (reader != null) { + try { + reader.close(); + } catch (Throwable nestedError) { + error.addSuppressed(nestedError); + } } throw error; @@ -277,7 +267,7 @@ public AtlasSet getAtlases() { } public TextureAtlasSprite getDefaultSprite() { - return this.atlases.getAtlas(GCRenderTypes.OBJ_ATLAS).getSprite(WHITE_SPRITE); + return this.atlases.getAtlas(GCSheets.OBJ_ATLAS).getSprite(WHITE_SPRITE); } public record ReloadState( diff --git a/src/main/java/dev/galacticraft/mod/client/model/GCRenderTypes.java b/src/main/java/dev/galacticraft/mod/client/model/GCRenderTypes.java deleted file mode 100644 index 312c593b73..0000000000 --- a/src/main/java/dev/galacticraft/mod/client/model/GCRenderTypes.java +++ /dev/null @@ -1,101 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.client.model; - -import com.mojang.blaze3d.vertex.DefaultVertexFormat; -import com.mojang.blaze3d.vertex.VertexFormat; -import dev.galacticraft.mod.Constant; -import net.fabricmc.fabric.api.client.rendering.v1.CoreShaderRegistrationCallback; -import net.minecraft.Util; -import net.minecraft.client.renderer.RenderStateShard; -import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.ShaderInstance; -import net.minecraft.resources.ResourceLocation; -import org.jetbrains.annotations.Nullable; - -import java.util.function.BiFunction; - -public class GCRenderTypes { - public static final ResourceLocation OBJ_ATLAS = Constant.id("textures/atlas/obj.png"); - - @Nullable - private static ShaderInstance rendertypeBubbleShader; - - public static final RenderStateShard.ShaderStateShard BUBBLE_SHADER = new RenderStateShard.ShaderStateShard( - GCRenderTypes::getRendertypeBubbleShader - ); - - @Nullable - public static ShaderInstance getRendertypeBubbleShader() { - return rendertypeBubbleShader; - } - - public static final BiFunction OBJ = Util.memoize( - (texture, composite) -> { - return RenderType.create("rocket", DefaultVertexFormat.NEW_ENTITY, VertexFormat.Mode.TRIANGLES, RenderType.TRANSIENT_BUFFER_SIZE, true, false, RenderType.CompositeState.builder() - .setShaderState(RenderType.RENDERTYPE_ENTITY_CUTOUT_SHADER) - .setTextureState(new RenderStateShard.TextureStateShard(texture, false, false)) - .setTransparencyState(RenderType.NO_TRANSPARENCY) - .setCullState(RenderType.NO_CULL) - .setLightmapState(RenderType.LIGHTMAP) - .setOverlayState(RenderType.OVERLAY) - .createCompositeState(true)); - } - ); - - private static final BiFunction BUBBLE = Util.memoize( - ((texture, composite) -> { - RenderType.CompositeState compositeState = RenderType.CompositeState.builder() - .setShaderState(BUBBLE_SHADER) - .setTextureState(new RenderStateShard.TextureStateShard(texture, false, false)) - .setTransparencyState(RenderType.TRANSLUCENT_TRANSPARENCY) - .setCullState(RenderType.NO_CULL) - .setWriteMaskState(RenderType.COLOR_WRITE) - .setOverlayState(RenderType.OVERLAY) - .createCompositeState(composite); - return RenderType.create("entity_bubble", DefaultVertexFormat.NEW_ENTITY, VertexFormat.Mode.TRIANGLES, RenderType.TRANSIENT_BUFFER_SIZE, true, true, compositeState); - }) - ); - - public static RenderType obj(ResourceLocation texture) { - return obj(texture, true); - } - - public static RenderType obj(ResourceLocation texture, boolean outline) { - return OBJ.apply(texture, outline); - } - - public static RenderType bubble(ResourceLocation texture, boolean outline) { - return BUBBLE.apply(texture, outline); - } - - public static RenderType bubble(ResourceLocation texture) { - return bubble(texture, true); - } - - public static void init() { - CoreShaderRegistrationCallback.EVENT.register(context -> { - context.register(Constant.id("rendertype_bubble"), DefaultVertexFormat.NEW_ENTITY, shader -> rendertypeBubbleShader = shader); - }); - } -} diff --git a/src/main/java/dev/galacticraft/mod/client/model/GCSheets.java b/src/main/java/dev/galacticraft/mod/client/model/GCSheets.java new file mode 100644 index 0000000000..d0924d155e --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/client/model/GCSheets.java @@ -0,0 +1,80 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.client.model; + +import com.mojang.blaze3d.vertex.DefaultVertexFormat; +import com.mojang.blaze3d.vertex.VertexFormat; +import dev.galacticraft.mod.Constant; +import net.minecraft.Util; +import net.minecraft.client.renderer.RenderStateShard; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.resources.ResourceLocation; + +import java.util.function.BiFunction; + +public class GCSheets { + public static final ResourceLocation OBJ_ATLAS = Constant.id("textures/atlas/obj.png"); + + public static final BiFunction OBJ = Util.memoize( + (texture, composite) -> { + return RenderType.create("rocket", DefaultVertexFormat.NEW_ENTITY, VertexFormat.Mode.TRIANGLES, RenderType.TRANSIENT_BUFFER_SIZE, true, false, RenderType.CompositeState.builder() + .setShaderState(RenderType.RENDERTYPE_ENTITY_CUTOUT_SHADER) + .setTextureState(new RenderStateShard.TextureStateShard(texture, false, false)) + .setTransparencyState(RenderType.NO_TRANSPARENCY) + .setCullState(RenderType.NO_CULL) + .setLightmapState(RenderType.LIGHTMAP) + .setOverlayState(RenderType.OVERLAY) + .createCompositeState(true)); + } + ); + + private static final BiFunction ENTITY_TRANSLUCENT_EMISSIVE = Util.memoize( + ((texture, composite) -> { + RenderType.CompositeState compositeState = RenderType.CompositeState.builder() + .setShaderState(RenderType.RENDERTYPE_ENTITY_TRANSLUCENT_EMISSIVE_SHADER) + .setTextureState(new RenderStateShard.TextureStateShard(texture, false, false)) + .setTransparencyState(RenderType.TRANSLUCENT_TRANSPARENCY) + .setCullState(RenderType.NO_CULL) + .setWriteMaskState(RenderType.COLOR_WRITE) + .setOverlayState(RenderType.OVERLAY) + .createCompositeState(composite); + return RenderType.create("entity_translucent_emissive", DefaultVertexFormat.NEW_ENTITY, VertexFormat.Mode.TRIANGLES, RenderType.TRANSIENT_BUFFER_SIZE, true, true, compositeState); + }) + ); + + public static RenderType obj(ResourceLocation texture) { + return obj(texture, true); + } + + public static RenderType obj(ResourceLocation texture, boolean outline) { + return OBJ.apply(texture, outline); + } + + public static RenderType entityTranslucentEmissive(ResourceLocation texture, boolean outline) { + return ENTITY_TRANSLUCENT_EMISSIVE.apply(texture, outline); + } + + public static RenderType entityTranslucentEmissive(ResourceLocation texture) { + return entityTranslucentEmissive(texture, true); + } +} diff --git a/src/main/java/dev/galacticraft/mod/client/model/OxygenSealerSpriteProvider.java b/src/main/java/dev/galacticraft/mod/client/model/OxygenSealerSpriteProvider.java index 40bff379dc..df7b4fdf9c 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/OxygenSealerSpriteProvider.java +++ b/src/main/java/dev/galacticraft/mod/client/model/OxygenSealerSpriteProvider.java @@ -23,16 +23,15 @@ package dev.galacticraft.mod.client.model; import com.google.gson.JsonObject; -import dev.galacticraft.machinelib.api.machine.MachineRenderData; import dev.galacticraft.machinelib.api.util.BlockFace; import dev.galacticraft.machinelib.client.api.model.MachineModelRegistry; +import dev.galacticraft.machinelib.client.api.render.MachineRenderData; import dev.galacticraft.machinelib.client.impl.model.MachineBakedModel; import net.minecraft.client.renderer.texture.TextureAtlas; import net.minecraft.client.renderer.texture.TextureAtlasSprite; import net.minecraft.resources.ResourceLocation; import net.minecraft.util.GsonHelper; import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; import java.util.function.Function; @@ -42,13 +41,13 @@ public class OxygenSealerSpriteProvider implements MachineModelRegistry.SpritePr private final TextureAtlasSprite machine; public OxygenSealerSpriteProvider(JsonObject json, Function function) { - this.top = function.apply(new net.minecraft.client.resources.model.Material(TextureAtlas.LOCATION_BLOCKS, ResourceLocation.parse(GsonHelper.getAsString(json, "top")))); + this.top = function.apply(new net.minecraft.client.resources.model.Material(TextureAtlas.LOCATION_BLOCKS, new ResourceLocation(GsonHelper.getAsString(json, "top")))); this.machine = function.apply(MachineBakedModel.MACHINE); this.machineSide = function.apply(MachineBakedModel.MACHINE_SIDE); } @Override - public @NotNull TextureAtlasSprite getSpritesForState(@Nullable MachineRenderData renderData, @NotNull BlockFace face) { + public @NotNull TextureAtlasSprite getSpritesForState(@NotNull MachineRenderData renderData, @NotNull BlockFace face) { if (face == BlockFace.TOP) return this.top; if (face.side()) return this.machineSide; return this.machine; diff --git a/src/main/java/dev/galacticraft/mod/client/model/ParaChestBakedModel.java b/src/main/java/dev/galacticraft/mod/client/model/ParaChestBakedModel.java index 3efd79614d..204d978050 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/ParaChestBakedModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/ParaChestBakedModel.java @@ -22,32 +22,33 @@ package dev.galacticraft.mod.client.model; +import dev.galacticraft.mod.content.GCBlocks; import dev.galacticraft.mod.content.block.special.ParaChestBlock; import net.fabricmc.fabric.api.renderer.v1.model.WrapperBakedModel; import net.fabricmc.fabric.api.renderer.v1.render.RenderContext; import net.minecraft.client.multiplayer.ClientLevel; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.ItemOverrides; -import net.minecraft.client.renderer.block.model.ItemTransforms; +import net.minecraft.client.renderer.block.model.*; import net.minecraft.client.renderer.texture.TextureAtlasSprite; import net.minecraft.client.resources.model.BakedModel; import net.minecraft.core.Direction; -import net.minecraft.core.component.DataComponents; +import net.minecraft.nbt.CompoundTag; import net.minecraft.util.RandomSource; import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.item.DyeColor; import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.StateDefinition; +import net.minecraft.world.level.block.state.properties.Property; import org.jetbrains.annotations.Nullable; import java.util.ArrayList; -import java.util.Collections; import java.util.List; import java.util.Map; import java.util.function.Supplier; public class ParaChestBakedModel implements BakedModel, WrapperBakedModel { - private final ParaChestOverride itemOverride; + private final ParaChestOverride ITEM_OVERRIDE = new ParaChestOverride(); private final BakedModel parent; private final Map bakedChutes; private final DyeColor defaultColor; @@ -60,7 +61,6 @@ public ParaChestBakedModel(BakedModel parent, Map bakedChu this.parent = parent; this.bakedChutes = bakedChutes; this.defaultColor = defaultColor; - this.itemOverride = new ParaChestOverride(); } @Override @@ -76,7 +76,19 @@ public List getQuads(@Nullable BlockState blockState, @Nullable Direc @Override public void emitItemQuads(ItemStack stack, Supplier randomSupplier, RenderContext context) { BakedModel.super.emitItemQuads(stack, randomSupplier, context); - this.bakedChutes.get(stack.getOrDefault(DataComponents.BASE_COLOR, defaultColor)).emitItemQuads(stack, randomSupplier, context); + CompoundTag compoundTag = stack.getTag(); + if (compoundTag != null) { + CompoundTag blockStateTag = compoundTag.getCompound("BlockStateTag"); + StateDefinition stateDefinition = GCBlocks.PARACHEST.getStateDefinition(); + Property property = stateDefinition.getProperty("color"); + if (property != null) { + property.getValue(blockStateTag.getString("color")).ifPresent(color -> { + bakedChutes.get(color).emitItemQuads(stack, randomSupplier, context); + }); + } + } else { + bakedChutes.get(DyeColor.WHITE).emitItemQuads(stack, randomSupplier, context); + } } @Override @@ -116,7 +128,7 @@ public ItemTransforms getTransforms() { @Override public ItemOverrides getOverrides() { - return itemOverride; + return ITEM_OVERRIDE; } @Override @@ -125,16 +137,19 @@ public BakedModel getWrappedModel() { } public class ParaChestOverride extends ItemOverrides { - public ParaChestOverride() { - super(null, null, Collections.emptyList()); - } - @Nullable @Override public BakedModel resolve(BakedModel model, ItemStack stack, @Nullable ClientLevel level, @Nullable LivingEntity entity, int seed) { - DyeColor dyeColor = stack.get(DataComponents.BASE_COLOR); - if (dyeColor != null) { - return new ParaChestBakedModel(ParaChestBakedModel.this.parent, ParaChestBakedModel.this.bakedChutes, dyeColor); + CompoundTag compoundTag = stack.getTag(); + if (compoundTag != null) { + CompoundTag blockStateTag = compoundTag.getCompound("BlockStateTag"); + StateDefinition stateDefinition = GCBlocks.PARACHEST.getStateDefinition(); + Property property = stateDefinition.getProperty("color"); + if (property != null) { + var value = property.getValue(blockStateTag.getString("color")); + if (value.isPresent()) + return new ParaChestBakedModel(ParaChestBakedModel.this.parent, ParaChestBakedModel.this.bakedChutes, (DyeColor) value.get()); + } } return ParaChestBakedModel.this.parent.getOverrides().resolve(model, stack, level, entity, seed); } diff --git a/src/main/java/dev/galacticraft/mod/client/model/ParachestUnbakedModel.java b/src/main/java/dev/galacticraft/mod/client/model/ParachestUnbakedModel.java index d6387e63b0..9fd6bdd3ee 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/ParachestUnbakedModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/ParachestUnbakedModel.java @@ -26,6 +26,7 @@ import net.minecraft.client.resources.model.*; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.DyeColor; +import org.jetbrains.annotations.Nullable; import java.util.*; import java.util.function.Function; @@ -49,12 +50,13 @@ public void resolveParents(Function function) { }); } + @Nullable @Override - public BakedModel bake(ModelBaker baker, Function textureGetter, ModelState state) { + public BakedModel bake(ModelBaker modelBaker, Function function, ModelState modelState, ResourceLocation resourceLocation) { Map bakedChutes = new HashMap<>(); chutes.forEach((color, unbakedModel) -> { - bakedChutes.put(color, unbakedModel.bake(baker, textureGetter, state)); + bakedChutes.put(color, unbakedModel.bake(modelBaker, function, modelState, resourceLocation)); }); - return new ParaChestBakedModel(parentModel.bake(baker, textureGetter, state), bakedChutes); + return new ParaChestBakedModel(parentModel.bake(modelBaker, function, modelState, resourceLocation), bakedChutes); } } diff --git a/src/main/java/dev/galacticraft/mod/client/model/PipeBakedModel.java b/src/main/java/dev/galacticraft/mod/client/model/PipeBakedModel.java index 21da5637e0..5ee82a6e40 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/PipeBakedModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/PipeBakedModel.java @@ -79,41 +79,41 @@ protected PipeBakedModel(Function textureGetter) { } var meshBuilder = RendererAccess.INSTANCE.getRenderer().meshBuilder(); var emitter = meshBuilder.getEmitter(); - emitter.square(Direction.DOWN, 0.4f, 0.4f, 0.6f, 0.6f, 0.0f).color(-1, -1, -1, -1).uv(1, 12, 0).uv(2, 16, 0).uv(3, 16, 4).uv(0, 12, 4).cullFace(Direction.DOWN).emit(); - emitter.square(Direction.WEST, 0.6f, 0.4f, 0.4f, 0.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 0, 0).uv(2, 4, 0).uv(3, 4, 8).uv(0, 0, 8).emit(); - emitter.square(Direction.EAST, 0.6f, 0.4f, 0.4f, 0.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 0).uv(2, 8, 0).uv(3, 8, 8).uv(0, 4, 8).emit(); - emitter.square(Direction.SOUTH, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).color(-1, -1, -1, -1).uv(1, 8, 0).uv(2, 12, 0).uv(3, 12, 8).uv(0, 8, 8).emit(); - emitter.square(Direction.NORTH, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 0).uv(2, 8, 0).uv(3, 8, 8).uv(0, 4, 8).emit(); + emitter.square(Direction.DOWN, 0.4f, 0.4f, 0.6f, 0.6f, 0.0f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 12, 0).sprite(2, 0, 16, 0).sprite(3, 0, 16, 4).sprite(0, 0, 12, 4).cullFace(Direction.DOWN).emit(); + emitter.square(Direction.WEST, 0.6f, 0.4f, 0.4f, 0.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 0, 0).sprite(2, 0, 4, 0).sprite(3, 0, 4, 8).sprite(0, 0, 0, 8).emit(); + emitter.square(Direction.EAST, 0.6f, 0.4f, 0.4f, 0.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 0).sprite(2, 0, 8, 0).sprite(3, 0, 8, 8).sprite(0, 0, 4, 8).emit(); + emitter.square(Direction.SOUTH, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 8, 0).sprite(2, 0, 12, 0).sprite(3, 0, 12, 8).sprite(0, 0, 8, 8).emit(); + emitter.square(Direction.NORTH, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 0).sprite(2, 0, 8, 0).sprite(3, 0, 8, 8).sprite(0, 0, 4, 8).emit(); this.down = meshBuilder.build(); - emitter.square(Direction.UP, 0.4f, 0.4f, 0.6f, 0.6f, 0.0f).color(-1, -1, -1, -1).uv(1, 12, 0).uv(2, 16, 0).uv(3, 16, 4).uv(0, 12, 4).cullFace(Direction.UP).emit(); - emitter.square(Direction.EAST, 0.6f, 1.0f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(1, 0, 8).uv(2, 4, 8).uv(3, 4, 16).uv(0, 0, 16).emit(); - emitter.square(Direction.WEST, 0.6f, 1.0f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 8).uv(2, 8, 8).uv(3, 8, 16).uv(0, 4, 16).emit(); - emitter.square(Direction.NORTH, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 8, 8).uv(2, 12, 8).uv(3, 12, 16).uv(0, 8, 16).emit(); - emitter.square(Direction.SOUTH, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 8).uv(2, 8, 8).uv(3, 8, 16).uv(0, 4, 16).emit(); + emitter.square(Direction.UP, 0.4f, 0.4f, 0.6f, 0.6f, 0.0f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 12, 0).sprite(2, 0, 16, 0).sprite(3, 0, 16, 4).sprite(0, 0, 12, 4).cullFace(Direction.UP).emit(); + emitter.square(Direction.EAST, 0.6f, 1.0f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 0, 8).sprite(2, 0, 4, 8).sprite(3, 0, 4, 16).sprite(0, 0, 0, 16).emit(); + emitter.square(Direction.WEST, 0.6f, 1.0f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 8).sprite(2, 0, 8, 8).sprite(3, 0, 8, 16).sprite(0, 0, 4, 16).emit(); + emitter.square(Direction.NORTH, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 8, 8).sprite(2, 0, 12, 8).sprite(3, 0, 12, 16).sprite(0, 0, 8, 16).emit(); + emitter.square(Direction.SOUTH, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 8).sprite(2, 0, 8, 8).sprite(3, 0, 8, 16).sprite(0, 0, 4, 16).emit(); this.up = meshBuilder.build(); - emitter.square(Direction.NORTH, 0.4f, 0.4f, 0.6f, 0.6f, 0.0f).color(-1, -1, -1, -1).uv(1, 12, 0).uv(2, 16, 0).uv(3, 16, 4).uv(0, 12, 4).cullFace(Direction.NORTH).emit(); - emitter.square(Direction.WEST, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 0, 0).uv(1, 4, 0).uv(2, 4, 8).uv(3, 0, 8).emit(); - emitter.square(Direction.EAST, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 0).uv(1, 8, 0).uv(2, 8, 8).uv(3, 4, 8).emit(); - emitter.square(Direction.DOWN, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).color(-1, -1, -1, -1).uv(1, 8, 0).uv(2, 12, 0).uv(3, 12, 8).uv(0, 8, 8).emit(); - emitter.square(Direction.UP, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 0).uv(2, 8, 0).uv(3, 8, 8).uv(0, 4, 8).emit(); + emitter.square(Direction.NORTH, 0.4f, 0.4f, 0.6f, 0.6f, 0.0f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 12, 0).sprite(2, 0, 16, 0).sprite(3, 0, 16, 4).sprite(0, 0, 12, 4).cullFace(Direction.NORTH).emit(); + emitter.square(Direction.WEST, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 0, 0).sprite(1, 0, 4, 0).sprite(2, 0, 4, 8).sprite(3, 0, 0, 8).emit(); + emitter.square(Direction.EAST, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 0).sprite(1, 0, 8, 0).sprite(2, 0, 8, 8).sprite(3, 0, 4, 8).emit(); + emitter.square(Direction.DOWN, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 8, 0).sprite(2, 0, 12, 0).sprite(3, 0, 12, 8).sprite(0, 0, 8, 8).emit(); + emitter.square(Direction.UP, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 0).sprite(2, 0, 8, 0).sprite(3, 0, 8, 8).sprite(0, 0, 4, 8).emit(); this.north = meshBuilder.build(); - emitter.square(Direction.SOUTH, 0.4f, 0.4f, 0.6f, 0.6f, 0.0f).color(-1, -1, -1, -1).uv(1, 12, 0).uv(2, 16, 0).uv(3, 16, 4).uv(0, 12, 4).cullFace(Direction.SOUTH).emit(); - emitter.square(Direction.EAST, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 0, 8).uv(1, 4, 8).uv(2, 4, 16).uv(3, 0, 16).emit(); - emitter.square(Direction.WEST, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 8).uv(1, 8, 8).uv(2, 8, 16).uv(3, 4, 16).emit(); - emitter.square(Direction.UP, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).color(-1, -1, -1, -1).uv(1, 8, 8).uv(2, 12, 8).uv(3, 12, 16).uv(0, 8, 16).emit(); - emitter.square(Direction.DOWN, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 8).uv(2, 8, 8).uv(3, 8, 16).uv(0, 4, 16).emit(); + emitter.square(Direction.SOUTH, 0.4f, 0.4f, 0.6f, 0.6f, 0.0f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 12, 0).sprite(2, 0, 16, 0).sprite(3, 0, 16, 4).sprite(0, 0, 12, 4).cullFace(Direction.SOUTH).emit(); + emitter.square(Direction.EAST, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 0, 8).sprite(1, 0, 4, 8).sprite(2, 0, 4, 16).sprite(3, 0, 0, 16).emit(); + emitter.square(Direction.WEST, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 8).sprite(1, 0, 8, 8).sprite(2, 0, 8, 16).sprite(3, 0, 4, 16).emit(); + emitter.square(Direction.UP, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 8, 8).sprite(2, 0, 12, 8).sprite(3, 0, 12, 16).sprite(0, 0, 8, 16).emit(); + emitter.square(Direction.DOWN, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 8).sprite(2, 0, 8, 8).sprite(3, 0, 8, 16).sprite(0, 0, 4, 16).emit(); this.south = meshBuilder.build(); - emitter.square(Direction.WEST, 0.4f, 0.4f, 0.6f, 0.6f, 0.0f).color(-1, -1, -1, -1).uv(0, 12, 0).uv(1, 16, 0).uv(2, 16, 4).uv(3, 12, 4).cullFace(Direction.WEST).emit(); - emitter.square(Direction.NORTH, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 0, 0).uv(1, 4, 0).uv(2, 4, 8).uv(3, 0, 8).emit(); - emitter.square(Direction.SOUTH, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 0).uv(1, 8, 0).uv(2, 8, 8).uv(3, 4, 8).emit(); - emitter.square(Direction.UP, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 8, 0).uv(1, 12, 0).uv(2, 12, 8).uv(3, 8, 8).emit(); - emitter.square(Direction.DOWN, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 0).uv(1, 8, 0).uv(2, 8, 8).uv(3, 4, 8).emit(); + emitter.square(Direction.WEST, 0.4f, 0.4f, 0.6f, 0.6f, 0.0f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 12, 0).sprite(1, 0, 16, 0).sprite(2, 0, 16, 4).sprite(3, 0, 12, 4).cullFace(Direction.WEST).emit(); + emitter.square(Direction.NORTH, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 0, 0).sprite(1, 0, 4, 0).sprite(2, 0, 4, 8).sprite(3, 0, 0, 8).emit(); + emitter.square(Direction.SOUTH, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 0).sprite(1, 0, 8, 0).sprite(2, 0, 8, 8).sprite(3, 0, 4, 8).emit(); + emitter.square(Direction.UP, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 8, 0).sprite(1, 0, 12, 0).sprite(2, 0, 12, 8).sprite(3, 0, 8, 8).emit(); + emitter.square(Direction.DOWN, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 0).sprite(1, 0, 8, 0).sprite(2, 0, 8, 8).sprite(3, 0, 4, 8).emit(); this.west = meshBuilder.build(); - emitter.square(Direction.EAST, 0.4f, 0.4f, 0.6f, 0.6f, 0.0f).color(-1, -1, -1, -1).uv(0, 12, 0).uv(1, 16, 0).uv(2, 16, 4).uv(3, 12, 4).cullFace(Direction.EAST).emit(); - emitter.square(Direction.SOUTH, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 0, 8).uv(1, 4, 8).uv(2, 4, 16).uv(3, 0, 16).emit(); - emitter.square(Direction.NORTH, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 8).uv(1, 8, 8).uv(2, 8, 16).uv(3, 4, 16).emit(); - emitter.square(Direction.DOWN, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 8, 8).uv(1, 12, 8).uv(2, 12, 16).uv(3, 8, 16).emit(); - emitter.square(Direction.UP, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 8).uv(1, 8, 8).uv(2, 8, 16).uv(3, 4, 16).emit(); + emitter.square(Direction.EAST, 0.4f, 0.4f, 0.6f, 0.6f, 0.0f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 12, 0).sprite(1, 0, 16, 0).sprite(2, 0, 16, 4).sprite(3, 0, 12, 4).cullFace(Direction.EAST).emit(); + emitter.square(Direction.SOUTH, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 0, 8).sprite(1, 0, 4, 8).sprite(2, 0, 4, 16).sprite(3, 0, 0, 16).emit(); + emitter.square(Direction.NORTH, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 8).sprite(1, 0, 8, 8).sprite(2, 0, 8, 16).sprite(3, 0, 4, 16).emit(); + emitter.square(Direction.DOWN, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 8, 8).sprite(1, 0, 12, 8).sprite(2, 0, 12, 16).sprite(3, 0, 8, 16).emit(); + emitter.square(Direction.UP, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 8).sprite(1, 0, 8, 8).sprite(2, 0, 8, 16).sprite(3, 0, 4, 16).emit(); this.east = meshBuilder.build(); } @@ -144,7 +144,7 @@ private void emitBlockQuadsDirection(QuadEmitter emitter, boolean[] connections, mesh.outputTo(emitter); } else { - emitter.square(direction, 0.4f, 0.4f, 0.6f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 12, 0).uv(1, 16, 0).uv(2, 16, 4).uv(3, 12, 4).emit(); + emitter.square(direction, 0.4f, 0.4f, 0.6f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 12, 0).sprite(1, 0, 16, 0).sprite(2, 0, 16, 4).sprite(3, 0, 12, 4).emit(); } } @@ -213,7 +213,7 @@ public void setSprite(TextureAtlasSprite sprite) { @Override public boolean transform(MutableQuadView quad) { - quad.spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV); + quad.spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV); return true; } } diff --git a/src/main/java/dev/galacticraft/mod/client/model/PipeUnbakedModel.java b/src/main/java/dev/galacticraft/mod/client/model/PipeUnbakedModel.java index af014a0a4f..f668b4b8dc 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/PipeUnbakedModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/PipeUnbakedModel.java @@ -45,7 +45,7 @@ public void resolveParents(Function function) { @Nullable @Override - public BakedModel bake(ModelBaker baker, Function textureGetter, ModelState state) { - return PipeBakedModel.getInstance(textureGetter); + public BakedModel bake(ModelBaker modelBaker, Function function, ModelState modelState, ResourceLocation resourceLocation) { + return PipeBakedModel.getInstance(function); } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/client/model/SolarPanelSpriteProvider.java b/src/main/java/dev/galacticraft/mod/client/model/SolarPanelSpriteProvider.java index 7fa00095ea..9ddd92bc72 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/SolarPanelSpriteProvider.java +++ b/src/main/java/dev/galacticraft/mod/client/model/SolarPanelSpriteProvider.java @@ -23,9 +23,9 @@ package dev.galacticraft.mod.client.model; import com.google.gson.JsonObject; -import dev.galacticraft.machinelib.api.machine.MachineRenderData; import dev.galacticraft.machinelib.api.util.BlockFace; import dev.galacticraft.machinelib.client.api.model.MachineModelRegistry; +import dev.galacticraft.machinelib.client.api.render.MachineRenderData; import dev.galacticraft.machinelib.client.impl.model.MachineBakedModel; import net.minecraft.client.renderer.texture.TextureAtlas; import net.minecraft.client.renderer.texture.TextureAtlasSprite; @@ -33,7 +33,6 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.util.GsonHelper; import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; import java.util.function.Function; @@ -44,14 +43,14 @@ public class SolarPanelSpriteProvider implements MachineModelRegistry.SpriteProv private TextureAtlasSprite machine; public SolarPanelSpriteProvider(JsonObject json, Function function) { - this.front = function.apply(new Material(TextureAtlas.LOCATION_BLOCKS, ResourceLocation.parse(GsonHelper.getAsString(json, "front")))); - this.top = function.apply(new Material(TextureAtlas.LOCATION_BLOCKS, ResourceLocation.parse(GsonHelper.getAsString(json, "top")))); + this.front = function.apply(new Material(TextureAtlas.LOCATION_BLOCKS, new ResourceLocation(GsonHelper.getAsString(json, "front")))); + this.top = function.apply(new Material(TextureAtlas.LOCATION_BLOCKS, new ResourceLocation(GsonHelper.getAsString(json, "top")))); this.machine = function.apply(MachineBakedModel.MACHINE); this.machineSide = function.apply(MachineBakedModel.MACHINE_SIDE); } @Override - public @NotNull TextureAtlasSprite getSpritesForState(@Nullable MachineRenderData renderData, @NotNull BlockFace face) { + public @NotNull TextureAtlasSprite getSpritesForState(@NotNull MachineRenderData renderData, @NotNull BlockFace face) { if (face == BlockFace.FRONT) return this.front; if (face == BlockFace.TOP) return this.top; if (face.side()) return this.machineSide; diff --git a/src/main/java/dev/galacticraft/mod/client/model/VacuumGlassUnbakedModel.java b/src/main/java/dev/galacticraft/mod/client/model/VacuumGlassUnbakedModel.java index a6d1c25a91..50544e29e2 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/VacuumGlassUnbakedModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/VacuumGlassUnbakedModel.java @@ -40,13 +40,13 @@ public Collection getDependencies() { } @Override - public void resolveParents(Function baker) { + public void resolveParents(Function modelLoader) { } @Nullable @Override - public BakedModel bake(ModelBaker baker, Function textureGetter, ModelState state) { + public BakedModel bake(ModelBaker baker, Function textureGetter, ModelState rotationContainer, ResourceLocation modelId) { return new VacuumGlassBakedModel(textureGetter); } } diff --git a/src/main/java/dev/galacticraft/mod/client/model/WalkwayBakedModel.java b/src/main/java/dev/galacticraft/mod/client/model/WalkwayBakedModel.java index 00e802a09b..5aaf4b9626 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/WalkwayBakedModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/WalkwayBakedModel.java @@ -47,7 +47,6 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.BlockAndTintGetter; import net.minecraft.world.level.block.state.BlockState; -import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.joml.Quaternionf; import org.joml.Vector3f; @@ -73,39 +72,39 @@ public class WalkwayBakedModel implements BakedModel { private final TextureAtlasSprite sprite; protected WalkwayBakedModel(ModelBaker loader, Function textureGetter, ModelState rotationContainer) { - this.platform = loader.getModel(WALKWAY_PLATFORM).bake(loader, textureGetter, rotationContainer); + this.platform = loader.getModel(WALKWAY_PLATFORM).bake(loader, textureGetter, rotationContainer, WALKWAY_PLATFORM); this.sprite = textureGetter.apply(new Material(InventoryMenu.BLOCK_ATLAS, WALKWAY_TEXTURE)); var meshBuilder = RendererAccess.INSTANCE.getRenderer().meshBuilder(); var emitter = meshBuilder.getEmitter(); - emitter.square(Direction.WEST, 0.6f, 0.4f, 0.4f, 0.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 6, 4).uv(2, 9, 4).uv(3, 9, 11).uv(0, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.EAST, 0.6f, 0.4f, 0.4f, 0.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 6, 4).uv(2, 9, 4).uv(3, 9, 11).uv(0, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.SOUTH, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).color(-1, -1, -1, -1).uv(1, 6, 4).uv(2, 9, 4).uv(3, 9, 11).uv(0, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.NORTH, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).color(-1, -1, -1, -1).uv(1, 6, 4).uv(2, 9, 4).uv(3, 9, 11).uv(0, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.WEST, 0.6f, 0.4f, 0.4f, 0.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 6, 4).sprite(2, 0, 9, 4).sprite(3, 0, 9, 11).sprite(0, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.EAST, 0.6f, 0.4f, 0.4f, 0.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 6, 4).sprite(2, 0, 9, 4).sprite(3, 0, 9, 11).sprite(0, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.SOUTH, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 6, 4).sprite(2, 0, 9, 4).sprite(3, 0, 9, 11).sprite(0, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.NORTH, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 6, 4).sprite(2, 0, 9, 4).sprite(3, 0, 9, 11).sprite(0, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.down = meshBuilder.build(); - emitter.square(Direction.EAST, 0.6f, 1.0f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(1, 6, 4).uv(2, 9, 4).uv(3, 9, 11).uv(0, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.WEST, 0.6f, 1.0f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(1, 6, 4).uv(2, 9, 4).uv(3, 9, 11).uv(0, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.NORTH, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 6, 4).uv(2, 9, 4).uv(3, 9, 11).uv(0, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.SOUTH, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 6, 4).uv(2, 9, 4).uv(3, 9, 11).uv(0, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.EAST, 0.6f, 1.0f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 6, 4).sprite(2, 0, 9, 4).sprite(3, 0, 9, 11).sprite(0, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.WEST, 0.6f, 1.0f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 6, 4).sprite(2, 0, 9, 4).sprite(3, 0, 9, 11).sprite(0, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.NORTH, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 6, 4).sprite(2, 0, 9, 4).sprite(3, 0, 9, 11).sprite(0, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.SOUTH, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 6, 4).sprite(2, 0, 9, 4).sprite(3, 0, 9, 11).sprite(0, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.up = meshBuilder.build(); - emitter.square(Direction.WEST, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 6, 4).uv(1, 9, 4).uv(2, 9, 11).uv(3, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.EAST, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 6, 4).uv(1, 9, 4).uv(2, 9, 11).uv(3, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.DOWN, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).color(-1, -1, -1, -1).uv(1, 6, 4).uv(2, 9, 4).uv(3, 9, 11).uv(0, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.UP, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 6, 4).uv(2, 9, 4).uv(3, 9, 11).uv(0, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.WEST, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 6, 4).sprite(1, 0, 9, 4).sprite(2, 0, 9, 11).sprite(3, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.EAST, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 6, 4).sprite(1, 0, 9, 4).sprite(2, 0, 9, 11).sprite(3, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.DOWN, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 6, 4).sprite(2, 0, 9, 4).sprite(3, 0, 9, 11).sprite(0, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.UP, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 6, 4).sprite(2, 0, 9, 4).sprite(3, 0, 9, 11).sprite(0, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.north = meshBuilder.build(); - emitter.square(Direction.EAST, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 6, 4).uv(1, 9, 4).uv(2, 9, 11).uv(3, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.WEST, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 6, 4).uv(1, 9, 4).uv(2, 9, 11).uv(3, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.UP, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).color(-1, -1, -1, -1).uv(1, 6, 4).uv(2, 9, 4).uv(3, 9, 11).uv(0, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.DOWN, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 6, 4).uv(2, 9, 4).uv(3, 9, 11).uv(0, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.EAST, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 6, 4).sprite(1, 0, 9, 4).sprite(2, 0, 9, 11).sprite(3, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.WEST, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 6, 4).sprite(1, 0, 9, 4).sprite(2, 0, 9, 11).sprite(3, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.UP, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 6, 4).sprite(2, 0, 9, 4).sprite(3, 0, 9, 11).sprite(0, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.DOWN, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 6, 4).sprite(2, 0, 9, 4).sprite(3, 0, 9, 11).sprite(0, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.south = meshBuilder.build(); - emitter.square(Direction.NORTH, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 6, 4).uv(1, 9, 4).uv(2, 9, 11).uv(3, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.SOUTH, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 6, 4).uv(1, 9, 4).uv(2, 9, 11).uv(3, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.UP, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 6, 4).uv(1, 9, 4).uv(2, 9, 11).uv(3, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.DOWN, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 6, 4).uv(1, 9, 4).uv(2, 9, 11).uv(3, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.NORTH, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 6, 4).sprite(1, 0, 9, 4).sprite(2, 0, 9, 11).sprite(3, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.SOUTH, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 6, 4).sprite(1, 0, 9, 4).sprite(2, 0, 9, 11).sprite(3, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.UP, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 6, 4).sprite(1, 0, 9, 4).sprite(2, 0, 9, 11).sprite(3, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.DOWN, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 6, 4).sprite(1, 0, 9, 4).sprite(2, 0, 9, 11).sprite(3, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.west = meshBuilder.build(); - emitter.square(Direction.SOUTH, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 6, 4).uv(1, 9, 4).uv(2, 9, 11).uv(3, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.NORTH, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 6, 4).uv(1, 9, 4).uv(2, 9, 11).uv(3, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.DOWN, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 6, 4).uv(1, 9, 4).uv(2, 9, 11).uv(3, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.UP, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 6, 4).uv(1, 9, 4).uv(2, 9, 11).uv(3, 6, 11).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.SOUTH, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 6, 4).sprite(1, 0, 9, 4).sprite(2, 0, 9, 11).sprite(3, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.NORTH, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 6, 4).sprite(1, 0, 9, 4).sprite(2, 0, 9, 11).sprite(3, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.DOWN, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 6, 4).sprite(1, 0, 9, 4).sprite(2, 0, 9, 11).sprite(3, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.UP, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 6, 4).sprite(1, 0, 9, 4).sprite(2, 0, 9, 11).sprite(3, 0, 6, 11).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.east = meshBuilder.build(); } @@ -166,7 +165,7 @@ public void emitItemQuads(ItemStack itemStack, Supplier randomSupp } @Override - public @NotNull List getQuads(@Nullable BlockState blockState, @Nullable Direction direction, RandomSource random) { + public List getQuads(@Nullable BlockState blockState, @Nullable Direction direction, RandomSource random) { return Collections.emptyList(); } diff --git a/src/main/java/dev/galacticraft/mod/client/model/WalkwayUnbakedModel.java b/src/main/java/dev/galacticraft/mod/client/model/WalkwayUnbakedModel.java index 5f12b5f616..330cc5525e 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/WalkwayUnbakedModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/WalkwayUnbakedModel.java @@ -25,7 +25,6 @@ import net.minecraft.client.renderer.texture.TextureAtlasSprite; import net.minecraft.client.resources.model.*; import net.minecraft.resources.ResourceLocation; -import org.jetbrains.annotations.Nullable; import java.util.Collection; import java.util.Collections; @@ -43,9 +42,8 @@ public Collection getDependencies() { public void resolveParents(Function function) { } - @Nullable @Override - public BakedModel bake(ModelBaker baker, Function textureGetter, ModelState state) { - return WalkwayBakedModel.getInstance(baker, textureGetter, state); + public BakedModel bake(ModelBaker loader, Function spriteFunction, ModelState rotationContainer, ResourceLocation modelId) { + return WalkwayBakedModel.getInstance(loader, spriteFunction, rotationContainer); } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/client/model/WireBakedModel.java b/src/main/java/dev/galacticraft/mod/client/model/WireBakedModel.java index 9bdd68a23f..849e6ce86a 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/WireBakedModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/WireBakedModel.java @@ -69,35 +69,35 @@ protected WireBakedModel(Function textureGetter) { this.sprite = textureGetter.apply(new Material(InventoryMenu.BLOCK_ATLAS, ALUMINUM_WIRE)); var meshBuilder = RendererAccess.INSTANCE.getRenderer().meshBuilder(); var emitter = meshBuilder.getEmitter(); - emitter.square(Direction.WEST, 0.6f, 0.4f, 0.4f, 0.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 0, 0).uv(2, 4, 0).uv(3, 4, 8).uv(0, 0, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.EAST, 0.6f, 0.4f, 0.4f, 0.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 0).uv(2, 8, 0).uv(3, 8, 8).uv(0, 4, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.SOUTH, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).color(-1, -1, -1, -1).uv(1, 8, 0).uv(2, 12, 0).uv(3, 12, 8).uv(0, 8, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.NORTH, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 0).uv(2, 8, 0).uv(3, 8, 8).uv(0, 4, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.WEST, 0.6f, 0.4f, 0.4f, 0.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 0, 0).sprite(2, 0, 4, 0).sprite(3, 0, 4, 8).sprite(0, 0, 0, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.EAST, 0.6f, 0.4f, 0.4f, 0.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 0).sprite(2, 0, 8, 0).sprite(3, 0, 8, 8).sprite(0, 0, 4, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.SOUTH, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 8, 0).sprite(2, 0, 12, 0).sprite(3, 0, 12, 8).sprite(0, 0, 8, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.NORTH, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 0).sprite(2, 0, 8, 0).sprite(3, 0, 8, 8).sprite(0, 0, 4, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.down = meshBuilder.build(); - emitter.square(Direction.EAST, 0.6f, 1.0f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(1, 0, 8).uv(2, 4, 8).uv(3, 4, 16).uv(0, 0, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.WEST, 0.6f, 1.0f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 8).uv(2, 8, 8).uv(3, 8, 16).uv(0, 4, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.NORTH, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 8, 8).uv(2, 12, 8).uv(3, 12, 16).uv(0, 8, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.SOUTH, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 8).uv(2, 8, 8).uv(3, 8, 16).uv(0, 4, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.EAST, 0.6f, 1.0f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 0, 8).sprite(2, 0, 4, 8).sprite(3, 0, 4, 16).sprite(0, 0, 0, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.WEST, 0.6f, 1.0f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 8).sprite(2, 0, 8, 8).sprite(3, 0, 8, 16).sprite(0, 0, 4, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.NORTH, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 8, 8).sprite(2, 0, 12, 8).sprite(3, 0, 12, 16).sprite(0, 0, 8, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.SOUTH, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 8).sprite(2, 0, 8, 8).sprite(3, 0, 8, 16).sprite(0, 0, 4, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.up = meshBuilder.build(); - emitter.square(Direction.WEST, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 0, 0).uv(1, 4, 0).uv(2, 4, 8).uv(3, 0, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.EAST, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 0).uv(1, 8, 0).uv(2, 8, 8).uv(3, 4, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.DOWN, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).color(-1, -1, -1, -1).uv(1, 8, 0).uv(2, 12, 0).uv(3, 12, 8).uv(0, 8, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.UP, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 0).uv(2, 8, 0).uv(3, 8, 8).uv(0, 4, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.WEST, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 0, 0).sprite(1, 0, 4, 0).sprite(2, 0, 4, 8).sprite(3, 0, 0, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.EAST, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 0).sprite(1, 0, 8, 0).sprite(2, 0, 8, 8).sprite(3, 0, 4, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.DOWN, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 8, 0).sprite(2, 0, 12, 0).sprite(3, 0, 12, 8).sprite(0, 0, 8, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.UP, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 0).sprite(2, 0, 8, 0).sprite(3, 0, 8, 8).sprite(0, 0, 4, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.north = meshBuilder.build(); - emitter.square(Direction.EAST, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 0, 8).uv(1, 4, 8).uv(2, 4, 16).uv(3, 0, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.WEST, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 8).uv(1, 8, 8).uv(2, 8, 16).uv(3, 4, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.UP, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).color(-1, -1, -1, -1).uv(1, 8, 8).uv(2, 12, 8).uv(3, 12, 16).uv(0, 8, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.DOWN, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 8).uv(2, 8, 8).uv(3, 8, 16).uv(0, 4, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.EAST, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 0, 8).sprite(1, 0, 4, 8).sprite(2, 0, 4, 16).sprite(3, 0, 0, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.WEST, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 8).sprite(1, 0, 8, 8).sprite(2, 0, 8, 16).sprite(3, 0, 4, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.UP, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 8, 8).sprite(2, 0, 12, 8).sprite(3, 0, 12, 16).sprite(0, 0, 8, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.DOWN, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 8).sprite(2, 0, 8, 8).sprite(3, 0, 8, 16).sprite(0, 0, 4, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.south = meshBuilder.build(); - emitter.square(Direction.NORTH, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 0, 0).uv(1, 4, 0).uv(2, 4, 8).uv(3, 0, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.SOUTH, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 0).uv(1, 8, 0).uv(2, 8, 8).uv(3, 4, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.UP, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 8, 0).uv(1, 12, 0).uv(2, 12, 8).uv(3, 8, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.DOWN, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 0).uv(1, 8, 0).uv(2, 8, 8).uv(3, 4, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.NORTH, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 0, 0).sprite(1, 0, 4, 0).sprite(2, 0, 4, 8).sprite(3, 0, 0, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.SOUTH, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 0).sprite(1, 0, 8, 0).sprite(2, 0, 8, 8).sprite(3, 0, 4, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.UP, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 8, 0).sprite(1, 0, 12, 0).sprite(2, 0, 12, 8).sprite(3, 0, 8, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.DOWN, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 0).sprite(1, 0, 8, 0).sprite(2, 0, 8, 8).sprite(3, 0, 4, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.west = meshBuilder.build(); - emitter.square(Direction.SOUTH, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 0, 8).uv(1, 4, 8).uv(2, 4, 16).uv(3, 0, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.NORTH, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 8).uv(1, 8, 8).uv(2, 8, 16).uv(3, 4, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.DOWN, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 8, 8).uv(1, 12, 8).uv(2, 12, 16).uv(3, 8, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.UP, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 8).uv(1, 8, 8).uv(2, 8, 16).uv(3, 4, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.SOUTH, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 0, 8).sprite(1, 0, 4, 8).sprite(2, 0, 4, 16).sprite(3, 0, 0, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.NORTH, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 8).sprite(1, 0, 8, 8).sprite(2, 0, 8, 16).sprite(3, 0, 4, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.DOWN, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 8, 8).sprite(1, 0, 12, 8).sprite(2, 0, 12, 16).sprite(3, 0, 8, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.UP, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 8).sprite(1, 0, 8, 8).sprite(2, 0, 8, 16).sprite(3, 0, 4, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.east = meshBuilder.build(); } @@ -125,7 +125,7 @@ private void emitBlockQuadsDirection(QuadEmitter emitter, boolean[] connections, mesh.outputTo(emitter); } else { - emitter.square(direction, 0.4f, 0.4f, 0.6f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 12, 0).uv(1, 16, 0).uv(2, 16, 4).uv(3, 12, 4).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(direction, 0.4f, 0.4f, 0.6f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 12, 0).sprite(1, 0, 16, 0).sprite(2, 0, 16, 4).sprite(3, 0, 12, 4).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); } } diff --git a/src/main/java/dev/galacticraft/mod/client/model/WireUnbakedModel.java b/src/main/java/dev/galacticraft/mod/client/model/WireUnbakedModel.java index 4d45371ee9..e63540ae16 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/WireUnbakedModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/WireUnbakedModel.java @@ -25,7 +25,6 @@ import net.minecraft.client.renderer.texture.TextureAtlasSprite; import net.minecraft.client.resources.model.*; import net.minecraft.resources.ResourceLocation; -import org.jetbrains.annotations.Nullable; import java.util.Collection; import java.util.Collections; @@ -43,9 +42,8 @@ public Collection getDependencies() { public void resolveParents(Function function) { } - @Nullable @Override - public BakedModel bake(ModelBaker baker, Function textureGetter, ModelState state) { - return WireBakedModel.getInstance(textureGetter); + public BakedModel bake(ModelBaker loader, Function spriteFunction, ModelState rotationContainer, ResourceLocation modelId) { + return WireBakedModel.getInstance(spriteFunction); } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/client/model/WireWalkwayBakedModel.java b/src/main/java/dev/galacticraft/mod/client/model/WireWalkwayBakedModel.java index 6182024b44..b0357ecd12 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/WireWalkwayBakedModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/WireWalkwayBakedModel.java @@ -78,83 +78,83 @@ public class WireWalkwayBakedModel implements BakedModel { private final TextureAtlasSprite sprite; private final TextureAtlasSprite walkwaySprite; - protected WireWalkwayBakedModel(ModelBaker baker, Function textureGetter, ModelState state) { - this.walkway = baker.getModel(WALKWAY_PLATFORM).bake(baker, textureGetter, state); + protected WireWalkwayBakedModel(ModelBaker loader, Function textureGetter, ModelState rotationContainer) { + this.walkway = loader.getModel(WALKWAY_PLATFORM).bake(loader, textureGetter, rotationContainer, WALKWAY_PLATFORM); this.sprite = textureGetter.apply(new Material(InventoryMenu.BLOCK_ATLAS, ALUMINUM_WIRE)); this.walkwaySprite = textureGetter.apply(new Material(InventoryMenu.BLOCK_ATLAS, WALKWAY_TEXTURE)); var meshBuilder = RendererAccess.INSTANCE.getRenderer().meshBuilder(); var emitter = meshBuilder.getEmitter(); - emitter.square(Direction.WEST, 0.6f, 0.4f, 0.4f, 0.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 0, 0).uv(2, 4, 0).uv(3, 4, 8).uv(0, 0, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.EAST, 0.6f, 0.4f, 0.4f, 0.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 0).uv(2, 8, 0).uv(3, 8, 8).uv(0, 4, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.SOUTH, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).color(-1, -1, -1, -1).uv(1, 8, 0).uv(2, 12, 0).uv(3, 12, 8).uv(0, 8, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.NORTH, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 0).uv(2, 8, 0).uv(3, 8, 8).uv(0, 4, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.WEST, 0.6f, 0.4f, 0.4f, 0.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 0, 0).sprite(2, 0, 4, 0).sprite(3, 0, 4, 8).sprite(0, 0, 0, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.EAST, 0.6f, 0.4f, 0.4f, 0.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 0).sprite(2, 0, 8, 0).sprite(3, 0, 8, 8).sprite(0, 0, 4, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.SOUTH, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 8, 0).sprite(2, 0, 12, 0).sprite(3, 0, 12, 8).sprite(0, 0, 8, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.NORTH, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 0).sprite(2, 0, 8, 0).sprite(3, 0, 8, 8).sprite(0, 0, 4, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.down = meshBuilder.build(); - emitter.square(Direction.EAST, 0.6f, 1.0f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(1, 0, 8).uv(2, 4, 8).uv(3, 4, 16).uv(0, 0, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.WEST, 0.6f, 1.0f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 8).uv(2, 8, 8).uv(3, 8, 16).uv(0, 4, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.NORTH, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 8, 8).uv(2, 12, 8).uv(3, 12, 16).uv(0, 8, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.SOUTH, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 8).uv(2, 8, 8).uv(3, 8, 16).uv(0, 4, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.EAST, 0.6f, 1.0f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 0, 8).sprite(2, 0, 4, 8).sprite(3, 0, 4, 16).sprite(0, 0, 0, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.WEST, 0.6f, 1.0f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 8).sprite(2, 0, 8, 8).sprite(3, 0, 8, 16).sprite(0, 0, 4, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.NORTH, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 8, 8).sprite(2, 0, 12, 8).sprite(3, 0, 12, 16).sprite(0, 0, 8, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.SOUTH, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 8).sprite(2, 0, 8, 8).sprite(3, 0, 8, 16).sprite(0, 0, 4, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.up = meshBuilder.build(); - emitter.square(Direction.WEST, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 0, 0).uv(1, 4, 0).uv(2, 4, 8).uv(3, 0, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.EAST, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 0).uv(1, 8, 0).uv(2, 8, 8).uv(3, 4, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.DOWN, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).color(-1, -1, -1, -1).uv(1, 8, 0).uv(2, 12, 0).uv(3, 12, 8).uv(0, 8, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.UP, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 0).uv(2, 8, 0).uv(3, 8, 8).uv(0, 4, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.WEST, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 0, 0).sprite(1, 0, 4, 0).sprite(2, 0, 4, 8).sprite(3, 0, 0, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.EAST, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 0).sprite(1, 0, 8, 0).sprite(2, 0, 8, 8).sprite(3, 0, 4, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.DOWN, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 8, 0).sprite(2, 0, 12, 0).sprite(3, 0, 12, 8).sprite(0, 0, 8, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.UP, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 0).sprite(2, 0, 8, 0).sprite(3, 0, 8, 8).sprite(0, 0, 4, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.north = meshBuilder.build(); - emitter.square(Direction.EAST, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 0, 8).uv(1, 4, 8).uv(2, 4, 16).uv(3, 0, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.WEST, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 8).uv(1, 8, 8).uv(2, 8, 16).uv(3, 4, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.UP, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).color(-1, -1, -1, -1).uv(1, 8, 8).uv(2, 12, 8).uv(3, 12, 16).uv(0, 8, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.DOWN, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 8).uv(2, 8, 8).uv(3, 8, 16).uv(0, 4, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.EAST, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 0, 8).sprite(1, 0, 4, 8).sprite(2, 0, 4, 16).sprite(3, 0, 0, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.WEST, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 8).sprite(1, 0, 8, 8).sprite(2, 0, 8, 16).sprite(3, 0, 4, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.UP, 0.4f, 0.0f, 0.6f, 0.4f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 8, 8).sprite(2, 0, 12, 8).sprite(3, 0, 12, 16).sprite(0, 0, 8, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.DOWN, 0.4f, 0.6f, 0.6f, 1.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 8).sprite(2, 0, 8, 8).sprite(3, 0, 8, 16).sprite(0, 0, 4, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.south = meshBuilder.build(); - emitter.square(Direction.NORTH, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 0, 0).uv(1, 4, 0).uv(2, 4, 8).uv(3, 0, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.SOUTH, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 0).uv(1, 8, 0).uv(2, 8, 8).uv(3, 4, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.UP, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 8, 0).uv(1, 12, 0).uv(2, 12, 8).uv(3, 8, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.DOWN, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 0).uv(1, 8, 0).uv(2, 8, 8).uv(3, 4, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.NORTH, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 0, 0).sprite(1, 0, 4, 0).sprite(2, 0, 4, 8).sprite(3, 0, 0, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.SOUTH, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 0).sprite(1, 0, 8, 0).sprite(2, 0, 8, 8).sprite(3, 0, 4, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.UP, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 8, 0).sprite(1, 0, 12, 0).sprite(2, 0, 12, 8).sprite(3, 0, 8, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.DOWN, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 0).sprite(1, 0, 8, 0).sprite(2, 0, 8, 8).sprite(3, 0, 4, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.west = meshBuilder.build(); - emitter.square(Direction.SOUTH, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 0, 8).uv(1, 4, 8).uv(2, 4, 16).uv(3, 0, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.NORTH, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 8).uv(1, 8, 8).uv(2, 8, 16).uv(3, 4, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.DOWN, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 8, 8).uv(1, 12, 8).uv(2, 12, 16).uv(3, 8, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.UP, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 8).uv(1, 8, 8).uv(2, 8, 16).uv(3, 4, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.SOUTH, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 0, 8).sprite(1, 0, 4, 8).sprite(2, 0, 4, 16).sprite(3, 0, 0, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.NORTH, 0.0f, 0.4f, 0.4f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 8).sprite(1, 0, 8, 8).sprite(2, 0, 8, 16).sprite(3, 0, 4, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.DOWN, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 8, 8).sprite(1, 0, 12, 8).sprite(2, 0, 12, 16).sprite(3, 0, 8, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.UP, 0.6f, 0.4f, 1.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 8).sprite(1, 0, 8, 8).sprite(2, 0, 8, 16).sprite(3, 0, 4, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.east = meshBuilder.build(); - emitter.square(Direction.WEST, 0.6f, 0.0f, 0.4f, -0.2f, 0.4f).color(-1, -1, -1, -1).uv(1, 0, 0).uv(2, 4, 0).uv(3, 4, 8).uv(0, 0, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.EAST, 0.6f, 0.0f, 0.4f, -0.2f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 0).uv(2, 8, 0).uv(3, 8, 8).uv(0, 4, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.SOUTH, 0.4f, -0.2f, 0.6f, 0.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 8, 0).uv(2, 12, 0).uv(3, 12, 8).uv(0, 8, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.NORTH, 0.4f, -0.2f, 0.6f, 0.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 0).uv(2, 8, 0).uv(3, 8, 8).uv(0, 4, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.WEST, 0.6f, 0.0f, 0.4f, -0.2f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 0, 0).sprite(2, 0, 4, 0).sprite(3, 0, 4, 8).sprite(0, 0, 0, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.EAST, 0.6f, 0.0f, 0.4f, -0.2f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 0).sprite(2, 0, 8, 0).sprite(3, 0, 8, 8).sprite(0, 0, 4, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.SOUTH, 0.4f, -0.2f, 0.6f, 0.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 8, 0).sprite(2, 0, 12, 0).sprite(3, 0, 12, 8).sprite(0, 0, 8, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.NORTH, 0.4f, -0.2f, 0.6f, 0.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 0).sprite(2, 0, 8, 0).sprite(3, 0, 8, 8).sprite(0, 0, 4, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.smallDown = meshBuilder.build(); - emitter.square(Direction.EAST, 0.6f, 1.2f, 0.4f, 1.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 0, 8).uv(2, 4, 8).uv(3, 4, 16).uv(0, 0, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.WEST, 0.6f, 1.2f, 0.4f, 1.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 8).uv(2, 8, 8).uv(3, 8, 16).uv(0, 4, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.NORTH, 0.4f, 1.0f, 0.6f, 1.2f, 0.4f).color(-1, -1, -1, -1).uv(1, 8, 8).uv(2, 12, 8).uv(3, 12, 16).uv(0, 8, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.SOUTH, 0.4f, 1.0f, 0.6f, 1.2f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 8).uv(2, 8, 8).uv(3, 8, 16).uv(0, 4, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.EAST, 0.6f, 1.2f, 0.4f, 1.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 0, 8).sprite(2, 0, 4, 8).sprite(3, 0, 4, 16).sprite(0, 0, 0, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.WEST, 0.6f, 1.2f, 0.4f, 1.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 8).sprite(2, 0, 8, 8).sprite(3, 0, 8, 16).sprite(0, 0, 4, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.NORTH, 0.4f, 1.0f, 0.6f, 1.2f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 8, 8).sprite(2, 0, 12, 8).sprite(3, 0, 12, 16).sprite(0, 0, 8, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.SOUTH, 0.4f, 1.0f, 0.6f, 1.2f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 8).sprite(2, 0, 8, 8).sprite(3, 0, 8, 16).sprite(0, 0, 4, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.smallUp = meshBuilder.build(); - emitter.square(Direction.WEST, -0.2f, 0.4f, 0.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 0, 0).uv(1, 4, 0).uv(2, 4, 8).uv(3, 0, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.EAST, 1.0f, 0.4f, 1.2f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 0).uv(1, 8, 0).uv(2, 8, 8).uv(3, 4, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.DOWN, 0.4f, -0.2f, 0.6f, 0.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 8, 0).uv(2, 12, 0).uv(3, 12, 8).uv(0, 8, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.UP, 0.4f, 1.0f, 0.6f, 1.2f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 0).uv(2, 8, 0).uv(3, 8, 8).uv(0, 4, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.WEST, -0.2f, 0.4f, 0.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 0, 0).sprite(1, 0, 4, 0).sprite(2, 0, 4, 8).sprite(3, 0, 0, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.EAST, 1.0f, 0.4f, 1.2f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 0).sprite(1, 0, 8, 0).sprite(2, 0, 8, 8).sprite(3, 0, 4, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.DOWN, 0.4f, -0.2f, 0.6f, 0.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 8, 0).sprite(2, 0, 12, 0).sprite(3, 0, 12, 8).sprite(0, 0, 8, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.UP, 0.4f, 1.0f, 0.6f, 1.2f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 0).sprite(2, 0, 8, 0).sprite(3, 0, 8, 8).sprite(0, 0, 4, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.smallNorth = meshBuilder.build(); - emitter.square(Direction.EAST, -0.2f, 0.4f, 0.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 0, 8).uv(1, 4, 8).uv(2, 4, 16).uv(3, 0, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.WEST, 1.0f, 0.4f, 1.2f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 8).uv(1, 8, 8).uv(2, 8, 16).uv(3, 4, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.UP, 0.4f, -0.2f, 0.6f, 0.0f, 0.4f).color(-1, -1, -1, -1).uv(1, 8, 8).uv(2, 12, 8).uv(3, 12, 16).uv(0, 8, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.DOWN, 0.4f, 1.0f, 0.6f, 1.2f, 0.4f).color(-1, -1, -1, -1).uv(1, 4, 8).uv(2, 8, 8).uv(3, 8, 16).uv(0, 4, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.EAST, -0.2f, 0.4f, 0.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 0, 8).sprite(1, 0, 4, 8).sprite(2, 0, 4, 16).sprite(3, 0, 0, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.WEST, 1.0f, 0.4f, 1.2f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 8).sprite(1, 0, 8, 8).sprite(2, 0, 8, 16).sprite(3, 0, 4, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.UP, 0.4f, -0.2f, 0.6f, 0.0f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 8, 8).sprite(2, 0, 12, 8).sprite(3, 0, 12, 16).sprite(0, 0, 8, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.DOWN, 0.4f, 1.0f, 0.6f, 1.2f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(1, 0, 4, 8).sprite(2, 0, 8, 8).sprite(3, 0, 8, 16).sprite(0, 0, 4, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.smallSouth = meshBuilder.build(); - emitter.square(Direction.NORTH, 1.0f, 0.4f, 1.2f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 0, 0).uv(1, 4, 0).uv(2, 4, 8).uv(3, 0, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.SOUTH, -0.2f, 0.4f, 0.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 0).uv(1, 8, 0).uv(2, 8, 8).uv(3, 4, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.UP, -0.2f, 0.4f, 0.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 8, 0).uv(1, 12, 0).uv(2, 12, 8).uv(3, 8, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.DOWN, -0.2f, 0.4f, 0.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 0).uv(1, 8, 0).uv(2, 8, 8).uv(3, 4, 8).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.NORTH, 1.0f, 0.4f, 1.2f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 0, 0).sprite(1, 0, 4, 0).sprite(2, 0, 4, 8).sprite(3, 0, 0, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.SOUTH, -0.2f, 0.4f, 0.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 0).sprite(1, 0, 8, 0).sprite(2, 0, 8, 8).sprite(3, 0, 4, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.UP, -0.2f, 0.4f, 0.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 8, 0).sprite(1, 0, 12, 0).sprite(2, 0, 12, 8).sprite(3, 0, 8, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.DOWN, -0.2f, 0.4f, 0.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 0).sprite(1, 0, 8, 0).sprite(2, 0, 8, 8).sprite(3, 0, 4, 8).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.smallWest = meshBuilder.build(); - emitter.square(Direction.SOUTH, 1.0f, 0.4f, 1.2f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 0, 8).uv(1, 4, 8).uv(2, 4, 16).uv(3, 0, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.NORTH, -0.2f, 0.4f, 0.0f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 8).uv(1, 8, 8).uv(2, 8, 16).uv(3, 4, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.DOWN, 1.0f, 0.4f, 1.2f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 8, 8).uv(1, 12, 8).uv(2, 12, 16).uv(3, 8, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); - emitter.square(Direction.UP, 1.0f, 0.4f, 1.2f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 4, 8).uv(1, 8, 8).uv(2, 8, 16).uv(3, 4, 16).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.SOUTH, 1.0f, 0.4f, 1.2f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 0, 8).sprite(1, 0, 4, 8).sprite(2, 0, 4, 16).sprite(3, 0, 0, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.NORTH, -0.2f, 0.4f, 0.0f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 8).sprite(1, 0, 8, 8).sprite(2, 0, 8, 16).sprite(3, 0, 4, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.DOWN, 1.0f, 0.4f, 1.2f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 8, 8).sprite(1, 0, 12, 8).sprite(2, 0, 12, 16).sprite(3, 0, 8, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(Direction.UP, 1.0f, 0.4f, 1.2f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 4, 8).sprite(1, 0, 8, 8).sprite(2, 0, 8, 16).sprite(3, 0, 4, 16).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); this.smallEast = meshBuilder.build(); } @@ -206,7 +206,7 @@ private void emitBlockQuadsDirection(QuadEmitter emitter, boolean[] connections, smallMesh.outputTo(emitter); } else { - emitter.square(direction, 0.4f, 0.4f, 0.6f, 0.6f, 0.4f).color(-1, -1, -1, -1).uv(0, 12, 0).uv(1, 16, 0).uv(2, 16, 4).uv(3, 12, 4).spriteBake(this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); + emitter.square(direction, 0.4f, 0.4f, 0.6f, 0.6f, 0.4f).spriteColor(0, -1, -1, -1, -1).sprite(0, 0, 12, 0).sprite(1, 0, 16, 0).sprite(2, 0, 16, 4).sprite(3, 0, 12, 4).spriteBake(0, this.sprite, MutableQuadView.BAKE_NORMALIZED & MutableQuadView.BAKE_LOCK_UV).emit(); } } diff --git a/src/main/java/dev/galacticraft/mod/client/model/WireWalkwayUnbakedModel.java b/src/main/java/dev/galacticraft/mod/client/model/WireWalkwayUnbakedModel.java index 36256498fb..835eeec769 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/WireWalkwayUnbakedModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/WireWalkwayUnbakedModel.java @@ -26,7 +26,6 @@ import net.minecraft.client.resources.model.*; import net.minecraft.resources.ResourceLocation; import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; import java.util.Collection; import java.util.Collections; @@ -44,9 +43,8 @@ public class WireWalkwayUnbakedModel implements UnbakedModel { public void resolveParents(Function function) { } - @Nullable @Override - public BakedModel bake(ModelBaker baker, Function textureGetter, ModelState rotationContainer) { - return WireWalkwayBakedModel.getInstance(baker, textureGetter, rotationContainer); + public BakedModel bake(ModelBaker loader, Function spriteFunction, ModelState rotationContainer, ResourceLocation modelId) { + return WireWalkwayBakedModel.getInstance(loader, spriteFunction, rotationContainer); } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/client/model/entity/ArchGreyEntityModel.java b/src/main/java/dev/galacticraft/mod/client/model/entity/ArchGreyEntityModel.java index c501018d45..f371b8a178 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/entity/ArchGreyEntityModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/entity/ArchGreyEntityModel.java @@ -75,12 +75,12 @@ public void setupAnim(T entity, float limbSwing, float limbSwingAmount, float ag } @Override - public void renderToBuffer(PoseStack poseStack, VertexConsumer vertices, int light, int overlay, int color) { - Body.render(poseStack, vertices, light, overlay); - Left_Arm.render(poseStack, vertices, light, overlay); - Right_Arm.render(poseStack, vertices, light, overlay); - Left_Leg.render(poseStack, vertices, light, overlay); - Right_Leg.render(poseStack, vertices, light, overlay); - Head.render(poseStack, vertices, light, overlay); + public void renderToBuffer(PoseStack poseStack, VertexConsumer buffer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha) { + Body.render(poseStack, buffer, packedLight, packedOverlay); + Left_Arm.render(poseStack, buffer, packedLight, packedOverlay); + Right_Arm.render(poseStack, buffer, packedLight, packedOverlay); + Left_Leg.render(poseStack, buffer, packedLight, packedOverlay); + Right_Leg.render(poseStack, buffer, packedLight, packedOverlay); + Head.render(poseStack, buffer, packedLight, packedOverlay); } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/client/model/entity/CometCubeEntityModel.java b/src/main/java/dev/galacticraft/mod/client/model/entity/CometCubeEntityModel.java index 4b2c119b8c..5ca89efd9e 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/entity/CometCubeEntityModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/entity/CometCubeEntityModel.java @@ -31,11 +31,11 @@ import net.minecraft.world.entity.Entity; public class CometCubeEntityModel extends EntityModel { - private final ModelPart body; + private final ModelPart Body; private final ModelPart tail; public CometCubeEntityModel(ModelPart root) { - this.body = root.getChild("Body"); + this.Body = root.getChild("Body"); this.tail = root.getChild("tail"); } @@ -56,9 +56,8 @@ public void setupAnim(T entity, float limbSwing, float limbSwingAmount, float ag } @Override - public void renderToBuffer(PoseStack poseStack, VertexConsumer vertices, int light, int overlay, int color) { - body.render(poseStack, vertices, light, overlay); - tail.render(poseStack, vertices, light, overlay); - + public void renderToBuffer(PoseStack poseStack, VertexConsumer buffer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha) { + Body.render(poseStack, buffer, packedLight, packedOverlay); + tail.render(poseStack, buffer, packedLight, packedOverlay); } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/client/model/entity/EvolvedSkeletonBossModel.java b/src/main/java/dev/galacticraft/mod/client/model/entity/EvolvedSkeletonBossModel.java index 7d9304c38c..022f3c2b0f 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/entity/EvolvedSkeletonBossModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/entity/EvolvedSkeletonBossModel.java @@ -29,10 +29,7 @@ import net.minecraft.client.model.EntityModel; import net.minecraft.client.model.geom.ModelPart; import net.minecraft.client.model.geom.PartPose; -import net.minecraft.client.model.geom.builders.CubeListBuilder; -import net.minecraft.client.model.geom.builders.LayerDefinition; -import net.minecraft.client.model.geom.builders.MeshDefinition; -import net.minecraft.client.model.geom.builders.PartDefinition; +import net.minecraft.client.model.geom.builders.*; import net.minecraft.util.Mth; import net.minecraft.world.entity.HumanoidArm; @@ -296,8 +293,8 @@ public static LayerDefinition createBodyLayer() { } @Override - public void renderToBuffer(PoseStack matrices, VertexConsumer vertices, int light, int overlay, int color) { - this.root.render(matrices, vertices, light, overlay, color); + public void renderToBuffer(PoseStack poseStack, VertexConsumer buffer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha) { + this.root.render(poseStack, buffer, packedLight, packedOverlay, red, green, blue, alpha); } private void setRotation(ModelPart model, float x, float y, float z) { diff --git a/src/main/java/dev/galacticraft/mod/client/model/entity/GazerEntityModel.java b/src/main/java/dev/galacticraft/mod/client/model/entity/GazerEntityModel.java index e87976e830..844f38292f 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/entity/GazerEntityModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/entity/GazerEntityModel.java @@ -33,19 +33,19 @@ public class GazerEntityModel extends EntityModel { // This layer location should be baked with EntityRendererProvider.Context in the entity renderer and passed into this model's constructor private final ModelPart Body; - private final ModelPart leftArm; - private final ModelPart rightArm; - private final ModelPart leftLeg; - private final ModelPart rightLeg; - private final ModelPart head; + private final ModelPart Left_Arm; + private final ModelPart Right_Arm; + private final ModelPart Left_leg; + private final ModelPart Right_leg; + private final ModelPart Head; public GazerEntityModel(ModelPart root) { this.Body = root.getChild("Body"); - this.leftArm = root.getChild("Left_Arm"); - this.rightArm = root.getChild("Right_Arm"); - this.leftLeg = root.getChild("Left_leg"); - this.rightLeg = root.getChild("Right_leg"); - this.head = root.getChild("Head"); + this.Left_Arm = root.getChild("Left_Arm"); + this.Right_Arm = root.getChild("Right_Arm"); + this.Left_leg = root.getChild("Left_leg"); + this.Right_leg = root.getChild("Right_leg"); + this.Head = root.getChild("Head"); } public static LayerDefinition createBodyLayer() { @@ -80,12 +80,12 @@ public void setupAnim(T entity, float limbSwing, float limbSwingAmount, float ag } @Override - public void renderToBuffer(PoseStack poseStack, VertexConsumer vertices, int light, int overlay, int color) { - Body.render(poseStack, vertices, light, overlay); - leftArm.render(poseStack, vertices, light, overlay); - rightArm.render(poseStack, vertices, light, overlay); - leftLeg.render(poseStack, vertices, light, overlay); - rightLeg.render(poseStack, vertices, light, overlay); - head.render(poseStack, vertices, light, overlay); + public void renderToBuffer(PoseStack poseStack, VertexConsumer buffer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha) { + Body.render(poseStack, buffer, packedLight, packedOverlay); + Left_Arm.render(poseStack, buffer, packedLight, packedOverlay); + Right_Arm.render(poseStack, buffer, packedLight, packedOverlay); + Left_leg.render(poseStack, buffer, packedLight, packedOverlay); + Right_leg.render(poseStack, buffer, packedLight, packedOverlay); + Head.render(poseStack, buffer, packedLight, packedOverlay); } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/client/model/entity/GreyEntityModel.java b/src/main/java/dev/galacticraft/mod/client/model/entity/GreyEntityModel.java index 28fa16cc4e..6d4b1baf1b 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/entity/GreyEntityModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/entity/GreyEntityModel.java @@ -83,13 +83,14 @@ public void setupAnim(T entity, float limbSwing, float limbSwingAmount, float ag Left_Arm.xRot = Mth.cos(limbSwing * 0.6662F) * 2.0F * limbSwingAmount * 0.5F / armSwingScale; } + @Override - public void renderToBuffer(PoseStack matrices, VertexConsumer vertices, int light, int overlay, int color) { - Body.render(matrices, vertices, light, overlay); - Left_Arm.render(matrices, vertices, light, overlay); - Right_Arm.render(matrices, vertices, light, overlay); - Left_Leg.render(matrices, vertices, light, overlay); - Right_Leg.render(matrices, vertices, light, overlay); - Head.render(matrices, vertices, light, overlay); + public void renderToBuffer(PoseStack poseStack, VertexConsumer buffer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha) { + Body.render(poseStack, buffer, packedLight, packedOverlay); + Left_Arm.render(poseStack, buffer, packedLight, packedOverlay); + Right_Arm.render(poseStack, buffer, packedLight, packedOverlay); + Left_Leg.render(poseStack, buffer, packedLight, packedOverlay); + Right_Leg.render(poseStack, buffer, packedLight, packedOverlay); + Head.render(poseStack, buffer, packedLight, packedOverlay); } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/client/model/entity/LanderModel.java b/src/main/java/dev/galacticraft/mod/client/model/entity/LanderModel.java index e314297d7e..6b070ceae2 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/entity/LanderModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/entity/LanderModel.java @@ -85,9 +85,9 @@ public void setupAnim(LanderEntity entity, float limbSwing, float limbSwingAmoun } @Override - public void renderToBuffer(PoseStack matrices, VertexConsumer vertices, int light, int overlay, int color) { - feet.render(matrices, vertices, light, overlay, color); - legs.render(matrices, vertices, light, overlay, color); - head.render(matrices, vertices, overlay, overlay, color); + public void renderToBuffer(PoseStack poseStack, VertexConsumer vertexConsumer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha) { + feet.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha); + legs.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha); + head.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha); } } diff --git a/src/main/java/dev/galacticraft/mod/client/model/entity/OliGrubEntityModel.java b/src/main/java/dev/galacticraft/mod/client/model/entity/OliGrubEntityModel.java index 203ada47d5..297360692a 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/entity/OliGrubEntityModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/entity/OliGrubEntityModel.java @@ -60,9 +60,9 @@ public void setupAnim(T entity, float limbSwing, float limbSwingAmount, float ag } @Override - public void renderToBuffer(PoseStack poseStack, VertexConsumer vertices, int light, int overlay, int color) { - Body.render(poseStack, vertices, light, overlay); - Left_mandible.render(poseStack, vertices, light, overlay); - Right_Mandible.render(poseStack, vertices, light, overlay); + public void renderToBuffer(PoseStack poseStack, VertexConsumer buffer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha) { + Body.render(poseStack, buffer, packedLight, packedOverlay); + Left_mandible.render(poseStack, buffer, packedLight, packedOverlay); + Right_Mandible.render(poseStack, buffer, packedLight, packedOverlay); } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/client/model/entity/RumblerEntityModel.java b/src/main/java/dev/galacticraft/mod/client/model/entity/RumblerEntityModel.java index c6a6a0b6df..53cebe3135 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/entity/RumblerEntityModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/entity/RumblerEntityModel.java @@ -32,25 +32,25 @@ public class RumblerEntityModel extends EntityModel { private final ModelPart body; - private final ModelPart leftClaw; - private final ModelPart rightClaw; - private final ModelPart frontLeftLeg; - private final ModelPart middleLeftLeg; - private final ModelPart backLeftLeg; - private final ModelPart frontRightLeg; - private final ModelPart middleRightLeg; - private final ModelPart backRightLeg; + private final ModelPart Left_Claw; + private final ModelPart Right_Claw; + private final ModelPart Front_Left_Leg; + private final ModelPart Middle_Left_Leg; + private final ModelPart Back_Left_Leg; + private final ModelPart Front_Right_Leg; + private final ModelPart Middle_Right_Leg; + private final ModelPart Back_Right_Leg; public RumblerEntityModel(ModelPart root) { this.body = root.getChild("body"); - this.leftClaw = root.getChild("Left_Claw"); - this.rightClaw = root.getChild("Right_Claw"); - this.frontLeftLeg = root.getChild("Front_Left_Leg"); - this.middleLeftLeg = root.getChild("Middle_Left_Leg"); - this.backLeftLeg = root.getChild("Back_Left_Leg"); - this.frontRightLeg = root.getChild("Front_Right_Leg"); - this.middleRightLeg = root.getChild("Middle_Right_Leg"); - this.backRightLeg = root.getChild("Back_Right_Leg"); + this.Left_Claw = root.getChild("Left_Claw"); + this.Right_Claw = root.getChild("Right_Claw"); + this.Front_Left_Leg = root.getChild("Front_Left_Leg"); + this.Middle_Left_Leg = root.getChild("Middle_Left_Leg"); + this.Back_Left_Leg = root.getChild("Back_Left_Leg"); + this.Front_Right_Leg = root.getChild("Front_Right_Leg"); + this.Middle_Right_Leg = root.getChild("Middle_Right_Leg"); + this.Back_Right_Leg = root.getChild("Back_Right_Leg"); } public static LayerDefinition createBodyLayer() { @@ -89,15 +89,15 @@ public void setupAnim(T entity, float limbSwing, float limbSwingAmount, float ag } @Override - public void renderToBuffer(PoseStack poseStack, VertexConsumer vertices, int light, int overlay, int color) { - body.render(poseStack, vertices, light, overlay); - leftClaw.render(poseStack, vertices, light, overlay); - rightClaw.render(poseStack, vertices, light, overlay); - frontLeftLeg.render(poseStack, vertices, light, overlay); - middleLeftLeg.render(poseStack, vertices, light, overlay); - backLeftLeg.render(poseStack, vertices, light, overlay); - frontRightLeg.render(poseStack, vertices, light, overlay); - middleRightLeg.render(poseStack, vertices, light, overlay); - backRightLeg.render(poseStack, vertices, light, overlay); + public void renderToBuffer(PoseStack poseStack, VertexConsumer buffer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha) { + body.render(poseStack, buffer, packedLight, packedOverlay); + Left_Claw.render(poseStack, buffer, packedLight, packedOverlay); + Right_Claw.render(poseStack, buffer, packedLight, packedOverlay); + Front_Left_Leg.render(poseStack, buffer, packedLight, packedOverlay); + Middle_Left_Leg.render(poseStack, buffer, packedLight, packedOverlay); + Back_Left_Leg.render(poseStack, buffer, packedLight, packedOverlay); + Front_Right_Leg.render(poseStack, buffer, packedLight, packedOverlay); + Middle_Right_Leg.render(poseStack, buffer, packedLight, packedOverlay); + Back_Right_Leg.render(poseStack, buffer, packedLight, packedOverlay); } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/client/model/types/ObjModel.java b/src/main/java/dev/galacticraft/mod/client/model/types/ObjModel.java index 48b36e117b..ae54c7a88f 100644 --- a/src/main/java/dev/galacticraft/mod/client/model/types/ObjModel.java +++ b/src/main/java/dev/galacticraft/mod/client/model/types/ObjModel.java @@ -22,7 +22,7 @@ package dev.galacticraft.mod.client.model.types; -import com.mojang.serialization.MapCodec; +import com.mojang.serialization.Codec; import com.mojang.serialization.codecs.RecordCodecBuilder; import de.javagl.obj.Mtl; import de.javagl.obj.MtlReader; @@ -32,7 +32,7 @@ import dev.galacticraft.mod.client.model.BakedObjModel; import dev.galacticraft.mod.client.model.GCBakedModel; import dev.galacticraft.mod.client.model.GCModel; -import dev.galacticraft.mod.client.model.GCRenderTypes; +import dev.galacticraft.mod.client.model.GCSheets; import net.minecraft.client.renderer.texture.TextureAtlasSprite; import net.minecraft.client.resources.model.Material; import net.minecraft.resources.ResourceLocation; @@ -70,7 +70,7 @@ public GCBakedModel bake(ResourceManager resourceManager, Function bakedMaterials = new ArrayList<>(); for (Mtl material : materials) { if (material.getMapKdOptions() != null && material.getMapKdOptions().getFileName() != null) - bakedMaterials.add(new BakedMaterial(material, spriteGetter.apply(new Material(atlas.orElse(GCRenderTypes.OBJ_ATLAS), ResourceLocation.parse(material.getMapKdOptions().getFileName()))))); + bakedMaterials.add(new BakedMaterial(material, spriteGetter.apply(new Material(atlas.orElse(GCSheets.OBJ_ATLAS), new ResourceLocation(material.getMapKdOptions().getFileName()))))); } return new BakedObjModel(obj, bakedMaterials); @@ -83,14 +83,14 @@ public record BakedMaterial(Mtl material, TextureAtlasSprite sprite) {} public static class ObjType implements GCModelType { public static final ResourceLocation ID = Constant.id("obj"); - public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group( + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( ResourceLocation.CODEC.fieldOf("model").forGetter(o -> o.model), ResourceLocation.CODEC.fieldOf("mtl").forGetter(o -> o.material), ResourceLocation.CODEC.optionalFieldOf("atlas").forGetter(o -> o.atlas) ).apply(instance, ObjModel::new)); @Override - public MapCodec codec() { + public Codec codec() { return CODEC; } diff --git a/src/main/java/dev/galacticraft/mod/client/network/GCClientPacketReceiver.java b/src/main/java/dev/galacticraft/mod/client/network/GCClientPacketReceiver.java index 6ac73f8310..e192b88cfe 100644 --- a/src/main/java/dev/galacticraft/mod/client/network/GCClientPacketReceiver.java +++ b/src/main/java/dev/galacticraft/mod/client/network/GCClientPacketReceiver.java @@ -22,26 +22,68 @@ package dev.galacticraft.mod.client.network; -import dev.galacticraft.impl.network.s2c.S2CPayload; -import dev.galacticraft.mod.network.s2c.*; +import dev.galacticraft.api.registry.AddonRegistries; +import dev.galacticraft.api.rocket.RocketData; +import dev.galacticraft.mod.Constant; +import dev.galacticraft.mod.Constant.Packet; +import dev.galacticraft.mod.client.gui.screen.ingame.CelestialSelectionScreen; +import dev.galacticraft.mod.content.block.entity.machine.OxygenBubbleDistributorBlockEntity; +import dev.galacticraft.mod.content.item.GCItems; +import dev.galacticraft.mod.network.GCScreenType; +import dev.galacticraft.mod.network.packets.*; +import net.fabricmc.api.EnvType; +import net.fabricmc.api.Environment; import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import net.fabricmc.fabric.api.networking.v1.PacketType; +import net.minecraft.core.BlockPos; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.world.level.block.entity.BlockEntity; + +import java.util.Objects; /** * Handles client-bound (S2C) packets - */ += */ +@Environment(EnvType.CLIENT) public class GCClientPacketReceiver { public static void register() { - register(BubbleSizePayload.TYPE); - register(BubbleUpdatePayload.TYPE); - register(OpenCelestialScreenPayload.TYPE); - register(RocketSpawnPacket.TYPE); - register(FootprintPacket.TYPE); - register(FootprintRemovedPacket.TYPE); - register(ResetPerspectivePacket.TYPE); + ClientPlayNetworking.registerGlobalReceiver(Packet.BUBBLE_SIZE, (client, handler, buf, responseSender) -> { + FriendlyByteBuf buffer = new FriendlyByteBuf(buf.copy()); + client.execute(() -> { + BlockPos pos = buffer.readBlockPos(); + if (client.level.hasChunk(pos.getX() >> 4, pos.getZ() >> 4)) { + BlockEntity entity = client.level.getBlockEntity(pos); + if (entity instanceof OxygenBubbleDistributorBlockEntity machine) { + machine.setSize(buffer.readDouble()); + } + } + }); + }); + + ClientPlayNetworking.registerGlobalReceiver(Packet.OPEN_SCREEN, (client, handler, buf, responseSender) -> { + var screen = buf.readEnum(GCScreenType.class); + switch (screen) { + case CELESTIAL -> { + boolean mapMode = buf.readBoolean(); + client.execute(() -> client.setScreen(new CelestialSelectionScreen(mapMode, RocketData.fromNbt(GCItems.ROCKET.getDefaultInstance().getTag()), true, null))); + } + default -> Constant.LOGGER.error("No screen found with id '{}'!", screen); + } + }); + + ClientPlayNetworking.registerGlobalReceiver(Packet.PLANET_MENU_PACKET, (minecraftClient, clientPlayNetworkHandler, buf, packetSender) -> { + RocketData rocketData = RocketData.fromNbt(Objects.requireNonNull(buf.readNbt())); + int cBody = buf.readInt(); + minecraftClient.execute(() -> minecraftClient.setScreen(new CelestialSelectionScreen(false, rocketData, true, cBody == -1 ? null : clientPlayNetworkHandler.registryAccess().registryOrThrow(AddonRegistries.CELESTIAL_BODY).getHolder(cBody).orElseThrow().value()))); + }); + + registerPacket(RocketSpawnPacket.TYPE); + registerPacket(FootprintPacket.TYPE); + registerPacket(FootprintRemovedPacket.TYPE); + registerPacket(ResetThirdPersonPacket.TYPE); } - public static

void register(CustomPacketPayload.Type

type) { - ClientPlayNetworking.registerGlobalReceiver(type, (payload, context) -> context.client().execute(payload.handle(context))); + public static void registerPacket(PacketType type) { + ClientPlayNetworking.registerGlobalReceiver(type, GCPacket::handle); } } diff --git a/src/main/java/dev/galacticraft/mod/client/particle/AcidVaporParticle.java b/src/main/java/dev/galacticraft/mod/client/particle/AcidVaporParticle.java index f471c14241..a5862b0a8b 100644 --- a/src/main/java/dev/galacticraft/mod/client/particle/AcidVaporParticle.java +++ b/src/main/java/dev/galacticraft/mod/client/particle/AcidVaporParticle.java @@ -97,7 +97,7 @@ public void tick() { public record Provider(SpriteSet sprites) implements ParticleProvider { @Override public Particle createParticle(ScaleParticleType type, ClientLevel level, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed) { - return new AcidVaporParticle(level, x, y, z, xSpeed, ySpeed, zSpeed, sprites, type.getScale()); + return new AcidVaporParticle(level, x, y, z, xSpeed, ySpeed, zSpeed, sprites, type.scale()); } } } diff --git a/src/main/java/dev/galacticraft/mod/client/particle/LaunchFlameParticle.java b/src/main/java/dev/galacticraft/mod/client/particle/LaunchFlameParticle.java index 7a18a724eb..b177d0d8b6 100644 --- a/src/main/java/dev/galacticraft/mod/client/particle/LaunchFlameParticle.java +++ b/src/main/java/dev/galacticraft/mod/client/particle/LaunchFlameParticle.java @@ -55,7 +55,7 @@ public LaunchFlameParticle(ClientLevel level, double posX, double posY, double p this.lifetime = (int) (this.lifetime * 1F); this.hasPhysics = true; this.spawnSmokeShort = launched; - this.ridingEntity = particleData.getUuid(); + this.ridingEntity = particleData.getEntityUUID(); this.sprites = sprites; this.setSpriteFromAge(sprites); } @@ -121,7 +121,7 @@ public void tick() { if (entities != null) { for (Entity entity : entities) { if (entity instanceof LivingEntity && entity.isAlive() && !entity.isOnFire() && !entity.getUUID().equals(this.ridingEntity)) { - entity.igniteForSeconds(3); + entity.setSecondsOnFire(3); // GalacticraftCore.packetPipeline.sendToServer(new PacketSimple(EnumSimplePacket.S_SET_ENTITY_FIRE, GCCoreUtil.getDimensionType(entity.level()), new Object[]{entity.getEntityId()})); } } diff --git a/src/main/java/dev/galacticraft/mod/client/particle/LaunchParticle.java b/src/main/java/dev/galacticraft/mod/client/particle/LaunchParticle.java index 913f737828..9b6b7ffbbf 100644 --- a/src/main/java/dev/galacticraft/mod/client/particle/LaunchParticle.java +++ b/src/main/java/dev/galacticraft/mod/client/particle/LaunchParticle.java @@ -24,9 +24,13 @@ import net.minecraft.client.multiplayer.ClientLevel; import net.minecraft.client.particle.TextureSheetParticle; +import net.minecraft.util.Mth; import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.AABB; import net.minecraft.world.phys.Vec3; +import java.util.LinkedList; import java.util.List; public abstract class LaunchParticle extends TextureSheetParticle { diff --git a/src/main/java/dev/galacticraft/mod/client/particle/LaunchSmokeParticle.java b/src/main/java/dev/galacticraft/mod/client/particle/LaunchSmokeParticle.java index cd26efa095..c59d1e3a5e 100644 --- a/src/main/java/dev/galacticraft/mod/client/particle/LaunchSmokeParticle.java +++ b/src/main/java/dev/galacticraft/mod/client/particle/LaunchSmokeParticle.java @@ -31,6 +31,7 @@ import net.minecraft.client.particle.ParticleProvider; import net.minecraft.client.particle.ParticleRenderType; import net.minecraft.client.particle.SpriteSet; +import net.minecraft.core.particles.SimpleParticleType; public class LaunchSmokeParticle extends LaunchParticle { float smokeParticleScale; @@ -108,7 +109,7 @@ public void tick() { public record Provider(SpriteSet sprites) implements ParticleProvider { @Override public Particle createParticle(LaunchSmokeParticleOption option, ClientLevel level, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed) { - return new LaunchSmokeParticle(level, x, y, z, xSpeed, ySpeed, zSpeed, option.scale(), option.launched(), this.sprites); + return new LaunchSmokeParticle(level, x, y, z, xSpeed, ySpeed, zSpeed, option.getScale(), option.isLaunched(), this.sprites); } } } diff --git a/src/main/java/dev/galacticraft/mod/client/render/FootprintRenderer.java b/src/main/java/dev/galacticraft/mod/client/render/FootprintRenderer.java index b87ecf2eaf..4da893c7b0 100644 --- a/src/main/java/dev/galacticraft/mod/client/render/FootprintRenderer.java +++ b/src/main/java/dev/galacticraft/mod/client/render/FootprintRenderer.java @@ -46,7 +46,7 @@ public class FootprintRenderer { public static void renderFootprints(WorldRenderContext context) { context.profiler().push("footprints"); PoseStack poseStack = context.matrixStack(); - ResourceLocation dimActive = context.world().dimensionTypeRegistration().unwrapKey().get().location(); + ResourceLocation dimActive = context.world().dimensionTypeId().location(); List footprintsToDraw = new LinkedList<>(); for (List footprintList : context.world().galacticraft$getFootprintManager().getFootprints().values()) { @@ -96,8 +96,9 @@ public static void renderFootprints(WorldRenderContext context) { // } float ageScale = footprint.age / (float) Footprint.MAX_AGE; - BufferBuilder buffer = tessellator.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); + BufferBuilder worldRenderer = tessellator.getBuilder(); RenderSystem.setShader(GameRenderer::getPositionTexShader); + worldRenderer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); Vec3 cameraPos = context.camera().getPosition(); float x = (float) (footprint.position.x - cameraPos.x); @@ -109,17 +110,20 @@ public static void renderFootprints(WorldRenderContext context) { RenderSystem.setShaderColor(1F - ageScale, 1F - ageScale, 1F - ageScale, 1F - ageScale); float footprintScale = 0.5F; Matrix4f last = poseStack.last().pose(); - buffer - .addVertex(last, Mth.sin((45 - footprint.rotation) / Mth.RAD_TO_DEG) * footprintScale, 0, Mth.cos((45 - footprint.rotation) / Mth.RAD_TO_DEG) * footprintScale) - .setUv(f7, f9) - .addVertex(last, Mth.sin((135 - footprint.rotation) / Mth.RAD_TO_DEG) * footprintScale, 0, Mth.cos((135 - footprint.rotation) / Mth.RAD_TO_DEG) * footprintScale) - .setUv(f7, f8) - .addVertex(last, Mth.sin((225 - footprint.rotation) / Mth.RAD_TO_DEG) * footprintScale, 0, Mth.cos((225 - footprint.rotation) / Mth.RAD_TO_DEG) * footprintScale) - .setUv(f6, f8) - .addVertex(last, Mth.sin((315 - footprint.rotation) / Mth.RAD_TO_DEG) * footprintScale, 0, Mth.cos((315 - footprint.rotation) / Mth.RAD_TO_DEG) * footprintScale) - .setUv(f6, f9); - - BufferUploader.drawWithShader(buffer.buildOrThrow()); + worldRenderer + .vertex(last, Mth.sin((45 - footprint.rotation) / Mth.RAD_TO_DEG) * footprintScale, 0, Mth.cos((45 - footprint.rotation) / Mth.RAD_TO_DEG) * footprintScale) + .uv(f7, f9).endVertex(); + worldRenderer + .vertex(last, Mth.sin((135 - footprint.rotation) / Mth.RAD_TO_DEG) * footprintScale, 0, Mth.cos((135 - footprint.rotation) / Mth.RAD_TO_DEG) * footprintScale) + .uv(f7, f8).endVertex(); + worldRenderer + .vertex(last, Mth.sin((225 - footprint.rotation) / Mth.RAD_TO_DEG) * footprintScale, 0, Mth.cos((225 - footprint.rotation) / Mth.RAD_TO_DEG) * footprintScale) + .uv(f6, f8).endVertex(); + worldRenderer + .vertex(last, Mth.sin((315 - footprint.rotation) / Mth.RAD_TO_DEG) * footprintScale, 0, Mth.cos((315 - footprint.rotation) / Mth.RAD_TO_DEG) * footprintScale) + .uv(f6, f9).endVertex(); + + tessellator.end(); poseStack.popPose(); } @@ -131,15 +135,15 @@ public static void renderFootprints(WorldRenderContext context) { context.profiler().pop(); } - public static void setFootprints(long chunk, List prints) { + public static void setFootprints(long chunkKey, List prints) { FootprintManager manager = Minecraft.getInstance().level.galacticraft$getFootprintManager(); - List footprintList = manager.getFootprints().get(chunk); + List footprintList = manager.getFootprints().get(chunkKey); if (footprintList == null) { footprintList = new ArrayList<>(); } footprintList.addAll(prints); - manager.getFootprints().put(chunk, footprintList); + manager.getFootprints().put(chunkKey, footprintList); } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/client/render/block/entity/BasicSolarPanelBlockEntityRenderer.java b/src/main/java/dev/galacticraft/mod/client/render/block/entity/BasicSolarPanelBlockEntityRenderer.java index b0d075345a..6b22b89ba2 100644 --- a/src/main/java/dev/galacticraft/mod/client/render/block/entity/BasicSolarPanelBlockEntityRenderer.java +++ b/src/main/java/dev/galacticraft/mod/client/render/block/entity/BasicSolarPanelBlockEntityRenderer.java @@ -76,17 +76,17 @@ public void render(BasicSolarPanelBlockEntity blockEntity, float tickDelta, Pose matrices.pushPose(); matrices.translate(0.5F, 1.0F, 0.5F); RenderSystem.setShaderTexture(0, BasicSolarPanelBlockEntityRenderer.TEXTURE); - this.render(matrices, vertexConsumers.getBuffer(RenderType.entityCutout(TEXTURE)), light, overlay); + this.render(matrices, vertexConsumers.getBuffer(RenderType.entityCutout(TEXTURE)), light, overlay, 1.0F, 1.0F, 1.0F, 1.0F); matrices.popPose(); } - public void render(PoseStack matrices, VertexConsumer vertexConsumer, int light, int overlay) { - this.pole.render(matrices, vertexConsumer, light, overlay); + public void render(PoseStack matrices, VertexConsumer vertexConsumer, int light, int overlay, float red, float green, float blue, float alpha) { + this.pole.render(matrices, vertexConsumer, light, overlay, red, green, blue, alpha); matrices.translate(0.0F, 1.5F, 0.0F); matrices.mulPose(Axis.ZP.rotationDegrees(180.0F)); matrices.mulPose(Axis.YP.rotationDegrees(-90.0F)); - this.panel.render(matrices, vertexConsumer, light, overlay); + this.panel.render(matrices, vertexConsumer, light, overlay, red, green, blue, alpha); } } diff --git a/src/main/java/dev/galacticraft/mod/client/render/dimension/CelestialBodyTextures.java b/src/main/java/dev/galacticraft/mod/client/render/dimension/CelestialBodyTextures.java index d1c081a14d..8f3ff59f5f 100644 --- a/src/main/java/dev/galacticraft/mod/client/render/dimension/CelestialBodyTextures.java +++ b/src/main/java/dev/galacticraft/mod/client/render/dimension/CelestialBodyTextures.java @@ -27,7 +27,7 @@ public final class CelestialBodyTextures { public static final ResourceLocation ATMOSPHERIC_SUN = Constant.id("textures/gui/planets/atmosphericsun.png"); - public static final ResourceLocation SUN = ResourceLocation.withDefaultNamespace("textures/environment/sun.png"); + public static final ResourceLocation SUN = new ResourceLocation("textures/environment/sun.png"); public static final ResourceLocation EARTH = Constant.id("textures/gui/celestialbodies/earth.png"); private CelestialBodyTextures() {} diff --git a/src/main/java/dev/galacticraft/mod/client/render/dimension/MoonSkyRenderer.java b/src/main/java/dev/galacticraft/mod/client/render/dimension/MoonSkyRenderer.java index e0516f7988..659e7c6ed8 100644 --- a/src/main/java/dev/galacticraft/mod/client/render/dimension/MoonSkyRenderer.java +++ b/src/main/java/dev/galacticraft/mod/client/render/dimension/MoonSkyRenderer.java @@ -43,16 +43,16 @@ public void render(WorldRenderContext context) { RenderSystem.disableBlend(); RenderSystem.depthMask(false); - PoseStack matrices = new PoseStack(); - matrices.mulPose(context.positionMatrix()); + final PoseStack matrices = context.matrixStack(); + final BufferBuilder buffer = Tesselator.getInstance().getBuilder(); context.profiler().push("stars"); matrices.pushPose(); matrices.mulPose(Axis.YP.rotationDegrees(-90.0F)); - matrices.mulPose(Axis.XP.rotationDegrees(context.world().getTimeOfDay(context.tickCounter().getRealtimeDeltaTicks()) * 360.0f)); + matrices.mulPose(Axis.XP.rotationDegrees(context.world().getTimeOfDay(context.tickDelta()) * 360.0f)); matrices.mulPose(Axis.YP.rotationDegrees(-19.0F)); - this.starManager.render(matrices, context.projectionMatrix(), context.world(), context.tickCounter().getRealtimeDeltaTicks()); + this.starManager.render(context.matrixStack(), context.projectionMatrix(), context.world(), context.tickDelta()); matrices.popPose(); context.profiler().pop(); @@ -61,19 +61,19 @@ public void render(WorldRenderContext context) { matrices.pushPose(); matrices.mulPose(Axis.YP.rotationDegrees(-90.0F)); - matrices.mulPose(Axis.XP.rotationDegrees(context.world().getTimeOfDay(context.tickCounter().getRealtimeDeltaTicks()) * 360.0f)); + matrices.mulPose(Axis.XP.rotationDegrees(context.world().getTimeOfDay(context.tickDelta()) * 360.0f)); Matrix4f matrix = matrices.last().pose(); RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 1.0F); float size = 15.0F; RenderSystem.setShader(GameRenderer::getPositionTexShader); RenderSystem.setShaderTexture(0, SUN_TEXTURE); - BufferBuilder buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); - buffer.addVertex(matrix, -size, 100.0F, -size).setUv(0.0F, 0.0F) - .addVertex(matrix, size, 100.0F, -size).setUv(1.0F, 0.0F) - .addVertex(matrix, size, 100.0F, size).setUv(1.0F, 1.0F) - .addVertex(matrix, -size, 100.0F, size).setUv(0.0F, 1.0F); - BufferUploader.drawWithShader(buffer.buildOrThrow()); + buffer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); + buffer.vertex(matrix, -size, 100.0F, -size).uv(0.0F, 0.0F).endVertex(); + buffer.vertex(matrix, size, 100.0F, -size).uv(1.0F, 0.0F).endVertex(); + buffer.vertex(matrix, size, 100.0F, size).uv(1.0F, 1.0F).endVertex(); + buffer.vertex(matrix, -size, 100.0F, size).uv(0.0F, 1.0F).endVertex(); + BufferUploader.drawWithShader(buffer.end()); matrices.popPose(); context.profiler().pop(); @@ -86,17 +86,17 @@ public void render(WorldRenderContext context) { assert Minecraft.getInstance().player != null; float earthRotation = (float) (context.world().getSharedSpawnPos().getZ() - Minecraft.getInstance().player.getZ()) * 0.01F; matrices.scale(0.6F, 0.6F, 0.6F); - matrices.mulPose(Axis.XP.rotationDegrees((context.world().getTimeOfDay(context.tickCounter().getRealtimeDeltaTicks()) * 360.0F) * 0.001F)); + matrices.mulPose(Axis.XP.rotationDegrees((context.world().getTimeOfDay(context.tickDelta()) * 360.0F) * 0.001F)); matrices.mulPose(Axis.XP.rotationDegrees(earthRotation + 200.0F)); RenderSystem.setShaderTexture(0, EARTH_TEXTURE); - buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); - buffer.addVertex(matrix, -size, -100.0F, size).setUv(0.0F, 1.0F) - .addVertex(matrix, size, -100.0F, size).setUv(1.0F, 1.0F) - .addVertex(matrix, size, -100.0F, -size).setUv(1.0F, 0.0F) - .addVertex(matrix, -size, -100.0F, -size).setUv(0.0F, 0.0F); - BufferUploader.drawWithShader(buffer.buildOrThrow()); + buffer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); + buffer.vertex(matrix, -size, -100.0F, size).uv(0.0F, 1.0F).endVertex(); + buffer.vertex(matrix, size, -100.0F, size).uv(1.0F, 1.0F).endVertex(); + buffer.vertex(matrix, size, -100.0F, -size).uv(1.0F, 0.0F).endVertex(); + buffer.vertex(matrix, -size, -100.0F, -size).uv(0.0F, 0.0F).endVertex(); + BufferUploader.drawWithShader(buffer.end()); context.profiler().pop(); matrices.popPose(); diff --git a/src/main/java/dev/galacticraft/mod/client/render/dimension/OverworldRenderer.java b/src/main/java/dev/galacticraft/mod/client/render/dimension/OverworldRenderer.java index d81a5a4c27..321026cc5b 100644 --- a/src/main/java/dev/galacticraft/mod/client/render/dimension/OverworldRenderer.java +++ b/src/main/java/dev/galacticraft/mod/client/render/dimension/OverworldRenderer.java @@ -43,7 +43,7 @@ // TODO: Allow support for more planets public class OverworldRenderer { - public static final ResourceLocation MOON_LOCATION = ResourceLocation.withDefaultNamespace("textures/environment/moon_phases.png"); + public static final ResourceLocation MOON_LOCATION = new ResourceLocation("textures/environment/moon_phases.png"); @Nullable private VertexBuffer starBuffer; @Nullable @@ -55,6 +55,8 @@ public class OverworldRenderer { private Minecraft minecraft = Minecraft.getInstance(); public OverworldRenderer() { RandomSource rand = RandomSource.create(10842L); + Tesselator tessellator = Tesselator.getInstance(); + BufferBuilder worldrenderer = tessellator.getBuilder(); RenderSystem.setShader(GameRenderer::getPositionShader); if (this.starBuffer != null) { this.starBuffer.close(); @@ -62,19 +64,19 @@ public OverworldRenderer() { this.starBuffer = new VertexBuffer(VertexBuffer.Usage.STATIC); this.starBuffer.bind(); - this.starBuffer.upload(this.renderStars(rand)); + this.starBuffer.upload(this.renderStars(worldrenderer, rand)); VertexBuffer.unbind(); this.starBuffer2 = new VertexBuffer(VertexBuffer.Usage.STATIC); this.starBuffer2.bind(); - this.starBuffer2.upload(this.renderStars(rand)); + this.starBuffer2.upload(this.renderStars(worldrenderer, rand)); VertexBuffer.unbind(); this.starBuffer3 = new VertexBuffer(VertexBuffer.Usage.STATIC); this.starBuffer3.bind(); - this.starBuffer3.upload(this.renderStars(rand)); + this.starBuffer3.upload(this.renderStars(worldrenderer, rand)); VertexBuffer.unbind(); this.starBuffer4 = new VertexBuffer(VertexBuffer.Usage.STATIC); this.starBuffer4.bind(); - this.starBuffer4.upload(this.renderStars(rand)); + this.starBuffer4.upload(this.renderStars(worldrenderer, rand)); VertexBuffer.unbind(); } public void renderOverworldSky(Player player, PoseStack poseStack, Matrix4f matrix4f, float partialTicks, Camera camera, boolean bl, Runnable runnable) { @@ -89,6 +91,8 @@ public void renderOverworldSky(Player player, PoseStack poseStack, Matrix4f matr FogRenderer.levelFogColor(); RenderSystem.setShaderColor(i, x, var5, 1.0F); + final Tesselator tesselator = Tesselator.getInstance(); + BufferBuilder worldRenderer = tesselator.getBuilder(); RenderSystem.depthMask(false); RenderSystem.setShaderColor(i, x, var5, 1.0F); RenderSystem.enableBlend(); @@ -112,19 +116,19 @@ public void renderOverworldSky(Player player, PoseStack poseStack, Matrix4f matr size = sunriseColors[2] * sunsetModInv; float rand3; - BufferBuilder buffer = Tesselator.getInstance().begin(VertexFormat.Mode.TRIANGLE_FAN, DefaultVertexFormat.POSITION_COLOR); + worldRenderer.begin(VertexFormat.Mode.TRIANGLE_FAN, DefaultVertexFormat.POSITION_COLOR); - buffer.addVertex(0.0F, 100.0F, 0.0F).setColor(z * sunsetModInv, var9 * sunsetModInv, size * sunsetModInv, sunriseColors[3]); + worldRenderer.vertex(0.0D, 100.0D, 0.0D).color(z * sunsetModInv, var9 * sunsetModInv, size * sunsetModInv, sunriseColors[3]).endVertex(); final byte phi = 16; for (int var27 = 0; var27 <= phi; ++var27) { rand3 = (float) (var27 * (Math.PI * 2) / phi); final float xx = Mth.sin(rand3); final float rand5 = Mth.cos(rand3); - buffer.addVertex(xx * 120.0F, rand5 * 120.0F, -rand5 * 40.0F * sunriseColors[3]).setColor(sunriseColors[0] * sunsetModInv, sunriseColors[1] * sunsetModInv, sunriseColors[2] * sunsetModInv, 0.0F); + worldRenderer.vertex(xx * 120.0F, rand5 * 120.0F, -rand5 * 40.0F * sunriseColors[3]).color(sunriseColors[0] * sunsetModInv, sunriseColors[1] * sunsetModInv, sunriseColors[2] * sunsetModInv, 0.0F).endVertex(); } - BufferUploader.drawWithShader(buffer.buildOrThrow()); + tesselator.end(); poseStack.popPose(); } @@ -187,12 +191,12 @@ public void renderOverworldSky(Player player, PoseStack poseStack, Matrix4f matr RenderSystem.setShaderTexture(0, CelestialBodyTextures.SUN); RenderSystem.setShader(GameRenderer::getPositionTexShader); Matrix4f matrix4f1 = poseStack.last().pose(); - BufferBuilder buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); - buffer.addVertex(matrix4f1, -r, 100.0F, -r).setUv(0.0F, 0.0F) - .addVertex(matrix4f1, r, 100.0F, -r).setUv(1.0F, 0.0F) - .addVertex(matrix4f1, r, 100.0F, r).setUv(1.0F, 1.0F) - .addVertex(matrix4f1, -r, 100.0F, r).setUv(0.0F, 1.0F); - BufferUploader.drawWithShader(buffer.buildOrThrow()); + worldRenderer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); + worldRenderer.vertex(matrix4f1, -r, 100.0F, -r).uv(0.0F, 0.0F).endVertex(); + worldRenderer.vertex(matrix4f1, r, 100.0F, -r).uv(1.0F, 0.0F).endVertex(); + worldRenderer.vertex(matrix4f1, r, 100.0F, r).uv(1.0F, 1.0F).endVertex(); + worldRenderer.vertex(matrix4f1, -r, 100.0F, r).uv(0.0F, 1.0F).endVertex(); + tesselator.end(); // Draw moon r = 40.0F; @@ -204,12 +208,12 @@ public void renderOverworldSky(Player player, PoseStack poseStack, Matrix4f matr final float rand7 = (var29) / 2.0F; final float zz = (cosphi + 1) / 4.0F; final float rand9 = (var29 + 1) / 2.0F; - buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); - buffer.addVertex(matrix4f1, -r, -100.0F, r).setUv(zz, rand9) - .addVertex(matrix4f1, r, -100.0F, r).setUv(yy, rand9) - .addVertex(matrix4f1, r, -100.0F, -r).setUv(yy, rand7) - .addVertex(matrix4f1, -r, -100.0F, -r).setUv(zz, rand7); - BufferUploader.drawWithShader(buffer.buildOrThrow()); + worldRenderer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); + worldRenderer.vertex(matrix4f1, -r, -100.0F, r).uv(zz, rand9).endVertex(); + worldRenderer.vertex(matrix4f1, r, -100.0F, r).uv(yy, rand9).endVertex(); + worldRenderer.vertex(matrix4f1, r, -100.0F, -r).uv(yy, rand7).endVertex(); + worldRenderer.vertex(matrix4f1, -r, -100.0F, -r).uv(zz, rand7).endVertex(); + tesselator.end(); RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 1.0F); RenderSystem.disableBlend(); @@ -234,16 +238,16 @@ public void renderOverworldSky(Player player, PoseStack poseStack, Matrix4f matr size = 1.0F; RenderSystem.setShaderColor(sinth, sinth, sinth, 1.0F); - buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); + worldRenderer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); float zoomIn = 0.0F; float cornerB = 1.0F - zoomIn; Matrix4f matrix4f2 = poseStack.last().pose(); - buffer.addVertex(matrix4f2, -size, 0, size).setUv(zoomIn, cornerB) - .addVertex(matrix4f2, size, 0, size).setUv(cornerB, cornerB) - .addVertex(matrix4f2, size, 0, -size).setUv(cornerB, zoomIn) - .addVertex(matrix4f2, -size, 0, -size).setUv(zoomIn, zoomIn); - BufferUploader.drawWithShader(buffer.buildOrThrow()); + worldRenderer.vertex(matrix4f2, -size, 0, size).uv(zoomIn, cornerB).endVertex(); + worldRenderer.vertex(matrix4f2, size, 0, size).uv(cornerB, cornerB).endVertex(); + worldRenderer.vertex(matrix4f2, size, 0, -size).uv(cornerB, zoomIn).endVertex(); + worldRenderer.vertex(matrix4f2, -size, 0, -size).uv(zoomIn, zoomIn).endVertex(); + tesselator.end(); poseStack.popPose(); } @@ -272,9 +276,9 @@ public static Vec3 getFogColor(ClientLevel level, Camera camera, float f) { } // TODO: Move this to a common place - private MeshData renderStars(RandomSource rand) { + private BufferBuilder.RenderedBuffer renderStars(BufferBuilder worldRenderer, RandomSource rand) { RenderSystem.setShader(GameRenderer::getPositionShader); - BufferBuilder buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION); + worldRenderer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION); for (int i = 0; i < 4000; ++i) { double x = rand.nextFloat() * 2.0F - 1.0F; @@ -311,10 +315,10 @@ private MeshData renderStars(RandomSource rand) { final double ff = a * sinphi - d * cosphi; final double dx = ff * sinth - e * costh; final double dz = e * sinth + ff * costh; - buffer.addVertex((float) (xx + dx), (float) (yy + dy), (float) (zz + dz)); + worldRenderer.vertex(xx + dx, yy + dy, zz + dz).endVertex(); } } } - return buffer.buildOrThrow(); + return worldRenderer.end(); } } diff --git a/src/main/java/dev/galacticraft/mod/client/render/dimension/SpaceSkyRenderer.java b/src/main/java/dev/galacticraft/mod/client/render/dimension/SpaceSkyRenderer.java index 8d9bec7978..524d7e169a 100644 --- a/src/main/java/dev/galacticraft/mod/client/render/dimension/SpaceSkyRenderer.java +++ b/src/main/java/dev/galacticraft/mod/client/render/dimension/SpaceSkyRenderer.java @@ -32,16 +32,15 @@ public class SpaceSkyRenderer implements DimensionRenderingRegistry.SkyRenderer @Override public void render(WorldRenderContext context) { - PoseStack matrices = new PoseStack(); - matrices.mulPose(context.positionMatrix()); + final PoseStack matrices = context.matrixStack(); context.profiler().push("stars"); matrices.pushPose(); matrices.mulPose(Axis.YP.rotationDegrees(-90.0F)); - matrices.mulPose(Axis.XP.rotationDegrees(context.world().getTimeOfDay(context.tickCounter().getRealtimeDeltaTicks()) * 360.0f)); + matrices.mulPose(Axis.XP.rotationDegrees(context.world().getTimeOfDay(context.tickDelta()) * 360.0f)); matrices.mulPose(Axis.YP.rotationDegrees(-19.0F)); - this.starManager.render(context.matrixStack(), context.projectionMatrix(), context.world(), context.tickCounter().getRealtimeDeltaTicks()); + this.starManager.render(context.matrixStack(), context.projectionMatrix(), context.world(), context.tickDelta()); matrices.popPose(); context.profiler().pop(); diff --git a/src/main/java/dev/galacticraft/mod/client/render/dimension/StarManager.java b/src/main/java/dev/galacticraft/mod/client/render/dimension/StarManager.java index 5097aeabec..1eb6fdff78 100644 --- a/src/main/java/dev/galacticraft/mod/client/render/dimension/StarManager.java +++ b/src/main/java/dev/galacticraft/mod/client/render/dimension/StarManager.java @@ -39,8 +39,9 @@ public class StarManager { public StarManager() { this.starBuffer = new VertexBuffer(VertexBuffer.Usage.STATIC); final Random random = new Random(27893L); - final BufferBuilder buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION); + final BufferBuilder buffer = Tesselator.getInstance().getBuilder(); RenderSystem.setShader(GameRenderer::getPositionShader); + buffer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION); for (int i = 0; i < 12000; ++i) { double j = random.nextFloat() * 2.0F - 1.0F; double k = random.nextFloat() * 2.0F - 1.0F; @@ -76,12 +77,12 @@ public StarManager() { double h = b * v - e * w; double aa = h * s - f * t; double ab = f * s + h * t; - buffer.addVertex((float) ((o + aa) * (i > 6000 ? -1 : 1)), (float) ((p + g) * (i > 6000 ? -1 : 1)), (float) ((q + ab) * (i > 6000 ? -1 : 1))); + buffer.vertex((o + aa) * (i > 6000 ? -1 : 1), (p + g) * (i > 6000 ? -1 : 1), (q + ab) * (i > 6000 ? -1 : 1)).endVertex(); } } } this.starBuffer.bind(); - this.starBuffer.upload(buffer.buildOrThrow()); + this.starBuffer.upload(buffer.end()); VertexBuffer.unbind(); } diff --git a/src/main/java/dev/galacticraft/mod/client/render/dimension/VenusDimensionEffects.java b/src/main/java/dev/galacticraft/mod/client/render/dimension/VenusDimensionEffects.java index cd1a0708b2..553471731c 100644 --- a/src/main/java/dev/galacticraft/mod/client/render/dimension/VenusDimensionEffects.java +++ b/src/main/java/dev/galacticraft/mod/client/render/dimension/VenusDimensionEffects.java @@ -120,7 +120,7 @@ public boolean tickRain(@NotNull ClientLevel level, Camera camera, int ticks) { double fluidHeight = fluidState.getHeight(level, below); double yOffset = Math.max(baseYOff, fluidHeight); ParticleOptions particle = !fluidState.is(FluidTags.LAVA) && !blockState.is(Blocks.MAGMA_BLOCK) && !CampfireBlock.isLitCampfire(blockState) - ? new ScaleParticleType(ParticleTypes.SMOKE, 0.95F) + ? new ScaleParticleType(0.95F) : ParticleTypes.SMOKE; this.minecraft .level diff --git a/src/main/java/dev/galacticraft/mod/client/render/dimension/VenusSkyRenderer.java b/src/main/java/dev/galacticraft/mod/client/render/dimension/VenusSkyRenderer.java index 09a003f86a..d607dfb09c 100644 --- a/src/main/java/dev/galacticraft/mod/client/render/dimension/VenusSkyRenderer.java +++ b/src/main/java/dev/galacticraft/mod/client/render/dimension/VenusSkyRenderer.java @@ -46,7 +46,7 @@ public class VenusSkyRenderer implements DimensionRenderingRegistry.SkyRenderer public VertexBuffer starBuffer; public VertexBuffer skyBuffer; public VertexBuffer darkBuffer; - private final float sunSize; + private float sunSize; public VenusSkyRenderer() { this.sunSize = 30.0F * (1.0F / 0.75F); @@ -54,52 +54,53 @@ public VenusSkyRenderer() { this.starBuffer = new VertexBuffer(VertexBuffer.Usage.STATIC); // Bind stars to display list + Tesselator tessellator = Tesselator.getInstance(); + BufferBuilder worldRenderer = tessellator.getBuilder(); this.starBuffer.bind(); - this.starBuffer.upload(this.renderStars()); + this.starBuffer.upload(this.renderStars(worldRenderer)); VertexBuffer.unbind(); this.skyBuffer = new VertexBuffer(VertexBuffer.Usage.STATIC); final byte byte2 = 64; final int i = 256 / byte2 + 2; float f = 16F; - BufferBuilder buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION); - RenderSystem.setShader(GameRenderer::getPositionShader); + worldRenderer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION); for (int j = -byte2 * i; j <= byte2 * i; j += byte2) { for (int l = -byte2 * i; l <= byte2 * i; l += byte2) { - buffer.addVertex(j, f, l) - .addVertex(j + byte2, f, l) - .addVertex(j + byte2, f, l + byte2) - .addVertex(j, f, l + byte2); + worldRenderer.vertex(j, f, l).endVertex(); + worldRenderer.vertex(j + byte2, f, l).endVertex(); + worldRenderer.vertex(j + byte2, f, l + byte2).endVertex(); + worldRenderer.vertex(j, f, l + byte2).endVertex(); } } this.skyBuffer.bind(); - this.skyBuffer.upload(buffer.buildOrThrow()); + this.skyBuffer.upload(worldRenderer.end()); VertexBuffer.unbind(); this.darkBuffer = new VertexBuffer(VertexBuffer.Usage.STATIC); f = -16F; - buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION); + worldRenderer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION); for (int k = -byte2 * i; k <= byte2 * i; k += byte2) { for (int i1 = -byte2 * i; i1 <= byte2 * i; i1 += byte2) { - buffer.addVertex(k + byte2, f, i1 + 0) - .addVertex(k + 0, f, i1 + 0) - .addVertex(k + 0, f, i1 + byte2) - .addVertex(k + byte2, f, i1 + byte2); + worldRenderer.vertex(k + byte2, f, i1 + 0).endVertex(); + worldRenderer.vertex(k + 0, f, i1 + 0).endVertex(); + worldRenderer.vertex(k + 0, f, i1 + byte2).endVertex(); + worldRenderer.vertex(k + byte2, f, i1 + byte2).endVertex(); } } this.darkBuffer.bind(); - this.darkBuffer.upload(buffer.buildOrThrow()); + this.darkBuffer.upload(worldRenderer.end()); VertexBuffer.unbind(); } - private MeshData renderStars() { + private BufferBuilder.RenderedBuffer renderStars(BufferBuilder worldRenderer) { RandomSource rand = RandomSource.create(10842L); RenderSystem.setShader(GameRenderer::getPositionShader); - BufferBuilder buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION); + worldRenderer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION); for (int starIndex = 0; starIndex < 35000; ++starIndex) { double var4 = rand.nextFloat() * 2.0F - 1.0F; @@ -136,18 +137,18 @@ private MeshData renderStars() { final double var55 = var39 * var28 - var47 * var30; final double var57 = var55 * var22 - var49 * var24; final double var61 = var49 * var22 + var55 * var24; - buffer.addVertex((float) (var14 + var57), (float) (var16 + var53), (float) (var18 + var61)); + worldRenderer.vertex(var14 + var57, var16 + var53, var18 + var61).endVertex(); } } } - return buffer.buildOrThrow(); + return worldRenderer.end(); } @Override public void render(WorldRenderContext context) { ClientLevel level = context.world(); - float partialTicks = context.tickCounter().getRealtimeDeltaTicks(); + float partialTicks = context.tickDelta(); PoseStack poseStack = context.matrixStack(); Vec3 vec3 = level.getSkyColor(context.camera().getPosition(), partialTicks); float f1 = (float) vec3.x; @@ -155,6 +156,8 @@ public void render(WorldRenderContext context) { float f3 = (float) vec3.z; float f6; + Tesselator tessellator1 = Tesselator.getInstance(); + BufferBuilder worldRenderer1 = tessellator1.getBuilder(); RenderSystem.depthMask(false); FogRenderer.levelFogColor(); RenderSystem.setShaderColor(f1, f2, f3, 1.0F); @@ -199,12 +202,12 @@ public void render(WorldRenderContext context) { starBrightness = 1.0F - starBrightness; RenderSystem.setShader(GameRenderer::getPositionColorShader); - BufferBuilder buffer = Tesselator.getInstance().begin(VertexFormat.Mode.TRIANGLE_FAN, DefaultVertexFormat.POSITION_COLOR); + worldRenderer1.begin(VertexFormat.Mode.TRIANGLE_FAN, DefaultVertexFormat.POSITION_COLOR); float r = f6 * starBrightness; float g = f7 * starBrightness; float b = f8 * starBrightness; float a = afloat[3] * 2 / starBrightness; - buffer.addVertex(poseStack.last().pose(), 0.0F, 100.0F, 0.0F).setColor(r, g, b, a); + worldRenderer1.vertex(poseStack.last().pose(), 0.0F, 100.0F, 0.0F).color(r, g, b, a).endVertex(); r = afloat[0] * starBrightness; g = afloat[1] * starBrightness; b = afloat[2] * starBrightness / 20.0F; @@ -213,24 +216,24 @@ public void render(WorldRenderContext context) { // Render sun aura f10 = 20.0F; Matrix4f last = poseStack.last().pose(); - buffer.addVertex(last, -f10, 100.0F, -f10).setColor(r, g, b, a) - .addVertex(last, 0, 100.0F, -f10 * 1.5F).setColor(r, g, b, a) - .addVertex(last, f10, 100.0F, -f10).setColor(r, g, b, a) - .addVertex(last, f10 * 1.5F, 100.0F, 0).setColor(r, g, b, a) - .addVertex(last, f10, 100.0F, f10).setColor(r, g, b, a) - .addVertex(last, 0, 100.0F, f10 * 1.5F).setColor(r, g, b, a) - .addVertex(last, -f10, 100.0F, f10).setColor(r, g, b, a) - .addVertex(last, -f10 * 1.5F, 100.0F, 0).setColor(r, g, b, a) - .addVertex(last, -f10, 100.0F, -f10).setColor(r, g, b, a); - - BufferUploader.drawWithShader(buffer.buildOrThrow()); - buffer = Tesselator.getInstance().begin(VertexFormat.Mode.TRIANGLE_FAN, DefaultVertexFormat.POSITION_COLOR); - + worldRenderer1.vertex(last, -f10, 100.0F, -f10).color(r, g, b, a).endVertex(); + worldRenderer1.vertex(last, 0, 100.0F, -f10 * 1.5F).color(r, g, b, a).endVertex(); + worldRenderer1.vertex(last, f10, 100.0F, -f10).color(r, g, b, a).endVertex(); + worldRenderer1.vertex(last, f10 * 1.5F, 100.0F, 0).color(r, g, b, a).endVertex(); + worldRenderer1.vertex(last, f10, 100.0F, f10).color(r, g, b, a).endVertex(); + worldRenderer1.vertex(last, 0, 100.0F, f10 * 1.5F).color(r, g, b, a).endVertex(); + worldRenderer1.vertex(last, -f10, 100.0F, f10).color(r, g, b, a).endVertex(); + worldRenderer1.vertex(last, -f10 * 1.5F, 100.0F, 0).color(r, g, b, a).endVertex(); + worldRenderer1.vertex(last, -f10, 100.0F, -f10).color(r, g, b, a).endVertex(); + + tessellator1.end(); + + worldRenderer1.begin(VertexFormat.Mode.TRIANGLE_FAN, DefaultVertexFormat.POSITION_COLOR); r = f6 * starBrightness; g = f7 * starBrightness; b = f8 * starBrightness; a = afloat[3] * starBrightness; - buffer.addVertex(last, 0.0F, 100.0F, 0.0F).setColor(r, g, b, a); + worldRenderer1.vertex(last, 0.0F, 100.0F, 0.0F).color(r, g, b, a).endVertex(); r = afloat[0] * starBrightness; g = afloat[1] * starBrightness; b = afloat[2] * starBrightness; @@ -238,17 +241,17 @@ public void render(WorldRenderContext context) { // Render larger sun aura f10 = 40.0F; - buffer.addVertex(last, -f10, 100.0F, -f10).setColor(r, g, b, a) - .addVertex(last, 0, 100.0F, -f10 * 1.5F).setColor(r, g, b, a) - .addVertex(last, f10, 100.0F, -f10).setColor(r, g, b, a) - .addVertex(last, f10 * 1.5F, 100.0F, 0).setColor(r, g, b, a) - .addVertex(last, f10, 100.0F, f10).setColor(r, g, b, a) - .addVertex(last, 0, 100.0F, f10 * 1.5F).setColor(r, g, b, a) - .addVertex(last, -f10, 100.0F, f10).setColor(r, g, b, a) - .addVertex(last, -f10 * 1.5F, 100.0F, 0).setColor(r, g, b, a) - .addVertex(last, -f10, 100.0F, -f10).setColor(r, g, b, a); - - BufferUploader.drawWithShader(buffer.buildOrThrow()); + worldRenderer1.vertex(last, -f10, 100.0F, -f10).color(r, g, b, a).endVertex(); + worldRenderer1.vertex(last, 0, 100.0F, -f10 * 1.5F).color(r, g, b, a).endVertex(); + worldRenderer1.vertex(last, f10, 100.0F, -f10).color(r, g, b, a).endVertex(); + worldRenderer1.vertex(last, f10 * 1.5F, 100.0F, 0).color(r, g, b, a).endVertex(); + worldRenderer1.vertex(last, f10, 100.0F, f10).color(r, g, b, a).endVertex(); + worldRenderer1.vertex(last, 0, 100.0F, f10 * 1.5F).color(r, g, b, a).endVertex(); + worldRenderer1.vertex(last, -f10, 100.0F, f10).color(r, g, b, a).endVertex(); + worldRenderer1.vertex(last, -f10 * 1.5F, 100.0F, 0).color(r, g, b, a).endVertex(); + worldRenderer1.vertex(last, -f10, 100.0F, -f10).color(r, g, b, a).endVertex(); + + tessellator1.end(); poseStack.popPose(); RenderSystem.blendFuncSeparate(GlStateManager.SourceFactor.SRC_ALPHA, GlStateManager.DestFactor.ONE, GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ZERO); @@ -264,22 +267,22 @@ public void render(WorldRenderContext context) { // Some blanking to conceal the stars f10 = this.sunSize / 3.5F; Matrix4f last2 = poseStack.last().pose(); - buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION); - buffer.addVertex(last2, -f10, 99.9F, -f10) - .addVertex(last2, f10, 99.9F, -f10) - .addVertex(last2, f10, 99.9F, f10) - .addVertex(last2, -f10, 99.9F, f10); - BufferUploader.drawWithShader(buffer.buildOrThrow()); + worldRenderer1.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION); + worldRenderer1.vertex(last2, -f10, 99.9F, -f10).endVertex(); + worldRenderer1.vertex(last2, f10, 99.9F, -f10).endVertex(); + worldRenderer1.vertex(last2, f10, 99.9F, f10).endVertex(); + worldRenderer1.vertex(last2, -f10, 99.9F, f10).endVertex(); + tessellator1.end(); RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 0.1F); f10 = this.sunSize; RenderSystem.setShaderTexture(0, CelestialBodyTextures.ATMOSPHERIC_SUN); RenderSystem.setShader(GameRenderer::getPositionTexShader); - buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); - buffer.addVertex(last2, -f10, 100.0F, -f10).setUv(0.0F, 0.0F) - .addVertex(last2, f10, 100.0F, -f10).setUv(1.0F, 0.0F) - .addVertex(last2, f10, 100.0F, f10).setUv(1.0F, 1.0F) - .addVertex(last2, -f10, 100.0F, f10).setUv(0.0F, 1.0F); - BufferUploader.drawWithShader(buffer.buildOrThrow()); + worldRenderer1.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); + worldRenderer1.vertex(last2, -f10, 100.0F, -f10).uv(0.0F, 0.0F).endVertex(); + worldRenderer1.vertex(last2, f10, 100.0F, -f10).uv(1.0F, 0.0F).endVertex(); + worldRenderer1.vertex(last2, f10, 100.0F, f10).uv(1.0F, 1.0F).endVertex(); + worldRenderer1.vertex(last2, -f10, 100.0F, f10).uv(0.0F, 1.0F).endVertex(); + tessellator1.end(); // Render earth f10 = 0.5F; @@ -288,12 +291,12 @@ public void render(WorldRenderContext context) { poseStack.mulPose(Axis.XP.rotationDegrees(200F)); RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 1F); RenderSystem.setShaderTexture(0, CelestialBodyTextures.EARTH); - buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); - buffer.addVertex(last2, -f10, -100.0F, f10).setUv(0, 1.0F) - .addVertex(last2, f10, -100.0F, f10).setUv(1.0F, 1.0F) - .addVertex(last2, f10, -100.0F, -f10).setUv(1.0F, 0) - .addVertex(last2, -f10, -100.0F, -f10).setUv(0, 0); - BufferUploader.drawWithShader(buffer.buildOrThrow()); + worldRenderer1.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); + worldRenderer1.vertex(last2, -f10, -100.0F, f10).uv(0, 1.0F).endVertex(); + worldRenderer1.vertex(last2, f10, -100.0F, f10).uv(1.0F, 1.0F).endVertex(); + worldRenderer1.vertex(last2, f10, -100.0F, -f10).uv(1.0F, 0).endVertex(); + worldRenderer1.vertex(last2, -f10, -100.0F, -f10).uv(0, 0).endVertex(); + tessellator1.end(); RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 1.0F); RenderSystem.disableBlend(); @@ -313,28 +316,28 @@ public void render(WorldRenderContext context) { f9 = -((float) (horizon + 65.0D)); f10 = -f8; Matrix4f last3 = poseStack.last().pose(); - buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_COLOR); - buffer.addVertex(last3, -f8, f9, f8).setColor(0, 0, 0, 1.0F) - .addVertex(last3, f8, f9, f8).setColor(0, 0, 0, 1.0F) - .addVertex(last3, f8, f10, f8).setColor(0, 0, 0, 1.0F) - .addVertex(last3, -f8, f10, f8).setColor(0, 0, 0, 1.0F) - .addVertex(last3, -f8, f10, -f8).setColor(0, 0, 0, 1.0F) - .addVertex(last3, f8, f10, -f8).setColor(0, 0, 0, 1.0F) - .addVertex(last3, f8, f9, -f8).setColor(0, 0, 0, 1.0F) - .addVertex(last3, -f8, f9, -f8).setColor(0, 0, 0, 1.0F) - .addVertex(last3, f8, f10, -f8).setColor(0, 0, 0, 1.0F) - .addVertex(last3, f8, f10, f8).setColor(0, 0, 0, 1.0F) - .addVertex(last3, f8, f9, f8).setColor(0, 0, 0, 1.0F) - .addVertex(last3, f8, f9, -f8).setColor(0, 0, 0, 1.0F) - .addVertex(last3, -f8, f9, -f8).setColor(0, 0, 0, 1.0F) - .addVertex(last3, -f8, f9, f8).setColor(0, 0, 0, 1.0F) - .addVertex(last3, -f8, f10, f8).setColor(0, 0, 0, 1.0F) - .addVertex(last3, -f8, f10, -f8).setColor(0, 0, 0, 1.0F) - .addVertex(last3, -f8, f10, -f8).setColor(0, 0, 0, 1.0F) - .addVertex(last3, -f8, f10, f8).setColor(0, 0, 0, 1.0F) - .addVertex(last3, f8, f10, f8).setColor(0, 0, 0, 1.0F) - .addVertex(last3, f8, f10, -f8).setColor(0, 0, 0, 1.0F); - BufferUploader.drawWithShader(buffer.buildOrThrow()); + worldRenderer1.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_COLOR); + worldRenderer1.vertex(last3, -f8, f9, f8).color(0, 0, 0, 1.0F).endVertex(); + worldRenderer1.vertex(last3, f8, f9, f8).color(0, 0, 0, 1.0F).endVertex(); + worldRenderer1.vertex(last3, f8, f10, f8).color(0, 0, 0, 1.0F).endVertex(); + worldRenderer1.vertex(last3, -f8, f10, f8).color(0, 0, 0, 1.0F).endVertex(); + worldRenderer1.vertex(last3, -f8, f10, -f8).color(0, 0, 0, 1.0F).endVertex(); + worldRenderer1.vertex(last3, f8, f10, -f8).color(0, 0, 0, 1.0F).endVertex(); + worldRenderer1.vertex(last3, f8, f9, -f8).color(0, 0, 0, 1.0F).endVertex(); + worldRenderer1.vertex(last3, -f8, f9, -f8).color(0, 0, 0, 1.0F).endVertex(); + worldRenderer1.vertex(last3, f8, f10, -f8).color(0, 0, 0, 1.0F).endVertex(); + worldRenderer1.vertex(last3, f8, f10, f8).color(0, 0, 0, 1.0F).endVertex(); + worldRenderer1.vertex(last3, f8, f9, f8).color(0, 0, 0, 1.0F).endVertex(); + worldRenderer1.vertex(last3, f8, f9, -f8).color(0, 0, 0, 1.0F).endVertex(); + worldRenderer1.vertex(last3, -f8, f9, -f8).color(0, 0, 0, 1.0F).endVertex(); + worldRenderer1.vertex(last3, -f8, f9, f8).color(0, 0, 0, 1.0F).endVertex(); + worldRenderer1.vertex(last3, -f8, f10, f8).color(0, 0, 0, 1.0F).endVertex(); + worldRenderer1.vertex(last3, -f8, f10, -f8).color(0, 0, 0, 1.0F).endVertex(); + worldRenderer1.vertex(last3, -f8, f10, -f8).color(0, 0, 0, 1.0F).endVertex(); + worldRenderer1.vertex(last3, -f8, f10, f8).color(0, 0, 0, 1.0F).endVertex(); + worldRenderer1.vertex(last3, f8, f10, f8).color(0, 0, 0, 1.0F).endVertex(); + worldRenderer1.vertex(last3, f8, f10, -f8).color(0, 0, 0, 1.0F).endVertex(); + tessellator1.end(); } poseStack.pushPose(); diff --git a/src/main/java/dev/galacticraft/mod/client/render/dimension/VenusWeatherRenderer.java b/src/main/java/dev/galacticraft/mod/client/render/dimension/VenusWeatherRenderer.java index a6f4d69221..2215926d6d 100644 --- a/src/main/java/dev/galacticraft/mod/client/render/dimension/VenusWeatherRenderer.java +++ b/src/main/java/dev/galacticraft/mod/client/render/dimension/VenusWeatherRenderer.java @@ -23,7 +23,10 @@ package dev.galacticraft.mod.client.render.dimension; import com.mojang.blaze3d.systems.RenderSystem; -import com.mojang.blaze3d.vertex.*; +import com.mojang.blaze3d.vertex.BufferBuilder; +import com.mojang.blaze3d.vertex.DefaultVertexFormat; +import com.mojang.blaze3d.vertex.Tesselator; +import com.mojang.blaze3d.vertex.VertexFormat; import dev.galacticraft.mod.Constant; import net.fabricmc.fabric.api.client.rendering.v1.DimensionRenderingRegistry; import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderContext; @@ -63,12 +66,14 @@ public void render(WorldRenderContext context) { double camY = camPos.y(); double camZ = camPos.z(); ClientLevel level = context.world(); - float partialTicks = context.tickCounter().getRealtimeDeltaTicks(); + float partialTicks = context.tickDelta(); float strength = level.getRainLevel(partialTicks); if (strength > 0.0F) { context.lightmapTextureManager().turnOnLightLayer(); + Tesselator tessellator = Tesselator.getInstance(); + BufferBuilder worldrenderer = tessellator.getBuilder(); RenderSystem.disableCull(); RenderSystem.enableBlend(); RenderSystem.enableDepthTest(); @@ -86,8 +91,6 @@ public void render(WorldRenderContext context) { int py = Mth.floor(camY); int pz = Mth.floor(camZ); - BufferBuilder buffer = null; - for (int z = pz - r; z <= pz + r; ++z) { int indexZ = (z - pz + 16) * 32; for (int x = px - r; x <= px + r; ++x) { @@ -114,13 +117,13 @@ public void render(WorldRenderContext context) { RandomSource random = RandomSource.create((long)(x * x * 3121 + x * 45238971 ^ z * z * 418711 + z * 13761)); if (drawFlag != 0) { - if (drawFlag >= 0 && buffer != null) { - BufferUploader.drawWithShader(buffer.buildOrThrow()); + if (drawFlag >= 0) { + tessellator.end(); } drawFlag = 0; RenderSystem.setShaderTexture(0, RAIN_TEXTURES); - buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.PARTICLE); + worldrenderer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.PARTICLE); } int index = indexZ + x - px + 16; @@ -146,16 +149,16 @@ public void render(WorldRenderContext context) { int light = LevelRenderer.getLightColor(level, mutablePos); double xc = x + 0.5D; double zc = z + 0.5D; - buffer.addVertex((float) (xc - camX - dx), (float) (ymax - yo - camY), (float) (zc - camZ - dz)).setUv(0.0F, (float) y * 0.25F + vOff).setColor(1.0F, 1.0F, 1.0F, alpha).setLight(light) - .addVertex((float) (xc - camX + dx), (float) (ymax - yo - camY), (float) (zc - camZ + dz)).setUv(1.0F, (float) y * 0.25F + vOff).setColor(1.0F, 1.0F, 1.0F, alpha).setLight(light) - .addVertex((float) (xc - camX + dx), (float) (y - yo - camY), (float) (zc - camZ + dz)).setUv(1.0F, (float) ymax * 0.25F + vOff).setColor(1.0F, 1.0F, 1.0F, alpha).setLight(light) - .addVertex((float) (xc - camX - dx), (float) (y - yo - camY), (float) (zc - camZ - dz)).setUv(0.0F, (float) ymax * 0.25F + vOff).setColor(1.0F, 1.0F, 1.0F, alpha).setLight(light); + worldrenderer.vertex(xc - camX - dx, (double) ymax - yo - camY, zc - camZ - dz).uv(0.0F, (float) y * 0.25F + vOff).color(1.0F, 1.0F, 1.0F, alpha).uv2(light).endVertex(); + worldrenderer.vertex(xc - camX + dx, (double) ymax - yo - camY, zc - camZ + dz).uv(1.0F, (float) y * 0.25F + vOff).color(1.0F, 1.0F, 1.0F, alpha).uv2(light).endVertex(); + worldrenderer.vertex(xc - camX + dx, (double) y - yo - camY, zc - camZ + dz).uv(1.0F, (float) ymax * 0.25F + vOff).color(1.0F, 1.0F, 1.0F, alpha).uv2(light).endVertex(); + worldrenderer.vertex(xc - camX - dx, (double) y - yo - camY, zc - camZ - dz).uv(0.0F, (float) ymax * 0.25F + vOff).color(1.0F, 1.0F, 1.0F, alpha).uv2(light).endVertex(); } } } if (drawFlag >= 0) { - BufferUploader.drawWithShader(buffer.buildOrThrow()); + tessellator.end(); } RenderSystem.enableCull(); diff --git a/src/main/java/dev/galacticraft/mod/client/render/entity/BubbleEntityRenderer.java b/src/main/java/dev/galacticraft/mod/client/render/entity/BubbleEntityRenderer.java index edaca412dd..1c3aeacd3a 100644 --- a/src/main/java/dev/galacticraft/mod/client/render/entity/BubbleEntityRenderer.java +++ b/src/main/java/dev/galacticraft/mod/client/render/entity/BubbleEntityRenderer.java @@ -27,17 +27,22 @@ import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.client.model.GCBakedModel; import dev.galacticraft.mod.client.model.GCModelLoader; -import dev.galacticraft.mod.client.model.GCRenderTypes; +import dev.galacticraft.mod.client.model.GCSheets; import dev.galacticraft.mod.content.block.entity.machine.OxygenBubbleDistributorBlockEntity; import dev.galacticraft.mod.content.entity.BubbleEntity; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; +import net.minecraft.client.Minecraft; import net.minecraft.client.multiplayer.ClientLevel; import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.block.model.BakedQuad; import net.minecraft.client.renderer.culling.Frustum; import net.minecraft.client.renderer.entity.EntityRenderer; import net.minecraft.client.renderer.entity.EntityRendererProvider; import net.minecraft.client.renderer.texture.OverlayTexture; +import net.minecraft.client.resources.model.BakedModel; +import net.minecraft.core.Direction; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.Entity; import net.minecraft.world.level.block.entity.BlockEntity; @@ -75,7 +80,7 @@ public void render(BubbleEntity entity, float yaw, float tickDelta, PoseStack ma matrices.pushPose(); matrices.translate(0.5F, 1.0F, 0.5F); matrices.scale((float) size, (float) size, (float) size); - VertexConsumer consumer = vertexConsumers.getBuffer(GCRenderTypes.bubble(GCRenderTypes.OBJ_ATLAS)); + VertexConsumer consumer = vertexConsumers.getBuffer(GCSheets.entityTranslucentEmissive(GCSheets.OBJ_ATLAS)); // for (BakedQuad quad : bubbleModel.getQuads(null, null, entity.level().random)) { // consumer.putBulkData(matrices.last(), quad, 1, 1, 1, Integer.MAX_VALUE, OverlayTexture.NO_OVERLAY); // } diff --git a/src/main/java/dev/galacticraft/mod/client/render/entity/BuggyRenderer.java b/src/main/java/dev/galacticraft/mod/client/render/entity/BuggyRenderer.java index 05bebf4cad..3314919b04 100644 --- a/src/main/java/dev/galacticraft/mod/client/render/entity/BuggyRenderer.java +++ b/src/main/java/dev/galacticraft/mod/client/render/entity/BuggyRenderer.java @@ -29,7 +29,7 @@ import dev.galacticraft.mod.client.model.GCBakedModel; import dev.galacticraft.mod.client.model.GCModelLoader; import dev.galacticraft.mod.client.model.GCModelState; -import dev.galacticraft.mod.client.model.GCRenderTypes; +import dev.galacticraft.mod.client.model.GCSheets; import dev.galacticraft.mod.content.entity.Buggy; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.entity.EntityRenderer; @@ -61,7 +61,7 @@ public void render(Buggy buggy, float yaw, float tickDelta, PoseStack matrices, if (this.buggyModel == null) this.buggyModel = GCModelLoader.INSTANCE.getModel(MODEL); float pitch = Mth.lerp(tickDelta, buggy.xRotO, buggy.getXRot()); - VertexConsumer consumer = vertexConsumers.getBuffer(GCRenderTypes.obj(GCRenderTypes.OBJ_ATLAS)); + VertexConsumer consumer = vertexConsumers.getBuffer(GCSheets.obj(GCSheets.OBJ_ATLAS)); matrices.pushPose(); matrices.scale(1.0F, 1.0F, 1.0F); matrices.mulPose(Axis.YP.rotationDegrees(180.0F - yaw)); diff --git a/src/main/java/dev/galacticraft/mod/client/render/entity/LanderEntityRenderer.java b/src/main/java/dev/galacticraft/mod/client/render/entity/LanderEntityRenderer.java index 1fd78b4bd1..01c326eb16 100644 --- a/src/main/java/dev/galacticraft/mod/client/render/entity/LanderEntityRenderer.java +++ b/src/main/java/dev/galacticraft/mod/client/render/entity/LanderEntityRenderer.java @@ -33,6 +33,7 @@ import net.minecraft.client.renderer.entity.EntityRendererProvider; import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; +import org.lwjgl.opengl.GL11; public class LanderEntityRenderer extends EntityRenderer { protected final LanderModel model; @@ -68,7 +69,7 @@ public void render(LanderEntity lander, float entityYaw, float partialTicks, Pos poseStack.mulPose(Axis.YN.rotationDegrees(180.0F - entityYaw)); poseStack.mulPose(Axis.ZN.rotationDegrees(pitch)); - this.model.renderToBuffer(poseStack, multiBufferSource.getBuffer(this.model.renderType(getTextureLocation(lander))), light, OverlayTexture.NO_OVERLAY); + this.model.renderToBuffer(poseStack, multiBufferSource.getBuffer(this.model.renderType(getTextureLocation(lander))), light, OverlayTexture.NO_OVERLAY, 1.0F, 1.0F, 1.0F, 1.0F); poseStack.popPose(); } } diff --git a/src/main/java/dev/galacticraft/mod/client/render/entity/ParachestRenderer.java b/src/main/java/dev/galacticraft/mod/client/render/entity/ParachestRenderer.java index 2e950080ce..2664255dae 100644 --- a/src/main/java/dev/galacticraft/mod/client/render/entity/ParachestRenderer.java +++ b/src/main/java/dev/galacticraft/mod/client/render/entity/ParachestRenderer.java @@ -56,8 +56,8 @@ public ParachestRenderer(EntityRendererProvider.Context context) { @Override public void render(ParachestEntity entity, float entityYaw, float partialTick, PoseStack poseStack, MultiBufferSource buffer, int packedLight) { this.parachute.setupAnim(entity, 0F, 0F, 0F, 0F, 0F); - this.chest.render(poseStack, buffer.getBuffer(RenderType.entityCutoutNoCull(TEXTURE)), packedLight, OverlayTexture.NO_OVERLAY); - this.parachute.renderToBuffer(poseStack, buffer.getBuffer(RenderType.entityCutoutNoCull(getTextureLocation(entity))), packedLight, OverlayTexture.NO_OVERLAY); + this.chest.render(poseStack, buffer.getBuffer(RenderType.entityCutoutNoCull(TEXTURE)), packedLight, OverlayTexture.NO_OVERLAY, 1.0F, 1.0F, 1.0F, 1.0F); + this.parachute.renderToBuffer(poseStack, buffer.getBuffer(RenderType.entityCutoutNoCull(getTextureLocation(entity))), packedLight, OverlayTexture.NO_OVERLAY, 1.0F, 1.0F, 1.0F, 1.0F); } @Override diff --git a/src/main/java/dev/galacticraft/mod/client/render/entity/model/ParachestModel.java b/src/main/java/dev/galacticraft/mod/client/render/entity/model/ParachestModel.java index beae41f6fd..daf45b1663 100644 --- a/src/main/java/dev/galacticraft/mod/client/render/entity/model/ParachestModel.java +++ b/src/main/java/dev/galacticraft/mod/client/render/entity/model/ParachestModel.java @@ -22,6 +22,7 @@ package dev.galacticraft.mod.client.render.entity.model; +import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.content.entity.ParachestEntity; import net.minecraft.client.model.HierarchicalModel; import net.minecraft.client.model.geom.ModelPart; diff --git a/src/main/java/dev/galacticraft/mod/client/render/entity/rocket/RocketEntityRenderer.java b/src/main/java/dev/galacticraft/mod/client/render/entity/rocket/RocketEntityRenderer.java index 70f8d114e3..017078d447 100644 --- a/src/main/java/dev/galacticraft/mod/client/render/entity/rocket/RocketEntityRenderer.java +++ b/src/main/java/dev/galacticraft/mod/client/render/entity/rocket/RocketEntityRenderer.java @@ -34,7 +34,7 @@ import net.minecraft.client.renderer.entity.EntityRenderer; import net.minecraft.client.renderer.entity.EntityRendererProvider; import net.minecraft.client.renderer.texture.OverlayTexture; -import net.minecraft.core.Holder; +import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.util.Mth; import net.minecraft.world.inventory.InventoryMenu; @@ -74,10 +74,10 @@ public void render(RocketEntity entity, float yaw, float partialTick, PoseStack // RenderSystem.setShaderTexture(0, getTextureLocation(entity)); matrices.translate(0.0D, -1.75D, 0.0D); - Holder> part = entity.engine(); + ResourceKey> part = entity.engine(); if (part != null) { matrices.pushPose(); - RocketPartRendererRegistry.INSTANCE.getRenderer(part.unwrapKey().get()).render(client.level, matrices, entity, vertexConsumers, partialTick, light, OverlayTexture.NO_OVERLAY); + RocketPartRendererRegistry.INSTANCE.getRenderer(part).render(client.level, matrices, entity, vertexConsumers, partialTick, light, OverlayTexture.NO_OVERLAY); matrices.popPose(); } @@ -86,14 +86,14 @@ public void render(RocketEntity entity, float yaw, float partialTick, PoseStack part = entity.booster(); if (part != null) { matrices.pushPose(); - RocketPartRendererRegistry.INSTANCE.getRenderer(part.unwrapKey().get()).render(client.level, matrices, entity, vertexConsumers, partialTick, light, OverlayTexture.NO_OVERLAY); + RocketPartRendererRegistry.INSTANCE.getRenderer(part).render(client.level, matrices, entity, vertexConsumers, partialTick, light, OverlayTexture.NO_OVERLAY); matrices.popPose(); } part = entity.fin(); if (part != null) { matrices.pushPose(); - RocketPartRendererRegistry.INSTANCE.getRenderer(part.unwrapKey().get()).render(client.level, matrices, entity, vertexConsumers, partialTick, light, OverlayTexture.NO_OVERLAY); + RocketPartRendererRegistry.INSTANCE.getRenderer(part).render(client.level, matrices, entity, vertexConsumers, partialTick, light, OverlayTexture.NO_OVERLAY); matrices.popPose(); } @@ -102,7 +102,7 @@ public void render(RocketEntity entity, float yaw, float partialTick, PoseStack part = entity.body(); if (part != null) { matrices.pushPose(); - RocketPartRendererRegistry.INSTANCE.getRenderer(part.unwrapKey().get()).render(client.level, matrices, entity, vertexConsumers, partialTick, light, OverlayTexture.NO_OVERLAY); + RocketPartRendererRegistry.INSTANCE.getRenderer(part).render(client.level, matrices, entity, vertexConsumers, partialTick, light, OverlayTexture.NO_OVERLAY); matrices.popPose(); } @@ -111,7 +111,7 @@ public void render(RocketEntity entity, float yaw, float partialTick, PoseStack part = entity.cone(); if (part != null) { matrices.pushPose(); - RocketPartRendererRegistry.INSTANCE.getRenderer(part.unwrapKey().get()).render(client.level, matrices, entity, vertexConsumers, partialTick, light, OverlayTexture.NO_OVERLAY); + RocketPartRendererRegistry.INSTANCE.getRenderer(part).render(client.level, matrices, entity, vertexConsumers, partialTick, light, OverlayTexture.NO_OVERLAY); matrices.popPose(); } diff --git a/src/main/java/dev/galacticraft/mod/client/render/item/RocketItemRenderer.java b/src/main/java/dev/galacticraft/mod/client/render/item/RocketItemRenderer.java index 1b60d71320..bcff6d44d2 100644 --- a/src/main/java/dev/galacticraft/mod/client/render/item/RocketItemRenderer.java +++ b/src/main/java/dev/galacticraft/mod/client/render/item/RocketItemRenderer.java @@ -34,9 +34,9 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.multiplayer.ClientLevel; import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.resources.ResourceKey; import net.minecraft.util.Mth; import net.minecraft.world.inventory.InventoryMenu; -import net.minecraft.world.item.EitherHolder; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; @@ -45,7 +45,7 @@ public class RocketItemRenderer implements BuiltinItemRendererRegistry.DynamicIt @Override public void render(ItemStack stack, ItemDisplayContext mode, PoseStack matrices, MultiBufferSource vertexConsumers, int light, int overlay) { - RocketData data = RocketData.fromPatch(stack.getComponentsPatch()); + RocketData data = RocketData.fromNbt(stack.getTag()); rocket.setLevel(Minecraft.getInstance().level); rocket.setData(data); rocket.setOldPosAndRot(); @@ -80,10 +80,10 @@ public void render(ItemStack stack, ItemDisplayContext mode, PoseStack matrices, } RenderSystem.setShaderTexture(0, InventoryMenu.BLOCK_ATLAS); matrices.translate(0.0D, -1.75D, 0.0D); - EitherHolder> part = data.engine(); + ResourceKey> part = data.engine(); if (part != null) { matrices.pushPose(); - RocketPartRendererRegistry.INSTANCE.getRenderer(part.key()).render(level, matrices, rocket, vertexConsumers, 0, light, overlay); + RocketPartRendererRegistry.INSTANCE.getRenderer(part).render(level, matrices, rocket, vertexConsumers, 0, light, overlay); matrices.popPose(); } @@ -92,14 +92,14 @@ public void render(ItemStack stack, ItemDisplayContext mode, PoseStack matrices, part = data.booster(); if (part != null) { matrices.pushPose(); - RocketPartRendererRegistry.INSTANCE.getRenderer(part.key()).render(level, matrices, rocket, vertexConsumers, 0, light, overlay); + RocketPartRendererRegistry.INSTANCE.getRenderer(part).render(level, matrices, rocket, vertexConsumers, 0, light, overlay); matrices.popPose(); } part = data.fin(); if (part != null) { matrices.pushPose(); - RocketPartRendererRegistry.INSTANCE.getRenderer(part.key()).render(level, matrices, rocket, vertexConsumers, 0, light, overlay); + RocketPartRendererRegistry.INSTANCE.getRenderer(part).render(level, matrices, rocket, vertexConsumers, 0, light, overlay); matrices.popPose(); } @@ -108,7 +108,7 @@ public void render(ItemStack stack, ItemDisplayContext mode, PoseStack matrices, part = data.body(); if (part != null) { matrices.pushPose(); - RocketPartRendererRegistry.INSTANCE.getRenderer(part.key()).render(level, matrices, rocket, vertexConsumers, 0, light, overlay); + RocketPartRendererRegistry.INSTANCE.getRenderer(part).render(level, matrices, rocket, vertexConsumers, 0, light, overlay); matrices.popPose(); } @@ -117,7 +117,7 @@ public void render(ItemStack stack, ItemDisplayContext mode, PoseStack matrices, part = data.cone(); if (part != null) { matrices.pushPose(); - RocketPartRendererRegistry.INSTANCE.getRenderer(part.key()).render(level, matrices, rocket, vertexConsumers, 0, light, overlay); + RocketPartRendererRegistry.INSTANCE.getRenderer(part).render(level, matrices, rocket, vertexConsumers, 0, light, overlay); matrices.popPose(); } diff --git a/src/main/java/dev/galacticraft/mod/client/render/rocket/BakedModelItemRocketPartRenderer.java b/src/main/java/dev/galacticraft/mod/client/render/rocket/BakedModelItemRocketPartRenderer.java index 9d04760a1b..cf88c8ebc3 100644 --- a/src/main/java/dev/galacticraft/mod/client/render/rocket/BakedModelItemRocketPartRenderer.java +++ b/src/main/java/dev/galacticraft/mod/client/render/rocket/BakedModelItemRocketPartRenderer.java @@ -25,13 +25,13 @@ import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import dev.galacticraft.api.entity.rocket.render.RocketPartRenderer; -import dev.galacticraft.api.rocket.RocketData; import dev.galacticraft.api.rocket.entity.Rocket; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.multiplayer.ClientLevel; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.client.resources.model.BakedModel; import net.minecraft.world.item.ItemStack; import org.jetbrains.annotations.Nullable; @@ -61,9 +61,10 @@ public void render(ClientLevel world, PoseStack matrices, Rocket rocket, MultiBu if (this.model != null) { PoseStack.Pose entry = matrices.last(); VertexConsumer consumer = vertices.getBuffer(layer); - RocketData data = rocket.getData(); - Minecraft.getInstance().getBlockRenderer().getModelRenderer().renderModel(entry, consumer, null, model, - data.red() / 255f, data.blue() / 255f, data.green() / 255f, light, overlay); + Minecraft.getInstance().getBlockRenderer().getModelRenderer().renderModel(entry, consumer, null, model, (rocket.red() / 255f) * (rocket.alpha() / 255f), + (rocket.green() / 255f) * (rocket.alpha() / 255f), + (rocket.blue() / 255f) * (rocket.alpha() / 255f), + light, overlay); } } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/client/render/rocket/GalacticraftRocketPartRenderers.java b/src/main/java/dev/galacticraft/mod/client/render/rocket/GalacticraftRocketPartRenderers.java index 34c5e813d2..f1b974f3da 100644 --- a/src/main/java/dev/galacticraft/mod/client/render/rocket/GalacticraftRocketPartRenderers.java +++ b/src/main/java/dev/galacticraft/mod/client/render/rocket/GalacticraftRocketPartRenderers.java @@ -28,6 +28,8 @@ import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.client.model.GCModelLoader; import dev.galacticraft.mod.content.GCRocketParts; +import net.fabricmc.fabric.api.client.model.ModelLoadingRegistry; +import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.RenderType; import net.minecraft.client.renderer.Sheets; import net.minecraft.resources.ResourceLocation; @@ -36,14 +38,14 @@ import java.util.Objects; public class GalacticraftRocketPartRenderers { - public static final ResourceLocation DEFAULT_CONE = Constant.id("models/misc/rocket_cone_basic.json"); - public static final ResourceLocation ADVANCED_CONE = Constant.id("models/misc/rocket_cone_advanced.json"); - public static final ResourceLocation SLOPED_CONE = Constant.id("models/misc/rocket_cone_sloped.json"); - public static final ResourceLocation DEFAULT_BODY = Constant.id("models/misc/rocket_body.json"); - public static final ResourceLocation DEFAULT_FIN = Constant.id("models/misc/rocket_fins.json"); - public static final ResourceLocation DEFAULT_ENGINE = Constant.id("models/misc/rocket_engine.json"); - public static final ResourceLocation BOOSTER_TIER_1 = Constant.id("models/misc/rocket_thruster_tier_1.json"); - public static final ResourceLocation BOOSTER_TIER_2 = Constant.id("models/misc/rocket_thruster_tier_2.json"); + private static final ResourceLocation DEFAULT_CONE = Constant.id("models/misc/rocket_cone_basic.json"); + private static final ResourceLocation ADVANCED_CONE = Constant.id("models/misc/rocket_cone_advanced.json"); + private static final ResourceLocation SLOPED_CONE = Constant.id("models/misc/rocket_cone_sloped.json"); + private static final ResourceLocation DEFAULT_BODY = Constant.id("models/misc/rocket_body.json"); + private static final ResourceLocation DEFAULT_FIN = Constant.id("models/misc/rocket_fins.json"); + private static final ResourceLocation DEFAULT_ENGINE = Constant.id("models/misc/rocket_engine.json"); + private static final ResourceLocation BOOSTER_TIER_1 = Constant.id("models/misc/rocket_thruster_tier_1.json"); + private static final ResourceLocation BOOSTER_TIER_2 = Constant.id("models/misc/rocket_thruster_tier_2.json"); public static void register() { RocketPartRendererRegistry.INSTANCE.register(GCRocketParts.TIER_1_CONE, new BakedModelRocketPartRenderer(Suppliers.memoize(() -> Objects.requireNonNull(GCModelLoader.INSTANCE.getModel(DEFAULT_CONE))), Sheets::translucentCullBlockSheet)); @@ -56,4 +58,17 @@ public static void register() { RocketPartRendererRegistry.INSTANCE.register(GCRocketParts.TIER_1_BOOSTER, new BakedModelRocketPartRenderer(Suppliers.memoize(() -> Objects.requireNonNull(GCModelLoader.INSTANCE.getModel(BOOSTER_TIER_1))), Sheets::translucentCullBlockSheet)); RocketPartRendererRegistry.INSTANCE.register(GCRocketParts.TIER_2_BOOSTER, new BakedModelRocketPartRenderer(Suppliers.memoize(() -> Objects.requireNonNull(GCModelLoader.INSTANCE.getModel(BOOSTER_TIER_2))), Sheets::translucentCullBlockSheet)); } + + public static void registerModelLoader() { + ModelLoadingRegistry.INSTANCE.registerModelProvider((manager, out) -> { + out.accept(DEFAULT_CONE); + out.accept(SLOPED_CONE); + out.accept(ADVANCED_CONE); + out.accept(DEFAULT_BODY); + out.accept(DEFAULT_ENGINE); + out.accept(DEFAULT_FIN); + out.accept(BOOSTER_TIER_1); + out.accept(BOOSTER_TIER_2); + }); + } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/client/util/BatchedColorRenderer.java b/src/main/java/dev/galacticraft/mod/client/util/BatchedColorRenderer.java new file mode 100644 index 0000000000..b76517ac98 --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/client/util/BatchedColorRenderer.java @@ -0,0 +1,89 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.client.util; + +import com.mojang.blaze3d.systems.RenderSystem; +import com.mojang.blaze3d.vertex.*; +import dev.galacticraft.mod.Constant; +import net.minecraft.client.gui.GuiGraphics; +import net.minecraft.client.renderer.GameRenderer; +import net.minecraft.resources.ResourceLocation; +import org.joml.Matrix4f; + +public class BatchedColorRenderer implements AutoCloseable { + private final BufferBuilder buffer; + private final PoseStack pose; + private final int textureWidth; + private final int textureHeight; + + public BatchedColorRenderer(BufferBuilder buffer, PoseStack pose, ResourceLocation texture, int textureWidth, int textureHeight) { + assert !buffer.building(); + + this.buffer = buffer; + this.pose = pose; + this.textureWidth = textureWidth; + this.textureHeight = textureHeight; + + buffer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX_COLOR); + } + + public BatchedColorRenderer(GuiGraphics graphics, ResourceLocation texture, int textureWidth, int textureHeight) { + this(Tesselator.getInstance().getBuilder(), graphics.pose(), texture, textureWidth, textureHeight); + } + + public void blit(int x, int y, int width, int height, int uOffset, int vOffset, int uWidth, int vHeight, int color) { + innerBlit(x, x + width, y, y + height, uOffset, vOffset, uWidth, vHeight, color); + } + + public void blit(int x, int y, int width, int height, int u, int v, int uWidth, int vHeight, int color, boolean invertX, boolean invertY) { + innerBlit(x, x + width, y, y + height, u + (invertX ? uWidth : 0), v + (invertY ? vHeight : 0), invertX ? -uWidth : uWidth, invertY ? -vHeight : vHeight, color); + } + + public void blit(int x, int y, int u, int v, int width, int height, int color) { + blit(x, y, width, height, u, v, width, height, color); + } + + public void innerBlit(int x1, int x2, int y1, int y2, int uOffset, int vOffset, int uWidth, int vHeight, int color) { + this.innerBlit(x1, x2, y1, y2, (float)uOffset / (float) this.textureWidth, (float)(uOffset + uWidth) / (float) this.textureWidth, (float)vOffset / (float) this.textureHeight, (float) (vOffset + vHeight) / (float) this.textureHeight, color); + } + + private void innerBlit(int x1, int x2, int y1, int y2, float u1, float u2, float v1, float v2, int color) { + Matrix4f matrix = this.pose.last().pose(); + this.buffer.vertex(matrix, (float) x1, (float) y1, -10).uv(u1, v1).color(color).endVertex(); + this.buffer.vertex(matrix, (float) x1, (float) y2, -10).uv(u1, v2).color(color).endVertex(); + this.buffer.vertex(matrix, (float) x2, (float) y2, -10).uv(u2, v2).color(color).endVertex(); + this.buffer.vertex(matrix, (float) x2, (float) y1, -10).uv(u2, v1).color(color).endVertex(); + } + + public PoseStack pose() { + return this.pose; + } + + @Override + public void close() { + RenderSystem.enableBlend(); + RenderSystem.setShaderTexture(0, Constant.id("textures/gui/celestial_selection_0.png")); + RenderSystem.setShader(GameRenderer::getPositionTexColorShader); + BufferUploader.drawWithShader(this.buffer.end()); + } +} diff --git a/src/main/java/dev/galacticraft/mod/client/util/BatchedRenderer.java b/src/main/java/dev/galacticraft/mod/client/util/BatchedRenderer.java new file mode 100644 index 0000000000..36709b6f9f --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/client/util/BatchedRenderer.java @@ -0,0 +1,83 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.client.util; + +import com.mojang.blaze3d.systems.RenderSystem; +import com.mojang.blaze3d.vertex.*; +import net.minecraft.client.gui.GuiGraphics; +import net.minecraft.client.renderer.GameRenderer; +import net.minecraft.resources.ResourceLocation; +import org.joml.Matrix4f; + +public class BatchedRenderer implements AutoCloseable { + private final BufferBuilder buffer; + private final PoseStack pose; + private final int textureWidth; + private final int textureHeight; + + public BatchedRenderer(BufferBuilder buffer, PoseStack pose, ResourceLocation texture, int textureWidth, int textureHeight) { + assert !buffer.building(); + + this.buffer = buffer; + this.pose = pose; + this.textureWidth = textureWidth; + this.textureHeight = textureHeight; + + RenderSystem.setShaderTexture(0, texture); + RenderSystem.setShader(GameRenderer::getPositionTexShader); + buffer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); + } + + public BatchedRenderer(GuiGraphics graphics, ResourceLocation texture, int textureWidth, int textureHeight) { + this(Tesselator.getInstance().getBuilder(), graphics.pose(), texture, textureWidth, textureHeight); + } + + public void blit(int x, int y, int width, int height, float uOffset, float vOffset, int uWidth, int vHeight) { + blit(x, x + width, y, y + height, uWidth, vHeight, uOffset, vOffset); + } + + public void blit(int x, int y, float uOffset, float vOffset, int width, int height) { + blit(x, y, width, height, uOffset, vOffset, width, height); + } + + public void blit(int x1, int x2, int y1, int y2, int uWidth, int vHeight, float uOffset, float vOffset) { + this.innerBlit(x1, x2, y1, y2, uOffset / (float) this.textureWidth, (uOffset + (float) uWidth) / (float) this.textureWidth, vOffset / (float) this.textureHeight, (vOffset + (float) vHeight) / (float) this.textureHeight); + } + + private void innerBlit(int x1, int x2, int y1, int y2, float u1, float u2, float v1, float v2) { + Matrix4f matrix = this.pose.last().pose(); + this.buffer.vertex(matrix, (float) x1, (float) y1, 0).uv(u1, v1).endVertex(); + this.buffer.vertex(matrix, (float) x1, (float) y2, 0).uv(u1, v2).endVertex(); + this.buffer.vertex(matrix, (float) x2, (float) y2, 0).uv(u2, v2).endVertex(); + this.buffer.vertex(matrix, (float) x2, (float) y1, 0).uv(u2, v1).endVertex(); + } + + public PoseStack pose() { + return this.pose; + } + + @Override + public void close() { + BufferUploader.drawWithShader(this.buffer.end()); + } +} diff --git a/src/main/java/dev/galacticraft/mod/client/util/Graphics.java b/src/main/java/dev/galacticraft/mod/client/util/Graphics.java index e5a21d4ba7..14e285b1e5 100644 --- a/src/main/java/dev/galacticraft/mod/client/util/Graphics.java +++ b/src/main/java/dev/galacticraft/mod/client/util/Graphics.java @@ -34,7 +34,6 @@ import net.minecraft.network.chat.FormattedText; import net.minecraft.resources.ResourceLocation; import net.minecraft.util.FormattedCharSequence; -import org.jetbrains.annotations.Nullable; import org.joml.Matrix4f; import java.util.ArrayList; @@ -42,16 +41,17 @@ public class Graphics implements AutoCloseable { private final PoseStack pose; + private final BufferBuilder buffer; private final MultiBufferSource.BufferSource bufferSource; private final Font font; private final List renderers = new ArrayList<>(1); - private @Nullable BufferBuilder buffer; private Graphics(PoseStack pose, MultiBufferSource.BufferSource bufferSource, Font font) { this.pose = pose; this.bufferSource = bufferSource; this.font = font; - this.buffer = null; + this.buffer = Tesselator.getInstance().getBuilder(); + if (this.buffer.building()) throw new IllegalStateException(); } public static Graphics managed(GuiGraphics graphics, Font font) { @@ -98,7 +98,6 @@ public void cleanupState() { for (BatchedDrawable renderer : this.renderers) { renderer.draw(); } - assert this.buffer == null; } @Override @@ -124,9 +123,8 @@ public void lineGradient(float x1, float y1, float x2, float y2, float z, int co this.ensureOpen(); Matrix4f matrix = Graphics.this.pose.last().pose(); - this.consumer - .addVertex(matrix, x1, y1, z).setColor(color1) - .addVertex(matrix, x2, y2, z).setColor(color2); + this.consumer.vertex(matrix, x1, y1, z).color(color1).endVertex(); + this.consumer.vertex(matrix, x2, y2, z).color(color2).endVertex(); } private void ensureOpen() { @@ -186,11 +184,10 @@ public void fillGradientRaw(float x1, float y1, float x2, float y2, float z, int this.ensureOpen(); Matrix4f matrix = Graphics.this.pose.last().pose(); - this.consumer - .addVertex(matrix, x1, y1, z).setColor(colorA) - .addVertex(matrix, x1, y2, z).setColor(colorB) - .addVertex(matrix, x2, y2, z).setColor(colorB) - .addVertex(matrix, x2, y1, z).setColor(colorA); + this.consumer.vertex(matrix, x1, y1, z).color(colorA).endVertex(); + this.consumer.vertex(matrix, x1, y2, z).color(colorB).endVertex(); + this.consumer.vertex(matrix, x2, y2, z).color(colorB).endVertex(); + this.consumer.vertex(matrix, x2, y1, z).color(colorA).endVertex(); } private void ensureOpen() { @@ -248,11 +245,10 @@ public void blitRaw(float x1, float y1, float x2, float y2, float z, float u1, f this.ensureOpen(); Matrix4f matrix = Graphics.this.pose.last().pose(); - Graphics.this.buffer - .addVertex(matrix, x1, y1, z).setUv(u1, v1).setColor(color) - .addVertex(matrix, x1, y2, z).setUv(u1, v2).setColor(color) - .addVertex(matrix, x2, y2, z).setUv(u2, v2).setColor(color) - .addVertex(matrix, x2, y1, z).setUv(u2, v1).setColor(color); + Graphics.this.buffer.vertex(matrix, x1, y1, z).uv(u1, v1).color(color).endVertex(); + Graphics.this.buffer.vertex(matrix, x1, y2, z).uv(u1, v2).color(color).endVertex(); + Graphics.this.buffer.vertex(matrix, x2, y2, z).uv(u2, v2).color(color).endVertex(); + Graphics.this.buffer.vertex(matrix, x2, y1, z).uv(u2, v1).color(color).endVertex(); } public void blit(int x, int y, int width, int height, int u, int v, int color) { @@ -274,7 +270,7 @@ public void blit(float x, float y, float width, float height, float u, float v, private void ensureOpen() { if (!this.open) { Graphics.this.cleanupState(); - Graphics.this.buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX_COLOR); + Graphics.this.buffer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX_COLOR); this.open = true; } } @@ -289,14 +285,12 @@ public void close() { @Override public void draw() { if (this.open) { - assert Graphics.this.buffer != null; RenderSystem.setShader(GameRenderer::getPositionTexColorShader); RenderSystem.setShaderTexture(0, this.texture); RenderSystem.enableBlend(); - BufferUploader.drawWithShader(Graphics.this.buffer.build()); + BufferUploader.drawWithShader(Graphics.this.buffer.end()); RenderSystem.disableBlend(); this.open = false; - Graphics.this.buffer = null; } } } @@ -330,11 +324,10 @@ public void blitRaw(float x1, float y1, float x2, float y2, float z, float u1, f this.ensureOpen(); Matrix4f matrix = Graphics.this.pose.last().pose(); - Graphics.this.buffer - .addVertex(matrix, x1, y1, z).setUv(u1, v1) - .addVertex(matrix, x1, y2, z).setUv(u1, v2) - .addVertex(matrix, x2, y2, z).setUv(u2, v2) - .addVertex(matrix, x2, y1, z).setUv(u2, v1); + Graphics.this.buffer.vertex(matrix, x1, y1, z).uv(u1, v1).endVertex(); + Graphics.this.buffer.vertex(matrix, x1, y2, z).uv(u1, v2).endVertex(); + Graphics.this.buffer.vertex(matrix, x2, y2, z).uv(u2, v2).endVertex(); + Graphics.this.buffer.vertex(matrix, x2, y1, z).uv(u2, v1).endVertex(); } public void blit(int x, int y, int width, int height, int u, int v) { @@ -356,7 +349,7 @@ public void blit(float x, float y, float width, float height, float u, float v, private void ensureOpen() { if (!this.open) { Graphics.this.cleanupState(); - Graphics.this.buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); + Graphics.this.buffer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); this.open = true; } } @@ -371,14 +364,12 @@ public void close() { @Override public void draw() { if (this.open) { - assert Graphics.this.buffer != null; RenderSystem.setShader(GameRenderer::getPositionTexShader); RenderSystem.setShaderTexture(0, this.texture); RenderSystem.enableBlend(); - BufferUploader.drawWithShader(Graphics.this.buffer.build()); + BufferUploader.drawWithShader(Graphics.this.buffer.end()); RenderSystem.disableBlend(); this.open = false; - Graphics.this.buffer = null; } } } @@ -523,14 +514,15 @@ public static void blit(Matrix4f matrix, float x, float y, int width, int height } public static void blitRaw(Matrix4f matrix, float x1, float y1, float x2, float y2, float z, float u1, float v1, float u2, float v2, ResourceLocation texture) { - BufferBuilder buffer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); - buffer.addVertex(matrix, x1, y1, z).setUv(u1, v1) - .addVertex(matrix, x1, y2, z).setUv(u1, v2) - .addVertex(matrix, x2, y2, z).setUv(u2, v2) - .addVertex(matrix, x2, y1, z).setUv(u2, v1); + BufferBuilder builder = Tesselator.getInstance().getBuilder(); + builder.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); + builder.vertex(matrix, x1, y1, z).uv(u1, v1).endVertex(); + builder.vertex(matrix, x1, y2, z).uv(u1, v2).endVertex(); + builder.vertex(matrix, x2, y2, z).uv(u2, v2).endVertex(); + builder.vertex(matrix, x2, y1, z).uv(u2, v1).endVertex(); RenderSystem.setShader(GameRenderer::getPositionTexShader); RenderSystem.setShaderTexture(0, texture); - BufferUploader.drawWithShader(buffer.buildOrThrow()); + BufferUploader.drawWithShader(builder.end()); } public static void blitCentered(Matrix4f matrix, float x, float y, float width, float height, float z, float u, float v, float uWidth, float vHeight, int textureWidth, int textureHeight, ResourceLocation texture, int color) { @@ -562,14 +554,15 @@ public static void blit(Matrix4f matrix, float x, float y, int width, int height } public static void blitRaw(Matrix4f matrix, float x1, float y1, float x2, float y2, float z, float u1, float v1, float u2, float v2, ResourceLocation texture, int color) { - BufferBuilder builder = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX_COLOR); - builder.addVertex(matrix, x1, y1, z).setUv(u1, v1).setColor(color) - .addVertex(matrix, x1, y2, z).setUv(u1, v2).setColor(color) - .addVertex(matrix, x2, y2, z).setUv(u2, v2).setColor(color) - .addVertex(matrix, x2, y1, z).setUv(u2, v1).setColor(color); + BufferBuilder builder = Tesselator.getInstance().getBuilder(); + builder.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX_COLOR); + builder.vertex(matrix, x1, y1, z).uv(u1, v1).color(color).endVertex(); + builder.vertex(matrix, x1, y2, z).uv(u1, v2).color(color).endVertex(); + builder.vertex(matrix, x2, y2, z).uv(u2, v2).color(color).endVertex(); + builder.vertex(matrix, x2, y1, z).uv(u2, v1).color(color).endVertex(); RenderSystem.setShader(GameRenderer::getPositionTexColorShader); RenderSystem.setShaderTexture(0, texture); - BufferUploader.drawWithShader(builder.build()); + BufferUploader.drawWithShader(builder.end()); } private interface BatchedDrawable { diff --git a/src/main/java/dev/galacticraft/mod/command/DimensionTpCommand.java b/src/main/java/dev/galacticraft/mod/command/DimensionTpCommand.java index dd29ccd3d4..b2456ee5d2 100644 --- a/src/main/java/dev/galacticraft/mod/command/DimensionTpCommand.java +++ b/src/main/java/dev/galacticraft/mod/command/DimensionTpCommand.java @@ -26,12 +26,10 @@ import com.mojang.brigadier.CommandDispatcher; import com.mojang.brigadier.context.CommandContext; import com.mojang.brigadier.exceptions.CommandSyntaxException; -import dev.galacticraft.api.registry.AddonRegistries; -import dev.galacticraft.api.universe.celestialbody.CelestialBody; import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.content.GCCelestialBodies; -import dev.galacticraft.mod.network.s2c.OpenCelestialScreenPayload; +import dev.galacticraft.mod.network.GCScreenType; import dev.galacticraft.mod.util.Translations; +import net.fabricmc.fabric.api.networking.v1.PacketByteBufs; import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; import net.minecraft.commands.CommandSourceStack; import net.minecraft.commands.Commands; @@ -40,7 +38,6 @@ import net.minecraft.commands.arguments.coordinates.BlockPosArgument; import net.minecraft.commands.arguments.coordinates.Vec3Argument; import net.minecraft.core.BlockPos; -import net.minecraft.core.Holder; import net.minecraft.network.chat.Component; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; @@ -110,8 +107,11 @@ private static int openCelestialScreen(CommandContext contex var player = context.getSource().getPlayerOrException(); player.galacticraft$openCelestialScreen(null); - Holder> body = player.level().galacticraft$getCelestialBody(); - ServerPlayNetworking.send(player, new OpenCelestialScreenPayload(null, body != null ? body : player.registryAccess().registryOrThrow(AddonRegistries.CELESTIAL_BODY).getHolderOrThrow(GCCelestialBodies.EARTH))); //todo + var buf = PacketByteBufs.create(); + buf.writeEnum(GCScreenType.CELESTIAL); + buf.writeBoolean(false); + ServerPlayNetworking.send(player, Constant.Packet.OPEN_SCREEN, buf); + return Command.SINGLE_SUCCESS; } diff --git a/src/main/java/dev/galacticraft/mod/command/GCHoustonCommand.java b/src/main/java/dev/galacticraft/mod/command/GCHoustonCommand.java index 6c1dc03cae..9971eb956a 100644 --- a/src/main/java/dev/galacticraft/mod/command/GCHoustonCommand.java +++ b/src/main/java/dev/galacticraft/mod/command/GCHoustonCommand.java @@ -27,6 +27,7 @@ import com.mojang.brigadier.context.CommandContext; import com.mojang.brigadier.exceptions.CommandSyntaxException; import com.mojang.brigadier.exceptions.SimpleCommandExceptionType; +import dev.galacticraft.api.universe.celestialbody.CelestialBody; import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.util.Translations; import it.unimi.dsi.fastutil.objects.Object2IntArrayMap; @@ -59,7 +60,7 @@ private static int teleportToEarth(CommandContext context) t throw IN_OVERWORLD.create(); } - if (context.getSource().getLevel().galacticraft$getCelestialBody() == null) { + if (CelestialBody.getByDimension(context.getSource().registryAccess(), context.getSource().getLevel().dimension()).isEmpty()) { throw IN_OTHER_DIMENSION.create(); } diff --git a/src/main/java/dev/galacticraft/mod/compat/rei/client/category/DefaultFabricationCategory.java b/src/main/java/dev/galacticraft/mod/compat/rei/client/category/DefaultFabricationCategory.java index 19713a5f58..1dfa46e233 100644 --- a/src/main/java/dev/galacticraft/mod/compat/rei/client/category/DefaultFabricationCategory.java +++ b/src/main/java/dev/galacticraft/mod/compat/rei/client/category/DefaultFabricationCategory.java @@ -68,11 +68,11 @@ public Component getTitle() { widgets.add(Widgets.createRecipeBase(bounds)); widgets.add(Widgets.createTexturedWidget(Constant.ScreenTexture.RECIPE_VEIWER_DISPLAY_TEXTURE, new Rectangle(startPoint.x, startPoint.y, 162, 82))); - // Diamond ingredients + // Diamond input // Silicon // Silicon // Redstone - // User ingredients + // User input // Output widgets.add(Widgets.createSlot(new Point(startPoint.x + 1, startPoint.y + 1)).entries(recipeDisplay.getInputEntries().get(0))); widgets.add(Widgets.createSlot(new Point(startPoint.x + 55, startPoint.y + 47)).entries(recipeDisplay.getInputEntries().get(1))); diff --git a/src/main/java/dev/galacticraft/mod/compat/rei/common/transfer/info/FabricationMenuInfo.java b/src/main/java/dev/galacticraft/mod/compat/rei/common/transfer/info/FabricationMenuInfo.java index f9ab0d9bd1..401b91d2b0 100644 --- a/src/main/java/dev/galacticraft/mod/compat/rei/common/transfer/info/FabricationMenuInfo.java +++ b/src/main/java/dev/galacticraft/mod/compat/rei/common/transfer/info/FabricationMenuInfo.java @@ -32,23 +32,20 @@ import me.shedaniel.rei.api.common.transfer.info.simple.SimplePlayerInventoryMenuInfo; import me.shedaniel.rei.api.common.transfer.info.stack.SlotAccessor; import me.shedaniel.rei.api.common.transfer.info.stack.VanillaSlotAccessor; -import net.minecraft.world.inventory.Slot; -import net.minecraft.world.item.crafting.RecipeInput; +import net.minecraft.world.Container; import java.util.ArrayList; import java.util.List; -public record FabricationMenuInfo, T extends RecipeMachineMenu, D extends DefaultFabricationDisplay>(D display) implements SimplePlayerInventoryMenuInfo { +public record FabricationMenuInfo, T extends RecipeMachineMenu, D extends DefaultFabricationDisplay>(D display) implements SimplePlayerInventoryMenuInfo { @Override public Iterable getInputSlots(MenuInfoContext context) { T menu = context.getMenu(); List list = new ArrayList<>(5); - for (Slot slot : context.getMenu().slots) { - if (slot instanceof StorageSlot machineSlot) { - if (machineSlot.getWrapped().transferMode().isInput()) { - list.add(new VanillaSlotAccessor(machineSlot)); - } + for (StorageSlot slot : menu.machineSlots) { + if (slot.getSlot().inputType().isInput()) { + list.add(new VanillaSlotAccessor(slot)); } } return list; diff --git a/src/main/java/dev/galacticraft/mod/compat/rei/common/transfer/info/SimpleMachineMenuInfo.java b/src/main/java/dev/galacticraft/mod/compat/rei/common/transfer/info/SimpleMachineMenuInfo.java index 25a2b19f9e..8e086bef02 100644 --- a/src/main/java/dev/galacticraft/mod/compat/rei/common/transfer/info/SimpleMachineMenuInfo.java +++ b/src/main/java/dev/galacticraft/mod/compat/rei/common/transfer/info/SimpleMachineMenuInfo.java @@ -32,24 +32,21 @@ import me.shedaniel.rei.api.common.transfer.info.simple.SimpleGridMenuInfo; import me.shedaniel.rei.api.common.transfer.info.stack.SlotAccessor; import me.shedaniel.rei.api.common.transfer.info.stack.VanillaSlotAccessor; +import net.minecraft.world.Container; import net.minecraft.world.inventory.AbstractContainerMenu; -import net.minecraft.world.inventory.Slot; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Recipe; -import net.minecraft.world.item.crafting.RecipeInput; import java.util.ArrayList; import java.util.List; -public record SimpleMachineMenuInfo, B extends RecipeMachineBlockEntity, T extends RecipeMachineMenu, D extends SimpleGridMenuDisplay>(int width, int height, int resultIndex, D display) implements SimpleGridMenuInfo { +public record SimpleMachineMenuInfo, B extends RecipeMachineBlockEntity, T extends RecipeMachineMenu, D extends SimpleGridMenuDisplay>(int width, int height, int resultIndex, D display) implements SimpleGridMenuInfo { @Override public Iterable getInputSlots(MenuInfoContext context) { List accessors = new ArrayList<>(this.width() * this.height()); - for (Slot slot : context.getMenu().slots) { - if (slot instanceof StorageSlot machineSlot) { - if (machineSlot.getWrapped().transferMode().isInput()) { - accessors.add(new VanillaSlotAccessor(machineSlot)); - } + for (StorageSlot machineSlot : context.getMenu().machineSlots) { + if (machineSlot.getSlot().inputType().isInput()) { + accessors.add(new VanillaSlotAccessor(machineSlot)); } } return accessors; diff --git a/src/main/java/dev/galacticraft/mod/content/GCCelestialBodies.java b/src/main/java/dev/galacticraft/mod/content/GCCelestialBodies.java index c91841a19f..3613e91eda 100644 --- a/src/main/java/dev/galacticraft/mod/content/GCCelestialBodies.java +++ b/src/main/java/dev/galacticraft/mod/content/GCCelestialBodies.java @@ -54,7 +54,7 @@ import it.unimi.dsi.fastutil.ints.Int2ObjectMap; import net.minecraft.core.Holder; import net.minecraft.core.HolderGetter; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceKey; import net.minecraft.util.Mth; @@ -79,7 +79,7 @@ public class GCCelestialBodies { public static final ResourceKey> URANUS = key("uranus"); public static final ResourceKey> NEPTUNE = key("neptune"); - public static void bootstrapRegistries(BootstrapContext> context) { + public static void bootstrapRegistries(BootstapContext> context) { HolderGetter> teleporters = context.lookup(AddonRegistries.CELESTIAL_TELEPORTER); HolderGetter galaxies = context.lookup(AddonRegistries.GALAXY); diff --git a/src/main/java/dev/galacticraft/mod/content/GCLootTables.java b/src/main/java/dev/galacticraft/mod/content/GCLootTables.java index b5461755f5..3e470f07a4 100644 --- a/src/main/java/dev/galacticraft/mod/content/GCLootTables.java +++ b/src/main/java/dev/galacticraft/mod/content/GCLootTables.java @@ -23,10 +23,13 @@ package dev.galacticraft.mod.content; import dev.galacticraft.mod.Constant; -import net.minecraft.core.registries.Registries; -import net.minecraft.resources.ResourceKey; -import net.minecraft.world.level.storage.loot.LootTable; +import dev.galacticraft.mod.mixin.BuiltInLootTablesAccessor; +import net.minecraft.resources.ResourceLocation; public class GCLootTables { - public static final ResourceKey BASIC_MOON_RUINS_CHEST = Constant.key(Registries.LOOT_TABLE, Constant.LootTable.BASIC_MOON_RUINS_CHEST); + public static final ResourceLocation BASIC_MOON_RUINS_CHEST = Constant.id(Constant.LootTable.BASIC_MOON_RUINS_CHEST); + + public static void register() { + BuiltInLootTablesAccessor.callRegisterLootTable(BASIC_MOON_RUINS_CHEST); + } } diff --git a/src/main/java/dev/galacticraft/mod/content/GCRocketParts.java b/src/main/java/dev/galacticraft/mod/content/GCRocketParts.java index 1a0574c000..c3756a944f 100644 --- a/src/main/java/dev/galacticraft/mod/content/GCRocketParts.java +++ b/src/main/java/dev/galacticraft/mod/content/GCRocketParts.java @@ -35,7 +35,7 @@ import dev.galacticraft.mod.content.rocket.part.config.StorageUpgradeConfig; import dev.galacticraft.mod.content.rocket.part.type.StorageUpgradeType; import net.fabricmc.fabric.api.transfer.v1.fluid.FluidConstants; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.resources.ResourceKey; import net.minecraft.world.item.Items; import net.minecraft.world.item.crafting.Ingredient; @@ -55,7 +55,7 @@ public class GCRocketParts { public static final ResourceKey> TIER_2_BOOSTER = booster("tier_2"); public static final ResourceKey> STORAGE_UPGRADE = upgrade("storage"); - public static void bootstrapCone(BootstrapContext> context) { + public static void bootstrapCone(BootstapContext> context) { context.register(TIER_1_CONE, BasicRocketConeType.INSTANCE.configure( new BasicRocketConeConfig( @@ -100,7 +100,7 @@ public static void bootstrapCone(BootstrapContext> context) { ); } - public static void bootstrapBody(BootstrapContext> context) { + public static void bootstrapBody(BootstapContext> context) { context.register(TIER_1_BODY, BasicRocketBodyType.INSTANCE.configure(new BasicRocketBodyConfig( AccessWeightTravelPredicateType.INSTANCE.configure(new AccessWeightTravelPredicateConfig(1, TravelPredicateType.Result.PASS)), @@ -120,7 +120,7 @@ public static void bootstrapBody(BootstrapContext> context) { ); } - public static void bootstrapFin(BootstrapContext> context) { + public static void bootstrapFin(BootstapContext> context) { context.register(TIER_1_FIN, BasicRocketFinType.INSTANCE.configure( new BasicRocketFinConfig( @@ -140,7 +140,7 @@ public static void bootstrapFin(BootstrapContext> context) { ); } - public static void bootstrapBooster(BootstrapContext> context) { + public static void bootstrapBooster(BootstapContext> context) { context.register(TIER_1_BOOSTER, BasicRocketBoosterType.INSTANCE.configure( new BasicRocketBoosterConfig( @@ -156,7 +156,7 @@ public static void bootstrapBooster(BootstrapContext> contex ); } - public static void bootstrapEngine(BootstrapContext> context) { + public static void bootstrapEngine(BootstapContext> context) { context.register(TIER_1_ENGINE, BasicRocketEngineType.INSTANCE.configure( new BasicRocketEngineConfig( @@ -173,7 +173,7 @@ public static void bootstrapEngine(BootstrapContext> context) ); } - public static void bootstrapUpgrade(BootstrapContext> context) { + public static void bootstrapUpgrade(BootstapContext> context) { context.register(STORAGE_UPGRADE, RocketUpgrade.create(new StorageUpgradeConfig(1, RocketPartRecipeBuilder.create() .define('C', Ingredient.of(Items.CHEST)) diff --git a/src/main/java/dev/galacticraft/mod/content/GCStats.java b/src/main/java/dev/galacticraft/mod/content/GCStats.java index ae80500147..fc0a266210 100644 --- a/src/main/java/dev/galacticraft/mod/content/GCStats.java +++ b/src/main/java/dev/galacticraft/mod/content/GCStats.java @@ -23,8 +23,6 @@ package dev.galacticraft.mod.content; import dev.galacticraft.mod.Constant; -import net.minecraft.core.Registry; -import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.resources.ResourceLocation; import net.minecraft.stats.StatFormatter; import net.minecraft.stats.Stats; @@ -34,10 +32,7 @@ public class GCStats { public static final ResourceLocation INTERACT_WITH_NASA_WORKBENCH = register("interact_with_nasa_workbench", StatFormatter.DEFAULT); public static ResourceLocation register(String id, StatFormatter formatter) { - ResourceLocation resourceLocation = Constant.id(id); - Registry.register(BuiltInRegistries.CUSTOM_STAT, id, resourceLocation); - Stats.CUSTOM.get(resourceLocation, formatter); - return resourceLocation; + return Stats.makeCustomStat(Constant.MOD_ID + ":" + id, formatter); } public static void register() {} diff --git a/src/main/java/dev/galacticraft/mod/content/GCTeleporterTypes.java b/src/main/java/dev/galacticraft/mod/content/GCTeleporterTypes.java index 0283c3c404..58611cd6f0 100644 --- a/src/main/java/dev/galacticraft/mod/content/GCTeleporterTypes.java +++ b/src/main/java/dev/galacticraft/mod/content/GCTeleporterTypes.java @@ -33,7 +33,7 @@ import dev.galacticraft.mod.Constant.Teleporters; import dev.galacticraft.mod.content.teleporters.LanderCelestialTeleporterType; import dev.galacticraft.mod.content.teleporters.OverworldCelestialTeleporterType; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.resources.ResourceKey; public class GCTeleporterTypes { @@ -45,7 +45,7 @@ public class GCTeleporterTypes { public static void register() {} - public static void bootstrapRegistries(BootstrapContext> context) { + public static void bootstrapRegistries(BootstapContext> context) { context.register(BuiltinObjects.DIRECT_CELESTIAL_TELEPORTER, new CelestialTeleporter<>(DirectCelestialTeleporterType.INSTANCE, DefaultCelestialTeleporterConfig.INSTANCE)); context.register(LANDER_CELESTIAL_TELEPORTER, new CelestialTeleporter<>(LANDER, DefaultCelestialTeleporterConfig.INSTANCE)); context.register(OVERWORLD_TELEPORTER, new CelestialTeleporter<>(OVERWORLD, DefaultCelestialTeleporterConfig.INSTANCE)); diff --git a/src/main/java/dev/galacticraft/mod/content/advancements/critereon/CreateSpaceStationTrigger.java b/src/main/java/dev/galacticraft/mod/content/advancements/critereon/CreateSpaceStationTrigger.java index 25573a7906..f6653c917b 100644 --- a/src/main/java/dev/galacticraft/mod/content/advancements/critereon/CreateSpaceStationTrigger.java +++ b/src/main/java/dev/galacticraft/mod/content/advancements/critereon/CreateSpaceStationTrigger.java @@ -24,10 +24,12 @@ import com.mojang.serialization.Codec; import com.mojang.serialization.codecs.RecordCodecBuilder; +import dev.galacticraft.mod.content.entity.boss.SkeletonBoss; import net.minecraft.advancements.critereon.ContextAwarePredicate; import net.minecraft.advancements.critereon.EntityPredicate; import net.minecraft.advancements.critereon.SimpleCriterionTrigger; import net.minecraft.server.level.ServerPlayer; +import net.minecraft.util.ExtraCodecs; import java.util.Optional; @@ -44,7 +46,7 @@ public void trigger(ServerPlayer player) { public record TriggerInstance(Optional player) implements SimpleCriterionTrigger.SimpleInstance { public static final Codec CODEC = RecordCodecBuilder.create( instance -> instance.group( - EntityPredicate.ADVANCEMENT_CODEC.optionalFieldOf("player").forGetter(TriggerInstance::player) + ExtraCodecs.strictOptionalField(EntityPredicate.ADVANCEMENT_CODEC, "player").forGetter(TriggerInstance::player) ) .apply(instance, TriggerInstance::new) ); diff --git a/src/main/java/dev/galacticraft/mod/content/advancements/critereon/FindMoonBossTrigger.java b/src/main/java/dev/galacticraft/mod/content/advancements/critereon/FindMoonBossTrigger.java index f76c517333..7c99308adb 100644 --- a/src/main/java/dev/galacticraft/mod/content/advancements/critereon/FindMoonBossTrigger.java +++ b/src/main/java/dev/galacticraft/mod/content/advancements/critereon/FindMoonBossTrigger.java @@ -29,6 +29,7 @@ import net.minecraft.advancements.critereon.EntityPredicate; import net.minecraft.advancements.critereon.SimpleCriterionTrigger; import net.minecraft.server.level.ServerPlayer; +import net.minecraft.util.ExtraCodecs; import java.util.Optional; @@ -45,7 +46,7 @@ public void trigger(ServerPlayer player) { public record TriggerInstance(Optional player) implements SimpleCriterionTrigger.SimpleInstance { public static final Codec CODEC = RecordCodecBuilder.create( instance -> instance.group( - EntityPredicate.ADVANCEMENT_CODEC.optionalFieldOf("player").forGetter(TriggerInstance::player) + ExtraCodecs.strictOptionalField(EntityPredicate.ADVANCEMENT_CODEC, "player").forGetter(TriggerInstance::player) ) .apply(instance, TriggerInstance::new) ); diff --git a/src/main/java/dev/galacticraft/mod/content/advancements/critereon/LaunchRocketTrigger.java b/src/main/java/dev/galacticraft/mod/content/advancements/critereon/LaunchRocketTrigger.java index a65d1761c9..870ee032e5 100644 --- a/src/main/java/dev/galacticraft/mod/content/advancements/critereon/LaunchRocketTrigger.java +++ b/src/main/java/dev/galacticraft/mod/content/advancements/critereon/LaunchRocketTrigger.java @@ -30,6 +30,7 @@ import net.minecraft.advancements.critereon.EntityPredicate; import net.minecraft.advancements.critereon.SimpleCriterionTrigger; import net.minecraft.server.level.ServerPlayer; +import net.minecraft.util.ExtraCodecs; import java.util.Optional; @@ -53,7 +54,7 @@ public void trigger(ServerPlayer player) { public record TriggerInstance(Optional player) implements SimpleCriterionTrigger.SimpleInstance { public static final Codec CODEC = RecordCodecBuilder.create( instance -> instance.group( - EntityPredicate.ADVANCEMENT_CODEC.optionalFieldOf("player").forGetter(TriggerInstance::player) + ExtraCodecs.strictOptionalField(EntityPredicate.ADVANCEMENT_CODEC, "player").forGetter(TriggerInstance::player) ) .apply(instance, TriggerInstance::new) ); diff --git a/src/main/java/dev/galacticraft/mod/content/block/GCBlock.java b/src/main/java/dev/galacticraft/mod/content/block/GCBlock.java index 649b01f3e1..adebbaebe7 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/GCBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/GCBlock.java @@ -30,9 +30,9 @@ import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Style; import net.minecraft.world.MenuProvider; -import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; +import net.minecraft.world.level.BlockGetter; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.entity.BlockEntity; @@ -49,9 +49,7 @@ public GCBlock(Properties properties) { } @Override - public void appendHoverText(ItemStack stack, Item.TooltipContext context, List tooltip, TooltipFlag options) { - super.appendHoverText(stack, context, tooltip, options); - + public void appendHoverText(ItemStack itemStack, @Nullable BlockGetter blockGetter, List tooltip, TooltipFlag tooltipFlag) { Component description = Component.translatable(getDescriptionId() + ".description"); if (Screen.hasShiftDown()) { tooltip.addAll(Minecraft.getInstance().font.getSplitter().splitLines(description, 150, Style.EMPTY).stream().map(formattedText -> Component.literal(formattedText.getString()).withStyle(ChatFormatting.GRAY)).toList()); diff --git a/src/main/java/dev/galacticraft/mod/content/block/decoration/GratingBlock.java b/src/main/java/dev/galacticraft/mod/content/block/decoration/GratingBlock.java index 207dc6e276..bda1955b2f 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/decoration/GratingBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/decoration/GratingBlock.java @@ -55,7 +55,7 @@ public class GratingBlock extends Block implements FluidLoggable { public GratingBlock(Properties settings) { super(settings); this.registerDefaultState(this.getStateDefinition().any() - .setValue(FLUID, ResourceLocation.withDefaultNamespace("invalid")) + .setValue(FLUID, new ResourceLocation("invalid")) .setValue(FlowingFluid.LEVEL, 8) .setValue(STATE, State.UPPER) .setValue(FlowingFluid.FALLING, false)); diff --git a/src/main/java/dev/galacticraft/mod/content/block/decoration/LunarCartographyTableBlock.java b/src/main/java/dev/galacticraft/mod/content/block/decoration/LunarCartographyTableBlock.java index 6270d4aafc..d070145f58 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/decoration/LunarCartographyTableBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/decoration/LunarCartographyTableBlock.java @@ -23,6 +23,7 @@ package dev.galacticraft.mod.content.block.decoration; import net.minecraft.core.BlockPos; +import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; import net.minecraft.world.MenuProvider; import net.minecraft.world.entity.player.Player; @@ -38,7 +39,7 @@ public LunarCartographyTableBlock(Properties settings) { } @Override - protected InteractionResult useWithoutItem(BlockState state, Level world, BlockPos pos, Player player, BlockHitResult hit) { + public InteractionResult use(BlockState state, Level world, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hit) { return InteractionResult.PASS; } diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/CryogenicChamberPartBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/CryogenicChamberPartBlockEntity.java index aca292ecc0..4503ad0fd8 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/CryogenicChamberPartBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/CryogenicChamberPartBlockEntity.java @@ -25,7 +25,6 @@ import dev.galacticraft.mod.api.block.MultiBlockPart; import dev.galacticraft.mod.content.GCBlockEntityTypes; import net.minecraft.core.BlockPos; -import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.protocol.Packet; import net.minecraft.network.protocol.game.ClientGamePacketListener; @@ -43,16 +42,16 @@ public CryogenicChamberPartBlockEntity(BlockPos blockPos, BlockState blockState) } @Override - protected void saveAdditional(CompoundTag tag, HolderLookup.Provider lookup) { - super.saveAdditional(tag, lookup); + public void saveAdditional(CompoundTag tag) { + super.saveAdditional(tag); if (this.basePos != BlockPos.ZERO) { tag.putLong("Base", this.basePos.asLong()); } } @Override - protected void loadAdditional(CompoundTag tag, HolderLookup.Provider registryLookup) { - super.loadAdditional(tag, registryLookup); + public void load(CompoundTag tag) { + super.load(tag); if (tag.contains("Base")) { this.basePos = BlockPos.of(tag.getLong("Base")); } @@ -65,8 +64,8 @@ public Packet getUpdatePacket() { } @Override - public CompoundTag getUpdateTag(HolderLookup.Provider registryLookup) { - return this.saveWithoutMetadata(registryLookup); + public CompoundTag getUpdateTag() { + return this.saveWithoutMetadata(); } @Override diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/DungeonSpawnerBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/DungeonSpawnerBlockEntity.java index 7192662934..a84e7b0be9 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/DungeonSpawnerBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/DungeonSpawnerBlockEntity.java @@ -30,11 +30,11 @@ import dev.galacticraft.mod.content.entity.boss.AbstractBossEntity; import net.minecraft.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.HolderLookup; import net.minecraft.core.Vec3i; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceLocation; +import net.minecraft.server.MinecraftServer; import net.minecraft.server.level.ServerLevel; import net.minecraft.util.RandomSource; import net.minecraft.world.entity.Entity; @@ -46,10 +46,12 @@ import net.minecraft.world.level.Level; import net.minecraft.world.level.Spawner; 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.phys.AABB; import net.minecraft.world.phys.Vec3; +import java.lang.reflect.Constructor; import java.util.ArrayList; import java.util.List; @@ -135,7 +137,7 @@ public void tick(ServerLevel level, BlockPos pos, BlockState state) { // Now spawn the boss if (this.boss != null) { - this.boss.finalizeSpawn(level, level.getCurrentDifficultyAt(this.boss.blockPosition()), MobSpawnType.SPAWNER, null); + this.boss.finalizeSpawn(level, level.getCurrentDifficultyAt(this.boss.blockPosition()), MobSpawnType.SPAWNER, null, null); level.addFreshEntity(this.boss); this.playSpawnSound(this.boss); this.spawned = true; @@ -165,8 +167,8 @@ public void setRoom(Vec3i coords, Vec3i size) { } @Override - protected void loadAdditional(CompoundTag tag, HolderLookup.Provider registryLookup) { - super.loadAdditional(tag, registryLookup); + public void load(CompoundTag tag) { + super.load(tag); this.playerInRange = this.lastPlayerInRange = tag.getBoolean("playerInRange"); this.isBossDefeated = tag.getBoolean("defeated"); @@ -198,8 +200,8 @@ protected void loadAdditional(CompoundTag tag, HolderLookup.Provider registryLoo } @Override - protected void saveAdditional(CompoundTag tag, HolderLookup.Provider lookup) { - super.saveAdditional(tag, lookup); + public void saveAdditional(CompoundTag tag) { + super.saveAdditional(tag); tag.putBoolean("playerInRange", this.playerInRange); tag.putBoolean("defeated", this.isBossDefeated); diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/RocketWorkbenchBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/RocketWorkbenchBlockEntity.java index 5f62982a2a..3c931a7a0a 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/RocketWorkbenchBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/RocketWorkbenchBlockEntity.java @@ -30,10 +30,10 @@ import dev.galacticraft.mod.screen.RocketWorkbenchMenu; import net.fabricmc.fabric.api.screenhandler.v1.ExtendedScreenHandlerFactory; import net.minecraft.core.BlockPos; -import net.minecraft.core.HolderLookup; import net.minecraft.core.Registry; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.ListTag; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; @@ -45,10 +45,9 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.state.BlockState; -import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -public class RocketWorkbenchBlockEntity extends BlockEntity implements ExtendedScreenHandlerFactory, VariableSizedContainer.Listener { +public class RocketWorkbenchBlockEntity extends BlockEntity implements ExtendedScreenHandlerFactory, VariableSizedContainer.Listener { public final SimpleContainer output = new SimpleContainer(1) { @Override public boolean canPlaceItem(int index, ItemStack stack) { @@ -70,39 +69,57 @@ public RocketWorkbenchBlockEntity(BlockPos pos, BlockState state) { } @Override - protected void saveAdditional(CompoundTag tag, HolderLookup.Provider provider) { - super.saveAdditional(tag, provider); + protected void saveAdditional(CompoundTag tag) { + super.saveAdditional(tag); - ListTag tag1 = this.output.createTag(provider); + ListTag tag1 = this.output.createTag(); if (!tag1.isEmpty()) tag.put("Output", tag1.get(0)); - tag.put("Cone", this.cone.toTag(provider)); - tag.put("Body", this.body.toTag(provider)); - tag.put("Fins", this.fins.toTag(provider)); - tag.put("Booster", this.booster.toTag(provider)); - tag.put("Engine", this.engine.toTag(provider)); - tag.put("Upgrade", this.upgrade.toTag(provider)); + tag.put("Cone", this.cone.toTag()); + tag.put("Body", this.body.toTag()); + tag.put("Fins", this.fins.toTag()); + tag.put("Booster", this.booster.toTag()); + tag.put("Engine", this.engine.toTag()); + tag.put("Upgrade", this.upgrade.toTag()); tag.putByteArray("Color", this.color); } @Override - protected void loadAdditional(CompoundTag tag, HolderLookup.Provider registryLookup) { - super.loadAdditional(tag, registryLookup); + public void load(CompoundTag tag) { + super.load(tag); if (tag.contains("Output")) { ListTag list = new ListTag(); list.add(tag.get("Output")); - this.output.fromTag(list, registryLookup); + this.output.fromTag(list); } - this.cone.readTag(tag.getCompound("Cone"), registryLookup); - this.body.readTag(tag.getCompound("Body"), registryLookup); - this.fins.readTag(tag.getCompound("Fins"), registryLookup); - this.booster.readTag(tag.getCompound("Booster"), registryLookup); - this.engine.readTag(tag.getCompound("Engine"), registryLookup); - this.upgrade.readTag(tag.getCompound("Upgrade"), registryLookup); + this.cone.readTag(tag.getCompound("Cone")); + this.body.readTag(tag.getCompound("Body")); + this.fins.readTag(tag.getCompound("Fins")); + this.booster.readTag(tag.getCompound("Booster")); + this.engine.readTag(tag.getCompound("Engine")); + this.upgrade.readTag(tag.getCompound("Upgrade")); this.color = tag.getByteArray("Color"); } @Override - public @NotNull Component getDisplayName() { + public void writeScreenOpeningData(ServerPlayer player, FriendlyByteBuf buf) { + buf.writeBlockPos(this.getBlockPos()); + + buf.writeBoolean(this.cone.selection != null); + if (this.cone.selection != null) buf.writeResourceLocation(this.cone.selection); + buf.writeBoolean(this.body.selection != null); + if (this.body.selection != null) buf.writeResourceLocation(this.body.selection); + buf.writeBoolean(this.fins.selection != null); + if (this.fins.selection != null) buf.writeResourceLocation(this.fins.selection); + buf.writeBoolean(this.booster.selection != null); + if (this.booster.selection != null) buf.writeResourceLocation(this.booster.selection); + buf.writeBoolean(this.engine.selection != null); + if (this.engine.selection != null) buf.writeResourceLocation(this.engine.selection); + buf.writeBoolean(this.upgrade.selection != null); + if (this.upgrade.selection != null) buf.writeResourceLocation(this.upgrade.selection); + } + + @Override + public Component getDisplayName() { return this.getBlockState().getBlock().getName(); } @@ -122,11 +139,6 @@ public void onItemChanged() { this.setChanged(); } - @Override - public RocketWorkbenchMenu.OpeningData getScreenOpeningData(ServerPlayer player) { - return new RocketWorkbenchMenu.OpeningData(this.getBlockPos(), this.cone.selection, this.body.selection, this.fins.selection, this.booster.selection, this.engine.selection, this.upgrade.selection); - } - public class RecipeSelection

> { private final ResourceKey> key; public final VariableSizedContainer inventory; @@ -168,8 +180,8 @@ private void updateSize() { return value != null ? value.getRecipe() : null; } - public CompoundTag toTag(HolderLookup.Provider lookup) { - CompoundTag nbt = this.inventory.toTag(lookup); + public CompoundTag toTag() { + CompoundTag nbt = this.inventory.toTag(); if (this.selection != null) { nbt.putString("selection", this.selection.toString()); // nbt.putInt("size", this.inventory.getContainerSize()); @@ -177,11 +189,11 @@ public CompoundTag toTag(HolderLookup.Provider lookup) { return nbt; } - public void readTag(CompoundTag nbt, HolderLookup.Provider lookup) { - this.inventory.readTag(nbt, lookup); + public void readTag(CompoundTag nbt) { + this.inventory.readTag(nbt); String selLoc = nbt.getString("selection"); if (!selLoc.isEmpty()) { - this.selection = ResourceLocation.parse(selLoc); + this.selection = new ResourceLocation(selLoc); // this.inventory.resize(nbt.getInt("size")); } } diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/SolarPanelPartBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/SolarPanelPartBlockEntity.java index 715c8fb66c..b3839ae2e8 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/SolarPanelPartBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/SolarPanelPartBlockEntity.java @@ -25,7 +25,6 @@ import dev.galacticraft.mod.api.block.MultiBlockPart; import dev.galacticraft.mod.content.GCBlockEntityTypes; import net.minecraft.core.BlockPos; -import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.state.BlockState; @@ -38,16 +37,16 @@ public SolarPanelPartBlockEntity(BlockPos pos, BlockState state) { } @Override - protected void saveAdditional(CompoundTag tag, HolderLookup.Provider lookup) { - super.saveAdditional(tag, lookup); + public void saveAdditional(CompoundTag tag) { + super.saveAdditional(tag); if (this.basePos != BlockPos.ZERO) { tag.putLong("Base", this.basePos.asLong()); } } @Override - protected void loadAdditional(CompoundTag tag, HolderLookup.Provider registryLookup) { - super.loadAdditional(tag, registryLookup); + public void load(CompoundTag tag) { + super.load(tag); if (tag.contains("Base")) { this.basePos = BlockPos.of(tag.getLong("Base")); } diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/WalkwayBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/WalkwayBlockEntity.java index 79d1cdd218..63c3f03bd9 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/WalkwayBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/WalkwayBlockEntity.java @@ -26,7 +26,6 @@ import dev.galacticraft.mod.content.GCBlockEntityTypes; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.protocol.game.ClientboundBlockEntityDataPacket; import net.minecraft.world.level.block.entity.BlockEntity; @@ -42,15 +41,15 @@ public WalkwayBlockEntity(BlockPos pos, BlockState state) { } @Override - protected void saveAdditional(CompoundTag nbt, HolderLookup.Provider registryLookup) { - super.saveAdditional(nbt, registryLookup); + public void saveAdditional(CompoundTag nbt) { + super.saveAdditional(nbt); this.writeConnectionNbt(nbt); this.writeWalkwayNbt(nbt); } @Override - protected void loadAdditional(CompoundTag nbt, HolderLookup.Provider registryLookup) { - super.loadAdditional(nbt, registryLookup); + public void load(CompoundTag nbt) { + super.load(nbt); this.readConnectionNbt(nbt); this.readWalkwayNbt(nbt); } @@ -88,7 +87,7 @@ public ClientboundBlockEntityDataPacket getUpdatePacket() { } @Override - public CompoundTag getUpdateTag(HolderLookup.Provider registryLookup) { - return this.saveWithoutMetadata(registryLookup); + public CompoundTag getUpdateTag() { + return this.saveWithoutMetadata(); } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/AdvancedSolarPanelBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/AdvancedSolarPanelBlockEntity.java index 94c50dc457..7f7ebf78f4 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/AdvancedSolarPanelBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/AdvancedSolarPanelBlockEntity.java @@ -22,41 +22,15 @@ package dev.galacticraft.mod.content.block.entity.machine; -import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; -import dev.galacticraft.machinelib.api.filter.ResourceFilters; -import dev.galacticraft.machinelib.api.menu.MachineMenu; -import dev.galacticraft.machinelib.api.storage.MachineEnergyStorage; -import dev.galacticraft.machinelib.api.storage.MachineItemStorage; -import dev.galacticraft.machinelib.api.storage.StorageSpec; -import dev.galacticraft.machinelib.api.storage.slot.ItemResourceSlot; -import dev.galacticraft.machinelib.api.transfer.TransferType; import dev.galacticraft.mod.Galacticraft; import dev.galacticraft.mod.api.block.entity.AbstractSolarPanelBlockEntity; -import dev.galacticraft.mod.content.GCBlockEntityTypes; -import dev.galacticraft.mod.screen.GCMenuTypes; -import dev.galacticraft.mod.screen.SolarPanelMenu; +import dev.galacticraft.mod.content.GCMachineTypes; import net.minecraft.core.BlockPos; -import net.minecraft.world.entity.player.Inventory; -import net.minecraft.world.entity.player.Player; import net.minecraft.world.level.block.state.BlockState; -import org.jetbrains.annotations.Nullable; public class AdvancedSolarPanelBlockEntity extends AbstractSolarPanelBlockEntity { - private static final StorageSpec STORAGE_SPEC = StorageSpec.of( - MachineItemStorage.spec( - ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(8, 62) - .filter(ResourceFilters.CAN_INSERT_ENERGY) - ), - MachineEnergyStorage.spec( - Galacticraft.CONFIG.machineEnergyStorageSize(), - 0, - Galacticraft.CONFIG.solarPanelEnergyProductionRate() * 2 - ) - ); - public AdvancedSolarPanelBlockEntity(BlockPos pos, BlockState state) { - super(GCBlockEntityTypes.ADVANCED_SOLAR_PANEL, pos, state, STORAGE_SPEC); + super(GCMachineTypes.ADVANCED_SOLAR_PANEL, pos, state); } @Override @@ -78,9 +52,4 @@ protected long calculateEnergyProduction(long time, double multiplier) { } return (long) (Galacticraft.CONFIG.solarPanelEnergyProductionRate() * multiplier); } - - @Override - public @Nullable MachineMenu createMenu(int syncId, Inventory inventory, Player player) { - return new SolarPanelMenu<>(GCMenuTypes.ADVANCED_SOLAR_PANEL, syncId, player, this); - } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/BasicSolarPanelBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/BasicSolarPanelBlockEntity.java index 53677c4ed6..8a92c3814a 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/BasicSolarPanelBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/BasicSolarPanelBlockEntity.java @@ -22,41 +22,15 @@ package dev.galacticraft.mod.content.block.entity.machine; -import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; -import dev.galacticraft.machinelib.api.filter.ResourceFilters; -import dev.galacticraft.machinelib.api.menu.MachineMenu; -import dev.galacticraft.machinelib.api.storage.MachineEnergyStorage; -import dev.galacticraft.machinelib.api.storage.MachineItemStorage; -import dev.galacticraft.machinelib.api.storage.StorageSpec; -import dev.galacticraft.machinelib.api.storage.slot.ItemResourceSlot; -import dev.galacticraft.machinelib.api.transfer.TransferType; import dev.galacticraft.mod.Galacticraft; import dev.galacticraft.mod.api.block.entity.AbstractSolarPanelBlockEntity; -import dev.galacticraft.mod.content.GCBlockEntityTypes; -import dev.galacticraft.mod.screen.GCMenuTypes; -import dev.galacticraft.mod.screen.SolarPanelMenu; +import dev.galacticraft.mod.content.GCMachineTypes; import net.minecraft.core.BlockPos; -import net.minecraft.world.entity.player.Inventory; -import net.minecraft.world.entity.player.Player; import net.minecraft.world.level.block.state.BlockState; -import org.jetbrains.annotations.Nullable; public class BasicSolarPanelBlockEntity extends AbstractSolarPanelBlockEntity { - private static final StorageSpec STORAGE_SPEC = StorageSpec.of( - MachineItemStorage.spec( - ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(8, 62) - .filter(ResourceFilters.CAN_INSERT_ENERGY) - ), - MachineEnergyStorage.spec( - Galacticraft.CONFIG.machineEnergyStorageSize(), - 0, - Galacticraft.CONFIG.solarPanelEnergyProductionRate() * 2 - ) - ); - public BasicSolarPanelBlockEntity(BlockPos pos, BlockState state) { - super(GCBlockEntityTypes.BASIC_SOLAR_PANEL, pos, state, STORAGE_SPEC); + super(GCMachineTypes.BASIC_SOLAR_PANEL, pos, state); } @Override @@ -75,9 +49,4 @@ protected long calculateEnergyProduction(long time, double multiplier) { if (cos <= 0) return 0; return (long) (Galacticraft.CONFIG.solarPanelEnergyProductionRate() * cos * multiplier); } - - @Override - public @Nullable MachineMenu createMenu(int syncId, Inventory inventory, Player player) { - return new SolarPanelMenu<>(GCMenuTypes.BASIC_SOLAR_PANEL, syncId, player, this); - } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/CircuitFabricatorBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/CircuitFabricatorBlockEntity.java index f1a2a4799e..0273fd1c77 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/CircuitFabricatorBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/CircuitFabricatorBlockEntity.java @@ -22,43 +22,36 @@ package dev.galacticraft.mod.content.block.entity.machine; -import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; import dev.galacticraft.machinelib.api.block.entity.RecipeMachineBlockEntity; -import dev.galacticraft.machinelib.api.compat.vanilla.RecipeHelper; -import dev.galacticraft.machinelib.api.filter.ResourceFilters; +import dev.galacticraft.machinelib.api.compat.vanilla.RecipeTestContainer; import dev.galacticraft.machinelib.api.machine.MachineStatus; import dev.galacticraft.machinelib.api.machine.MachineStatuses; -import dev.galacticraft.machinelib.api.menu.MachineMenu; import dev.galacticraft.machinelib.api.menu.RecipeMachineMenu; -import dev.galacticraft.machinelib.api.storage.MachineEnergyStorage; -import dev.galacticraft.machinelib.api.storage.MachineItemStorage; -import dev.galacticraft.machinelib.api.storage.StorageSpec; import dev.galacticraft.machinelib.api.storage.slot.ItemResourceSlot; -import dev.galacticraft.machinelib.api.transfer.TransferType; import dev.galacticraft.mod.Galacticraft; -import dev.galacticraft.mod.content.GCBlockEntityTypes; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.content.item.GCItems; import dev.galacticraft.mod.machine.GCMachineStatuses; import dev.galacticraft.mod.recipe.FabricationRecipe; import dev.galacticraft.mod.recipe.GCRecipes; -import dev.galacticraft.mod.screen.GCMenuTypes; -import net.fabricmc.fabric.api.tag.convention.v2.ConventionalItemTags; import net.minecraft.core.BlockPos; import net.minecraft.core.NonNullList; import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.profiling.ProfilerFiller; +import net.minecraft.world.Container; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; import net.minecraft.world.item.crafting.RecipeHolder; -import net.minecraft.world.item.crafting.RecipeInput; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -public class CircuitFabricatorBlockEntity extends RecipeMachineBlockEntity { +public class CircuitFabricatorBlockEntity extends RecipeMachineBlockEntity { public static final int CHARGE_SLOT = 0; public static final int DIAMOND_SLOT = 1; public static final int SILICON_SLOT_1 = 2; @@ -67,44 +60,19 @@ public class CircuitFabricatorBlockEntity extends RecipeMachineBlockEntity recipe) { ItemStack output = recipe.value().getResultItem(this.level.registryAccess()); - return this.itemStorage().slot(OUTPUT_SLOT).canInsert(output.getItem(), output.getComponentsPatch(), output.getCount()); + return this.itemStorage().getSlot(OUTPUT_SLOT).canInsert(output.getItem(), output.getTag(), output.getCount()); } @Override - protected @NotNull RecipeInput craftingInv() { - return RecipeHelper.input(this.itemStorage().slot(INPUT_SLOT)); + protected @NotNull Container craftingInv() { + return this.craftingInv; } @Override protected void outputStacks(@NotNull RecipeHolder recipe) { ItemStack output = recipe.value().getResultItem(this.level.registryAccess()); - this.itemStorage().slot(OUTPUT_SLOT).insert(output.getItem(), output.getComponentsPatch(), output.getCount()); + this.itemStorage().getSlot(OUTPUT_SLOT).insert(output.getItem(), output.getTag(), output.getCount()); } @Override protected void extractCraftingMaterials(@NotNull RecipeHolder recipe) { - NonNullList remainder = recipe.value().getRemainingItems(this.craftingInv()); - this.itemStorage().slot(DIAMOND_SLOT).extractOne(); - this.itemStorage().slot(SILICON_SLOT_1).extractOne(); - this.itemStorage().slot(SILICON_SLOT_2).extractOne(); - this.itemStorage().slot(REDSTONE_SLOT).extractOne(); + NonNullList remainder = recipe.value().getRemainingItems(this.craftingInv); + this.itemStorage().getSlot(DIAMOND_SLOT).extractOne(); + this.itemStorage().getSlot(SILICON_SLOT_1).extractOne(); + this.itemStorage().getSlot(SILICON_SLOT_2).extractOne(); + this.itemStorage().getSlot(REDSTONE_SLOT).extractOne(); - ItemResourceSlot input = this.itemStorage().slot(INPUT_SLOT); + ItemResourceSlot input = this.itemStorage().getSlot(INPUT_SLOT); input.extractOne(); if (input.isEmpty() && remainder.size() > 0) { ItemStack itemStack = remainder.get(0); if (!itemStack.isEmpty()) { - input.insert(itemStack.getItem(), itemStack.getComponentsPatch(), itemStack.getCount()); + input.insert(itemStack.getItem(), itemStack.getTag(), itemStack.getCount()); } } } @@ -161,10 +129,10 @@ protected void extractCraftingMaterials(@NotNull RecipeHolder @Override protected @Nullable RecipeHolder findValidRecipe(@NotNull Level world) { - if (this.itemStorage().slot(DIAMOND_SLOT).contains(Items.DIAMOND) - && this.itemStorage().slot(SILICON_SLOT_1).contains(GCItems.RAW_SILICON) - && this.itemStorage().slot(SILICON_SLOT_2).contains(GCItems.RAW_SILICON) - && this.itemStorage().slot(REDSTONE_SLOT).contains(Items.REDSTONE)) { + if (this.itemStorage().getSlot(DIAMOND_SLOT).contains(Items.DIAMOND) + && this.itemStorage().getSlot(SILICON_SLOT_1).contains(GCItems.RAW_SILICON) + && this.itemStorage().getSlot(SILICON_SLOT_2).contains(GCItems.RAW_SILICON) + && this.itemStorage().getSlot(REDSTONE_SLOT).contains(Items.REDSTONE)) { return super.findValidRecipe(world); } @@ -176,13 +144,16 @@ public int getProcessingTime(@NotNull RecipeHolder recipe) { return recipe.value().getProcessingTime(); } + @Nullable @Override - public @Nullable MachineMenu createMenu(int syncId, Inventory inv, Player player) { - return new RecipeMachineMenu<>( - GCMenuTypes.CIRCUIT_FABRICATOR, - syncId, - player, - this - ); + public AbstractContainerMenu createMenu(int syncId, Inventory inv, Player player) { + if (this.getSecurity().hasAccess(player)) { + return new RecipeMachineMenu<>( + syncId, + ((ServerPlayer) player), + this + ); + } + return null; } } diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/CoalGeneratorBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/CoalGeneratorBlockEntity.java index 00c540bb53..d823b68a26 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/CoalGeneratorBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/CoalGeneratorBlockEntity.java @@ -24,32 +24,25 @@ import com.google.common.annotations.VisibleForTesting; import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; -import dev.galacticraft.machinelib.api.filter.ResourceFilters; import dev.galacticraft.machinelib.api.machine.MachineStatus; import dev.galacticraft.machinelib.api.machine.MachineStatuses; -import dev.galacticraft.machinelib.api.menu.MachineMenu; -import dev.galacticraft.machinelib.api.storage.MachineEnergyStorage; -import dev.galacticraft.machinelib.api.storage.MachineItemStorage; -import dev.galacticraft.machinelib.api.storage.StorageSpec; import dev.galacticraft.machinelib.api.storage.slot.ItemResourceSlot; -import dev.galacticraft.machinelib.api.transfer.TransferType; -import dev.galacticraft.machinelib.api.util.EnergySource; import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.Galacticraft; -import dev.galacticraft.mod.content.GCBlockEntityTypes; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.machine.GCMachineStatuses; import dev.galacticraft.mod.screen.CoalGeneratorMenu; import it.unimi.dsi.fastutil.objects.Object2IntArrayMap; import it.unimi.dsi.fastutil.objects.Object2IntMap; import net.minecraft.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.profiling.ProfilerFiller; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.item.Item; import net.minecraft.world.item.Items; import net.minecraft.world.level.block.state.BlockState; @@ -67,23 +60,6 @@ public class CoalGeneratorBlockEntity extends MachineBlockEntity { map.put(Items.CHARCOAL, 310); }); - private static final StorageSpec SPEC = StorageSpec.of( - MachineItemStorage.spec( - ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(8, 62) - .filter(ResourceFilters.CAN_INSERT_ENERGY), - ItemResourceSlot.builder(TransferType.INPUT) - .pos(71, 53) - .filter((item, tag) -> CoalGeneratorBlockEntity.FUEL_MAP.containsKey(item)) - ), - MachineEnergyStorage.spec( - Galacticraft.CONFIG.machineEnergyStorageSize(), - 0, - Galacticraft.CONFIG.coalGeneratorEnergyProductionRate() * 2 - ) - ); - - private final EnergySource energySource = new EnergySource(this); private int fuelLength = 0; private long fuelSlotModCount = -1; private int fuelTime = 0; @@ -96,7 +72,7 @@ public class CoalGeneratorBlockEntity extends MachineBlockEntity { */ public CoalGeneratorBlockEntity(BlockPos pos, BlockState state) { - super(GCBlockEntityTypes.COAL_GENERATOR, pos, state, SPEC); + super(GCMachineTypes.COAL_GENERATOR, pos, state); } @Override @@ -108,7 +84,7 @@ protected void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @ } } profiler.push("charge"); - this.drainPowerToSlot(CHARGE_SLOT); + this.drainPowerToStack(CHARGE_SLOT); profiler.pop(); } @@ -116,7 +92,7 @@ protected void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @ public @NotNull MachineStatus tick(@NotNull ServerLevel level, @NotNull BlockPos pos, @NotNull BlockState state, @NotNull ProfilerFiller profiler) { profiler.push("transaction"); this.energyStorage().insert((long) (Galacticraft.CONFIG.coalGeneratorEnergyProductionRate() * this.heat)); - this.energySource.trySpreadEnergy(level, pos, state); + this.trySpreadEnergy(level, state); profiler.popPush("fuel_reset"); if (this.fuelLength == 0) { if (!this.consumeFuel()) { @@ -147,7 +123,7 @@ private boolean consumeFuel() { this.fuelTime = 0; this.fuelLength = 0; - ItemResourceSlot slot = this.itemStorage().slot(INPUT_SLOT); + ItemResourceSlot slot = this.itemStorage().getSlot(INPUT_SLOT); if (slot.getModifications() != this.fuelSlotModCount) { this.fuelSlotModCount = slot.getModifications(); int time = FUEL_MAP.getInt(slot.getResource()); @@ -169,9 +145,11 @@ public void setFuelLength(int fuelLength) { this.fuelLength = fuelLength; } + @Nullable @Override - public @Nullable MachineMenu createMenu(int syncId, Inventory inv, Player player) { - return new CoalGeneratorMenu(syncId, (ServerPlayer) player, this); + public AbstractContainerMenu createMenu(int syncId, Inventory inv, Player player) { + if (this.getSecurity().hasAccess(player)) return new CoalGeneratorMenu(syncId, (ServerPlayer) player, this); + return null; } public double getHeat() { @@ -192,16 +170,16 @@ public void setFuelTime(int value) { } @Override - public void loadAdditional(CompoundTag tag, HolderLookup.Provider lookup) { - super.loadAdditional(tag, lookup); - this.fuelLength = tag.getInt(Constant.Nbt.FUEL_LENGTH); - this.fuelTime = tag.getInt(Constant.Nbt.FUEL_TIME); - this.heat = tag.getDouble(Constant.Nbt.HEAT); + public void load(CompoundTag nbt) { + super.load(nbt); + this.fuelLength = nbt.getInt(Constant.Nbt.FUEL_LENGTH); + this.fuelTime = nbt.getInt(Constant.Nbt.FUEL_TIME); + this.heat = nbt.getDouble(Constant.Nbt.HEAT); } @Override - protected void saveAdditional(CompoundTag tag, HolderLookup.Provider lookup) { - super.saveAdditional(tag, lookup); + public void saveAdditional(CompoundTag tag) { + super.saveAdditional(tag); tag.putInt(Constant.Nbt.FUEL_LENGTH, this.fuelLength); tag.putInt(Constant.Nbt.FUEL_TIME, this.fuelTime); tag.putDouble(Constant.Nbt.HEAT, this.heat); diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/CompressorBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/CompressorBlockEntity.java index 6ecfd29f08..e30056e20b 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/CompressorBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/CompressorBlockEntity.java @@ -23,37 +23,33 @@ package dev.galacticraft.mod.content.block.entity.machine; import dev.galacticraft.machinelib.api.block.entity.BasicRecipeMachineBlockEntity; -import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; -import dev.galacticraft.machinelib.api.compat.vanilla.RecipeHelper; +import dev.galacticraft.machinelib.api.compat.vanilla.CraftingRecipeTestContainer; import dev.galacticraft.machinelib.api.machine.MachineStatus; -import dev.galacticraft.machinelib.api.menu.MachineMenu; -import dev.galacticraft.machinelib.api.storage.MachineItemStorage; -import dev.galacticraft.machinelib.api.storage.StorageSpec; import dev.galacticraft.machinelib.api.storage.slot.ItemResourceSlot; -import dev.galacticraft.machinelib.api.transfer.TransferType; import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.content.GCBlockEntityTypes; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.machine.GCMachineStatuses; import dev.galacticraft.mod.recipe.CompressingRecipe; import dev.galacticraft.mod.recipe.GCRecipes; import dev.galacticraft.mod.screen.CompressorMenu; import net.fabricmc.fabric.api.registry.FuelRegistry; import net.minecraft.core.BlockPos; -import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; import net.minecraft.sounds.SoundEvents; import net.minecraft.sounds.SoundSource; import net.minecraft.util.profiling.ProfilerFiller; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.crafting.CraftingInput; +import net.minecraft.world.inventory.AbstractContainerMenu; +import net.minecraft.world.inventory.CraftingContainer; import net.minecraft.world.item.crafting.RecipeHolder; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -public class CompressorBlockEntity extends BasicRecipeMachineBlockEntity { +public class CompressorBlockEntity extends BasicRecipeMachineBlockEntity { public static final int FUEL_SLOT = 0; public static final int INPUT_SLOTS = 1; public static final int INPUT_LENGTH = 9; @@ -65,21 +61,8 @@ public class CompressorBlockEntity extends BasicRecipeMachineBlockEntity { - Integer integer = FuelRegistry.INSTANCE.get(item); - return integer != null && integer > 0; - })) - .add3x3Grid(TransferType.INPUT, 17, 17) - .add(ItemResourceSlot.builder(TransferType.OUTPUT) - .pos(143, 36)) - ); - public CompressorBlockEntity(BlockPos pos, BlockState state) { - super(GCBlockEntityTypes.COMPRESSOR, pos, state, GCRecipes.COMPRESSING_TYPE, SPEC, INPUT_SLOTS, INPUT_LENGTH, OUTPUT_SLOT); + super(GCMachineTypes.COMPRESSOR, pos, state, GCRecipes.COMPRESSING_TYPE, INPUT_SLOTS, INPUT_LENGTH, OUTPUT_SLOT); } @Override @@ -90,7 +73,7 @@ public CompressorBlockEntity(BlockPos pos, BlockState state) { @Override protected @Nullable MachineStatus hasResourcesToWork() { if (this.fuelLength == 0) { - ItemResourceSlot slot = this.itemStorage().slot(FUEL_SLOT); + ItemResourceSlot slot = this.itemStorage().getSlot(FUEL_SLOT); if (slot.getModifications() != this.fuelSlotModification) { this.fuelSlotModification = slot.getModifications(); if (!slot.isEmpty()) { @@ -109,7 +92,7 @@ public CompressorBlockEntity(BlockPos pos, BlockState state) { @Override protected void extractResourcesToWork() { if (this.fuelLength == 0) { - ItemResourceSlot slot = this.itemStorage().slot(FUEL_SLOT); + ItemResourceSlot slot = this.itemStorage().getSlot(FUEL_SLOT); if (!slot.isEmpty()) { Integer time = FuelRegistry.INSTANCE.get(slot.getResource()); if (time > 0) { @@ -156,26 +139,28 @@ public int getFuelLength() { } @Override - protected void saveAdditional(CompoundTag tag, HolderLookup.Provider lookup) { - super.saveAdditional(tag, lookup); + public void saveAdditional(@NotNull CompoundTag tag) { + super.saveAdditional(tag); tag.putInt(Constant.Nbt.FUEL_TIME, this.fuelTime); tag.putInt(Constant.Nbt.FUEL_LENGTH, this.fuelLength); } @Override - public void loadAdditional(CompoundTag tag, HolderLookup.Provider lookup) { - super.loadAdditional(tag, lookup); - this.fuelTime = tag.getInt(Constant.Nbt.FUEL_TIME); - this.fuelLength = tag.getInt(Constant.Nbt.FUEL_LENGTH); + public void load(@NotNull CompoundTag nbt) { + super.load(nbt); + this.fuelTime = nbt.getInt(Constant.Nbt.FUEL_TIME); + this.fuelLength = nbt.getInt(Constant.Nbt.FUEL_LENGTH); } + @Nullable @Override - public @Nullable MachineMenu createMenu(int syncId, Inventory inv, Player player) { - return new CompressorMenu(syncId, player, this); + public AbstractContainerMenu createMenu(int syncId, Inventory inv, Player player) { + if (this.getSecurity().hasAccess(player)) return new CompressorMenu(syncId, (ServerPlayer) player, this); + return null; } @Override - protected CraftingInput craftingInv() { - return RecipeHelper.craftingInput(3, 3, this.inputSlots.getSlots()); + protected CraftingContainer createCraftingInv() { + return CraftingRecipeTestContainer.create(3, 3, this.itemStorage(), this.inputSlots, this.inputSlotsLen); } } diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/ElectricArcFurnaceBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/ElectricArcFurnaceBlockEntity.java index 277c6b0f06..96314dac63 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/ElectricArcFurnaceBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/ElectricArcFurnaceBlockEntity.java @@ -23,68 +23,41 @@ package dev.galacticraft.mod.content.block.entity.machine; import dev.galacticraft.machinelib.api.block.entity.BasicRecipeMachineBlockEntity; -import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; -import dev.galacticraft.machinelib.api.compat.vanilla.RecipeHelper; -import dev.galacticraft.machinelib.api.filter.ResourceFilters; +import dev.galacticraft.machinelib.api.compat.vanilla.RecipeTestContainer; import dev.galacticraft.machinelib.api.machine.MachineStatus; import dev.galacticraft.machinelib.api.machine.MachineStatuses; -import dev.galacticraft.machinelib.api.menu.MachineMenu; import dev.galacticraft.machinelib.api.menu.RecipeMachineMenu; -import dev.galacticraft.machinelib.api.storage.MachineEnergyStorage; -import dev.galacticraft.machinelib.api.storage.MachineItemStorage; -import dev.galacticraft.machinelib.api.storage.StorageSpec; -import dev.galacticraft.machinelib.api.storage.slot.ItemResourceSlot; -import dev.galacticraft.machinelib.api.transfer.TransferType; import dev.galacticraft.mod.Galacticraft; -import dev.galacticraft.mod.content.GCBlockEntityTypes; -import dev.galacticraft.mod.screen.GCMenuTypes; +import dev.galacticraft.mod.content.GCMachineTypes; import net.minecraft.core.BlockPos; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.profiling.ProfilerFiller; +import net.minecraft.world.Container; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.item.crafting.BlastingRecipe; import net.minecraft.world.item.crafting.RecipeHolder; import net.minecraft.world.item.crafting.RecipeType; -import net.minecraft.world.item.crafting.SingleRecipeInput; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -public class ElectricArcFurnaceBlockEntity extends BasicRecipeMachineBlockEntity { +public class ElectricArcFurnaceBlockEntity extends BasicRecipeMachineBlockEntity { public static final int CHARGE_SLOT = 0; public static final int INPUT_SLOT = 1; public static final int OUTPUT_SLOTS = 2; public static final int OUTPUT_LENGTH = 2; - private static final StorageSpec SPEC = StorageSpec.of( - MachineItemStorage.spec( - ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(8, 62) - .filter(ResourceFilters.CAN_EXTRACT_ENERGY), - ItemResourceSlot.builder(TransferType.INPUT) - .pos(44, 35), - ItemResourceSlot.builder(TransferType.OUTPUT) - .pos(108, 35), - ItemResourceSlot.builder(TransferType.OUTPUT) - .pos(134, 35) - ), - MachineEnergyStorage.spec( - Galacticraft.CONFIG.machineEnergyStorageSize(), - Galacticraft.CONFIG.electricArcFurnaceEnergyConsumptionRate() * 2, - 0 - ) - ); - public ElectricArcFurnaceBlockEntity(BlockPos pos, BlockState state) { - super(GCBlockEntityTypes.ELECTRIC_ARC_FURNACE, pos, state, RecipeType.BLASTING, SPEC, INPUT_SLOT, 1, OUTPUT_SLOTS, OUTPUT_LENGTH); + super(GCMachineTypes.ELECTRIC_ARC_FURNACE, pos, state, RecipeType.BLASTING, INPUT_SLOT, 1, OUTPUT_SLOTS, OUTPUT_LENGTH); } @Override protected void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @NotNull BlockState state, @NotNull ProfilerFiller profiler) { super.tickConstant(world, pos, state, profiler); - this.chargeFromSlot(CHARGE_SLOT); + this.chargeFromStack(CHARGE_SLOT); } @Override @@ -107,19 +80,21 @@ public int getProcessingTime(@NotNull RecipeHolder recipe) { return (int) (recipe.value().getCookingTime() * 0.9); } + @Nullable @Override - public @Nullable MachineMenu createMenu(int syncId, Inventory inv, Player player) { - return new RecipeMachineMenu<>( - GCMenuTypes.ELECTRIC_ARC_FURNACE, - syncId, - (ServerPlayer) player, - this - ); + public AbstractContainerMenu createMenu(int syncId, Inventory inv, Player player) { + if (this.getSecurity().hasAccess(player)) { + return new RecipeMachineMenu<>( + syncId, + (ServerPlayer) player, + this + ); + } + return null; } @Override - protected SingleRecipeInput craftingInv() { - assert this.inputSlots.size() == 1; - return RecipeHelper.single(this.inputSlots.slot(0)); + protected Container createCraftingInv() { + return RecipeTestContainer.create(this.itemStorage(), this.inputSlots, this.inputSlotsLen); } } diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/ElectricCompressorBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/ElectricCompressorBlockEntity.java index 40dd3f7196..f597b01435 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/ElectricCompressorBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/ElectricCompressorBlockEntity.java @@ -23,72 +23,45 @@ package dev.galacticraft.mod.content.block.entity.machine; import dev.galacticraft.machinelib.api.block.entity.BasicRecipeMachineBlockEntity; -import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; -import dev.galacticraft.machinelib.api.compat.vanilla.RecipeHelper; -import dev.galacticraft.machinelib.api.filter.ResourceFilters; +import dev.galacticraft.machinelib.api.compat.vanilla.CraftingRecipeTestContainer; import dev.galacticraft.machinelib.api.machine.MachineStatus; import dev.galacticraft.machinelib.api.machine.MachineStatuses; -import dev.galacticraft.machinelib.api.menu.MachineMenu; import dev.galacticraft.machinelib.api.menu.RecipeMachineMenu; -import dev.galacticraft.machinelib.api.storage.MachineEnergyStorage; -import dev.galacticraft.machinelib.api.storage.MachineItemStorage; -import dev.galacticraft.machinelib.api.storage.StorageSpec; -import dev.galacticraft.machinelib.api.storage.slot.ItemResourceSlot; -import dev.galacticraft.machinelib.api.transfer.TransferType; import dev.galacticraft.mod.Galacticraft; -import dev.galacticraft.mod.content.GCBlockEntityTypes; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.machine.GCMachineStatuses; import dev.galacticraft.mod.recipe.CompressingRecipe; import dev.galacticraft.mod.recipe.GCRecipes; -import dev.galacticraft.mod.screen.GCMenuTypes; import net.minecraft.core.BlockPos; import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; import net.minecraft.sounds.SoundEvents; import net.minecraft.sounds.SoundSource; import net.minecraft.util.profiling.ProfilerFiller; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.crafting.CraftingInput; +import net.minecraft.world.inventory.AbstractContainerMenu; +import net.minecraft.world.inventory.CraftingContainer; import net.minecraft.world.item.crafting.RecipeHolder; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -public class ElectricCompressorBlockEntity extends BasicRecipeMachineBlockEntity { +public class ElectricCompressorBlockEntity extends BasicRecipeMachineBlockEntity { public static final int CHARGE_SLOT = 0; public static final int INPUT_SLOTS = 1; public static final int INPUT_LENGTH = 9; public static final int OUTPUT_SLOTS = INPUT_SLOTS + INPUT_LENGTH; public static final int OUTPUT_LENGTH = 2; - public static final StorageSpec SPEC = StorageSpec.of( - MachineItemStorage.builder() - .add(ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(8, 61) - .filter(ResourceFilters.CAN_EXTRACT_ENERGY) - ) - .add3x3Grid(TransferType.INPUT, 30, 17) - .add(ItemResourceSlot.builder(TransferType.OUTPUT) - .pos(148, 22) - ) - .add(ItemResourceSlot.builder(TransferType.OUTPUT) - .pos(148, 48) - ), - MachineEnergyStorage.spec( - Galacticraft.CONFIG.machineEnergyStorageSize(), - Galacticraft.CONFIG.electricCompressorEnergyConsumptionRate() * 2, - 0 - ) - ); - public ElectricCompressorBlockEntity(BlockPos pos, BlockState state) { - super(GCBlockEntityTypes.ELECTRIC_COMPRESSOR, pos, state, GCRecipes.COMPRESSING_TYPE, SPEC, INPUT_SLOTS, INPUT_LENGTH, OUTPUT_SLOTS, OUTPUT_LENGTH); + super(GCMachineTypes.ELECTRIC_COMPRESSOR, pos, state, GCRecipes.COMPRESSING_TYPE, INPUT_SLOTS, INPUT_LENGTH, OUTPUT_SLOTS, OUTPUT_LENGTH); } @Override protected void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @NotNull BlockState state, @NotNull ProfilerFiller profiler) { super.tickConstant(world, pos, state, profiler); - this.chargeFromSlot(CHARGE_SLOT); + this.chargeFromStack(CHARGE_SLOT); } @Override @@ -123,18 +96,21 @@ public int getProcessingTime(@NotNull RecipeHolder recipe) { return recipe.value().getTime(); } + @Nullable @Override - public @Nullable MachineMenu createMenu(int syncId, Inventory inv, Player player) { - return new RecipeMachineMenu<>( - GCMenuTypes.ELECTRIC_COMPRESSOR, - syncId, - player, - this - ); + public AbstractContainerMenu createMenu(int syncId, Inventory inv, Player player) { + if (this.getSecurity().hasAccess(player)) { + return new RecipeMachineMenu<>( + syncId, + (ServerPlayer) player, + this + ); + } + return null; } @Override - protected CraftingInput craftingInv() { - return RecipeHelper.craftingInput(3, 3, this.inputSlots.getSlots()); + protected CraftingContainer createCraftingInv() { + return CraftingRecipeTestContainer.create(3, 3, this.itemStorage(), this.inputSlots, this.inputSlotsLen); } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/ElectricFurnaceBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/ElectricFurnaceBlockEntity.java index cbaa65f09d..20a7d646e5 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/ElectricFurnaceBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/ElectricFurnaceBlockEntity.java @@ -23,64 +23,40 @@ package dev.galacticraft.mod.content.block.entity.machine; import dev.galacticraft.machinelib.api.block.entity.BasicRecipeMachineBlockEntity; -import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; -import dev.galacticraft.machinelib.api.compat.vanilla.RecipeHelper; -import dev.galacticraft.machinelib.api.filter.ResourceFilters; +import dev.galacticraft.machinelib.api.compat.vanilla.RecipeTestContainer; import dev.galacticraft.machinelib.api.machine.MachineStatus; import dev.galacticraft.machinelib.api.machine.MachineStatuses; -import dev.galacticraft.machinelib.api.menu.MachineMenu; import dev.galacticraft.machinelib.api.menu.RecipeMachineMenu; -import dev.galacticraft.machinelib.api.storage.MachineEnergyStorage; -import dev.galacticraft.machinelib.api.storage.MachineItemStorage; -import dev.galacticraft.machinelib.api.storage.StorageSpec; -import dev.galacticraft.machinelib.api.storage.slot.ItemResourceSlot; -import dev.galacticraft.machinelib.api.transfer.TransferType; import dev.galacticraft.mod.Galacticraft; -import dev.galacticraft.mod.content.GCBlockEntityTypes; -import dev.galacticraft.mod.screen.GCMenuTypes; +import dev.galacticraft.mod.content.GCMachineTypes; import net.minecraft.core.BlockPos; import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.profiling.ProfilerFiller; +import net.minecraft.world.Container; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.item.crafting.RecipeHolder; import net.minecraft.world.item.crafting.RecipeType; -import net.minecraft.world.item.crafting.SingleRecipeInput; import net.minecraft.world.item.crafting.SmeltingRecipe; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -public class ElectricFurnaceBlockEntity extends BasicRecipeMachineBlockEntity { +public class ElectricFurnaceBlockEntity extends BasicRecipeMachineBlockEntity { public static final int CHARGE_SLOT = 0; public static final int INPUT_SLOT = 1; public static final int OUTPUT_SLOT = 2; - public static final StorageSpec SPEC = StorageSpec.of( - MachineItemStorage.spec( - ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(8, 61) - .filter(ResourceFilters.CAN_EXTRACT_ENERGY), - ItemResourceSlot.builder(TransferType.INPUT) - .pos(52, 35), - ItemResourceSlot.builder(TransferType.OUTPUT) - .pos(113, 35) - ), - MachineEnergyStorage.spec( - Galacticraft.CONFIG.machineEnergyStorageSize(), - Galacticraft.CONFIG.electricFurnaceEnergyConsumptionRate() * 2, - 0 - ) - ); - public ElectricFurnaceBlockEntity(BlockPos pos, BlockState state) { - super(GCBlockEntityTypes.ELECTRIC_FURNACE, pos, state, RecipeType.SMELTING, SPEC, INPUT_SLOT, OUTPUT_SLOT); + super(GCMachineTypes.ELECTRIC_FURNACE, pos, state, RecipeType.SMELTING, INPUT_SLOT, OUTPUT_SLOT); } @Override protected void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @NotNull BlockState state, @NotNull ProfilerFiller profiler) { super.tickConstant(world, pos, state, profiler); - this.chargeFromSlot(CHARGE_SLOT); + this.chargeFromStack(CHARGE_SLOT); } @Override @@ -103,18 +79,21 @@ public int getProcessingTime(@NotNull RecipeHolder recipe) { return recipe.value().getCookingTime(); } + @Nullable @Override - public @Nullable MachineMenu createMenu(int syncId, Inventory inv, Player player) { - return new RecipeMachineMenu<>( - GCMenuTypes.ELECTRIC_FURNACE, - syncId, - player, - this - ); + public AbstractContainerMenu createMenu(int syncId, Inventory inv, Player player) { + if (this.getSecurity().hasAccess(player)) { + return new RecipeMachineMenu<>( + syncId, + (ServerPlayer) player, + this + ); + } + return null; } @Override - protected SingleRecipeInput craftingInv() { - return RecipeHelper.single(this.inputSlots.slot(0)); + protected Container createCraftingInv() { + return RecipeTestContainer.create(this.itemStorage(), this.inputSlots, this.inputSlotsLen); } } diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/EnergyStorageModuleBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/EnergyStorageModuleBlockEntity.java index 675aabdf11..482ad7cd97 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/EnergyStorageModuleBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/EnergyStorageModuleBlockEntity.java @@ -23,24 +23,17 @@ package dev.galacticraft.mod.content.block.entity.machine; import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; -import dev.galacticraft.machinelib.api.filter.ResourceFilters; import dev.galacticraft.machinelib.api.machine.MachineStatus; import dev.galacticraft.machinelib.api.machine.MachineStatuses; import dev.galacticraft.machinelib.api.menu.MachineMenu; -import dev.galacticraft.machinelib.api.storage.MachineEnergyStorage; -import dev.galacticraft.machinelib.api.storage.MachineItemStorage; -import dev.galacticraft.machinelib.api.storage.StorageSpec; -import dev.galacticraft.machinelib.api.storage.slot.ItemResourceSlot; -import dev.galacticraft.machinelib.api.transfer.TransferType; -import dev.galacticraft.machinelib.api.util.EnergySource; -import dev.galacticraft.mod.Galacticraft; -import dev.galacticraft.mod.content.GCBlockEntityTypes; -import dev.galacticraft.mod.screen.GCMenuTypes; +import dev.galacticraft.mod.content.GCMachineTypes; import net.minecraft.core.BlockPos; import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.profiling.ProfilerFiller; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -49,48 +42,43 @@ public class EnergyStorageModuleBlockEntity extends MachineBlockEntity { public static final int CHARGE_SELF_SLOT = 0; public static final int CHARGE_ITEM_SLOT = 1; - public static final StorageSpec SPEC = StorageSpec.of( - MachineItemStorage.spec( - ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(102, 48) - .filter(ResourceFilters.CAN_EXTRACT_ENERGY), - ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(102, 24) - .filter(ResourceFilters.CAN_INSERT_ENERGY) - ), - MachineEnergyStorage.spec( - Galacticraft.CONFIG.energyStorageModuleStorageSize(), - Galacticraft.CONFIG.energyStorageModuleStorageSize() / 200 - ) - ); + public EnergyStorageModuleBlockEntity(BlockPos pos, BlockState state) { + super(GCMachineTypes.ENERGY_STORAGE_MODULE, pos, state); + } - private final EnergySource energySource = new EnergySource(this); + @Override + public long getEnergyItemExtractionRate() { + return super.getEnergyItemExtractionRate() * 2; + } - public EnergyStorageModuleBlockEntity(BlockPos pos, BlockState state) { - super(GCBlockEntityTypes.ENERGY_STORAGE_MODULE, pos, state, SPEC); + @Override + public long getEnergyItemInsertionRate() { + return super.getEnergyItemInsertionRate() * 2; } @Override protected void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @NotNull BlockState state, @NotNull ProfilerFiller profiler) { super.tickConstant(world, pos, state, profiler); - this.chargeFromSlot(CHARGE_SELF_SLOT); - this.drainPowerToSlot(CHARGE_ITEM_SLOT); + this.chargeFromStack(CHARGE_SELF_SLOT); + this.drainPowerToStack(CHARGE_ITEM_SLOT); } @Override protected @NotNull MachineStatus tick(@NotNull ServerLevel level, @NotNull BlockPos pos, @NotNull BlockState state, @NotNull ProfilerFiller profiler) { - this.energySource.trySpreadEnergy(level, pos, state); + this.trySpreadEnergy(level, state); return MachineStatuses.ACTIVE; } @Nullable @Override - public MachineMenu createMenu(int syncId, Inventory inv, Player player) { - return new MachineMenu<>( - GCMenuTypes.ENERGY_STORAGE_MODULE, - syncId, - player, - this - ); + public AbstractContainerMenu createMenu(int syncId, Inventory inv, Player player) { + if (this.getSecurity().hasAccess(player)) { + return new MachineMenu<>( + syncId, + (ServerPlayer) player, + this + ); + } + return null; } } diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/FuelLoaderBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/FuelLoaderBlockEntity.java index a32b1cadc7..cd0c20416b 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/FuelLoaderBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/FuelLoaderBlockEntity.java @@ -23,38 +23,27 @@ package dev.galacticraft.mod.content.block.entity.machine; import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; -import dev.galacticraft.machinelib.api.filter.ResourceFilters; import dev.galacticraft.machinelib.api.machine.MachineStatus; -import dev.galacticraft.machinelib.api.menu.MachineMenu; -import dev.galacticraft.machinelib.api.storage.MachineEnergyStorage; -import dev.galacticraft.machinelib.api.storage.MachineFluidStorage; -import dev.galacticraft.machinelib.api.storage.MachineItemStorage; -import dev.galacticraft.machinelib.api.storage.StorageSpec; import dev.galacticraft.machinelib.api.storage.slot.FluidResourceSlot; -import dev.galacticraft.machinelib.api.storage.slot.ItemResourceSlot; -import dev.galacticraft.machinelib.api.transfer.TransferType; -import dev.galacticraft.mod.Galacticraft; import dev.galacticraft.mod.api.entity.Dockable; -import dev.galacticraft.mod.content.GCBlockEntityTypes; import dev.galacticraft.mod.content.GCBlocks; import dev.galacticraft.mod.content.GCFluids; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.content.block.special.launchpad.AbstractLaunchPad; import dev.galacticraft.mod.content.block.special.launchpad.LaunchPadBlockEntity; import dev.galacticraft.mod.machine.GCMachineStatuses; import dev.galacticraft.mod.screen.FuelLoaderMenu; -import net.fabricmc.fabric.api.transfer.v1.fluid.FluidConstants; import net.fabricmc.fabric.api.transfer.v1.fluid.FluidVariant; import net.fabricmc.fabric.api.transfer.v1.transaction.Transaction; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.Tag; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.profiling.ProfilerFiller; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -64,35 +53,12 @@ public class FuelLoaderBlockEntity extends MachineBlockEntity { public static final int CHARGE_SLOT = 0; public static final int FUEL_INPUT_SLOT = 1; public static final int FUEL_TANK = 0; - - private static final StorageSpec SPEC = StorageSpec.of( - MachineItemStorage.spec( - ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(8, 62) - .filter(ResourceFilters.CAN_EXTRACT_ENERGY), - ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(80, 62) - .filter(ResourceFilters.canExtractFluid(GCFluids.FUEL)) // fixme: fuel tag?, - ), - MachineEnergyStorage.spec( - Galacticraft.CONFIG.machineEnergyStorageSize(), - 150 * 2, // fixme - 0 - ), - MachineFluidStorage.spec( - FluidResourceSlot.builder(TransferType.INPUT) - .hidden() - .capacity(FluidConstants.BUCKET * 50) - .filter(ResourceFilters.ofResource(GCFluids.FUEL)) // fixme: tag? - ) - ); - private BlockPos connectionPos = BlockPos.ZERO; public Dockable linkedRocket = null; private Direction check = null; public FuelLoaderBlockEntity(BlockPos pos, BlockState state) { - super(GCBlockEntityTypes.FUEL_LOADER, pos, state, SPEC); + super(GCMachineTypes.FUEL_LOADER, pos, state); } @NotNull @@ -108,10 +74,10 @@ public BlockPos getConnectionPos() { return GCMachineStatuses.NO_ROCKET; } - FluidResourceSlot slot = this.fluidStorage().slot(FUEL_TANK); + FluidResourceSlot slot = this.fluidStorage().getSlot(FUEL_TANK); try (Transaction transaction = Transaction.openOuter()) { - long insert = this.linkedRocket.getFuelTank().insert(FluidVariant.of(slot.getResource(), slot.getComponents()), Math.min(TRANSFER_RATE, slot.getAmount()), transaction); + long insert = this.linkedRocket.getFuelTank().insert(FluidVariant.of(slot.getResource(), slot.getTag()), Math.min(TRANSFER_RATE, slot.getAmount()), transaction); if (insert > 0) { slot.extract(insert); transaction.commit(); @@ -142,24 +108,23 @@ public void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @Not this.linkedRocket = null; } - this.chargeFromSlot(CHARGE_SLOT); - this.takeFluidFromSlot(FUEL_INPUT_SLOT, FUEL_TANK, GCFluids.FUEL); + this.chargeFromStack(CHARGE_SLOT); + this.takeFluidFromStack(FUEL_INPUT_SLOT, FUEL_TANK, GCFluids.FUEL); } @Override - protected void saveAdditional(CompoundTag tag, HolderLookup.Provider lookup) { - super.saveAdditional(tag, lookup); - + public void saveAdditional(CompoundTag tag) { if (this.connectionPos != BlockPos.ZERO) { + tag.putBoolean("has_connection" , true); tag.putLong("connection_pos", this.connectionPos.asLong()); } + super.saveAdditional(tag); } @Override - public void loadAdditional(CompoundTag tag, HolderLookup.Provider lookup) { - super.loadAdditional(tag, lookup); - - if (tag.contains("connection_pos", Tag.TAG_LONG)) { + public void load(CompoundTag tag) { + super.load(tag); + if (tag.getBoolean("has_connection")) { this.connectionPos = BlockPos.of(tag.getLong("connection_pos")); } else { this.connectionPos = BlockPos.ZERO; @@ -170,8 +135,9 @@ public void updateConnections(Direction direction) { this.check = direction; } + @Nullable @Override - public @Nullable MachineMenu createMenu(int syncId, Inventory inv, Player player) { + public AbstractContainerMenu createMenu(int syncId, Inventory inv, Player player) { return new FuelLoaderMenu(syncId, (ServerPlayer) player, this); } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenBubbleDistributorBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenBubbleDistributorBlockEntity.java index 75d869e230..6460f7e8cc 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenBubbleDistributorBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenBubbleDistributorBlockEntity.java @@ -24,38 +24,29 @@ import dev.galacticraft.api.gas.Gases; import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; -import dev.galacticraft.machinelib.api.filter.ResourceFilters; import dev.galacticraft.machinelib.api.machine.MachineStatus; import dev.galacticraft.machinelib.api.machine.MachineStatuses; -import dev.galacticraft.machinelib.api.menu.MachineMenu; -import dev.galacticraft.machinelib.api.storage.MachineEnergyStorage; -import dev.galacticraft.machinelib.api.storage.MachineFluidStorage; -import dev.galacticraft.machinelib.api.storage.MachineItemStorage; -import dev.galacticraft.machinelib.api.storage.StorageSpec; import dev.galacticraft.machinelib.api.storage.slot.FluidResourceSlot; -import dev.galacticraft.machinelib.api.storage.slot.ItemResourceSlot; -import dev.galacticraft.machinelib.api.transfer.TransferType; import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.Galacticraft; -import dev.galacticraft.mod.content.GCBlockEntityTypes; import dev.galacticraft.mod.content.GCEntityTypes; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.content.entity.BubbleEntity; import dev.galacticraft.mod.machine.GCMachineStatuses; -import dev.galacticraft.mod.network.s2c.BubbleSizePayload; -import dev.galacticraft.mod.network.s2c.BubbleUpdatePayload; import dev.galacticraft.mod.screen.OxygenBubbleDistributorMenu; import dev.galacticraft.mod.util.FluidUtil; +import io.netty.buffer.Unpooled; import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; import net.minecraft.core.BlockPos; -import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.Mth; import net.minecraft.util.profiling.ProfilerFiller; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.NotNull; @@ -66,29 +57,6 @@ public class OxygenBubbleDistributorBlockEntity extends MachineBlockEntity { public static final int OXYGEN_INPUT_SLOT = 1; // REVIEW: should this be 0 or 1? public static final int OXYGEN_TANK = 0; public static final long MAX_OXYGEN = FluidUtil.bucketsToDroplets(50); - - private static final StorageSpec SPEC = StorageSpec.of( - MachineItemStorage.spec( - ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(8, 62) - .filter(ResourceFilters.CAN_EXTRACT_ENERGY), - ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(31, 62) - .filter(ResourceFilters.canExtractFluid(Gases.OXYGEN)) - ), - MachineEnergyStorage.spec( - Galacticraft.CONFIG.machineEnergyStorageSize(), - Galacticraft.CONFIG.oxygenCollectorEnergyConsumptionRate() * 2, - 0 - ), - MachineFluidStorage.spec( - FluidResourceSlot.builder(TransferType.INPUT) - .pos(31, 8) - .capacity(OxygenBubbleDistributorBlockEntity.MAX_OXYGEN) - .filter(ResourceFilters.ofResource(Gases.OXYGEN)) - ) - ); - private boolean bubbleVisible = true; private double size = 0; private byte targetSize = 1; @@ -98,7 +66,7 @@ public class OxygenBubbleDistributorBlockEntity extends MachineBlockEntity { private boolean oxygenUnloaded = true; public OxygenBubbleDistributorBlockEntity(BlockPos pos, BlockState state) { - super(GCBlockEntityTypes.OXYGEN_BUBBLE_DISTRIBUTOR, pos, state, SPEC); + super(GCMachineTypes.OXYGEN_BUBBLE_DISTRIBUTOR, pos, state); } @Override @@ -106,8 +74,8 @@ protected void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @ super.tickConstant(world, pos, state, profiler); this.oxygenUnloaded = false; profiler.push("extract_resources"); - this.chargeFromSlot(CHARGE_SLOT); - this.takeFluidFromSlot(OXYGEN_INPUT_SLOT, OXYGEN_TANK, Gases.OXYGEN); + this.chargeFromStack(CHARGE_SLOT); + this.takeFluidFromStack(OXYGEN_INPUT_SLOT, OXYGEN_TANK, Gases.OXYGEN); profiler.pop(); } @@ -130,6 +98,9 @@ protected void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @ entity.zo = this.getBlockPos().getZ(); level.addFreshEntity(entity); this.bubbleId = entity.getId(); + for (ServerPlayer player : level.players()) { + player.connection.send(entity.getAddEntityPacket()); + } } else if (!this.bubbleVisible && this.bubbleId != -1) { level.getEntity(bubbleId).discard(); this.bubbleId = -1; @@ -140,7 +111,7 @@ protected void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @ profiler.push("bubbler_distributor_transfer"); long oxygenRequired = Math.max((long) ((4.0 / 3.0) * Math.PI * this.size * this.size * this.size), 1); - FluidResourceSlot slot = this.fluidStorage().slot(OXYGEN_TANK); + FluidResourceSlot slot = this.fluidStorage().getSlot(OXYGEN_TANK); if (slot.canExtract(oxygenRequired)) { slot.extract(oxygenRequired); @@ -205,7 +176,7 @@ private void trySyncSize(@NotNull ServerLevel world, @NotNull BlockPos pos, @Not this.prevSize = this.size; profiler.push("network"); for (ServerPlayer player : world.players()) { - ServerPlayNetworking.send(player, new BubbleSizePayload(pos, this.size)); + ServerPlayNetworking.send(player, Constant.Packet.BUBBLE_SIZE, new FriendlyByteBuf(new FriendlyByteBuf(Unpooled.buffer()).writeBlockPos(pos).writeDouble(this.size))); } profiler.pop(); } @@ -242,27 +213,27 @@ public void setTargetSize(byte targetSize) { } @Override - protected void saveAdditional(CompoundTag tag, HolderLookup.Provider lookup) { - super.saveAdditional(tag, lookup); + public void saveAdditional(CompoundTag tag) { + super.saveAdditional(tag); tag.putByte(Constant.Nbt.MAX_SIZE, this.targetSize); tag.putDouble(Constant.Nbt.SIZE, this.size); tag.putBoolean(Constant.Nbt.VISIBLE, this.bubbleVisible); } @Override - public void loadAdditional(CompoundTag tag, HolderLookup.Provider lookup) { - super.loadAdditional(tag, lookup); - this.size = tag.getDouble(Constant.Nbt.SIZE); + public void load(CompoundTag nbt) { + this.size = nbt.getDouble(Constant.Nbt.SIZE); if (this.size < 0) this.size = 0; - this.targetSize = tag.getByte(Constant.Nbt.MAX_SIZE); + this.targetSize = nbt.getByte(Constant.Nbt.MAX_SIZE); if (this.targetSize < 1) this.targetSize = 1; - this.bubbleVisible = tag.getBoolean(Constant.Nbt.VISIBLE); + this.bubbleVisible = nbt.getBoolean(Constant.Nbt.VISIBLE); + + super.load(nbt); } public double getSize() { return this.size; } - public void setSize(double size) { this.size = size; } @@ -270,19 +241,25 @@ public void setSize(double size) { public boolean isBubbleVisible() { return this.bubbleVisible; } - public void setBubbleVisible(boolean bubbleVisible) { this.bubbleVisible = bubbleVisible; this.level.sendBlockUpdated(this.getBlockPos(), this.getBlockState(), this.getBlockState(), Block.UPDATE_CLIENTS); } + @Nullable @Override - public @Nullable MachineMenu createMenu(int syncId, Inventory inv, Player player) { - return new OxygenBubbleDistributorMenu(syncId, player, this); + public AbstractContainerMenu createMenu(int syncId, Inventory inv, Player player) { + if (this.getSecurity().hasAccess(player)) return new OxygenBubbleDistributorMenu(syncId, (ServerPlayer) player, this); + return null; } @Override - public @NotNull CustomPacketPayload createUpdatePayload() { - return new BubbleUpdatePayload(this.getBlockPos(), this.targetSize, this.size, this.bubbleVisible); + public @NotNull CompoundTag getUpdateTag() { + CompoundTag tag = super.getUpdateTag(); + + tag.putInt(Constant.Nbt.MAX_SIZE, this.targetSize); // REVIEW: should we be sending this along? Because we do save it + tag.putDouble(Constant.Nbt.SIZE, this.size); + tag.putBoolean(Constant.Nbt.VISIBLE, this.bubbleVisible); + return tag; } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenCollectorBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenCollectorBlockEntity.java index 2cd71ce9ae..758210bed6 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenCollectorBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenCollectorBlockEntity.java @@ -24,30 +24,23 @@ import dev.galacticraft.api.gas.Gases; import dev.galacticraft.api.universe.celestialbody.CelestialBody; +import dev.galacticraft.api.universe.celestialbody.CelestialBodyConfig; +import dev.galacticraft.api.universe.celestialbody.landable.Landable; import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; -import dev.galacticraft.machinelib.api.filter.ResourceFilters; import dev.galacticraft.machinelib.api.machine.MachineStatus; import dev.galacticraft.machinelib.api.machine.MachineStatuses; -import dev.galacticraft.machinelib.api.menu.MachineMenu; -import dev.galacticraft.machinelib.api.storage.MachineEnergyStorage; -import dev.galacticraft.machinelib.api.storage.MachineFluidStorage; -import dev.galacticraft.machinelib.api.storage.MachineItemStorage; -import dev.galacticraft.machinelib.api.storage.StorageSpec; -import dev.galacticraft.machinelib.api.storage.slot.FluidResourceSlot; -import dev.galacticraft.machinelib.api.storage.slot.ItemResourceSlot; -import dev.galacticraft.machinelib.api.transfer.TransferType; -import dev.galacticraft.machinelib.api.util.FluidSource; import dev.galacticraft.mod.Galacticraft; -import dev.galacticraft.mod.content.GCBlockEntityTypes; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.machine.GCMachineStatuses; import dev.galacticraft.mod.screen.OxygenCollectorMenu; import dev.galacticraft.mod.util.FluidUtil; import net.minecraft.core.BlockPos; -import net.minecraft.core.Holder; import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.profiling.ProfilerFiller; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.CropBlock; import net.minecraft.world.level.block.LeavesBlock; @@ -61,38 +54,18 @@ public class OxygenCollectorBlockEntity extends MachineBlockEntity { public static final long MAX_OXYGEN = FluidUtil.bucketsToDroplets(50); - private static final StorageSpec SPEC = StorageSpec.of( - MachineItemStorage.spec( - ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(8, 62) - .filter(ResourceFilters.CAN_EXTRACT_ENERGY) - ), - MachineEnergyStorage.spec( - Galacticraft.CONFIG.machineEnergyStorageSize(), - Galacticraft.CONFIG.oxygenCollectorEnergyConsumptionRate() * 2, - 0 - ), - MachineFluidStorage.spec( - FluidResourceSlot.builder(TransferType.OUTPUT) - .pos(31, 8) - .capacity(OxygenCollectorBlockEntity.MAX_OXYGEN) - .filter(ResourceFilters.ofResource(Gases.OXYGEN)) - ) - ); - - private final FluidSource fluidSource = new FluidSource(this); public int collectionAmount = 0; private boolean oxygenWorld = false; public OxygenCollectorBlockEntity(BlockPos pos, BlockState state) { - super(GCBlockEntityTypes.OXYGEN_COLLECTOR, pos, state, SPEC); + super(GCMachineTypes.OXYGEN_COLLECTOR, pos, state); } @Override public void setLevel(Level world) { super.setLevel(world); - Holder> body = world.galacticraft$getCelestialBody(); - this.oxygenWorld = body == null || body.value().atmosphere().breathable(); + CelestialBody> body = CelestialBody.getByDimension(world).orElse(null); + this.oxygenWorld = body == null || body.atmosphere().breathable(); } private int collectOxygen(@NotNull ServerLevel world, @NotNull BlockPos pos) { @@ -129,15 +102,15 @@ private int collectOxygen(@NotNull ServerLevel world, @NotNull BlockPos pos) { @Override protected void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @NotNull BlockState state, @NotNull ProfilerFiller profiler) { super.tickConstant(world, pos, state, profiler); - this.chargeFromSlot(CHARGE_SLOT); + this.chargeFromStack(CHARGE_SLOT); } @Override protected @NotNull MachineStatus tick(@NotNull ServerLevel level, @NotNull BlockPos pos, @NotNull BlockState state, @NotNull ProfilerFiller profiler) { profiler.push("transfer"); - this.fluidSource.trySpreadFluids(level, pos, state); + this.trySpreadFluids(level, state); - if (this.fluidStorage().slot(OXYGEN_TANK).isFull()) return GCMachineStatuses.OXYGEN_TANK_FULL; + if (this.fluidStorage().getSlot(OXYGEN_TANK).isFull()) return GCMachineStatuses.OXYGEN_TANK_FULL; profiler.popPush("transaction"); try { if (this.energyStorage().canExtract(Galacticraft.CONFIG.oxygenCollectorEnergyConsumptionRate())) { @@ -146,7 +119,7 @@ protected void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @ profiler.pop(); if (this.collectionAmount > 0) { this.energyStorage().extract(Galacticraft.CONFIG.oxygenCollectorEnergyConsumptionRate()); - this.fluidStorage().slot(OXYGEN_TANK).insert(Gases.OXYGEN, FluidUtil.bucketsToDroplets(this.collectionAmount)); + this.fluidStorage().getSlot(OXYGEN_TANK).insert(Gases.OXYGEN, FluidUtil.bucketsToDroplets(this.collectionAmount)); return GCMachineStatuses.COLLECTING; } else { return GCMachineStatuses.NOT_ENOUGH_OXYGEN; @@ -162,8 +135,9 @@ protected void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @ @Nullable @Override - public MachineMenu createMenu(int syncId, Inventory inv, Player player) { - return new OxygenCollectorMenu(syncId, player, this); + public AbstractContainerMenu createMenu(int syncId, Inventory inv, Player player) { + if (this.getSecurity().hasAccess(player)) return new OxygenCollectorMenu(syncId, (ServerPlayer) player, this); + return null; } public int getCollectionAmount() { diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenCompressorBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenCompressorBlockEntity.java index 7f67bb7836..7f9cc5eb2e 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenCompressorBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenCompressorBlockEntity.java @@ -24,21 +24,13 @@ import dev.galacticraft.api.gas.Gases; import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; -import dev.galacticraft.machinelib.api.filter.ResourceFilters; import dev.galacticraft.machinelib.api.machine.MachineStatus; import dev.galacticraft.machinelib.api.machine.MachineStatuses; import dev.galacticraft.machinelib.api.menu.MachineMenu; -import dev.galacticraft.machinelib.api.storage.MachineEnergyStorage; -import dev.galacticraft.machinelib.api.storage.MachineFluidStorage; -import dev.galacticraft.machinelib.api.storage.MachineItemStorage; -import dev.galacticraft.machinelib.api.storage.StorageSpec; import dev.galacticraft.machinelib.api.storage.slot.FluidResourceSlot; -import dev.galacticraft.machinelib.api.storage.slot.ItemResourceSlot; -import dev.galacticraft.machinelib.api.transfer.TransferType; import dev.galacticraft.mod.Galacticraft; -import dev.galacticraft.mod.content.GCBlockEntityTypes; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.machine.GCMachineStatuses; -import dev.galacticraft.mod.screen.GCMenuTypes; import dev.galacticraft.mod.util.FluidUtil; import net.fabricmc.fabric.api.transfer.v1.fluid.FluidStorage; import net.fabricmc.fabric.api.transfer.v1.fluid.FluidVariant; @@ -46,9 +38,11 @@ import net.fabricmc.fabric.api.transfer.v1.transaction.Transaction; import net.minecraft.core.BlockPos; import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.profiling.ProfilerFiller; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -59,44 +53,22 @@ public class OxygenCompressorBlockEntity extends MachineBlockEntity { public static final int OXYGEN_TANK = 0; public static final long MAX_OXYGEN = FluidUtil.bucketsToDroplets(50); - private static final StorageSpec SPEC = StorageSpec.of( - MachineItemStorage.spec( - ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(8, 62) - .filter(ResourceFilters.CAN_EXTRACT_ENERGY), - ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(80, 27) - .filter(ResourceFilters.canInsertFluid(Gases.OXYGEN)) - ), - MachineEnergyStorage.spec( - Galacticraft.CONFIG.machineEnergyStorageSize(), - Galacticraft.CONFIG.oxygenCompressorEnergyConsumptionRate() * 2, - 0 - ), - MachineFluidStorage.spec( - FluidResourceSlot.builder(TransferType.INPUT) - .pos(31, 8) - .capacity(OxygenCompressorBlockEntity.MAX_OXYGEN) - .filter(ResourceFilters.ofResource(Gases.OXYGEN)) - ) - ); - public OxygenCompressorBlockEntity(BlockPos pos, BlockState state) { - super(GCBlockEntityTypes.OXYGEN_COMPRESSOR, pos, state, SPEC); + super(GCMachineTypes.OXYGEN_COMPRESSOR, pos, state); } @Override protected void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @NotNull BlockState state, @NotNull ProfilerFiller profiler) { super.tickConstant(world, pos, state, profiler); - this.chargeFromSlot(CHARGE_SLOT); + this.chargeFromStack(CHARGE_SLOT); } @Override protected @NotNull MachineStatus tick(@NotNull ServerLevel level, @NotNull BlockPos pos, @NotNull BlockState state, @NotNull ProfilerFiller profiler) { - FluidResourceSlot oxygenStorage = this.fluidStorage().slot(OXYGEN_TANK); + FluidResourceSlot oxygenStorage = this.fluidStorage().getSlot(OXYGEN_TANK); if (oxygenStorage.isEmpty()) return GCMachineStatuses.NOT_ENOUGH_OXYGEN; profiler.push("find_storage"); - Storage tank = this.itemStorage().slot(OXYGEN_OUTPUT_SLOT).find(FluidStorage.ITEM); + Storage tank = this.itemStorage().getSlot(OXYGEN_OUTPUT_SLOT).find(FluidStorage.ITEM); profiler.pop(); if (tank == null) return GCMachineStatuses.MISSING_OXYGEN_TANK; long space; @@ -128,12 +100,14 @@ protected void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @ @Nullable @Override - public MachineMenu createMenu(int syncId, Inventory inv, Player player) { - return new MachineMenu<>( - GCMenuTypes.OXYGEN_COMPRESSOR, - syncId, - player, - this - ); + public AbstractContainerMenu createMenu(int syncId, Inventory inv, Player player) { + if (this.getSecurity().hasAccess(player)) { + return new MachineMenu<>( + syncId, + (ServerPlayer) player, + this + ); + } + return null; } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenDecompressorBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenDecompressorBlockEntity.java index a843e3aaca..1b7a13edaf 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenDecompressorBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenDecompressorBlockEntity.java @@ -24,23 +24,13 @@ import dev.galacticraft.api.gas.Gases; import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; -import dev.galacticraft.machinelib.api.filter.ResourceFilters; import dev.galacticraft.machinelib.api.machine.MachineStatus; import dev.galacticraft.machinelib.api.machine.MachineStatuses; import dev.galacticraft.machinelib.api.menu.MachineMenu; -import dev.galacticraft.machinelib.api.storage.MachineEnergyStorage; -import dev.galacticraft.machinelib.api.storage.MachineFluidStorage; -import dev.galacticraft.machinelib.api.storage.MachineItemStorage; -import dev.galacticraft.machinelib.api.storage.StorageSpec; -import dev.galacticraft.machinelib.api.storage.slot.FluidResourceSlot; -import dev.galacticraft.machinelib.api.storage.slot.ItemResourceSlot; -import dev.galacticraft.machinelib.api.transfer.TransferType; -import dev.galacticraft.machinelib.api.util.FluidSource; import dev.galacticraft.machinelib.api.util.StorageHelper; import dev.galacticraft.mod.Galacticraft; -import dev.galacticraft.mod.content.GCBlockEntityTypes; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.machine.GCMachineStatuses; -import dev.galacticraft.mod.screen.GCMenuTypes; import dev.galacticraft.mod.util.FluidUtil; import net.fabricmc.fabric.api.transfer.v1.fluid.FluidStorage; import net.fabricmc.fabric.api.transfer.v1.fluid.FluidVariant; @@ -48,9 +38,11 @@ import net.fabricmc.fabric.api.transfer.v1.storage.StorageUtil; import net.minecraft.core.BlockPos; import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.profiling.ProfilerFiller; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -61,45 +53,21 @@ public class OxygenDecompressorBlockEntity extends MachineBlockEntity { public static final int OXYGEN_TANK = 0; public static final long MAX_OXYGEN = FluidUtil.bucketsToDroplets(50); - private static final StorageSpec SPEC = StorageSpec.of( - MachineItemStorage.spec( - ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(8, 62) - .filter(ResourceFilters.CAN_EXTRACT_ENERGY), - ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(80, 27) - .filter(ResourceFilters.canExtractFluid(Gases.OXYGEN)) - ), - MachineEnergyStorage.spec( - Galacticraft.CONFIG.machineEnergyStorageSize(), - Galacticraft.CONFIG.oxygenDecompressorEnergyConsumptionRate() * 2, - 0 - ), - MachineFluidStorage.spec( - FluidResourceSlot.builder(TransferType.OUTPUT) - .pos(31, 8) - .capacity(OxygenDecompressorBlockEntity.MAX_OXYGEN) - .filter(ResourceFilters.ofResource(Gases.OXYGEN)) - ) - ); - - private final FluidSource fluidSource = new FluidSource(this); - public OxygenDecompressorBlockEntity(BlockPos pos, BlockState state) { - super(GCBlockEntityTypes.OXYGEN_DECOMPRESSOR, pos, state, SPEC); + super(GCMachineTypes.OXYGEN_DECOMPRESSOR, pos, state); } @Override protected void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @NotNull BlockState state, @NotNull ProfilerFiller profiler) { super.tickConstant(world, pos, state, profiler); - this.chargeFromSlot(CHARGE_SLOT); + this.chargeFromStack(CHARGE_SLOT); } @Override protected @NotNull MachineStatus tick(@NotNull ServerLevel level, @NotNull BlockPos pos, @NotNull BlockState state, @NotNull ProfilerFiller profiler) { profiler.push("transfer"); - this.fluidSource.trySpreadFluids(level, pos, state); - Storage tank = this.itemStorage().slot(OXYGEN_INPUT_SLOT).find(FluidStorage.ITEM); + this.trySpreadFluids(level, state); + Storage tank = this.itemStorage().getSlot(OXYGEN_INPUT_SLOT).find(FluidStorage.ITEM); profiler.pop(); if (tank == null) return GCMachineStatuses.MISSING_OXYGEN_TANK; if (StorageUtil.simulateExtract(tank, FluidVariant.of(Gases.OXYGEN), Long.MAX_VALUE, null) == 0) return GCMachineStatuses.EMPTY_OXYGEN_TANK; @@ -107,7 +75,7 @@ protected void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @ try { if (this.energyStorage().extractExact(Galacticraft.CONFIG.oxygenDecompressorEnergyConsumptionRate())) { - StorageHelper.move(FluidVariant.of(Gases.OXYGEN), tank, this.fluidStorage().slot(OXYGEN_TANK), Long.MAX_VALUE, null); + StorageHelper.move(FluidVariant.of(Gases.OXYGEN), tank, this.fluidStorage().getSlot(OXYGEN_TANK), Long.MAX_VALUE, null); return GCMachineStatuses.DECOMPRESSING; } else { return MachineStatuses.NOT_ENOUGH_ENERGY; @@ -119,12 +87,14 @@ protected void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @ @Nullable @Override - public MachineMenu createMenu(int syncId, Inventory inv, Player player) { - return new MachineMenu<>( - GCMenuTypes.OXYGEN_DECOMPRESSOR, - syncId, - player, - this - ); + public AbstractContainerMenu createMenu(int syncId, Inventory inv, Player player) { + if (this.getSecurity().hasAccess(player)) { + return new MachineMenu<>( + syncId, + (ServerPlayer) player, + this + ); + } + return null; } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenStorageModuleBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenStorageModuleBlockEntity.java index ef496579bd..edc6d5f66a 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenStorageModuleBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/OxygenStorageModuleBlockEntity.java @@ -22,25 +22,19 @@ package dev.galacticraft.mod.content.block.entity.machine; -import dev.galacticraft.api.gas.Gases; import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; -import dev.galacticraft.machinelib.api.filter.ResourceFilters; import dev.galacticraft.machinelib.api.machine.MachineStatus; import dev.galacticraft.machinelib.api.machine.MachineStatuses; import dev.galacticraft.machinelib.api.menu.MachineMenu; -import dev.galacticraft.machinelib.api.storage.MachineFluidStorage; -import dev.galacticraft.machinelib.api.storage.StorageSpec; -import dev.galacticraft.machinelib.api.storage.slot.FluidResourceSlot; -import dev.galacticraft.machinelib.api.transfer.TransferType; -import dev.galacticraft.machinelib.api.util.FluidSource; -import dev.galacticraft.mod.content.GCBlockEntityTypes; -import dev.galacticraft.mod.screen.GCMenuTypes; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.util.FluidUtil; import net.minecraft.core.BlockPos; import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.profiling.ProfilerFiller; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -49,34 +43,26 @@ public class OxygenStorageModuleBlockEntity extends MachineBlockEntity { public static final int OXYGEN_TANK = 0; public static final long MAX_OXYGEN = FluidUtil.bucketsToDroplets(100); - public static final StorageSpec SPEC = StorageSpec.of( - MachineFluidStorage.spec( - FluidResourceSlot.builder(TransferType.STORAGE) - .hidden() - .capacity(OxygenStorageModuleBlockEntity.MAX_OXYGEN) - .filter(ResourceFilters.ofResource(Gases.OXYGEN)) - ) - ); - private final FluidSource source = new FluidSource(this); - public OxygenStorageModuleBlockEntity(BlockPos pos, BlockState state) { - super(GCBlockEntityTypes.OXYGEN_STORAGE_MODULE, pos, state, SPEC); + super(GCMachineTypes.OXYGEN_STORAGE_MODULE, pos, state); } @Override protected @NotNull MachineStatus tick(@NotNull ServerLevel level, @NotNull BlockPos pos, @NotNull BlockState state, @NotNull ProfilerFiller profiler) { - this.source.trySpreadFluids(level, pos, state); + this.trySpreadFluids(level, state); return MachineStatuses.ACTIVE; } @Nullable @Override - public MachineMenu createMenu(int syncId, Inventory inv, Player player) { - return new MachineMenu<>( - GCMenuTypes.OXYGEN_STORAGE_MODULE, - syncId, - player, - this - ); + public AbstractContainerMenu createMenu(int syncId, Inventory inv, Player player) { + if (this.getSecurity().hasAccess(player)) { + return new MachineMenu<>( + syncId, + (ServerPlayer) player, + this + ); + } + return null; } } diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/RefineryBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/RefineryBlockEntity.java index c66a0a631c..988924e3a5 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/machine/RefineryBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/machine/RefineryBlockEntity.java @@ -23,35 +23,29 @@ package dev.galacticraft.mod.content.block.entity.machine; import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; -import dev.galacticraft.machinelib.api.filter.ResourceFilters; import dev.galacticraft.machinelib.api.machine.MachineStatus; import dev.galacticraft.machinelib.api.machine.MachineStatuses; import dev.galacticraft.machinelib.api.menu.MachineMenu; -import dev.galacticraft.machinelib.api.storage.MachineEnergyStorage; -import dev.galacticraft.machinelib.api.storage.MachineFluidStorage; -import dev.galacticraft.machinelib.api.storage.MachineItemStorage; -import dev.galacticraft.machinelib.api.storage.StorageSpec; import dev.galacticraft.machinelib.api.storage.slot.FluidResourceSlot; -import dev.galacticraft.machinelib.api.storage.slot.ItemResourceSlot; -import dev.galacticraft.machinelib.api.transfer.TransferType; import dev.galacticraft.mod.Galacticraft; -import dev.galacticraft.mod.content.GCBlockEntityTypes; import dev.galacticraft.mod.content.GCFluids; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.machine.GCMachineStatuses; -import dev.galacticraft.mod.screen.GCMenuTypes; import dev.galacticraft.mod.util.FluidUtil; import net.fabricmc.fabric.api.transfer.v1.fluid.FluidConstants; import net.minecraft.core.BlockPos; import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.profiling.ProfilerFiller; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.VisibleForTesting; -public class RefineryBlockEntity extends MachineBlockEntity { +public class RefineryBlockEntity extends MachineBlockEntity { //fixme public static final int CHARGE_SLOT = 0; public static final int OIL_INPUT_SLOT = 1; public static final int FUEL_OUTPUT_SLOT = 2; @@ -61,53 +55,24 @@ public class RefineryBlockEntity extends MachineBlockEntity { @VisibleForTesting public static final long MAX_CAPACITY = FluidUtil.bucketsToDroplets(8); - private static final StorageSpec SPEC = StorageSpec.of( - MachineItemStorage.spec( - ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(8, 7) - .filter(ResourceFilters.CAN_EXTRACT_ENERGY), - ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(123, 7) - .filter(ResourceFilters.canExtractFluid(GCFluids.CRUDE_OIL)), // fixme: tag?, - ItemResourceSlot.builder(TransferType.TRANSFER) - .pos(153, 7) - .filter(ResourceFilters.canInsertFluid(GCFluids.FUEL)) // fixme: tag? - ), - MachineEnergyStorage.spec( - Galacticraft.CONFIG.machineEnergyStorageSize(), - Galacticraft.CONFIG.refineryEnergyConsumptionRate() * 2, - 0 - ), - MachineFluidStorage.spec( - FluidResourceSlot.builder(TransferType.INPUT) - .pos(123, 29) - .capacity(RefineryBlockEntity.MAX_CAPACITY) - .filter(ResourceFilters.ofResource(GCFluids.CRUDE_OIL)), - FluidResourceSlot.builder(TransferType.OUTPUT) - .pos(153, 29) - .capacity(RefineryBlockEntity.MAX_CAPACITY) - .filter(ResourceFilters.ofResource(GCFluids.FUEL)) - ) - ); - public RefineryBlockEntity(BlockPos pos, BlockState state) { - super(GCBlockEntityTypes.REFINERY, pos, state, SPEC); + super(GCMachineTypes.REFINERY, pos, state); } @Override protected void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @NotNull BlockState state, @NotNull ProfilerFiller profiler) { super.tickConstant(world, pos, state, profiler); - this.chargeFromSlot(CHARGE_SLOT); + this.chargeFromStack(CHARGE_SLOT); - this.takeFluidFromSlot(OIL_INPUT_SLOT, OIL_TANK, GCFluids.CRUDE_OIL); - this.drainFluidToSlot(FUEL_OUTPUT_SLOT, FUEL_TANK); + this.takeFluidFromStack(OIL_INPUT_SLOT, OIL_TANK, GCFluids.CRUDE_OIL); + this.insertFluidToStack(FUEL_OUTPUT_SLOT, FUEL_TANK, GCFluids.FUEL); } @Override protected @NotNull MachineStatus tick(@NotNull ServerLevel level, @NotNull BlockPos pos, @NotNull BlockState state, @NotNull ProfilerFiller profiler) { - FluidResourceSlot oilTank = this.fluidStorage().slot(OIL_TANK); + FluidResourceSlot oilTank = this.fluidStorage().getSlot(OIL_TANK); if (oilTank.isEmpty()) return GCMachineStatuses.MISSING_OIL; - FluidResourceSlot fuelTank = this.fluidStorage().slot(FUEL_TANK); + FluidResourceSlot fuelTank = this.fluidStorage().getSlot(FUEL_TANK); if (fuelTank.isFull()) return GCMachineStatuses.FUEL_TANK_FULL; profiler.push("transaction"); try { @@ -128,12 +93,14 @@ protected void tickConstant(@NotNull ServerLevel world, @NotNull BlockPos pos, @ @Nullable @Override - public MachineMenu createMenu(int syncId, Inventory inv, Player player) { - return new MachineMenu<>( - GCMenuTypes.REFINERY, - syncId, - player, - this - ); + public AbstractContainerMenu createMenu(int syncId, Inventory inv, Player player) { + if (this.getSecurity().hasAccess(player)) { + return new MachineMenu<>( + syncId, + (ServerPlayer) player, + this + ); + } + return null; } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/networked/FluidPipeWalkwayBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/networked/FluidPipeWalkwayBlockEntity.java index 1e95850e6d..a376e217a9 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/networked/FluidPipeWalkwayBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/networked/FluidPipeWalkwayBlockEntity.java @@ -29,7 +29,6 @@ import net.fabricmc.fabric.api.transfer.v1.fluid.FluidConstants; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.NotNull; @@ -42,14 +41,14 @@ public FluidPipeWalkwayBlockEntity(BlockPos pos, BlockState state) { } @Override - protected void saveAdditional(CompoundTag nbt, HolderLookup.Provider registryLookup) { - super.saveAdditional(nbt, registryLookup); + public void saveAdditional(CompoundTag nbt) { + super.saveAdditional(nbt); this.writeWalkwayNbt(nbt); } @Override - protected void loadAdditional(CompoundTag nbt, HolderLookup.Provider registryLookup) { - super.loadAdditional(nbt, registryLookup); + public void load(CompoundTag nbt) { + super.load(nbt); this.readWalkwayNbt(nbt); } diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/networked/GlassFluidPipeBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/networked/GlassFluidPipeBlockEntity.java index 9b6cdfd576..88a674dcca 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/networked/GlassFluidPipeBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/networked/GlassFluidPipeBlockEntity.java @@ -29,7 +29,6 @@ import dev.galacticraft.mod.content.block.special.fluidpipe.PipeBlockEntity; import net.fabricmc.fabric.api.transfer.v1.fluid.FluidConstants; import net.minecraft.core.BlockPos; -import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.world.level.block.state.BlockState; @@ -41,14 +40,14 @@ public GlassFluidPipeBlockEntity(BlockPos pos, BlockState state) { } @Override - protected void loadAdditional(CompoundTag nbt, HolderLookup.Provider registryLookup) { - super.loadAdditional(nbt, registryLookup); + public void load(CompoundTag nbt) { + super.load(nbt); this.readPullNbt(nbt); } @Override - protected void saveAdditional(CompoundTag nbt, HolderLookup.Provider registryLookup) { - super.saveAdditional(nbt, registryLookup); + public void saveAdditional(CompoundTag nbt) { + super.saveAdditional(nbt); this.writePullNbt(nbt); } diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/networked/WireBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/networked/WireBlockEntity.java index c465ac8673..69b8f35ebd 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/networked/WireBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/networked/WireBlockEntity.java @@ -29,7 +29,6 @@ import net.fabricmc.fabric.api.transfer.v1.transaction.TransactionContext; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.protocol.Packet; import net.minecraft.network.protocol.game.ClientGamePacketListener; @@ -123,14 +122,14 @@ public void updateConnection(BlockState state, BlockPos pos, BlockPos neighborPo } @Override - protected void saveAdditional(CompoundTag nbt, HolderLookup.Provider registryLookup) { - super.saveAdditional(nbt, registryLookup); + public void saveAdditional(CompoundTag nbt) { + super.saveAdditional(nbt); this.writeConnectionNbt(nbt); } @Override - protected void loadAdditional(CompoundTag nbt, HolderLookup.Provider registryLookup) { - super.loadAdditional(nbt, registryLookup); + public void load(CompoundTag nbt) { + super.load(nbt); this.readConnectionNbt(nbt); if (this.level != null && this.level.isClientSide) { @@ -139,8 +138,8 @@ protected void loadAdditional(CompoundTag nbt, HolderLookup.Provider registryLoo } @Override - public CompoundTag getUpdateTag(HolderLookup.Provider registryLookup) { - return this.saveWithoutMetadata(registryLookup); + public CompoundTag getUpdateTag() { + return this.saveWithoutMetadata(); } @Override diff --git a/src/main/java/dev/galacticraft/mod/content/block/entity/networked/WireWalkwayBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/entity/networked/WireWalkwayBlockEntity.java index c7a0d9ce67..789bea6546 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/entity/networked/WireWalkwayBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/entity/networked/WireWalkwayBlockEntity.java @@ -26,7 +26,6 @@ import dev.galacticraft.mod.content.GCBlockEntityTypes; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.NotNull; @@ -39,14 +38,14 @@ public WireWalkwayBlockEntity(BlockPos pos, BlockState state) { } @Override - protected void saveAdditional(CompoundTag nbt, HolderLookup.Provider registryLookup) { - super.saveAdditional(nbt, registryLookup); + public void saveAdditional(CompoundTag nbt) { + super.saveAdditional(nbt); this.writeWalkwayNbt(nbt); } @Override - protected void loadAdditional(CompoundTag nbt, HolderLookup.Provider registryLookup) { - super.loadAdditional(nbt, registryLookup); + public void load(CompoundTag nbt) { + super.load(nbt); this.readWalkwayNbt(nbt); } diff --git a/src/main/java/dev/galacticraft/mod/content/block/environment/FallenMeteorBlock.java b/src/main/java/dev/galacticraft/mod/content/block/environment/FallenMeteorBlock.java index 80903715bc..adfb414d84 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/environment/FallenMeteorBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/environment/FallenMeteorBlock.java @@ -26,7 +26,6 @@ import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.core.particles.ParticleTypes; -import net.minecraft.core.registries.Registries; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvents; import net.minecraft.sounds.SoundSource; @@ -153,7 +152,7 @@ public void entityInside(BlockState state, Level world, BlockPos pos, Entity ent @Override public void spawnAfterBreak(BlockState blockState, ServerLevel serverLevel, BlockPos blockPos, ItemStack itemStack, boolean bl) { - if (bl && EnchantmentHelper.getItemEnchantmentLevel(serverLevel.registryAccess().registryOrThrow(Registries.ENCHANTMENT).getHolderOrThrow(Enchantments.SILK_TOUCH), itemStack) == 0) { + if (EnchantmentHelper.getItemEnchantmentLevel(Enchantments.SILK_TOUCH, itemStack) == 0) { var i = Mth.nextInt(serverLevel.random, 3, 7); if (i > 0) { this.popExperience(serverLevel, blockPos, i); diff --git a/src/main/java/dev/galacticraft/mod/content/block/environment/GlowstoneLanternBlock.java b/src/main/java/dev/galacticraft/mod/content/block/environment/GlowstoneLanternBlock.java index 7c925cfa30..fa022e6b62 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/environment/GlowstoneLanternBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/environment/GlowstoneLanternBlock.java @@ -26,9 +26,9 @@ import dev.galacticraft.mod.util.Translations; import net.minecraft.client.gui.screens.Screen; import net.minecraft.network.chat.Component; -import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; +import net.minecraft.world.level.BlockGetter; import net.minecraft.world.level.block.LanternBlock; import java.util.List; @@ -39,13 +39,11 @@ public GlowstoneLanternBlock(Properties settings) { } @Override - public void appendHoverText(ItemStack stack, Item.TooltipContext context, List tooltip, TooltipFlag options) { - super.appendHoverText(stack, context, tooltip, options); - + public void appendHoverText(ItemStack stack, BlockGetter blockView, List list, TooltipFlag tooltipContext) { if (Screen.hasShiftDown()) { - tooltip.add(Component.translatable(Translations.Tooltip.GLOWSTONE_LANTERN).setStyle(Constant.Text.Color.GRAY_STYLE)); + list.add(Component.translatable(Translations.Tooltip.GLOWSTONE_LANTERN).setStyle(Constant.Text.Color.GRAY_STYLE)); } else { - tooltip.add(Component.translatable(Translations.Tooltip.PRESS_SHIFT).setStyle(Constant.Text.Color.GRAY_STYLE)); + list.add(Component.translatable(Translations.Tooltip.PRESS_SHIFT).setStyle(Constant.Text.Color.GRAY_STYLE)); } } } diff --git a/src/main/java/dev/galacticraft/mod/content/block/environment/GlowstoneTorchBlock.java b/src/main/java/dev/galacticraft/mod/content/block/environment/GlowstoneTorchBlock.java index 92854a2042..ac58948d8d 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/environment/GlowstoneTorchBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/environment/GlowstoneTorchBlock.java @@ -29,9 +29,9 @@ import net.minecraft.core.BlockPos; import net.minecraft.network.chat.Component; import net.minecraft.util.RandomSource; -import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; +import net.minecraft.world.level.BlockGetter; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.TorchBlock; import net.minecraft.world.level.block.state.BlockState; @@ -50,13 +50,11 @@ public void animateTick(BlockState blockState, Level world, BlockPos blockPos, R } @Override - public void appendHoverText(ItemStack stack, Item.TooltipContext context, List tooltip, TooltipFlag options) { - super.appendHoverText(stack, context, tooltip, options); - + public void appendHoverText(ItemStack stack, BlockGetter blockView, List list, TooltipFlag tooltipContext) { if (Screen.hasShiftDown()) { - tooltip.add(Component.translatable(Translations.Tooltip.GLOWSTONE_TORCH).setStyle(Constant.Text.Color.GRAY_STYLE)); + list.add(Component.translatable(Translations.Tooltip.GLOWSTONE_TORCH).setStyle(Constant.Text.Color.GRAY_STYLE)); } else { - tooltip.add(Component.translatable(Translations.Tooltip.PRESS_SHIFT).setStyle(Constant.Text.Color.GRAY_STYLE)); + list.add(Component.translatable(Translations.Tooltip.PRESS_SHIFT).setStyle(Constant.Text.Color.GRAY_STYLE)); } } diff --git a/src/main/java/dev/galacticraft/mod/content/block/environment/GlowstoneWallTorchBlock.java b/src/main/java/dev/galacticraft/mod/content/block/environment/GlowstoneWallTorchBlock.java index e7c92c50f0..74192f41e5 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/environment/GlowstoneWallTorchBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/environment/GlowstoneWallTorchBlock.java @@ -29,9 +29,9 @@ import net.minecraft.core.BlockPos; import net.minecraft.network.chat.Component; import net.minecraft.util.RandomSource; -import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; +import net.minecraft.world.level.BlockGetter; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.WallTorchBlock; import net.minecraft.world.level.block.state.BlockState; @@ -49,12 +49,11 @@ public void animateTick(BlockState blockState, Level world, BlockPos blockPos, R } @Override - public void appendHoverText(ItemStack stack, Item.TooltipContext context, List tooltip, TooltipFlag options) { - super.appendHoverText(stack, context, tooltip, options); + public void appendHoverText(ItemStack stack, BlockGetter blockView, List list, TooltipFlag tooltipContext) { if (Screen.hasShiftDown()) { - tooltip.add(Component.translatable(Translations.Tooltip.GLOWSTONE_TORCH).setStyle(Constant.Text.Color.GRAY_STYLE)); + list.add(Component.translatable(Translations.Tooltip.GLOWSTONE_TORCH).setStyle(Constant.Text.Color.GRAY_STYLE)); } else { - tooltip.add(Component.translatable(Translations.Tooltip.PRESS_SHIFT).setStyle(Constant.Text.Color.GRAY_STYLE)); + list.add(Component.translatable(Translations.Tooltip.PRESS_SHIFT).setStyle(Constant.Text.Color.GRAY_STYLE)); } } } diff --git a/src/main/java/dev/galacticraft/mod/content/block/environment/MoonBerryBushBlock.java b/src/main/java/dev/galacticraft/mod/content/block/environment/MoonBerryBushBlock.java new file mode 100644 index 0000000000..3f8683e546 --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/content/block/environment/MoonBerryBushBlock.java @@ -0,0 +1,138 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.content.block.environment; + +import com.mojang.serialization.MapCodec; +import dev.galacticraft.mod.content.GCBlocks; +import dev.galacticraft.mod.content.item.GCItems; +import net.minecraft.core.BlockPos; +import net.minecraft.core.particles.DustParticleOptions; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.sounds.SoundSource; +import net.minecraft.util.RandomSource; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.BlockGetter; +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.BushBlock; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.StateDefinition; +import net.minecraft.world.level.block.state.properties.BlockStateProperties; +import net.minecraft.world.level.block.state.properties.IntegerProperty; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.Vec3; +import net.minecraft.world.phys.shapes.CollisionContext; +import net.minecraft.world.phys.shapes.VoxelShape; +import org.joml.Vector3f; + +public class MoonBerryBushBlock extends BushBlock { + public static final MapCodec CODEC = simpleCodec(MoonBerryBushBlock::new); + public static final IntegerProperty AGE = BlockStateProperties.AGE_3; + private static final VoxelShape SMALL_SHAPE = Block.box(3.0D, 0.0D, 3.0D, 13.0D, 8.0D, 13.0D); + private static final VoxelShape LARGE_SHAPE = Block.box(1.0D, 0.0D, 1.0D, 15.0D, 16.0D, 15.0D); + + public MoonBerryBushBlock(Properties settings) { + super(settings); + this.registerDefaultState(this.getStateDefinition().any().setValue(AGE, 0)); + } + + @Override + protected MapCodec codec() { + return CODEC; + } + + @Override + public ItemStack getCloneItemStack(LevelReader levelReader, BlockPos pos, BlockState state) { + return new ItemStack(GCItems.MOON_BERRIES); + } + + @Override + public VoxelShape getShape(BlockState blockState, BlockGetter blockView, BlockPos blockPos, CollisionContext context) { + if (blockState.getValue(AGE) == 0) { + return SMALL_SHAPE; + } else { + return blockState.getValue(AGE) < 3 ? LARGE_SHAPE : super.getShape(blockState, blockView, blockPos, context); + } + } + + @Override + public void tick(BlockState blockState, ServerLevel world, BlockPos blockPos, RandomSource random) { + super.tick(blockState, world, blockPos, random); + int age = blockState.getValue(AGE); + if (age < 3 && random.nextInt(20) == 0) { + world.setBlock(blockPos, blockState.setValue(AGE, age + 1), 2); + } + } + + @Override + public void entityInside(BlockState blockState, Level world, BlockPos blockPos, Entity entity) { + entity.makeStuckInBlock(blockState, new Vec3(0.800000011920929D, 0.75D, 0.800000011920929D)); + } + + @Override + public InteractionResult use(BlockState blockState, Level world, BlockPos blockPos, Player player, InteractionHand hand, BlockHitResult blockHitResult) { + int age = blockState.getValue(AGE); + boolean mature = age == 3; + + if (mature) { + int amount = 1 + world.random.nextInt(3); + popResource(world, blockPos, new ItemStack(GCItems.MOON_BERRIES, amount)); + world.playSound(null, blockPos, SoundEvents.SWEET_BERRY_BUSH_PICK_BERRIES, SoundSource.BLOCKS, 1.0F, 0.8F + world.random.nextFloat() * 0.4F); + world.setBlock(blockPos, blockState.setValue(AGE, 1), 2); + return InteractionResult.SUCCESS; + } else { + return super.use(blockState, world, blockPos, player, hand, blockHitResult); + } + } + + @Override + public void createBlockStateDefinition(StateDefinition.Builder stateBuilder) { + stateBuilder.add(AGE); + } + + @Override + public boolean mayPlaceOn(BlockState blockState, BlockGetter blockView, BlockPos blockPos) { + return blockState.getBlock() == GCBlocks.MOON_DIRT; + } + + @Override + public void animateTick(BlockState blockState, Level world, BlockPos blockPos, RandomSource random) { + if (blockState.getValue(AGE) == 3) { + + double x = blockPos.getX() + 0.5D + (random.nextFloat() - random.nextFloat()); + double y = blockPos.getY() + random.nextFloat(); + double z = blockPos.getZ() + 0.5D + (random.nextFloat() - random.nextFloat()); + int times = random.nextInt(4); + + for (int i = 0; i < times; i++) { + world.addParticle(new DustParticleOptions(new Vector3f(0.5f, 0.5f, 1.0f), 0.6f), x, y, z, 0.0D, 0.0D, 0.0D); + } + } + } +} diff --git a/src/main/java/dev/galacticraft/mod/content/block/environment/OlivineClusterBlock.java b/src/main/java/dev/galacticraft/mod/content/block/environment/OlivineClusterBlock.java deleted file mode 100644 index f78efa7a1c..0000000000 --- a/src/main/java/dev/galacticraft/mod/content/block/environment/OlivineClusterBlock.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.content.block.environment; - -import net.minecraft.world.level.block.AmethystClusterBlock; - -public class OlivineClusterBlock extends AmethystClusterBlock { - public OlivineClusterBlock(Properties properties) { - super(7.0F, 3.0F, properties); - } -} diff --git a/src/main/java/dev/galacticraft/mod/content/block/environment/UnlitLanternBlock.java b/src/main/java/dev/galacticraft/mod/content/block/environment/UnlitLanternBlock.java index 22d94fdb79..b21cbf21f4 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/environment/UnlitLanternBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/environment/UnlitLanternBlock.java @@ -29,10 +29,8 @@ import net.minecraft.sounds.SoundSource; import net.minecraft.tags.ItemTags; import net.minecraft.world.InteractionHand; -import net.minecraft.world.ItemInteractionResult; -import net.minecraft.world.entity.LivingEntity; +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.Blocks; import net.minecraft.world.level.block.LanternBlock; @@ -46,22 +44,21 @@ public UnlitLanternBlock(Properties properties) { } @Override - protected ItemInteractionResult useItemOn(ItemStack stack, BlockState state, Level level, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hit) { - var itemStack = player.getItemInHand(hand); + public InteractionResult use(BlockState blockState, Level level, BlockPos blockPos, Player player, InteractionHand interactionHand, BlockHitResult blockHitResult) { + var itemStack = player.getItemInHand(interactionHand); if (itemStack.is(ItemTags.CREEPER_IGNITERS)) { - level.playSound(null, pos, SoundEvents.FLINTANDSTEEL_USE, SoundSource.BLOCKS, 1.0F, level.getRandom().nextFloat() * 0.4F + 0.8F); - level.setBlockAndUpdate(pos, Blocks.LANTERN.defaultBlockState().setValue(HANGING, state.getValue(HANGING)).setValue(WATERLOGGED, state.getValue(WATERLOGGED))); - level.gameEvent(player, GameEvent.BLOCK_CHANGE, pos); + level.playSound(null, blockPos, SoundEvents.FLINTANDSTEEL_USE, SoundSource.BLOCKS, 1.0F, level.getRandom().nextFloat() * 0.4F + 0.8F); + level.setBlockAndUpdate(blockPos, Blocks.LANTERN.defaultBlockState().setValue(HANGING, blockState.getValue(HANGING)).setValue(WATERLOGGED, blockState.getValue(WATERLOGGED))); + level.gameEvent(player, GameEvent.BLOCK_CHANGE, blockPos); if (player instanceof ServerPlayer serverPlayer) { - CriteriaTriggers.PLACED_BLOCK.trigger(serverPlayer, pos, itemStack); - itemStack.hurtAndBreak(1, player, LivingEntity.getSlotForHand(hand)); + CriteriaTriggers.PLACED_BLOCK.trigger(serverPlayer, blockPos, itemStack); + itemStack.hurtAndBreak(1, player, playerx -> playerx.broadcastBreakEvent(interactionHand)); } - return ItemInteractionResult.SUCCESS; + return InteractionResult.sidedSuccess(level.isClientSide()); } - - return super.useItemOn(stack, state, level, pos, player, hand, hit); + return super.use(blockState, level, blockPos, player, interactionHand, blockHitResult); } } diff --git a/src/main/java/dev/galacticraft/mod/content/block/environment/UnlitTorchBlock.java b/src/main/java/dev/galacticraft/mod/content/block/environment/UnlitTorchBlock.java index a4a128d5ee..836b238b91 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/environment/UnlitTorchBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/environment/UnlitTorchBlock.java @@ -31,10 +31,8 @@ import net.minecraft.tags.ItemTags; import net.minecraft.util.RandomSource; import net.minecraft.world.InteractionHand; -import net.minecraft.world.ItemInteractionResult; -import net.minecraft.world.entity.LivingEntity; +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.Blocks; import net.minecraft.world.level.block.TorchBlock; @@ -50,23 +48,22 @@ public UnlitTorchBlock(Properties properties) { } @Override - protected ItemInteractionResult useItemOn(ItemStack stack, BlockState state, Level level, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hit) { - var itemStack = player.getItemInHand(hand); + public InteractionResult use(BlockState blockState, Level level, BlockPos blockPos, Player player, InteractionHand interactionHand, BlockHitResult blockHitResult) { + var itemStack = player.getItemInHand(interactionHand); if (itemStack.is(ItemTags.CREEPER_IGNITERS)) { - level.playSound(null, pos, SoundEvents.FLINTANDSTEEL_USE, SoundSource.BLOCKS, 1.0F, level.getRandom().nextFloat() * 0.4F + 0.8F); - level.setBlockAndUpdate(pos, Blocks.TORCH.defaultBlockState()); - level.gameEvent(player, GameEvent.BLOCK_CHANGE, pos); + level.playSound(null, blockPos, SoundEvents.FLINTANDSTEEL_USE, SoundSource.BLOCKS, 1.0F, level.getRandom().nextFloat() * 0.4F + 0.8F); + level.setBlockAndUpdate(blockPos, Blocks.TORCH.defaultBlockState()); + level.gameEvent(player, GameEvent.BLOCK_CHANGE, blockPos); if (player instanceof ServerPlayer serverPlayer) { - CriteriaTriggers.PLACED_BLOCK.trigger(serverPlayer, pos, itemStack); - itemStack.hurtAndBreak(1, player, LivingEntity.getSlotForHand(hand)); + CriteriaTriggers.PLACED_BLOCK.trigger(serverPlayer, blockPos, itemStack); + itemStack.hurtAndBreak(1, player, playerx -> playerx.broadcastBreakEvent(interactionHand)); } - return ItemInteractionResult.SUCCESS; + return InteractionResult.sidedSuccess(level.isClientSide()); } - - return super.useItemOn(stack, state, level, pos, player, hand, hit); + return super.use(blockState, level, blockPos, player, interactionHand, blockHitResult); } @Override diff --git a/src/main/java/dev/galacticraft/mod/content/block/environment/UnlitWallTorchBlock.java b/src/main/java/dev/galacticraft/mod/content/block/environment/UnlitWallTorchBlock.java index 14b2147857..04be7cb848 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/environment/UnlitWallTorchBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/environment/UnlitWallTorchBlock.java @@ -31,10 +31,8 @@ import net.minecraft.tags.ItemTags; import net.minecraft.util.RandomSource; import net.minecraft.world.InteractionHand; -import net.minecraft.world.ItemInteractionResult; -import net.minecraft.world.entity.LivingEntity; +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.Blocks; import net.minecraft.world.level.block.WallTorchBlock; @@ -50,23 +48,22 @@ public UnlitWallTorchBlock(Properties properties) { } @Override - protected ItemInteractionResult useItemOn(ItemStack stack, BlockState state, Level level, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hit) { - var itemStack = player.getItemInHand(hand); + public InteractionResult use(BlockState blockState, Level level, BlockPos blockPos, Player player, InteractionHand interactionHand, BlockHitResult blockHitResult) { + var itemStack = player.getItemInHand(interactionHand); if (itemStack.is(ItemTags.CREEPER_IGNITERS)) { - level.playSound(null, pos, SoundEvents.FLINTANDSTEEL_USE, SoundSource.BLOCKS, 1.0F, level.getRandom().nextFloat() * 0.4F + 0.8F); - level.setBlockAndUpdate(pos, Blocks.WALL_TORCH.defaultBlockState().setValue(WallTorchBlock.FACING, state.getValue(WallTorchBlock.FACING))); - level.gameEvent(player, GameEvent.BLOCK_CHANGE, pos); + level.playSound(null, blockPos, SoundEvents.FLINTANDSTEEL_USE, SoundSource.BLOCKS, 1.0F, level.getRandom().nextFloat() * 0.4F + 0.8F); + level.setBlockAndUpdate(blockPos, Blocks.WALL_TORCH.defaultBlockState().setValue(WallTorchBlock.FACING, blockState.getValue(WallTorchBlock.FACING))); + level.gameEvent(player, GameEvent.BLOCK_CHANGE, blockPos); if (player instanceof ServerPlayer serverPlayer) { - CriteriaTriggers.PLACED_BLOCK.trigger(serverPlayer, pos, itemStack); - itemStack.hurtAndBreak(1, player, LivingEntity.getSlotForHand(hand)); + CriteriaTriggers.PLACED_BLOCK.trigger(serverPlayer, blockPos, itemStack); + itemStack.hurtAndBreak(1, player, playerx -> playerx.broadcastBreakEvent(interactionHand)); } - return ItemInteractionResult.SUCCESS; + return InteractionResult.sidedSuccess(level.isClientSide()); } - - return super.useItemOn(stack, state, level, pos, player, hand, hit); + return super.use(blockState, level, blockPos, player, interactionHand, blockHitResult); } @Override diff --git a/src/main/java/dev/galacticraft/mod/content/block/environment/VolcanicRockBlock.java b/src/main/java/dev/galacticraft/mod/content/block/environment/VolcanicRockBlock.java index 086bad20c7..21cf26340c 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/environment/VolcanicRockBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/environment/VolcanicRockBlock.java @@ -22,8 +22,10 @@ package dev.galacticraft.mod.content.block.environment; +import net.minecraft.advancements.critereon.EnchantmentPredicate; +import net.minecraft.advancements.critereon.ItemPredicate; +import net.minecraft.advancements.critereon.MinMaxBounds; import net.minecraft.core.BlockPos; -import net.minecraft.core.registries.Registries; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.enchantment.Enchantments; @@ -41,23 +43,25 @@ import java.util.List; public class VolcanicRockBlock extends Block { + private static final ItemPredicate HAS_SILK_TOUCH = ItemPredicate.Builder.item().hasEnchantment(new EnchantmentPredicate(Enchantments.SILK_TOUCH, MinMaxBounds.Ints.atLeast(1))).build(); + public VolcanicRockBlock(Properties settings) { super(settings); } @Override - public void playerDestroy(Level level, Player player, BlockPos pos, BlockState state, @Nullable BlockEntity blockEntity, ItemStack stack) { - super.playerDestroy(level, player, pos, state, blockEntity, stack); - if (stack.getEnchantments().getLevel(level.registryAccess().registryOrThrow(Registries.ENCHANTMENT).getHolderOrThrow(Enchantments.SILK_TOUCH)) < 1) { - level.setBlockAndUpdate(pos, Blocks.LAVA.defaultBlockState()); + public void playerDestroy(Level world, Player player, BlockPos pos, BlockState state, @Nullable BlockEntity blockEntity, ItemStack stack) { + super.playerDestroy(world, player, pos, state, blockEntity, stack); + if (!HAS_SILK_TOUCH.matches(stack)) { + world.setBlockAndUpdate(pos, Blocks.LAVA.defaultBlockState()); } } @Override public List getDrops(BlockState state, LootParams.@NotNull Builder builder) { - ItemStack itemStack = builder.getOptionalParameter(LootContextParams.TOOL); + ItemStack itemStack = builder.getParameter(LootContextParams.TOOL); if (itemStack != null) { - if (itemStack.getEnchantments().getLevel(builder.getLevel().registryAccess().registryOrThrow(Registries.ENCHANTMENT).getHolderOrThrow(Enchantments.SILK_TOUCH)) >= 1) { + if (HAS_SILK_TOUCH.matches(itemStack)) { return super.getDrops(state, builder); } } diff --git a/src/main/java/dev/galacticraft/mod/content/block/machine/CoalGeneratorBlock.java b/src/main/java/dev/galacticraft/mod/content/block/machine/CoalGeneratorBlock.java index e8ace8a1cf..0e9d32f84e 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/machine/CoalGeneratorBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/machine/CoalGeneratorBlock.java @@ -22,9 +22,8 @@ package dev.galacticraft.mod.content.block.machine; -import com.mojang.serialization.MapCodec; import dev.galacticraft.machinelib.api.block.MachineBlock; -import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; +import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.content.block.entity.machine.CoalGeneratorBlockEntity; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; @@ -33,26 +32,12 @@ import net.minecraft.sounds.SoundSource; import net.minecraft.util.RandomSource; import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.BaseEntityBlock; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.properties.BlockStateProperties; -import org.jetbrains.annotations.NotNull; - -public class CoalGeneratorBlock extends MachineBlock { - private static final MapCodec CODEC = simpleCodec(CoalGeneratorBlock::new); +public class CoalGeneratorBlock extends MachineBlock { public CoalGeneratorBlock(Properties settings) { - super(settings); - } - - @Override - protected @NotNull MapCodec codec() { - return CODEC; - } - - @Override - public @NotNull MachineBlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new CoalGeneratorBlockEntity(pos, state); + super(settings, Constant.id(Constant.Block.COAL_GENERATOR)); } @Override diff --git a/src/main/java/dev/galacticraft/mod/content/block/machine/FuelLoaderBlock.java b/src/main/java/dev/galacticraft/mod/content/block/machine/FuelLoaderBlock.java index 164de437e1..a424e48fc5 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/machine/FuelLoaderBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/machine/FuelLoaderBlock.java @@ -22,41 +22,27 @@ package dev.galacticraft.mod.content.block.machine; -import com.mojang.serialization.MapCodec; import dev.galacticraft.machinelib.api.block.MachineBlock; -import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; +import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.content.block.entity.machine.FuelLoaderBlockEntity; import dev.galacticraft.mod.content.block.special.launchpad.AbstractLaunchPad; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.world.level.Level; import net.minecraft.world.level.LevelAccessor; -import net.minecraft.world.level.block.BaseEntityBlock; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.StateDefinition; import net.minecraft.world.level.block.state.properties.BooleanProperty; -import org.jetbrains.annotations.NotNull; -public class FuelLoaderBlock extends MachineBlock { +public class FuelLoaderBlock extends MachineBlock { public static final BooleanProperty CONNECTED = BooleanProperty.create("connected"); - private static final MapCodec CODEC = simpleCodec(FuelLoaderBlock::new); public FuelLoaderBlock(Properties settings) { - super(settings); + super(settings, Constant.id(Constant.Block.FUEL_LOADER)); registerDefaultState(getStateDefinition().any().setValue(CONNECTED, false)); } - @Override - protected @NotNull MapCodec codec() { - return CODEC; - } - - @Override - public @NotNull MachineBlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new FuelLoaderBlockEntity(pos, state); - } - @Override public void createBlockStateDefinition(StateDefinition.Builder stateBuilder) { super.createBlockStateDefinition(stateBuilder); diff --git a/src/main/java/dev/galacticraft/mod/content/block/machine/OxygenCollectorBlock.java b/src/main/java/dev/galacticraft/mod/content/block/machine/OxygenCollectorBlock.java index 414077fa90..bee408e5c0 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/machine/OxygenCollectorBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/machine/OxygenCollectorBlock.java @@ -22,35 +22,19 @@ package dev.galacticraft.mod.content.block.machine; -import com.mojang.serialization.MapCodec; import dev.galacticraft.machinelib.api.block.MachineBlock; -import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; +import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.content.block.entity.machine.OxygenCollectorBlockEntity; import net.minecraft.core.BlockPos; import net.minecraft.core.particles.DustParticleOptions; import net.minecraft.util.RandomSource; import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.BaseEntityBlock; import net.minecraft.world.level.block.state.BlockState; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; import org.joml.Vector3f; -public class OxygenCollectorBlock extends MachineBlock { - private static final MapCodec CODEC = simpleCodec(OxygenCollectorBlock::new); - +public class OxygenCollectorBlock extends MachineBlock { public OxygenCollectorBlock(Properties settings) { - super(settings); - } - - @Override - protected @NotNull MapCodec codec() { - return CODEC; - } - - @Override - public @Nullable MachineBlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new OxygenCollectorBlockEntity(pos, state); + super(settings, Constant.id(Constant.Block.OXYGEN_COLLECTOR)); } @Override diff --git a/src/main/java/dev/galacticraft/mod/content/block/machine/RefineryBlock.java b/src/main/java/dev/galacticraft/mod/content/block/machine/RefineryBlock.java index 0cee53e5d4..2858229876 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/machine/RefineryBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/machine/RefineryBlock.java @@ -22,33 +22,18 @@ package dev.galacticraft.mod.content.block.machine; -import com.mojang.serialization.MapCodec; import dev.galacticraft.machinelib.api.block.MachineBlock; -import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; +import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.content.block.entity.machine.RefineryBlockEntity; import net.minecraft.core.BlockPos; import net.minecraft.core.particles.ParticleTypes; import net.minecraft.util.RandomSource; import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.BaseEntityBlock; import net.minecraft.world.level.block.state.BlockState; -import org.jetbrains.annotations.NotNull; - -public class RefineryBlock extends MachineBlock { - private static final MapCodec CODEC = simpleCodec(RefineryBlock::new); +public class RefineryBlock extends MachineBlock { public RefineryBlock(Properties settings) { - super(settings); - } - - @Override - protected @NotNull MapCodec codec() { - return CODEC; - } - - @Override - public @NotNull MachineBlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new RefineryBlockEntity(pos, state); + super(settings, Constant.id(Constant.Block.REFINERY)); } @Override diff --git a/src/main/java/dev/galacticraft/mod/content/block/machine/SimpleMultiBlockMachineBlock.java b/src/main/java/dev/galacticraft/mod/content/block/machine/SimpleMultiBlockMachineBlock.java index 002d8f043a..162350cca6 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/machine/SimpleMultiBlockMachineBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/machine/SimpleMultiBlockMachineBlock.java @@ -22,32 +22,31 @@ package dev.galacticraft.mod.content.block.machine; +import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; import dev.galacticraft.mod.api.block.MultiBlockMachineBlock; import dev.galacticraft.mod.api.block.MultiBlockPart; import net.minecraft.core.BlockPos; import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.InteractionResult; -import net.minecraft.world.entity.player.Player; import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.BaseEntityBlock; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.Unmodifiable; import java.util.List; -public class SimpleMultiBlockMachineBlock extends MultiBlockMachineBlock { +public class SimpleMultiBlockMachineBlock extends MultiBlockMachineBlock { private final List parts; private final BlockState partState; /** * Note: BlockEntity of the partBlock must implement {@link MultiBlockPart} */ - public static SimpleMultiBlockMachineBlock create(Properties properties, ResourceLocation type, List parts, Block partBlock) { - return new SimpleMultiBlockMachineBlock(properties, type, parts, partBlock); + public static SimpleMultiBlockMachineBlock create(Properties properties, ResourceLocation type, List parts, P partBlock) { + return new SimpleMultiBlockMachineBlock<>(properties, type, parts, partBlock); } - protected SimpleMultiBlockMachineBlock(Properties properties, ResourceLocation factory, List parts, Block partBlock) { + protected SimpleMultiBlockMachineBlock(Properties properties, ResourceLocation factory, List parts, P partBlock) { super(properties, factory); this.parts = parts; this.partState = partBlock.defaultBlockState(); @@ -66,11 +65,6 @@ public void onMultiBlockPlaced(Level level, BlockPos blockPos, BlockState blockS } } - @Override - public InteractionResult multiBlockUseWithoutItem(BlockState baseState, Level level, BlockPos basePos, Player player) { - return this.useWithoutItem(baseState, level, basePos, player, null); - } - @Override public @Unmodifiable List getOtherParts(BlockState blockState) { return this.parts; diff --git a/src/main/java/dev/galacticraft/mod/content/block/special/AirlockBlock.java b/src/main/java/dev/galacticraft/mod/content/block/special/AirlockBlock.java index e6e16049e8..c33699c196 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/special/AirlockBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/special/AirlockBlock.java @@ -28,6 +28,7 @@ import dev.galacticraft.mod.content.GCBlockEntityTypes; import dev.galacticraft.mod.content.block.entity.AirlockControllerBlockEntity; import net.minecraft.core.BlockPos; +import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.player.Player; import net.minecraft.world.level.Level; @@ -61,13 +62,13 @@ public BlockEntity newBlockEntity(BlockPos blockPos, BlockState blockState) { } @Override - protected InteractionResult useWithoutItem(BlockState state, Level level, BlockPos pos, Player player, BlockHitResult hit) { + public InteractionResult use(BlockState blockState, Level level, BlockPos blockPos, Player player, InteractionHand interactionHand, BlockHitResult blockHitResult) { if (!controller) return InteractionResult.PASS; if (level.isClientSide) { return InteractionResult.SUCCESS; } else { - player.openMenu(state.getMenuProvider(level, pos)); + player.openMenu(blockState.getMenuProvider(level, blockPos)); return InteractionResult.CONSUME; } } diff --git a/src/main/java/dev/galacticraft/mod/content/block/special/CandleMoonCheeseBlock.java b/src/main/java/dev/galacticraft/mod/content/block/special/CandleMoonCheeseBlock.java index 04d9c1abcb..a444948982 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/special/CandleMoonCheeseBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/special/CandleMoonCheeseBlock.java @@ -31,7 +31,6 @@ import net.minecraft.core.Direction; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; -import net.minecraft.world.ItemInteractionResult; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; @@ -93,26 +92,24 @@ public VoxelShape getShape(BlockState blockState, BlockGetter blockGetter, Block } @Override - protected ItemInteractionResult useItemOn(ItemStack stack, BlockState state, Level world, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hit) { - var itemStack = player.getItemInHand(hand); + public InteractionResult use(BlockState blockState, Level level, BlockPos blockPos, Player player, InteractionHand interactionHand, BlockHitResult blockHitResult) { + var itemStack = player.getItemInHand(interactionHand); if (itemStack.is(Items.FLINT_AND_STEEL) || itemStack.is(Items.FIRE_CHARGE)) { - return ItemInteractionResult.SKIP_DEFAULT_BLOCK_INTERACTION; - } else if (candleHit(hit) && stack.isEmpty() && state.getValue(LIT)) { - extinguish(player, state, world, pos); - return ItemInteractionResult.sidedSuccess(world.isClientSide); + return InteractionResult.PASS; } - return super.useItemOn(stack, state, world, pos, player, hand, hit); - } - - @Override - protected InteractionResult useWithoutItem(BlockState state, Level level, BlockPos pos, Player player, BlockHitResult hit) { - var interactionResult = MoonCheeseBlock.eat(level, pos, GCBlocks.MOON_CHEESE_WHEEL.defaultBlockState(), player); + else if (candleHit(blockHitResult) && player.getItemInHand(interactionHand).isEmpty() && blockState.getValue(LIT)) { + extinguish(player, blockState, level, blockPos); + return InteractionResult.sidedSuccess(level.isClientSide); + } + else { + var interactionResult = MoonCheeseBlock.eat(level, blockPos, GCBlocks.MOON_CHEESE_WHEEL.defaultBlockState(), player); - if (interactionResult.consumesAction()) { - dropResources(state, level, pos); + if (interactionResult.consumesAction()) { + dropResources(blockState, level, blockPos); + } + return interactionResult; } - return interactionResult; } private static boolean candleHit(BlockHitResult blockHitResult) { @@ -150,7 +147,7 @@ public boolean hasAnalogOutputSignal(BlockState blockState) { } @Override - protected boolean isPathfindable(BlockState state, PathComputationType type) { + public boolean isPathfindable(BlockState blockState, BlockGetter blockGetter, BlockPos blockPos, PathComputationType pathComputationType) { return false; } diff --git a/src/main/java/dev/galacticraft/mod/content/block/special/CryogenicChamberBlock.java b/src/main/java/dev/galacticraft/mod/content/block/special/CryogenicChamberBlock.java index 60c5b5763a..ee1d52c634 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/special/CryogenicChamberBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/special/CryogenicChamberBlock.java @@ -32,6 +32,7 @@ import net.minecraft.core.Direction; import net.minecraft.network.chat.Component; import net.minecraft.util.RandomSource; +import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.player.Player; @@ -163,12 +164,12 @@ public BlockEntity newBlockEntity(BlockPos blockPos, BlockState blockState) { } @Override - protected InteractionResult useWithoutItem(BlockState state, Level level, BlockPos pos, Player player, BlockHitResult hit) { - return this.multiBlockUseWithoutItem(state, level, pos, player); + public InteractionResult use(BlockState blockState, Level level, BlockPos blockPos, Player player, InteractionHand interactionHand, BlockHitResult blockHitResult) { + return this.onMultiBlockUse(blockState, level, blockPos, player, interactionHand, blockHitResult); } @Override - public InteractionResult multiBlockUseWithoutItem(BlockState baseState, Level level, BlockPos basePos, Player player) { + public InteractionResult onMultiBlockUse(BlockState blockState, Level level, BlockPos basePos, Player player, InteractionHand interactionHand, BlockHitResult blockHitResult) { if (level.isClientSide()) return InteractionResult.CONSUME; if(player.getCryogenicChamberCooldown() == 0) { diff --git a/src/main/java/dev/galacticraft/mod/content/block/special/CryogenicChamberPart.java b/src/main/java/dev/galacticraft/mod/content/block/special/CryogenicChamberPart.java index 8469ca83f4..982286c15b 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/special/CryogenicChamberPart.java +++ b/src/main/java/dev/galacticraft/mod/content/block/special/CryogenicChamberPart.java @@ -27,6 +27,7 @@ import dev.galacticraft.mod.content.GCBlocks; import dev.galacticraft.mod.content.block.entity.CryogenicChamberPartBlockEntity; import net.minecraft.core.BlockPos; +import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; @@ -103,8 +104,8 @@ public BlockState playerWillDestroy(Level level, BlockPos blockPos, BlockState b } @Override - protected InteractionResult useWithoutItem(BlockState state, Level level, BlockPos pos, Player player, BlockHitResult hit) { - var partBE = level.getBlockEntity(pos); + public InteractionResult use(BlockState blockState, Level level, BlockPos blockPos, Player player, InteractionHand interactionHand, BlockHitResult blockHitResult) { + var partBE = level.getBlockEntity(blockPos); var be = (CryogenicChamberPartBlockEntity) partBE; if (be == null || be.basePos == BlockPos.ZERO) return InteractionResult.CONSUME; @@ -116,7 +117,7 @@ protected InteractionResult useWithoutItem(BlockState state, Level level, BlockP if (baseState.isAir()) return InteractionResult.PASS; var block = (MultiBlockBase) baseState.getBlock(); - return block.multiBlockUseWithoutItem(baseState, level, basePos, player); + return block.onMultiBlockUse(blockState, level, basePos, player, interactionHand, blockHitResult); } @Override diff --git a/src/main/java/dev/galacticraft/mod/content/block/special/MoonCheeseBlock.java b/src/main/java/dev/galacticraft/mod/content/block/special/MoonCheeseBlock.java index ea025d2c5d..e3f8959fd1 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/special/MoonCheeseBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/special/MoonCheeseBlock.java @@ -29,10 +29,7 @@ import net.minecraft.tags.ItemTags; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; -import net.minecraft.world.ItemInteractionResult; import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.Item; -import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; import net.minecraft.world.level.LevelAccessor; import net.minecraft.world.level.block.Block; @@ -49,33 +46,34 @@ public MoonCheeseBlock(BlockBehaviour.Properties properties) { } @Override - protected InteractionResult useWithoutItem(BlockState state, Level world, BlockPos pos, Player player, BlockHitResult hit) { - if (world.isClientSide) { - if (eat(world, pos, state, player).consumesAction()) { + public InteractionResult use(BlockState blockState, Level level, BlockPos blockPos, Player player, InteractionHand interactionHand, BlockHitResult blockHitResult) { + var itemStack = player.getItemInHand(interactionHand); + var item = itemStack.getItem(); + + if (itemStack.is(ItemTags.CANDLES) && blockState.getValue(BITES) == 0) { + var block = Block.byItem(item); + + if (block instanceof CandleBlock) { + if (!player.isCreative()) { + itemStack.shrink(1); + } + level.playSound(null, blockPos, SoundEvents.CAKE_ADD_CANDLE, SoundSource.BLOCKS, 1.0F, 1.0F); + level.setBlockAndUpdate(blockPos, CandleMoonCheeseBlock.byCandle(block)); + level.gameEvent(player, GameEvent.BLOCK_CHANGE, blockPos); + player.awardStat(Stats.ITEM_USED.get(item)); return InteractionResult.SUCCESS; } + } - if (player.getItemInHand(InteractionHand.MAIN_HAND).isEmpty()) { + if (level.isClientSide) { + if (eat(level, blockPos, blockState, player).consumesAction()) { + return InteractionResult.SUCCESS; + } + if (itemStack.isEmpty()) { return InteractionResult.CONSUME; } } - - return eat(world, pos, state, player); - } - - @Override - protected ItemInteractionResult useItemOn(ItemStack stack, BlockState state, Level level, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hit) { - Item item = stack.getItem(); - if (stack.is(ItemTags.CANDLES) && state.getValue(BITES) == 0 && Block.byItem(item) instanceof CandleBlock candleBlock) { - stack.consume(1, player); - level.playSound(null, pos, SoundEvents.CAKE_ADD_CANDLE, SoundSource.BLOCKS, 1.0F, 1.0F); - level.setBlockAndUpdate(pos, CandleMoonCheeseBlock.byCandle(candleBlock)); - level.gameEvent(player, GameEvent.BLOCK_CHANGE, pos); - player.awardStat(Stats.ITEM_USED.get(item)); - return ItemInteractionResult.SUCCESS; - } else { - return ItemInteractionResult.PASS_TO_DEFAULT_BLOCK_INTERACTION; - } + return eat(level, blockPos, blockState, player); } public static InteractionResult eat(LevelAccessor levelAccessor, BlockPos blockPos, BlockState blockState, Player player) { diff --git a/src/main/java/dev/galacticraft/mod/content/block/special/ParaChestBlock.java b/src/main/java/dev/galacticraft/mod/content/block/special/ParaChestBlock.java index f3e5fd4bfe..766a3a2ada 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/special/ParaChestBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/special/ParaChestBlock.java @@ -27,16 +27,13 @@ import dev.galacticraft.mod.content.block.GCBlock; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.core.component.DataComponents; -import net.minecraft.world.Container; -import net.minecraft.world.Containers; -import net.minecraft.world.InteractionResult; -import net.minecraft.world.MenuProvider; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.world.*; import net.minecraft.world.entity.item.ItemEntity; import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.BlockItem; import net.minecraft.world.item.DyeColor; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.component.BlockItemStateProperties; import net.minecraft.world.item.context.BlockPlaceContext; import net.minecraft.world.level.BlockGetter; import net.minecraft.world.level.Level; @@ -86,8 +83,10 @@ public BlockState getStateForPlacement(BlockPlaceContext blockPlaceContext) { @Override public BlockState playerWillDestroy(Level level, BlockPos blockPos, BlockState blockState, Player player) { if (!level.isClientSide) { + CompoundTag stateTag = new CompoundTag(); + stateTag.putString(COLOR_TAG, blockState.getValue(COLOR).getName()); ItemStack parachest = new ItemStack(this); - parachest.set(DataComponents.BLOCK_STATE, BlockItemStateProperties.EMPTY.with(COLOR, blockState.getValue(COLOR))); + parachest.addTagElement(BlockItem.BLOCK_STATE_TAG, stateTag); ItemEntity itemEntity = new ItemEntity(level, blockPos.getX(), blockPos.getY(), blockPos.getZ(), parachest); itemEntity.setDefaultPickUpDelay(); level.addFreshEntity(itemEntity); @@ -109,11 +108,11 @@ public void onRemove(BlockState blockState, Level level, BlockPos blockPos, Bloc } @Override - protected InteractionResult useWithoutItem(BlockState state, Level level, BlockPos pos, Player player, BlockHitResult hit) { + public InteractionResult use(BlockState blockState, Level level, BlockPos blockPos, Player player, InteractionHand interactionHand, BlockHitResult blockHitResult) { if (level.isClientSide) { return InteractionResult.SUCCESS; } else { - MenuProvider menuProvider = this.getMenuProvider(state, level, pos); + MenuProvider menuProvider = this.getMenuProvider(blockState, level, blockPos); if (menuProvider != null) { player.openMenu(menuProvider); player.awardStat(GCStats.OPEN_PARACHEST); diff --git a/src/main/java/dev/galacticraft/mod/content/block/special/ParaChestBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/special/ParaChestBlockEntity.java index 8099f47c31..311e727b99 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/special/ParaChestBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/special/ParaChestBlockEntity.java @@ -37,21 +37,22 @@ import net.fabricmc.fabric.api.transfer.v1.transaction.Transaction; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.core.HolderLookup; import net.minecraft.core.NonNullList; import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.ContainerHelper; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.Level; import net.minecraft.world.level.block.entity.RandomizableContainerBlockEntity; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.Nullable; @SuppressWarnings("UnstableApiUsage") -public class ParaChestBlockEntity extends RandomizableContainerBlockEntity implements SidedStorageBlockEntity, ExtendedScreenHandlerFactory, ScalableFuelLevel { +public class ParaChestBlockEntity extends RandomizableContainerBlockEntity implements SidedStorageBlockEntity, ExtendedScreenHandlerFactory, ScalableFuelLevel { public final SingleFluidStorage tank = SingleFluidStorage.withFixedCapacity(FluidConstants.BUCKET * 5, () -> { }); @@ -62,17 +63,15 @@ public ParaChestBlockEntity(BlockPos blockPos, BlockState blockState) { } @Override - protected void loadAdditional(CompoundTag nbt, HolderLookup.Provider registryLookup) { - super.loadAdditional(nbt, registryLookup); + public void load(CompoundTag compoundTag) { this.inventory = NonNullList.withSize(this.getContainerSize(), ItemStack.EMPTY); - this.tank.readNbt(nbt, registryLookup); + this.tank.readNbt(compoundTag); } @Override - protected void saveAdditional(CompoundTag nbt, HolderLookup.Provider registryLookup) { - super.saveAdditional(nbt, registryLookup); - ContainerHelper.saveAllItems(nbt, this.inventory, registryLookup); - this.tank.writeNbt(nbt, registryLookup); + protected void saveAdditional(CompoundTag compoundTag) { + ContainerHelper.saveAllItems(compoundTag, this.inventory); + this.tank.writeNbt(compoundTag); } @Override @@ -105,6 +104,12 @@ public int getContainerSize() { return this.inventory.size(); } + @Override + public void writeScreenOpeningData(ServerPlayer player, FriendlyByteBuf buf) { + buf.writeBoolean(true); + buf.writeBlockPos(getBlockPos()); + } + @Override public int getScaledFuelLevel(int scale) { final double fuelLevel = this.tank.getResource().isBlank() ? 0 : this.tank.getAmount(); @@ -122,9 +127,4 @@ public void tick() { } } } - - @Override - public ParachestMenu.OpeningData getScreenOpeningData(ServerPlayer player) { - return new ParachestMenu.OpeningData(this.getBlockPos()); - } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/content/block/special/RocketWorkbench.java b/src/main/java/dev/galacticraft/mod/content/block/special/RocketWorkbench.java index 54b8cbcf45..f55c0efeed 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/special/RocketWorkbench.java +++ b/src/main/java/dev/galacticraft/mod/content/block/special/RocketWorkbench.java @@ -25,6 +25,7 @@ import com.mojang.serialization.MapCodec; import dev.galacticraft.mod.content.block.entity.RocketWorkbenchBlockEntity; import net.minecraft.core.BlockPos; +import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.player.Player; import net.minecraft.world.level.Level; @@ -52,7 +53,7 @@ public RenderShape getRenderShape(BlockState blockState) { } @Override - protected InteractionResult useWithoutItem(BlockState state, Level level, BlockPos pos, Player player, BlockHitResult hit) { + public InteractionResult use(BlockState blockState, Level level, BlockPos pos, Player player, InteractionHand interactionHand, BlockHitResult blockHitResult) { if (!level.isClientSide) { BlockEntity entity = level.getBlockEntity(pos); if (entity instanceof RocketWorkbenchBlockEntity workbench) { diff --git a/src/main/java/dev/galacticraft/mod/content/block/special/SolarPanelPartBlock.java b/src/main/java/dev/galacticraft/mod/content/block/special/SolarPanelPartBlock.java index fa3cb2e934..94d1c4d9e0 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/special/SolarPanelPartBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/special/SolarPanelPartBlock.java @@ -27,6 +27,7 @@ import dev.galacticraft.mod.content.GCBlocks; import dev.galacticraft.mod.content.block.entity.SolarPanelPartBlockEntity; import net.minecraft.core.BlockPos; +import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; @@ -120,13 +121,14 @@ public boolean isPossibleToRespawnInThis(BlockState blockState) { } @Override - protected @NotNull InteractionResult useWithoutItem(BlockState state, Level level, BlockPos pos, Player player, BlockHitResult hit) { - if (level.isClientSide) return InteractionResult.SUCCESS; - if (level.getBlockEntity(pos) instanceof SolarPanelPartBlockEntity part) { - BlockPos basePos = part.basePos; - BlockState base = level.getBlockState(basePos); - return ((MultiBlockBase) base.getBlock()).multiBlockUseWithoutItem(base, level, basePos, player); + public InteractionResult use(BlockState state, @NotNull Level world, BlockPos pos, Player player, InteractionHand hand, BlockHitResult blockHitResult) { + BlockEntity partEntity = world.getBlockEntity(pos); + if (world.isClientSide || world.isEmptyBlock(pos) || !(partEntity instanceof SolarPanelPartBlockEntity)) { + return InteractionResult.SUCCESS; } - return InteractionResult.PASS; + + BlockPos basePos = ((SolarPanelPartBlockEntity) partEntity).basePos; + BlockState base = world.getBlockState(basePos); + return base.getBlock().use(base, world, basePos, player, hand, blockHitResult); } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/content/block/special/TinLadderBlock.java b/src/main/java/dev/galacticraft/mod/content/block/special/TinLadderBlock.java index 541a618730..3055a06934 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/special/TinLadderBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/special/TinLadderBlock.java @@ -25,7 +25,7 @@ import net.minecraft.core.BlockPos; import net.minecraft.sounds.SoundSource; import net.minecraft.world.InteractionHand; -import net.minecraft.world.ItemInteractionResult; +import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; @@ -43,7 +43,7 @@ public TinLadderBlock(BlockBehaviour.Properties properties) { } @Nullable - private ItemInteractionResult checkCanTinLadderBePlaced(Level level, BlockPos checkPos, Player player, ItemStack itemStack, BlockState blockState) { + private InteractionResult checkCanTinLadderBePlaced(Level level, BlockPos checkPos, Player player, ItemStack itemStack, BlockState blockState) { if (level.getBlockState(checkPos).canBeReplaced()) { var newState = this.defaultBlockState().setValue(FACING, blockState.getValue(FACING)); level.setBlockAndUpdate(checkPos, newState); @@ -53,33 +53,38 @@ private ItemInteractionResult checkCanTinLadderBePlaced(Level level, BlockPos ch if (!player.getAbilities().instabuild) { itemStack.shrink(1); } - return ItemInteractionResult.SUCCESS; - } else if (!level.getBlockState(checkPos).is(this)) { - return ItemInteractionResult.SKIP_DEFAULT_BLOCK_INTERACTION; + return InteractionResult.sidedSuccess(level.isClientSide()); + } + else if (!level.getBlockState(checkPos).is(this)) { + return InteractionResult.PASS; } return null; } @Override - protected ItemInteractionResult useItemOn(ItemStack stack, BlockState state, Level level, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hit) { - if (stack.is(this.asItem())) { + public InteractionResult use(BlockState blockState, Level level, BlockPos blockPos, Player player, InteractionHand interactionHand, BlockHitResult blockHitResult) { + var itemStack = player.getItemInHand(interactionHand); + if (itemStack.is(this.asItem())) { if (player.getXRot() < 0f) { - for (BlockPos checkPos = new BlockPos.MutableBlockPos(pos.getX(), pos.getY(), pos.getZ()); checkPos.getY() < level.getMaxBuildHeight(); checkPos = checkPos.offset(0, 1, 0)) { - var result = this.checkCanTinLadderBePlaced(level, checkPos, player, stack, state); + for (BlockPos checkPos = new BlockPos.MutableBlockPos(blockPos.getX(), blockPos.getY(), blockPos.getZ()); checkPos.getY() < level.getMaxBuildHeight(); checkPos = checkPos.offset(0, 1, 0)) + { + var result = this.checkCanTinLadderBePlaced(level, checkPos, player, itemStack, blockState); if (result != null) { return result; } } - } else { - for (BlockPos checkPos = new BlockPos.MutableBlockPos(pos.getX(), pos.getY(), pos.getZ()); checkPos.getY() > level.getMinBuildHeight(); checkPos = checkPos.offset(0, -1, 0)) { - var result = this.checkCanTinLadderBePlaced(level, checkPos, player, stack, state); + } + else { + for (BlockPos checkPos = new BlockPos.MutableBlockPos(blockPos.getX(), blockPos.getY(), blockPos.getZ()); checkPos.getY() > level.getMinBuildHeight(); checkPos = checkPos.offset(0, -1, 0)) + { + var result = this.checkCanTinLadderBePlaced(level, checkPos, player, itemStack, blockState); if (result != null) { return result; } } } } - return super.useItemOn(stack, state, level, pos, player, hand, hit); + return super.use(blockState, level, blockPos, player, interactionHand, blockHitResult); } @Override diff --git a/src/main/java/dev/galacticraft/mod/content/block/special/aluminumwire/tier1/AluminumWireBlock.java b/src/main/java/dev/galacticraft/mod/content/block/special/aluminumwire/tier1/AluminumWireBlock.java index 8dbf04fb66..792aab1829 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/special/aluminumwire/tier1/AluminumWireBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/special/aluminumwire/tier1/AluminumWireBlock.java @@ -97,8 +97,8 @@ public void onPlace(BlockState blockState, Level level, BlockPos blockPos, Block } if (changed) { wire.setChanged(); - level.sendBlockUpdated(blockPos, blockState, blockState, Block.UPDATE_IMMEDIATE); } + level.sendBlockUpdated(blockPos, blockState, blockState, Block.UPDATE_IMMEDIATE); } } @@ -112,9 +112,9 @@ public void neighborChanged(BlockState blockState, Level level, BlockPos blockPo if (direction != null) { if (!level.isClientSide && wire.getConnections()[direction.ordinal()] != (wire.getConnections()[direction.ordinal()] = wire.canConnect(direction) && EnergyStorage.SIDED.find(level, neighborPos, direction.getOpposite()) != null)) { level.sendBlockUpdated(blockPos, blockState, blockState, Block.UPDATE_IMMEDIATE); - wire.setChanged(); } } + wire.setChanged(); } } diff --git a/src/main/java/dev/galacticraft/mod/content/block/special/fluidpipe/GlassFluidPipeBlock.java b/src/main/java/dev/galacticraft/mod/content/block/special/fluidpipe/GlassFluidPipeBlock.java index 89dbecc307..0d7b42822f 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/special/fluidpipe/GlassFluidPipeBlock.java +++ b/src/main/java/dev/galacticraft/mod/content/block/special/fluidpipe/GlassFluidPipeBlock.java @@ -25,14 +25,16 @@ import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.api.block.FluidPipe; import dev.galacticraft.mod.api.block.entity.Connected; +import dev.galacticraft.mod.api.pipe.Pipe; import dev.galacticraft.mod.content.block.entity.networked.GlassFluidPipeBlockEntity; import dev.galacticraft.mod.content.item.StandardWrenchItem; import dev.galacticraft.mod.util.ConnectingBlockUtil; -import dev.galacticraft.mod.util.DirectionUtil; import dev.galacticraft.mod.util.FluidUtil; import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.InteractionHand; -import net.minecraft.world.ItemInteractionResult; +import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.DyeItem; @@ -70,72 +72,67 @@ public void setPlacedBy(Level level, BlockPos blockPos, BlockState blockState, @ if (stack.getItem() instanceof DyeItem dye && dye.getDyeColor() != glassPipe.getColor()) { glassPipe.setColor(dye.getDyeColor()); var copy = stack.copy(); - copy.consume(1, livingEntity); + + if (livingEntity instanceof Player player && !player.getAbilities().instabuild) { + copy.shrink(1); + } livingEntity.setItemInHand(interactionHand, copy); } } - - // Regular Stuff - var changed = false; for (var direction : Constant.Misc.DIRECTIONS) { - changed |= glassPipe.getConnections()[direction.ordinal()] = glassPipe.canConnect(direction) && FluidUtil.canAccessFluid(level, blockPos.relative(direction), direction); - } - if (changed) { - glassPipe.setChanged(); - level.sendBlockUpdated(blockPos, blockState, blockState, Block.UPDATE_IMMEDIATE); + var otherBlockEntity = level.getBlockEntity(blockPos.relative(direction)); + glassPipe.getConnections()[direction.ordinal()] = (otherBlockEntity instanceof Pipe pipe && pipe.canConnect(direction.getOpposite())) || FluidUtil.canAccessFluid(level, blockPos.relative(direction), direction); } + level.updateNeighborsAt(blockPos, blockState.getBlock()); } } @Override - protected ItemInteractionResult useItemOn(ItemStack stack, BlockState state, Level level, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hit) { - if (level.getBlockEntity(pos) instanceof GlassFluidPipeBlockEntity glassPipe) { - if (stack.getItem() instanceof DyeItem dye) { - var stack2 = stack.copy(); + public InteractionResult use(BlockState blockState, Level level, BlockPos blockPos, Player player, InteractionHand interactionHand, BlockHitResult blockHitResult) { + var itemStack = player.getItemInHand(interactionHand); + if (level.getBlockEntity(blockPos) instanceof GlassFluidPipeBlockEntity glassPipe) { + if (itemStack.getItem() instanceof DyeItem dye) { + var stack = itemStack.copy(); var color = dye.getDyeColor(); if (color != glassPipe.getColor()) { if (!player.getAbilities().instabuild) { - stack2.shrink(1); + stack.shrink(1); } - player.setItemInHand(hand, stack2); + player.setItemInHand(interactionHand, stack); glassPipe.setColor(color); - level.sendBlockUpdated(pos, state, state, Block.UPDATE_IMMEDIATE); - return ItemInteractionResult.SUCCESS; - } else { - return ItemInteractionResult.SKIP_DEFAULT_BLOCK_INTERACTION; + level.sendBlockUpdated(blockPos, blockState, blockState, Block.UPDATE_IMMEDIATE); + return InteractionResult.sidedSuccess(level.isClientSide()); + } + else { + return InteractionResult.PASS; } - } else if (stack.getItem() instanceof StandardWrenchItem) { - var stack2 = stack.copy(); + } else if (itemStack.getItem() instanceof StandardWrenchItem) { + var stack = itemStack.copy(); - stack2.hurtAndBreak(1, player, LivingEntity.getSlotForHand(hand)); + if (!player.getAbilities().instabuild) { + stack.hurt(1, level.random, player instanceof ServerPlayer ? ((ServerPlayer) player) : null); + } - player.setItemInHand(hand, stack2); + player.setItemInHand(interactionHand, stack); glassPipe.setPull(!glassPipe.isPull()); - return ItemInteractionResult.SUCCESS; + return InteractionResult.sidedSuccess(level.isClientSide()); } } - - return super.useItemOn(stack, state, level, pos, player, hand, hit); + return super.use(blockState, level, blockPos, player, interactionHand, blockHitResult); } @Override public void neighborChanged(BlockState blockState, Level level, BlockPos blockPos, Block block, BlockPos fromPos, boolean notify) { super.neighborChanged(blockState, level, blockPos, block, fromPos, notify); - - if (level.getBlockEntity(blockPos) instanceof PipeBlockEntity glassPipe) { - var direction = DirectionUtil.fromNormal(fromPos.getX() - blockPos.getX(), fromPos.getY() - blockPos.getY(), fromPos.getZ() - blockPos.getZ()); - - if (direction != null) { - if (!level.isClientSide - && glassPipe.getConnections()[direction.ordinal()] - != (glassPipe.getConnections()[direction.ordinal()] - = glassPipe.canConnect(direction) && FluidUtil.canAccessFluid(level, fromPos, direction)) - ) { - level.sendBlockUpdated(blockPos, blockState, blockState, Block.UPDATE_IMMEDIATE); - glassPipe.setChanged(); - } - } + var neighborState = level.getBlockState(fromPos); + var delta = fromPos.subtract(blockPos); + var direction = Direction.fromDelta(delta.getX(), delta.getY(), delta.getZ()); + + if (direction != null && level.getBlockEntity(blockPos) instanceof GlassFluidPipeBlockEntity glassPipe) { + var otherBlockEntity = level.getBlockEntity(fromPos); + glassPipe.getConnections()[direction.ordinal()] = !neighborState.isAir() && ((otherBlockEntity instanceof Pipe pipe && pipe.canConnect(direction.getOpposite())) || FluidUtil.canAccessFluid(level, fromPos, direction)); + level.sendBlockUpdated(blockPos, blockState, blockState, Block.UPDATE_IMMEDIATE); } } diff --git a/src/main/java/dev/galacticraft/mod/content/block/special/fluidpipe/PipeBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/special/fluidpipe/PipeBlockEntity.java index d922a0c1de..d44c9d3983 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/special/fluidpipe/PipeBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/special/fluidpipe/PipeBlockEntity.java @@ -25,7 +25,6 @@ import dev.galacticraft.mod.api.pipe.Pipe; import dev.galacticraft.mod.api.pipe.PipeNetwork; import dev.galacticraft.mod.api.pipe.impl.PipeNetworkImpl; -import dev.galacticraft.mod.util.FluidUtil; import net.fabricmc.fabric.api.transfer.v1.fluid.FluidVariant; import net.fabricmc.fabric.api.transfer.v1.storage.Storage; import net.fabricmc.fabric.api.transfer.v1.storage.StoragePreconditions; @@ -33,16 +32,15 @@ import net.fabricmc.fabric.api.transfer.v1.transaction.TransactionContext; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.protocol.game.ClientboundBlockEntityDataPacket; import net.minecraft.server.level.ServerLevel; import net.minecraft.world.item.DyeColor; -import net.minecraft.world.level.block.Block; 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 org.jetbrains.annotations.Nullable; +import team.reborn.energy.api.EnergyStorage; import java.util.Collections; import java.util.Iterator; @@ -105,7 +103,7 @@ public boolean[] getConnections() { @Override public void updateConnection(BlockState state, BlockPos pos, BlockPos neighborPos, Direction direction) { - boolean connected = this.canConnect(direction) && FluidUtil.canAccessFluid(this.level, neighborPos, direction); + boolean connected = this.canConnect(direction) && EnergyStorage.SIDED.find(this.level, neighborPos, direction.getOpposite()) != null; if (this.connections[direction.get3DDataValue()] != connected) { this.connections[direction.get3DDataValue()] = connected; this.level.sendBlockUpdated(pos, state, state, 0); @@ -140,7 +138,7 @@ public boolean supportsExtraction() { @Override public boolean supportsInsertion() { - return this.maxTransferRate > 0; + return true; } @Override @@ -159,19 +157,15 @@ public void setColor(DyeColor color) { } @Override - protected void loadAdditional(CompoundTag nbt, HolderLookup.Provider registryLookup) { - super.loadAdditional(nbt, registryLookup); + public void load(CompoundTag nbt) { + super.load(nbt); this.readColorNbt(nbt); this.readConnectionNbt(nbt); - - if (this.level != null && this.level.isClientSide) { - this.level.sendBlockUpdated(this.getBlockPos(), this.getBlockState(), this.getBlockState(), Block.UPDATE_IMMEDIATE); - } } @Override - protected void saveAdditional(CompoundTag nbt, HolderLookup.Provider registryLookup) { - super.saveAdditional(nbt, registryLookup); + public void saveAdditional(CompoundTag nbt) { + super.saveAdditional(nbt); this.writeColorNbt(nbt); this.writeConnectionNbt(nbt); } @@ -182,7 +176,7 @@ public ClientboundBlockEntityDataPacket getUpdatePacket() { } @Override - public CompoundTag getUpdateTag(HolderLookup.Provider registryLookup) { - return this.saveWithoutMetadata(registryLookup); + public CompoundTag getUpdateTag() { + return this.saveWithoutMetadata(); } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/content/block/special/launchpad/AbstractLaunchPad.java b/src/main/java/dev/galacticraft/mod/content/block/special/launchpad/AbstractLaunchPad.java index 144592f99a..ff1c22231d 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/special/launchpad/AbstractLaunchPad.java +++ b/src/main/java/dev/galacticraft/mod/content/block/special/launchpad/AbstractLaunchPad.java @@ -22,8 +22,9 @@ package dev.galacticraft.mod.content.block.special.launchpad; -import com.mojang.datafixers.util.Pair; import com.mojang.serialization.MapCodec; +import org.jetbrains.annotations.Nullable; +import com.mojang.datafixers.util.Pair; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.util.StringRepresentable; @@ -34,13 +35,13 @@ import net.minecraft.world.level.block.BaseEntityBlock; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.RenderShape; +import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.StateDefinition; import net.minecraft.world.level.block.state.properties.EnumProperty; import net.minecraft.world.phys.shapes.CollisionContext; import net.minecraft.world.phys.shapes.Shapes; import net.minecraft.world.phys.shapes.VoxelShape; -import org.jetbrains.annotations.Nullable; public abstract class AbstractLaunchPad extends BaseEntityBlock { diff --git a/src/main/java/dev/galacticraft/mod/content/block/special/launchpad/LaunchPadBlockEntity.java b/src/main/java/dev/galacticraft/mod/content/block/special/launchpad/LaunchPadBlockEntity.java index f16eca35d1..ff7eef7c7b 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/special/launchpad/LaunchPadBlockEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/block/special/launchpad/LaunchPadBlockEntity.java @@ -28,7 +28,6 @@ import dev.galacticraft.mod.api.entity.Dockable; import dev.galacticraft.mod.content.GCBlockEntityTypes; import net.minecraft.core.BlockPos; -import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.util.ByIdMap; @@ -89,14 +88,14 @@ public boolean hasDockedEntity() { } @Override - protected void loadAdditional(CompoundTag nbt, HolderLookup.Provider registryLookup) { - super.loadAdditional(nbt, registryLookup); + public void load(CompoundTag tag) { + super.load(tag); this.entityUUID = null; this.docked = null; - this.type = Type.byName(nbt.getString(TYPE)); + this.type = Type.byName(tag.getString(TYPE)); - if (nbt.contains(Constant.Nbt.ROCKET_UUID)) { - this.entityUUID = nbt.getUUID(Constant.Nbt.ROCKET_UUID); + if (tag.contains(Constant.Nbt.ROCKET_UUID)) { + this.entityUUID = tag.getUUID(Constant.Nbt.ROCKET_UUID); if (this.level instanceof ServerLevel) { this.docked = (Rocket) ((ServerLevel) this.level).getEntity(this.entityUUID); } @@ -104,18 +103,18 @@ protected void loadAdditional(CompoundTag nbt, HolderLookup.Provider registryLoo } @Override - protected void saveAdditional(CompoundTag nbt, HolderLookup.Provider registryLookup) { - if (this.entityUUID != null) nbt.putUUID(ENTITY_UUID, entityUUID); - nbt.putString(TYPE, type.getSerializedName()); - super.saveAdditional(nbt, registryLookup); + public void saveAdditional(CompoundTag tag) { + if (this.entityUUID != null) tag.putUUID(ENTITY_UUID, entityUUID); + tag.putString(TYPE, type.getSerializedName()); + super.saveAdditional(tag); } @Override - public CompoundTag getUpdateTag(HolderLookup.Provider registryLookup) { - CompoundTag nbt = super.getUpdateTag(registryLookup); - if (this.entityUUID != null) nbt.putUUID(ENTITY_UUID, this.entityUUID); - nbt.putString(TYPE, type.getSerializedName()); - return nbt; + public CompoundTag getUpdateTag() { + CompoundTag tag = super.getUpdateTag(); + if (this.entityUUID != null) tag.putUUID(ENTITY_UUID, this.entityUUID); + tag.putString(TYPE, type.getSerializedName()); + return tag; } public UUID getDockedUUID() { diff --git a/src/main/java/dev/galacticraft/mod/content/block/special/walkway/FluidPipeWalkway.java b/src/main/java/dev/galacticraft/mod/content/block/special/walkway/FluidPipeWalkway.java index c0ca43e9e4..52eb90db3c 100644 --- a/src/main/java/dev/galacticraft/mod/content/block/special/walkway/FluidPipeWalkway.java +++ b/src/main/java/dev/galacticraft/mod/content/block/special/walkway/FluidPipeWalkway.java @@ -38,7 +38,7 @@ import net.minecraft.core.Direction; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.world.InteractionHand; -import net.minecraft.world.ItemInteractionResult; +import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.DyeItem; @@ -102,26 +102,29 @@ public BlockState getStateForPlacement(BlockPlaceContext context) { } @Override - protected ItemInteractionResult useItemOn(ItemStack stack, BlockState state, Level level, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hit) { - if (level.getBlockEntity(pos) instanceof FluidPipeWalkwayBlockEntity walkway) { - if (stack.getItem() instanceof DyeItem dye) { - var stack2 = stack.copy(); + public InteractionResult use(BlockState blockState, Level level, BlockPos blockPos, Player player, InteractionHand interactionHand, BlockHitResult blockHitResult) { + var itemStack = player.getItemInHand(interactionHand); + if (level.getBlockEntity(blockPos) instanceof FluidPipeWalkwayBlockEntity walkway) { + if (itemStack.getItem() instanceof DyeItem dye) { + var stack = itemStack.copy(); var color = dye.getDyeColor(); if (color != walkway.getColor()) { - stack2.consume(1, player); - player.setItemInHand(hand, stack2); + if (!player.getAbilities().instabuild) { + stack.shrink(1); + } + player.setItemInHand(interactionHand, stack); walkway.setColor(color); - level.sendBlockUpdated(pos, state, state, Block.UPDATE_IMMEDIATE); - return ItemInteractionResult.SUCCESS; - } else { - return ItemInteractionResult.SKIP_DEFAULT_BLOCK_INTERACTION; + level.sendBlockUpdated(blockPos, blockState, blockState, Block.UPDATE_IMMEDIATE); + return InteractionResult.sidedSuccess(level.isClientSide()); + } + else { + return InteractionResult.PASS; } } } - return super.useItemOn(stack, state, level, pos, player, hand, hit); + return super.use(blockState, level, blockPos, player, interactionHand, blockHitResult); } - @Override public void setPlacedBy(Level level, BlockPos blockPos, BlockState blockState, @Nullable LivingEntity livingEntity, ItemStack itemStack) { super.setPlacedBy(level, blockPos, blockState, livingEntity, itemStack); diff --git a/src/main/java/dev/galacticraft/mod/content/entity/BubbleEntity.java b/src/main/java/dev/galacticraft/mod/content/entity/BubbleEntity.java index ceca63b70a..80859c7cfd 100644 --- a/src/main/java/dev/galacticraft/mod/content/entity/BubbleEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/entity/BubbleEntity.java @@ -24,19 +24,26 @@ import dev.galacticraft.mod.content.block.entity.machine.OxygenBubbleDistributorBlockEntity; import net.minecraft.nbt.CompoundTag; -import net.minecraft.network.syncher.SynchedEntityData; +import net.minecraft.network.protocol.Packet; +import net.minecraft.network.protocol.game.ClientGamePacketListener; +import net.minecraft.network.protocol.game.ClientboundAddEntityPacket; import net.minecraft.world.damagesource.DamageSource; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.state.BlockState; +import org.jetbrains.annotations.NotNull; public class BubbleEntity extends Entity { public BubbleEntity(EntityType type, Level world) { super(type, world); } + @Override + protected void defineSynchedData() { + } + @Override protected void readAdditionalSaveData(CompoundTag tag) { } @@ -45,6 +52,10 @@ protected void readAdditionalSaveData(CompoundTag tag) { protected void addAdditionalSaveData(CompoundTag tag) { } + @Override + protected void handleNetherPortal() { + } + @Override public void tick() { this.baseTick(); @@ -100,6 +111,11 @@ public boolean dismountsUnderwater() { return true; } + @Override + public boolean canChangeDimensions() { + return false; + } + @Override public boolean isPushedByFluid() { return false; @@ -111,12 +127,11 @@ public boolean isSpectator() { } @Override - protected void defineSynchedData(SynchedEntityData.Builder compositeStateBuilder) { - + public void lavaHurt() { } @Override - public void lavaHurt() { + public void setSecondsOnFire(int seconds) { } @Override @@ -214,4 +229,9 @@ public boolean shouldRenderAtSqrDistance(double distance) { public boolean shouldShowName() { return false; } + + @Override + public @NotNull Packet getAddEntityPacket() { + return new ClientboundAddEntityPacket(this); + } } diff --git a/src/main/java/dev/galacticraft/mod/content/entity/Buggy.java b/src/main/java/dev/galacticraft/mod/content/entity/Buggy.java index 3ff7cc08db..db68a52987 100644 --- a/src/main/java/dev/galacticraft/mod/content/entity/Buggy.java +++ b/src/main/java/dev/galacticraft/mod/content/entity/Buggy.java @@ -30,6 +30,7 @@ import net.fabricmc.fabric.api.transfer.v1.fluid.FluidVariant; import net.fabricmc.fabric.api.transfer.v1.fluid.base.SingleFluidStorage; import net.fabricmc.fabric.api.transfer.v1.storage.Storage; +import net.minecraft.core.NonNullList; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.network.syncher.EntityDataSerializers; @@ -45,6 +46,7 @@ import net.minecraft.world.level.Level; import net.minecraft.world.level.material.Fluid; import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; import java.util.function.IntFunction; @@ -70,9 +72,9 @@ public Buggy(EntityType entityType, Level level) { } @Override - protected void defineSynchedData(SynchedEntityData.Builder builder) { - super.defineSynchedData(builder); - builder.define(DATA_TYPE_ID, 0); + protected void defineSynchedData() { + super.defineSynchedData(); + this.entityData.define(DATA_TYPE_ID, 0); createInventory(); } diff --git a/src/main/java/dev/galacticraft/mod/content/entity/EvolvedCreeperEntity.java b/src/main/java/dev/galacticraft/mod/content/entity/EvolvedCreeperEntity.java index 9b0c70eac6..1aca4ebc70 100644 --- a/src/main/java/dev/galacticraft/mod/content/entity/EvolvedCreeperEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/entity/EvolvedCreeperEntity.java @@ -27,9 +27,9 @@ import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.network.syncher.EntityDataSerializers; import net.minecraft.network.syncher.SynchedEntityData; -import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; import net.minecraft.world.damagesource.DamageSource; +import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityDimensions; import net.minecraft.world.entity.EntityType; import net.minecraft.world.entity.Pose; @@ -39,21 +39,21 @@ import net.minecraft.world.entity.monster.Creeper; import net.minecraft.world.level.Level; +import java.util.UUID; + public class EvolvedCreeperEntity extends Creeper { private static final EntityDataAccessor BABY = SynchedEntityData.defineId(EvolvedCreeperEntity.class, EntityDataSerializers.BOOLEAN); - private static final ResourceLocation SPEED_MODIFIER_BABY_ID = ResourceLocation.withDefaultNamespace("baby"); - private static final AttributeModifier BABY_SPEED_BONUS = new AttributeModifier( - SPEED_MODIFIER_BABY_ID, 0.8D, AttributeModifier.Operation.ADD_MULTIPLIED_BASE - ); + private static final UUID BABY_SPEED_ID = UUID.fromString("B9766B59-9566-4402-BC1F-2EE2A276D836"); + private static final AttributeModifier BABY_SPEED_BONUS = new AttributeModifier(BABY_SPEED_ID, "Baby speed boost", 0.8D, AttributeModifier.Operation.MULTIPLY_BASE); public EvolvedCreeperEntity(EntityType entityType, Level world) { super(entityType, world); } @Override - protected void defineSynchedData(SynchedEntityData.Builder compositeStateBuilder) { - super.defineSynchedData(compositeStateBuilder); - compositeStateBuilder.define(BABY, false); + protected void defineSynchedData() { + super.defineSynchedData(); + this.entityData.define(BABY, false); } public void tick() { @@ -86,22 +86,21 @@ public boolean isBaby() { return this.entityData.get(BABY); } - @Override public void setBaby(boolean baby) { this.getEntityData().set(BABY, baby); - if (!this.level().isClientSide) { - AttributeInstance attributeInstance = this.getAttribute(Attributes.MOVEMENT_SPEED); - attributeInstance.removeModifier(SPEED_MODIFIER_BABY_ID); + if (this.level() != null && !this.level().isClientSide) { + AttributeInstance entityAttributeInstance = this.getAttribute(Attributes.MOVEMENT_SPEED); + entityAttributeInstance.removeModifier(BABY_SPEED_ID); if (baby) { - attributeInstance.addTransientModifier(BABY_SPEED_BONUS); + entityAttributeInstance.addTransientModifier(BABY_SPEED_BONUS); } } } @Override - protected EntityDimensions getDefaultDimensions(Pose pose) { + public EntityDimensions getDimensions(Pose pose) { if (this.isBaby()) { - return this.getType().getDimensions().scale(0.75F, 0.5F).withEyeHeight(0.75F); + return this.getType().getDimensions().scale(0.75F, 0.5F); } else { return this.getType().getDimensions(); } @@ -114,4 +113,14 @@ public void onSyncedDataUpdated(EntityDataAccessor data) { } super.onSyncedDataUpdated(data); } + + @Override + protected float getStandingEyeHeight(Pose pose, EntityDimensions dimensions) { + return this.isBaby() ? 0.75F : 1.4F; + } + + @Override + public float getMyRidingOffset(Entity entity) { + return this.isBaby() ? 0.0F : -0.45F; + } } diff --git a/src/main/java/dev/galacticraft/mod/content/entity/GCVehicle.java b/src/main/java/dev/galacticraft/mod/content/entity/GCVehicle.java index 16fb424962..288dc3ebed 100644 --- a/src/main/java/dev/galacticraft/mod/content/entity/GCVehicle.java +++ b/src/main/java/dev/galacticraft/mod/content/entity/GCVehicle.java @@ -22,10 +22,10 @@ package dev.galacticraft.mod.content.entity; -import net.minecraft.core.component.DataComponents; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.network.syncher.EntityDataSerializers; import net.minecraft.network.syncher.SynchedEntityData; +import net.minecraft.util.Mth; import net.minecraft.world.damagesource.DamageSource; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; @@ -103,7 +103,7 @@ public void destroy(ItemStack selfAsItem) { if (!selfAsItem.isEmpty()) { if (this.level().getGameRules().getBoolean(GameRules.RULE_DOENTITYDROPS)) { if (this.hasCustomName()) { - selfAsItem.set(DataComponents.CUSTOM_NAME, this.getCustomName()); + selfAsItem.setHoverName(this.getCustomName()); } this.spawnAtLocation(selfAsItem); @@ -112,10 +112,10 @@ public void destroy(ItemStack selfAsItem) { } @Override - protected void defineSynchedData(SynchedEntityData.Builder builder) { - builder.define(DATA_ID_HURT, 0); - builder.define(DATA_ID_HURTDIR, 1); - builder.define(DATA_ID_DAMAGE, 0.0F); + protected void defineSynchedData() { + this.entityData.define(DATA_ID_HURT, 0); + this.entityData.define(DATA_ID_HURTDIR, 1); + this.entityData.define(DATA_ID_DAMAGE, 0.0F); } public void setHurtTime(int damageWobbleTicks) { diff --git a/src/main/java/dev/galacticraft/mod/content/entity/GreyEntity.java b/src/main/java/dev/galacticraft/mod/content/entity/GreyEntity.java index 45ebb02652..80ea1518d4 100644 --- a/src/main/java/dev/galacticraft/mod/content/entity/GreyEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/entity/GreyEntity.java @@ -54,7 +54,7 @@ public GreyEntity(EntityType entityType, Level level) { @Override protected void registerGoals() { // this.goalSelector.addGoal(0, new RandomLookAroundGoal(this)); - this.followPlayerGoal = new FollowPlayerGoal(this, 10.0F, 3.0f, 0.8f); + this.followPlayerGoal = new FollowPlayerGoal(this, 10.0F, 0.8); this.greyAvoidEntityGoal = new GreyAvoidEntityGoal<>(this, Player.class, 3.0f, 0.8, 1); this.goalSelector.addGoal(0, new LookAtPlayerGoal(this, Player.class, 15F)); this.goalSelector.addGoal(0, this.followPlayerGoal); @@ -103,7 +103,7 @@ public static AttributeSupplier.Builder createAttributes() { .add(Attributes.MAX_HEALTH, 24.0) .add(Attributes.ATTACK_DAMAGE, 5.0) .add(GcApiEntityAttributes.CAN_BREATHE_IN_SPACE, 1.0D) - .add(Attributes.GRAVITY, 0.9F); + .add(GcApiEntityAttributes.LOCAL_GRAVITY_LEVEL, 0.9F); } static class GreyAvoidEntityGoal extends AvoidEntityGoal { diff --git a/src/main/java/dev/galacticraft/mod/content/entity/OliGrubEntity.java b/src/main/java/dev/galacticraft/mod/content/entity/OliGrubEntity.java index 3a96fafd34..59afa0e8ac 100644 --- a/src/main/java/dev/galacticraft/mod/content/entity/OliGrubEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/entity/OliGrubEntity.java @@ -33,7 +33,6 @@ import net.minecraft.world.entity.animal.Animal; import net.minecraft.world.entity.monster.Monster; import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; import org.jetbrains.annotations.Nullable; @@ -42,11 +41,6 @@ public OliGrubEntity(EntityType entityType, Level level) { super(entityType, level); } - @Override - public boolean isFood(ItemStack stack) { - return false; - } - @Nullable @Override public AgeableMob getBreedOffspring(ServerLevel serverLevel, AgeableMob ageableMob) { diff --git a/src/main/java/dev/galacticraft/mod/content/entity/ParachestEntity.java b/src/main/java/dev/galacticraft/mod/content/entity/ParachestEntity.java index 459569b7c4..adbd18adce 100644 --- a/src/main/java/dev/galacticraft/mod/content/entity/ParachestEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/entity/ParachestEntity.java @@ -70,8 +70,8 @@ public ParachestEntity(EntityType entityType, Level level) { } @Override - protected void defineSynchedData(SynchedEntityData.Builder compositeStateBuilder) { - compositeStateBuilder.define(COLOR, (byte) DyeColor.WHITE.getId()); + protected void defineSynchedData() { + this.entityData.define(COLOR, (byte) DyeColor.WHITE.getId()); } @Override @@ -82,7 +82,7 @@ protected void readAdditionalSaveData(CompoundTag tag) { } this.cargo = NonNullList.withSize(size, ItemStack.EMPTY); - ContainerHelper.loadAllItems(tag, this.cargo, this.level().registryAccess()); + ContainerHelper.loadAllItems(tag, this.cargo); this.placedChest = tag.getBoolean("placedChest"); this.fuelLevel = tag.getLong("FuelLevel"); @@ -95,7 +95,7 @@ protected void readAdditionalSaveData(CompoundTag tag) { @Override protected void addAdditionalSaveData(CompoundTag tag) { tag.putInt("CargoLength", this.cargo.size()); - ContainerHelper.saveAllItems(tag, this.cargo, this.level().registryAccess()); + ContainerHelper.saveAllItems(tag, this.cargo); tag.putBoolean("placedChest", this.placedChest); tag.putLong("FuelLevel", this.fuelLevel); diff --git a/src/main/java/dev/galacticraft/mod/content/entity/ThrowableMeteorChunkEntity.java b/src/main/java/dev/galacticraft/mod/content/entity/ThrowableMeteorChunkEntity.java index f24d3a645e..ad6279634f 100644 --- a/src/main/java/dev/galacticraft/mod/content/entity/ThrowableMeteorChunkEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/entity/ThrowableMeteorChunkEntity.java @@ -52,9 +52,9 @@ public ThrowableMeteorChunkEntity(LivingEntity shooter, Level level, boolean hot } @Override - protected void defineSynchedData(SynchedEntityData.Builder compositeStateBuilder) { - super.defineSynchedData(compositeStateBuilder); - compositeStateBuilder.define(HOT, false); + protected void defineSynchedData() { + super.defineSynchedData(); + this.entityData.define(HOT, false); } @Override @@ -96,7 +96,7 @@ protected void onHitEntity(EntityHitResult result) { super.onHitEntity(result); if (this.entityData.get(HOT)) { result.getEntity().hurt(this.damageSources().thrown(this, this.getOwner()), 4.0F); - result.getEntity().igniteForSeconds(3); + result.getEntity().setSecondsOnFire(3); } else { result.getEntity().hurt(this.damageSources().thrown(this, this.getOwner()), 2.0F); } diff --git a/src/main/java/dev/galacticraft/mod/content/entity/boss/AbstractBossEntity.java b/src/main/java/dev/galacticraft/mod/content/entity/boss/AbstractBossEntity.java index e1cab1699d..c522aaf3f5 100644 --- a/src/main/java/dev/galacticraft/mod/content/entity/boss/AbstractBossEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/entity/boss/AbstractBossEntity.java @@ -24,6 +24,7 @@ import dev.galacticraft.mod.content.block.entity.DungeonSpawnerBlockEntity; import net.minecraft.network.chat.Component; +import net.minecraft.server.MinecraftServer; import net.minecraft.server.level.ServerBossEvent; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.BossEvent; diff --git a/src/main/java/dev/galacticraft/mod/content/entity/boss/SkeletonBoss.java b/src/main/java/dev/galacticraft/mod/content/entity/boss/SkeletonBoss.java index 0bfc765a3a..3c7d7813a2 100644 --- a/src/main/java/dev/galacticraft/mod/content/entity/boss/SkeletonBoss.java +++ b/src/main/java/dev/galacticraft/mod/content/entity/boss/SkeletonBoss.java @@ -34,10 +34,7 @@ import net.minecraft.util.Mth; import net.minecraft.world.BossEvent; import net.minecraft.world.damagesource.DamageSource; -import net.minecraft.world.entity.Entity; -import net.minecraft.world.entity.EntitySelector; -import net.minecraft.world.entity.EntityType; -import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.*; import net.minecraft.world.entity.ai.attributes.AttributeSupplier; import net.minecraft.world.entity.ai.attributes.Attributes; import net.minecraft.world.entity.ai.goal.*; @@ -48,12 +45,15 @@ import net.minecraft.world.entity.monster.RangedAttackMob; import net.minecraft.world.entity.player.Player; import net.minecraft.world.entity.projectile.AbstractArrow; +import net.minecraft.world.entity.projectile.Arrow; import net.minecraft.world.entity.projectile.ProjectileUtil; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; import net.minecraft.world.level.Level; import net.minecraft.world.phys.Vec3; +import java.util.List; import java.util.Random; public class SkeletonBoss extends AbstractBossEntity implements RangedAttackMob, IgnoreShift { @@ -127,8 +127,8 @@ public void positionRider(Entity passenger, Entity.MoveFunction positionUpdater) final double offsetX = Math.sin(-this.getYHeadRot() / Constant.RADIANS_TO_DEGREES); final double offsetZ = Math.cos(this.getYHeadRot() / Constant.RADIANS_TO_DEGREES); final double offsetY = 2 * Math.cos((this.throwTimer + this.postThrowDelay) * 0.05F); - Vec3 point = passenger.getVehicleAttachmentPoint(this); - positionUpdater.accept(passenger, vec3.x() + offsetX, vec3.y() + point.y + offsetY, vec3.z() + offsetZ); + + positionUpdater.accept(passenger, vec3.x() + offsetX, vec3.y() + passenger.getMyRidingOffset(this) + offsetY, vec3.z() + offsetZ); } @Override @@ -172,6 +172,11 @@ protected SoundEvent getDeathSound() { // return EntitySkeletonBoss.defaultHeldItem; // } + @Override + public MobType getMobType() { + return MobType.UNDEAD; + } + @Override public void aiStep() { this.ticks++; @@ -281,9 +286,8 @@ public void performRangedAttack(LivingEntity target, float pullProgress) { return; } - ItemStack itemInHand = this.getItemInHand(ProjectileUtil.getWeaponHoldingHand(this, Items.BOW)); - ItemStack arrowItem = this.getProjectile(itemInHand); - AbstractArrow arrow = getArrow(arrowItem, pullProgress, itemInHand); + ItemStack arrowItem = this.getProjectile(this.getItemInHand(ProjectileUtil.getWeaponHoldingHand(this, Items.BOW))); + AbstractArrow arrow = getArrow(arrowItem, pullProgress); double d0 = target.getX() - this.getX(); double d1 = target.getY(0.3333333333333333) - arrow.getY(); double d2 = target.getZ() - this.getZ(); @@ -294,8 +298,8 @@ public void performRangedAttack(LivingEntity target, float pullProgress) { this.level().addFreshEntity(arrow); } - protected AbstractArrow getArrow(ItemStack arrow, float damageModifier, ItemStack itemInHand) { - return ProjectileUtil.getMobArrow(this, arrow, damageModifier, itemInHand); + protected AbstractArrow getArrow(ItemStack arrow, float damageModifier) { + return ProjectileUtil.getMobArrow(this, arrow, damageModifier); } @Override diff --git a/src/main/java/dev/galacticraft/mod/content/entity/damage/GCDamageTypes.java b/src/main/java/dev/galacticraft/mod/content/entity/damage/GCDamageTypes.java index ed879e9b1c..9744c1dfe4 100644 --- a/src/main/java/dev/galacticraft/mod/content/entity/damage/GCDamageTypes.java +++ b/src/main/java/dev/galacticraft/mod/content/entity/damage/GCDamageTypes.java @@ -24,7 +24,7 @@ import dev.galacticraft.mod.Constant; import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.resources.ResourceKey; import net.minecraft.world.damagesource.DamageScaling; import net.minecraft.world.damagesource.DamageType; @@ -35,7 +35,7 @@ public class GCDamageTypes { public static final ResourceKey SUFFOCATION = Constant.key(Registries.DAMAGE_TYPE, "suffocation"); public static final ResourceKey SULFURIC_ACID = Constant.key(Registries.DAMAGE_TYPE, "sulfuric_acid"); - public static void bootstrapRegistries(BootstrapContext context) { + public static void bootstrapRegistries(BootstapContext context) { context.register(OIL_BOOM, new DamageType("oil_boom", DamageScaling.ALWAYS, 0.1f)); context.register(VINE_POISON, new DamageType("vine_poison", 0.0f)); context.register(SUFFOCATION, new DamageType("suffocation", 0.0f)); diff --git a/src/main/java/dev/galacticraft/mod/content/entity/data/GCEntityDataSerializers.java b/src/main/java/dev/galacticraft/mod/content/entity/data/GCEntityDataSerializers.java index 344a0e6455..cc9b0625fb 100644 --- a/src/main/java/dev/galacticraft/mod/content/entity/data/GCEntityDataSerializers.java +++ b/src/main/java/dev/galacticraft/mod/content/entity/data/GCEntityDataSerializers.java @@ -23,16 +23,32 @@ package dev.galacticraft.mod.content.entity.data; import dev.galacticraft.api.rocket.LaunchStage; -import dev.galacticraft.api.rocket.RocketData; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.syncher.EntityDataSerializer; import net.minecraft.network.syncher.EntityDataSerializers; +import net.minecraft.resources.ResourceLocation; public class GCEntityDataSerializers { - public static final EntityDataSerializer ROCKET_DATA = EntityDataSerializer.forValueType(RocketData.STREAM_CODEC); - public static final EntityDataSerializer LAUNCH_STAGE = EntityDataSerializer.forValueType(LaunchStage.STREAM_CODEC); + public static final EntityDataSerializer LAUNCH_STAGE = EntityDataSerializer.simpleEnum(LaunchStage.class); + public static final EntityDataSerializer IDENTIFIER = new EntityDataSerializer<>() { + @Override + public void write(FriendlyByteBuf buffer, ResourceLocation value) { + buffer.writeResourceLocation(value); + } + + @Override + public ResourceLocation read(FriendlyByteBuf buffer) { + return buffer.readResourceLocation(); + } + + @Override + public ResourceLocation copy(ResourceLocation value) { + return value; + } + }; public static void register() { - EntityDataSerializers.registerSerializer(ROCKET_DATA); EntityDataSerializers.registerSerializer(LAUNCH_STAGE); + EntityDataSerializers.registerSerializer(IDENTIFIER); } } diff --git a/src/main/java/dev/galacticraft/mod/content/entity/goals/FollowPlayerGoal.java b/src/main/java/dev/galacticraft/mod/content/entity/goals/FollowPlayerGoal.java index 214fab1230..2bdef626e0 100644 --- a/src/main/java/dev/galacticraft/mod/content/entity/goals/FollowPlayerGoal.java +++ b/src/main/java/dev/galacticraft/mod/content/entity/goals/FollowPlayerGoal.java @@ -24,88 +24,70 @@ import net.minecraft.world.entity.Mob; import net.minecraft.world.entity.ai.goal.Goal; -import net.minecraft.world.entity.ai.navigation.FlyingPathNavigation; -import net.minecraft.world.entity.ai.navigation.GroundPathNavigation; import net.minecraft.world.entity.ai.navigation.PathNavigation; import net.minecraft.world.entity.player.Player; -import net.minecraft.world.level.pathfinder.PathType; -import org.jetbrains.annotations.Nullable; +import net.minecraft.world.level.pathfinder.BlockPathTypes; import java.util.EnumSet; +import java.util.List; +import java.util.Objects; -// vanilla copy of net.minecraft.world.entity.ai.goal.FollowMobGoal adapted for players public class FollowPlayerGoal extends Goal { private final Mob mob; - @Nullable - private Player following; - private final double speedModifier; + private Player followingPlayer; private final PathNavigation navigation; + private final double speedModifier; + private final double areaSize; private int timeToRecalcPath; - private final float stopDistance; private float oldWaterCost; - private final float areaSize; - public FollowPlayerGoal(Mob mob, double speedModifier, float stopDistance, float areaSize) { + public FollowPlayerGoal(Mob mob, double areaSize, double speedModifier) { this.mob = mob; - this.speedModifier = speedModifier; this.navigation = mob.getNavigation(); - this.stopDistance = stopDistance; this.areaSize = areaSize; + this.speedModifier = speedModifier; this.setFlags(EnumSet.of(Goal.Flag.MOVE, Goal.Flag.LOOK)); - if (!(mob.getNavigation() instanceof GroundPathNavigation) && !(mob.getNavigation() instanceof FlyingPathNavigation)) { - throw new IllegalArgumentException("Unsupported mob type for FollowMobGoal"); - } } @Override public boolean canUse() { - for (Player player : this.mob.level().getEntitiesOfClass(Player.class, this.mob.getBoundingBox().inflate(this.areaSize), p -> !p.isInvisible())) { - this.following = player; - return true; + List list = this.mob.level().getEntitiesOfClass(Player.class, this.mob.getBoundingBox().inflate(this.areaSize), Objects::nonNull); + if (!list.isEmpty()) { + for(Player player : list) { + if (!player.isInvisible()) { + this.followingPlayer = player; + return true; + } + } } - return false; - } - @Override - public boolean canContinueToUse() { - return this.following != null && !this.navigation.isDone() && this.mob.distanceToSqr(this.following) > (double)(this.stopDistance * this.stopDistance); + return false; } @Override public void start() { this.timeToRecalcPath = 0; - this.oldWaterCost = this.mob.getPathfindingMalus(PathType.WATER); - this.mob.setPathfindingMalus(PathType.WATER, 0.0F); + this.oldWaterCost = this.mob.getPathfindingMalus(BlockPathTypes.WATER); + this.mob.setPathfindingMalus(BlockPathTypes.WATER, 0.0F); } @Override public void stop() { - this.following = null; + this.followingPlayer = null; this.navigation.stop(); - this.mob.setPathfindingMalus(PathType.WATER, this.oldWaterCost); + this.mob.setPathfindingMalus(BlockPathTypes.WATER, this.oldWaterCost); } @Override public void tick() { - if (this.following != null && !this.mob.isLeashed()) { - this.mob.getLookControl().setLookAt(this.following, 10.0F, (float)this.mob.getMaxHeadXRot()); - if (--this.timeToRecalcPath <= 0) { - this.timeToRecalcPath = this.adjustedTickDelay(10); - double d = this.mob.getX() - this.following.getX(); - double e = this.mob.getY() - this.following.getY(); - double f = this.mob.getZ() - this.following.getZ(); - double g = d * d + e * e + f * f; - if (!(g <= (this.stopDistance * this.stopDistance))) { - this.navigation.moveTo(this.following, this.speedModifier); - } else { - this.navigation.stop(); - if (g <= this.stopDistance) { - double h = this.following.getX() - this.mob.getX(); - double i = this.following.getZ() - this.mob.getZ(); - this.navigation.moveTo(this.mob.getX() - h, this.mob.getY(), this.mob.getZ() - i, this.speedModifier); - } - } + if (this.followingPlayer == null) + return; + this.mob.getLookControl().setLookAt(this.followingPlayer, 10.0F, (float)this.mob.getMaxHeadXRot()); + if (--this.timeToRecalcPath <= 0) { + this.timeToRecalcPath = this.adjustedTickDelay(10); + if (!this.mob.isLeashed() && !this.mob.isPassenger()) { + this.navigation.moveTo(this.followingPlayer, this.speedModifier); } } } -} \ No newline at end of file +} diff --git a/src/main/java/dev/galacticraft/mod/content/entity/orbital/RocketEntity.java b/src/main/java/dev/galacticraft/mod/content/entity/orbital/RocketEntity.java index 806ea13aa3..9321b9742e 100644 --- a/src/main/java/dev/galacticraft/mod/content/entity/orbital/RocketEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/entity/orbital/RocketEntity.java @@ -22,12 +22,16 @@ package dev.galacticraft.mod.content.entity.orbital; -import com.mojang.datafixers.util.Pair; import dev.galacticraft.api.entity.IgnoreShift; +import dev.galacticraft.api.registry.AddonRegistries; +import dev.galacticraft.api.registry.RocketRegistries; import dev.galacticraft.api.rocket.LaunchStage; import dev.galacticraft.api.rocket.RocketData; import dev.galacticraft.api.rocket.entity.Rocket; import dev.galacticraft.api.rocket.part.*; +import dev.galacticraft.api.universe.celestialbody.CelestialBody; +import dev.galacticraft.api.universe.celestialbody.CelestialBodyConfig; +import dev.galacticraft.api.universe.celestialbody.CelestialBodyType; import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.api.block.entity.FuelDock; import dev.galacticraft.mod.attachments.GCServerPlayer; @@ -39,13 +43,13 @@ import dev.galacticraft.mod.content.entity.data.GCEntityDataSerializers; import dev.galacticraft.mod.content.item.GCItems; import dev.galacticraft.mod.events.RocketEvents; -import dev.galacticraft.mod.network.s2c.OpenCelestialScreenPayload; -import dev.galacticraft.mod.network.s2c.RocketSpawnPacket; +import dev.galacticraft.mod.network.packets.RocketSpawnPacket; import dev.galacticraft.mod.particle.EntityParticleOption; import dev.galacticraft.mod.particle.GCParticleTypes; import dev.galacticraft.mod.tag.GCTags; import dev.galacticraft.mod.util.FluidUtil; import dev.galacticraft.mod.util.Translations; +import net.fabricmc.fabric.api.networking.v1.PacketByteBufs; import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; import net.fabricmc.fabric.api.transfer.v1.fluid.FluidConstants; import net.fabricmc.fabric.api.transfer.v1.fluid.FluidVariant; @@ -55,19 +59,17 @@ import net.fabricmc.fabric.api.transfer.v1.transaction.Transaction; import net.fabricmc.loader.api.FabricLoader; import net.minecraft.core.BlockPos; -import net.minecraft.core.Holder; import net.minecraft.core.NonNullList; import net.minecraft.core.particles.ParticleTypes; import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.NbtOps; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.protocol.Packet; -import net.minecraft.network.protocol.game.ClientGamePacketListener; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.network.syncher.EntityDataSerializers; import net.minecraft.network.syncher.SynchedEntityData; +import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; -import net.minecraft.server.level.ServerEntity; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.Mth; @@ -76,7 +78,6 @@ import net.minecraft.world.damagesource.DamageSource; import net.minecraft.world.entity.*; import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.EitherHolder; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; @@ -84,19 +85,30 @@ import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.material.Fluid; import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import org.joml.Vector3f; + +import java.util.Objects; @SuppressWarnings("UnstableApiUsage") public class RocketEntity extends AdvancedVehicle implements Rocket, IgnoreShift, ControllableEntity { - private static final ResourceLocation NULL_ID = ResourceLocation.withDefaultNamespace("null"); + private static final ResourceLocation NULL_ID = new ResourceLocation("null"); private static final EntityDataAccessor STAGE = SynchedEntityData.defineId(RocketEntity.class, GCEntityDataSerializers.LAUNCH_STAGE); + private static final EntityDataAccessor COLOR = SynchedEntityData.defineId(RocketEntity.class, EntityDataSerializers.INT); + private static final EntityDataAccessor TIME_AS_STATE = SynchedEntityData.defineId(RocketEntity.class, EntityDataSerializers.INT); public static final EntityDataAccessor SPEED = SynchedEntityData.defineId(RocketEntity.class, EntityDataSerializers.FLOAT); - public static final EntityDataAccessor ROCKET_DATA = SynchedEntityData.defineId(RocketEntity.class, GCEntityDataSerializers.ROCKET_DATA); + public static final EntityDataAccessor ROCKET_CONE = SynchedEntityData.defineId(RocketEntity.class, GCEntityDataSerializers.IDENTIFIER); + public static final EntityDataAccessor ROCKET_BODY = SynchedEntityData.defineId(RocketEntity.class, GCEntityDataSerializers.IDENTIFIER); + public static final EntityDataAccessor ROCKET_FIN = SynchedEntityData.defineId(RocketEntity.class, GCEntityDataSerializers.IDENTIFIER); + public static final EntityDataAccessor ROCKET_BOOSTER = SynchedEntityData.defineId(RocketEntity.class, GCEntityDataSerializers.IDENTIFIER); + public static final EntityDataAccessor ROCKET_ENGINE = SynchedEntityData.defineId(RocketEntity.class, GCEntityDataSerializers.IDENTIFIER); + public static final EntityDataAccessor ROCKET_UPGRADE = SynchedEntityData.defineId(RocketEntity.class, GCEntityDataSerializers.IDENTIFIER); public static final EntityDataAccessor FUEL = SynchedEntityData.defineId(RocketEntity.class, EntityDataSerializers.LONG); private final boolean debugMode = false && FabricLoader.getInstance().isDevelopmentEnvironment(); @@ -148,8 +160,33 @@ public void setLaunchStage(LaunchStage launchStage) { } @Override - public @NotNull RocketData getData() { - return this.entityData.get(ROCKET_DATA); + public RocketCone getCone() { + return this.level().registryAccess().registryOrThrow(RocketRegistries.ROCKET_CONE).get(this.cone()); + } + + @Override + public RocketBody getBody() { + return this.level().registryAccess().registryOrThrow(RocketRegistries.ROCKET_BODY).get(this.body()); + } + + @Override + public RocketFin getFin() { + return this.level().registryAccess().registryOrThrow(RocketRegistries.ROCKET_FIN).get(this.fin()); + } + + @Override + public RocketBooster getBooster() { + return this.level().registryAccess().registryOrThrow(RocketRegistries.ROCKET_BOOSTER).get(this.booster()); + } + + @Override + public RocketEngine getEngine() { + return this.level().registryAccess().registryOrThrow(RocketRegistries.ROCKET_ENGINE).get(this.engine()); + } + + @Override + public RocketUpgrade getUpgrade() { + return this.level().registryAccess().registryOrThrow(RocketRegistries.ROCKET_UPGRADE).get(this.upgrade()); } @Override @@ -225,8 +262,11 @@ public FuelDock getLandingPad() { @Override public void onPadDestroyed() { + RocketData data = RocketData.create(this.color(), this.cone(), this.body(), this.fin(), this.booster(), this.engine(), this.upgrade()); + CompoundTag tag = new CompoundTag(); + data.toNbt(tag); var rocket = new ItemStack(GCItems.ROCKET); - rocket.applyComponents(this.getData().asPatch()); + rocket.setTag(tag); this.spawnAtLocation(rocket); this.remove(RemovalReason.DISCARDED); } @@ -244,8 +284,11 @@ public boolean inFlight() { @Override public void dropItems(DamageSource damageSource, boolean exploded) { if (!exploded) { + RocketData data = RocketData.create(this.color(), this.cone(), this.body(), this.fin(), this.booster(), this.engine(), this.upgrade()); + CompoundTag tag = new CompoundTag(); + data.toNbt(tag); var rocket = new ItemStack(GCItems.ROCKET); - rocket.applyComponents(this.getData().asPatch()); + rocket.setTag(tag); this.spawnAtLocation(rocket); } this.remove(RemovalReason.KILLED); @@ -309,16 +352,23 @@ protected void reapplyPosition() { } @Override - protected void defineSynchedData(SynchedEntityData.Builder builder) { - super.defineSynchedData(builder); - builder.define(STAGE, LaunchStage.IDLE); - builder.define(SPEED, 0.0f); + protected void defineSynchedData() { + super.defineSynchedData(); + this.entityData.define(STAGE, LaunchStage.IDLE); + this.entityData.define(SPEED, 0.0f); - builder.define(TIME_AS_STATE, 0); + this.entityData.define(COLOR, -1); - builder.define(ROCKET_DATA, RocketData.DEFAULT_ROCKET); + this.entityData.define(TIME_AS_STATE, 0); - builder.define(FUEL, 0L); + this.entityData.define(ROCKET_CONE, NULL_ID); + this.entityData.define(ROCKET_BODY, NULL_ID); + this.entityData.define(ROCKET_FIN, NULL_ID); + this.entityData.define(ROCKET_BOOSTER, NULL_ID); + this.entityData.define(ROCKET_ENGINE, NULL_ID); + this.entityData.define(ROCKET_UPGRADE, NULL_ID); + + this.entityData.define(FUEL, 0L); } @Override @@ -342,8 +392,8 @@ public boolean isPickable() { //Required to interact with the entity } @Override - protected Vec3 getPassengerAttachmentPoint(Entity entity, EntityDimensions dimensions, float scale) { - return new Vec3(0F, 1.5F, 0F); + protected Vector3f getPassengerAttachmentPoint(Entity entity, EntityDimensions dimensions, float scale) { + return new Vector3f(0F, 1.5F, 0F); } @Override @@ -422,7 +472,7 @@ public void tick() { if (this.getLinkedPad() != BlockPos.ZERO) { if (passenger instanceof ServerPlayer player) { GCServerPlayer gcPlayer = GCServerPlayer.get(player); - gcPlayer.setRocketData(this.getData()); + gcPlayer.setRocketData(this); gcPlayer.setLaunchpadStack(new ItemStack(GCBlocks.ROCKET_LAUNCH_PAD, 9)); } this.linkedPad.setDockedEntity(null); @@ -478,17 +528,30 @@ && level().getBlockState(getLinkedPad().offset(x, 0, z)).getValue(AbstractLaunch } if (this.position().y() >= 1200.0F) { + CelestialBody> body = CelestialBody.getByDimension(this.level()).orElse(null); + int id; + if (body != null) { + id = level().registryAccess().registryOrThrow(AddonRegistries.CELESTIAL_BODY).getId(body); + } else { + id = -1; + } for (Entity entity : getPassengers()) { if (entity instanceof ServerPlayer serverPlayer) { GCServerPlayer gcPlayer = GCServerPlayer.get(serverPlayer); gcPlayer.setRocketStacks(NonNullList.withSize(2, ItemStack.EMPTY)); // TODO un-hardcode this + RocketData data = RocketData.create(this.color(), this.cone(), this.body(), this.fin(), this.booster(), this.engine(), this.upgrade()); gcPlayer.setFuel(this.tank.getAmount()); + CompoundTag tag = new CompoundTag(); + data.toNbt(tag); var rocket = new ItemStack(GCItems.ROCKET); - RocketData data = this.getData(); - rocket.applyComponents(data.asPatch()); + rocket.setTag(tag); gcPlayer.setRocketItem(rocket); serverPlayer.galacticraft$openCelestialScreen(data); - ServerPlayNetworking.send(serverPlayer, new OpenCelestialScreenPayload(this.getData(), this.level().galacticraft$getCelestialBody())); + CompoundTag nbt = new CompoundTag(); + data.toNbt(nbt); + FriendlyByteBuf buf = PacketByteBufs.create().writeNbt(nbt); + buf.writeInt(id); + ServerPlayNetworking.send(serverPlayer, Constant.Packet.PLANET_MENU_PACKET, buf); remove(RemovalReason.UNLOADED_WITH_PLAYER); break; } @@ -600,9 +663,42 @@ public void setSpeed(float speed) { this.getEntityData().set(SPEED, speed); } + public void setCone(ResourceLocation id) { + this.getEntityData().set(ROCKET_CONE, id); + } + + public void setBody(ResourceLocation id) { + this.getEntityData().set(ROCKET_BODY, id); + } + + public void setFin(ResourceLocation id) { + this.getEntityData().set(ROCKET_FIN, id); + } + + public void setBooster(ResourceLocation id) { + this.getEntityData().set(ROCKET_BOOSTER, id); + } + + public void setEngine(ResourceLocation id) { + this.getEntityData().set(ROCKET_ENGINE, id); + } + + public void setUpgrade(ResourceLocation id) { + this.getEntityData().set(ROCKET_UPGRADE, id); + } + @Override protected void readAdditionalSaveData(CompoundTag tag) { - this.setData(RocketData.CODEC.decode(NbtOps.INSTANCE, tag.getCompound("data")).mapOrElse(Pair::getFirst, e -> RocketData.DEFAULT_ROCKET)); + this.setCone(tag.contains("Cone") ? new ResourceLocation(tag.getString("Cone")) : null); + this.setBody(tag.contains("Body") ? new ResourceLocation(tag.getString("Body")) : null); + this.setFin(tag.contains("Fin") ? new ResourceLocation(tag.getString("Fin")) : null); + this.setBooster(tag.contains("Booster") ? new ResourceLocation(tag.getString("Booster")) : null); + this.setEngine(tag.contains("Engine") ? new ResourceLocation(tag.getString("Engine")) : null); + this.setUpgrade(tag.contains("Upgrade") ? new ResourceLocation(tag.getString("Upgrade")) : null); + + if (tag.contains("Color")) { + this.setColor(tag.getInt("Color")); + } if (tag.contains("Stage")) { this.setLaunchStage(LaunchStage.valueOf(tag.getString("Stage"))); @@ -612,26 +708,42 @@ protected void readAdditionalSaveData(CompoundTag tag) { setSpeed(tag.getFloat("Speed")); } - BlockEntity be = this.level().getBlockEntity(BlockPos.of(tag.getLong("Linked"))); + BlockEntity be = this.level().getBlockEntity(new BlockPos(tag.getInt("lX"), tag.getInt("lY"), tag.getInt("lZ"))); if (be instanceof FuelDock pad) this.linkedPad = pad; } + @Override + @ApiStatus.Internal + public void setLevel(Level level) { + super.setLevel(level); + } + + public void setColor(int color) { + this.getEntityData().set(COLOR, color); + } + @Override protected void addAdditionalSaveData(CompoundTag tag) { - CompoundTag data = new CompoundTag(); - RocketData.CODEC.encode(this.getData(), NbtOps.INSTANCE, data); - tag.put("data", data); + if (this.cone() != null) tag.putString("Cone", Objects.requireNonNull(this.cone()).toString()); + if (this.body() != null) tag.putString("Body", Objects.requireNonNull(this.body()).toString()); + if (this.fin() != null) tag.putString("Fin", Objects.requireNonNull(this.fin()).toString()); + if (this.booster() != null) tag.putString("Booster", Objects.requireNonNull(this.booster()).toString()); + if (this.engine() != null) tag.putString("Engine", Objects.requireNonNull(this.engine()).toString()); + if (this.upgrade() != null) tag.putString("Upgrade", Objects.requireNonNull(this.upgrade()).toString()); tag.putString("Stage", getLaunchStage().name()); tag.putDouble("Speed", this.getSpeed()); + tag.putInt("Color", this.color()); - if (this.linkedPad != null) tag.putLong("Linked", this.linkedPad.getDockPos().asLong()); + tag.putInt("lX", linkedPad.getDockPos().getX()); + tag.putInt("lY", linkedPad.getDockPos().getY()); + tag.putInt("lZ", linkedPad.getDockPos().getZ()); } @Override - public Packet getAddEntityPacket(ServerEntity serverEntity) { - return (Packet)ServerPlayNetworking.createS2CPacket(new RocketSpawnPacket(getType(), getId(), this.uuid, getX(), getY(), getZ(), getXRot(), getYRot(), this.getData())); + public @NotNull Packet getAddEntityPacket() { + return ServerPlayNetworking.createS2CPacket(new RocketSpawnPacket(getType(), getId(), this.uuid, getX(), getY(), getZ(), getXRot(), getYRot(), this)); } public int getTimeBeforeLaunch() { @@ -643,41 +755,73 @@ public int getPreLaunchWait() { } @Override - public @Nullable Holder> cone() { - return maybeGet(this.getData().cone()); + public int color() { + return this.getEntityData().get(COLOR); } @Override - public @Nullable Holder> body() { - return maybeGet(this.getData().body()); + public @Nullable ResourceKey> cone() { + ResourceLocation location = this.getEntityData().get(ROCKET_CONE); + if (location == null || NULL_ID.equals(location)) { + return null; + } + return ResourceKey.create(RocketRegistries.ROCKET_CONE, location); } @Override - public @Nullable Holder> fin() { - return maybeGet(this.getData().fin()); + public @Nullable ResourceKey> body() { + ResourceLocation location = this.getEntityData().get(ROCKET_BODY); + if (location == null || NULL_ID.equals(location)) { + return null; + } + return ResourceKey.create(RocketRegistries.ROCKET_BODY, location); } @Override - public @Nullable Holder> booster() { - return maybeGet(this.getData().booster()); + public @Nullable ResourceKey> fin() { + ResourceLocation location = this.getEntityData().get(ROCKET_FIN); + if (location == null || NULL_ID.equals(location)) { + return null; + } + return ResourceKey.create(RocketRegistries.ROCKET_FIN, location); } @Override - public @Nullable Holder> engine() { - return maybeGet(this.getData().engine()); + public @Nullable ResourceKey> booster() { + ResourceLocation location = this.getEntityData().get(ROCKET_BOOSTER); + if (location == null || NULL_ID.equals(location)) { + return null; + } + return ResourceKey.create(RocketRegistries.ROCKET_BOOSTER, location); } @Override - public @Nullable Holder> upgrade() { - return maybeGet(this.getData().upgrade()); + public @Nullable ResourceKey> engine() { + ResourceLocation location = this.getEntityData().get(ROCKET_ENGINE); + if (location == null || NULL_ID.equals(location)) { + return null; + } + return ResourceKey.create(RocketRegistries.ROCKET_ENGINE, location); } - private @Nullable Holder maybeGet(@Nullable EitherHolder holder) { - return holder != null ? holder.unwrap(this.registryAccess()).orElse(null) : null; + @Override + public @Nullable ResourceKey> upgrade() { + ResourceLocation location = this.getEntityData().get(ROCKET_UPGRADE); + if (location == null || NULL_ID.equals(location)) { + return null; + } + return ResourceKey.create(RocketRegistries.ROCKET_UPGRADE, location); } public void setData(RocketData data) { - this.entityData.set(ROCKET_DATA, data); + this.setColor(data.color()); + + this.setCone(data.cone() != null ? data.cone().location() : null); + this.setBody(data.body() != null ? data.body().location() : null); + this.setFin(data.fin() != null ? data.fin().location() : null); + this.setBooster(data.booster() != null ? data.booster().location() : null); + this.setEngine(data.engine() != null ? data.engine().location() : null); + this.setUpgrade(data.upgrade() != null ? data.upgrade().location() : null); } @Override @@ -709,9 +853,4 @@ public void inputTick(float leftImpulse, float forwardImpulse, boolean up, boole public boolean shouldIgnoreShiftExit() { return getLaunchStage().ordinal() >= LaunchStage.LAUNCHED.ordinal(); } - - @Override - public void setLevel(Level level) { // public for render - super.setLevel(level); - } } diff --git a/src/main/java/dev/galacticraft/mod/content/entity/orbital/lander/LanderEntity.java b/src/main/java/dev/galacticraft/mod/content/entity/orbital/lander/LanderEntity.java index 1420285eab..06806b217c 100644 --- a/src/main/java/dev/galacticraft/mod/content/entity/orbital/lander/LanderEntity.java +++ b/src/main/java/dev/galacticraft/mod/content/entity/orbital/lander/LanderEntity.java @@ -31,7 +31,7 @@ import dev.galacticraft.mod.content.GCFluids; import dev.galacticraft.mod.content.entity.ControllableEntity; import dev.galacticraft.mod.content.entity.ScalableFuelLevel; -import dev.galacticraft.mod.network.s2c.ResetPerspectivePacket; +import dev.galacticraft.mod.network.packets.ResetThirdPersonPacket; import dev.galacticraft.mod.particle.GCParticleTypes; import dev.galacticraft.mod.screen.ParachestMenu; import dev.galacticraft.mod.util.FluidUtil; @@ -44,9 +44,9 @@ import net.fabricmc.fabric.api.transfer.v1.item.InventoryStorage; import net.fabricmc.fabric.api.transfer.v1.storage.Storage; import net.fabricmc.fabric.api.transfer.v1.transaction.Transaction; -import net.minecraft.core.Holder; import net.minecraft.core.NonNullList; import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.Mth; import net.minecraft.world.Container; @@ -63,10 +63,11 @@ import net.minecraft.world.phys.AABB; import net.minecraft.world.phys.Vec3; import org.jetbrains.annotations.Nullable; +import org.joml.Vector3f; import java.util.List; -public class LanderEntity extends AbstractLanderEntity implements Container, ScalableFuelLevel, ControllableEntity, HasCustomInventoryScreen, IgnoreShift, ExtendedScreenHandlerFactory { +public class LanderEntity extends AbstractLanderEntity implements Container, ScalableFuelLevel, ControllableEntity, HasCustomInventoryScreen, IgnoreShift, ExtendedScreenHandlerFactory { public static final float NO_PARTICLES = 0.0000001F; protected NonNullList inventory; protected InventoryStorage storage; @@ -104,20 +105,20 @@ public LanderEntity(ServerPlayer player) { @Override protected void readAdditionalSaveData(CompoundTag tag) { - tank.readNbt(tag, this.registryAccess()); + tank.readNbt(tag); this.inventory = NonNullList.withSize(tag.getInt("size"), ItemStack.EMPTY); this.storage = InventoryStorage.of(this, null); - ContainerHelper.loadAllItems(tag, this.inventory, this.registryAccess()); + ContainerHelper.loadAllItems(tag, this.inventory); this.lastDeltaY = this.getDeltaMovement().y; } @Override protected void addAdditionalSaveData(CompoundTag tag) { - tank.writeNbt(tag, this.registryAccess()); + tank.writeNbt(tag); tag.putInt("size", this.inventory.size()); - ContainerHelper.saveAllItems(tag, this.inventory, this.registryAccess()); + ContainerHelper.saveAllItems(tag, this.inventory); } public Pair getParticlePosition() { @@ -235,7 +236,7 @@ public void onGroundHit() { for (Entity entity : this.getPassengers()) { entity.removeVehicle(); if (entity instanceof ServerPlayer player) { - ServerPlayNetworking.send(player, new ResetPerspectivePacket()); + ServerPlayNetworking.send(player, new ResetThirdPersonPacket()); } entity.setDeltaMovement(Vec3.ZERO); entity.setPos(entity.getX(), this.getY() + 2.25, entity.getZ()); @@ -253,8 +254,7 @@ public void tickOnGround() { public void tickInAir() { if (!this.onGround()) { - Holder> holder = this.level().galacticraft$getCelestialBody(); - this.addDeltaMovement(new Vec3(0, (holder != null ? holder.value().gravity() : 1.0d) * -0.008D, 0)); + this.addDeltaMovement(new Vec3(0, CelestialBody.getByDimension(level()).map(CelestialBody::gravity).orElse(1F) * -0.008D, 0)); } double motY = -1 * Math.sin(getXRot() / Constant.RADIANS_TO_DEGREES); @@ -375,6 +375,12 @@ public void clearContent() { this.inventory.clear(); } + @Override + public void writeScreenOpeningData(ServerPlayer player, FriendlyByteBuf buf) { + buf.writeBoolean(false); + buf.writeVarInt(this.inventory.size()); + } + @Nullable @Override public AbstractContainerMenu createMenu(int containerId, Inventory inventory, Player player) { @@ -412,8 +418,8 @@ public boolean shouldSpawnParticles() { } @Override - protected Vec3 getPassengerAttachmentPoint(Entity passenger, EntityDimensions dimensions, float scaleFactor) { - return new Vec3(0, 1.5F, 0); + protected Vector3f getPassengerAttachmentPoint(Entity passenger, EntityDimensions dimensions, float scaleFactor) { + return new Vector3f(0, 1.5F, 0); } @Override @@ -449,9 +455,4 @@ public void inputTick(float leftImpulse, float forwardImpulse, boolean up, boole public boolean shouldIgnoreShiftExit() { return !onGround(); } - - @Override - public ParachestMenu.OpeningData getScreenOpeningData(ServerPlayer player) { - return new ParachestMenu.OpeningData(this.inventory.size()); - } } diff --git a/src/main/java/dev/galacticraft/mod/content/item/BatteryItem.java b/src/main/java/dev/galacticraft/mod/content/item/BatteryItem.java index 86b42bfac4..29c3d7f068 100644 --- a/src/main/java/dev/galacticraft/mod/content/item/BatteryItem.java +++ b/src/main/java/dev/galacticraft/mod/content/item/BatteryItem.java @@ -25,10 +25,14 @@ import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.util.DrawableUtil; import dev.galacticraft.mod.util.Translations; +import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; +import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; +import net.minecraft.world.level.Level; +import org.jetbrains.annotations.NotNull; import team.reborn.energy.api.EnergyStorage; import team.reborn.energy.api.base.SimpleEnergyItem; @@ -47,10 +51,9 @@ public BatteryItem(Properties settings, long capacity, long transfer) { } @Override - public void appendHoverText(ItemStack stack, TooltipContext context, List tooltip, TooltipFlag type) { - super.appendHoverText(stack, context, tooltip, type); - - tooltip.add(Component.translatable(Translations.Tooltip.ENERGY_REMAINING, DrawableUtil.getEnergyDisplay(getStoredEnergy(stack)).setStyle(Constant.Text.Color.getStorageLevelStyle(1.0 - ((double)getStoredEnergy(stack)) / ((double)this.getEnergyCapacity(stack)))))); + public void appendHoverText(ItemStack stack, Level world, List lines, TooltipFlag context) { + lines.add(Component.translatable(Translations.Tooltip.ENERGY_REMAINING, DrawableUtil.getEnergyDisplay(getStoredEnergy(stack)).setStyle(Constant.Text.Color.getStorageLevelStyle(1.0 - ((double)getStoredEnergy(stack)) / ((double)this.getEnergyCapacity(stack)))))); + super.appendHoverText(stack, world, lines, context); } @Override @@ -69,6 +72,12 @@ public int getBarColor(ItemStack stack) { return ((int)(255 * scale) << 16) + (((int)(255 * ( 1.0 - scale))) << 8); } + @Override + public void onCraftedBy(@NotNull ItemStack battery, Level world, Player player) { + CompoundTag batteryTag = battery.getOrCreateTag(); + battery.setTag(batteryTag); + } + @Override public int getEnchantmentValue() { return -1; diff --git a/src/main/java/dev/galacticraft/mod/content/item/BrittleSwordItem.java b/src/main/java/dev/galacticraft/mod/content/item/BrittleSwordItem.java index fd21260cbd..1e6f0360c6 100644 --- a/src/main/java/dev/galacticraft/mod/content/item/BrittleSwordItem.java +++ b/src/main/java/dev/galacticraft/mod/content/item/BrittleSwordItem.java @@ -32,14 +32,14 @@ import net.minecraft.world.level.block.state.BlockState; public class BrittleSwordItem extends SwordItem { - public BrittleSwordItem(Tier toolMaterial, Properties settings) { - super(toolMaterial, settings); + public BrittleSwordItem(Tier toolMaterial, int attackDamage, float attackSpeed, Properties settings) { + super(toolMaterial, attackDamage, attackSpeed, settings); } @Override public boolean mineBlock(ItemStack stack, Level world, BlockState blockState, BlockPos blockPos, LivingEntity entityLiving) { if (blockState.getDestroySpeed(world, blockPos) > 0.2001F) { - stack.hurtAndBreak(2, entityLiving, EquipmentSlot.MAINHAND); + stack.hurtAndBreak(2, entityLiving, (livingEntity) -> livingEntity.broadcastBreakEvent(EquipmentSlot.MAINHAND)); } return true; } diff --git a/src/main/java/dev/galacticraft/mod/content/item/BuggyItem.java b/src/main/java/dev/galacticraft/mod/content/item/BuggyItem.java index 2e91ee682f..41cc35b50d 100644 --- a/src/main/java/dev/galacticraft/mod/content/item/BuggyItem.java +++ b/src/main/java/dev/galacticraft/mod/content/item/BuggyItem.java @@ -26,6 +26,8 @@ import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; +import net.minecraft.world.level.Level; +import org.jetbrains.annotations.Nullable; import java.util.List; @@ -35,7 +37,7 @@ public BuggyItem(Properties properties) { } @Override - public void appendHoverText(ItemStack stack, TooltipContext context, List tooltip, TooltipFlag type) { - super.appendHoverText(stack, context, tooltip, type); + public void appendHoverText(ItemStack stack, @Nullable Level world, List tooltip, TooltipFlag context) { + } } diff --git a/src/main/java/dev/galacticraft/mod/content/item/GCArmorMaterial.java b/src/main/java/dev/galacticraft/mod/content/item/GCArmorMaterial.java new file mode 100644 index 0000000000..f78bcffc41 --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/content/item/GCArmorMaterial.java @@ -0,0 +1,132 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.content.item; + +import com.google.common.base.Suppliers; +import net.minecraft.sounds.SoundEvent; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.world.item.ArmorItem; +import net.minecraft.world.item.ArmorMaterial; +import net.minecraft.world.item.crafting.Ingredient; + +import java.util.function.Supplier; + +public enum GCArmorMaterial implements ArmorMaterial { + SENSOR_GLASSES("sensor_glasses", + 0, + new int[]{0, 0, 0, 0}, + 0, + SoundEvents.ARMOR_EQUIP_IRON, + 0.0f, + () -> Ingredient.of(GCItems.METEORIC_IRON_INGOT), + 0.0f + ), // TODO: add actual functionality + HEAVY_DUTY( + "heavy_duty", + 30, + new int[]{3, 6, 8, 3}, + 9, + SoundEvents.ARMOR_EQUIP_IRON, + 1.0f, + () -> Ingredient.of(GCItems.COMPRESSED_STEEL), + 1.0f + ), + DESH("desh", 42, + new int[]{4, 7, 9, 4}, + 12, + SoundEvents.ARMOR_EQUIP_IRON, + 3.0f, + () -> Ingredient.of(GCItems.DESH_INGOT), + 2.0f + ), + TITANIUM( + "titanium", + 26, new int[]{5, 7, 10, 5}, + 20, + SoundEvents.ARMOR_EQUIP_IRON, + 1.0f, + () -> Ingredient.of(GCItems.COMPRESSED_TITANIUM), + 0.0f + ); + + private static final int[] BASE_DURABILITY = {462, 672, 630, 546}; + private final String name; + private final int durabilityMultiplier; + private final int[] protectionValues; + private final int enchantability; + private final SoundEvent equipSound; + private final float toughness; + private final Supplier repairIngredient; + private final float knockbackResistance; + + GCArmorMaterial(String name, int durabilityMultiplier, int[] protectionValues, int enchantability, SoundEvent equipSound, float toughness, Supplier repairIngredient, float knockbackResistance) { + this.name = name; + this.durabilityMultiplier = durabilityMultiplier; + this.protectionValues = protectionValues; + this.enchantability = enchantability; + this.equipSound = equipSound; + this.toughness = toughness; + this.repairIngredient = Suppliers.memoize(repairIngredient::get); + this.knockbackResistance = knockbackResistance; + } + + @Override + public int getDurabilityForType(ArmorItem.Type type) { + return BASE_DURABILITY[type.getSlot().getIndex()] * this.durabilityMultiplier; + } + + @Override + public int getDefenseForType(ArmorItem.Type type) { + return this.protectionValues[type.getSlot().getIndex()]; + } + + @Override + public int getEnchantmentValue() { + return this.enchantability; + } + + @Override + public SoundEvent getEquipSound() { + return this.equipSound; + } + + @Override + public Ingredient getRepairIngredient() { + return this.repairIngredient.get(); + } + + @Override + public float getKnockbackResistance() { + return this.knockbackResistance; + } + + @Override + public String getName() { + return this.name; + } + + @Override + public float getToughness() { + return this.toughness; + } +} \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/content/item/GCArmorMaterials.java b/src/main/java/dev/galacticraft/mod/content/item/GCArmorMaterials.java deleted file mode 100644 index bc78b8bb02..0000000000 --- a/src/main/java/dev/galacticraft/mod/content/item/GCArmorMaterials.java +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.content.item; - -import dev.galacticraft.mod.Constant; -import net.minecraft.core.Holder; -import net.minecraft.core.Registry; -import net.minecraft.core.registries.BuiltInRegistries; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.sounds.SoundEvent; -import net.minecraft.sounds.SoundEvents; -import net.minecraft.world.item.ArmorItem; -import net.minecraft.world.item.ArmorMaterial; -import net.minecraft.world.item.crafting.Ingredient; - -import java.util.EnumMap; -import java.util.List; -import java.util.function.Supplier; - -public class GCArmorMaterials { - public static final Holder SENSOR_GLASSES = register(Constant.id("sensor_glasses"), 0, 0, 0, 0, 0, 9, SoundEvents.ARMOR_EQUIP_IRON, 0.0F, 0.0F, () -> Ingredient.of(GCItems.METEORIC_IRON_INGOT)); - public static final Holder HEAVY_DUTY = register(Constant.id("heavy_duty"), 3, 6, 8, 3, 30, 9, SoundEvents.ARMOR_EQUIP_IRON, 1.0F, 1.0F, () -> Ingredient.of(GCItems.COMPRESSED_STEEL)); - public static final Holder DESH = register(Constant.id("desh"), 4, 7, 9, 4, 42, 12, SoundEvents.ARMOR_EQUIP_IRON, 3.0F, 2.0F, () -> Ingredient.of(GCItems.DESH_INGOT)); - public static final Holder TITANIUM = register(Constant.id("titanium"), 5, 7, 10, 5, 26, 20, SoundEvents.ARMOR_EQUIP_IRON, 1.0F, 0.0F, () -> Ingredient.of(GCItems.COMPRESSED_TITANIUM)); - - private static Holder register(ResourceLocation id, - int helmet, - int chest, - int leggings, - int boots, - int body, - int enchantability, - Holder equipSound, - float toughness, - float knockbackResistance, - Supplier repairIngredient) { - return register(id, helmet, chest, leggings, boots, body, enchantability, equipSound, toughness, knockbackResistance, repairIngredient, List.of(new ArmorMaterial.Layer(id))); - } - - private static Holder register(ResourceLocation id, - int helmet, - int chest, - int leggings, - int boots, - int body, - int enchantability, - Holder equipSound, - float toughness, - float knockbackResistance, - Supplier repairIngredient, - List layers) { - EnumMap defense = new EnumMap<>(ArmorItem.Type.class); - defense.put(ArmorItem.Type.HELMET, helmet); - defense.put(ArmorItem.Type.CHESTPLATE, chest); - defense.put(ArmorItem.Type.LEGGINGS, leggings); - defense.put(ArmorItem.Type.BOOTS, boots); - defense.put(ArmorItem.Type.BODY, body); - - return Registry.registerForHolder( - BuiltInRegistries.ARMOR_MATERIAL, - id, - new ArmorMaterial(defense, enchantability, equipSound, repairIngredient, layers, toughness, knockbackResistance) - ); - } -} \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/content/item/GCCreativeModeTabs.java b/src/main/java/dev/galacticraft/mod/content/item/GCCreativeModeTabs.java index 8d3e01aecd..13b9ca2351 100644 --- a/src/main/java/dev/galacticraft/mod/content/item/GCCreativeModeTabs.java +++ b/src/main/java/dev/galacticraft/mod/content/item/GCCreativeModeTabs.java @@ -22,7 +22,6 @@ package dev.galacticraft.mod.content.item; -import dev.galacticraft.api.component.GCDataComponents; import dev.galacticraft.api.gas.Gases; import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.content.GCBlockRegistry; @@ -35,8 +34,8 @@ import net.fabricmc.fabric.api.transfer.v1.fluid.FluidVariant; import net.fabricmc.fabric.api.transfer.v1.transaction.Transaction; import net.minecraft.core.Registry; -import net.minecraft.core.component.DataComponents; import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.DyeColor; @@ -48,7 +47,7 @@ public class GCCreativeModeTabs { public static final CreativeModeTab ITEMS_GROUP = FabricItemGroup .builder() - .icon(() -> new ItemStack(CANVAS)) + .icon(() -> new ItemStack(GCItems.CANVAS)) .title(Component.translatable(Translations.ItemGroup.ITEMS)) .displayItems((parameters, output) -> { // todo: add rockets here // GEAR @@ -59,7 +58,7 @@ public class GCCreativeModeTabs { PlaceholderItemStorage itemStorage = new PlaceholderItemStorage(); ContainerItemContext context = ContainerItemContext.ofSingleSlot(itemStorage); - output.accept(SMALL_OXYGEN_TANK);//todo: set directly + output.accept(SMALL_OXYGEN_TANK); itemStorage.setItem(SMALL_OXYGEN_TANK); context.find(FluidStorage.ITEM).insert(FluidVariant.of(Gases.OXYGEN), Long.MAX_VALUE, t); output.accept(itemStorage.variant.toStack()); @@ -80,15 +79,16 @@ public class GCCreativeModeTabs { output.accept(FREQUENCY_MODULE); PARACHUTE.colorMap().values().forEach(output::accept); -// result.accept(SPACE_EMERGENCY_KIT); +// output.accept(SPACE_EMERGENCY_KIT); output.accept(SHIELD_CONTROLLER); // ROCKETS - output.accept(ROCKET); + output.accept(ROCKET.getDefaultInstance()); - var creativeRocket = new ItemStack(ROCKET); - creativeRocket.set(GCDataComponents.CREATIVE, true); - output.accept(creativeRocket); + var rocket = ROCKET.getDefaultInstance(); + CompoundTag tag = rocket.getOrCreateTag(); + tag.putBoolean("creative", true); + output.accept(rocket); // MATERIALS output.accept(TIN_NUGGET); @@ -106,7 +106,6 @@ public class GCCreativeModeTabs { output.accept(RAW_TITANIUM); output.accept(RAW_SILICON); output.accept(LUNAR_SAPPHIRE); - output.accept(OLIVINE_SHARD); output.accept(METEORIC_IRON_INGOT); output.accept(DESH_INGOT); @@ -157,6 +156,7 @@ public class GCCreativeModeTabs { output.accept(AMBIENT_THERMAL_CONTROLLER); // FOOD + output.accept(MOON_BERRIES); output.accept(CHEESE_CURD); output.accept(CHEESE_SLICE); @@ -277,24 +277,6 @@ public class GCCreativeModeTabs { output.accept(MOON_ROCK_STAIRS); output.accept(MOON_ROCK_WALL); - output.accept(MOON_ROCK_BRICK); - output.accept(MOON_ROCK_BRICK_SLAB); - output.accept(MOON_ROCK_BRICK_STAIRS); - output.accept(MOON_ROCK_BRICK_WALL); - - output.accept(CRACKED_MOON_ROCK_BRICK); - output.accept(CRACKED_MOON_ROCK_BRICK_SLAB); - output.accept(CRACKED_MOON_ROCK_BRICK_STAIRS); - output.accept(CRACKED_MOON_ROCK_BRICK_WALL); - - output.accept(POLISHED_MOON_ROCK); - output.accept(POLISHED_MOON_ROCK_SLAB); - output.accept(POLISHED_MOON_ROCK_STAIRS); - output.accept(POLISHED_MOON_ROCK_WALL); - - output.accept(CHISELED_MOON_ROCK_BRICK); - output.accept(MOON_ROCK_PILLAR); - output.accept(COBBLED_MOON_ROCK); output.accept(COBBLED_MOON_ROCK_SLAB); output.accept(COBBLED_MOON_ROCK_STAIRS); @@ -365,7 +347,12 @@ public class GCCreativeModeTabs { for (DyeColor color : DyeColor.values()) { ItemStack stack = new ItemStack(GCBlocks.PARACHEST); - stack.set(DataComponents.BASE_COLOR, color); + CompoundTag itemTag = new CompoundTag(); + CompoundTag blockStateTag = new CompoundTag(); + itemTag.put("BlockStateTag", blockStateTag); + blockStateTag.putString("color", color.getName()); + + stack.setTag(itemTag); output.accept(stack); } @@ -407,10 +394,6 @@ public class GCCreativeModeTabs { output.accept(GALENA_ORE); - output.accept(GCBlocks.OLIVINE_BASALT); - output.accept(GCBlocks.RICH_OLIVINE_BASALT); - output.accept(GCBlocks.OLIVINE_CLUSTER); - // COMPACT MINERAL BLOCKS output.accept(MOON_CHEESE_WHEEL); output.accept(SILICON_BLOCK); @@ -419,7 +402,6 @@ public class GCCreativeModeTabs { output.accept(TITANIUM_BLOCK); output.accept(LEAD_BLOCK); output.accept(LUNAR_SAPPHIRE_BLOCK); - output.accept(GCBlocks.OLIVINE_BLOCK); // MOON VILLAGER SPECIAL output.accept(LUNAR_CARTOGRAPHY_TABLE); diff --git a/src/main/java/dev/galacticraft/mod/content/item/GCTiers.java b/src/main/java/dev/galacticraft/mod/content/item/GCTiers.java deleted file mode 100644 index 0430036b4d..0000000000 --- a/src/main/java/dev/galacticraft/mod/content/item/GCTiers.java +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.content.item; - -import com.google.common.base.Suppliers; -import net.minecraft.tags.BlockTags; -import net.minecraft.tags.TagKey; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.Tier; -import net.minecraft.world.item.Tiers; -import net.minecraft.world.item.crafting.Ingredient; -import net.minecraft.world.level.block.Block; -import org.jetbrains.annotations.NotNull; - -import java.util.function.Supplier; - -public enum GCTiers implements Tier { - STEEL(BlockTags.INCORRECT_FOR_IRON_TOOL, 768, Tiers.IRON.getSpeed(), Tiers.IRON.getAttackDamageBonus(), Tiers.IRON.getEnchantmentValue(), () -> Ingredient.of(new ItemStack(GCItems.COMPRESSED_STEEL))), - DESH(BlockTags.INCORRECT_FOR_DIAMOND_TOOL, 1024, 5.0F, 2.5F, 10, () -> Ingredient.of(new ItemStack(GCItems.DESH_INGOT))), - TITANIUM(BlockTags.INCORRECT_FOR_NETHERITE_TOOL, 760, 14.0F, 4.0F, 16, () -> Ingredient.of(new ItemStack(GCItems.TITANIUM_INGOT))); - - private final TagKey incorrectBlocksForDrops; - private final int durability; - private final float blockBreakSpeed; - private final float attackDamage; - private final int enchantability; - private final Supplier repairIngredient; - - GCTiers(TagKey incorrectBlocksForDrops, int durability, float breakSpeed, float attackDamage, int enchantability, Supplier repairIngredient) { - this.incorrectBlocksForDrops = incorrectBlocksForDrops; - this.durability = durability; - this.blockBreakSpeed = breakSpeed; - this.attackDamage = attackDamage; - this.enchantability = enchantability; - this.repairIngredient = Suppliers.memoize(repairIngredient::get); - } - - @Override - public int getUses() { - return durability; - } - - @Override - public float getSpeed() { - return blockBreakSpeed; - } - - @Override - public float getAttackDamageBonus() { - return attackDamage; - } - - @Override - public @NotNull TagKey getIncorrectBlocksForDrops() { - return this.incorrectBlocksForDrops; - } - - @Override - public int getEnchantmentValue() { - return enchantability; - } - - @Override - public @NotNull Ingredient getRepairIngredient() { - return repairIngredient.get(); - } -} diff --git a/src/main/java/dev/galacticraft/mod/content/item/GCToolMaterial.java b/src/main/java/dev/galacticraft/mod/content/item/GCToolMaterial.java new file mode 100644 index 0000000000..b2893aee1f --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/content/item/GCToolMaterial.java @@ -0,0 +1,83 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.content.item; + +import com.google.common.base.Suppliers; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Tier; +import net.minecraft.world.item.Tiers; +import net.minecraft.world.item.crafting.Ingredient; + +import java.util.function.Supplier; + +public enum GCToolMaterial implements Tier { + STEEL(Tiers.IRON.getLevel(), 768, Tiers.IRON.getSpeed(), Tiers.IRON.getAttackDamageBonus(), Tiers.IRON.getEnchantmentValue(), () -> Ingredient.of(new ItemStack(GCItems.COMPRESSED_STEEL))), + DESH(3, 1024, 5.0F, 2.5F, 10, () -> Ingredient.of(new ItemStack(GCItems.DESH_INGOT))), + TITANIUM(4, 760, 14.0F, 4.0F, 16, () -> Ingredient.of(new ItemStack(GCItems.TITANIUM_INGOT))); + + private final int miningLevel; + private final int durability; + private final float blockBreakSpeed; + private final float attackDamage; + private final int enchantability; + private final Supplier repairIngredient; + + GCToolMaterial(int miningLevel, int durability, float breakSpeed, float attackDamage, int enchantability, Supplier repairIngredient) { + this.miningLevel = miningLevel; + this.durability = durability; + this.blockBreakSpeed = breakSpeed; + this.attackDamage = attackDamage; + this.enchantability = enchantability; + this.repairIngredient = Suppliers.memoize(repairIngredient::get); + } + + @Override + public int getUses() { + return durability; + } + + @Override + public float getSpeed() { + return blockBreakSpeed; + } + + @Override + public float getAttackDamageBonus() { + return attackDamage; + } + + @Override + public int getLevel() { + return miningLevel; + } + + @Override + public int getEnchantmentValue() { + return enchantability; + } + + @Override + public Ingredient getRepairIngredient() { + return repairIngredient.get(); + } +} diff --git a/src/main/java/dev/galacticraft/mod/content/item/GenericLiquidCanister.java b/src/main/java/dev/galacticraft/mod/content/item/GenericLiquidCanister.java new file mode 100644 index 0000000000..d9ddee9cae --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/content/item/GenericLiquidCanister.java @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.content.item; + +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Rarity; +import net.minecraft.world.level.material.Fluid; + +public class GenericLiquidCanister extends Item { + private final Fluid allowedFluid; + + public GenericLiquidCanister(Properties settings, Fluid allowedFluid) { + super(settings); + this.allowedFluid = allowedFluid; + } + + @Override + public int getEnchantmentValue() { + return -1; + } + + @Override + public Rarity getRarity(ItemStack par1ItemStack) { + return Rarity.RARE; + } +} diff --git a/src/main/java/dev/galacticraft/mod/content/item/HotThrowableMeteorChunkItem.java b/src/main/java/dev/galacticraft/mod/content/item/HotThrowableMeteorChunkItem.java index a75645c329..7b9e86c7a9 100644 --- a/src/main/java/dev/galacticraft/mod/content/item/HotThrowableMeteorChunkItem.java +++ b/src/main/java/dev/galacticraft/mod/content/item/HotThrowableMeteorChunkItem.java @@ -22,9 +22,9 @@ package dev.galacticraft.mod.content.item; -import dev.galacticraft.api.component.GCDataComponents; import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.util.Translations; +import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Style; import net.minecraft.world.entity.Entity; @@ -33,10 +33,12 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; import net.minecraft.world.level.Level; +import org.jetbrains.annotations.Nullable; import java.util.List; public class HotThrowableMeteorChunkItem extends ThrowableMeteorChunkItem { + public static String TICKS_UNTIL_COOL = "TicksUntilCool"; public static int MAX_TICKS = 45 * 20; public HotThrowableMeteorChunkItem(Properties settings) { @@ -44,15 +46,15 @@ public HotThrowableMeteorChunkItem(Properties settings) { } @Override - public void appendHoverText(ItemStack stack, TooltipContext context, List tooltip, TooltipFlag type) { - super.appendHoverText(stack, context, tooltip, type); - Integer maybeTicks = stack.get(GCDataComponents.TICKS_UNTIL_COOL); - if (maybeTicks != null) { - int ticksUntilCool = maybeTicks; + public void appendHoverText(ItemStack stack, @Nullable Level level, List tooltipComponents, TooltipFlag isAdvanced) { + CompoundTag tag = stack.getTag(); + if (tag != null) { + int ticksUntilCool = tag.getInt(TICKS_UNTIL_COOL); double secondsUntilCool = ticksUntilCool / 20.0; Style style = Constant.Text.Color.getStorageLevelStyle(1.0 - (double)ticksUntilCool/(double)MAX_TICKS); - tooltip.add(Component.translatable(Translations.Tooltip.TIME_UNTIL_COOL, String.format("%.1f", secondsUntilCool)).setStyle(style)); + tooltipComponents.add(Component.translatable(Translations.Tooltip.TIME_UNTIL_COOL, String.format("%.1f", secondsUntilCool)).setStyle(style)); } + super.appendHoverText(stack, level, tooltipComponents, isAdvanced); } @Override @@ -60,25 +62,21 @@ public void inventoryTick(ItemStack stack, Level level, Entity entity, int slotI if (level.isClientSide()) return; - Integer i = stack.get(GCDataComponents.TICKS_UNTIL_COOL); - int ticks; - if (i == null) { - ticks = MAX_TICKS; - } else { - ticks = i; - } + CompoundTag stackTag = stack.getOrCreateTag(); + + if (!stackTag.contains(TICKS_UNTIL_COOL, CompoundTag.TAG_INT)) + stackTag.putInt(TICKS_UNTIL_COOL, MAX_TICKS); - if (ticks == 0) { + int ticksUntilCool = stackTag.getInt(TICKS_UNTIL_COOL); + if (ticksUntilCool == 0) { if (entity instanceof Player player) { - stack.remove(GCDataComponents.TICKS_UNTIL_COOL); ItemStack cooledStack = new ItemStack(GCItems.THROWABLE_METEOR_CHUNK, stack.getCount()); - cooledStack.applyComponents(stack.getComponents()); - + cooledStack.setTag(stackTag); Inventory inventory = player.getInventory(); inventory.setItem(slotId, new ItemStack(GCItems.THROWABLE_METEOR_CHUNK, stack.getCount())); inventory.setChanged(); } } - stack.set(GCDataComponents.TICKS_UNTIL_COOL, ticks - 1); + stackTag.putInt(TICKS_UNTIL_COOL, ticksUntilCool - 1); } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/content/item/InfiniteBatteryItem.java b/src/main/java/dev/galacticraft/mod/content/item/InfiniteBatteryItem.java index 34a23835c9..25406abd36 100644 --- a/src/main/java/dev/galacticraft/mod/content/item/InfiniteBatteryItem.java +++ b/src/main/java/dev/galacticraft/mod/content/item/InfiniteBatteryItem.java @@ -30,6 +30,8 @@ import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; +import net.minecraft.world.level.Level; +import org.jetbrains.annotations.Nullable; import team.reborn.energy.api.EnergyStorage; import java.util.List; @@ -49,10 +51,10 @@ public boolean isFoil(ItemStack stack) { } @Override - public void appendHoverText(ItemStack stack, TooltipContext context, List tooltip, TooltipFlag type) { + public void appendHoverText(ItemStack stack, @Nullable Level world, List tooltip, TooltipFlag context) { tooltip.add(Component.translatable(Translations.Tooltip.ENERGY_REMAINING, Component.translatable(Translations.Tooltip.INFINITE).setStyle(Constant.Text.Color.getRainbow(ticks)))); tooltip.add(Component.translatable(Translations.Tooltip.CREATIVE_ONLY).setStyle(Constant.Text.Color.LIGHT_PURPLE_STYLE)); - super.appendHoverText(stack, context, tooltip, type); + super.appendHoverText(stack, world, tooltip, context); } @Override diff --git a/src/main/java/dev/galacticraft/mod/content/item/InfiniteOxygenTankItem.java b/src/main/java/dev/galacticraft/mod/content/item/InfiniteOxygenTankItem.java index 2ed002c6e6..53ccd3fd8f 100644 --- a/src/main/java/dev/galacticraft/mod/content/item/InfiniteOxygenTankItem.java +++ b/src/main/java/dev/galacticraft/mod/content/item/InfiniteOxygenTankItem.java @@ -35,6 +35,8 @@ import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; +import net.minecraft.world.level.Level; +import org.jetbrains.annotations.Nullable; import java.util.Iterator; import java.util.List; @@ -62,8 +64,8 @@ public boolean isFoil(ItemStack stack) { } @Override - public void appendHoverText(ItemStack stack, TooltipContext context, List tooltip, TooltipFlag type) { - super.appendHoverText(stack, context, tooltip, type); + public void appendHoverText(ItemStack stack, @Nullable Level world, List tooltip, TooltipFlag context) { + super.appendHoverText(stack, world, tooltip, context); tooltip.add(Component.translatable(Translations.Tooltip.OXYGEN_REMAINING, Component.translatable(Translations.Tooltip.INFINITE).setStyle(Constant.Text.Color.getRainbow(this.ticks)))); tooltip.add(Component.translatable(Translations.Tooltip.CREATIVE_ONLY).setStyle(Constant.Text.Color.LIGHT_PURPLE_STYLE)); } diff --git a/src/main/java/dev/galacticraft/mod/content/item/OxygenTankItem.java b/src/main/java/dev/galacticraft/mod/content/item/OxygenTankItem.java index 99540dd6a0..ba8fdd5b9d 100644 --- a/src/main/java/dev/galacticraft/mod/content/item/OxygenTankItem.java +++ b/src/main/java/dev/galacticraft/mod/content/item/OxygenTankItem.java @@ -88,11 +88,11 @@ public boolean isFoil(ItemStack stack) { } @Override - public void appendHoverText(ItemStack stack, TooltipContext context, List tooltip, TooltipFlag type) { - super.appendHoverText(stack, context, tooltip, type); + public void appendHoverText(ItemStack stack, Level world, List lines, TooltipFlag context) { StorageView storage = (StorageView) ContainerItemContext.withConstant(stack).find(FluidStorage.ITEM); assert storage != null; - tooltip.add(Component.translatable(Translations.Tooltip.OXYGEN_REMAINING, storage.getAmount() + "/" + storage.getCapacity()).setStyle(Constant.Text.Color.getStorageLevelStyle(1.0 - ((double) storage.getAmount() / (double) storage.getCapacity())))); + lines.add(Component.translatable(Translations.Tooltip.OXYGEN_REMAINING, storage.getAmount() + "/" + storage.getCapacity()).setStyle(Constant.Text.Color.getStorageLevelStyle(1.0 - ((double) storage.getAmount() / (double) storage.getCapacity())))); + super.appendHoverText(stack, world, lines, context); } @Override diff --git a/src/main/java/dev/galacticraft/mod/content/item/RocketItem.java b/src/main/java/dev/galacticraft/mod/content/item/RocketItem.java index 32305f3a1e..451918b235 100644 --- a/src/main/java/dev/galacticraft/mod/content/item/RocketItem.java +++ b/src/main/java/dev/galacticraft/mod/content/item/RocketItem.java @@ -22,27 +22,37 @@ package dev.galacticraft.mod.content.item; -import dev.galacticraft.api.component.GCDataComponents; +import dev.galacticraft.api.registry.RocketRegistries; import dev.galacticraft.api.rocket.RocketData; import dev.galacticraft.api.rocket.part.RocketPart; import dev.galacticraft.api.rocket.part.RocketPartTypes; +import dev.galacticraft.impl.rocket.RocketDataImpl; import dev.galacticraft.mod.content.GCBlocks; import dev.galacticraft.mod.content.GCEntityTypes; import dev.galacticraft.mod.content.block.special.launchpad.AbstractLaunchPad; import dev.galacticraft.mod.content.block.special.launchpad.LaunchPadBlockEntity; import dev.galacticraft.mod.content.entity.orbital.RocketEntity; import dev.galacticraft.mod.util.Translations; +import net.fabricmc.api.EnvType; +import net.fabricmc.api.Environment; import net.minecraft.ChatFormatting; import net.minecraft.client.gui.screens.Screen; import net.minecraft.core.BlockPos; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.ListTag; +import net.minecraft.nbt.Tag; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Style; +import net.minecraft.resources.ResourceKey; +import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; import net.minecraft.world.InteractionResult; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; import net.minecraft.world.item.context.UseOnContext; +import net.minecraft.world.level.Level; +import org.jetbrains.annotations.Nullable; import java.util.List; @@ -62,13 +72,13 @@ public InteractionResult useOn(UseOnContext context) { if (context.getLevel() instanceof ServerLevel) { RocketEntity rocket = new RocketEntity(GCEntityTypes.ROCKET, context.getLevel()); - RocketData data = RocketData.fromPatch(context.getItemInHand().getComponentsPatch()); + CompoundTag tag = context.getItemInHand().getTag(); + RocketData data = RocketData.fromNbt(tag); rocket.setData(data); rocket.setPad(pad); rocket.setOldPosAndRot(); rocket.absMoveTo(pos.getX() + 0.5D, pos.getY() + 0.5D, pos.getZ() + 0.5D); - boolean creative = context.getItemInHand().getComponents().getOrDefault(GCDataComponents.CREATIVE, false); - if (creative) { + if (tag.contains("creative")) { rocket.setFuel(Long.MAX_VALUE); } context.getLevel().addFreshEntity(rocket); @@ -86,22 +96,40 @@ public InteractionResult useOn(UseOnContext context) { } @Override - public void appendHoverText(ItemStack stack, TooltipContext context, List tooltip, TooltipFlag type) { - super.appendHoverText(stack, context, tooltip, type); + public ItemStack getDefaultInstance() { + var itemStack = super.getDefaultInstance(); + itemStack.setTag(RocketDataImpl.DEFAULT_ROCKET.copy()); + return itemStack; + } + + @Override + @Environment(EnvType.CLIENT) + public void appendHoverText(ItemStack stack, @Nullable Level world, List tooltip, TooltipFlag context) { + super.appendHoverText(stack, world, tooltip, context); - boolean creative = stack.getComponents().getOrDefault(GCDataComponents.CREATIVE, false); - if (creative) { + CompoundTag tag = stack.getOrCreateTag(); + if (tag.contains("creative")) tooltip.add(Component.literal("Creative Only").setStyle(Style.EMPTY.withColor(ChatFormatting.RED))); - } if (Screen.hasShiftDown()) { - RocketData data = RocketData.fromPatch(stack.getComponentsPatch()); - tooltip.add(Component.translatable(Translations.Ui.COLOR).append(Component.literal(": #" + Integer.toHexString(data.color())).withColor(data.color()))); - if (data.cone() != null) tooltip.add(RocketPartTypes.CONE.name.copy().append(" ").append(RocketPart.getName(data.cone().key())).setStyle(Style.EMPTY.withColor(ChatFormatting.GRAY))); - if (data.body() != null) tooltip.add(RocketPartTypes.BODY.name.copy().append(" ").append(RocketPart.getName(data.body().key())).setStyle(Style.EMPTY.withColor(ChatFormatting.GRAY))); - if (data.fin() != null) tooltip.add(RocketPartTypes.FIN.name.copy().append(" ").append(RocketPart.getName(data.fin().key())).setStyle(Style.EMPTY.withColor(ChatFormatting.GRAY))); - if (data.booster() != null) tooltip.add(RocketPartTypes.BOOSTER.name.copy().append(" ").append(RocketPart.getName(data.booster().key())).setStyle(Style.EMPTY.withColor(ChatFormatting.GRAY))); - if (data.engine() != null) tooltip.add(RocketPartTypes.ENGINE.name.copy().append(" ").append(RocketPart.getName(data.engine().key())).setStyle(Style.EMPTY.withColor(ChatFormatting.GRAY))); - if (data.upgrade() != null) tooltip.add(RocketPartTypes.UPGRADE.name.copy().append(" ").append(RocketPart.getName(data.upgrade().key())).setStyle(Style.EMPTY.withColor(ChatFormatting.GRAY))); + if (tag.contains("color") && tag.contains("cone")) { +// tooltip.add(Component.translatable("tooltip.galacticraft.tier", tag.getInt("tier")).setStyle(Style.EMPTY.withColor(ChatFormatting.DARK_GRAY))); + tooltip.add(Component.translatable(Translations.Ui.COLOR).append(": #" + Integer.toHexString(tag.getInt("color")))); + ResourceLocation id = new ResourceLocation(tag.getString("cone")); + tooltip.add(RocketPartTypes.CONE.name.copy().append(" ").append(RocketPart.getName(ResourceKey.create(RocketRegistries.ROCKET_CONE, id))).setStyle(Style.EMPTY.withColor(ChatFormatting.GRAY))); + id = new ResourceLocation(tag.getString("body")); + tooltip.add(RocketPartTypes.BODY.name.copy().append(" ").append(RocketPart.getName(ResourceKey.create(RocketRegistries.ROCKET_BODY, id))).setStyle(Style.EMPTY.withColor(ChatFormatting.GRAY))); + id = new ResourceLocation(tag.getString("fin")); + tooltip.add(RocketPartTypes.FIN.name.copy().append(" ").append(RocketPart.getName(ResourceKey.create(RocketRegistries.ROCKET_FIN, id))).setStyle(Style.EMPTY.withColor(ChatFormatting.GRAY))); + id = new ResourceLocation(tag.getString("booster")); + tooltip.add(RocketPartTypes.BOOSTER.name.copy().append(" ").append(RocketPart.getName(ResourceKey.create(RocketRegistries.ROCKET_BOOSTER, id))).setStyle(Style.EMPTY.withColor(ChatFormatting.GRAY))); + id = new ResourceLocation(tag.getString("engine")); + tooltip.add(RocketPartTypes.ENGINE.name.copy().append(" ").append(RocketPart.getName(ResourceKey.create(RocketRegistries.ROCKET_ENGINE, id))).setStyle(Style.EMPTY.withColor(ChatFormatting.GRAY))); + ListTag list = tag.getList("upgrades", Tag.TAG_STRING); + for (int i = 0; i < list.size(); i++) { + id = new ResourceLocation(list.getString(i)); + tooltip.add(RocketPartTypes.CONE.name.copy().append(" ").append(RocketPart.getName(ResourceKey.create(RocketRegistries.ROCKET_UPGRADE, id))).setStyle(Style.EMPTY.withColor(ChatFormatting.GRAY))); + } + } } else { tooltip.add(Component.translatable(Translations.Tooltip.PRESS_SHIFT).setStyle(Style.EMPTY.withColor(ChatFormatting.GRAY))); } diff --git a/src/main/java/dev/galacticraft/mod/content/item/SchematicItem.java b/src/main/java/dev/galacticraft/mod/content/item/SchematicItem.java index ae06eddde8..d69aefb97d 100644 --- a/src/main/java/dev/galacticraft/mod/content/item/SchematicItem.java +++ b/src/main/java/dev/galacticraft/mod/content/item/SchematicItem.java @@ -22,10 +22,11 @@ package dev.galacticraft.mod.content.item; -import dev.galacticraft.api.component.GCDataComponents; import dev.galacticraft.api.item.Schematic; import dev.galacticraft.api.rocket.part.RocketPart; +import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceKey; +import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import org.jetbrains.annotations.NotNull; @@ -38,9 +39,13 @@ public SchematicItem(Properties settings) { @Override public @Nullable ResourceKey> getPart(@NotNull ItemStack stack) { - ResourceKey resourceKey = stack.get(GCDataComponents.KEY); - if (resourceKey != null) { - return (ResourceKey>) resourceKey; + CompoundTag tag = stack.getTag(); + if (tag != null) { + String registry = tag.getString("registry"); + String location = tag.getString("location"); + if (!registry.isEmpty() && !location.isEmpty()) { + return ResourceKey.create(ResourceKey.createRegistryKey(new ResourceLocation(registry)), new ResourceLocation(location)); + } } return null; } diff --git a/src/main/java/dev/galacticraft/mod/content/item/StandardWrenchItem.java b/src/main/java/dev/galacticraft/mod/content/item/StandardWrenchItem.java index c8957d4f88..92d64dc0ca 100644 --- a/src/main/java/dev/galacticraft/mod/content/item/StandardWrenchItem.java +++ b/src/main/java/dev/galacticraft/mod/content/item/StandardWrenchItem.java @@ -29,7 +29,6 @@ import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.network.chat.Component; -import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.entity.player.Player; @@ -43,9 +42,7 @@ import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.properties.EnumProperty; import net.minecraft.world.level.block.state.properties.Property; -import org.jetbrains.annotations.NotNull; -import java.util.Collection; import java.util.List; public class StandardWrenchItem extends Item { @@ -62,42 +59,36 @@ private static T cycle(Iterable values, T obj, boolean reverse) { } @Override - public @NotNull InteractionResult useOn(UseOnContext context) { + public InteractionResult useOn(UseOnContext context) { Player player = context.getPlayer(); Level world = context.getLevel(); if (!world.isClientSide && player != null) { BlockPos pos = context.getClickedPos(); - this.use(player, world.getBlockState(pos), world, pos, context.getHand(), context.getItemInHand()); + this.use(player, world.getBlockState(pos), world, pos, context.getItemInHand()); } return InteractionResult.SUCCESS; } - private void use(Player player, BlockState state, LevelAccessor world, BlockPos pos, InteractionHand hand, ItemStack stack) { + private void use(Player player, BlockState state, LevelAccessor world, BlockPos pos, ItemStack stack) { Block block = state.getBlock(); - if (block.getStateDefinition().getProperty("facing") instanceof EnumProperty property) { - Collection possibleValues = property.getPossibleValues(); - if (possibleValues.size() <= Direction.values().length) { - for (Object value : possibleValues) { - if (!(value instanceof Direction)) { - return; - } - } - - BlockState newState = cycle(state, property, player.isShiftKeyDown()); - world.setBlock(pos, newState, 18); - stack.hurtAndBreak(2, player, hand == InteractionHand.MAIN_HAND ? EquipmentSlot.MAINHAND : EquipmentSlot.OFFHAND); - } - } + if (block.getStateDefinition().getProperty("facing") instanceof EnumProperty property && property.getPossibleValues().contains(Direction.NORTH)) { + BlockState newState = cycle(state, property, player.isShiftKeyDown()); + world.setBlock(pos, newState, 18); + stack.hurtAndBreak(2, player, (entity) -> entity.broadcastBreakEvent(EquipmentSlot.MAINHAND)); + }/* else if (block.getStateDefinition().getProperty("axis") instanceof EnumProperty property && property.getPossibleValues().contains(Direction.Axis.X)) { + BlockState newState = cycle(state, property, player.isShiftKeyDown()); + world.setBlock(pos, newState, 18); + stack.hurtAndBreak(2, player, (entity) -> entity.broadcastBreakEvent(EquipmentSlot.MAINHAND)); + }*/ } @Override - public void appendHoverText(ItemStack stack, TooltipContext context, List tooltip, TooltipFlag type) { - super.appendHoverText(stack, context, tooltip, type); + public void appendHoverText(ItemStack stack, Level world, List lines, TooltipFlag context) { if (Screen.hasShiftDown()) { - tooltip.add(Component.translatable(Translations.Tooltip.STANDARD_WRENCH).setStyle(Constant.Text.Color.GRAY_STYLE)); + lines.add(Component.translatable(Translations.Tooltip.STANDARD_WRENCH).setStyle(Constant.Text.Color.GRAY_STYLE)); } else { - tooltip.add(Component.translatable(Translations.Tooltip.PRESS_SHIFT).setStyle(Constant.Text.Color.GRAY_STYLE)); + lines.add(Component.translatable(Translations.Tooltip.PRESS_SHIFT).setStyle(Constant.Text.Color.GRAY_STYLE)); } } } diff --git a/src/main/java/dev/galacticraft/mod/data/GCEntityLoot.java b/src/main/java/dev/galacticraft/mod/data/GCEntityLoot.java index 9a953b7685..d8f1d5fffa 100644 --- a/src/main/java/dev/galacticraft/mod/data/GCEntityLoot.java +++ b/src/main/java/dev/galacticraft/mod/data/GCEntityLoot.java @@ -26,7 +26,7 @@ import dev.galacticraft.mod.content.GCRegistry; import dev.galacticraft.mod.data.loot.GCEntityLootSubProvider; import net.minecraft.advancements.critereon.EntityPredicate; -import net.minecraft.core.HolderLookup; +import net.minecraft.data.loot.EntityLootSubProvider; import net.minecraft.tags.EntityTypeTags; import net.minecraft.tags.ItemTags; import net.minecraft.world.entity.EntityType; @@ -37,21 +37,18 @@ import net.minecraft.world.level.storage.loot.LootTable; import net.minecraft.world.level.storage.loot.entries.LootItem; import net.minecraft.world.level.storage.loot.entries.TagEntry; -import net.minecraft.world.level.storage.loot.functions.EnchantedCountIncreaseFunction; +import net.minecraft.world.level.storage.loot.functions.LootingEnchantFunction; import net.minecraft.world.level.storage.loot.functions.SetItemCountFunction; import net.minecraft.world.level.storage.loot.functions.SmeltItemFunction; import net.minecraft.world.level.storage.loot.predicates.LootItemEntityPropertyCondition; import net.minecraft.world.level.storage.loot.predicates.LootItemKilledByPlayerCondition; -import net.minecraft.world.level.storage.loot.predicates.LootItemRandomChanceWithEnchantedBonusCondition; +import net.minecraft.world.level.storage.loot.predicates.LootItemRandomChanceWithLootingCondition; import net.minecraft.world.level.storage.loot.providers.number.ConstantValue; import net.minecraft.world.level.storage.loot.providers.number.UniformGenerator; public class GCEntityLoot extends GCEntityLootSubProvider { - private final HolderLookup.Provider lookup; - - protected GCEntityLoot(HolderLookup.Provider lookup) { - super(FeatureFlags.REGISTRY.allFlags(), lookup); - this.lookup = lookup; + protected GCEntityLoot() { + super(FeatureFlags.REGISTRY.allFlags()); } @Override @@ -65,7 +62,7 @@ public void generate() { .add( LootItem.lootTableItem(Items.ROTTEN_FLESH) .apply(SetItemCountFunction.setCount(UniformGenerator.between(0.0F, 2.0F))) - .apply(EnchantedCountIncreaseFunction.lootingMultiplier(this.lookup, UniformGenerator.between(0.0F, 1.0F))) + .apply(LootingEnchantFunction.lootingMultiplier(UniformGenerator.between(0.0F, 1.0F))) ) ) .withPool( @@ -75,10 +72,10 @@ public void generate() { .add(LootItem.lootTableItem(Items.CARROT)) .add( LootItem.lootTableItem(Items.POTATO) - .apply(SmeltItemFunction.smelted().when(this.shouldSmeltLoot())) + .apply(SmeltItemFunction.smelted().when(LootItemEntityPropertyCondition.hasProperties(LootContext.EntityTarget.THIS, ENTITY_ON_FIRE))) ) .when(LootItemKilledByPlayerCondition.killedByPlayer()) - .when(LootItemRandomChanceWithEnchantedBonusCondition.randomChanceAndLootingBoost(this.lookup, 0.025F, 0.01F)) + .when(LootItemRandomChanceWithLootingCondition.randomChanceAndLootingBoost(0.025F, 0.01F)) ) ); add( @@ -90,13 +87,13 @@ public void generate() { .add( LootItem.lootTableItem(Items.GUNPOWDER) .apply(SetItemCountFunction.setCount(UniformGenerator.between(0.0F, 2.0F))) - .apply(EnchantedCountIncreaseFunction.lootingMultiplier(this.lookup, UniformGenerator.between(0.0F, 1.0F))) + .apply(LootingEnchantFunction.lootingMultiplier(UniformGenerator.between(0.0F, 1.0F))) ) ) .withPool( LootPool.lootPool() .add(TagEntry.expandTag(ItemTags.CREEPER_DROP_MUSIC_DISCS)) - .when(LootItemEntityPropertyCondition.hasProperties(LootContext.EntityTarget.ATTACKER, EntityPredicate.Builder.entity().of(EntityTypeTags.SKELETONS))) + .when(LootItemEntityPropertyCondition.hasProperties(LootContext.EntityTarget.KILLER, EntityPredicate.Builder.entity().of(EntityTypeTags.SKELETONS))) ) ); add( @@ -108,7 +105,7 @@ public void generate() { .add( LootItem.lootTableItem(Items.ARROW) .apply(SetItemCountFunction.setCount(UniformGenerator.between(0.0F, 2.0F))) - .apply(EnchantedCountIncreaseFunction.lootingMultiplier(this.lookup, UniformGenerator.between(0.0F, 1.0F))) + .apply(LootingEnchantFunction.lootingMultiplier(UniformGenerator.between(0.0F, 1.0F))) ) ) .withPool( @@ -117,7 +114,7 @@ public void generate() { .add( LootItem.lootTableItem(Items.BONE) .apply(SetItemCountFunction.setCount(UniformGenerator.between(0.0F, 2.0F))) - .apply(EnchantedCountIncreaseFunction.lootingMultiplier(this.lookup, UniformGenerator.between(0.0F, 1.0F))) + .apply(LootingEnchantFunction.lootingMultiplier(UniformGenerator.between(0.0F, 1.0F))) ) ) ); @@ -130,7 +127,7 @@ public void generate() { .add( LootItem.lootTableItem(Items.STRING) .apply(SetItemCountFunction.setCount(UniformGenerator.between(0.0F, 2.0F))) - .apply(EnchantedCountIncreaseFunction.lootingMultiplier(this.lookup, UniformGenerator.between(0.0F, 1.0F))) + .apply(LootingEnchantFunction.lootingMultiplier(UniformGenerator.between(0.0F, 1.0F))) ) ) .withPool( @@ -139,7 +136,7 @@ public void generate() { .add( LootItem.lootTableItem(Items.SPIDER_EYE) .apply(SetItemCountFunction.setCount(UniformGenerator.between(-1.0F, 1.0F))) - .apply(EnchantedCountIncreaseFunction.lootingMultiplier(this.lookup, UniformGenerator.between(0.0F, 1.0F))) + .apply(LootingEnchantFunction.lootingMultiplier(UniformGenerator.between(0.0F, 1.0F))) ) .when(LootItemKilledByPlayerCondition.killedByPlayer()) ) @@ -155,7 +152,7 @@ public void generate() { .add( LootItem.lootTableItem(Items.EMERALD) .apply(SetItemCountFunction.setCount(UniformGenerator.between(0.0F, 1.0F))) - .apply(EnchantedCountIncreaseFunction.lootingMultiplier(this.lookup, UniformGenerator.between(0.0F, 1.0F))) + .apply(LootingEnchantFunction.lootingMultiplier(UniformGenerator.between(0.0F, 1.0F))) ) .when(LootItemKilledByPlayerCondition.killedByPlayer()) ) @@ -169,7 +166,7 @@ public void generate() { .add( LootItem.lootTableItem(Items.EMERALD) .apply(SetItemCountFunction.setCount(UniformGenerator.between(0.0F, 1.0F))) - .apply(EnchantedCountIncreaseFunction.lootingMultiplier(this.lookup, UniformGenerator.between(0.0F, 1.0F))) + .apply(LootingEnchantFunction.lootingMultiplier(UniformGenerator.between(0.0F, 1.0F))) ) .when(LootItemKilledByPlayerCondition.killedByPlayer()) ) diff --git a/src/main/java/dev/galacticraft/mod/data/GCLootTableProvider.java b/src/main/java/dev/galacticraft/mod/data/GCLootTableProvider.java index 65b003c389..c77e6d3bd8 100644 --- a/src/main/java/dev/galacticraft/mod/data/GCLootTableProvider.java +++ b/src/main/java/dev/galacticraft/mod/data/GCLootTableProvider.java @@ -23,23 +23,21 @@ package dev.galacticraft.mod.data; import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput; -import net.minecraft.core.HolderLookup; import net.minecraft.data.loot.LootTableProvider; +import net.minecraft.world.level.storage.loot.BuiltInLootTables; import net.minecraft.world.level.storage.loot.parameters.LootContextParamSets; import java.util.List; import java.util.Set; -import java.util.concurrent.CompletableFuture; public class GCLootTableProvider { - public static LootTableProvider create(FabricDataOutput output, CompletableFuture lookup) { + public static LootTableProvider create(FabricDataOutput output) { return new LootTableProvider( output, Set.of(), List.of( new LootTableProvider.SubProviderEntry(GCEntityLoot::new, LootContextParamSets.ENTITY) - ), - lookup + ) ); } } diff --git a/src/main/java/dev/galacticraft/mod/data/GCTranslationProvider.java b/src/main/java/dev/galacticraft/mod/data/GCTranslationProvider.java index 2bab3eff63..59d712b602 100644 --- a/src/main/java/dev/galacticraft/mod/data/GCTranslationProvider.java +++ b/src/main/java/dev/galacticraft/mod/data/GCTranslationProvider.java @@ -130,9 +130,6 @@ protected void generateTranslations(HolderLookup.@NotNull Provider registries) { this.add(RecipeCategory.CIRCUIT_FABRICATOR, "Circuit Fabricating"); this.add(RecipeCategory.COMPRESSOR, "Compressing"); - - this.add(BannerPattern.ROCKET, "Rocket"); - this.add(Chat.BED_FAIL, "Uh oh, what if the oxygen runs out when I am asleep? I'll need a Cryogenic Chamber to sleep in space!"); this.add(Chat.ROCKET_WARNING, "Press again to launch."); diff --git a/src/main/java/dev/galacticraft/mod/data/content/BootstrapDataProvider.java b/src/main/java/dev/galacticraft/mod/data/content/BootstrapDataProvider.java index 461acd195d..066fd12c90 100644 --- a/src/main/java/dev/galacticraft/mod/data/content/BootstrapDataProvider.java +++ b/src/main/java/dev/galacticraft/mod/data/content/BootstrapDataProvider.java @@ -27,7 +27,7 @@ import net.fabricmc.fabric.api.datagen.v1.FabricDataGenerator; import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput; import net.minecraft.core.HolderLookup; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import org.jetbrains.annotations.Contract; import org.jetbrains.annotations.NotNull; @@ -36,14 +36,14 @@ public class BootstrapDataProvider extends GCDynamicRegistryProvider { private final String name; - private final Consumer> consumer; + private final Consumer> consumer; @Contract(pure = true) - public static FabricDataGenerator.Pack.@NotNull RegistryDependentFactory> create(String name, Consumer> bootstrap) { + public static FabricDataGenerator.Pack.@NotNull RegistryDependentFactory> create(String name, Consumer> bootstrap) { return (output, registriesFuture) -> new BootstrapDataProvider<>(output, registriesFuture, name, bootstrap); } - private BootstrapDataProvider(FabricDataOutput output, CompletableFuture future, String name, Consumer> consumer) { + private BootstrapDataProvider(FabricDataOutput output, CompletableFuture future, String name, Consumer> consumer) { super(output, future); this.name = name; this.consumer = consumer; diff --git a/src/main/java/dev/galacticraft/mod/data/content/GCLevelStemProvider.java b/src/main/java/dev/galacticraft/mod/data/content/GCLevelStemProvider.java index 15e7177fb1..260599c32f 100644 --- a/src/main/java/dev/galacticraft/mod/data/content/GCLevelStemProvider.java +++ b/src/main/java/dev/galacticraft/mod/data/content/GCLevelStemProvider.java @@ -31,7 +31,7 @@ import net.minecraft.data.CachedOutput; import net.minecraft.data.DataProvider; import net.minecraft.data.PackOutput; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.resources.RegistryOps; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; @@ -46,9 +46,9 @@ public class GCLevelStemProvider implements DataProvider { private final PackOutput.PathProvider path; private final CompletableFuture registriesFuture; - private final Consumer> bootstrap; + private final Consumer> bootstrap; - public GCLevelStemProvider(FabricDataOutput output, CompletableFuture registriesFuture, Consumer> bootstrap) { + public GCLevelStemProvider(FabricDataOutput output, CompletableFuture registriesFuture, Consumer> bootstrap) { this.path = output.createPathProvider(PackOutput.Target.DATA_PACK, "dimension"); this.registriesFuture = registriesFuture; this.bootstrap = bootstrap; @@ -58,7 +58,7 @@ public GCLevelStemProvider(FabricDataOutput output, CompletableFuture run(CachedOutput output) { return this.registriesFuture.thenCompose(registries -> { Map entries = new HashMap<>(); - this.bootstrap.accept(new BootstrapContext<>() { + this.bootstrap.accept(new BootstapContext<>() { @Override public Holder.Reference register(ResourceKey resourceKey, LevelStem object, Lifecycle lifecycle) { entries.put(resourceKey.location(), object); @@ -74,7 +74,7 @@ public HolderGetter lookup(ResourceKey LevelStem.CODEC.encodeStart(ops, entry.getValue()).getOrThrow()) + var completableFuture = CompletableFuture.supplyAsync(() -> LevelStem.CODEC.encodeStart(ops, entry.getValue()).get().orThrow()) .thenCompose(json -> DataProvider.saveStable(output, json, this.path.json(entry.getKey()))); futures[i++] = completableFuture; } diff --git a/src/main/java/dev/galacticraft/mod/data/gen/SatelliteChunkGenerator.java b/src/main/java/dev/galacticraft/mod/data/gen/SatelliteChunkGenerator.java index 06e5c73814..a8b6756e2a 100644 --- a/src/main/java/dev/galacticraft/mod/data/gen/SatelliteChunkGenerator.java +++ b/src/main/java/dev/galacticraft/mod/data/gen/SatelliteChunkGenerator.java @@ -26,7 +26,6 @@ import com.mojang.serialization.Codec; import com.mojang.serialization.DataResult; import com.mojang.serialization.DynamicOps; -import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.core.*; import net.minecraft.core.registries.Registries; @@ -56,17 +55,16 @@ import net.minecraft.world.level.levelgen.blending.Blender; import net.minecraft.world.level.levelgen.structure.Structure; import net.minecraft.world.level.levelgen.structure.StructureSet; -import net.minecraft.world.level.levelgen.structure.templatesystem.LiquidSettings; import net.minecraft.world.level.levelgen.structure.templatesystem.StructurePlaceSettings; import net.minecraft.world.level.levelgen.structure.templatesystem.StructureTemplate; import net.minecraft.world.level.levelgen.structure.templatesystem.StructureTemplateManager; import org.jetbrains.annotations.ApiStatus; -import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.List; import java.util.Optional; import java.util.concurrent.CompletableFuture; +import java.util.concurrent.Executor; import java.util.stream.Stream; @ApiStatus.Internal @@ -91,7 +89,7 @@ public DataResult encode(StructureTemplate input, DynamicOps ops, T pr return DataResult.success(NbtOps.INSTANCE.convertTo(ops, input.save(new CompoundTag()))); } }; - public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group( + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( Biome.CODEC.fieldOf("biome").forGetter(SatelliteChunkGenerator::getBiome), STRUCTURE_CODEC.fieldOf("structure").forGetter(SatelliteChunkGenerator::getStructure) ).apply(instance, SatelliteChunkGenerator::new)); @@ -111,7 +109,7 @@ public StructureTemplate getStructure() { } @Override - protected @NotNull MapCodec codec() { + protected Codec codec() { return CODEC; } @@ -128,14 +126,14 @@ public void spawnOriginalMobs(WorldGenRegion region) { } @Override - public CompletableFuture createBiomes(RandomState noiseConfig, Blender blender, StructureManager structureAccessor, ChunkAccess chunkAccess) { - return super.createBiomes(noiseConfig, blender, structureAccessor, chunkAccess); + public CompletableFuture createBiomes(Executor executor, RandomState randomState, Blender blender, StructureManager structureManager, ChunkAccess chunkAccess) { + return CompletableFuture.completedFuture(chunkAccess); } @Override public void applyBiomeDecoration(WorldGenLevel world, ChunkAccess chunk, StructureManager structureAccessor) { if (chunk.getPos().x == 0 && chunk.getPos().z == 0) { - this.structure.placeInWorld(world, new BlockPos(0, 60, 0), new BlockPos(0, 60, 0), new StructurePlaceSettings().setIgnoreEntities(true).setLiquidSettings(LiquidSettings.APPLY_WATERLOGGING).setRandom(world.getRandom()), world.getRandom(), 0); + this.structure.placeInWorld(world, new BlockPos(0, 60, 0), new BlockPos(0, 60, 0), new StructurePlaceSettings().setIgnoreEntities(true).setKeepLiquids(true).setRandom(world.getRandom()), world.getRandom(), 0); } } @@ -163,7 +161,7 @@ public void createReferences(WorldGenLevel world, StructureManager accessor, Chu } @Override - public @NotNull CompletableFuture fillFromNoise(Blender blender, RandomState noiseConfig, StructureManager structureAccessor, ChunkAccess chunk) { + public CompletableFuture fillFromNoise(Executor executor, Blender arg, RandomState noiseConfig, StructureManager structureAccessor, ChunkAccess chunk) { return CompletableFuture.completedFuture(chunk); } @@ -194,7 +192,7 @@ public Pair> findNearestMapStructure(ServerLevel wor } @Override - public Optional>> getTypeNameForDataFixer() { + public Optional>> getTypeNameForDataFixer() { return super.getTypeNameForDataFixer(); } diff --git a/src/main/java/dev/galacticraft/mod/data/loot/GCEntityLootSubProvider.java b/src/main/java/dev/galacticraft/mod/data/loot/GCEntityLootSubProvider.java index bb806a48ef..c8283e3de7 100644 --- a/src/main/java/dev/galacticraft/mod/data/loot/GCEntityLootSubProvider.java +++ b/src/main/java/dev/galacticraft/mod/data/loot/GCEntityLootSubProvider.java @@ -24,9 +24,8 @@ import com.google.common.collect.Sets; import dev.galacticraft.mod.content.GCRegistry; -import net.minecraft.core.HolderLookup; import net.minecraft.data.loot.EntityLootSubProvider; -import net.minecraft.resources.ResourceKey; +import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.EntityType; import net.minecraft.world.entity.MobCategory; import net.minecraft.world.flag.FeatureFlagSet; @@ -43,30 +42,30 @@ public abstract class GCEntityLootSubProvider extends EntityLootSubProvider { protected final FeatureFlagSet allowed; protected final FeatureFlagSet required; - protected GCEntityLootSubProvider(FeatureFlagSet allowed, HolderLookup.Provider lookup) { - this(allowed, allowed, lookup); + protected GCEntityLootSubProvider(FeatureFlagSet allowed) { + this(allowed, allowed); } - protected GCEntityLootSubProvider(FeatureFlagSet allowed, FeatureFlagSet required, HolderLookup.Provider lookup) { - super(allowed, required, lookup); + protected GCEntityLootSubProvider(FeatureFlagSet allowed, FeatureFlagSet required) { + super(allowed, required); this.allowed = allowed; this.required = required; } @Override - public void generate(BiConsumer, LootTable.Builder> biConsumer) { + public void generate(BiConsumer biConsumer) { this.generate(); - Set> set = Sets.newHashSet(); + Set set = Sets.newHashSet(); getRegistry().getEntries() .forEach( entityType -> { EntityType entityType2 = entityType.value(); if (entityType2.isEnabled(this.allowed)) { if (canHaveLootTable(entityType2)) { - Map, LootTable.Builder> map = this.map.remove(entityType2); - ResourceKey key = entityType2.getDefaultLootTable(); - if (!key.equals(BuiltInLootTables.EMPTY) && entityType2.isEnabled(this.required) && (map == null || !map.containsKey(key))) { - throw new IllegalStateException(String.format(Locale.ROOT, "Missing loottable '%s' for '%s'", key, entityType.key().location())); + Map map = this.map.remove(entityType2); + ResourceLocation resourceLocation = entityType2.getDefaultLootTable(); + if (!resourceLocation.equals(BuiltInLootTables.EMPTY) && entityType2.isEnabled(this.required) && (map == null || !map.containsKey(resourceLocation))) { + throw new IllegalStateException(String.format(Locale.ROOT, "Missing loottable '%s' for '%s'", resourceLocation, entityType.key().location())); } if (map != null) { @@ -79,13 +78,13 @@ public void generate(BiConsumer, LootTable.Builder> biCon }); } } else { - Map, LootTable.Builder> map = this.map.remove(entityType2); + Map map = this.map.remove(entityType2); if (map != null) { throw new IllegalStateException( String.format( Locale.ROOT, "Weird loottables '%s' for '%s', not a LivingEntity so should not have loot", - map.keySet().stream().map(ResourceKey::toString).collect(Collectors.joining(",")), + map.keySet().stream().map(ResourceLocation::toString).collect(Collectors.joining(",")), entityType.key().location() ) ); diff --git a/src/main/java/dev/galacticraft/mod/data/model/GCBlockFamilies.java b/src/main/java/dev/galacticraft/mod/data/model/GCBlockFamilies.java index 96929b6712..e48c08ec47 100644 --- a/src/main/java/dev/galacticraft/mod/data/model/GCBlockFamilies.java +++ b/src/main/java/dev/galacticraft/mod/data/model/GCBlockFamilies.java @@ -55,21 +55,6 @@ public class GCBlockFamilies { .stairs(MOON_ROCK_STAIRS) .wall(MOON_ROCK_WALL) .getFamily(); - public static final BlockFamily MOON_ROCK_BRICKS = builder(MOON_ROCK_BRICK) - .slab(MOON_ROCK_BRICK_SLAB) - .stairs(MOON_ROCK_BRICK_STAIRS) - .wall(MOON_ROCK_BRICK_WALL) - .getFamily(); - public static final BlockFamily CRACKED_MOON_ROCK_BRICKS = builder(CRACKED_MOON_ROCK_BRICK) - .slab(CRACKED_MOON_ROCK_BRICK_SLAB) - .stairs(CRACKED_MOON_ROCK_BRICK_STAIRS) - .wall(CRACKED_MOON_ROCK_BRICK_WALL) - .getFamily(); - public static final BlockFamily POLISHED_MOON_ROCKS = builder(POLISHED_MOON_ROCK) - .slab(POLISHED_MOON_ROCK_SLAB) - .stairs(POLISHED_MOON_ROCK_STAIRS) - .wall(POLISHED_MOON_ROCK_WALL) - .getFamily(); public static final BlockFamily COBBLED_MOON_ROCKS = builder(COBBLED_MOON_ROCK) .slab(COBBLED_MOON_ROCK_SLAB) .stairs(COBBLED_MOON_ROCK_STAIRS) diff --git a/src/main/java/dev/galacticraft/mod/data/model/GCModelProvider.java b/src/main/java/dev/galacticraft/mod/data/model/GCModelProvider.java index 6dce63db52..9b382910f9 100644 --- a/src/main/java/dev/galacticraft/mod/data/model/GCModelProvider.java +++ b/src/main/java/dev/galacticraft/mod/data/model/GCModelProvider.java @@ -71,7 +71,9 @@ public void generateBlockStateModels(BlockModelGenerators generator) { List decorations = GCBlocks.BLOCKS.getDecorations(); - decorations.forEach(decorationSet -> putDetailedTextured(generator, decorationSet.detailedBlock())); + decorations.forEach(decorationSet -> { + putDetailedTextured(generator, decorationSet.detailedBlock()); + }); generator.texturedModels.put(GCBlocks.LUNASLATE, TexturedModel.COLUMN_WITH_WALL.get(GCBlocks.LUNASLATE)); GCBlockFamilies.getAllFamilies() @@ -97,9 +99,6 @@ public void generateBlockStateModels(BlockModelGenerators generator) { createRotatedDelegate(generator, GCBlocks.MOON_DIRT_PATH); generator.createTrivialCube(GCBlocks.MOON_SURFACE_ROCK); generator.createTrivialCube(GCBlocks.MOON_DUNGEON_BRICK); - generator.createTrivialCube(GCBlocks.CHISELED_MOON_ROCK_BRICK); - generator.createAxisAlignedPillarBlock(GCBlocks.MOON_ROCK_PILLAR, TexturedModel.COLUMN); - generator.createAxisAlignedPillarBlock(GCBlocks.OLIVINE_BLOCK, TexturedModel.COLUMN); // MARS NATURAL generator.createTrivialCube(GCBlocks.MARS_SURFACE_ROCK); @@ -181,11 +180,6 @@ public void generateBlockStateModels(BlockModelGenerators generator) { generator.createTrivialCube(GCBlocks.GALENA_ORE); - this.createOlivineCluster(generator, GCBlocks.OLIVINE_CLUSTER); - generator.createSimpleFlatItemModel(GCBlocks.OLIVINE_CLUSTER, "_vertical"); - generator.createTrivialCube(GCBlocks.OLIVINE_BASALT); - generator.createTrivialCube(GCBlocks.RICH_OLIVINE_BASALT); - this.createCheeseBlock(generator); this.createCandleCheeseBlock(generator, Blocks.CANDLE, GCBlocks.CANDLE_MOON_CHEESE_WHEEL); this.createCandleCheeseBlock(generator, Blocks.WHITE_CANDLE, GCBlocks.WHITE_CANDLE_MOON_CHEESE_WHEEL); @@ -218,6 +212,11 @@ public void generateBlockStateModels(BlockModelGenerators generator) { // MISC WORLD GEN this.createCavernousVines(generator); + generator.blockStateOutput.accept(MultiVariantGenerator.multiVariant(GCBlocks.MOON_BERRY_BUSH) + .with(PropertyDispatch.property(BlockStateProperties.AGE_3) + .generate(integer -> Variant.variant().with(VariantProperties.MODEL, generator.createSuffixedVariant(GCBlocks.MOON_BERRY_BUSH, "_stage" + integer, ModelTemplates.CROSS, TextureMapping::cross))) + ) + ); // DUMMY generator.createAirLikeBlock(GCBlocks.SOLAR_PANEL_PART, GCItems.BLUE_SOLAR_WAFER); @@ -257,10 +256,10 @@ public void generateBlockStateModels(BlockModelGenerators generator) { GCBlocks.PARACHEST.getStateDefinition().getPossibleStates().forEach(state -> { para.with(Condition.condition().term(ParaChestBlock.FACING, state.getValue(ParaChestBlock.FACING))/*.term(ParaChestBlock.COLOR, state.getValue(ParaChestBlock.COLOR))*/, Variant.variant() .with(VariantProperties.Y_ROT, getRotationFromDirection(state.getValue(ParaChestBlock.FACING))) - .with(VariantProperties.MODEL, ResourceLocation.parse("galacticraft:block/parachest/parachest"))); + .with(VariantProperties.MODEL, new ResourceLocation("galacticraft:block/parachest/parachest"))); para.with(Condition.condition().term(ParaChestBlock.COLOR, state.getValue(ParaChestBlock.COLOR)), Variant.variant() .with(VariantProperties.Y_ROT, getRotationFromDirection(state.getValue(ParaChestBlock.FACING))) - .with(VariantProperties.MODEL, ResourceLocation.parse("galacticraft:block/parachest/" + state.getValue(ParaChestBlock.COLOR) + "_chute"))); + .with(VariantProperties.MODEL, new ResourceLocation("galacticraft:block/parachest/" + state.getValue(ParaChestBlock.COLOR) + "_chute"))); }); generator.blockStateOutput.accept(para); } @@ -495,7 +494,6 @@ public void generateItemModels(ItemModelGenerators generator) { generator.generateFlatItem(GCItems.COMPRESSED_STEEL, ModelTemplates.FLAT_ITEM); generator.generateFlatItem(GCItems.LUNAR_SAPPHIRE, ModelTemplates.FLAT_ITEM); - generator.generateFlatItem(GCItems.OLIVINE_SHARD, ModelTemplates.FLAT_ITEM); generator.generateFlatItem(GCItems.DESH_STICK, ModelTemplates.FLAT_HANDHELD_ITEM); generator.generateFlatItem(GCItems.CARBON_FRAGMENTS, ModelTemplates.FLAT_ITEM); generator.generateFlatItem(GCItems.IRON_SHARD, ModelTemplates.FLAT_ITEM); @@ -524,6 +522,7 @@ public void generateItemModels(ItemModelGenerators generator) { generator.generateFlatItem(GCItems.AMBIENT_THERMAL_CONTROLLER, ModelTemplates.FLAT_ITEM); // FOOD + generator.generateFlatItem(GCItems.MOON_BERRIES, ModelTemplates.FLAT_ITEM); generator.generateFlatItem(GCItems.CHEESE_CURD, ModelTemplates.FLAT_ITEM); generator.generateFlatItem(GCItems.CHEESE_SLICE, ModelTemplates.FLAT_ITEM); @@ -590,7 +589,9 @@ public void generateItemModels(ItemModelGenerators generator) { generator.generateFlatItem(GCItems.SULFURIC_ACID_BUCKET, ModelTemplates.FLAT_ITEM); //GALACTICRAFT INVENTORY - GCItems.PARACHUTE.colorMap().forEach((color, parachute) -> generator.generateFlatItem(parachute, ModelTemplates.FLAT_ITEM)); + GCItems.PARACHUTE.colorMap().forEach((color, parachute) -> { + generator.generateFlatItem(parachute, ModelTemplates.FLAT_ITEM); + }); generator.generateFlatItem(GCItems.OXYGEN_MASK, ModelTemplates.FLAT_ITEM); generator.generateFlatItem(GCItems.OXYGEN_GEAR, ModelTemplates.FLAT_ITEM); @@ -631,7 +632,7 @@ private static TextureMapping detailedTexture(Block block) { .put(TextureSlot.WALL, resourceLocation) .put(TextureSlot.SIDE, resourceLocation) .put(TextureSlot.TOP, TextureMapping.getBlockTexture(block, "_top")) - .put(TextureSlot.BOTTOM, ResourceLocation.parse(TextureMapping.getBlockTexture(block).toString().replace("detailed_", ""))); + .put(TextureSlot.BOTTOM, new ResourceLocation(TextureMapping.getBlockTexture(block).toString().replace("detailed_", ""))); } private void createCheeseBlock(BlockModelGenerators generators) { @@ -687,41 +688,6 @@ private void createCavernousVines(BlockModelGenerators generator) { generator.blockStateOutput.accept(MultiVariantGenerator.multiVariant(cavernousVinesPlant).with(BlockModelGenerators.createBooleanModelDispatch(CavernousVines.POISONOUS, resourceLocation4, resourceLocation3))); } - private ResourceLocation blockTextureWithSuffix(Block block, String suffix) { - ResourceLocation resourceLocation = BuiltInRegistries.BLOCK.getKey(block); - return resourceLocation.withPrefix("block/").withSuffix(suffix); - } - - public final void createOlivineCluster(BlockModelGenerators generator, Block block) { - ResourceLocation verticalModel = ModelTemplates.CROSS.createWithSuffix(block, "_vertical", TextureMapping.cross(blockTextureWithSuffix(block, "_vertical")), generator.modelOutput); - ResourceLocation horizontalModel = ModelTemplates.CROSS.createWithSuffix(block, "_horizontal", TextureMapping.cross(blockTextureWithSuffix(block, "_horizontal")), generator.modelOutput); - generator.skipAutoItemBlock(block); - generator.blockStateOutput - .accept( - MultiVariantGenerator.multiVariant(block) - .with(PropertyDispatch.property(BlockStateProperties.FACING) - .select(Direction.DOWN, Variant.variant().with(VariantProperties.X_ROT, VariantProperties.Rotation.R180) - .with(VariantProperties.MODEL, verticalModel)) - .select(Direction.UP, Variant.variant() - .with(VariantProperties.MODEL, verticalModel)) - .select(Direction.NORTH, Variant.variant().with(VariantProperties.X_ROT, VariantProperties.Rotation.R90) - .with(VariantProperties.MODEL, horizontalModel)) - .select( - Direction.SOUTH, - Variant.variant().with(VariantProperties.X_ROT, VariantProperties.Rotation.R90).with(VariantProperties.Y_ROT, VariantProperties.Rotation.R180) - .with(VariantProperties.MODEL, horizontalModel)) - .select( - Direction.WEST, - Variant.variant().with(VariantProperties.X_ROT, VariantProperties.Rotation.R90).with(VariantProperties.Y_ROT, VariantProperties.Rotation.R270) - .with(VariantProperties.MODEL, horizontalModel)) - .select( - Direction.EAST, - Variant.variant().with(VariantProperties.X_ROT, VariantProperties.Rotation.R90).with(VariantProperties.Y_ROT, VariantProperties.Rotation.R90) - .with(VariantProperties.MODEL, horizontalModel)) - ) - ); - } - private static TextureMapping rocketLaunchPadPart(Block block, String suffix) { return new TextureMapping() .put(TextureSlot.PARTICLE, TextureMapping.getBlockTexture(block, suffix)) diff --git a/src/main/java/dev/galacticraft/mod/data/recipes/GCDecorationRecipeProvider.java b/src/main/java/dev/galacticraft/mod/data/recipes/GCDecorationRecipeProvider.java index cea3f368f1..9b5f91088b 100644 --- a/src/main/java/dev/galacticraft/mod/data/recipes/GCDecorationRecipeProvider.java +++ b/src/main/java/dev/galacticraft/mod/data/recipes/GCDecorationRecipeProvider.java @@ -26,24 +26,20 @@ import dev.galacticraft.mod.content.item.GCItems; import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput; import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider; -import net.minecraft.core.HolderLookup; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.data.recipes.RecipeCategory; import net.minecraft.data.recipes.RecipeOutput; import net.minecraft.data.recipes.ShapedRecipeBuilder; -import net.minecraft.data.recipes.SimpleCookingRecipeBuilder; import net.minecraft.world.item.Items; import net.minecraft.world.item.crafting.Ingredient; import net.minecraft.world.level.ItemLike; -import java.util.concurrent.CompletableFuture; - /** * Decoration block recipes */ public class GCDecorationRecipeProvider extends FabricRecipeProvider { - public GCDecorationRecipeProvider(FabricDataOutput output, CompletableFuture lookup) { - super(output, lookup); + public GCDecorationRecipeProvider(FabricDataOutput output) { + super(output); } @Override @@ -286,33 +282,6 @@ public void buildRecipes(RecipeOutput output) { ); // Rock decoration blocks - decorationBlockVariants(output, GCItems.MOON_ROCK, - GCItems.MOON_ROCK_SLAB, - GCItems.MOON_ROCK_STAIRS, - GCItems.MOON_ROCK_WALL - ); - decorationBlockVariants(output, GCBlocks.MOON_ROCK_BRICK, - GCBlocks.MOON_ROCK_BRICK_SLAB, - GCBlocks.MOON_ROCK_BRICK_STAIRS, - GCBlocks.MOON_ROCK_BRICK_WALL - ); - decorationBlockVariants(output, GCBlocks.CRACKED_MOON_ROCK_BRICK, - GCBlocks.CRACKED_MOON_ROCK_BRICK_SLAB, - GCBlocks.CRACKED_MOON_ROCK_BRICK_STAIRS, - GCBlocks.CRACKED_MOON_ROCK_BRICK_WALL - ); - decorationBlockVariants(output, GCBlocks.POLISHED_MOON_ROCK, - GCBlocks.POLISHED_MOON_ROCK_SLAB, - GCBlocks.POLISHED_MOON_ROCK_STAIRS, - GCBlocks.POLISHED_MOON_ROCK_WALL - ); - smeltBuildingBlock(output, GCBlocks.MOON_ROCK, GCBlocks.COBBLED_MOON_ROCK); - smeltBuildingBlock(output, GCBlocks.CRACKED_MOON_ROCK_BRICK, GCBlocks.MOON_ROCK_BRICK); - squareStone(output, GCBlocks.MOON_ROCK_BRICK, GCBlocks.MOON_ROCK); - squareStone(output, GCBlocks.POLISHED_MOON_ROCK, GCBlocks.MOON_ROCK_BRICK); - chiseledStone(output, GCBlocks.CHISELED_MOON_ROCK_BRICK, GCBlocks.MOON_ROCK_BRICK_SLAB, GCBlocks.MOON_ROCK, GCBlocks.MOON_ROCK_BRICK); - pillar(output, GCBlocks.MOON_ROCK_PILLAR, GCBlocks.MOON_ROCK); - decorationBlockVariants(output, GCItems.LUNASLATE, GCItems.LUNASLATE_SLAB, GCItems.LUNASLATE_STAIRS, @@ -356,45 +325,10 @@ private static void decorationBlockVariants(RecipeOutput output, ItemLike base, slab(output, RecipeCategory.BUILDING_BLOCKS, slab, base); stairs(output, stairs, base); wall(output, RecipeCategory.BUILDING_BLOCKS, wall, base); - - stonecutterResultFromBase(output, RecipeCategory.BUILDING_BLOCKS, slab, base, 2); - stonecutterResultFromBase(output, RecipeCategory.BUILDING_BLOCKS, stairs, base); - stonecutterResultFromBase(output, RecipeCategory.BUILDING_BLOCKS, wall, base); - } - - public static void pillar(RecipeOutput output, ItemLike pillar, ItemLike base) { - ShapedRecipeBuilder.shaped(RecipeCategory.BUILDING_BLOCKS, pillar, 2) - .define('#', base) - .pattern("#") - .pattern("#") - .unlockedBy(getHasName(base), has(base)) - .save(output); - } - - public static void squareStone(RecipeOutput output, ItemLike brick, ItemLike base) { - stonecutterResultFromBase(output, RecipeCategory.BUILDING_BLOCKS, brick, base); - ShapedRecipeBuilder.shaped(RecipeCategory.BUILDING_BLOCKS, brick, 4) - .define('#', base) - .pattern("##") - .pattern("##") - .unlockedBy(getHasName(base), has(base)) - .save(output); - } - - public static void smeltBuildingBlock(RecipeOutput output, ItemLike result, ItemLike ingredient) { - SimpleCookingRecipeBuilder.smelting(Ingredient.of(ingredient), RecipeCategory.BUILDING_BLOCKS, result, 0.1F, 200) - .unlockedBy(getHasName(ingredient), has(ingredient)) - .save(output); - } - - public static void chiseledStone(RecipeOutput output, ItemLike chiseled, ItemLike brickSlab, ItemLike base, ItemLike brick) { - chiseled(output, RecipeCategory.BUILDING_BLOCKS, chiseled, brickSlab); - stonecutterResultFromBase(output, RecipeCategory.BUILDING_BLOCKS, chiseled, base); - stonecutterResultFromBase(output, RecipeCategory.BUILDING_BLOCKS, chiseled, brick); } public static void decorationBlock(RecipeOutput output, ItemLike input, ItemLike block, ItemLike slab, ItemLike stairs, ItemLike wall) { - ShapedRecipeBuilder.shaped(RecipeCategory.BUILDING_BLOCKS, block, 4) + ShapedRecipeBuilder.shaped(RecipeCategory.BUILDING_BLOCKS, block, 1) .define('#', Items.STONE) .define('X', input) .pattern("## ") @@ -406,7 +340,7 @@ public static void decorationBlock(RecipeOutput output, ItemLike input, ItemLike } public static void detailedDecorationBlock(RecipeOutput output, ItemLike input, ItemLike block, ItemLike slab, ItemLike stairs, ItemLike wall) { - ShapedRecipeBuilder.shaped(RecipeCategory.BUILDING_BLOCKS, block, 4) + ShapedRecipeBuilder.shaped(RecipeCategory.BUILDING_BLOCKS, block, 1) .define('#', Items.STONE) .define('X', input) .pattern("##") diff --git a/src/main/java/dev/galacticraft/mod/data/recipes/GCGearRecipeProvider.java b/src/main/java/dev/galacticraft/mod/data/recipes/GCGearRecipeProvider.java index 704280afe4..e1e429d308 100644 --- a/src/main/java/dev/galacticraft/mod/data/recipes/GCGearRecipeProvider.java +++ b/src/main/java/dev/galacticraft/mod/data/recipes/GCGearRecipeProvider.java @@ -26,8 +26,7 @@ import dev.galacticraft.mod.content.item.GCItems; import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput; import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider; -import net.fabricmc.fabric.api.tag.convention.v2.ConventionalItemTags; -import net.minecraft.core.HolderLookup; +import net.fabricmc.fabric.api.tag.convention.v1.ConventionalItemTags; import net.minecraft.data.recipes.*; import net.minecraft.world.item.Item; import net.minecraft.world.item.Items; @@ -36,14 +35,12 @@ import net.minecraft.world.item.crafting.RecipeSerializer; import net.minecraft.world.item.crafting.SmeltingRecipe; -import java.util.concurrent.CompletableFuture; - /** * Armor, tools, and other gear recipes */ public class GCGearRecipeProvider extends FabricRecipeProvider { - public GCGearRecipeProvider(FabricDataOutput output, CompletableFuture lookup) { - super(output, lookup); + public GCGearRecipeProvider(FabricDataOutput output) { + super(output); } @Override @@ -131,7 +128,7 @@ public void buildRecipes(RecipeOutput output) { .save(output); ShapedRecipeBuilder.shaped(RecipeCategory.MISC, GCItems.SENSOR_GLASSES) - .define('D', ConventionalItemTags.DIAMOND_GEMS) + .define('D', ConventionalItemTags.DIAMONDS) .define('S', Items.STRING) .define('L', GCItems.SENSOR_LENS) .define('M', GCItems.METEORIC_IRON_INGOT) diff --git a/src/main/java/dev/galacticraft/mod/data/recipes/GCMachineRecipes.java b/src/main/java/dev/galacticraft/mod/data/recipes/GCMachineRecipes.java index f75035f052..f9c610ecb8 100644 --- a/src/main/java/dev/galacticraft/mod/data/recipes/GCMachineRecipes.java +++ b/src/main/java/dev/galacticraft/mod/data/recipes/GCMachineRecipes.java @@ -30,8 +30,7 @@ import dev.galacticraft.mod.tag.GCTags; import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput; import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider; -import net.fabricmc.fabric.api.tag.convention.v2.ConventionalItemTags; -import net.minecraft.core.HolderLookup; +import net.fabricmc.fabric.api.tag.convention.v1.ConventionalItemTags; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.data.recipes.RecipeCategory; import net.minecraft.data.recipes.RecipeOutput; @@ -39,11 +38,9 @@ import net.minecraft.data.recipes.ShapelessRecipeBuilder; import net.minecraft.world.item.Items; -import java.util.concurrent.CompletableFuture; - public class GCMachineRecipes extends FabricRecipeProvider { - public GCMachineRecipes(FabricDataOutput output, CompletableFuture lookup) { - super(output, lookup); + public GCMachineRecipes(FabricDataOutput output) { + super(output); } @Override @@ -250,17 +247,6 @@ public void buildRecipes(RecipeOutput output) { .unlockedBy(getHasName(GCItems.CRUDE_OIL_BUCKET), has(GCItems.CRUDE_OIL_BUCKET)) .save(output); - ShapedRecipeBuilder.shaped(RecipeCategory.MISC, GCItems.FUEL_LOADER) - .define('U', GCItems.COMPRESSED_COPPER) - .define('C', GCItems.TIN_CANISTER) - .define('T', GCItems.COMPRESSED_TIN) - .define('W', GCItems.BASIC_WAFER) - .pattern("UUU") - .pattern("UCU") - .pattern("TWT") - .unlockedBy(getHasName(GCItems.FUEL_BUCKET), has(GCItems.FUEL_BUCKET)) - .save(output); - // Wires + Pipes ShapedRecipeBuilder.shaped(RecipeCategory.MISC, GCItems.GLASS_FLUID_PIPE, 6) .define('X', Items.GLASS_PANE) diff --git a/src/main/java/dev/galacticraft/mod/data/recipes/GCMiscRecipeProvider.java b/src/main/java/dev/galacticraft/mod/data/recipes/GCMiscRecipeProvider.java index e6dd183ea3..33e47c1fa3 100644 --- a/src/main/java/dev/galacticraft/mod/data/recipes/GCMiscRecipeProvider.java +++ b/src/main/java/dev/galacticraft/mod/data/recipes/GCMiscRecipeProvider.java @@ -26,8 +26,7 @@ import dev.galacticraft.mod.tag.GCTags; import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput; import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider; -import net.fabricmc.fabric.api.tag.convention.v2.ConventionalItemTags; -import net.minecraft.core.HolderLookup; +import net.fabricmc.fabric.api.tag.convention.v1.ConventionalItemTags; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.data.recipes.*; import net.minecraft.tags.ItemTags; @@ -36,14 +35,12 @@ import net.minecraft.world.item.crafting.*; import net.minecraft.world.level.ItemLike; -import java.util.concurrent.CompletableFuture; - /** * Intermediate crafting materials and food recipes. */ public class GCMiscRecipeProvider extends FabricRecipeProvider { - public GCMiscRecipeProvider(FabricDataOutput output, CompletableFuture lookup) { - super(output, lookup); + public GCMiscRecipeProvider(FabricDataOutput output) { + super(output); } @Override @@ -341,7 +338,7 @@ public void buildRecipes(RecipeOutput output) { // SimpleCookingRecipeBuilder.smelting(Ingredient.of(GCBlocks.CHEESE_ORE), RecipeCategory.FOOD, GCItems.CHEESE_CURD, 0.35F, 200) // .unlockedBy(getHasName(GCBlocks.CHEESE_ORE), has(GCBlocks.CHEESE_ORE)) -// .save(result); +// .save(output); ShapelessRecipeBuilder.shapeless(RecipeCategory.FOOD, GCItems.BURGER_BUN, 2) .requires(Items.WHEAT) diff --git a/src/main/java/dev/galacticraft/mod/data/recipes/GCOreRecipeProvider.java b/src/main/java/dev/galacticraft/mod/data/recipes/GCOreRecipeProvider.java index 81308b2c26..9ac6c6d1c9 100644 --- a/src/main/java/dev/galacticraft/mod/data/recipes/GCOreRecipeProvider.java +++ b/src/main/java/dev/galacticraft/mod/data/recipes/GCOreRecipeProvider.java @@ -23,11 +23,9 @@ package dev.galacticraft.mod.data.recipes; import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.content.GCBlocks; import dev.galacticraft.mod.content.item.GCItems; import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput; import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider; -import net.minecraft.core.HolderLookup; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.data.recipes.RecipeCategory; import net.minecraft.data.recipes.RecipeOutput; @@ -38,15 +36,14 @@ import org.jetbrains.annotations.Nullable; import java.util.List; -import java.util.concurrent.CompletableFuture; /** * Ingot and raw ore recipes */ public class GCOreRecipeProvider extends FabricRecipeProvider { - public GCOreRecipeProvider(FabricDataOutput output, CompletableFuture lookup) { - super(output, lookup); + public GCOreRecipeProvider(FabricDataOutput output) { + super(output); } @Override @@ -76,7 +73,6 @@ public void buildRecipes(RecipeOutput output) { nineBlockStorageUnpackingRecipe(output, RecipeCategory.MISC, GCItems.LEAD_INGOT, RecipeCategory.BUILDING_BLOCKS, GCItems.LEAD_BLOCK, "lead_ingot_from_block", "lead_ingot"); nineBlockStorageUnpackingRecipe(output, RecipeCategory.MISC, GCItems.TITANIUM_INGOT, RecipeCategory.BUILDING_BLOCKS, GCItems.TITANIUM_BLOCK, "titanium_ingot_from_block", "titanium_ingot"); nineBlockStorageUnpackingRecipe(output, RecipeCategory.MISC, GCItems.LUNAR_SAPPHIRE, RecipeCategory.BUILDING_BLOCKS, GCItems.LUNAR_SAPPHIRE_BLOCK, "lunar_sapphire_from_block", "lunar_sapphire"); - crystalBlockStorageRecipe(output, GCItems.OLIVINE_SHARD, RecipeCategory.MISC, GCBlocks.OLIVINE_BLOCK, "olivine_block_from_shards", null); } @Override @@ -112,14 +108,4 @@ public static void nineBlockStorageRecipe(RecipeOutput exporter, RecipeCategory .unlockedBy(getHasName(baseItem), has(baseItem)) .save(exporter, Constant.id(compactingId)); } - - public static void crystalBlockStorageRecipe(RecipeOutput exporter, ItemLike baseItem, RecipeCategory compactingCategory, ItemLike compactItem, String compactingId, @Nullable String compactingGroup) { - ShapedRecipeBuilder.shaped(compactingCategory, compactItem) - .define('#', baseItem) - .pattern("##") - .pattern("##") - .group(compactingGroup) - .unlockedBy(getHasName(baseItem), has(baseItem)) - .save(exporter, Constant.id(compactingId)); - } } diff --git a/src/main/java/dev/galacticraft/mod/data/recipes/GCRocketRecipes.java b/src/main/java/dev/galacticraft/mod/data/recipes/GCRocketRecipes.java index 53047038f5..523ff3625f 100644 --- a/src/main/java/dev/galacticraft/mod/data/recipes/GCRocketRecipes.java +++ b/src/main/java/dev/galacticraft/mod/data/recipes/GCRocketRecipes.java @@ -26,17 +26,14 @@ import dev.galacticraft.mod.tag.GCTags; import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput; import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider; -import net.minecraft.core.HolderLookup; import net.minecraft.data.recipes.RecipeCategory; import net.minecraft.data.recipes.RecipeOutput; import net.minecraft.data.recipes.ShapedRecipeBuilder; import net.minecraft.world.item.Items; -import java.util.concurrent.CompletableFuture; - public class GCRocketRecipes extends FabricRecipeProvider { - public GCRocketRecipes(FabricDataOutput output, CompletableFuture lookup) { - super(output, lookup); + public GCRocketRecipes(FabricDataOutput output) { + super(output); } @Override diff --git a/src/main/java/dev/galacticraft/mod/data/tag/GCBannerTagProvider.java b/src/main/java/dev/galacticraft/mod/data/tag/GCBannerTagProvider.java index c35723d346..c7e9321d4b 100644 --- a/src/main/java/dev/galacticraft/mod/data/tag/GCBannerTagProvider.java +++ b/src/main/java/dev/galacticraft/mod/data/tag/GCBannerTagProvider.java @@ -40,6 +40,6 @@ public GCBannerTagProvider(FabricDataOutput output, CompletableFuture stacks; private final List listeners = new ArrayList<>(); - private final RecipeInput input = new VariableRecipeInput(); public VariableSizedContainer(int targetSize) { this.targetSize = targetSize; @@ -173,50 +170,33 @@ public void clearContent() { Collections.fill(this.stacks, ItemStack.EMPTY); } - public CompoundTag toTag(HolderLookup.Provider provider) { + public CompoundTag toTag() { CompoundTag tag = new CompoundTag(); tag.putInt("TargetSize", this.targetSize); ListTag list = new ListTag(); for (ItemStack stack : this.stacks) { - CompoundTag item = new CompoundTag(); - stack.save(provider, item); + CompoundTag item =new CompoundTag(); + stack.save(item); list.add(item); } tag.put("Items", list); return tag; } - public void readTag(CompoundTag tag, HolderLookup.Provider provider) { + public void readTag(CompoundTag tag) { this.targetSize = tag.getInt("TargetSize"); ListTag items = tag.getList("Items", Tag.TAG_COMPOUND); this.stacks.clear(); this.stacks.ensureCapacity(items.size()); for (int i = 0; i < items.size(); i++) { - this.stacks.add(ItemStack.parseOptional(provider, items.getCompound(i))); + this.stacks.add(ItemStack.of(items.getCompound(i))); } while (this.stacks.size() < this.targetSize-1) { this.stacks.add(ItemStack.EMPTY); } } - - public RecipeInput asInput() { - return this.input; - } - public interface Listener { void onSizeChanged(); void onItemChanged(); } - - private class VariableRecipeInput implements RecipeInput { - @Override - public @NotNull ItemStack getItem(int slot) { - return VariableSizedContainer.this.getItem(slot); - } - - @Override - public int size() { - return VariableSizedContainer.this.stacks.size(); - } - } } diff --git a/src/main/java/dev/galacticraft/mod/misc/banner/GCBannerPatterns.java b/src/main/java/dev/galacticraft/mod/misc/banner/GCBannerPatterns.java index cb262202e4..b5a21d0a37 100644 --- a/src/main/java/dev/galacticraft/mod/misc/banner/GCBannerPatterns.java +++ b/src/main/java/dev/galacticraft/mod/misc/banner/GCBannerPatterns.java @@ -23,16 +23,17 @@ package dev.galacticraft.mod.misc.banner; import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.util.Translations; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstrapContext; import net.minecraft.resources.ResourceKey; import net.minecraft.world.level.block.entity.BannerPattern; public class GCBannerPatterns { - public static final ResourceKey ROCKET = Constant.key(Registries.BANNER_PATTERN, "rocket"); + public static final ResourceKey ROCKET_KEY = Constant.key(Registries.BANNER_PATTERN, "rocket"); + public static final BannerPattern ROCKET = new BannerPattern(ROCKET_KEY.location().toString()); - public static void bootstrapRegistries(BootstrapContext context) { - context.register(ROCKET, new BannerPattern(Constant.id("rocket"), Translations.BannerPattern.ROCKET)); + public static void register() { + Registry.register(BuiltInRegistries.BANNER_PATTERN, ROCKET_KEY, ROCKET); } } diff --git a/src/main/java/dev/galacticraft/mod/misc/footprint/Footprint.java b/src/main/java/dev/galacticraft/mod/misc/footprint/Footprint.java index 6a27b0a384..6f506c8b17 100644 --- a/src/main/java/dev/galacticraft/mod/misc/footprint/Footprint.java +++ b/src/main/java/dev/galacticraft/mod/misc/footprint/Footprint.java @@ -23,13 +23,9 @@ package dev.galacticraft.mod.misc.footprint; import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.util.StreamCodecs; -import io.netty.buffer.ByteBuf; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.core.UUIDUtil; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.resources.ResourceLocation; import net.minecraft.util.Mth; import net.minecraft.world.level.Level; @@ -40,24 +36,6 @@ import java.util.UUID; public class Footprint { - public static final StreamCodec STREAM_CODEC = StreamCodecs.composite( - ResourceLocation.STREAM_CODEC, - f -> f.dimension, - ByteBufCodecs.DOUBLE, - f -> f.position.x, - ByteBufCodecs.DOUBLE, - f -> f.position.y, - ByteBufCodecs.DOUBLE, - f -> f.position.z, - ByteBufCodecs.FLOAT, - f -> f.rotation, - ByteBufCodecs.SHORT, - f -> f.age, - UUIDUtil.STREAM_CODEC, - f -> f.owner, - (id, x, y, z, r, a, o) -> new Footprint(id, new Vector3d(x, y, z), r, a, o) - ); - public static final short MAX_AGE = 3200; public final ResourceLocation dimension; public final float rotation; @@ -144,4 +122,18 @@ public static Vector3d getFootprintPosition(Level level, float rotation, Vector3 return position; } + + public void write(FriendlyByteBuf buf) { + buf.writeResourceLocation(dimension); + buf.writeDouble(position.x()); + buf.writeDouble(position.y()); + buf.writeDouble(position.z()); + buf.writeFloat(rotation); + buf.writeShort(age); + buf.writeUUID(owner); + } + + public static Footprint read(FriendlyByteBuf buf) { + return new Footprint(buf.readResourceLocation(), new Vector3d(buf.readDouble(), buf.readDouble(), buf.readDouble()), buf.readFloat(), buf.readShort(), buf.readUUID()); + } } diff --git a/src/main/java/dev/galacticraft/mod/misc/footprint/ServerFootprintManager.java b/src/main/java/dev/galacticraft/mod/misc/footprint/ServerFootprintManager.java index 12e291f35e..e137dc8516 100644 --- a/src/main/java/dev/galacticraft/mod/misc/footprint/ServerFootprintManager.java +++ b/src/main/java/dev/galacticraft/mod/misc/footprint/ServerFootprintManager.java @@ -22,7 +22,7 @@ package dev.galacticraft.mod.misc.footprint; -import dev.galacticraft.mod.network.s2c.FootprintPacket; +import dev.galacticraft.mod.network.packets.FootprintPacket; import net.fabricmc.fabric.api.networking.v1.PlayerLookup; import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; import net.minecraft.server.level.ServerLevel; diff --git a/src/main/java/dev/galacticraft/mod/mixin/BuiltInLootTablesAccessor.java b/src/main/java/dev/galacticraft/mod/mixin/BuiltInLootTablesAccessor.java new file mode 100644 index 0000000000..8c562a2f0f --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/mixin/BuiltInLootTablesAccessor.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.mixin; + +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.level.storage.loot.BuiltInLootTables; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Invoker; + +@Mixin(BuiltInLootTables.class) +public interface BuiltInLootTablesAccessor { + @Invoker("register") + static ResourceLocation callRegisterLootTable(ResourceLocation id) { + throw new UnsupportedOperationException("Invoker was not transformed."); + } +} diff --git a/src/main/java/dev/galacticraft/mod/mixin/EntityMixin.java b/src/main/java/dev/galacticraft/mod/mixin/EntityMixin.java index 58e1bdd5ad..ab0bc177e3 100644 --- a/src/main/java/dev/galacticraft/mod/mixin/EntityMixin.java +++ b/src/main/java/dev/galacticraft/mod/mixin/EntityMixin.java @@ -26,9 +26,11 @@ import dev.galacticraft.mod.content.entity.damage.GCDamageTypes; import dev.galacticraft.mod.misc.footprint.Footprint; import dev.galacticraft.mod.tag.GCTags; +import dev.galacticraft.mod.world.dimension.GCDimensions; import net.minecraft.core.BlockPos; import net.minecraft.core.SectionPos; import net.minecraft.core.registries.Registries; +import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; import net.minecraft.util.Mth; import net.minecraft.util.RandomSource; @@ -40,7 +42,9 @@ import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.levelgen.Heightmap; import net.minecraft.world.level.material.Fluid; +import net.minecraft.world.level.portal.PortalInfo; import net.minecraft.world.phys.Vec3; import org.jetbrains.annotations.Nullable; import org.joml.Vector3d; @@ -51,6 +55,7 @@ import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; import java.util.UUID; @@ -71,13 +76,13 @@ public abstract class EntityMixin implements EntityAccessor { @Shadow private Level level; -// @Inject(method = "findDimensionEntryPoint", at = @At("HEAD"), cancellable = true) -// private void getTeleportTargetGC(ServerLevel destination, CallbackInfoReturnable cir) { -// if (destination.dimension().equals(GCDimensions.MOON) || this.level.dimension().equals(GCDimensions.MOON)) { //TODO lander/parachute stuff -// BlockPos pos = destination.getHeightmapPos(Heightmap.Types.MOTION_BLOCKING_NO_LEAVES, destination.getSharedSpawnPos()); -// cir.setReturnValue(new PortalInfo(new Vec3((double) pos.getX() + 0.5D, pos.getY(), (double) pos.getZ() + 0.5D), this.getDeltaMovement(), this.yRot, this.xRot)); -// } -// } + @Inject(method = "findDimensionEntryPoint", at = @At("HEAD"), cancellable = true) + private void getTeleportTargetGC(ServerLevel destination, CallbackInfoReturnable cir) { + if (destination.dimension().equals(GCDimensions.MOON) || this.level.dimension().equals(GCDimensions.MOON)) { //TODO lander/parachute stuff + BlockPos pos = destination.getHeightmapPos(Heightmap.Types.MOTION_BLOCKING_NO_LEAVES, destination.getSharedSpawnPos()); + cir.setReturnValue(new PortalInfo(new Vec3((double) pos.getX() + 0.5D, pos.getY(), (double) pos.getZ() + 0.5D), this.getDeltaMovement(), this.yRot, this.xRot)); + } + } @Shadow public abstract boolean updateFluidHeightAndDoFluidPushing(TagKey tag, double d); @@ -155,6 +160,7 @@ private void checkWaterStateGC(CallbackInfo ci) { // GC 4 ticks footprints on the client and server, however we will just do it on the server @Inject(method = "move", at = @At("HEAD")) private void tickFootprints(MoverType type, Vec3 motion, CallbackInfo ci) { + var level = level(); if (!getType().is(GCTags.HAS_FOOTPRINTS)) return; double motionSqrd = Mth.lengthSquared(motion.x, motion.z); @@ -163,12 +169,12 @@ private void tickFootprints(MoverType type, Vec3 motion, CallbackInfo ci) { boolean isFlying = false; if ((Object) this instanceof Player player) isFlying = player.getAbilities().flying; - if (motionSqrd > 0.001 && this.level.dimensionTypeRegistration().is(GCTags.FOOTPRINTS_DIMENSIONS) && getVehicle() == null && !isFlying) { + if (motionSqrd > 0.001 && level.dimensionTypeRegistration().is(GCTags.FOOTPRINTS_DIMENSIONS) && getVehicle() == null && !isFlying) { int iPosX = Mth.floor(getX()); int iPosY = Mth.floor(getY() - 0.05); int iPosZ = Mth.floor(getZ()); BlockPos pos1 = new BlockPos(iPosX, iPosY, iPosZ); - BlockState state = this.level.getBlockState(pos1); + BlockState state = level.getBlockState(pos1); // If the block below is the moon block if (state.is(GCTags.FOOTPRINTS)) { @@ -193,7 +199,7 @@ private void tickFootprints(MoverType type, Vec3 motion, CallbackInfo ci) { pos = Footprint.getFootprintPosition(level, getYRot() - 180, pos, position()); long chunkKey = ChunkPos.asLong(SectionPos.blockToSectionCoord(pos.x), SectionPos.blockToSectionCoord(pos.z)); - level.galacticraft$getFootprintManager().addFootprint(chunkKey, new Footprint(level.dimensionTypeRegistration().unwrapKey().get().location(), pos, getYRot(), getUUID())); + level.galacticraft$getFootprintManager().addFootprint(chunkKey, new Footprint(level.dimensionTypeId().location(), pos, getYRot(), getUUID())); // Increment and cap step counter at 1 galacticraft$setLastStep((galacticraft$getLastStep() + 1) % 2); diff --git a/src/main/java/dev/galacticraft/mod/mixin/HashCacheMixin.java b/src/main/java/dev/galacticraft/mod/mixin/HashCacheMixin.java new file mode 100644 index 0000000000..64c4c73ff9 --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/mixin/HashCacheMixin.java @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.mixin; + +import net.minecraft.data.HashCache; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.LocalCapture; + +import java.nio.file.Path; +import java.util.Set; + +@Mixin(HashCache.class) +public class HashCacheMixin { + @Shadow @Final private Path rootDir; + + @Inject(method = "purgeStaleAndWrite", at = @At(value = "INVOKE", target = "Ljava/util/Set;add(Ljava/lang/Object;)Z"), locals = LocalCapture.CAPTURE_FAILEXCEPTION) + private void onPurgeStaleAndWrite(CallbackInfo ci, Set set) { + set.add(this.rootDir.resolve("README.md")); + } +} diff --git a/src/main/java/dev/galacticraft/mod/mixin/ItemEntityMixin.java b/src/main/java/dev/galacticraft/mod/mixin/ItemEntityMixin.java index e060186552..69af0b14cb 100644 --- a/src/main/java/dev/galacticraft/mod/mixin/ItemEntityMixin.java +++ b/src/main/java/dev/galacticraft/mod/mixin/ItemEntityMixin.java @@ -22,8 +22,9 @@ package dev.galacticraft.mod.mixin; -import dev.galacticraft.api.component.GCDataComponents; import dev.galacticraft.mod.content.item.GCItems; +import dev.galacticraft.mod.content.item.HotThrowableMeteorChunkItem; +import net.minecraft.nbt.CompoundTag; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; import net.minecraft.world.entity.item.ItemEntity; @@ -48,12 +49,14 @@ public ItemEntityMixin(EntityType entityType, Level level) { @Inject(at = @At("RETURN"), method = "tick") void coolMeteorChunk(CallbackInfo ci) { ItemStack stack = this.getItem(); + CompoundTag tag = stack.getTag(); if (stack.is(GCItems.HOT_THROWABLE_METEOR_CHUNK)) { - int ttc = stack.getComponents().getOrDefault(GCDataComponents.TICKS_UNTIL_COOL, 0); - if (ttc == 0) { - this.setItem(new ItemStack(GCItems.THROWABLE_METEOR_CHUNK, stack.getCount())); - } else { - stack.set(GCDataComponents.TICKS_UNTIL_COOL, ttc - 1); + if (tag != null) { + int ticksUntilCool = tag.getInt(HotThrowableMeteorChunkItem.TICKS_UNTIL_COOL); + if (ticksUntilCool == 0) { + this.setItem(new ItemStack(GCItems.THROWABLE_METEOR_CHUNK, stack.getCount())); + } + tag.putInt(HotThrowableMeteorChunkItem.TICKS_UNTIL_COOL, ticksUntilCool - 1); } if (this.isInWater()) { diff --git a/src/main/java/dev/galacticraft/mod/mixin/LanternBlockMixin.java b/src/main/java/dev/galacticraft/mod/mixin/LanternBlockMixin.java index f37702e65e..05b1df70c5 100644 --- a/src/main/java/dev/galacticraft/mod/mixin/LanternBlockMixin.java +++ b/src/main/java/dev/galacticraft/mod/mixin/LanternBlockMixin.java @@ -23,9 +23,10 @@ package dev.galacticraft.mod.mixin; import dev.galacticraft.api.universe.celestialbody.CelestialBody; +import dev.galacticraft.api.universe.celestialbody.CelestialBodyConfig; +import dev.galacticraft.api.universe.celestialbody.landable.Landable; import dev.galacticraft.mod.content.GCBlocks; import net.minecraft.core.BlockPos; -import net.minecraft.core.Holder; import net.minecraft.core.particles.ParticleTypes; import net.minecraft.sounds.SoundEvents; import net.minecraft.sounds.SoundSource; @@ -46,8 +47,8 @@ public LanternBlockMixin(Properties settings) { @Deprecated public void onPlace(BlockState state, Level world, BlockPos pos, BlockState oldState, boolean moved) { super.onPlace(state, world, pos, oldState, moved); - Holder> holder = world.galacticraft$getCelestialBody(); - if (holder != null && !holder.value().atmosphere().breathable()) { + CelestialBody> body = CelestialBody.getByDimension(world).orElse(null); + if (body != null && !body.atmosphere().breathable()) { if (state.getBlock() == Blocks.LANTERN) { world.setBlockAndUpdate(pos, GCBlocks.UNLIT_LANTERN.defaultBlockState().setValue(LanternBlock.HANGING, state.getValue(LanternBlock.HANGING)).setValue(LanternBlock.WATERLOGGED, state.getValue(LanternBlock.WATERLOGGED))); } diff --git a/src/main/java/dev/galacticraft/mod/mixin/LivingEntityMixin.java b/src/main/java/dev/galacticraft/mod/mixin/LivingEntityMixin.java index f49db3efff..7f3a8fc95d 100644 --- a/src/main/java/dev/galacticraft/mod/mixin/LivingEntityMixin.java +++ b/src/main/java/dev/galacticraft/mod/mixin/LivingEntityMixin.java @@ -99,8 +99,8 @@ public void setCryogenicChamberCooldown(int cryogenicChamberCooldown) { } @Inject(method = "defineSynchedData", at = @At("TAIL")) - private void gc$sleepData(SynchedEntityData.Builder compositeStateBuilder, CallbackInfo ci) { - compositeStateBuilder.define(IS_IN_CRYO_SLEEP_ID, false); + private void gc$sleepData(CallbackInfo ci) { + this.entityData.define(IS_IN_CRYO_SLEEP_ID, false); } @Inject(method = "setPosToBed", at = @At("HEAD"), cancellable = true) diff --git a/src/main/java/dev/galacticraft/mod/mixin/ServerPlayerMixin.java b/src/main/java/dev/galacticraft/mod/mixin/ServerPlayerMixin.java index c8381d217a..ddabb66b0a 100644 --- a/src/main/java/dev/galacticraft/mod/mixin/ServerPlayerMixin.java +++ b/src/main/java/dev/galacticraft/mod/mixin/ServerPlayerMixin.java @@ -29,7 +29,6 @@ import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.NbtOps; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; @@ -80,7 +79,7 @@ private void writeCelestialData(CompoundTag nbt, CallbackInfo ci) { nbt.putBoolean("CelestialActive", this.celestialActive); if (this.rocketData != null) { CompoundTag nbt1 = new CompoundTag(); - RocketData.CODEC.encode(this.rocketData, NbtOps.INSTANCE, nbt1); + this.rocketData.toNbt(nbt1); nbt.put("CelestialState", nbt1); } } @@ -89,7 +88,7 @@ private void writeCelestialData(CompoundTag nbt, CallbackInfo ci) { private void readCelestialData(CompoundTag nbt, CallbackInfo ci) { this.celestialActive = nbt.getBoolean("CelestialActive"); if (nbt.contains("CelestialState")) { - this.rocketData = RocketData.CODEC.decode(NbtOps.INSTANCE, nbt.getCompound("CelestialState")).getOrThrow().getFirst(); + this.rocketData = RocketData.fromNbt(nbt.getCompound("CelestialState")); } } diff --git a/src/main/java/dev/galacticraft/mod/mixin/TorchBlockMixin.java b/src/main/java/dev/galacticraft/mod/mixin/TorchBlockMixin.java index 5792b00ce0..0a44afed28 100644 --- a/src/main/java/dev/galacticraft/mod/mixin/TorchBlockMixin.java +++ b/src/main/java/dev/galacticraft/mod/mixin/TorchBlockMixin.java @@ -23,9 +23,10 @@ package dev.galacticraft.mod.mixin; import dev.galacticraft.api.universe.celestialbody.CelestialBody; +import dev.galacticraft.api.universe.celestialbody.CelestialBodyConfig; +import dev.galacticraft.api.universe.celestialbody.landable.Landable; import dev.galacticraft.mod.content.GCBlocks; import net.minecraft.core.BlockPos; -import net.minecraft.core.Holder; import net.minecraft.core.particles.ParticleTypes; import net.minecraft.sounds.SoundEvents; import net.minecraft.sounds.SoundSource; @@ -47,8 +48,8 @@ public TorchBlockMixin(Properties settings) { @Deprecated public void onPlace(BlockState state, Level world, BlockPos pos, BlockState oldState, boolean moved) { super.onPlace(state, world, pos, oldState, moved); - Holder> body = world.galacticraft$getCelestialBody(); - if (body != null && !body.value().atmosphere().breathable()) { + CelestialBody> body = CelestialBody.getByDimension(world).orElse(null); + if (body != null && !body.atmosphere().breathable()) { if (state.getBlock() == Blocks.TORCH) { world.setBlockAndUpdate(pos, GCBlocks.UNLIT_TORCH.defaultBlockState()); } else if (state.getBlock() == Blocks.WALL_TORCH) { diff --git a/src/main/java/dev/galacticraft/mod/mixin/client/CameraMixin.java b/src/main/java/dev/galacticraft/mod/mixin/client/CameraMixin.java index 4091c02428..efb6f2fdfe 100644 --- a/src/main/java/dev/galacticraft/mod/mixin/client/CameraMixin.java +++ b/src/main/java/dev/galacticraft/mod/mixin/client/CameraMixin.java @@ -42,9 +42,10 @@ @Mixin(Camera.class) public abstract class CameraMixin { @Shadow - protected abstract void setRotation(float f, float g); + protected abstract void move(double d, double e, double f); - @Shadow protected abstract void move(float f, float g, float h); + @Shadow + protected abstract void setRotation(float f, float g); @Unique private static float sleepDirectionToRotationCryo(Direction direction) { diff --git a/src/main/java/dev/galacticraft/mod/mixin/client/HumanoidModelMixin.java b/src/main/java/dev/galacticraft/mod/mixin/client/HumanoidModelMixin.java index 6720845f77..914a8f8492 100644 --- a/src/main/java/dev/galacticraft/mod/mixin/client/HumanoidModelMixin.java +++ b/src/main/java/dev/galacticraft/mod/mixin/client/HumanoidModelMixin.java @@ -27,7 +27,6 @@ import dev.galacticraft.mod.content.item.RocketItem; import net.minecraft.client.model.HumanoidModel; import net.minecraft.client.model.geom.ModelPart; -import net.minecraft.core.Holder; import net.minecraft.util.Mth; import net.minecraft.world.InteractionHand; import net.minecraft.world.entity.LivingEntity; @@ -41,36 +40,21 @@ @Mixin(HumanoidModel.class) public class HumanoidModelMixin { - @Shadow - @Final - public ModelPart head; + @Shadow @Final public ModelPart head; - @Shadow - @Final - public ModelPart leftArm; + @Shadow @Final public ModelPart leftArm; - @Shadow - @Final - public ModelPart rightArm; + @Shadow @Final public ModelPart rightArm; - @Shadow - @Final - public ModelPart leftLeg; + @Shadow @Final public ModelPart leftLeg; - @Shadow - @Final - public ModelPart rightLeg; + @Shadow @Final public ModelPart rightLeg; - @Shadow - @Final - public ModelPart body; + @Shadow @Final public ModelPart body; - @Shadow - @Final - public ModelPart hat; + @Shadow @Final public ModelPart hat; - @Shadow - public HumanoidModel.ArmPose rightArmPose; + @Shadow public HumanoidModel.ArmPose rightArmPose; @Inject(at = @At("HEAD"), method = "setupAnim(Lnet/minecraft/world/entity/LivingEntity;FFFFF)V") private void standInRocketGC(T livingEntity, float f, float g, float h, float i, float j, CallbackInfo ci) { @@ -83,8 +67,10 @@ private void standInRocketGC(T livingEntity, float f, float g, float h, float i, @Inject(method = "setupAnim(Lnet/minecraft/world/entity/LivingEntity;FFFFF)V", at = @At("TAIL")) private void gc$modifyPlayerAnim(LivingEntity entity, float f, float g, float h, float i, float j, CallbackInfo ci) { - Holder> holder = entity.level().galacticraft$getCelestialBody(); - if (holder != null && holder.value().gravity() < 0.8) { + + CelestialBody.getByDimension(entity.level()).ifPresent(celestialBody -> { + if (celestialBody.gravity() > .8) + return; float speedModifier = 0.1162F * 2; final float floatPI = 3.1415927F; @@ -99,7 +85,7 @@ private void standInRocketGC(T livingEntity, float f, float g, float h, float i, this.leftLeg.xRot += Mth.cos(f * 0.1162F * 2 + floatPI) * 1.4F * g; this.rightLeg.xRot -= Mth.cos(f * 0.6662F) * 1.4F * g; this.rightLeg.xRot += Mth.cos(f * 0.1162F * 2) * 1.4F * g; - } + }); if (entity.getItemInHand(InteractionHand.MAIN_HAND).getItem() instanceof RocketItem || entity.getItemInHand(InteractionHand.OFF_HAND).getItem() instanceof RocketItem) { float armXRot = Mth.PI + 0.3F; @@ -111,8 +97,8 @@ private void standInRocketGC(T livingEntity, float f, float g, float h, float i, this.rightArm.yRot = 0.0F; this.rightArm.zRot = (float) -Math.PI / 10.0F; } - - + + if (entity.isInCryoSleep()) { // TODO: possibly cleaner way of doing this? this.hat.xRot = 45F; this.hat.yRot = 0; diff --git a/src/main/java/dev/galacticraft/mod/mixin/client/LevelRendererMixin.java b/src/main/java/dev/galacticraft/mod/mixin/client/LevelRendererMixin.java index db2601aa6b..466296187e 100644 --- a/src/main/java/dev/galacticraft/mod/mixin/client/LevelRendererMixin.java +++ b/src/main/java/dev/galacticraft/mod/mixin/client/LevelRendererMixin.java @@ -45,27 +45,25 @@ @Mixin(LevelRenderer.class) public class LevelRendererMixin { @Unique - private OverworldRenderer worldRenderer; + private OverworldRenderer gc$worldRenderer; @Inject(method = "", at = @At("TAIL")) private void gc$setupRenderer(Minecraft minecraft, EntityRenderDispatcher entityRenderDispatcher, BlockEntityRenderDispatcher blockEntityRenderDispatcher, RenderBuffers renderBuffers, CallbackInfo ci) { - this.worldRenderer = new OverworldRenderer(); + this.gc$worldRenderer = new OverworldRenderer(); } @Inject(method = "renderSky", at = @At("HEAD"), cancellable = true) - public void gc$renderSky(Matrix4f matrix4f, Matrix4f projectionMatrix, float tickDelta, Camera camera, boolean thickFog, Runnable fogCallback, CallbackInfo ci) { + public void gc$renderSky(PoseStack poseStack, Matrix4f matrix4f, float partialTicks, Camera camera, boolean bl, Runnable runnable, CallbackInfo ci) { Player player = Minecraft.getInstance().player; if (player.getVehicle() instanceof RocketEntity && player.getVehicle().getY() > 200) { - fogCallback.run(); - PoseStack poseStack = new PoseStack(); - poseStack.mulPose(matrix4f); - this.worldRenderer.renderOverworldSky(player, poseStack, matrix4f, tickDelta, camera, thickFog, fogCallback); + runnable.run(); + gc$worldRenderer.renderOverworldSky(player, poseStack, matrix4f, partialTicks, camera, bl, runnable); ci.cancel(); } } @Inject(method = "renderClouds", at = @At("HEAD"), cancellable = true) - public void gc$preventCloudRendering(PoseStack matrices, Matrix4f matrix4f, Matrix4f matrix4f2, float tickDelta, double cameraX, double cameraY, double cameraZ, CallbackInfo ci) { + public void gc$preventCloudRendering(PoseStack poseStack, Matrix4f matrix4f, float f, double d, double e, double g, CallbackInfo ci) { Player player = Minecraft.getInstance().player; if (player != null && player.getVehicle() instanceof RocketEntity && player.getVehicle().getY() > Constant.OVERWORLD_SKYPROVIDER_STARTHEIGHT) { // Have clouds slowly fade out diff --git a/src/main/java/dev/galacticraft/mod/mixin/client/LivingEntityRendererMixin.java b/src/main/java/dev/galacticraft/mod/mixin/client/LivingEntityRendererMixin.java index 3099915664..d9ca7c46aa 100644 --- a/src/main/java/dev/galacticraft/mod/mixin/client/LivingEntityRendererMixin.java +++ b/src/main/java/dev/galacticraft/mod/mixin/client/LivingEntityRendererMixin.java @@ -60,26 +60,26 @@ private static float sleepDirectionToRotationCryo(Direction direction) { } @Inject(method = "setupRotations", at = @At("HEAD")) - private void rotateToMatchRocket(LivingEntity entity, PoseStack pose, float animationProgress, float bodyYaw, float tickDelta, float scale, CallbackInfo ci) { + private void rotateToMatchRocket(LivingEntity entity, PoseStack poseStack, float ageInTicks, float rotationYaw, float partialTicks, CallbackInfo ci) { if (entity.isPassenger()) { if (entity.getVehicle() instanceof RocketEntity rocket) { double rotationOffset = -0.5F; - pose.translate(0, -rotationOffset, 0); + poseStack.translate(0, -rotationOffset, 0); float anglePitch = rocket.xRotO; float angleYaw = rocket.yRotO; - pose.mulPose(Axis.YN.rotationDegrees(angleYaw)); - pose.mulPose(Axis.ZP.rotationDegrees(anglePitch)); - pose.translate(0, rotationOffset, 0); + poseStack.mulPose(Axis.YN.rotationDegrees(angleYaw)); + poseStack.mulPose(Axis.ZP.rotationDegrees(anglePitch)); + poseStack.translate(0, rotationOffset, 0); } } } @Inject(method = "setupRotations", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/LivingEntity;getBedOrientation()Lnet/minecraft/core/Direction;"), cancellable = true) - private void galacticraft$renderCryoChamberPos(LivingEntity entity, PoseStack pose, float animationProgress, float bodyYaw, float tickDelta, float scale, CallbackInfo ci) { - if (entity.isInCryoSleep()) { - Direction direction = entity.getBedOrientation(); - float j = direction != null ? sleepDirectionToRotationCryo(direction) : bodyYaw; - pose.mulPose(Axis.YP.rotationDegrees(j)); + private void galacticraft$renderCryoChamberPos(LivingEntity livingEntity, PoseStack poseStack, float f, float g, float h, CallbackInfo ci) { + if (livingEntity.isInCryoSleep()) { + Direction direction = livingEntity.getBedOrientation(); + float j = direction != null ? sleepDirectionToRotationCryo(direction) : g; + poseStack.mulPose(Axis.YP.rotationDegrees(j)); ci.cancel(); } } diff --git a/src/main/java/dev/galacticraft/mod/mixin/client/LocalPlayerMixin.java b/src/main/java/dev/galacticraft/mod/mixin/client/LocalPlayerMixin.java index faccbeefc2..9d7e1217ce 100644 --- a/src/main/java/dev/galacticraft/mod/mixin/client/LocalPlayerMixin.java +++ b/src/main/java/dev/galacticraft/mod/mixin/client/LocalPlayerMixin.java @@ -25,7 +25,7 @@ import com.mojang.authlib.GameProfile; import dev.galacticraft.mod.content.entity.ControllableEntity; import dev.galacticraft.mod.content.item.RocketItem; -import dev.galacticraft.mod.network.c2s.ControlEntityPayload; +import dev.galacticraft.mod.network.packets.ControlEntityPacket; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; @@ -65,7 +65,7 @@ private void gcRocketJumpCheck(CallbackInfo ci) { if (player.isPassenger()) { if (player.getVehicle() instanceof ControllableEntity controllable) { controllable.inputTick(input.leftImpulse, input.forwardImpulse, input.up, input.down, input.left, input.right, input.jumping, input.shiftKeyDown); - ClientPlayNetworking.send(new ControlEntityPayload(input.leftImpulse, input.forwardImpulse, input.up, input.down, input.left, input.right, input.jumping, input.shiftKeyDown)); + ClientPlayNetworking.send(new ControlEntityPacket(input.leftImpulse, input.forwardImpulse, input.up, input.down, input.left, input.right, input.jumping, input.shiftKeyDown)); } } } diff --git a/src/main/java/dev/galacticraft/mod/network/GCPackets.java b/src/main/java/dev/galacticraft/mod/network/GCPackets.java deleted file mode 100644 index d628ddb643..0000000000 --- a/src/main/java/dev/galacticraft/mod/network/GCPackets.java +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.network; - -import dev.galacticraft.mod.network.c2s.*; -import dev.galacticraft.mod.network.s2c.*; -import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry; - -public class GCPackets { - public static void register() { - PayloadTypeRegistry.playS2C().register(BubbleSizePayload.TYPE, BubbleSizePayload.STREAM_CODEC); - PayloadTypeRegistry.playS2C().register(BubbleUpdatePayload.TYPE, BubbleUpdatePayload.STREAM_CODEC); - PayloadTypeRegistry.playS2C().register(FootprintPacket.TYPE, FootprintPacket.STREAM_CODEC); - PayloadTypeRegistry.playS2C().register(FootprintRemovedPacket.TYPE, FootprintRemovedPacket.STREAM_CODEC); - PayloadTypeRegistry.playS2C().register(OpenCelestialScreenPayload.TYPE, OpenCelestialScreenPayload.STREAM_CODEC); - PayloadTypeRegistry.playS2C().register(ResetPerspectivePacket.TYPE, ResetPerspectivePacket.STREAM_CODEC); - PayloadTypeRegistry.playS2C().register(RocketSpawnPacket.TYPE, RocketSpawnPacket.STREAM_CODEC); - - PayloadTypeRegistry.playC2S().register(ControlEntityPayload.TYPE, ControlEntityPayload.STREAM_CODEC); - PayloadTypeRegistry.playC2S().register(OpenRocketPayload.TYPE, OpenRocketPayload.STREAM_CODEC); - PayloadTypeRegistry.playC2S().register(SatelliteCreationPayload.TYPE, SatelliteCreationPayload.STREAM_CODEC); - PayloadTypeRegistry.playC2S().register(BubbleMaxPayload.TYPE, BubbleMaxPayload.STREAM_CODEC); - PayloadTypeRegistry.playC2S().register(BubbleVisibilityPayload.TYPE, BubbleVisibilityPayload.STREAM_CODEC); - PayloadTypeRegistry.playC2S().register(PlanetTeleportPayload.TYPE, PlanetTeleportPayload.STREAM_CODEC); - PayloadTypeRegistry.playC2S().register(SelectPartPayload.TYPE, SelectPartPayload.STREAM_CODEC); - PayloadTypeRegistry.playC2S().register(OpenGcInventoryPayload.TYPE, OpenGcInventoryPayload.STREAM_CODEC); - } -} diff --git a/src/main/java/dev/galacticraft/mod/network/GCServerPacketReceivers.java b/src/main/java/dev/galacticraft/mod/network/GCServerPacketReceivers.java index 5055aa645a..f246440ae9 100644 --- a/src/main/java/dev/galacticraft/mod/network/GCServerPacketReceivers.java +++ b/src/main/java/dev/galacticraft/mod/network/GCServerPacketReceivers.java @@ -22,27 +22,90 @@ package dev.galacticraft.mod.network; -import dev.galacticraft.impl.network.c2s.C2SPayload; -import dev.galacticraft.mod.network.c2s.*; +import dev.galacticraft.api.accessor.SatelliteAccessor; +import dev.galacticraft.api.registry.AddonRegistries; +import dev.galacticraft.api.universe.celestialbody.CelestialBody; +import dev.galacticraft.impl.universe.celestialbody.type.SatelliteType; +import dev.galacticraft.mod.Constant; +import dev.galacticraft.mod.content.entity.orbital.RocketEntity; +import dev.galacticraft.mod.events.GCEventHandlers; +import dev.galacticraft.mod.network.packets.*; +import dev.galacticraft.mod.screen.GCPlayerInventoryMenu; +import dev.galacticraft.mod.screen.RocketMenu; +import net.fabricmc.fabric.api.networking.v1.PacketType; import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import net.fabricmc.fabric.api.screenhandler.v1.ExtendedScreenHandlerFactory; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.ResourceKey; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.SimpleMenuProvider; +import net.minecraft.world.entity.player.Inventory; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.AbstractContainerMenu; /** * Handles server-bound (C2S) packets. */ public class GCServerPacketReceivers { public static void register() { - registerPacket(ControlEntityPayload.TYPE); - registerPacket(OpenRocketPayload.TYPE); - registerPacket(SatelliteCreationPayload.TYPE); - registerPacket(BubbleVisibilityPayload.TYPE); - registerPacket(SelectPartPayload.TYPE); - registerPacket(OpenGcInventoryPayload.TYPE); - registerPacket(PlanetTeleportPayload.TYPE); - registerPacket(BubbleMaxPayload.TYPE); + ServerPlayNetworking.registerGlobalReceiver(Constant.Packet.OPEN_GC_INVENTORY, (server, player, handler, buf, responseSender) -> server.execute(() -> player.openMenu(new SimpleMenuProvider(GCPlayerInventoryMenu::new, Component.empty()) { + @Override + public boolean shouldCloseCurrentScreen() { + return false; + } + }))); + ServerPlayNetworking.registerGlobalReceiver(Constant.Packet.OPEN_GC_ROCKET, (server, player, handler, buf, responseSender) -> server.execute(() -> player.openMenu(new ExtendedScreenHandlerFactory() { + @Override + public AbstractContainerMenu createMenu(int syncId, Inventory inventory, Player player) { + return new RocketMenu(syncId, inventory, player, (RocketEntity) player.getVehicle()); + } + + @Override + public Component getDisplayName() { + return Component.empty(); + } + + @Override + public void writeScreenOpeningData(ServerPlayer player, FriendlyByteBuf buf) { + assert player.getVehicle() instanceof RocketEntity; + RocketEntity rocket = (RocketEntity) player.getVehicle(); + buf.writeInt(rocket.getId()); + } + + @Override + public boolean shouldCloseCurrentScreen() { + return false; + } + }))); + + registerPacket(BubbleMaxPacket.TYPE); + registerPacket(SelectPartPacket.TYPE); + registerPacket(ToggleBubbleVisibilityPacket.TYPE); + registerPacket(ControlEntityPacket.TYPE); + + ServerPlayNetworking.registerGlobalReceiver(Constant.Packet.PLANET_TP, ((server, player, handler, buf, responseSender) -> { + FriendlyByteBuf buffer = new FriendlyByteBuf(buf.copy()); + if (player.galacticraft$isCelestialScreenActive()) { + server.execute(() -> { + ResourceLocation id = buffer.readResourceLocation(); + CelestialBody body = ((SatelliteAccessor) server).galacticraft$getSatellites().get(id); + CelestialBody fromBody = CelestialBody.getByDimension(player.level()).orElseThrow(); + if (body == null) body = server.registryAccess().registryOrThrow(AddonRegistries.CELESTIAL_BODY).get(id); + GCEventHandlers.onPlayerChangePlanets(server, player, body, fromBody); + }); + } else { + player.connection.disconnect(Component.literal("Invalid planet teleport packet received.")); + } + })); + + ServerPlayNetworking.registerGlobalReceiver(Constant.Packet.CREATE_SATELLITE, (server, player, handler, buf, responseSender) -> { + SatelliteType.registerSatellite(server, player, server.registryAccess().registryOrThrow(AddonRegistries.CELESTIAL_BODY).getHolderOrThrow(ResourceKey.create(AddonRegistries.CELESTIAL_BODY, buf.readResourceLocation())), server.getStructureManager().get(Constant.Structure.SPACE_STATION).orElseThrow()); + }); } - public static

void registerPacket(CustomPacketPayload.Type

type) { - ServerPlayNetworking.registerGlobalReceiver(type, C2SPayload::handle); + public static void registerPacket(PacketType type) { + ServerPlayNetworking.registerGlobalReceiver(type, GCPacket::handle); } } diff --git a/src/main/java/dev/galacticraft/mod/network/c2s/BubbleMaxPayload.java b/src/main/java/dev/galacticraft/mod/network/c2s/BubbleMaxPayload.java deleted file mode 100644 index a94577545b..0000000000 --- a/src/main/java/dev/galacticraft/mod/network/c2s/BubbleMaxPayload.java +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.network.c2s; - -import dev.galacticraft.impl.network.c2s.C2SPayload; -import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.content.block.entity.machine.OxygenBubbleDistributorBlockEntity; -import dev.galacticraft.mod.screen.OxygenBubbleDistributorMenu; -import io.netty.buffer.ByteBuf; -import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import org.jetbrains.annotations.NotNull; - -public record BubbleMaxPayload(byte max) implements C2SPayload { - public static final StreamCodec STREAM_CODEC = ByteBufCodecs.BYTE.map(BubbleMaxPayload::new, packet -> packet.max); - public static final ResourceLocation ID = Constant.id("bubble_max"); - public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(ID); - - @Override - public void handle(ServerPlayNetworking.@NotNull Context context) { - - if (context.player().containerMenu instanceof OxygenBubbleDistributorMenu menu) { - OxygenBubbleDistributorBlockEntity machine = menu.be; - if (machine.getSecurity().hasAccess(context.player())) { - if (max > 0) { - machine.setTargetSize(max); - } - } - } - } - - @Override - public @NotNull Type type() { - return TYPE; - } -} diff --git a/src/main/java/dev/galacticraft/mod/network/c2s/BubbleVisibilityPayload.java b/src/main/java/dev/galacticraft/mod/network/c2s/BubbleVisibilityPayload.java deleted file mode 100644 index ffe4ccd75f..0000000000 --- a/src/main/java/dev/galacticraft/mod/network/c2s/BubbleVisibilityPayload.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.network.c2s; - -import dev.galacticraft.impl.network.c2s.C2SPayload; -import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.content.block.entity.machine.OxygenBubbleDistributorBlockEntity; -import dev.galacticraft.mod.screen.OxygenBubbleDistributorMenu; -import io.netty.buffer.ByteBuf; -import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import org.jetbrains.annotations.NotNull; - -public record BubbleVisibilityPayload(boolean visible) implements C2SPayload { - public static final StreamCodec STREAM_CODEC = ByteBufCodecs.BOOL.map(BubbleVisibilityPayload::new, packet -> packet.visible); - public static final ResourceLocation ID = Constant.id("bubble_visible"); - public static final Type TYPE = new Type<>(ID); - - @Override - public void handle(ServerPlayNetworking.@NotNull Context context) { - if (context.player().containerMenu instanceof OxygenBubbleDistributorMenu sHandler) { - OxygenBubbleDistributorBlockEntity machine = sHandler.be; - if (machine.getSecurity().hasAccess(context.player())) { - machine.setBubbleVisible(visible); - } - } - } - - @Override - public @NotNull Type type() { - return TYPE; - } -} diff --git a/src/main/java/dev/galacticraft/mod/network/c2s/ControlEntityPayload.java b/src/main/java/dev/galacticraft/mod/network/c2s/ControlEntityPayload.java deleted file mode 100644 index 82993ec497..0000000000 --- a/src/main/java/dev/galacticraft/mod/network/c2s/ControlEntityPayload.java +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.network.c2s; - -import dev.galacticraft.impl.network.c2s.C2SPayload; -import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.content.entity.ControllableEntity; -import dev.galacticraft.mod.util.StreamCodecs; -import io.netty.buffer.ByteBuf; -import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import org.jetbrains.annotations.NotNull; - -public record ControlEntityPayload(float leftImpulse, float forwardImpulse, boolean up, boolean down, boolean left, boolean right, boolean jumping, boolean shiftKeyDown) implements C2SPayload { - public static final StreamCodec STREAM_CODEC = StreamCodecs.composite( - ByteBufCodecs.FLOAT, - p -> p.leftImpulse, - ByteBufCodecs.FLOAT, - p -> p.forwardImpulse, - ByteBufCodecs.BOOL, - p -> p.up, - ByteBufCodecs.BOOL, - p -> p.down, - ByteBufCodecs.BOOL, - p -> p.left, - ByteBufCodecs.BOOL, - p -> p.right, - ByteBufCodecs.BOOL, - p -> p.jumping, - ByteBufCodecs.BOOL, - p -> p.shiftKeyDown, - ControlEntityPayload::new - ); - public static final ResourceLocation ID = Constant.id("control_entity"); - public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(ID); - - @Override - public void handle(ServerPlayNetworking.@NotNull Context context) { - if (context.player().isPassenger() && context.player().getVehicle() instanceof ControllableEntity controllable) { - controllable.inputTick(leftImpulse(), forwardImpulse(), up(), down(), left(), right(), jumping(), shiftKeyDown()); - } - } - - @Override - public @NotNull Type type() { - return TYPE; - } -} diff --git a/src/main/java/dev/galacticraft/mod/network/c2s/OpenGcInventoryPayload.java b/src/main/java/dev/galacticraft/mod/network/c2s/OpenGcInventoryPayload.java deleted file mode 100644 index dede0519bd..0000000000 --- a/src/main/java/dev/galacticraft/mod/network/c2s/OpenGcInventoryPayload.java +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.network.c2s; - -import dev.galacticraft.impl.network.c2s.C2SPayload; -import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.screen.GCPlayerInventoryMenu; -import io.netty.buffer.ByteBuf; -import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; -import net.minecraft.network.chat.Component; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.SimpleMenuProvider; -import org.jetbrains.annotations.NotNull; - -public record OpenGcInventoryPayload() implements C2SPayload { - public static final OpenGcInventoryPayload INSTANCE = new OpenGcInventoryPayload(); - public static final StreamCodec STREAM_CODEC = StreamCodec.unit(INSTANCE);; - public static final ResourceLocation ID = Constant.id("open_gc_inventory"); - public static final Type TYPE = new Type<>(ID); - - @Override - public void handle(ServerPlayNetworking.@NotNull Context context) { - context.player().openMenu(new SimpleMenuProvider(GCPlayerInventoryMenu::new, Component.empty()) { - @Override - public boolean shouldCloseCurrentScreen() { - return false; - } - }); - } - - @Override - public @NotNull Type type() { - return TYPE; - } -} diff --git a/src/main/java/dev/galacticraft/mod/network/c2s/OpenRocketPayload.java b/src/main/java/dev/galacticraft/mod/network/c2s/OpenRocketPayload.java deleted file mode 100644 index 8c808fcaf4..0000000000 --- a/src/main/java/dev/galacticraft/mod/network/c2s/OpenRocketPayload.java +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.network.c2s; - -import dev.galacticraft.impl.network.c2s.C2SPayload; -import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.content.entity.orbital.RocketEntity; -import dev.galacticraft.mod.screen.RocketMenu; -import io.netty.buffer.ByteBuf; -import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; -import net.fabricmc.fabric.api.screenhandler.v1.ExtendedScreenHandlerFactory; -import net.minecraft.network.chat.Component; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.server.level.ServerPlayer; -import net.minecraft.world.entity.player.Inventory; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.inventory.AbstractContainerMenu; -import org.jetbrains.annotations.NotNull; - -public record OpenRocketPayload() implements C2SPayload { - public static final OpenRocketPayload INSTANCE = new OpenRocketPayload(); - public static final StreamCodec STREAM_CODEC = StreamCodec.unit(INSTANCE); - public static final ResourceLocation ID = Constant.id("open_rocket"); - public static final Type TYPE = new Type<>(ID); - - @Override - public void handle(ServerPlayNetworking.@NotNull Context context) { - context.player().openMenu(new ExtendedScreenHandlerFactory<>() { - @Override - public Integer getScreenOpeningData(ServerPlayer player) { - return player.getVehicle().getId(); - } - - @Override - public AbstractContainerMenu createMenu(int syncId, Inventory inventory, Player player) { - return new RocketMenu(syncId, inventory, player, (RocketEntity) player.getVehicle()); - } - - @Override - public @NotNull Component getDisplayName() { - return Component.empty(); - } - - @Override - public boolean shouldCloseCurrentScreen() { - return false; - } - }); - } - - @Override - public @NotNull Type type() { - return TYPE; - } -} diff --git a/src/main/java/dev/galacticraft/mod/network/c2s/PlanetTeleportPayload.java b/src/main/java/dev/galacticraft/mod/network/c2s/PlanetTeleportPayload.java deleted file mode 100644 index 657b4d4a58..0000000000 --- a/src/main/java/dev/galacticraft/mod/network/c2s/PlanetTeleportPayload.java +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.network.c2s; - -import dev.galacticraft.api.accessor.SatelliteAccessor; -import dev.galacticraft.api.registry.AddonRegistries; -import dev.galacticraft.api.universe.celestialbody.CelestialBody; -import dev.galacticraft.impl.network.c2s.C2SPayload; -import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.events.GCEventHandlers; -import io.netty.buffer.ByteBuf; -import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; -import net.minecraft.core.Holder; -import net.minecraft.network.chat.Component; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import org.jetbrains.annotations.NotNull; - -public record PlanetTeleportPayload(ResourceLocation id) implements C2SPayload { - public static final StreamCodec STREAM_CODEC = ResourceLocation.STREAM_CODEC.map(PlanetTeleportPayload::new, p -> p.id); - public static final ResourceLocation ID = Constant.id("planet_teleport"); - public static final Type TYPE = new Type<>(ID); - - @Override - public void handle(ServerPlayNetworking.@NotNull Context context) { - if (context.player().galacticraft$isCelestialScreenActive()) { - CelestialBody body = ((SatelliteAccessor) context.server()).galacticraft$getSatellites().get(id); - Holder> fromBody = context.player().level().galacticraft$getCelestialBody(); - if (body == null) body = context.server().registryAccess().registryOrThrow(AddonRegistries.CELESTIAL_BODY).get(id); - GCEventHandlers.onPlayerChangePlanets(context.server(), context.player(), body, fromBody.value()); - } else { - context.player().connection.disconnect(Component.literal("Invalid planet teleport packet received.")); - } - } - - @Override - public @NotNull Type type() { - return TYPE; - } -} diff --git a/src/main/java/dev/galacticraft/mod/network/c2s/SatelliteCreationPayload.java b/src/main/java/dev/galacticraft/mod/network/c2s/SatelliteCreationPayload.java deleted file mode 100644 index 2afac6eacc..0000000000 --- a/src/main/java/dev/galacticraft/mod/network/c2s/SatelliteCreationPayload.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.network.c2s; - -import dev.galacticraft.api.registry.AddonRegistries; -import dev.galacticraft.api.universe.celestialbody.CelestialBody; -import dev.galacticraft.impl.network.c2s.C2SPayload; -import dev.galacticraft.impl.universe.celestialbody.type.SatelliteType; -import dev.galacticraft.mod.Constant; -import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; -import net.minecraft.core.Holder; -import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import org.jetbrains.annotations.NotNull; - -public record SatelliteCreationPayload(Holder> body) implements C2SPayload { - public static final StreamCodec STREAM_CODEC = ByteBufCodecs.holderRegistry(AddonRegistries.CELESTIAL_BODY).map(SatelliteCreationPayload::new, p -> p.body); - public static final ResourceLocation ID = Constant.id("create_satellite"); - public static final Type TYPE = new Type<>(ID); - - @Override - public void handle(ServerPlayNetworking.@NotNull Context context) { - SatelliteType.registerSatellite(context.server(), context.player(), this.body, context.server().getStructureManager().get(Constant.Structure.SPACE_STATION).orElseThrow()); - } - - @Override - public @NotNull Type type() { - return TYPE; - } -} diff --git a/src/main/java/dev/galacticraft/mod/network/c2s/SelectPartPayload.java b/src/main/java/dev/galacticraft/mod/network/c2s/SelectPartPayload.java deleted file mode 100644 index dce90b3a99..0000000000 --- a/src/main/java/dev/galacticraft/mod/network/c2s/SelectPartPayload.java +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.network.c2s; - -import dev.galacticraft.api.rocket.part.RocketPartTypes; -import dev.galacticraft.impl.network.c2s.C2SPayload; -import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.screen.RocketWorkbenchMenu; -import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; -import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -public record SelectPartPayload(RocketPartTypes partType, @Nullable ResourceLocation part) implements C2SPayload { - public static final StreamCodec STREAM_CODEC = StreamCodec.ofMember( - SelectPartPayload::write, - SelectPartPayload::new - ); - - public static final ResourceLocation ID = Constant.id("select_part"); - public static final Type TYPE = new Type<>(ID); - - public SelectPartPayload(FriendlyByteBuf buf) { - this(buf.readEnum(RocketPartTypes.class), buf.readBoolean() ? buf.readResourceLocation() : null); - } - - private void write(FriendlyByteBuf buf) { - buf.writeEnum(this.partType); - if (this.part != null) { - buf.writeBoolean(true); - buf.writeResourceLocation(this.part); - } else { - buf.writeBoolean(false); - } - } - - @Override - public void handle(ServerPlayNetworking.@NotNull Context context) { - if (context.player().containerMenu instanceof RocketWorkbenchMenu menu) { - menu.getSelection(this.partType).setSelection(this.part); - menu.workbench.setChanged(); - } - } - - @Override - public Type type() { - return TYPE; - } -} diff --git a/src/main/java/dev/galacticraft/mod/network/packets/BubbleMaxPacket.java b/src/main/java/dev/galacticraft/mod/network/packets/BubbleMaxPacket.java new file mode 100644 index 0000000000..267e5ee66c --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/network/packets/BubbleMaxPacket.java @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.network.packets; + +import dev.galacticraft.mod.Constant.Packet; +import dev.galacticraft.mod.content.block.entity.machine.OxygenBubbleDistributorBlockEntity; +import dev.galacticraft.mod.screen.OxygenBubbleDistributorMenu; +import net.fabricmc.fabric.api.networking.v1.PacketSender; +import net.fabricmc.fabric.api.networking.v1.PacketType; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.world.entity.player.Player; + +public record BubbleMaxPacket(byte max) implements GCPacket { + public static final PacketType TYPE = PacketType.create(Packet.BUBBLE_MAX, BubbleMaxPacket::new); + + public BubbleMaxPacket(FriendlyByteBuf buf) { + this(buf.readByte()); + } + + @Override + public void handle(Player player, PacketSender responseSender) { + if (player.containerMenu instanceof OxygenBubbleDistributorMenu sHandler) { + OxygenBubbleDistributorBlockEntity machine = sHandler.machine; + if (machine.getSecurity().hasAccess(player)) { + if (max > 0) { + machine.setTargetSize(max); + } + } + } + } + + @Override + public void write(FriendlyByteBuf buf) { + buf.writeByte(max); + } + + @Override + public PacketType getType() { + return TYPE; + } +} diff --git a/src/main/java/dev/galacticraft/mod/network/packets/ControlEntityPacket.java b/src/main/java/dev/galacticraft/mod/network/packets/ControlEntityPacket.java new file mode 100644 index 0000000000..cf73659262 --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/network/packets/ControlEntityPacket.java @@ -0,0 +1,62 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.network.packets; + +import dev.galacticraft.mod.Constant.Packet; +import dev.galacticraft.mod.content.entity.ControllableEntity; +import net.fabricmc.fabric.api.networking.v1.PacketSender; +import net.fabricmc.fabric.api.networking.v1.PacketType; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.world.entity.player.Player; + +public record ControlEntityPacket(float leftImpulse, float forwardImpulse, boolean up, boolean down, boolean left, boolean right, boolean jumping, boolean shiftKeyDown) implements GCPacket { + public static final PacketType TYPE = PacketType.create(Packet.CONTROLLABLE_ENTITY, ControlEntityPacket::new); + + public ControlEntityPacket(FriendlyByteBuf buf) { + this(buf.readFloat(), buf.readFloat(), buf.readBoolean(), buf.readBoolean(), buf.readBoolean(), buf.readBoolean(), buf.readBoolean(), buf.readBoolean()); + } + + @Override + public void write(FriendlyByteBuf buf) { + buf.writeFloat(leftImpulse); + buf.writeFloat(forwardImpulse); + buf.writeBoolean(up); + buf.writeBoolean(down); + buf.writeBoolean(left); + buf.writeBoolean(right); + buf.writeBoolean(jumping); + buf.writeBoolean(shiftKeyDown); + } + + @Override + public PacketType getType() { + return TYPE; + } + + @Override + public void handle(Player player, PacketSender responseSender) { + if (player.isPassenger()) + if (player.getVehicle() instanceof ControllableEntity controllable) + controllable.inputTick(leftImpulse(), forwardImpulse(), up(), down(), left(), right(), jumping(), shiftKeyDown()); + } +} diff --git a/src/main/java/dev/galacticraft/mod/network/packets/FootprintPacket.java b/src/main/java/dev/galacticraft/mod/network/packets/FootprintPacket.java new file mode 100644 index 0000000000..d8546c2715 --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/network/packets/FootprintPacket.java @@ -0,0 +1,70 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.network.packets; + +import dev.galacticraft.mod.Constant; +import dev.galacticraft.mod.client.render.FootprintRenderer; +import dev.galacticraft.mod.misc.footprint.Footprint; +import net.fabricmc.fabric.api.networking.v1.PacketSender; +import net.fabricmc.fabric.api.networking.v1.PacketType; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.world.entity.player.Player; + +import java.util.ArrayList; +import java.util.List; + +public record FootprintPacket(long packedPos, List footprints) implements GCPacket { + public static final PacketType TYPE = PacketType.create(Constant.Packet.FOOTPRINT, FootprintPacket::new); + + public FootprintPacket(FriendlyByteBuf buf) { + this(buf.readLong(), readFootprints(buf)); + } + + @Override + public void write(FriendlyByteBuf buf) { + buf.writeLong(packedPos); + buf.writeInt(footprints.size()); + for (Footprint footprint : footprints) { + footprint.write(buf); + } + } + + public static List readFootprints(FriendlyByteBuf buf) { + int length = buf.readInt(); + List footprints = new ArrayList<>(length); + for (int i = 0; i < length; i++) { + footprints.add(Footprint.read(buf)); + } + return footprints; + } + + @Override + public PacketType getType() { + return TYPE; + } + + @Override + public void handle(Player player, PacketSender responseSender) { + FootprintRenderer.setFootprints(packedPos(), footprints()); + } +} diff --git a/src/main/java/dev/galacticraft/mod/network/packets/FootprintRemovedPacket.java b/src/main/java/dev/galacticraft/mod/network/packets/FootprintRemovedPacket.java new file mode 100644 index 0000000000..0dc1432e33 --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/network/packets/FootprintRemovedPacket.java @@ -0,0 +1,76 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.network.packets; + +import dev.galacticraft.mod.Constant; +import dev.galacticraft.mod.misc.footprint.Footprint; +import dev.galacticraft.mod.misc.footprint.FootprintManager; +import net.fabricmc.fabric.api.networking.v1.PacketSender; +import net.fabricmc.fabric.api.networking.v1.PacketType; +import net.minecraft.core.BlockPos; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.world.entity.player.Player; + +import java.util.ArrayList; +import java.util.List; + +public record FootprintRemovedPacket(long packedPos, BlockPos pos) implements GCPacket { + public static final PacketType TYPE = PacketType.create(Constant.Packet.FOOTPRINT_REMOVED, FootprintRemovedPacket::new); + + public FootprintRemovedPacket(FriendlyByteBuf buf) { + this(buf.readLong(), buf.readBlockPos()); + } + + @Override + public void write(FriendlyByteBuf buf) { + buf.writeLong(packedPos); + buf.writeBlockPos(pos); + } + + @Override + public void handle(Player player, PacketSender responseSender) { + long packedPos = packedPos(); + BlockPos pos = pos(); + FootprintManager manager = player.level().galacticraft$getFootprintManager(); + List footprintList = manager.getFootprints().get(packedPos); + List toRemove = new ArrayList<>(); + + if (footprintList != null) { + for (Footprint footprint : footprintList) { + if (footprint.position.x > pos.getX() && footprint.position.x < pos.getX() + 1 && footprint.position.z > pos.getZ() && footprint.position.z < pos.getZ() + 1) { + toRemove.add(footprint); + } + } + } + + if (!toRemove.isEmpty()) { + footprintList.removeAll(toRemove); + manager.getFootprints().put(packedPos, footprintList); + } + } + + @Override + public PacketType getType() { + return TYPE; + } +} diff --git a/src/main/java/dev/galacticraft/mod/network/packets/GCPacket.java b/src/main/java/dev/galacticraft/mod/network/packets/GCPacket.java new file mode 100644 index 0000000000..2c78fe365e --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/network/packets/GCPacket.java @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.network.packets; + +import net.fabricmc.fabric.api.networking.v1.FabricPacket; +import net.fabricmc.fabric.api.networking.v1.PacketSender; +import net.minecraft.world.entity.player.Player; + +public interface GCPacket extends FabricPacket { + void handle(Player player, PacketSender responseSender); +} diff --git a/src/main/java/dev/galacticraft/mod/network/packets/OpenScreenPacket.java b/src/main/java/dev/galacticraft/mod/network/packets/OpenScreenPacket.java new file mode 100644 index 0000000000..2a1be95fa8 --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/network/packets/OpenScreenPacket.java @@ -0,0 +1,26 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.network.packets; + +public class OpenScreenPacket { +} diff --git a/src/main/java/dev/galacticraft/mod/network/packets/PlanetTpPacket.java b/src/main/java/dev/galacticraft/mod/network/packets/PlanetTpPacket.java new file mode 100644 index 0000000000..1fe64d9eac --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/network/packets/PlanetTpPacket.java @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.network.packets; + +import dev.galacticraft.mod.Constant; +import net.fabricmc.fabric.api.networking.v1.PacketSender; +import net.fabricmc.fabric.api.networking.v1.PacketType; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.entity.player.Player; + +public record PlanetTpPacket(ResourceLocation body) implements GCPacket { + public static final PacketType TYPE = PacketType.create(Constant.Packet.PLANET_TP, PlanetTpPacket::new); + + public PlanetTpPacket(FriendlyByteBuf buf) { + this(buf.readResourceLocation()); + } + + @Override + public void handle(Player player, PacketSender responseSender) { + + } + + @Override + public void write(FriendlyByteBuf buf) { + buf.writeResourceLocation(body); + } + + @Override + public PacketType getType() { + return TYPE; + } +} diff --git a/src/main/java/dev/galacticraft/mod/network/packets/ResetThirdPersonPacket.java b/src/main/java/dev/galacticraft/mod/network/packets/ResetThirdPersonPacket.java new file mode 100644 index 0000000000..4893384390 --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/network/packets/ResetThirdPersonPacket.java @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.network.packets; + +import dev.galacticraft.mod.Constant.Packet; +import dev.galacticraft.mod.attachments.GCClientPlayer; +import net.fabricmc.fabric.api.networking.v1.FabricPacket; +import net.fabricmc.fabric.api.networking.v1.PacketSender; +import net.fabricmc.fabric.api.networking.v1.PacketType; +import net.minecraft.client.Minecraft; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.world.entity.player.Player; + +public record ResetThirdPersonPacket() implements GCPacket { + public static final PacketType TYPE = PacketType.create(Packet.RESET_THIRD_PERSON, ResetThirdPersonPacket::new); + + public ResetThirdPersonPacket(FriendlyByteBuf buf) { + this(); + } + + @Override + public void write(FriendlyByteBuf buf) {} + + @Override + public PacketType getType() { + return TYPE; + } + + @Override + public void handle(Player player, PacketSender responseSender) { + Minecraft.getInstance().options.setCameraType(GCClientPlayer.get((LocalPlayer) player).getCameraType()); + } +} diff --git a/src/main/java/dev/galacticraft/mod/network/packets/RocketSpawnPacket.java b/src/main/java/dev/galacticraft/mod/network/packets/RocketSpawnPacket.java new file mode 100644 index 0000000000..ed84775f11 --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/network/packets/RocketSpawnPacket.java @@ -0,0 +1,77 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.network.packets; + +import dev.galacticraft.api.rocket.RocketData; +import dev.galacticraft.mod.Constant.Packet; +import dev.galacticraft.mod.content.entity.orbital.RocketEntity; +import net.fabricmc.fabric.api.networking.v1.PacketSender; +import net.fabricmc.fabric.api.networking.v1.PacketType; +import net.minecraft.client.Minecraft; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.player.Player; + +import java.util.UUID; + +public record RocketSpawnPacket(EntityType type, int id, UUID uuid, double x, double y, double z, float xRot, float yRot, RocketData data) implements GCPacket { + public static final PacketType TYPE = PacketType.create(Packet.ROCKET_SPAWN, RocketSpawnPacket::new); + public RocketSpawnPacket(FriendlyByteBuf buf) { + this(BuiltInRegistries.ENTITY_TYPE.byId(buf.readVarInt()), buf.readVarInt(), buf.readUUID(), buf.readDouble(), buf.readDouble(), buf.readDouble(), (buf.readByte() * 360) / 256.0F, (buf.readByte() * 360) / 256.0F, RocketData.fromNetwork(buf)); + } + + @Override + public void handle(Player player, PacketSender responseSender) { + RocketEntity entity = (RocketEntity) type.create(player.level()); + assert entity != null; + entity.syncPacketPositionCodec(x, y, z); + entity.setPos(x, y, z); + entity.setXRot(xRot); + entity.setYRot(yRot); + entity.setId(id); + entity.setUUID(uuid); + + entity.setData(data); + + Minecraft.getInstance().level.addEntity(entity); + } + + @Override + public void write(FriendlyByteBuf buf) { + buf.writeVarInt(BuiltInRegistries.ENTITY_TYPE.getId(type)); + buf.writeVarInt(id); + buf.writeUUID(uuid); + buf.writeDouble(x); + buf.writeDouble(y); + buf.writeDouble(z); + buf.writeByte((int) (xRot / 360F * 256F)); + buf.writeByte((int) (yRot / 360F * 256F)); + data.toNetwork(buf); + } + + @Override + public PacketType getType() { + return TYPE; + } +} diff --git a/src/main/java/dev/galacticraft/mod/network/packets/SelectPartPacket.java b/src/main/java/dev/galacticraft/mod/network/packets/SelectPartPacket.java new file mode 100644 index 0000000000..6e56a45bc0 --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/network/packets/SelectPartPacket.java @@ -0,0 +1,77 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.network.packets; + +import dev.galacticraft.api.rocket.part.RocketPart; +import dev.galacticraft.api.rocket.part.RocketPartTypes; +import dev.galacticraft.mod.Constant.Packet; +import dev.galacticraft.mod.screen.RocketWorkbenchMenu; +import net.fabricmc.fabric.api.networking.v1.PacketSender; +import net.fabricmc.fabric.api.networking.v1.PacketType; +import net.minecraft.core.Registry; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.entity.player.Player; +import org.jetbrains.annotations.Nullable; + +public class SelectPartPacket implements GCPacket { + public static final PacketType TYPE = PacketType.create(Packet.SELECT_PART, SelectPartPacket::new); + + private final RocketPartTypes type; + @Nullable + private final ResourceKey> key; + + public SelectPartPacket(RocketPartTypes type, @Nullable ResourceKey> key) { + this.type = type; + this.key = (ResourceKey>) key; + } + + public SelectPartPacket(FriendlyByteBuf buf) { + this.type = buf.readEnum(RocketPartTypes.class); + this.key = buf.readBoolean() ? ResourceKey.create(((ResourceKey>>) type.key), buf.readResourceLocation()) : null; + } + + @Override + public void handle(Player player, PacketSender responseSender) { + if (player.containerMenu instanceof RocketWorkbenchMenu menu) { + menu.getSelection(type).setSelection(key == null ? null : key.location()); + menu.workbench.setChanged(); + } + } + + @Override + public void write(FriendlyByteBuf buf) { + buf.writeEnum(type); + if (key != null) { + buf.writeBoolean(true); + buf.writeResourceLocation(key.location()); + } else { + buf.writeBoolean(false); + } + } + + @Override + public PacketType getType() { + return TYPE; + } +} diff --git a/src/main/java/dev/galacticraft/mod/network/packets/ToggleBubbleVisibilityPacket.java b/src/main/java/dev/galacticraft/mod/network/packets/ToggleBubbleVisibilityPacket.java new file mode 100644 index 0000000000..365d912a3a --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/network/packets/ToggleBubbleVisibilityPacket.java @@ -0,0 +1,59 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.network.packets; + +import dev.galacticraft.mod.Constant.Packet; +import dev.galacticraft.mod.content.block.entity.machine.OxygenBubbleDistributorBlockEntity; +import dev.galacticraft.mod.screen.OxygenBubbleDistributorMenu; +import net.fabricmc.fabric.api.networking.v1.PacketSender; +import net.fabricmc.fabric.api.networking.v1.PacketType; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.world.entity.player.Player; + +public record ToggleBubbleVisibilityPacket(boolean visible) implements GCPacket { + public static final PacketType TYPE = PacketType.create(Packet.BUBBLE_VISIBLE, ToggleBubbleVisibilityPacket::new); + + public ToggleBubbleVisibilityPacket(FriendlyByteBuf buf) { + this(buf.readBoolean()); + } + + @Override + public void handle(Player player, PacketSender responseSender) { + if (player.containerMenu instanceof OxygenBubbleDistributorMenu sHandler) { + OxygenBubbleDistributorBlockEntity machine = sHandler.machine; + if (machine.getSecurity().hasAccess(player)) { + machine.setBubbleVisible(visible); + } + } + } + + @Override + public void write(FriendlyByteBuf buf) { + buf.writeBoolean(visible); + } + + @Override + public PacketType getType() { + return TYPE; + } +} diff --git a/src/main/java/dev/galacticraft/mod/network/s2c/BubbleSizePayload.java b/src/main/java/dev/galacticraft/mod/network/s2c/BubbleSizePayload.java deleted file mode 100644 index 9088f9cddf..0000000000 --- a/src/main/java/dev/galacticraft/mod/network/s2c/BubbleSizePayload.java +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.network.s2c; - -import dev.galacticraft.impl.network.s2c.S2CPayload; -import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.content.block.entity.machine.OxygenBubbleDistributorBlockEntity; -import io.netty.buffer.ByteBuf; -import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; -import net.minecraft.client.multiplayer.ClientLevel; -import net.minecraft.core.BlockPos; -import net.minecraft.core.SectionPos; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.level.block.entity.BlockEntity; -import org.jetbrains.annotations.NotNull; - -public record BubbleSizePayload(BlockPos pos, double size) implements S2CPayload { - public static final StreamCodec STREAM_CODEC = StreamCodec.composite( - BlockPos.STREAM_CODEC, - p -> p.pos, - ByteBufCodecs.DOUBLE, - p -> p.size, - BubbleSizePayload::new - ); - - public static final ResourceLocation ID = Constant.id("bubble_size"); - public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(ID); - - public BubbleSizePayload { - if (size < 0) { - throw new IllegalArgumentException("Size cannot be negative"); - } - } - - @Override - public Runnable handle(@NotNull ClientPlayNetworking.Context context) { - return () -> { - ClientLevel level = context.client().level; - if (level != null && level.hasChunk(SectionPos.blockToSectionCoord(this.pos().getX()), SectionPos.blockToSectionCoord(this.pos().getZ()))) { - BlockEntity entity = level.getBlockEntity(this.pos()); - if (entity instanceof OxygenBubbleDistributorBlockEntity machine) { - machine.setSize(this.size()); - } - } - }; - } - - @Override - public @NotNull Type type() { - return TYPE; - } -} diff --git a/src/main/java/dev/galacticraft/mod/network/s2c/BubbleUpdatePayload.java b/src/main/java/dev/galacticraft/mod/network/s2c/BubbleUpdatePayload.java deleted file mode 100644 index 1730429ea0..0000000000 --- a/src/main/java/dev/galacticraft/mod/network/s2c/BubbleUpdatePayload.java +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.network.s2c; - -import dev.galacticraft.impl.network.s2c.S2CPayload; -import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.content.block.entity.machine.OxygenBubbleDistributorBlockEntity; -import io.netty.buffer.ByteBuf; -import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; -import net.minecraft.core.BlockPos; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import org.jetbrains.annotations.NotNull; - -public record BubbleUpdatePayload(BlockPos pos, byte maxSize, double size, boolean visible) implements S2CPayload { - public static final ResourceLocation ID = Constant.id("bubble_update"); - public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(ID); - public static final StreamCodec STREAM_CODEC = StreamCodec.composite( - BlockPos.STREAM_CODEC, - p -> p.pos, - ByteBufCodecs.BYTE, - p -> p.maxSize, - ByteBufCodecs.DOUBLE, - p -> p.size, - ByteBufCodecs.BOOL, - p -> p.visible, - BubbleUpdatePayload::new - ); - - @Override - public Runnable handle(ClientPlayNetworking.@NotNull Context context) { - return () -> { - if (context.player().level().getBlockEntity(this.pos) instanceof OxygenBubbleDistributorBlockEntity machine) { - machine.setTargetSize(this.maxSize); - machine.setSize(this.size); - machine.setBubbleVisible(this.visible); - } - }; - } - - @Override - public @NotNull Type type() { - return TYPE; - } -} diff --git a/src/main/java/dev/galacticraft/mod/network/s2c/FootprintPacket.java b/src/main/java/dev/galacticraft/mod/network/s2c/FootprintPacket.java deleted file mode 100644 index dc56603120..0000000000 --- a/src/main/java/dev/galacticraft/mod/network/s2c/FootprintPacket.java +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.network.s2c; - -import dev.galacticraft.impl.network.s2c.S2CPayload; -import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.client.render.FootprintRenderer; -import dev.galacticraft.mod.misc.footprint.Footprint; -import dev.galacticraft.mod.util.StreamCodecs; -import io.netty.buffer.ByteBuf; -import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import org.jetbrains.annotations.NotNull; - -import java.util.List; - -public record FootprintPacket(long chunk, List footprints) implements S2CPayload { - public static final StreamCodec STREAM_CODEC = StreamCodec.composite( - StreamCodecs.LONG, - p -> p.chunk, - ByteBufCodecs.list().apply(Footprint.STREAM_CODEC), - p -> p.footprints, - FootprintPacket::new - ); - public static final ResourceLocation ID = Constant.id("footprint"); - public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(ID); - - @Override - public Runnable handle(ClientPlayNetworking.@NotNull Context context) { - return () -> FootprintRenderer.setFootprints(this.chunk, this.footprints); - } - - @Override - public @NotNull Type type() { - return TYPE; - } -} diff --git a/src/main/java/dev/galacticraft/mod/network/s2c/FootprintRemovedPacket.java b/src/main/java/dev/galacticraft/mod/network/s2c/FootprintRemovedPacket.java deleted file mode 100644 index 5e313117d1..0000000000 --- a/src/main/java/dev/galacticraft/mod/network/s2c/FootprintRemovedPacket.java +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.network.s2c; - -import dev.galacticraft.impl.network.s2c.S2CPayload; -import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.misc.footprint.Footprint; -import dev.galacticraft.mod.misc.footprint.FootprintManager; -import dev.galacticraft.mod.util.StreamCodecs; -import io.netty.buffer.ByteBuf; -import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; -import net.minecraft.core.BlockPos; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import org.jetbrains.annotations.NotNull; - -import java.util.ArrayList; -import java.util.List; - -public record FootprintRemovedPacket(long chunk, BlockPos pos) implements S2CPayload { - public static final StreamCodec STREAM_CODEC = StreamCodec.composite( - StreamCodecs.LONG, - p -> p.chunk, - BlockPos.STREAM_CODEC, - p -> p.pos, - FootprintRemovedPacket::new - ); - public static final ResourceLocation ID = Constant.id("footprint_removed"); - public static final Type TYPE = new Type<>(ID); - - @Override - public Runnable handle(ClientPlayNetworking.@NotNull Context context) { - return () -> { - BlockPos pos = pos(); - FootprintManager manager = context.player().level().galacticraft$getFootprintManager(); - List footprintList = manager.getFootprints().get(this.chunk); - List toRemove = new ArrayList<>(); - - if (footprintList != null) { - for (Footprint footprint : footprintList) { - if (footprint.position.x > pos.getX() && footprint.position.x < pos.getX() + 1 && footprint.position.z > pos.getZ() && footprint.position.z < pos.getZ() + 1) { - toRemove.add(footprint); - } - } - } - - if (!toRemove.isEmpty()) { - footprintList.removeAll(toRemove); - manager.getFootprints().put(this.chunk, footprintList); - } - }; - } - - @Override - public @NotNull Type type() { - return TYPE; - } -} diff --git a/src/main/java/dev/galacticraft/mod/network/s2c/OpenCelestialScreenPayload.java b/src/main/java/dev/galacticraft/mod/network/s2c/OpenCelestialScreenPayload.java deleted file mode 100644 index 0f7ed4a58f..0000000000 --- a/src/main/java/dev/galacticraft/mod/network/s2c/OpenCelestialScreenPayload.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.network.s2c; - -import dev.galacticraft.api.registry.AddonRegistries; -import dev.galacticraft.api.rocket.RocketData; -import dev.galacticraft.api.universe.celestialbody.CelestialBody; -import dev.galacticraft.impl.network.s2c.S2CPayload; -import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.client.gui.screen.ingame.CelestialSelectionScreen; -import dev.galacticraft.mod.util.StreamCodecs; -import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; -import net.minecraft.core.Holder; -import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -public record OpenCelestialScreenPayload(@Nullable RocketData data, Holder> celestialBody) implements S2CPayload { - public static final StreamCodec STREAM_CODEC = StreamCodec.composite( - StreamCodecs.ofNullable(RocketData.STREAM_CODEC), - p -> p.data, - ByteBufCodecs.holderRegistry(AddonRegistries.CELESTIAL_BODY), - p -> p.celestialBody, - OpenCelestialScreenPayload::new - ); - - public static final ResourceLocation ID = Constant.id("open_celestial_screen"); - public static final Type TYPE = new Type<>(ID); - - @Override - public @NotNull Type type() { - return TYPE; - } - - @Override - public Runnable handle(ClientPlayNetworking.@NotNull Context context) { - return new Runnable() { - @Override - public void run() { - context.client().setScreen(new CelestialSelectionScreen(false, OpenCelestialScreenPayload.this.data(), true, OpenCelestialScreenPayload.this.celestialBody.value())); - } - }; - } -} diff --git a/src/main/java/dev/galacticraft/mod/network/s2c/ResetPerspectivePacket.java b/src/main/java/dev/galacticraft/mod/network/s2c/ResetPerspectivePacket.java deleted file mode 100644 index 943a98c9e2..0000000000 --- a/src/main/java/dev/galacticraft/mod/network/s2c/ResetPerspectivePacket.java +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.network.s2c; - -import dev.galacticraft.impl.network.s2c.S2CPayload; -import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.attachments.GCClientPlayer; -import io.netty.buffer.ByteBuf; -import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; -import net.minecraft.client.Minecraft; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import org.jetbrains.annotations.NotNull; - -public record ResetPerspectivePacket() implements S2CPayload { - public static final ResetPerspectivePacket INSTANCE = new ResetPerspectivePacket(); - public static final StreamCodec STREAM_CODEC = StreamCodec.unit(INSTANCE); - - public static final ResourceLocation ID = Constant.id("reset_perspective"); - public static final Type TYPE = new Type<>(ID); - - @Override - public Runnable handle(@NotNull ClientPlayNetworking.Context context) { - return () -> Minecraft.getInstance().options.setCameraType(GCClientPlayer.get(context.player()).getCameraType()); - } - - @Override - public @NotNull Type type() { - return TYPE; - } -} diff --git a/src/main/java/dev/galacticraft/mod/network/s2c/RocketSpawnPacket.java b/src/main/java/dev/galacticraft/mod/network/s2c/RocketSpawnPacket.java deleted file mode 100644 index 99f10ed89a..0000000000 --- a/src/main/java/dev/galacticraft/mod/network/s2c/RocketSpawnPacket.java +++ /dev/null @@ -1,98 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.network.s2c; - -import dev.galacticraft.api.rocket.RocketData; -import dev.galacticraft.impl.network.s2c.S2CPayload; -import dev.galacticraft.mod.Constant; -import dev.galacticraft.mod.content.entity.orbital.RocketEntity; -import dev.galacticraft.mod.util.StreamCodecs; -import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; -import net.minecraft.client.multiplayer.ClientLevel; -import net.minecraft.core.UUIDUtil; -import net.minecraft.core.registries.Registries; -import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.entity.EntityType; -import org.jetbrains.annotations.NotNull; - -import java.util.UUID; - -public record RocketSpawnPacket(EntityType eType, int id, UUID uuid, double x, double y, double z, float xRot, float yRot, RocketData data) implements S2CPayload { - public static final StreamCodec STREAM_CODEC = StreamCodecs.composite( - ByteBufCodecs.registry(Registries.ENTITY_TYPE), - p -> p.eType, - ByteBufCodecs.VAR_INT, - p -> p.id, - UUIDUtil.STREAM_CODEC, - p -> p.uuid, - ByteBufCodecs.DOUBLE, - p -> p.x, - ByteBufCodecs.DOUBLE, - p -> p.y, - ByteBufCodecs.DOUBLE, - p -> p.z, - ByteBufCodecs.FLOAT, - p -> p.xRot, - ByteBufCodecs.FLOAT, - p -> p.yRot, - RocketData.STREAM_CODEC, - p -> p.data, - RocketSpawnPacket::new - ); - - public static final ResourceLocation ID = Constant.id("spawn_rocket"); - public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(ID); - - @Override - public Runnable handle(ClientPlayNetworking.@NotNull Context context) { - return new Runnable() { - @Override - public void run() { - ClientLevel level = context.client().level; - assert level != null; - - RocketEntity entity = (RocketEntity) RocketSpawnPacket.this.eType.create(level); - assert entity != null; - entity.syncPacketPositionCodec(x, y, z); - entity.setPos(x, y, z); - entity.setXRot(xRot); - entity.setYRot(yRot); - entity.setId(id); - entity.setUUID(uuid); - - entity.setData(data); - - level.addEntity(entity); - } - }; - } - - @Override - public @NotNull Type type() { - return TYPE; - } -} diff --git a/src/main/java/dev/galacticraft/mod/particle/ComplexParticleType.java b/src/main/java/dev/galacticraft/mod/particle/ComplexParticleType.java new file mode 100644 index 0000000000..91b02a3a56 --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/particle/ComplexParticleType.java @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.particle; + +import com.mojang.serialization.Codec; +import net.minecraft.core.particles.ParticleOptions; +import net.minecraft.core.particles.ParticleType; + +public class ComplexParticleType extends ParticleType { + private final Codec codec; + + protected ComplexParticleType(boolean overrideLimiter, ParticleOptions.Deserializer deserializer, Codec codec) { + super(overrideLimiter, deserializer); + this.codec = codec; + } + + @Override + public Codec codec() { + return this.codec; + } +} diff --git a/src/main/java/dev/galacticraft/mod/particle/EntityParticleOption.java b/src/main/java/dev/galacticraft/mod/particle/EntityParticleOption.java index e841a1e8fe..3038942c83 100644 --- a/src/main/java/dev/galacticraft/mod/particle/EntityParticleOption.java +++ b/src/main/java/dev/galacticraft/mod/particle/EntityParticleOption.java @@ -22,39 +22,68 @@ package dev.galacticraft.mod.particle; -import com.mojang.serialization.MapCodec; -import io.netty.buffer.ByteBuf; +import com.mojang.brigadier.StringReader; +import com.mojang.brigadier.exceptions.CommandSyntaxException; +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.core.UUIDUtil; import net.minecraft.core.particles.ParticleOptions; import net.minecraft.core.particles.ParticleType; -import net.minecraft.network.codec.StreamCodec; -import org.jetbrains.annotations.NotNull; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.util.ExtraCodecs; +import java.util.Locale; import java.util.UUID; public class EntityParticleOption implements ParticleOptions { - private final ParticleType type; - private final UUID uuid; + public static final Codec CODEC = RecordCodecBuilder.create( + instance -> instance.group( + BuiltInRegistries.PARTICLE_TYPE.byNameCodec().fieldOf("particle").forGetter(EntityParticleOption::getType), + UUIDUtil.CODEC.fieldOf("uuid").forGetter(EntityParticleOption::getEntityUUID) + ).apply(instance, EntityParticleOption::new) + ); - public EntityParticleOption(ParticleType type, UUID uuid) { - this.type = type; - this.uuid = uuid; + public static final ParticleOptions.Deserializer DESERIALIZER = new ParticleOptions.Deserializer<>() { + @Override + public EntityParticleOption fromCommand(ParticleType particleTypeIn, StringReader reader) throws CommandSyntaxException { + reader.expect(' '); + return new EntityParticleOption(particleTypeIn, UUID.fromString(reader.readString())); + } + + @Override + public EntityParticleOption fromNetwork(ParticleType particleTypeIn, FriendlyByteBuf buffer) { + return new EntityParticleOption(particleTypeIn, buffer.readUUID()); + } + }; + + private final ParticleType particleType; + private final UUID entityUUID; + + public EntityParticleOption(ParticleType particleType, UUID entityUUID) { + this.particleType = particleType; + this.entityUUID = entityUUID; } - public static MapCodec codec(ParticleType type) { - return UUIDUtil.CODEC.xmap(uuid -> new EntityParticleOption(type, uuid), o -> o.uuid).fieldOf("uuid"); + @Override + public ParticleType getType() { + return particleType; } - public static StreamCodec streamCodec(ParticleType type) { - return UUIDUtil.STREAM_CODEC.map(uuid -> new EntityParticleOption(type, uuid), o -> o.uuid); + @Override + public void writeToNetwork(FriendlyByteBuf buffer) { + buffer.writeBoolean(this.entityUUID != null); + if (this.entityUUID != null) { + buffer.writeUUID(this.entityUUID); + } } @Override - public @NotNull ParticleType getType() { - return this.type; + public String writeToString() { + return String.format(Locale.ROOT, "%s %s", BuiltInRegistries.PARTICLE_TYPE.getKey(this.getType()), this.entityUUID.toString()); } - public UUID getUuid() { - return this.uuid; + public UUID getEntityUUID() { + return entityUUID; } } diff --git a/src/main/java/dev/galacticraft/mod/particle/GCParticleTypes.java b/src/main/java/dev/galacticraft/mod/particle/GCParticleTypes.java index ea00dc3a5d..bdab8ed48d 100644 --- a/src/main/java/dev/galacticraft/mod/particle/GCParticleTypes.java +++ b/src/main/java/dev/galacticraft/mod/particle/GCParticleTypes.java @@ -40,10 +40,10 @@ public class GCParticleTypes { public static final SimpleParticleType SPARK_PARTICLE = PARTICLES.register(Particle.SPARK, FabricParticleTypes.simple()); public static final SimpleParticleType DRIPPING_SULFURIC_ACID = PARTICLES.register(Particle.DRIPPING_SULFURIC_ACID, FabricParticleTypes.simple()); public static final SimpleParticleType FALLING_SULFURIC_ACID = PARTICLES.register(Particle.FALLING_SULFURIC_ACID, FabricParticleTypes.simple()); // Why does this exist? - public static final ParticleType LAUNCH_SMOKE_PARTICLE = PARTICLES.register(Particle.LAUNCH_SMOKE, FabricParticleTypes.complex(false, LaunchSmokeParticleOption.CODEC, LaunchSmokeParticleOption.STREAM_CODEC)); - public static final ParticleType LAUNCH_FLAME = PARTICLES.register(Particle.LAUNCH_FLAME, FabricParticleTypes.complex(false, EntityParticleOption::codec, EntityParticleOption::streamCodec)); - public static final ParticleType LAUNCH_FLAME_LAUNCHED = PARTICLES.register(Particle.LAUNCH_FLAME_LAUNCHED, FabricParticleTypes.complex(false, EntityParticleOption::codec, EntityParticleOption::streamCodec)); - public static final ParticleType ACID_VAPOR_PARTICLE = PARTICLES.register(Particle.ACID_VAPOR_PARTICLE, FabricParticleTypes.complex(false, ScaleParticleType::codec, ScaleParticleType::streamCodec)); + public static final ComplexParticleType LAUNCH_SMOKE_PARTICLE = PARTICLES.register(Particle.LAUNCH_SMOKE, new ComplexParticleType<>(false, LaunchSmokeParticleOption.DESERIALIZER, LaunchSmokeParticleOption.CODEC)); // FabricParticleTypes.complex doesn't support codec ): this was fixed in 1.20.5 snapshots + public static final ComplexParticleType LAUNCH_FLAME = PARTICLES.register(Particle.LAUNCH_FLAME, new ComplexParticleType<>(false, EntityParticleOption.DESERIALIZER, EntityParticleOption.CODEC)); + public static final ComplexParticleType LAUNCH_FLAME_LAUNCHED = PARTICLES.register(Particle.LAUNCH_FLAME_LAUNCHED, new ComplexParticleType<>(false, EntityParticleOption.DESERIALIZER, EntityParticleOption.CODEC)); + public static final ComplexParticleType ACID_VAPOR_PARTICLE = PARTICLES.register(Particle.ACID_VAPOR_PARTICLE, new ComplexParticleType<>(false, ScaleParticleType.DESERIALIZER, ScaleParticleType.CODEC)); public static void register() {} } diff --git a/src/main/java/dev/galacticraft/mod/particle/LaunchSmokeParticleOption.java b/src/main/java/dev/galacticraft/mod/particle/LaunchSmokeParticleOption.java index b776a38643..76d83e14b3 100644 --- a/src/main/java/dev/galacticraft/mod/particle/LaunchSmokeParticleOption.java +++ b/src/main/java/dev/galacticraft/mod/particle/LaunchSmokeParticleOption.java @@ -22,34 +22,69 @@ package dev.galacticraft.mod.particle; +import com.mojang.brigadier.StringReader; +import com.mojang.brigadier.exceptions.CommandSyntaxException; import com.mojang.serialization.Codec; -import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; -import io.netty.buffer.ByteBuf; import net.minecraft.core.particles.ParticleOptions; import net.minecraft.core.particles.ParticleType; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; -import org.jetbrains.annotations.NotNull; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.network.FriendlyByteBuf; -public record LaunchSmokeParticleOption(boolean launched, float scale) implements ParticleOptions { - public static final MapCodec CODEC = RecordCodecBuilder.mapCodec( +import java.util.Locale; + +public class LaunchSmokeParticleOption implements ParticleOptions { + public static final Codec CODEC = RecordCodecBuilder.create( instance -> instance.group( - Codec.BOOL.fieldOf("launched").forGetter(LaunchSmokeParticleOption::launched), - Codec.FLOAT.fieldOf("scale").forGetter(LaunchSmokeParticleOption::scale) + Codec.BOOL.fieldOf("launched").forGetter(LaunchSmokeParticleOption::isLaunched), + Codec.FLOAT.fieldOf("scale").forGetter(LaunchSmokeParticleOption::getScale) ).apply(instance, LaunchSmokeParticleOption::new) ); - public static final StreamCodec STREAM_CODEC = StreamCodec.composite( - ByteBufCodecs.BOOL, - o -> o.launched, - ByteBufCodecs.FLOAT, - o -> o.scale, - LaunchSmokeParticleOption::new - ); + public static final ParticleOptions.Deserializer DESERIALIZER = new ParticleOptions.Deserializer<>() { + public LaunchSmokeParticleOption fromCommand(ParticleType particleType, StringReader stringReader) throws CommandSyntaxException { + stringReader.expect(' '); + boolean launched = stringReader.readBoolean(); + float scale = stringReader.readFloat(); + return new LaunchSmokeParticleOption(launched, scale); + } + + public LaunchSmokeParticleOption fromNetwork(ParticleType particleType, FriendlyByteBuf buffer) { + return new LaunchSmokeParticleOption(buffer.readBoolean(), buffer.readFloat()); + } + }; + + private final boolean launched; + private final float scale; + + public LaunchSmokeParticleOption(boolean launched, float scale) { + this.launched = launched; + this.scale = scale; + } @Override - public @NotNull ParticleType getType() { + public ParticleType getType() { return GCParticleTypes.LAUNCH_SMOKE_PARTICLE; } + + @Override + public void writeToNetwork(FriendlyByteBuf buffer) { + buffer.writeBoolean(this.launched); + buffer.writeFloat(this.scale); + } + + @Override + public String writeToString() { + return String.format( + Locale.ROOT, "%s %s %.2f", BuiltInRegistries.PARTICLE_TYPE.getKey(this.getType()), this.launched, this.scale + ); + } + + public boolean isLaunched() { + return launched; + } + + public float getScale() { + return scale; + } } diff --git a/src/main/java/dev/galacticraft/mod/particle/ScaleParticleType.java b/src/main/java/dev/galacticraft/mod/particle/ScaleParticleType.java index 1c7520bf31..01a81d93ae 100644 --- a/src/main/java/dev/galacticraft/mod/particle/ScaleParticleType.java +++ b/src/main/java/dev/galacticraft/mod/particle/ScaleParticleType.java @@ -22,33 +22,48 @@ package dev.galacticraft.mod.particle; +import com.mojang.brigadier.StringReader; +import com.mojang.brigadier.exceptions.CommandSyntaxException; import com.mojang.serialization.Codec; -import com.mojang.serialization.MapCodec; -import io.netty.buffer.ByteBuf; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import net.minecraft.core.particles.ParticleOptions; import net.minecraft.core.particles.ParticleType; -import net.minecraft.core.particles.ScalableParticleOptionsBase; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; -import org.jetbrains.annotations.NotNull; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.network.FriendlyByteBuf; -public class ScaleParticleType extends ScalableParticleOptionsBase { - private final ParticleType type; +import java.util.Locale; - public ScaleParticleType(ParticleType type, float scale) { - super(scale); - this.type = type; - } +public record ScaleParticleType(float scale) implements ParticleOptions { + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Codec.FLOAT.fieldOf("scale").forGetter(type -> type.scale) + ).apply(instance, ScaleParticleType::new)); + public static final Deserializer DESERIALIZER = new Deserializer<>() { + @Override + public ScaleParticleType fromCommand(ParticleType particleType, StringReader reader) throws CommandSyntaxException { + reader.expect(' '); + return new ScaleParticleType(reader.readFloat()); + } + + @Override + public ScaleParticleType fromNetwork(ParticleType particleType, FriendlyByteBuf buffer) { + return new ScaleParticleType(buffer.readFloat()); + } + }; - public static MapCodec codec(ParticleType type) { - return Codec.FLOAT.xmap(uuid -> new ScaleParticleType(type, uuid), ScalableParticleOptionsBase::getScale).fieldOf("scale"); + @Override + public ParticleType getType() { + return GCParticleTypes.ACID_VAPOR_PARTICLE; // TODO: make this more general purpose } - public static StreamCodec streamCodec(ParticleType type) { - return ByteBufCodecs.FLOAT.map(uuid -> new ScaleParticleType(type, uuid), ScalableParticleOptionsBase::getScale); + @Override + public void writeToNetwork(FriendlyByteBuf buffer) { + buffer.writeFloat(this.scale); } @Override - public @NotNull ParticleType getType() { - return this.type; + public String writeToString() { + return String.format( + Locale.ROOT, "%s %.2f", BuiltInRegistries.PARTICLE_TYPE.getKey(this.getType()), this.scale + ); } } diff --git a/src/main/java/dev/galacticraft/mod/recipe/CompressingRecipe.java b/src/main/java/dev/galacticraft/mod/recipe/CompressingRecipe.java index 839c9223ca..1a1c89ce16 100644 --- a/src/main/java/dev/galacticraft/mod/recipe/CompressingRecipe.java +++ b/src/main/java/dev/galacticraft/mod/recipe/CompressingRecipe.java @@ -22,11 +22,11 @@ package dev.galacticraft.mod.recipe; -import net.minecraft.world.item.crafting.CraftingInput; +import net.minecraft.world.inventory.CraftingContainer; import net.minecraft.world.item.crafting.Recipe; import net.minecraft.world.item.crafting.RecipeType; -public interface CompressingRecipe extends Recipe { +public interface CompressingRecipe extends Recipe { @Override default RecipeType getType() { return GCRecipes.COMPRESSING_TYPE; diff --git a/src/main/java/dev/galacticraft/mod/recipe/FabricationRecipe.java b/src/main/java/dev/galacticraft/mod/recipe/FabricationRecipe.java index c769e8a9a8..ea4cd9df77 100644 --- a/src/main/java/dev/galacticraft/mod/recipe/FabricationRecipe.java +++ b/src/main/java/dev/galacticraft/mod/recipe/FabricationRecipe.java @@ -23,68 +23,70 @@ package dev.galacticraft.mod.recipe; import com.mojang.serialization.Codec; -import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; -import net.minecraft.core.HolderLookup; +import dev.galacticraft.mod.Constant; import net.minecraft.core.NonNullList; -import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; +import net.minecraft.core.RegistryAccess; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.util.ExtraCodecs; +import net.minecraft.world.Container; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.crafting.*; +import net.minecraft.world.item.crafting.Ingredient; +import net.minecraft.world.item.crafting.Recipe; +import net.minecraft.world.item.crafting.RecipeSerializer; +import net.minecraft.world.item.crafting.RecipeType; import net.minecraft.world.level.Level; -import org.jetbrains.annotations.NotNull; -public class FabricationRecipe implements Recipe { +public class FabricationRecipe implements Recipe { private final String group; - private final ItemStack result; - private final NonNullList ingredients = NonNullList.withSize(1, Ingredient.EMPTY); + private final ItemStack output; + private final NonNullList input = NonNullList.withSize(1, Ingredient.EMPTY); private final int time; - public FabricationRecipe(String group, Ingredient ingredients, ItemStack result, int time) { + public FabricationRecipe(String group, Ingredient input, ItemStack output, int time) { this.group = group; - this.ingredients.set(0, ingredients); - this.result = result; + this.input.set(0, input); + this.output = output; this.time = time; } @Override - public boolean matches(RecipeInput input, Level world) { - return this.ingredients.get(0).test(input.getItem(0)); + public boolean canCraftInDimensions(int width, int height) { + return width * height > 0; } @Override - public @NotNull ItemStack assemble(RecipeInput input, HolderLookup.Provider lookup) { - return this.getResultItem(lookup).copy(); + public ItemStack getResultItem(RegistryAccess registryAccess) { + return this.output; } @Override - public boolean canCraftInDimensions(int width, int height) { - return width * height > 0; + public NonNullList getIngredients() { + return this.input; } @Override - public @NotNull ItemStack getResultItem(HolderLookup.Provider registriesLookup) { - return this.result; + public boolean matches(Container inventory, Level world) { + return this.input.get(0).test(inventory.getItem(0)); } @Override - public @NotNull NonNullList getIngredients() { - return this.ingredients; + public ItemStack assemble(Container container, RegistryAccess registryAccess) { + return this.getResultItem(registryAccess).copy(); } @Override - public @NotNull RecipeType getType() { + public RecipeType getType() { return GCRecipes.FABRICATION_TYPE; } @Override - public @NotNull RecipeSerializer getSerializer() { + public RecipeSerializer getSerializer() { return GCRecipes.FABRICATION_SERIALIZER; } @Override - public @NotNull String getGroup() { + public String getGroup() { return this.group; } @@ -94,33 +96,29 @@ public int getProcessingTime() { public static class Serializer implements RecipeSerializer { public static final Serializer INSTANCE = new Serializer(); - public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group( - Codec.STRING.optionalFieldOf("group", "").forGetter(recipe -> recipe.group), - Ingredient.CODEC.fieldOf("ingredient").forGetter(recipe -> recipe.ingredients.get(0)), - ItemStack.CODEC.fieldOf("result").forGetter(recipe -> recipe.result), - Codec.INT.optionalFieldOf("time", 300).forGetter(recipe -> recipe.time) + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + ExtraCodecs.strictOptionalField(Codec.STRING, "group", "").forGetter(recipe -> recipe.group), + Ingredient.CODEC.fieldOf("ingredient").forGetter(recipe -> recipe.input.get(0)), + ItemStack.CODEC.fieldOf("result").forGetter(recipe -> recipe.output), + ExtraCodecs.strictOptionalField(Codec.INT, "time", 300).forGetter(recipe -> recipe.time) ).apply(instance, FabricationRecipe::new)); - public static final StreamCodec STREAM_CODEC = StreamCodec.composite( - ByteBufCodecs.STRING_UTF8, - r -> r.group, - Ingredient.CONTENTS_STREAM_CODEC, - r -> r.ingredients.get(0), - ItemStack.STREAM_CODEC, - r -> r.result, - ByteBufCodecs.INT, - r -> r.time, - FabricationRecipe::new - ); - @Override - public @NotNull MapCodec codec() { + public Codec codec() { return CODEC; } @Override - public @NotNull StreamCodec streamCodec() { - return STREAM_CODEC; + public FabricationRecipe fromNetwork(FriendlyByteBuf buf) { + return new FabricationRecipe(buf.readUtf(Constant.Misc.MAX_STRING_READ), Ingredient.fromNetwork(buf), buf.readItem(), buf.readInt()); + } + + @Override + public void toNetwork(FriendlyByteBuf buf, FabricationRecipe recipe) { + buf.writeUtf(recipe.group); + recipe.input.get(0).toNetwork(buf); + buf.writeItem(recipe.output); + buf.writeInt(recipe.time); } } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/recipe/GCRecipeType.java b/src/main/java/dev/galacticraft/mod/recipe/GCRecipeType.java index c84f20ed92..a494aaf543 100644 --- a/src/main/java/dev/galacticraft/mod/recipe/GCRecipeType.java +++ b/src/main/java/dev/galacticraft/mod/recipe/GCRecipeType.java @@ -24,14 +24,14 @@ import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.Container; import net.minecraft.world.item.crafting.Recipe; -import net.minecraft.world.item.crafting.RecipeInput; import net.minecraft.world.item.crafting.RecipeType; -public class GCRecipeType> implements RecipeType { +public class GCRecipeType> implements RecipeType { @Override public String toString() { ResourceLocation id = BuiltInRegistries.RECIPE_TYPE.getKey(this); - return id == null ? "" : id.toString(); + return id == null ? "Unregistered GCRecipeType" : id.toString(); } } diff --git a/src/main/java/dev/galacticraft/mod/recipe/ShapedCompressingRecipe.java b/src/main/java/dev/galacticraft/mod/recipe/ShapedCompressingRecipe.java index 1873dcbc65..ae911d0b10 100644 --- a/src/main/java/dev/galacticraft/mod/recipe/ShapedCompressingRecipe.java +++ b/src/main/java/dev/galacticraft/mod/recipe/ShapedCompressingRecipe.java @@ -22,52 +22,53 @@ package dev.galacticraft.mod.recipe; +import com.google.common.annotations.VisibleForTesting; +import com.google.gson.JsonArray; +import com.google.gson.JsonSyntaxException; import com.mojang.serialization.Codec; -import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; -import net.minecraft.core.HolderLookup; +import dev.galacticraft.mod.Constant; import net.minecraft.core.NonNullList; -import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; +import net.minecraft.core.RegistryAccess; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.util.ExtraCodecs; +import net.minecraft.util.GsonHelper; +import net.minecraft.world.inventory.CraftingContainer; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.crafting.CraftingInput; import net.minecraft.world.item.crafting.Ingredient; import net.minecraft.world.item.crafting.RecipeSerializer; import net.minecraft.world.item.crafting.ShapedRecipePattern; import net.minecraft.world.level.Level; -import org.jetbrains.annotations.NotNull; + +import java.util.HashSet; +import java.util.Map; +import java.util.Set; public class ShapedCompressingRecipe implements CompressingRecipe { - private final String group; private final ShapedRecipePattern pattern; - private final ItemStack result; + private final ItemStack output; + private final String group; private final int time; - public ShapedCompressingRecipe(String group, ShapedRecipePattern pattern, ItemStack result, int time) { + public ShapedCompressingRecipe(String group, ShapedRecipePattern pattern, ItemStack output, int time) { this.group = group; this.pattern = pattern; - this.result = result; + this.output = output; this.time = time; } @Override - public @NotNull RecipeSerializer getSerializer() { + public RecipeSerializer getSerializer() { return GCRecipes.SHAPED_COMPRESSING_SERIALIZER; } @Override - public @NotNull String getGroup() { + public String getGroup() { return this.group; } @Override - public @NotNull ItemStack getResultItem(HolderLookup.Provider registriesLookup) { - return this.result; - } - - @Override - public @NotNull NonNullList getIngredients() { + public NonNullList getIngredients() { return this.pattern.ingredients(); } @@ -77,13 +78,18 @@ public boolean canCraftInDimensions(int width, int height) { } @Override - public boolean matches(CraftingInput input, Level level) { - return this.pattern.matches(input); + public ItemStack getResultItem(RegistryAccess registryAccess) { + return this.output; + } + + @Override + public boolean matches(CraftingContainer inv, Level world) { + return this.pattern.matches(inv); } @Override - public @NotNull ItemStack assemble(CraftingInput craftingInput, HolderLookup.Provider provider) { - return this.getResultItem(provider).copy(); + public ItemStack assemble(CraftingContainer container, RegistryAccess registryAccess) { + return this.getResultItem(registryAccess).copy(); } public int getWidth() { @@ -94,10 +100,107 @@ public int getHeight() { return this.pattern.height(); } - @Override - public boolean isIncomplete() { - NonNullList nonNullList = this.getIngredients(); - return nonNullList.isEmpty() || nonNullList.stream().filter(ingredient -> !ingredient.isEmpty()).anyMatch(ingredient -> ingredient.getItems().length == 0); + private static NonNullList getIngredients(String[] pattern, Map key, int width, int height) { + NonNullList defaultedList = NonNullList.withSize(width * height, Ingredient.EMPTY); + Set set = new HashSet<>(key.keySet()); + set.remove(" "); + + for (int i = 0; i < pattern.length; ++i) { + for (int j = 0; j < pattern[i].length(); ++j) { + String string = pattern[i].substring(j, j + 1); + Ingredient ingredient = key.get(string); + if (ingredient == null) { + throw new JsonSyntaxException("Pattern references symbol '" + string + "' but it's not defined in the key"); + } + + set.remove(string); + defaultedList.set(j + width * i, ingredient); + } + } + + if (!set.isEmpty()) { + throw new JsonSyntaxException("Key defines symbols that aren't used in pattern: " + set); + } else { + return defaultedList; + } + } + + @VisibleForTesting + static String[] combinePattern(String... lines) { + int i = Integer.MAX_VALUE; + int j = 0; + int k = 0; + int l = 0; + + for (int m = 0; m < lines.length; ++m) { + String string = lines[m]; + i = Math.min(i, findNextIngredient(string)); + int n = findNextIngredientReverse(string); + j = Math.max(j, n); + if (n < 0) { + if (k == m) { + ++k; + } + + ++l; + } else { + l = 0; + } + } + + if (lines.length == l) { + return new String[0]; + } else { + String[] strings = new String[lines.length - l - k]; + + for (int o = 0; o < strings.length; ++o) { + strings[o] = lines[o + k].substring(i, j + 1); + } + + return strings; + } + } + + private static int findNextIngredient(String pattern) { + int i = 0; + while (i < pattern.length() && pattern.charAt(i) == ' ') { + ++i; + } + + return i; + } + + private static int findNextIngredientReverse(String pattern) { + int i = pattern.length() - 1; + while (i >= 0 && pattern.charAt(i) == ' ') { + --i; + } + + return i; + } + + private static String[] getPattern(JsonArray json) { + String[] strings = new String[json.size()]; + if (strings.length > 3) { + throw new JsonSyntaxException("Invalid pattern: too many rows, 3 is maximum"); + } else if (strings.length == 0) { + throw new JsonSyntaxException("Invalid pattern: empty pattern not allowed"); + } else { + for (int i = 0; i < strings.length; ++i) { + String string = GsonHelper.convertToString(json.get(i), "pattern[" + i + "]"); + if (string.length() > 3) { + throw new JsonSyntaxException("Invalid pattern: too many columns, 3 is maximum"); + } + + if (i > 0 && strings[0].length() != string.length()) { + throw new JsonSyntaxException("Invalid pattern: each row must be the same width"); + } + + strings[i] = string; + } + + return strings; + } } @Override @@ -107,36 +210,35 @@ public int getTime() { public static class Serializer implements RecipeSerializer { public static final Serializer INSTANCE = new Serializer(); - public static final MapCodec CODEC = RecordCodecBuilder.mapCodec( - instance -> instance.group( - Codec.STRING.optionalFieldOf("group", "").forGetter(recipe -> recipe.group), - ShapedRecipePattern.MAP_CODEC.forGetter(recipe -> recipe.pattern), - ItemStack.STRICT_CODEC.fieldOf("result").forGetter(recipe -> recipe.result), - Codec.INT.optionalFieldOf("time", 200).forGetter(recipe -> recipe.time) - ) - .apply(instance, ShapedCompressingRecipe::new) - ); - - public static final StreamCodec STREAM_CODEC = StreamCodec.composite( - ByteBufCodecs.STRING_UTF8, - r -> r.group, - ShapedRecipePattern.STREAM_CODEC, - r -> r.pattern, - ItemStack.STREAM_CODEC, - r -> r.result, - ByteBufCodecs.INT, - r -> r.time, - ShapedCompressingRecipe::new - ); + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + ExtraCodecs.strictOptionalField(Codec.STRING, "group", "").forGetter(recipe -> recipe.group), + ShapedRecipePattern.MAP_CODEC.forGetter(recipe -> recipe.pattern), + ItemStack.CODEC.fieldOf("result").forGetter(recipe -> recipe.output), + ExtraCodecs.strictOptionalField(Codec.INT, "time", 200).forGetter(recipe -> recipe.time) + ).apply(instance, ShapedCompressingRecipe::new)); @Override - public @NotNull MapCodec codec() { + public Codec codec() { return CODEC; } @Override - public @NotNull StreamCodec streamCodec() { - return STREAM_CODEC; + public ShapedCompressingRecipe fromNetwork(FriendlyByteBuf buf) { + ShapedRecipePattern pattern = ShapedRecipePattern.fromNetwork(buf); + String string = buf.readUtf(Constant.Misc.MAX_STRING_READ); + int time = buf.readInt(); + + ItemStack output = buf.readItem(); + return new ShapedCompressingRecipe(string, pattern, output, time); + } + + @Override + public void toNetwork(FriendlyByteBuf buf, ShapedCompressingRecipe recipe) { + recipe.pattern.toNetwork(buf); + buf.writeUtf(recipe.group); + buf.writeInt(recipe.time); + + buf.writeItem(recipe.output); } } } diff --git a/src/main/java/dev/galacticraft/mod/recipe/ShapelessCompressingRecipe.java b/src/main/java/dev/galacticraft/mod/recipe/ShapelessCompressingRecipe.java index f2e18a833c..7be4612470 100644 --- a/src/main/java/dev/galacticraft/mod/recipe/ShapelessCompressingRecipe.java +++ b/src/main/java/dev/galacticraft/mod/recipe/ShapelessCompressingRecipe.java @@ -24,45 +24,44 @@ import com.mojang.serialization.Codec; import com.mojang.serialization.DataResult; -import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; -import net.minecraft.core.HolderLookup; +import dev.galacticraft.mod.Constant; import net.minecraft.core.NonNullList; -import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.StreamCodec; +import net.minecraft.core.RegistryAccess; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.util.ExtraCodecs; import net.minecraft.world.entity.player.StackedContents; +import net.minecraft.world.inventory.CraftingContainer; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.crafting.CraftingInput; import net.minecraft.world.item.crafting.Ingredient; import net.minecraft.world.item.crafting.RecipeSerializer; import net.minecraft.world.level.Level; -import org.jetbrains.annotations.NotNull; public record ShapelessCompressingRecipe(String group, - ItemStack result, - NonNullList ingredients, int time) implements CompressingRecipe { + ItemStack output, + NonNullList input, int time) implements CompressingRecipe { @Override - public @NotNull RecipeSerializer getSerializer() { + public RecipeSerializer getSerializer() { return GCRecipes.SHAPELESS_COMPRESSING_SERIALIZER; } @Override - public @NotNull String getGroup() { + public String getGroup() { return this.group; } @Override - public @NotNull NonNullList getIngredients() { - return this.ingredients; + public NonNullList getIngredients() { + return this.input; } @Override - public boolean matches(CraftingInput inv, Level world) { + public boolean matches(CraftingContainer inv, Level world) { StackedContents recipeFinder = new StackedContents(); int i = 0; - for (int j = 0; j < inv.size(); ++j) { + for (int j = 0; j < inv.getContainerSize(); ++j) { ItemStack itemStack = inv.getItem(j); if (!itemStack.isEmpty()) { ++i; @@ -70,80 +69,80 @@ public boolean matches(CraftingInput inv, Level world) { } } - return i == this.ingredients.size() && recipeFinder.canCraft(this, null); + return i == this.input.size() && recipeFinder.canCraft(this, null); } @Override - public @NotNull ItemStack assemble(CraftingInput input, HolderLookup.Provider lookup) { - return this.getResultItem(lookup).copy(); + public ItemStack assemble(CraftingContainer container, RegistryAccess registryAccess) { + return this.getResultItem(registryAccess).copy(); } @Override public boolean canCraftInDimensions(int width, int height) { - return width * height >= this.ingredients.size(); + return width * height >= this.input.size(); } @Override - public @NotNull ItemStack getResultItem(HolderLookup.Provider registriesLookup) { - return this.result; + public ItemStack getResultItem(RegistryAccess registryAccess) { + return this.output; } public static class Serializer implements RecipeSerializer { public static final Serializer INSTANCE = new Serializer(); - public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group( - Codec.STRING.optionalFieldOf("group", "").forGetter(ShapelessCompressingRecipe::group), - ItemStack.STRICT_CODEC.fieldOf("result").forGetter(recipe -> recipe.result), + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + ExtraCodecs.strictOptionalField(Codec.STRING, "group", "").forGetter(ShapelessCompressingRecipe::group), + ItemStack.ITEM_WITH_COUNT_CODEC.fieldOf("result").forGetter(ShapelessCompressingRecipe::output), Ingredient.CODEC_NONEMPTY .listOf() .fieldOf("ingredients") .flatXmap( - ingredients -> { - Ingredient[] ingredients2 = ingredients.stream().filter(ingredient -> !ingredient.isEmpty()).toArray(Ingredient[]::new); - if (ingredients2.length == 0) { + list -> { + Ingredient[] ingredients = (Ingredient[])list.stream().filter(ingredient -> !ingredient.isEmpty()).toArray(i -> new Ingredient[i]); + if (ingredients.length == 0) { return DataResult.error(() -> "No ingredients for shapeless recipe"); } else { - return ingredients2.length > 9 + return ingredients.length > 9 ? DataResult.error(() -> "Too many ingredients for shapeless recipe") - : DataResult.success(NonNullList.of(Ingredient.EMPTY, ingredients2)); + : DataResult.success(NonNullList.of(Ingredient.EMPTY, ingredients)); } }, DataResult::success ) - .forGetter(recipe -> recipe.ingredients), - Codec.INT.optionalFieldOf("time", 200).forGetter(ShapelessCompressingRecipe::time) + .forGetter(ShapelessCompressingRecipe::input), + ExtraCodecs.strictOptionalField(Codec.INT, "time", 200).forGetter(ShapelessCompressingRecipe::time) ).apply(instance, ShapelessCompressingRecipe::new)); - private static final StreamCodec STREAM_CODEC = StreamCodec.of(Serializer::toNetwork, Serializer::fromNetwork); @Override - public @NotNull MapCodec codec() { + public Codec codec() { return CODEC; } @Override - public @NotNull StreamCodec streamCodec() { - return STREAM_CODEC; - } - - private static ShapelessCompressingRecipe fromNetwork(RegistryFriendlyByteBuf buf) { - String group = buf.readUtf(); - int i = buf.readVarInt(); - int time = buf.readVarInt(); - NonNullList ingredients = NonNullList.withSize(i, Ingredient.EMPTY); - ingredients.replaceAll(empty -> Ingredient.CONTENTS_STREAM_CODEC.decode(buf)); - ItemStack result = ItemStack.STREAM_CODEC.decode(buf); + public ShapelessCompressingRecipe fromNetwork(FriendlyByteBuf buf) { + String group = buf.readUtf(Constant.Misc.MAX_STRING_READ); + int time = buf.readInt(); + int size = buf.readVarInt(); + NonNullList ingredients = NonNullList.withSize(size, Ingredient.EMPTY); + + for (int i = 0; i < ingredients.size(); ++i) { + ingredients.set(i, Ingredient.fromNetwork(buf)); + } - return new ShapelessCompressingRecipe(group, result, ingredients, time); + ItemStack itemStack = buf.readItem(); + return new ShapelessCompressingRecipe(group, itemStack, ingredients, time); } - private static void toNetwork(RegistryFriendlyByteBuf buf, ShapelessCompressingRecipe recipe) { + @Override + public void toNetwork(FriendlyByteBuf buf, ShapelessCompressingRecipe recipe) { buf.writeUtf(recipe.group); - buf.writeVarInt(recipe.ingredients.size()); - buf.writeVarInt(recipe.time); - for (Ingredient ingredient : recipe.ingredients) { - Ingredient.CONTENTS_STREAM_CODEC.encode(buf, ingredient); + buf.writeInt(recipe.time); + buf.writeVarInt(recipe.input.size()); + + for (Ingredient ingredient : recipe.input) { + ingredient.toNetwork(buf); } - ItemStack.STREAM_CODEC.encode(buf, recipe.result); + buf.writeItem(recipe.output); } } diff --git a/src/main/java/dev/galacticraft/mod/screen/CoalGeneratorMenu.java b/src/main/java/dev/galacticraft/mod/screen/CoalGeneratorMenu.java index 9190a197c0..8a75adc7bd 100644 --- a/src/main/java/dev/galacticraft/mod/screen/CoalGeneratorMenu.java +++ b/src/main/java/dev/galacticraft/mod/screen/CoalGeneratorMenu.java @@ -23,30 +23,34 @@ package dev.galacticraft.mod.screen; import dev.galacticraft.machinelib.api.menu.MachineMenu; -import dev.galacticraft.machinelib.api.menu.MenuData; +import dev.galacticraft.machinelib.api.menu.sync.MenuSyncHandler; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.content.block.entity.machine.CoalGeneratorBlockEntity; -import net.minecraft.core.BlockPos; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.player.Inventory; import org.jetbrains.annotations.NotNull; +import java.util.function.Consumer; + public class CoalGeneratorMenu extends MachineMenu { private int fuelTime; private int fuelLength; public CoalGeneratorMenu(int syncId, @NotNull ServerPlayer player, @NotNull CoalGeneratorBlockEntity machine) { - super(GCMenuTypes.COAL_GENERATOR, syncId, player, machine); + super(syncId, player, machine); } - public CoalGeneratorMenu(int syncId, @NotNull Inventory inventory, @NotNull BlockPos pos) { - super(GCMenuTypes.COAL_GENERATOR, syncId, inventory, pos, 8, 84); + public CoalGeneratorMenu(int syncId, @NotNull Inventory inventory, @NotNull FriendlyByteBuf buf) { + super(syncId, inventory, buf, 8, 84, GCMachineTypes.COAL_GENERATOR); } @Override - public void registerData(@NotNull MenuData data) { - super.registerData(data); - data.registerInt(this.be::getFuelTime, this::setFuelTime); - data.registerInt(this.be::getFuelLength, this::setFuelLength); + public void registerSyncHandlers(Consumer consumer) { + super.registerSyncHandlers(consumer); + + consumer.accept(MenuSyncHandler.simple(this.machine::getFuelTime, this::setFuelTime)); + consumer.accept(MenuSyncHandler.simple(this.machine::getFuelLength, this::setFuelLength)); } public int getFuelTime() { diff --git a/src/main/java/dev/galacticraft/mod/screen/CompressorMenu.java b/src/main/java/dev/galacticraft/mod/screen/CompressorMenu.java index 60c831e240..30dc2ef485 100644 --- a/src/main/java/dev/galacticraft/mod/screen/CompressorMenu.java +++ b/src/main/java/dev/galacticraft/mod/screen/CompressorMenu.java @@ -22,33 +22,35 @@ package dev.galacticraft.mod.screen; -import dev.galacticraft.machinelib.api.menu.MenuData; import dev.galacticraft.machinelib.api.menu.RecipeMachineMenu; +import dev.galacticraft.machinelib.api.menu.sync.MenuSyncHandler; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.content.block.entity.machine.CompressorBlockEntity; import dev.galacticraft.mod.recipe.CompressingRecipe; -import net.minecraft.core.BlockPos; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.player.Inventory; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.crafting.CraftingInput; -import org.jetbrains.annotations.NotNull; +import net.minecraft.world.inventory.CraftingContainer; -public class CompressorMenu extends RecipeMachineMenu { +import java.util.function.Consumer; + +public class CompressorMenu extends RecipeMachineMenu { private int fuelTime = 0; private int fuelLength = 0; - public CompressorMenu(int syncId, Player player, CompressorBlockEntity machine) { - super(GCMenuTypes.COMPRESSOR, syncId, player, machine); + public CompressorMenu(int syncId, ServerPlayer player, CompressorBlockEntity machine) { + super(syncId, player, machine); } - public CompressorMenu(int syncId, Inventory inv, BlockPos pos) { - super(GCMenuTypes.COMPRESSOR, syncId, inv, pos, 8, 84); + public CompressorMenu(int syncId, Inventory inv, FriendlyByteBuf buf) { + super(syncId, inv, buf, 8, 84, GCMachineTypes.COMPRESSOR); } @Override - public void registerData(@NotNull MenuData data) { - super.registerData(data); - data.registerInt(this.be::getFuelTime, this::setFuelTime); - data.registerInt(this.be::getFuelLength, this::setFuelLength); + public void registerSyncHandlers(Consumer consumer) { + super.registerSyncHandlers(consumer); + consumer.accept(MenuSyncHandler.simple(this.machine::getFuelTime, this::setFuelTime)); + consumer.accept(MenuSyncHandler.simple(this.machine::getFuelLength, this::setFuelLength)); } public int getFuelLength() { diff --git a/src/main/java/dev/galacticraft/mod/screen/FuelLoaderMenu.java b/src/main/java/dev/galacticraft/mod/screen/FuelLoaderMenu.java index 50a7027afb..e42b847079 100644 --- a/src/main/java/dev/galacticraft/mod/screen/FuelLoaderMenu.java +++ b/src/main/java/dev/galacticraft/mod/screen/FuelLoaderMenu.java @@ -23,12 +23,15 @@ package dev.galacticraft.mod.screen; import dev.galacticraft.machinelib.api.menu.MachineMenu; -import dev.galacticraft.machinelib.api.menu.MenuData; +import dev.galacticraft.machinelib.api.menu.sync.MenuSyncHandler; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.content.block.entity.machine.FuelLoaderBlockEntity; import net.minecraft.core.BlockPos; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.player.Inventory; -import org.jetbrains.annotations.NotNull; + +import java.util.function.Consumer; public class FuelLoaderMenu extends MachineMenu { public long rocketAmount; @@ -36,18 +39,18 @@ public class FuelLoaderMenu extends MachineMenu { public BlockPos connectionPos = BlockPos.ZERO; public FuelLoaderMenu(int syncId, ServerPlayer player, FuelLoaderBlockEntity machine) { - super(GCMenuTypes.FUEL_LOADER, syncId, player, machine); + super(syncId, player, machine); } - public FuelLoaderMenu(int syncId, Inventory inv, BlockPos pos) { - super(GCMenuTypes.FUEL_LOADER, syncId, inv, pos, 8, 84); + public FuelLoaderMenu(int syncId, Inventory inv, FriendlyByteBuf buf) { + super(syncId, inv, buf, 8, 84, GCMachineTypes.FUEL_LOADER); } @Override - public void registerData(@NotNull MenuData data) { - super.registerData(data); - data.register(BlockPos.STREAM_CODEC, this.be::getConnectionPos, p -> this.connectionPos = p); - data.registerLong(() -> this.be.linkedRocket == null ? 0 : this.be.linkedRocket.getFuelTankAmount(), l -> this.rocketAmount = l); - data.registerLong(() -> this.be.linkedRocket == null ? 0 : this.be.linkedRocket.getFuelTankCapacity(), l -> this.rocketCapacity = l); + public void registerSyncHandlers(Consumer consumer) { + super.registerSyncHandlers(consumer); + consumer.accept(MenuSyncHandler.simple(() -> this.machine.getConnectionPos().asLong(), l -> this.connectionPos = (BlockPos.of(l)))); + consumer.accept(MenuSyncHandler.simple(() -> this.machine.linkedRocket == null ? 0 : this.machine.linkedRocket.getFuelTankAmount(), l -> this.rocketAmount = l)); + consumer.accept(MenuSyncHandler.simple(() -> this.machine.linkedRocket == null ? 0 : this.machine.linkedRocket.getFuelTankCapacity(), l -> this.rocketCapacity = l)); } } \ No newline at end of file diff --git a/src/main/java/dev/galacticraft/mod/screen/GCPlayerInventoryMenu.java b/src/main/java/dev/galacticraft/mod/screen/GCPlayerInventoryMenu.java index b889885a1b..99b317f6b3 100644 --- a/src/main/java/dev/galacticraft/mod/screen/GCPlayerInventoryMenu.java +++ b/src/main/java/dev/galacticraft/mod/screen/GCPlayerInventoryMenu.java @@ -34,6 +34,7 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.world.Container; import net.minecraft.world.entity.EquipmentSlot; +import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.AbstractContainerMenu; @@ -123,7 +124,7 @@ private EquipmentSlot getPreferredEquipmentSlot(ItemStack stack) { Item item_1 = stack.getItem(); if (item_1 instanceof ThermalArmorItem thermalArmorItem) return thermalArmorItem.getSlotGroup().getSlot(); - return this.player.getEquipmentSlotForItem(stack); + return LivingEntity.getEquipmentSlotForItem(stack); } @Override @@ -139,7 +140,7 @@ public OxygenTankSlot(Container gearInventory, int slotId, int x, int y) { @Override public boolean mayPlace(ItemStack stack) { - return FILTER.test(stack.getItem(), stack.getComponentsPatch()); + return FILTER.test(stack.getItem(), stack.getTag()); } @Override diff --git a/src/main/java/dev/galacticraft/mod/screen/OxygenBubbleDistributorMenu.java b/src/main/java/dev/galacticraft/mod/screen/OxygenBubbleDistributorMenu.java index 5d3ea1ae74..fd2b4cc946 100644 --- a/src/main/java/dev/galacticraft/mod/screen/OxygenBubbleDistributorMenu.java +++ b/src/main/java/dev/galacticraft/mod/screen/OxygenBubbleDistributorMenu.java @@ -23,34 +23,58 @@ package dev.galacticraft.mod.screen; import dev.galacticraft.machinelib.api.menu.MachineMenu; -import dev.galacticraft.machinelib.api.menu.MenuData; +import dev.galacticraft.machinelib.api.menu.sync.MenuSyncHandler; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.content.block.entity.machine.OxygenBubbleDistributorBlockEntity; -import net.minecraft.core.BlockPos; +import dev.galacticraft.mod.screen.sync.BooleanMenuSyncHandler; +import dev.galacticraft.mod.screen.sync.DoubleMenuSyncHandler; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.player.Inventory; -import net.minecraft.world.entity.player.Player; import org.jetbrains.annotations.NotNull; +import java.util.function.Consumer; + public class OxygenBubbleDistributorMenu extends MachineMenu { public boolean bubbleVisible; public byte targetSize; public double size; - public OxygenBubbleDistributorMenu(int syncId, Player player, OxygenBubbleDistributorBlockEntity machine) { - super(GCMenuTypes.OXYGEN_BUBBLE_DISTRIBUTOR, syncId, player, machine); + public OxygenBubbleDistributorMenu(int syncId, ServerPlayer player, OxygenBubbleDistributorBlockEntity machine) { + super(syncId, player, machine); this.bubbleVisible = machine.isBubbleVisible(); this.size = machine.getSize(); this.targetSize = machine.getTargetSize(); } - public OxygenBubbleDistributorMenu(int syncId, Inventory inv, BlockPos pos) { - super(GCMenuTypes.OXYGEN_BUBBLE_DISTRIBUTOR, syncId, inv, pos, 8, 84); + public OxygenBubbleDistributorMenu(int syncId, Inventory inv, FriendlyByteBuf buf) { + super(syncId, inv, buf, 8, 84, GCMachineTypes.OXYGEN_BUBBLE_DISTRIBUTOR); } @Override - public void registerData(@NotNull MenuData data) { - super.registerData(data); - data.registerByte(this.be::getTargetSize, b -> this.targetSize = (byte) b); - data.registerDouble(this.be::getSize, d -> this.size = d); - data.registerBoolean(this.be::isBubbleVisible, b -> this.bubbleVisible = b); + public void registerSyncHandlers(Consumer consumer) { + super.registerSyncHandlers(consumer); + consumer.accept(new MenuSyncHandler() { + private byte value; + + @Override + public boolean needsSyncing() { + return this.value != OxygenBubbleDistributorMenu.this.targetSize; + } + + @Override + public void sync(@NotNull FriendlyByteBuf buf) { + this.value = OxygenBubbleDistributorMenu.this.targetSize; + buf.writeByte(this.value); + } + + @Override + public void read(@NotNull FriendlyByteBuf buf) { + this.value = buf.readByte(); + OxygenBubbleDistributorMenu.this.targetSize = this.value; + } + }); + consumer.accept(new DoubleMenuSyncHandler(this.machine::getSize, value -> this.size = value)); + consumer.accept(new BooleanMenuSyncHandler(this.machine::isBubbleVisible, t -> this.bubbleVisible = t)); } } diff --git a/src/main/java/dev/galacticraft/mod/screen/OxygenCollectorMenu.java b/src/main/java/dev/galacticraft/mod/screen/OxygenCollectorMenu.java index 25c2ef60f6..702b70d38f 100644 --- a/src/main/java/dev/galacticraft/mod/screen/OxygenCollectorMenu.java +++ b/src/main/java/dev/galacticraft/mod/screen/OxygenCollectorMenu.java @@ -23,28 +23,30 @@ package dev.galacticraft.mod.screen; import dev.galacticraft.machinelib.api.menu.MachineMenu; -import dev.galacticraft.machinelib.api.menu.MenuData; +import dev.galacticraft.machinelib.api.menu.sync.MenuSyncHandler; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.content.block.entity.machine.OxygenCollectorBlockEntity; -import net.minecraft.core.BlockPos; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.player.Inventory; -import net.minecraft.world.entity.player.Player; -import org.jetbrains.annotations.NotNull; + +import java.util.function.Consumer; public class OxygenCollectorMenu extends MachineMenu { public int collectionAmount = 0; - public OxygenCollectorMenu(int syncId, Player player, OxygenCollectorBlockEntity machine) { - super(GCMenuTypes.OXYGEN_COLLECTOR, syncId, player, machine); + public OxygenCollectorMenu(int syncId, ServerPlayer player, OxygenCollectorBlockEntity machine) { + super(syncId, player, machine); } - public OxygenCollectorMenu(int syncId, Inventory inv, BlockPos pos) { - super(GCMenuTypes.OXYGEN_COLLECTOR, syncId, inv, pos, 8, 84); + public OxygenCollectorMenu(int syncId, Inventory inv, FriendlyByteBuf buf) { + super(syncId, inv, buf, 8, 84, GCMachineTypes.OXYGEN_COLLECTOR); } @Override - public void registerData(@NotNull MenuData data) { - super.registerData(data); - data.registerInt(this.be::getCollectionAmount, this::setCollectionAmount); + public void registerSyncHandlers(Consumer consumer) { + super.registerSyncHandlers(consumer); + consumer.accept(MenuSyncHandler.simple(this.machine::getCollectionAmount, this::setCollectionAmount)); } public void setCollectionAmount(int collectionAmount) { diff --git a/src/main/java/dev/galacticraft/mod/screen/ParachestMenu.java b/src/main/java/dev/galacticraft/mod/screen/ParachestMenu.java index ca332218b9..5e284b7897 100644 --- a/src/main/java/dev/galacticraft/mod/screen/ParachestMenu.java +++ b/src/main/java/dev/galacticraft/mod/screen/ParachestMenu.java @@ -23,10 +23,8 @@ package dev.galacticraft.mod.screen; import dev.galacticraft.mod.content.GCBlockEntityTypes; -import io.netty.buffer.ByteBuf; -import net.minecraft.core.BlockPos; -import net.minecraft.network.VarInt; -import net.minecraft.network.codec.StreamCodec; +import dev.galacticraft.mod.content.block.special.ParaChestBlockEntity; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.Container; import net.minecraft.world.SimpleContainer; import net.minecraft.world.entity.player.Inventory; @@ -35,17 +33,20 @@ import net.minecraft.world.inventory.Slot; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; -import org.jetbrains.annotations.Nullable; public class ParachestMenu extends AbstractContainerMenu { private final Container container; - public ParachestMenu(int syncId, Inventory playerInventory, OpeningData data) { - this(syncId, playerInventory, getContainer(playerInventory.player.level(), data)); + public ParachestMenu(int syncId, Inventory playerInventory, FriendlyByteBuf buf) { + this(syncId, playerInventory, getContainer(playerInventory.player.level(), buf)); } - public static Container getContainer(Level level, OpeningData data) { - return data.pos != null ? GCBlockEntityTypes.PARACHEST.getBlockEntity(level, data.pos) : new SimpleContainer(data.size); + public static Container getContainer(Level level, FriendlyByteBuf buf) { + boolean isBe = buf.readBoolean(); + if (isBe) + return GCBlockEntityTypes.PARACHEST.getBlockEntity(level, buf.readBlockPos()); + else + return new SimpleContainer(buf.readVarInt()); } public ParachestMenu(int syncId, Inventory playerInventory, Container container) { @@ -119,27 +120,4 @@ public boolean stillValid(Player player) { public Container getContainer() { return this.container; } - - public record OpeningData(@Nullable BlockPos pos, int size) { - public static final StreamCodec STREAM_CODEC = StreamCodec.of( - (b, v) -> { - if (v.pos != null) { - b.writeBoolean(true); - b.writeLong(v.pos.asLong()); - } else { - b.writeBoolean(false); - VarInt.write(b, v.size); - } - }, - b -> b.readBoolean() ? new OpeningData(BlockPos.of(b.readLong())) : new OpeningData(VarInt.read(b)) - ); - - public OpeningData(BlockPos blockPos) { - this(blockPos, 0); - } - - public OpeningData(int size) { - this(null, size); - } - } } diff --git a/src/main/java/dev/galacticraft/mod/screen/RocketMenu.java b/src/main/java/dev/galacticraft/mod/screen/RocketMenu.java index 9b3ea6369e..75d7c597aa 100644 --- a/src/main/java/dev/galacticraft/mod/screen/RocketMenu.java +++ b/src/main/java/dev/galacticraft/mod/screen/RocketMenu.java @@ -23,6 +23,7 @@ package dev.galacticraft.mod.screen; import dev.galacticraft.mod.content.entity.orbital.RocketEntity; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.AbstractContainerMenu; @@ -32,8 +33,8 @@ public class RocketMenu extends AbstractContainerMenu { public final Player player; public final RocketEntity rocket; - protected RocketMenu(int syncId, Inventory playerInventory, int id) { - this(syncId, playerInventory, playerInventory.player, (RocketEntity) playerInventory.player.level().getEntity(id)); + protected RocketMenu(int syncId, Inventory playerInventory, FriendlyByteBuf buf) { + this(syncId, playerInventory, playerInventory.player, (RocketEntity) playerInventory.player.level().getEntity(buf.readInt())); } public RocketMenu(int syncId, Inventory playerInventory, Player player, RocketEntity rocket) { diff --git a/src/main/java/dev/galacticraft/mod/screen/RocketWorkbenchMenu.java b/src/main/java/dev/galacticraft/mod/screen/RocketWorkbenchMenu.java index f3a437043b..b27abb67d7 100644 --- a/src/main/java/dev/galacticraft/mod/screen/RocketWorkbenchMenu.java +++ b/src/main/java/dev/galacticraft/mod/screen/RocketWorkbenchMenu.java @@ -32,27 +32,21 @@ import dev.galacticraft.mod.content.item.GCItems; import dev.galacticraft.mod.machine.storage.VariableSizedContainer; import dev.galacticraft.mod.mixin.AbstractContainerMenuAccessor; -import dev.galacticraft.mod.util.StreamCodecs; import dev.galacticraft.mod.world.inventory.RocketResultSlot; -import io.netty.buffer.ByteBuf; -import net.minecraft.core.BlockPos; import net.minecraft.core.Holder; import net.minecraft.core.Registry; import net.minecraft.core.RegistryAccess; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.resources.ResourceKey; -import net.minecraft.resources.ResourceLocation; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.Container; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; import net.minecraft.world.entity.player.StackedContents; import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.inventory.Slot; -import net.minecraft.world.item.EitherHolder; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; import java.util.ArrayList; import java.util.List; @@ -135,15 +129,15 @@ public void removed(Player player) { this.upgrade.inventory.removeListener(this); } - public RocketWorkbenchMenu(int syncId, Inventory playerInventory, OpeningData data) { - this(syncId, (RocketWorkbenchBlockEntity) playerInventory.player.level().getBlockEntity(data.pos), playerInventory); + public RocketWorkbenchMenu(int syncId, Inventory playerInventory, FriendlyByteBuf buf) { + this(syncId, (RocketWorkbenchBlockEntity) playerInventory.player.level().getBlockEntity(buf.readBlockPos()), playerInventory); - this.cone.setSelection(data.cone); - this.body.setSelection(data.body); - this.fins.setSelection(data.fin); - this.booster.setSelection(data.booster); - this.engine.setSelection(data.engine); - this.upgrade.setSelection(data.upgrade); + if (buf.readBoolean()) this.cone.setSelection(buf.readResourceLocation()); + if (buf.readBoolean()) this.body.setSelection(buf.readResourceLocation()); + if (buf.readBoolean()) this.fins.setSelection(buf.readResourceLocation()); + if (buf.readBoolean()) this.booster.setSelection(buf.readResourceLocation()); + if (buf.readBoolean()) this.engine.setSelection(buf.readResourceLocation()); + if (buf.readBoolean()) this.upgrade.setSelection(buf.readResourceLocation()); } public static int calculateAdditionalHeight(RocketPartRecipe cone, RocketPartRecipe body, RocketPartRecipe fins, RocketPartRecipe booster, RocketPartRecipe engine, RocketPartRecipe upgrade) { @@ -192,22 +186,6 @@ public RocketWorkbenchBlockEntity.RecipeSelection getSelection(RocketPartType }; } - public RocketData createData() { - return new RocketData( - maybeHolder(RocketRegistries.ROCKET_CONE, this.cone.selection), - maybeHolder(RocketRegistries.ROCKET_BODY, this.body.selection), - maybeHolder(RocketRegistries.ROCKET_FIN, this.fins.selection), - maybeHolder(RocketRegistries.ROCKET_BOOSTER, this.booster.selection), - maybeHolder(RocketRegistries.ROCKET_ENGINE, this.engine.selection), - maybeHolder(RocketRegistries.ROCKET_UPGRADE, this.upgrade.selection), - 0xFFFFFFFF - ); - } - - private static @Nullable EitherHolder maybeHolder(ResourceKey> key, @Nullable ResourceLocation id) { - return id == null ? null : new EitherHolder<>(ResourceKey.create(key, id)); - } - @Override public boolean stillValid(Player player) { return Container.stillValidBlockEntity(this.workbench, player); @@ -330,23 +308,25 @@ public void onSizeChanged() { @Override public void onItemChanged() { - RocketData rocketData = this.createData(); + RocketData rocketData = RocketData.create(-1, this.cone.getSelectionKey(), this.body.getSelectionKey(), this.fins.getSelectionKey(), this.booster.getSelectionKey(), this.engine.getSelectionKey(), this.upgrade.getSelectionKey()); boolean craftable = rocketData.isValid(); RocketPartRecipe recipe = this.cone.getRecipe(); - craftable = craftable && (recipe != null && recipe.matches(this.cone.inventory.asInput(), this.workbench.getLevel())); + craftable = craftable && (recipe != null && recipe.matches(this.cone.inventory, this.workbench.getLevel())); recipe = this.body.getRecipe(); - craftable = craftable && (recipe != null && recipe.matches(this.body.inventory.asInput(), this.workbench.getLevel())); + craftable = craftable && (recipe != null && recipe.matches(this.body.inventory, this.workbench.getLevel())); recipe = this.fins.getRecipe(); - craftable = craftable && (recipe != null && recipe.matches(this.fins.inventory.asInput(), this.workbench.getLevel())); + craftable = craftable && (recipe != null && recipe.matches(this.fins.inventory, this.workbench.getLevel())); recipe = this.booster.getRecipe(); - craftable = craftable && (recipe == null || recipe.matches(this.booster.inventory.asInput(), this.workbench.getLevel())); + craftable = craftable && (recipe == null || recipe.matches(this.booster.inventory, this.workbench.getLevel())); recipe = this.engine.getRecipe(); - craftable = craftable && (recipe != null && recipe.matches(this.engine.inventory.asInput(), this.workbench.getLevel())); + craftable = craftable && (recipe != null && recipe.matches(this.engine.inventory, this.workbench.getLevel())); recipe = this.upgrade.getRecipe(); - craftable = craftable && (recipe == null ||recipe.matches(this.upgrade.inventory.asInput(), this.workbench.getLevel())); + craftable = craftable && (recipe == null ||recipe.matches(this.upgrade.inventory, this.workbench.getLevel())); if (craftable) { ItemStack stack = new ItemStack(GCItems.ROCKET, 1); - stack.applyComponents(rocketData.asPatch()); + CompoundTag tag = new CompoundTag(); + rocketData.toNbt(tag); + stack.setTag(tag); this.workbench.output.setItem(0, stack); } else { this.workbench.output.setItem(0, ItemStack.EMPTY); @@ -397,7 +377,7 @@ public RocketCraftingSlot(Container container, int slot, int x, int y, ResourceF @Override public boolean mayPlace(ItemStack stack) { - return stack.isEmpty() || this.filter.test(stack.getItem(), stack.getComponentsPatch()); + return stack.isEmpty() || this.filter.test(stack.getItem(), stack.getTag()); } @Override @@ -405,27 +385,4 @@ public int getMaxStackSize() { return 1; } } - - public record OpeningData(BlockPos pos, ResourceLocation cone, ResourceLocation body, - ResourceLocation fin, ResourceLocation booster, - ResourceLocation engine, ResourceLocation upgrade) { - private static final StreamCodec OPT_ID = StreamCodecs.ofNullable(ResourceLocation.STREAM_CODEC); - public static final StreamCodec CODEC = StreamCodecs.composite( - BlockPos.STREAM_CODEC, - OpeningData::pos, - OPT_ID, - OpeningData::cone, - OPT_ID, - OpeningData::body, - OPT_ID, - OpeningData::fin, - OPT_ID, - OpeningData::booster, - OPT_ID, - OpeningData::engine, - OPT_ID, - OpeningData::upgrade, - OpeningData::new - ); - } } diff --git a/src/main/java/dev/galacticraft/mod/screen/SolarPanelMenu.java b/src/main/java/dev/galacticraft/mod/screen/SolarPanelMenu.java index 7f96e4a0c2..a1e5986920 100644 --- a/src/main/java/dev/galacticraft/mod/screen/SolarPanelMenu.java +++ b/src/main/java/dev/galacticraft/mod/screen/SolarPanelMenu.java @@ -23,26 +23,28 @@ package dev.galacticraft.mod.screen; import dev.galacticraft.machinelib.api.block.entity.MachineBlockEntity; +import dev.galacticraft.machinelib.api.machine.MachineType; import dev.galacticraft.machinelib.api.menu.MachineMenu; -import dev.galacticraft.machinelib.api.menu.MenuData; +import dev.galacticraft.machinelib.api.menu.sync.MenuSyncHandler; import dev.galacticraft.machinelib.api.util.BlockFace; import dev.galacticraft.mod.api.block.entity.SolarPanel; -import net.minecraft.core.BlockPos; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.player.Inventory; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.inventory.MenuType; import org.jetbrains.annotations.NotNull; +import java.util.function.Consumer; + public class SolarPanelMenu extends MachineMenu { private final boolean followsSun; private final boolean nightCollection; - private final boolean[] blockage = new boolean[9]; + private boolean[] blockage; private @NotNull SolarPanel.SolarPanelSource source; private long energyGeneration; - public SolarPanelMenu(MenuType> type, int syncId, @NotNull Player player, @NotNull Machine machine) { - super(type, syncId, player, machine); + public SolarPanelMenu(int syncId, @NotNull ServerPlayer player, @NotNull Machine machine) { + super(syncId, player, machine); this.followsSun = machine.followsSun(); this.nightCollection = machine.nightCollection(); @@ -50,26 +52,27 @@ public SolarPanelMenu(MenuType> type, int sync this.energyGeneration = machine.getCurrentEnergyGeneration(); } - protected SolarPanelMenu(MenuType> type, int syncId, @NotNull Inventory inventory, @NotNull BlockPos pos) { - this(type, syncId, inventory, pos, 8, 84); + protected SolarPanelMenu(int syncId, @NotNull Inventory inventory, @NotNull FriendlyByteBuf buf, @NotNull MachineType> type) { + this(syncId, inventory, buf, 8, 84, type); } - protected SolarPanelMenu(MenuType> type, int syncId, @NotNull Inventory inventory, @NotNull BlockPos pos, int invX, int invY) { - super(type, syncId, inventory, pos, invX, invY); + protected SolarPanelMenu(int syncId, @NotNull Inventory inventory, @NotNull FriendlyByteBuf buf, int invX, int invY, @NotNull MachineType> type) { + super(syncId, inventory, buf, invX, invY, type); - this.followsSun = this.be.followsSun(); - this.nightCollection = this.be.nightCollection(); - this.source = this.be.getSource(); - this.energyGeneration = this.be.getCurrentEnergyGeneration(); + this.followsSun = buf.readBoolean(); + this.nightCollection = buf.readBoolean(); + this.source = SolarPanel.SolarPanelSource.values()[buf.readByte()]; + this.energyGeneration = buf.readVarLong(); } @Override - public void registerData(@NotNull MenuData data) { - super.registerData(data); + public void registerSyncHandlers(Consumer consumer) { + super.registerSyncHandlers(consumer); - data.registerLong(this.be::getCurrentEnergyGeneration, this::setEnergyGeneration); - data.registerEnum(SolarPanel.SolarPanelSource.values(), this.be::getSource, this::setSource); - data.registerBits(9, this.be.getBlockage(), this.blockage); + consumer.accept(MenuSyncHandler.simple(this.machine::getCurrentEnergyGeneration, this::setEnergyGeneration)); + consumer.accept(MenuSyncHandler.simple(this.machine::getSource, this::setSource, SolarPanel.SolarPanelSource.values())); + this.blockage = new boolean[9]; + consumer.accept(MenuSyncHandler.booleans(this.machine.getBlockage(), this.blockage)); } public boolean @NotNull [/*9*/] getBlockage() { diff --git a/src/main/java/dev/galacticraft/mod/screen/sync/BooleanMenuSyncHandler.java b/src/main/java/dev/galacticraft/mod/screen/sync/BooleanMenuSyncHandler.java new file mode 100644 index 0000000000..db17532976 --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/screen/sync/BooleanMenuSyncHandler.java @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.screen.sync; + +import dev.galacticraft.machinelib.api.menu.sync.MenuSyncHandler; +import it.unimi.dsi.fastutil.booleans.BooleanConsumer; +import net.minecraft.network.FriendlyByteBuf; +import org.jetbrains.annotations.NotNull; + +import java.util.function.BooleanSupplier; + +public class BooleanMenuSyncHandler implements MenuSyncHandler { + private final BooleanSupplier supplier; + private final BooleanConsumer consumer; + private boolean value; + + public BooleanMenuSyncHandler(BooleanSupplier supplier, BooleanConsumer consumer) { + this.supplier = supplier; + this.consumer = consumer; + } + + @Override + public boolean needsSyncing() { + return this.value != this.supplier.getAsBoolean(); + } + + @Override + public void sync(@NotNull FriendlyByteBuf buf) { + this.value = this.supplier.getAsBoolean(); + buf.writeBoolean(this.value); + } + + @Override + public void read(@NotNull FriendlyByteBuf buf) { + this.value = buf.readBoolean(); + this.consumer.accept(this.value); + } +} diff --git a/src/main/java/dev/galacticraft/mod/screen/sync/DoubleMenuSyncHandler.java b/src/main/java/dev/galacticraft/mod/screen/sync/DoubleMenuSyncHandler.java new file mode 100644 index 0000000000..88aeacc688 --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/screen/sync/DoubleMenuSyncHandler.java @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.screen.sync; + +import dev.galacticraft.machinelib.api.menu.sync.MenuSyncHandler; +import net.minecraft.network.FriendlyByteBuf; +import org.jetbrains.annotations.NotNull; + +import java.util.function.DoubleConsumer; +import java.util.function.DoubleSupplier; + +public class DoubleMenuSyncHandler implements MenuSyncHandler { + private final DoubleSupplier supplier; + private final DoubleConsumer consumer; + private double value; + + public DoubleMenuSyncHandler(DoubleSupplier supplier, DoubleConsumer consumer) { + this.supplier = supplier; + this.consumer = consumer; + } + + @Override + public boolean needsSyncing() { + return this.value != this.supplier.getAsDouble(); + } + + @Override + public void sync(@NotNull FriendlyByteBuf buf) { + this.value = this.supplier.getAsDouble(); + buf.writeDouble(this.value); + } + + @Override + public void read(@NotNull FriendlyByteBuf buf) { + this.value = buf.readDouble(); + this.consumer.accept(this.value); + } +} diff --git a/src/main/java/dev/galacticraft/mod/storage/PlaceholderItemStorage.java b/src/main/java/dev/galacticraft/mod/storage/PlaceholderItemStorage.java index bae63221d6..292b014b50 100644 --- a/src/main/java/dev/galacticraft/mod/storage/PlaceholderItemStorage.java +++ b/src/main/java/dev/galacticraft/mod/storage/PlaceholderItemStorage.java @@ -24,6 +24,7 @@ import net.fabricmc.fabric.api.transfer.v1.item.ItemVariant; import net.fabricmc.fabric.api.transfer.v1.item.base.SingleItemStorage; +import net.fabricmc.fabric.api.transfer.v1.transaction.TransactionContext; import net.minecraft.world.item.Item; import org.jetbrains.annotations.NotNull; @@ -33,8 +34,13 @@ public void setItem(@NotNull Item item) { this.amount = 1; } + @Override + public long extract(ItemVariant extractedVariant, long maxAmount, TransactionContext transaction) { + return super.extract(extractedVariant, maxAmount, transaction); + } + @Override protected long getCapacity(ItemVariant variant) { - return variant.isBlank() ? 64 : variant.toStack().getMaxStackSize(); + return variant.isBlank() ? 64 : variant.getItem().getMaxStackSize(); } } diff --git a/src/main/java/dev/galacticraft/mod/storage/SingleTypeStorage.java b/src/main/java/dev/galacticraft/mod/storage/SingleTypeStorage.java new file mode 100644 index 0000000000..92c8f08189 --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/storage/SingleTypeStorage.java @@ -0,0 +1,122 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.storage; + +import com.google.common.collect.Iterators; +import dev.galacticraft.mod.Constant; +import net.fabricmc.fabric.api.transfer.v1.context.ContainerItemContext; +import net.fabricmc.fabric.api.transfer.v1.item.ItemVariant; +import net.fabricmc.fabric.api.transfer.v1.storage.Storage; +import net.fabricmc.fabric.api.transfer.v1.storage.StorageView; +import net.fabricmc.fabric.api.transfer.v1.storage.TransferVariant; +import net.fabricmc.fabric.api.transfer.v1.transaction.TransactionContext; +import net.fabricmc.fabric.api.transfer.v1.transaction.base.SnapshotParticipant; +import net.minecraft.nbt.CompoundTag; +import org.jetbrains.annotations.NotNull; + +import java.util.Iterator; + +public class SingleTypeStorage> extends SnapshotParticipant implements Storage, StorageView { + private final V resource; + private final long capacity; + private final V blankResource; + protected final ContainerItemContext context; + private long amount; + + public SingleTypeStorage(V resource, ContainerItemContext context, long capacity, V blankResource, long amount) { + this.resource = resource; + this.capacity = capacity; + this.blankResource = blankResource; + this.context = context; + this.amount = amount; + } + + public void setAmount(long amount) { + this.amount = amount; + } + + @Override + public long insert(@NotNull V resource, long maxAmount, TransactionContext transaction) { + if (resource.equals(this.resource)) { + updateSnapshots(transaction); + maxAmount = Math.min(maxAmount, this.capacity - this.amount); + this.amount += maxAmount; + CompoundTag tag = this.context.getItemVariant().copyOrCreateNbt(); + tag.putLong(Constant.Nbt.VALUE, this.getAmount()); + if (context.exchange(ItemVariant.of(this.context.getItemVariant().getItem(), tag), 1, transaction) == 1) { + return maxAmount; + } + } + return 0; + } + + @Override + public long extract(@NotNull V resource, long maxAmount, TransactionContext transaction) { + if (resource.equals(this.resource)) { + updateSnapshots(transaction); + maxAmount = Math.min(maxAmount, this.amount); + this.amount -= maxAmount; + CompoundTag tag = this.context.getItemVariant().copyOrCreateNbt(); + tag.putLong(Constant.Nbt.VALUE, this.getAmount()); + if (context.exchange(ItemVariant.of(this.context.getItemVariant().getItem(), tag), 1, transaction) == 1) { + return maxAmount; + } + } + return 0; + } + + @Override + public boolean isResourceBlank() { + return this.amount == 0; + } + + @Override + public V getResource() { + return this.amount == 0 ? this.blankResource : this.resource; + } + + @Override + public long getAmount() { + return this.amount; + } + + @Override + public long getCapacity() { + return this.capacity; + } + + @Override + public @NotNull Iterator> iterator() { + return Iterators.singletonIterator(this); + } + + @Override + protected Long createSnapshot() { + return this.amount; + } + + @Override + protected void readSnapshot(Long snapshot) { + this.amount = snapshot; + } +} diff --git a/src/main/java/dev/galacticraft/mod/structure/GCStructureSets.java b/src/main/java/dev/galacticraft/mod/structure/GCStructureSets.java index 2df0ad91fd..0963af0ff1 100644 --- a/src/main/java/dev/galacticraft/mod/structure/GCStructureSets.java +++ b/src/main/java/dev/galacticraft/mod/structure/GCStructureSets.java @@ -27,7 +27,7 @@ import net.minecraft.core.HolderGetter; import net.minecraft.core.Vec3i; import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.resources.ResourceKey; import net.minecraft.world.level.levelgen.structure.BuiltinStructureSets; import net.minecraft.world.level.levelgen.structure.Structure; @@ -45,7 +45,7 @@ public static final class Moon { public static final ResourceKey BOSS = ResourceKey.create(Registries.STRUCTURE_SET, Constant.id("moon_boss")); } - public static void bootstrapRegistries(BootstrapContext context) { + public static void bootstrapRegistries(BootstapContext context) { HolderGetter structureLookup = context.lookup(Registries.STRUCTURE); HolderGetter structureSetLookup = context.lookup(Registries.STRUCTURE_SET); diff --git a/src/main/java/dev/galacticraft/mod/structure/GCStructureTemplatePools.java b/src/main/java/dev/galacticraft/mod/structure/GCStructureTemplatePools.java index 58581450c2..3f181a694d 100644 --- a/src/main/java/dev/galacticraft/mod/structure/GCStructureTemplatePools.java +++ b/src/main/java/dev/galacticraft/mod/structure/GCStructureTemplatePools.java @@ -23,12 +23,13 @@ package dev.galacticraft.mod.structure; import com.google.common.collect.ImmutableList; +import com.mojang.datafixers.util.Either; import com.mojang.datafixers.util.Pair; import dev.galacticraft.mod.Constant; import net.minecraft.core.Holder; import net.minecraft.core.HolderGetter; import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.data.worldgen.ProcessorLists; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; @@ -41,7 +42,7 @@ import java.util.function.Function; public final class GCStructureTemplatePools { - private static final ResourceKey EMPTY = ResourceKey.create(Registries.TEMPLATE_POOL, ResourceLocation.withDefaultNamespace("empty")); + private static final ResourceKey EMPTY = ResourceKey.create(Registries.TEMPLATE_POOL, new ResourceLocation("empty")); public static final class Moon { public static final class PillagerOutpost { public static final ResourceKey ENTRANCE = key("moon_pillager_outpost/entrances"); @@ -73,7 +74,7 @@ private static ResourceKey key(String id) { return Constant.key(Registries.TEMPLATE_POOL, id); } - public static void bootstrapRegistries(BootstrapContext context) { + public static void bootstrapRegistries(BootstapContext context) { HolderGetter templateLookup = context.lookup(Registries.TEMPLATE_POOL); Holder empty = templateLookup.getOrThrow(EMPTY); Holder emptyList = context.lookup(Registries.PROCESSOR_LIST).getOrThrow(ProcessorLists.EMPTY); @@ -280,6 +281,6 @@ public static void bootstrapRegistries(BootstrapContext c } public static Function single(ResourceLocation id, Holder list) { // Legacy means that air CAN be replaced by worldgen. - return StructurePoolElement.legacy(id.toString(), list); + return projection -> new LegacySinglePoolElement(Either.left(id), list, projection); } } diff --git a/src/main/java/dev/galacticraft/mod/structure/dungeon/DungeonConfiguration.java b/src/main/java/dev/galacticraft/mod/structure/dungeon/DungeonConfiguration.java index a22fdaa8e7..7f1f38d503 100644 --- a/src/main/java/dev/galacticraft/mod/structure/dungeon/DungeonConfiguration.java +++ b/src/main/java/dev/galacticraft/mod/structure/dungeon/DungeonConfiguration.java @@ -24,6 +24,7 @@ import com.mojang.serialization.Codec; import com.mojang.serialization.codecs.RecordCodecBuilder; +import net.minecraft.Util; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.NbtOps; @@ -66,7 +67,7 @@ public DungeonConfiguration(BlockState brickBlock, int yPosition, int hallwayLen } public CompoundTag write(CompoundTag tagCompound) { - tagCompound.put("brickBlock", BlockState.CODEC.encodeStart(NbtOps.INSTANCE, this.brickBlock).getOrThrow()); + tagCompound.put("brickBlock", Util.getOrThrow(BlockState.CODEC.encodeStart(NbtOps.INSTANCE, this.brickBlock), RuntimeException::new)); tagCompound.putInt("yPosition", this.yPosition); tagCompound.putInt("hallwayLengthMin", this.hallwayLengthMin); tagCompound.putInt("hallwayLengthMax", this.hallwayLengthMax); @@ -79,7 +80,7 @@ public CompoundTag write(CompoundTag tagCompound) { public void read(CompoundTag tagCompound) { try { - this.brickBlock = BlockState.CODEC.decode(NbtOps.INSTANCE, tagCompound.get("brickBlock")).getOrThrow().getFirst(); + this.brickBlock = Util.getOrThrow(BlockState.CODEC.decode(NbtOps.INSTANCE, tagCompound.get("brickBlock")), RuntimeException::new).getFirst(); this.yPosition = tagCompound.getInt("yPosition"); this.hallwayLengthMin = tagCompound.getInt("hallwayLengthMin"); this.hallwayLengthMax = tagCompound.getInt("hallwayLengthMax"); diff --git a/src/main/java/dev/galacticraft/mod/structure/dungeon/DungeonStart.java b/src/main/java/dev/galacticraft/mod/structure/dungeon/DungeonStart.java index e23563e3f9..84a8fde6bf 100644 --- a/src/main/java/dev/galacticraft/mod/structure/dungeon/DungeonStart.java +++ b/src/main/java/dev/galacticraft/mod/structure/dungeon/DungeonStart.java @@ -27,6 +27,7 @@ import dev.galacticraft.mod.structure.GCStructurePieceTypes; import net.minecraft.nbt.CompoundTag; import net.minecraft.util.RandomSource; +import net.minecraft.world.level.Level; import net.minecraft.world.level.levelgen.structure.BoundingBox; import net.minecraft.world.level.levelgen.structure.StructurePiece; import net.minecraft.world.level.levelgen.structure.StructurePieceAccessor; diff --git a/src/main/java/dev/galacticraft/mod/structure/dungeon/DungeonStructure.java b/src/main/java/dev/galacticraft/mod/structure/dungeon/DungeonStructure.java index 9ec0699445..505c82eba1 100644 --- a/src/main/java/dev/galacticraft/mod/structure/dungeon/DungeonStructure.java +++ b/src/main/java/dev/galacticraft/mod/structure/dungeon/DungeonStructure.java @@ -22,26 +22,28 @@ package dev.galacticraft.mod.structure.dungeon; -import com.mojang.serialization.MapCodec; +import com.mojang.serialization.Codec; import com.mojang.serialization.codecs.RecordCodecBuilder; import dev.galacticraft.mod.world.gen.structure.GCStructureTypes; import net.minecraft.core.BlockPos; import net.minecraft.core.registries.Registries; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Rotation; import net.minecraft.world.level.levelgen.Heightmap; import net.minecraft.world.level.levelgen.WorldgenRandom; import net.minecraft.world.level.levelgen.structure.Structure; import net.minecraft.world.level.levelgen.structure.StructurePiece; import net.minecraft.world.level.levelgen.structure.StructureType; import net.minecraft.world.level.levelgen.structure.pieces.StructurePiecesBuilder; +import net.minecraft.world.level.levelgen.structure.structures.IglooPieces; import java.util.List; import java.util.Optional; import java.util.Random; public class DungeonStructure extends Structure { - public static final MapCodec CODEC = RecordCodecBuilder.mapCodec((instance) -> instance.group( + public static final Codec CODEC = RecordCodecBuilder.create((instance) -> instance.group( StructureSettings.CODEC.fieldOf("config").forGetter((moonRuinsStructure) -> moonRuinsStructure.settings), DungeonConfiguration.CODEC.fieldOf("dungeon_configuration").forGetter(dungeonStructure -> dungeonStructure.configuration) ).apply(instance, DungeonStructure::new)); diff --git a/src/main/java/dev/galacticraft/mod/structure/dungeon/RoomChest.java b/src/main/java/dev/galacticraft/mod/structure/dungeon/RoomChest.java index 46d7fb43a5..95ff00b631 100644 --- a/src/main/java/dev/galacticraft/mod/structure/dungeon/RoomChest.java +++ b/src/main/java/dev/galacticraft/mod/structure/dungeon/RoomChest.java @@ -26,7 +26,7 @@ import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.nbt.CompoundTag; -import net.minecraft.resources.ResourceKey; +import net.minecraft.resources.ResourceLocation; import net.minecraft.util.RandomSource; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.StructureManager; @@ -36,7 +36,6 @@ import net.minecraft.world.level.block.entity.ChestBlockEntity; import net.minecraft.world.level.chunk.ChunkGenerator; import net.minecraft.world.level.levelgen.structure.BoundingBox; -import net.minecraft.world.level.storage.loot.LootTable; public class RoomChest extends RoomEmpty { public RoomChest(CompoundTag tag) { @@ -60,7 +59,7 @@ public void postProcess(WorldGenLevel worldIn, StructureManager structureManager ChestBlockEntity chest = (ChestBlockEntity) worldIn.getBlockEntity(blockpos); if (chest != null) { - ResourceKey chesttype = RoomTreasure.MOONCHEST; + ResourceLocation chesttype = RoomTreasure.MOONCHEST; // if (worldIn.provider instanceof IGalacticraftWorldProvider) { // chesttype = ((IGalacticraftWorldProvider) worldIn.provider).getDungeonChestType(); // } diff --git a/src/main/java/dev/galacticraft/mod/structure/dungeon/RoomSpawner.java b/src/main/java/dev/galacticraft/mod/structure/dungeon/RoomSpawner.java index 807d0d8eba..d3882de925 100644 --- a/src/main/java/dev/galacticraft/mod/structure/dungeon/RoomSpawner.java +++ b/src/main/java/dev/galacticraft/mod/structure/dungeon/RoomSpawner.java @@ -27,6 +27,7 @@ import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.nbt.CompoundTag; +import net.minecraft.resources.ResourceLocation; import net.minecraft.util.RandomSource; import net.minecraft.world.entity.EntityType; import net.minecraft.world.level.ChunkPos; @@ -34,9 +35,12 @@ import net.minecraft.world.level.StructureManager; import net.minecraft.world.level.WorldGenLevel; import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.entity.SpawnerBlockEntity; import net.minecraft.world.level.chunk.ChunkGenerator; import net.minecraft.world.level.levelgen.structure.BoundingBox; +import java.util.Random; + public class RoomSpawner extends RoomEmpty { public RoomSpawner(CompoundTag tag) { super(GCStructurePieceTypes.ROOM_SPAWNER, tag); diff --git a/src/main/java/dev/galacticraft/mod/structure/dungeon/RoomTreasure.java b/src/main/java/dev/galacticraft/mod/structure/dungeon/RoomTreasure.java index 8b8fb19a5f..94dbbf8321 100644 --- a/src/main/java/dev/galacticraft/mod/structure/dungeon/RoomTreasure.java +++ b/src/main/java/dev/galacticraft/mod/structure/dungeon/RoomTreasure.java @@ -26,9 +26,8 @@ import dev.galacticraft.mod.structure.GCStructurePieceTypes; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.core.registries.Registries; import net.minecraft.nbt.CompoundTag; -import net.minecraft.resources.ResourceKey; +import net.minecraft.resources.ResourceLocation; import net.minecraft.util.RandomSource; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.StructureManager; @@ -38,11 +37,11 @@ import net.minecraft.world.level.levelgen.structure.BoundingBox; import net.minecraft.world.level.levelgen.structure.StructurePiece; import net.minecraft.world.level.storage.loot.BuiltInLootTables; -import net.minecraft.world.level.storage.loot.LootTable; public class RoomTreasure extends SizedPiece { - public static ResourceKey MOONCHEST = BuiltInLootTables.register(ResourceKey.create(Registries.LOOT_TABLE, Constant.id("dungeon_tier_1"))); + public static ResourceLocation MOONCHEST = Constant.id("dungeon_tier_1"); + public static final ResourceLocation TABLE_TIER_1_DUNGEON = BuiltInLootTables.register(MOONCHEST); public RoomTreasure(CompoundTag tag) { super(GCStructurePieceTypes.ROOM_TREASURE, tag); diff --git a/src/main/java/dev/galacticraft/mod/tag/GCTags.java b/src/main/java/dev/galacticraft/mod/tag/GCTags.java index 65db9611a8..73f0850005 100644 --- a/src/main/java/dev/galacticraft/mod/tag/GCTags.java +++ b/src/main/java/dev/galacticraft/mod/tag/GCTags.java @@ -35,10 +35,10 @@ import net.minecraft.world.level.material.Fluid; public class GCTags { - public static final TagKey OIL = TagKey.create(Registries.FLUID, ResourceLocation.fromNamespaceAndPath(Constant.COMMON_NAMESPACE, "oil")); - public static final TagKey FUEL = TagKey.create(Registries.FLUID, ResourceLocation.fromNamespaceAndPath(Constant.COMMON_NAMESPACE, "fuel")); - public static final TagKey SULFURIC_ACID = TagKey.create(Registries.FLUID, ResourceLocation.fromNamespaceAndPath(Constant.COMMON_NAMESPACE, "sulfuric_acid")); - public static final TagKey LIQUID_OXYGEN = TagKey.create(Registries.FLUID, ResourceLocation.fromNamespaceAndPath(Constant.COMMON_NAMESPACE, "oxygen")); + public static final TagKey OIL = TagKey.create(Registries.FLUID, new ResourceLocation(Constant.COMMON_NAMESPACE, "oil")); + public static final TagKey FUEL = TagKey.create(Registries.FLUID, new ResourceLocation(Constant.COMMON_NAMESPACE, "fuel")); + public static final TagKey SULFURIC_ACID = TagKey.create(Registries.FLUID, new ResourceLocation(Constant.COMMON_NAMESPACE, "sulfuric_acid")); + public static final TagKey LIQUID_OXYGEN = TagKey.create(Registries.FLUID, new ResourceLocation(Constant.COMMON_NAMESPACE, "oxygen")); public static final TagKey OXYGEN = TagKey.create(Registries.FLUID, Constant.id("oxygen")); public static final TagKey INFINIBURN_MOON = TagKey.create(Registries.BLOCK, Constant.id("infiniburn_moon")); @@ -61,17 +61,17 @@ public class GCTags { public static final TagKey MOON_RUINS_HAS_STRUCTURE = TagKey.create(Registries.BIOME, Constant.id("has_structure/moon_ruins")); public static final TagKey MOON_BOSS_HAS_STRUCTURE = TagKey.create(Registries.BIOME, Constant.id("has_structure/moon_boss")); - public static final TagKey ALUMINUM_INGOTS = commonTag("ingots/aluminum"); - public static final TagKey RAW_ALUMINUM_ORES = commonTag("raw_materials/aluminum"); - public static final TagKey LEAD_INGOTS = commonTag("ingots/lead"); - public static final TagKey RAW_LEAD_ORES = commonTag("raw_materials/lead"); - public static final TagKey SILICONS = commonTag("gems/silicon"); - public static final TagKey STEEL_INGOTS = commonTag("ingots/steel"); - public static final TagKey TIN_INGOTS = commonTag("ingots/tin"); - public static final TagKey RAW_TIN_ORES = commonTag("raw_materials/tin"); - public static final TagKey COMPRESSED_STEEL = commonTag("plates/steel"); - public static final TagKey COMPRESSED_IRON = commonTag("plates/iron"); - public static final TagKey COMPRESSED_TIN = commonTag("plates/tin"); + public static final TagKey ALUMINUM_INGOTS = commonTag("aluminum_ingots"); + public static final TagKey RAW_ALUMINUM_ORES = commonTag("raw_aluminum_ores"); + public static final TagKey LEAD_INGOTS = commonTag("lead_ingots"); + public static final TagKey RAW_LEAD_ORES = commonTag("raw_lead_ores"); + public static final TagKey SILICONS = commonTag("silicons"); + public static final TagKey STEEL_INGOTS = commonTag("steel_ingots"); + public static final TagKey TIN_INGOTS = commonTag("tin_ingots"); + public static final TagKey RAW_TIN_ORES = commonTag("raw_tin_ores"); + public static final TagKey COMPRESSED_STEEL = commonTag("compressed_steel"); + public static final TagKey COMPRESSED_IRON = commonTag("compressed_iron"); + public static final TagKey COMPRESSED_TIN = commonTag("compressed_tin"); public static final TagKey MOON_RUINS = TagKey.create(Registries.STRUCTURE, Constant.id("moon_ruins")); @@ -81,7 +81,7 @@ public class GCTags { public static final TagKey> HAS_FOOTPRINTS = TagKey.create(Registries.ENTITY_TYPE, Constant.id("has_footprints")); public static TagKey commonTag(String path) { - return TagKey.create(Registries.ITEM, ResourceLocation.fromNamespaceAndPath(Constant.COMMON_NAMESPACE, path)); + return TagKey.create(Registries.ITEM, new ResourceLocation(Constant.COMMON_NAMESPACE, path)); } public static void register() { diff --git a/src/main/java/dev/galacticraft/mod/util/DrawableUtil.java b/src/main/java/dev/galacticraft/mod/util/DrawableUtil.java index c475a40445..ac9f394fbc 100644 --- a/src/main/java/dev/galacticraft/mod/util/DrawableUtil.java +++ b/src/main/java/dev/galacticraft/mod/util/DrawableUtil.java @@ -76,13 +76,13 @@ public static void drawProgressTexture(PoseStack matrices, float x0, float x1, f public static void drawTexturedQuad_F(Matrix4f matrices, float x0, float x1, float y0, float y1, float z, float u0, float u1, float v0, float v1) { RenderSystem.setShader(GameRenderer::getPositionTexShader); - BufferBuilder bufferBuilder = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); - bufferBuilder - .addVertex(matrices, x0, y1, z).setUv(u0, v1) - .addVertex(matrices, x1, y1, z).setUv(u1, v1) - .addVertex(matrices, x1, y0, z).setUv(u1, v0) - .addVertex(matrices, x0, y0, z).setUv(u0, v0); - BufferUploader.drawWithShader(bufferBuilder.buildOrThrow()); + BufferBuilder bufferBuilder = Tesselator.getInstance().getBuilder(); + bufferBuilder.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); + bufferBuilder.vertex(matrices, x0, y1, z).uv(u0, v1).endVertex(); + bufferBuilder.vertex(matrices, x1, y1, z).uv(u1, v1).endVertex(); + bufferBuilder.vertex(matrices, x1, y0, z).uv(u1, v0).endVertex(); + bufferBuilder.vertex(matrices, x0, y0, z).uv(u0, v0).endVertex(); + BufferUploader.drawWithShader(bufferBuilder.end()); } public static void drawTextureColor(PoseStack matrices, int x, int y, int z, float u, float v, int width, int height, int textureHeight, int textureWidth, int red, int green, int blue, int alpha) { @@ -93,13 +93,14 @@ public static void drawTextureColor(PoseStack matrices, int x0, int x1, int y0, drawTexturedQuadColor(matrices.last().pose(), x0, x1, y0, y1, z, (u + 0.0F) / (float)textureWidth, (u + (float)regionWidth) / (float)textureWidth, (v + 0.0F) / (float)textureHeight, (v + (float)regionHeight) / (float)textureHeight, red, green, blue, alpha); } - public static void drawTexturedQuadColor(Matrix4f matrices, int x0, int x1, int y0, int y1, int z, float u0, float u1, float v0, float v1, int red, int green, int blue, int alpha) { - BufferBuilder bufferBuilder = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX_COLOR); - bufferBuilder.addVertex(matrices, (float)x0, (float)y1, (float)z).setColor(red, green, blue, alpha).setUv(u0, v1) - .addVertex(matrices, (float)x1, (float)y1, (float)z).setColor(red, green, blue, alpha).setUv(u1, v1) - .addVertex(matrices, (float)x1, (float)y0, (float)z).setColor(red, green, blue, alpha).setUv(u1, v0) - .addVertex(matrices, (float)x0, (float)y0, (float)z).setColor(red, green, blue, alpha).setUv(u0, v0); - BufferUploader.draw(bufferBuilder.buildOrThrow()); + public static void drawTexturedQuadColor(Matrix4f matrices, int x0, int x1, int y0, int y1, int z, float u0, float u1, float v0, float v1, int red, int green, int blue, int alwha) { + BufferBuilder bufferBuilder = Tesselator.getInstance().getBuilder(); + bufferBuilder.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_COLOR_TEX); + bufferBuilder.vertex(matrices, (float)x0, (float)y1, (float)z).color(red, green, blue, 255).uv(u0, v1).endVertex(); + bufferBuilder.vertex(matrices, (float)x1, (float)y1, (float)z).color(red, green, blue, 255).uv(u1, v1).endVertex(); + bufferBuilder.vertex(matrices, (float)x1, (float)y0, (float)z).color(red, green, blue, 255).uv(u1, v0).endVertex(); + bufferBuilder.vertex(matrices, (float)x0, (float)y0, (float)z).color(red, green, blue, 255).uv(u0, v0).endVertex(); + BufferUploader.draw(bufferBuilder.end()); } public static String roundForDisplay(double d, int places) { diff --git a/src/main/java/dev/galacticraft/mod/util/StreamCodecs.java b/src/main/java/dev/galacticraft/mod/util/StreamCodecs.java deleted file mode 100644 index 3375a4a834..0000000000 --- a/src/main/java/dev/galacticraft/mod/util/StreamCodecs.java +++ /dev/null @@ -1,364 +0,0 @@ -/* - * Copyright (c) 2019-2024 Team Galacticraft - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package dev.galacticraft.mod.util; - - -import com.mojang.datafixers.util.*; -import com.mojang.serialization.Codec; -import io.netty.buffer.ByteBuf; -import net.minecraft.core.Holder; -import net.minecraft.core.Registry; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.NbtOps; -import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.VarInt; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.resources.ResourceKey; -import org.jetbrains.annotations.Contract; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -import java.util.Objects; -import java.util.function.Function; -import java.util.function.IntFunction; - -public interface StreamCodecs { - StreamCodec LONG = StreamCodec.of( - ByteBuf::writeLong, - ByteBuf::readLong - ); - - static StreamCodec ofRegistryEntry(ResourceKey> registry) { - return StreamCodec.of( - (b, v) -> b.writeResourceLocation(b.registryAccess().registryOrThrow(registry).getKey(v)), - b -> Objects.requireNonNull(b.registryAccess().registryOrThrow(registry).get(b.readResourceLocation())) - ); - } - - static StreamCodec ofNullable(StreamCodec codec) { - return StreamCodec.of( - (b, v) -> { - if (v == null) { - b.writeBoolean(false); - } else { - b.writeBoolean(true); - codec.encode(b, v); - } - }, - b -> b.readBoolean() ? codec.decode(b) : null - ); - } - - static StreamCodec> ofHolder(ResourceKey> registry) { - return StreamCodec.of( - (b, v) -> b.writeResourceLocation(b.registryAccess().registryOrThrow(registry).getKey(v.value())), - b -> Objects.requireNonNull(b.registryAccess().registryOrThrow(registry).getHolderOrThrow(ResourceKey.create(registry, b.readResourceLocation()))) - ); - } - - static StreamCodec> ofReference(ResourceKey> registry) { - return StreamCodec.of( - (b, v) -> b.writeResourceKey(v.key()), - b -> Objects.requireNonNull(b.registryAccess().registryOrThrow(registry).getHolderOrThrow(b.readResourceKey(registry))) - ); - } - - static StreamCodec composite( - StreamCodec codec1, Function from1, StreamCodec codec2, Function from2, - StreamCodec codec3, Function from3, StreamCodec codec4, Function from4, - StreamCodec codec5, Function from5, StreamCodec codec6, Function from6, - StreamCodec codec7, Function from7, - Function7 to - ) { - return new StreamCodec<>() { - @Override - public @NotNull C decode(B object) { - return to.apply(codec1.decode(object), codec2.decode(object), codec3.decode(object), codec4.decode(object), codec5.decode(object), codec6.decode(object), codec7.decode(object)); - } - - @Override - public void encode(B object, C object2) { - codec1.encode(object, from1.apply(object2)); - codec2.encode(object, from2.apply(object2)); - codec3.encode(object, from3.apply(object2)); - codec4.encode(object, from4.apply(object2)); - codec5.encode(object, from5.apply(object2)); - codec6.encode(object, from6.apply(object2)); - codec7.encode(object, from7.apply(object2)); - } - }; - } - - static StreamCodec composite( - StreamCodec codec1, Function from1, StreamCodec codec2, Function from2, - StreamCodec codec3, Function from3, StreamCodec codec4, Function from4, - StreamCodec codec5, Function from5, StreamCodec codec6, Function from6, - StreamCodec codec7, Function from7, StreamCodec codec8, Function from8, - Function8 to - ) { - return new StreamCodec<>() { - @Override - public @NotNull C decode(B object) { - return to.apply(codec1.decode(object), codec2.decode(object), codec3.decode(object), codec4.decode(object), codec5.decode(object), codec6.decode(object), codec7.decode(object), codec8.decode(object)); - } - - @Override - public void encode(B object, C object2) { - codec1.encode(object, from1.apply(object2)); - codec2.encode(object, from2.apply(object2)); - codec3.encode(object, from3.apply(object2)); - codec4.encode(object, from4.apply(object2)); - codec5.encode(object, from5.apply(object2)); - codec6.encode(object, from6.apply(object2)); - codec7.encode(object, from7.apply(object2)); - codec8.encode(object, from8.apply(object2)); - } - }; - } - - static StreamCodec composite( - StreamCodec codec1, Function from1, StreamCodec codec2, Function from2, - StreamCodec codec3, Function from3, StreamCodec codec4, Function from4, - StreamCodec codec5, Function from5, StreamCodec codec6, Function from6, - StreamCodec codec7, Function from7, StreamCodec codec8, Function from8, - StreamCodec codec9, Function from9, - Function9 to - ) { - return new StreamCodec<>() { - @Override - public @NotNull C decode(B object) { - return to.apply(codec1.decode(object), codec2.decode(object), codec3.decode(object), codec4.decode(object), codec5.decode(object), codec6.decode(object), codec7.decode(object), codec8.decode(object), codec9.decode(object)); - } - - @Override - public void encode(B object, C object2) { - codec1.encode(object, from1.apply(object2)); - codec2.encode(object, from2.apply(object2)); - codec3.encode(object, from3.apply(object2)); - codec4.encode(object, from4.apply(object2)); - codec5.encode(object, from5.apply(object2)); - codec6.encode(object, from6.apply(object2)); - codec7.encode(object, from7.apply(object2)); - codec8.encode(object, from8.apply(object2)); - codec9.encode(object, from9.apply(object2)); - } - }; - } - - static StreamCodec composite( - StreamCodec codec1, Function from1, StreamCodec codec2, Function from2, - StreamCodec codec3, Function from3, StreamCodec codec4, Function from4, - StreamCodec codec5, Function from5, StreamCodec codec6, Function from6, - StreamCodec codec7, Function from7, StreamCodec codec8, Function from8, - StreamCodec codec9, Function from9, StreamCodec codec10, Function from10, - Function10 to - ) { - return new StreamCodec<>() { - @Override - public @NotNull C decode(B object) { - return to.apply(codec1.decode(object), codec2.decode(object), codec3.decode(object), codec4.decode(object), codec5.decode(object), codec6.decode(object), codec7.decode(object), codec8.decode(object), codec9.decode(object), codec10.decode(object)); - } - - @Override - public void encode(B object, C object2) { - codec1.encode(object, from1.apply(object2)); - codec2.encode(object, from2.apply(object2)); - codec3.encode(object, from3.apply(object2)); - codec4.encode(object, from4.apply(object2)); - codec5.encode(object, from5.apply(object2)); - codec6.encode(object, from6.apply(object2)); - codec7.encode(object, from7.apply(object2)); - codec8.encode(object, from8.apply(object2)); - codec9.encode(object, from9.apply(object2)); - codec10.encode(object, from10.apply(object2)); - } - }; - } - - static StreamCodec composite( - StreamCodec codec1, Function from1, StreamCodec codec2, Function from2, - StreamCodec codec3, Function from3, StreamCodec codec4, Function from4, - StreamCodec codec5, Function from5, StreamCodec codec6, Function from6, - StreamCodec codec7, Function from7, StreamCodec codec8, Function from8, - StreamCodec codec9, Function from9, StreamCodec codec10, Function from10, - StreamCodec codec11, Function from11, - Function11 to - ) { - return new StreamCodec<>() { - @Override - public @NotNull C decode(B object) { - return to.apply(codec1.decode(object), codec2.decode(object), codec3.decode(object), codec4.decode(object), codec5.decode(object), codec6.decode(object), codec7.decode(object), codec8.decode(object), codec9.decode(object), codec10.decode(object), codec11.decode(object)); - } - - @Override - public void encode(B object, C object2) { - codec1.encode(object, from1.apply(object2)); - codec2.encode(object, from2.apply(object2)); - codec3.encode(object, from3.apply(object2)); - codec4.encode(object, from4.apply(object2)); - codec5.encode(object, from5.apply(object2)); - codec6.encode(object, from6.apply(object2)); - codec7.encode(object, from7.apply(object2)); - codec8.encode(object, from8.apply(object2)); - codec9.encode(object, from9.apply(object2)); - codec10.encode(object, from10.apply(object2)); - codec11.encode(object, from11.apply(object2)); - } - }; - } - - static StreamCodec composite( - StreamCodec codec1, Function from1, StreamCodec codec2, Function from2, - StreamCodec codec3, Function from3, StreamCodec codec4, Function from4, - StreamCodec codec5, Function from5, StreamCodec codec6, Function from6, - StreamCodec codec7, Function from7, StreamCodec codec8, Function from8, - StreamCodec codec9, Function from9, StreamCodec codec10, Function from10, - StreamCodec codec11, Function from11, StreamCodec codec12, Function from12, - Function12 to - ) { - return new StreamCodec<>() { - @Override - public @NotNull C decode(B object) { - return to.apply(codec1.decode(object), codec2.decode(object), codec3.decode(object), codec4.decode(object), codec5.decode(object), codec6.decode(object), codec7.decode(object), codec8.decode(object), codec9.decode(object), codec10.decode(object), codec11.decode(object), codec12.decode(object)); - } - - @Override - public void encode(B object, C object2) { - codec1.encode(object, from1.apply(object2)); - codec2.encode(object, from2.apply(object2)); - codec3.encode(object, from3.apply(object2)); - codec4.encode(object, from4.apply(object2)); - codec5.encode(object, from5.apply(object2)); - codec6.encode(object, from6.apply(object2)); - codec7.encode(object, from7.apply(object2)); - codec8.encode(object, from8.apply(object2)); - codec9.encode(object, from9.apply(object2)); - codec10.encode(object, from10.apply(object2)); - codec11.encode(object, from11.apply(object2)); - codec12.encode(object, from12.apply(object2)); - } - }; - } - - static StreamCodec composite( - StreamCodec codec1, Function from1, StreamCodec codec2, Function from2, - StreamCodec codec3, Function from3, StreamCodec codec4, Function from4, - StreamCodec codec5, Function from5, StreamCodec codec6, Function from6, - StreamCodec codec7, Function from7, StreamCodec codec8, Function from8, - StreamCodec codec9, Function from9, StreamCodec codec10, Function from10, - StreamCodec codec11, Function from11, StreamCodec codec12, Function from12, - StreamCodec codec13, Function from13, - Function13 to - ) { - return new StreamCodec<>() { - @Override - public @NotNull C decode(B object) { - return to.apply(codec1.decode(object), codec2.decode(object), codec3.decode(object), codec4.decode(object), codec5.decode(object), codec6.decode(object), codec7.decode(object), codec8.decode(object), codec9.decode(object), codec10.decode(object), codec11.decode(object), codec12.decode(object), codec13.decode(object)); - } - - @Override - public void encode(B object, C object2) { - codec1.encode(object, from1.apply(object2)); - codec2.encode(object, from2.apply(object2)); - codec3.encode(object, from3.apply(object2)); - codec4.encode(object, from4.apply(object2)); - codec5.encode(object, from5.apply(object2)); - codec6.encode(object, from6.apply(object2)); - codec7.encode(object, from7.apply(object2)); - codec8.encode(object, from8.apply(object2)); - codec9.encode(object, from9.apply(object2)); - codec10.encode(object, from10.apply(object2)); - codec11.encode(object, from11.apply(object2)); - codec12.encode(object, from12.apply(object2)); - codec13.encode(object, from13.apply(object2)); - } - }; - } - - static StreamCodec composite( - StreamCodec codec1, Function from1, StreamCodec codec2, Function from2, - StreamCodec codec3, Function from3, StreamCodec codec4, Function from4, - StreamCodec codec5, Function from5, StreamCodec codec6, Function from6, - StreamCodec codec7, Function from7, StreamCodec codec8, Function from8, - StreamCodec codec9, Function from9, StreamCodec codec10, Function from10, - StreamCodec codec11, Function from11, StreamCodec codec12, Function from12, - StreamCodec codec13, Function from13, StreamCodec codec14, Function from14, - Function14 to - ) { - return new StreamCodec<>() { - @Override - public @NotNull C decode(B object) { - return to.apply(codec1.decode(object), codec2.decode(object), codec3.decode(object), codec4.decode(object), codec5.decode(object), codec6.decode(object), codec7.decode(object), codec8.decode(object), codec9.decode(object), codec10.decode(object), codec11.decode(object), codec12.decode(object), codec13.decode(object), codec14.decode(object)); - } - - @Override - public void encode(B object, C object2) { - codec1.encode(object, from1.apply(object2)); - codec2.encode(object, from2.apply(object2)); - codec3.encode(object, from3.apply(object2)); - codec4.encode(object, from4.apply(object2)); - codec5.encode(object, from5.apply(object2)); - codec6.encode(object, from6.apply(object2)); - codec7.encode(object, from7.apply(object2)); - codec8.encode(object, from8.apply(object2)); - codec9.encode(object, from9.apply(object2)); - codec10.encode(object, from10.apply(object2)); - codec11.encode(object, from11.apply(object2)); - codec12.encode(object, from12.apply(object2)); - codec13.encode(object, from13.apply(object2)); - codec14.encode(object, from14.apply(object2)); - } - }; - } - - @Contract(value = "_, _ -> new", pure = true) - static @NotNull StreamCodec array(StreamCodec codec, IntFunction constructor) { - return StreamCodec.of( - (b, a) -> { - VarInt.write(b, a.length); - for (T t : a) { - codec.encode(b, t); - } - }, - b -> { - int len = VarInt.read(b); - T[] a = constructor.apply(len); - for (int i = 0; i < len; i++) { - a[i] = codec.decode(b); - } - return a; - } - ); - } - - static > StreamCodec ofEnum(E[] values) { - return StreamCodec.of((b, e) -> b.writeByte(e.ordinal()), b -> values[b.readByte()]); - } - - static StreamCodec wrapCodec(Codec codec) { - return StreamCodec.of( - (b, v) -> b.writeNbt(codec.encode(v, NbtOps.INSTANCE, new CompoundTag()).getOrThrow()), - b -> codec.decode(NbtOps.INSTANCE, b.readNbt()).getOrThrow().getFirst() - ); - } -} diff --git a/src/main/java/dev/galacticraft/mod/util/Translations.java b/src/main/java/dev/galacticraft/mod/util/Translations.java index efaa29ce6d..b63fb76cf3 100644 --- a/src/main/java/dev/galacticraft/mod/util/Translations.java +++ b/src/main/java/dev/galacticraft/mod/util/Translations.java @@ -36,10 +36,6 @@ interface RecipeCategory { String COMPRESSOR = "category.recipe_viewer.compressing"; } - interface BannerPattern { - String ROCKET = "banner_pattern.galacticraft.rocket"; - } - interface Chat { String BED_FAIL = "chat.galacticraft.bed_fail"; String ROCKET_WARNING = "chat.galacticraft.rocket.warning"; diff --git a/src/main/java/dev/galacticraft/mod/village/GCVillagerProfessions.java b/src/main/java/dev/galacticraft/mod/village/GCVillagerProfessions.java index 73de8b559b..5b21970d6f 100644 --- a/src/main/java/dev/galacticraft/mod/village/GCVillagerProfessions.java +++ b/src/main/java/dev/galacticraft/mod/village/GCVillagerProfessions.java @@ -35,11 +35,10 @@ import net.minecraft.sounds.SoundEvents; import net.minecraft.world.entity.ai.village.poi.PoiType; import net.minecraft.world.entity.npc.VillagerProfession; -import net.minecraft.world.entity.npc.VillagerTrades; import net.minecraft.world.item.Item; import net.minecraft.world.item.Items; import net.minecraft.world.level.block.Block; -import net.minecraft.world.level.saveddata.maps.MapDecorationTypes; +import net.minecraft.world.level.saveddata.maps.MapDecoration; import org.jetbrains.annotations.Nullable; public class GCVillagerProfessions { @@ -53,36 +52,36 @@ public static void register() { Registry.register(BuiltInRegistries.VILLAGER_PROFESSION, Constant.id("lunar_cartographer"), LUNAR_CARTOGRAPHER); TradeOfferHelper.registerVillagerOffers(LUNAR_CARTOGRAPHER, 1, factories -> { - factories.add(new VillagerTrades.EmeraldForItems(Items.PAPER, 24, 16, 2)); - factories.add(new VillagerTrades.ItemsForEmeralds(Items.MAP, 7, 1, 1)); + factories.add(new GCVillagerTrades.BuyForOneEmeraldFactory(Items.PAPER, 24, 16, 2)); + factories.add(new GCVillagerTrades.SellItemFactory(Items.MAP, 7, 1, 1)); }); TradeOfferHelper.registerVillagerOffers(LUNAR_CARTOGRAPHER, 2, factories -> { - factories.add(new VillagerTrades.EmeraldForItems(Items.GLASS_PANE, 11, 16, 10)); - factories.add(new VillagerTrades.TreasureMapForEmeralds(13, GCTags.MOON_RUINS, "filled_map.moon_ruins", MapDecorationTypes.RED_X, 12, 5)); + factories.add(new GCVillagerTrades.BuyForOneEmeraldFactory(Items.GLASS_PANE, 11, 16, 10)); + factories.add(new GCVillagerTrades.SellMapFactory(13, GCTags.MOON_RUINS, MapDecoration.Type.RED_X, 12, 5)); }); TradeOfferHelper.registerVillagerOffers(LUNAR_CARTOGRAPHER, 3, factories -> { - factories.add(new VillagerTrades.EmeraldForItems(Items.COMPASS, 1, 12, 20)); + factories.add(new GCVillagerTrades.BuyForOneEmeraldFactory(Items.COMPASS, 1, 12, 20)); // factories.add(new GalacticraftTradeOffers.SellMapFactory(14, GalacticraftStructures.MOON_RUINS, MapIcon.Type.MANSION, 12, 10)); }); TradeOfferHelper.registerVillagerOffers(LUNAR_CARTOGRAPHER, 4, factories -> { - factories.add(new VillagerTrades.ItemsForEmeralds(Items.ITEM_FRAME, 7, 1, 15)); - factories.add(new VillagerTrades.ItemsForEmeralds(Items.WHITE_BANNER, 3, 1, 15)); - factories.add(new VillagerTrades.ItemsForEmeralds(Items.BLUE_BANNER, 3, 1, 15)); - factories.add(new VillagerTrades.ItemsForEmeralds(Items.LIGHT_BLUE_BANNER, 3, 1, 15)); - factories.add(new VillagerTrades.ItemsForEmeralds(Items.RED_BANNER, 3, 1, 15)); - factories.add(new VillagerTrades.ItemsForEmeralds(Items.PINK_BANNER, 3, 1, 15)); - factories.add(new VillagerTrades.ItemsForEmeralds(Items.GREEN_BANNER, 3, 1, 15)); - factories.add(new VillagerTrades.ItemsForEmeralds(Items.LIME_BANNER, 3, 1, 15)); - factories.add(new VillagerTrades.ItemsForEmeralds(Items.GRAY_BANNER, 3, 1, 15)); - factories.add(new VillagerTrades.ItemsForEmeralds(Items.BLACK_BANNER, 3, 1, 15)); - factories.add(new VillagerTrades.ItemsForEmeralds(Items.PURPLE_BANNER, 3, 1, 15)); - factories.add(new VillagerTrades.ItemsForEmeralds(Items.MAGENTA_BANNER, 3, 1, 15)); - factories.add(new VillagerTrades.ItemsForEmeralds(Items.CYAN_BANNER, 3, 1, 15)); - factories.add(new VillagerTrades.ItemsForEmeralds(Items.BROWN_BANNER, 3, 1, 15)); - factories.add(new VillagerTrades.ItemsForEmeralds(Items.YELLOW_BANNER, 3, 1, 15)); - factories.add(new VillagerTrades.ItemsForEmeralds(Items.ORANGE_BANNER, 3, 1, 15)); - factories.add(new VillagerTrades.ItemsForEmeralds(Items.LIGHT_GRAY_BANNER, 3, 1, 15)); + factories.add(new GCVillagerTrades.SellItemFactory(Items.ITEM_FRAME, 7, 1, 15)); + factories.add(new GCVillagerTrades.SellItemFactory(Items.WHITE_BANNER, 3, 1, 15)); + factories.add(new GCVillagerTrades.SellItemFactory(Items.BLUE_BANNER, 3, 1, 15)); + factories.add(new GCVillagerTrades.SellItemFactory(Items.LIGHT_BLUE_BANNER, 3, 1, 15)); + factories.add(new GCVillagerTrades.SellItemFactory(Items.RED_BANNER, 3, 1, 15)); + factories.add(new GCVillagerTrades.SellItemFactory(Items.PINK_BANNER, 3, 1, 15)); + factories.add(new GCVillagerTrades.SellItemFactory(Items.GREEN_BANNER, 3, 1, 15)); + factories.add(new GCVillagerTrades.SellItemFactory(Items.LIME_BANNER, 3, 1, 15)); + factories.add(new GCVillagerTrades.SellItemFactory(Items.GRAY_BANNER, 3, 1, 15)); + factories.add(new GCVillagerTrades.SellItemFactory(Items.BLACK_BANNER, 3, 1, 15)); + factories.add(new GCVillagerTrades.SellItemFactory(Items.PURPLE_BANNER, 3, 1, 15)); + factories.add(new GCVillagerTrades.SellItemFactory(Items.MAGENTA_BANNER, 3, 1, 15)); + factories.add(new GCVillagerTrades.SellItemFactory(Items.CYAN_BANNER, 3, 1, 15)); + factories.add(new GCVillagerTrades.SellItemFactory(Items.BROWN_BANNER, 3, 1, 15)); + factories.add(new GCVillagerTrades.SellItemFactory(Items.YELLOW_BANNER, 3, 1, 15)); + factories.add(new GCVillagerTrades.SellItemFactory(Items.ORANGE_BANNER, 3, 1, 15)); + factories.add(new GCVillagerTrades.SellItemFactory(Items.LIGHT_GRAY_BANNER, 3, 1, 15)); }); - TradeOfferHelper.registerVillagerOffers(LUNAR_CARTOGRAPHER, 5, factories -> factories.add(new VillagerTrades.ItemsForEmeralds(Items.GLOBE_BANNER_PATTERN, 8, 1, 30))); + TradeOfferHelper.registerVillagerOffers(LUNAR_CARTOGRAPHER, 5, factories -> factories.add(new GCVillagerTrades.SellItemFactory(Items.GLOBE_BANNER_PATTERN, 8, 1, 30))); } } diff --git a/src/main/java/dev/galacticraft/mod/village/GCVillagerTrades.java b/src/main/java/dev/galacticraft/mod/village/GCVillagerTrades.java new file mode 100644 index 0000000000..297884259a --- /dev/null +++ b/src/main/java/dev/galacticraft/mod/village/GCVillagerTrades.java @@ -0,0 +1,138 @@ +/* + * Copyright (c) 2019-2024 Team Galacticraft + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package dev.galacticraft.mod.village; + +import dev.galacticraft.mod.content.item.GCItems; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.tags.TagKey; +import net.minecraft.util.RandomSource; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.npc.VillagerTrades; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Items; +import net.minecraft.world.item.MapItem; +import net.minecraft.world.item.trading.MerchantOffer; +import net.minecraft.world.level.ItemLike; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.levelgen.structure.Structure; +import net.minecraft.world.level.saveddata.maps.MapDecoration; +import net.minecraft.world.level.saveddata.maps.MapItemSavedData; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +public class GCVillagerTrades { + public static class BuyForOneEmeraldFactory implements VillagerTrades.ItemListing { + private final Item buy; + private final int price; + private final int maxUses; + private final int experience; + private final float multiplier; + + public BuyForOneEmeraldFactory(ItemLike item, int price, int maxUses, int experience) { + this.buy = item.asItem(); + this.price = price; + this.maxUses = maxUses; + this.experience = experience; + this.multiplier = 0.05F; + } + + public MerchantOffer getOffer(Entity entity, RandomSource random) { + ItemStack itemStack = new ItemStack(this.buy, this.price); + return new MerchantOffer(itemStack, new ItemStack(GCItems.LUNAR_SAPPHIRE), this.maxUses, this.experience, this.multiplier); + } + } + + public static class SellMapFactory implements VillagerTrades.ItemListing { + private final int price; + private final TagKey structure; + private final MapDecoration.Type iconType; + private final int maxUses; + private final int experience; + + public SellMapFactory(int price, TagKey feature, MapDecoration.Type iconType, int maxUses, int experience) { + this.price = price; + this.structure = feature; + this.iconType = iconType; + this.maxUses = maxUses; + this.experience = experience; + } + + @Nullable + public MerchantOffer getOffer(Entity entity, @NotNull RandomSource random) { + if (!(entity.level() instanceof ServerLevel world)) { + return null; + } else { + BlockPos blockPos = world.findNearestMapStructure(this.structure, entity.blockPosition(), 100, true); + if (blockPos != null) { + ItemStack itemStack = MapItem.create(world, blockPos.getX(), blockPos.getZ(), (byte) 2, true, true); + MapItem.renderBiomePreviewMap(world, itemStack); + MapItemSavedData.addTargetDecoration(itemStack, blockPos, "+", this.iconType); +// itemStack.setCustomName(Text.translatable("filled_map." + this.structure.getName().toLowerCase(Locale.ROOT))); port + return new MerchantOffer(new ItemStack(GCItems.LUNAR_SAPPHIRE, this.price), new ItemStack(Items.COMPASS), itemStack, this.maxUses, this.experience, 0.2F); + } else { + return null; + } + } + } + } + + public static class SellItemFactory implements VillagerTrades.ItemListing { + private final ItemStack sell; + private final int price; + private final int count; + private final int maxUses; + private final int experience; + private final float multiplier; + + public SellItemFactory(Block block, int price, int count, int maxUses, int experience) { + this(new ItemStack(block), price, count, maxUses, experience); + } + + public SellItemFactory(Item item, int price, int count, int experience) { + this(new ItemStack(item), price, count, 12, experience); + } + + public SellItemFactory(Item item, int price, int count, int maxUses, int experience) { + this(new ItemStack(item), price, count, maxUses, experience); + } + + public SellItemFactory(ItemStack stack, int price, int count, int maxUses, int experience) { + this(stack, price, count, maxUses, experience, 0.05F); + } + + public SellItemFactory(ItemStack stack, int price, int count, int maxUses, int experience, float multiplier) { + this.sell = stack; + this.price = price; + this.count = count; + this.maxUses = maxUses; + this.experience = experience; + this.multiplier = multiplier; + } + + public MerchantOffer getOffer(Entity entity, RandomSource random) { + return new MerchantOffer(new ItemStack(GCItems.LUNAR_SAPPHIRE, this.price), new ItemStack(this.sell.getItem(), this.count), this.maxUses, this.experience, this.multiplier); + } + } +} diff --git a/src/main/java/dev/galacticraft/mod/world/biome/GCBiomes.java b/src/main/java/dev/galacticraft/mod/world/biome/GCBiomes.java index 22cbfe3649..523eaf239b 100644 --- a/src/main/java/dev/galacticraft/mod/world/biome/GCBiomes.java +++ b/src/main/java/dev/galacticraft/mod/world/biome/GCBiomes.java @@ -25,7 +25,7 @@ import dev.galacticraft.mod.Constant; import net.minecraft.core.HolderGetter; import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.resources.ResourceKey; import net.minecraft.world.level.biome.Biome; import net.minecraft.world.level.biome.BiomeGenerationSettings; @@ -73,7 +73,7 @@ public static Biome createSpaceBiome(HolderGetter holderGetter, H .temperatureAdjustment(Biome.TemperatureModifier.NONE).build(); } - public static void bootstrapRegistries(BootstrapContext context) { // moj-map typo :( + public static void bootstrapRegistries(BootstapContext context) { // moj-map typo :( HolderGetter featureLookup = context.lookup(Registries.PLACED_FEATURE); HolderGetter> carverLookup = context.lookup(Registries.CONFIGURED_CARVER); context.register(SPACE, createSpaceBiome(context.lookup(Registries.PLACED_FEATURE), context.lookup(Registries.CONFIGURED_CARVER))); diff --git a/src/main/java/dev/galacticraft/mod/world/biome/MoonBiomes.java b/src/main/java/dev/galacticraft/mod/world/biome/MoonBiomes.java index 0618305b4c..40932e6978 100644 --- a/src/main/java/dev/galacticraft/mod/world/biome/MoonBiomes.java +++ b/src/main/java/dev/galacticraft/mod/world/biome/MoonBiomes.java @@ -24,6 +24,7 @@ import dev.galacticraft.mod.content.GCEntityTypes; import dev.galacticraft.mod.content.GCSounds; +import dev.galacticraft.mod.world.gen.carver.GCCarvers; import dev.galacticraft.mod.world.gen.carver.GCConfiguredCarvers; import dev.galacticraft.mod.world.gen.feature.GCOrePlacedFeatures; import net.minecraft.core.HolderGetter; diff --git a/src/main/java/dev/galacticraft/mod/world/biome/VenusBiomes.java b/src/main/java/dev/galacticraft/mod/world/biome/VenusBiomes.java index a84ed59ac3..3ac241ef01 100644 --- a/src/main/java/dev/galacticraft/mod/world/biome/VenusBiomes.java +++ b/src/main/java/dev/galacticraft/mod/world/biome/VenusBiomes.java @@ -24,10 +24,12 @@ import dev.galacticraft.mod.content.GCEntityTypes; import dev.galacticraft.mod.content.GCSounds; +import dev.galacticraft.mod.world.gen.feature.GCOrePlacedFeatures; import net.minecraft.core.HolderGetter; import net.minecraft.sounds.Musics; import net.minecraft.world.entity.MobCategory; import net.minecraft.world.level.biome.*; +import net.minecraft.world.level.levelgen.GenerationStep; import net.minecraft.world.level.levelgen.carver.ConfiguredWorldCarver; import net.minecraft.world.level.levelgen.placement.PlacedFeature; diff --git a/src/main/java/dev/galacticraft/mod/world/biome/source/GCMultiNoiseBiomeSourceParameterLists.java b/src/main/java/dev/galacticraft/mod/world/biome/source/GCMultiNoiseBiomeSourceParameterLists.java index d2282af766..525d6f8f7c 100644 --- a/src/main/java/dev/galacticraft/mod/world/biome/source/GCMultiNoiseBiomeSourceParameterLists.java +++ b/src/main/java/dev/galacticraft/mod/world/biome/source/GCMultiNoiseBiomeSourceParameterLists.java @@ -29,7 +29,7 @@ import dev.galacticraft.mod.world.biome.GCBiomes; import net.minecraft.core.HolderGetter; import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.biome.Biome; @@ -218,7 +218,7 @@ public static void register() { } - public static void bootstrapRegistries(BootstrapContext context) { + public static void bootstrapRegistries(BootstapContext context) { HolderGetter lookup = context.lookup(Registries.BIOME); context.register(MOON, new MultiNoiseBiomeSourceParameterList(MOON_PRESET, lookup)); context.register(VENUS, new MultiNoiseBiomeSourceParameterList(VENUS_PRESET, lookup)); diff --git a/src/main/java/dev/galacticraft/mod/world/dimension/GCDimensionTypes.java b/src/main/java/dev/galacticraft/mod/world/dimension/GCDimensionTypes.java index a4ba5ccea4..2ee331a041 100644 --- a/src/main/java/dev/galacticraft/mod/world/dimension/GCDimensionTypes.java +++ b/src/main/java/dev/galacticraft/mod/world/dimension/GCDimensionTypes.java @@ -26,7 +26,7 @@ import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.tag.GCTags; import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.resources.ResourceKey; import net.minecraft.util.valueproviders.UniformInt; import net.minecraft.world.level.dimension.DimensionType; @@ -40,7 +40,7 @@ public class GCDimensionTypes { public static final ResourceKey VENUS = key("venus"); public static final ResourceKey ASTEROID = key("asteroid"); - public static void bootstrapRegistries(BootstrapContext context) { + public static void bootstrapRegistries(BootstapContext context) { context.register(MOON, new DimensionType( OptionalLong.empty(), true, @@ -58,7 +58,6 @@ public static void bootstrapRegistries(BootstrapContext context) 0.1f, new DimensionType.MonsterSettings(false, false, UniformInt.of(0, 7), 0) )); - context.register(VENUS, new DimensionType( OptionalLong.empty(), // fixedTime true, // hasSkyLight diff --git a/src/main/java/dev/galacticraft/mod/world/dimension/GCLevelStems.java b/src/main/java/dev/galacticraft/mod/world/dimension/GCLevelStems.java index 14cb68a8e2..d84c80e2ee 100644 --- a/src/main/java/dev/galacticraft/mod/world/dimension/GCLevelStems.java +++ b/src/main/java/dev/galacticraft/mod/world/dimension/GCLevelStems.java @@ -29,7 +29,7 @@ import dev.galacticraft.mod.world.gen.custom.AsteroidChunkGenerator; import net.minecraft.core.HolderGetter; import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.biome.*; @@ -45,7 +45,7 @@ public class GCLevelStems { public static final ResourceKey VENUS = key("venus"); public static final ResourceKey ASTEROID = key("asteroid"); - public static void bootstrapRegistries(@NotNull BootstrapContext context) { + public static void bootstrapRegistries(@NotNull BootstapContext context) { HolderGetter typeLookup = context.lookup(Registries.DIMENSION_TYPE); HolderGetter biomeLookup = context.lookup(Registries.BIOME); HolderGetter noiseLookup = context.lookup(Registries.NOISE_SETTINGS); diff --git a/src/main/java/dev/galacticraft/mod/world/gen/GCDensityFunctions.java b/src/main/java/dev/galacticraft/mod/world/gen/GCDensityFunctions.java index 8bd60179bf..b76b3e2080 100644 --- a/src/main/java/dev/galacticraft/mod/world/gen/GCDensityFunctions.java +++ b/src/main/java/dev/galacticraft/mod/world/gen/GCDensityFunctions.java @@ -23,23 +23,23 @@ package dev.galacticraft.mod.world.gen; import dev.galacticraft.mod.Constant; +import net.minecraft.core.Holder; import net.minecraft.core.HolderGetter; import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.resources.ResourceKey; import net.minecraft.world.level.levelgen.DensityFunction; import net.minecraft.world.level.levelgen.DensityFunctions; import net.minecraft.world.level.levelgen.NoiseRouterData; +import net.minecraft.world.level.levelgen.Noises; import net.minecraft.world.level.levelgen.synth.BlendedNoise; public class GCDensityFunctions { public static final ResourceKey NOODLES = createKey("caves/noodles"); - public static final class Moon { public static final ResourceKey EROSION = createKey("moon/erosion"); public static final ResourceKey FINAL_DENSITY = createKey("moon/final_density"); } - public static final class Venus { // Final Density handles overall terrain shape public static final ResourceKey FINAL_DENSITY = createKey("venus/final_density"); @@ -52,14 +52,12 @@ public static final class Asteroid { private static ResourceKey createKey(String id) { return ResourceKey.create(Registries.DENSITY_FUNCTION, Constant.id(id)); } - - public static void bootstrapRegistries(BootstrapContext context) { + public static void bootstrapRegistries(BootstapContext context) { var vanillaRegistry = context.lookup(Registries.DENSITY_FUNCTION); var noiseRegistry = context.lookup(Registries.NOISE); DensityFunction shiftX = getFunction(vanillaRegistry, NoiseRouterData.SHIFT_X); DensityFunction shiftZ = getFunction(vanillaRegistry, NoiseRouterData.SHIFT_Z); DensityFunction y = getFunction(vanillaRegistry, NoiseRouterData.Y); - // DensityFunction noodles = registerAndWrap(context, NOODLES, DensityFunctions.rangeChoice( // DensityFunctions.interpolated( // DensityFunctions.rangeChoice( @@ -106,7 +104,7 @@ public static void bootstrapRegistries(BootstrapContext context // )); // DensityFunction erosion = registerAndWrap(context, Moon.EROSION, DensityFunctions.flatCache( // DensityFunctions.shiftedNoise2d( -// shiftX, shiftZ, 1.0, noiseRegistry.getOrThrow(GCNoiseData.EROSION) +// shiftX, shiftZ, 1, noiseRegistry.getOrThrow(GCNoiseData.EROSION) // ) // )); // context.register(Moon.FINAL_DENSITY, DensityFunctions.min( @@ -140,7 +138,7 @@ public static void bootstrapRegistries(BootstrapContext context )); } - private static DensityFunction registerAndWrap(BootstrapContext context, ResourceKey key, DensityFunction densityFunction) { + private static DensityFunction registerAndWrap(BootstapContext context, ResourceKey key, DensityFunction densityFunction) { return new DensityFunctions.HolderHolder(context.register(key, densityFunction)); } diff --git a/src/main/java/dev/galacticraft/mod/world/gen/GCNoiseData.java b/src/main/java/dev/galacticraft/mod/world/gen/GCNoiseData.java index a3795d7853..8dded283c0 100644 --- a/src/main/java/dev/galacticraft/mod/world/gen/GCNoiseData.java +++ b/src/main/java/dev/galacticraft/mod/world/gen/GCNoiseData.java @@ -24,7 +24,7 @@ import dev.galacticraft.mod.Constant; import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.resources.ResourceKey; import net.minecraft.world.level.levelgen.synth.NormalNoise; @@ -37,14 +37,14 @@ private static ResourceKey createKey(String id) { return ResourceKey.create(Registries.NOISE, Constant.id(id)); } - public static void bootstrapRegistries(BootstrapContext context) { -// register(context, EROSION, -11, 1, 1, 0, 1, 1); -// register(context, BASALT_MARE, 5, 0, 0.1, 0.2, 0.1, 0, 0, 0, 0); -// register(context, BASALT_MARE_HEIGHT, -12, 0.3); + public static void bootstrapRegistries(BootstapContext context) { + register(context, EROSION, -11, 1, 1, 0, 1, 1); + register(context, BASALT_MARE, 5, 0, 0.1, 0.2, 0.1, 0, 0, 0, 0); + register(context, BASALT_MARE_HEIGHT, -12, 0.3); } private static void register( - BootstrapContext context, + BootstapContext context, ResourceKey key, int firstOctave, double amplitude, diff --git a/src/main/java/dev/galacticraft/mod/world/gen/PlanetChunkGenerator.java b/src/main/java/dev/galacticraft/mod/world/gen/PlanetChunkGenerator.java index c762fb2ad3..2bbc254a20 100644 --- a/src/main/java/dev/galacticraft/mod/world/gen/PlanetChunkGenerator.java +++ b/src/main/java/dev/galacticraft/mod/world/gen/PlanetChunkGenerator.java @@ -22,7 +22,7 @@ package dev.galacticraft.mod.world.gen; -import com.mojang.serialization.MapCodec; +import com.mojang.serialization.Codec; import net.minecraft.core.BlockPos; import net.minecraft.core.Holder; import net.minecraft.server.level.WorldGenRegion; @@ -41,6 +41,7 @@ import java.util.List; import java.util.concurrent.CompletableFuture; +import java.util.concurrent.Executor; /** * Empty for now, possibly future replacement for {@link net.minecraft.world.level.levelgen.NoiseBasedChunkGenerator} @@ -52,7 +53,7 @@ public PlanetChunkGenerator(BiomeSource biomeSource) { } @Override - protected MapCodec codec() { + protected Codec codec() { return null; } @@ -77,8 +78,8 @@ public int getGenDepth() { } @Override - public CompletableFuture fillFromNoise(Blender blender, RandomState noiseConfig, StructureManager structureAccessor, ChunkAccess chunk) { - return CompletableFuture.completedFuture(chunk); + public CompletableFuture fillFromNoise(Executor executor, Blender blender, RandomState randomState, StructureManager structureManager, ChunkAccess chunkAccess) { + return null; } @Override diff --git a/src/main/java/dev/galacticraft/mod/world/gen/carver/GCConfiguredCarvers.java b/src/main/java/dev/galacticraft/mod/world/gen/carver/GCConfiguredCarvers.java index d3a445fb5d..88bafa0c4b 100644 --- a/src/main/java/dev/galacticraft/mod/world/gen/carver/GCConfiguredCarvers.java +++ b/src/main/java/dev/galacticraft/mod/world/gen/carver/GCConfiguredCarvers.java @@ -28,7 +28,7 @@ import net.minecraft.core.HolderSet; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.resources.ResourceKey; import net.minecraft.util.valueproviders.ConstantFloat; import net.minecraft.util.valueproviders.TrapezoidFloat; @@ -51,7 +51,7 @@ public class GCConfiguredCarvers { return Constant.key(Registries.CONFIGURED_CARVER, s); } - public static void bootstrapRegistries(BootstrapContext> context) { + public static void bootstrapRegistries(BootstapContext> context) { context.register(MOON_CANYON_CARVER, WorldCarver.CANYON.configured(new CanyonCarverConfiguration( 0.05f, UniformHeight.of(VerticalAnchor.absolute(10), VerticalAnchor.absolute(67)), diff --git a/src/main/java/dev/galacticraft/mod/world/gen/feature/GCConfiguredFeature.java b/src/main/java/dev/galacticraft/mod/world/gen/feature/GCConfiguredFeature.java index e9b1dc95e3..14a6a0dbd0 100644 --- a/src/main/java/dev/galacticraft/mod/world/gen/feature/GCConfiguredFeature.java +++ b/src/main/java/dev/galacticraft/mod/world/gen/feature/GCConfiguredFeature.java @@ -25,7 +25,7 @@ import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.content.GCBlocks; import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.resources.ResourceKey; import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.levelgen.feature.ConfiguredFeature; @@ -36,7 +36,7 @@ public class GCConfiguredFeature { public static final ResourceKey> OIL_LAKE = ResourceKey.create(Registries.CONFIGURED_FEATURE, Constant.id("oil_lake")); - public static void bootstrapRegistries(BootstrapContext> context) { + public static void bootstrapRegistries(BootstapContext> context) { context.register(OIL_LAKE, new ConfiguredFeature<>(Feature.LAKE, new LakeFeature.Configuration(BlockStateProvider.simple(GCBlocks.CRUDE_OIL), BlockStateProvider.simple(Blocks.STONE)))); } diff --git a/src/main/java/dev/galacticraft/mod/world/gen/feature/GCOreConfiguredFeature.java b/src/main/java/dev/galacticraft/mod/world/gen/feature/GCOreConfiguredFeature.java index 3513b90b90..31bd00c3d5 100644 --- a/src/main/java/dev/galacticraft/mod/world/gen/feature/GCOreConfiguredFeature.java +++ b/src/main/java/dev/galacticraft/mod/world/gen/feature/GCOreConfiguredFeature.java @@ -26,7 +26,7 @@ import dev.galacticraft.mod.content.GCBlocks; import dev.galacticraft.mod.tag.GCTags; import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.resources.ResourceKey; import net.minecraft.tags.BlockTags; import net.minecraft.world.level.levelgen.feature.ConfiguredFeature; @@ -75,7 +75,7 @@ public class GCOreConfiguredFeature { return Constant.key(Registries.CONFIGURED_FEATURE, s); } - public static void bootstrapRegistries(BootstrapContext> context) { + public static void bootstrapRegistries(BootstapContext> context) { context.register(ORE_SILICON_SMALL, new ConfiguredFeature<>(Feature.ORE, new OreConfiguration(SILICON_ORES, 6, 0.5F))); context.register(ORE_SILICON_LARGE, new ConfiguredFeature<>(Feature.ORE, new OreConfiguration(SILICON_ORES, 9, 0.7F))); context.register(ORE_TIN, new ConfiguredFeature<>(Feature.ORE, new OreConfiguration(TIN_ORES, 7))); diff --git a/src/main/java/dev/galacticraft/mod/world/gen/feature/GCOrePlacedFeatures.java b/src/main/java/dev/galacticraft/mod/world/gen/feature/GCOrePlacedFeatures.java index d263d527ad..174d14b7b9 100644 --- a/src/main/java/dev/galacticraft/mod/world/gen/feature/GCOrePlacedFeatures.java +++ b/src/main/java/dev/galacticraft/mod/world/gen/feature/GCOrePlacedFeatures.java @@ -28,7 +28,7 @@ import net.fabricmc.fabric.api.biome.v1.ModificationPhase; import net.minecraft.core.HolderGetter; import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.resources.ResourceKey; import net.minecraft.world.level.levelgen.GenerationStep; import net.minecraft.world.level.levelgen.VerticalAnchor; @@ -74,7 +74,7 @@ public static void register() { }); } - public static void bootstrapRegistries(BootstrapContext context) { + public static void bootstrapRegistries(BootstapContext context) { HolderGetter> lookup = context.lookup(Registries.CONFIGURED_FEATURE); context.register(ORE_SILICON, new PlacedFeature(lookup.getOrThrow(GCOreConfiguredFeature.ORE_SILICON_SMALL), modifiersWithCount(5, HeightRangePlacement.triangle(VerticalAnchor.aboveBottom(-80), VerticalAnchor.aboveBottom(80))))); context.register(ORE_SILICON_LARGE, new PlacedFeature(lookup.getOrThrow(GCOreConfiguredFeature.ORE_SILICON_LARGE), modifiersWithRarity(11, HeightRangePlacement.triangle(VerticalAnchor.aboveBottom(-80), VerticalAnchor.aboveBottom(80))))); diff --git a/src/main/java/dev/galacticraft/mod/world/gen/feature/GCPlacedFeatures.java b/src/main/java/dev/galacticraft/mod/world/gen/feature/GCPlacedFeatures.java index 10cde6e4af..57b1c51afb 100644 --- a/src/main/java/dev/galacticraft/mod/world/gen/feature/GCPlacedFeatures.java +++ b/src/main/java/dev/galacticraft/mod/world/gen/feature/GCPlacedFeatures.java @@ -26,7 +26,7 @@ import net.fabricmc.fabric.api.biome.v1.BiomeModifications; import net.minecraft.core.HolderGetter; import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.data.worldgen.features.MiscOverworldFeatures; import net.minecraft.data.worldgen.placement.PlacementUtils; import net.minecraft.resources.ResourceKey; @@ -42,7 +42,7 @@ public class GCPlacedFeatures { public static final ResourceKey OIL_LAKE = ResourceKey.create(Registries.PLACED_FEATURE, Constant.id("oil_lake")); - public static void bootstrapRegistries(BootstrapContext context) { + public static void bootstrapRegistries(BootstapContext context) { HolderGetter> configuredFeatureLookup = context.lookup(Registries.CONFIGURED_FEATURE); context.register(OIL_LAKE, new PlacedFeature(configuredFeatureLookup.getOrThrow(GCConfiguredFeature.OIL_LAKE), List.of( PlacementUtils.HEIGHTMAP_WORLD_SURFACE, diff --git a/src/main/java/dev/galacticraft/mod/world/gen/spawner/EvolvedPillagerSpawner.java b/src/main/java/dev/galacticraft/mod/world/gen/spawner/EvolvedPillagerSpawner.java index a16c072081..019a1ba68d 100644 --- a/src/main/java/dev/galacticraft/mod/world/gen/spawner/EvolvedPillagerSpawner.java +++ b/src/main/java/dev/galacticraft/mod/world/gen/spawner/EvolvedPillagerSpawner.java @@ -127,7 +127,7 @@ private boolean spawnPillager(ServerLevel world, BlockPos pos, RandomSource rand } patrolEntity.setPos(pos.getX(), pos.getY(), pos.getZ()); - patrolEntity.finalizeSpawn(world, world.getCurrentDifficultyAt(pos), MobSpawnType.PATROL, null); + patrolEntity.finalizeSpawn(world, world.getCurrentDifficultyAt(pos), MobSpawnType.PATROL, null, null); world.addFreshEntityWithPassengers(patrolEntity); return true; } else { diff --git a/src/main/java/dev/galacticraft/mod/world/gen/structure/GCStructureTypes.java b/src/main/java/dev/galacticraft/mod/world/gen/structure/GCStructureTypes.java index 9a71170808..0908fe74f7 100644 --- a/src/main/java/dev/galacticraft/mod/world/gen/structure/GCStructureTypes.java +++ b/src/main/java/dev/galacticraft/mod/world/gen/structure/GCStructureTypes.java @@ -22,9 +22,12 @@ package dev.galacticraft.mod.world.gen.structure; +import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.content.GCRegistry; import dev.galacticraft.mod.structure.dungeon.DungeonStructure; +import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.levelgen.structure.StructureType; public class GCStructureTypes { diff --git a/src/main/java/dev/galacticraft/mod/world/gen/structure/GCStructures.java b/src/main/java/dev/galacticraft/mod/world/gen/structure/GCStructures.java index 30af32d90d..e67db288fd 100644 --- a/src/main/java/dev/galacticraft/mod/world/gen/structure/GCStructures.java +++ b/src/main/java/dev/galacticraft/mod/world/gen/structure/GCStructures.java @@ -34,7 +34,8 @@ import net.minecraft.core.HolderOwner; import net.minecraft.core.HolderSet; import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstrapContext; +import net.minecraft.data.worldgen.BootstapContext; +import net.minecraft.data.worldgen.Structures; import net.minecraft.resources.ResourceKey; import net.minecraft.tags.TagKey; import net.minecraft.util.random.WeightedRandomList; @@ -68,10 +69,10 @@ private static ResourceKey key(String id) { return Constant.key(Registries.STRUCTURE, id); } - public static void bootstrapRegistries(BootstrapContext context) { + public static void bootstrapRegistries(BootstapContext context) { HolderGetter biomeLookup = context.lookup(Registries.BIOME); HolderGetter templatePoolLookup = context.lookup(Registries.TEMPLATE_POOL); - context.register(Moon.RUINS, new MoonRuinsStructure(new Structure.StructureSettings(biomeLookup.getOrThrow(GCTags.MOON_RUINS_HAS_STRUCTURE)))); + context.register(Moon.RUINS, new MoonRuinsStructure(Structures.structure(biomeLookup.get(GCTags.MOON_RUINS_HAS_STRUCTURE).orElseGet(() -> createEmptyTag(GCTags.MOON_RUINS_HAS_STRUCTURE)), TerrainAdjustment.BEARD_THIN))); context.register(Moon.PILLAGER_BASE, new JigsawStructure( new Structure.StructureSettings(biomeLookup.get(GCTags.MOON_PILLAGER_BASE_HAS_STRUCTURE).orElseGet(() -> createEmptyTag(GCTags.MOON_PILLAGER_BASE_HAS_STRUCTURE)), Map.of(MobCategory.MONSTER, new StructureSpawnOverride(StructureSpawnOverride.BoundingBoxType.STRUCTURE, @@ -95,7 +96,7 @@ public static void bootstrapRegistries(BootstrapContext context) { true, Heightmap.Types.WORLD_SURFACE_WG )); - context.register(Moon.BOSS, new DungeonStructure(new Structure.StructureSettings(biomeLookup.getOrThrow(GCTags.MOON_BOSS_HAS_STRUCTURE)), new DungeonConfiguration(GCBlocks.MOON_DUNGEON_BRICK.defaultBlockState(), 25, 8, 16, + context.register(Moon.BOSS, new DungeonStructure(Structures.structure(biomeLookup.get(GCTags.MOON_BOSS_HAS_STRUCTURE).orElseGet(() -> createEmptyTag(GCTags.MOON_BOSS_HAS_STRUCTURE)), TerrainAdjustment.NONE), new DungeonConfiguration(GCBlocks.MOON_DUNGEON_BRICK.defaultBlockState(), 25, 8, 16, 5, 6, GCStructurePieceTypes.ROOM_BOSS, GCStructurePieceTypes.ROOM_TREASURE))); } diff --git a/src/main/java/dev/galacticraft/mod/world/gen/structure/MoonRuinsStructure.java b/src/main/java/dev/galacticraft/mod/world/gen/structure/MoonRuinsStructure.java index a472360f5a..c4c9e78e9c 100644 --- a/src/main/java/dev/galacticraft/mod/world/gen/structure/MoonRuinsStructure.java +++ b/src/main/java/dev/galacticraft/mod/world/gen/structure/MoonRuinsStructure.java @@ -22,7 +22,7 @@ package dev.galacticraft.mod.world.gen.structure; -import com.mojang.serialization.MapCodec; +import com.mojang.serialization.Codec; import com.mojang.serialization.codecs.RecordCodecBuilder; import dev.galacticraft.mod.structure.MoonRuinsGenerator; import net.minecraft.core.BlockPos; @@ -35,7 +35,7 @@ import java.util.Optional; public class MoonRuinsStructure extends Structure { - public static final MapCodec CODEC = RecordCodecBuilder.mapCodec((instance) -> instance.group( + public static final Codec CODEC = RecordCodecBuilder.create((instance) -> instance.group( StructureSettings.CODEC.fieldOf("config").forGetter((moonRuinsStructure) -> moonRuinsStructure.settings) ).apply(instance, MoonRuinsStructure::new)); diff --git a/src/main/java/dev/galacticraft/mod/world/gen/surfacerule/BiomeTagRule.java b/src/main/java/dev/galacticraft/mod/world/gen/surfacebuilder/BiomeTagRule.java similarity index 82% rename from src/main/java/dev/galacticraft/mod/world/gen/surfacerule/BiomeTagRule.java rename to src/main/java/dev/galacticraft/mod/world/gen/surfacebuilder/BiomeTagRule.java index 6ada517e7d..d63825eee7 100644 --- a/src/main/java/dev/galacticraft/mod/world/gen/surfacerule/BiomeTagRule.java +++ b/src/main/java/dev/galacticraft/mod/world/gen/surfacebuilder/BiomeTagRule.java @@ -20,9 +20,9 @@ * SOFTWARE. */ -package dev.galacticraft.mod.world.gen.surfacerule; +package dev.galacticraft.mod.world.gen.surfacebuilder; -import com.mojang.serialization.MapCodec; +import com.mojang.serialization.Codec; import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.core.registries.Registries; import net.minecraft.tags.TagKey; @@ -32,16 +32,20 @@ import org.jetbrains.annotations.NotNull; public record BiomeTagRule(@NotNull TagKey tag) implements SurfaceRules.ConditionSource { - private static final MapCodec CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group(TagKey.codec(Registries.BIOME).fieldOf("tag").forGetter(rule -> rule.tag)).apply(instance, BiomeTagRule::new)); + private static final Codec CODEC; + + static { + CODEC = RecordCodecBuilder.create(instance -> instance.group(TagKey.codec(Registries.BIOME).fieldOf("tag").forGetter(rule -> rule.tag)).apply(instance, BiomeTagRule::new)); + } @Override public KeyDispatchDataCodec codec() { - return KeyDispatchDataCodec.of(BiomeTagRule.CODEC); + return KeyDispatchDataCodec.of(CODEC); } @Override public SurfaceRules.Condition apply(SurfaceRules.Context context) { - return null; + return new Predicate(context); } private class Predicate extends SurfaceRules.LazyYCondition { diff --git a/src/main/java/dev/galacticraft/mod/world/gen/surfacerule/MoonSurfaceRules.java b/src/main/java/dev/galacticraft/mod/world/gen/surfacebuilder/MoonSurfaceRules.java similarity index 97% rename from src/main/java/dev/galacticraft/mod/world/gen/surfacerule/MoonSurfaceRules.java rename to src/main/java/dev/galacticraft/mod/world/gen/surfacebuilder/MoonSurfaceRules.java index ef7eed49d0..038b7bf0e0 100644 --- a/src/main/java/dev/galacticraft/mod/world/gen/surfacerule/MoonSurfaceRules.java +++ b/src/main/java/dev/galacticraft/mod/world/gen/surfacebuilder/MoonSurfaceRules.java @@ -20,9 +20,9 @@ * SOFTWARE. */ -package dev.galacticraft.mod.world.gen.surfacerule; +package dev.galacticraft.mod.world.gen.surfacebuilder; -import com.mojang.serialization.MapCodec; +import com.mojang.serialization.Codec; import dev.galacticraft.mod.Constant; import dev.galacticraft.mod.content.GCBlocks; import dev.galacticraft.mod.world.biome.GCBiomes; @@ -111,6 +111,6 @@ public class MoonSurfaceRules { } public static void register() { - Registry.register(BuiltInRegistries.MATERIAL_RULE, Constant.id("moon"), MapCodec.unit(MOON)); + Registry.register(BuiltInRegistries.MATERIAL_RULE, Constant.id("moon"), Codec.unit(MOON)); } } diff --git a/src/main/java/dev/galacticraft/mod/world/gen/surfacerule/VenusSurfaceRules.java b/src/main/java/dev/galacticraft/mod/world/gen/surfacebuilder/VenusSurfaceRules.java similarity index 97% rename from src/main/java/dev/galacticraft/mod/world/gen/surfacerule/VenusSurfaceRules.java rename to src/main/java/dev/galacticraft/mod/world/gen/surfacebuilder/VenusSurfaceRules.java index b912b4b69f..5be9a62d0f 100644 --- a/src/main/java/dev/galacticraft/mod/world/gen/surfacerule/VenusSurfaceRules.java +++ b/src/main/java/dev/galacticraft/mod/world/gen/surfacebuilder/VenusSurfaceRules.java @@ -20,7 +20,7 @@ * SOFTWARE. */ -package dev.galacticraft.mod.world.gen.surfacerule; +package dev.galacticraft.mod.world.gen.surfacebuilder; import dev.galacticraft.mod.content.GCBlocks; import dev.galacticraft.mod.world.biome.GCBiomes; diff --git a/src/main/java/dev/galacticraft/mod/world/inventory/GearInventory.java b/src/main/java/dev/galacticraft/mod/world/inventory/GearInventory.java index 8209623ae4..12c4008dfe 100644 --- a/src/main/java/dev/galacticraft/mod/world/inventory/GearInventory.java +++ b/src/main/java/dev/galacticraft/mod/world/inventory/GearInventory.java @@ -22,46 +22,46 @@ package dev.galacticraft.mod.world.inventory; -import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.ListTag; import net.minecraft.world.SimpleContainer; import net.minecraft.world.item.ItemStack; -import org.jetbrains.annotations.NotNull; /** * Vanilla copy of {@link net.minecraft.world.inventory.PlayerEnderChestContainer} save methods */ public class GearInventory extends SimpleContainer { + public GearInventory() { super(12); } @Override - public void fromTag(ListTag list, HolderLookup.Provider lookup) { - for (int i = 0; i < this.getContainerSize(); i++) { + public void fromTag(ListTag listTag) { + for(int i = 0; i < this.getContainerSize(); ++i) { this.setItem(i, ItemStack.EMPTY); } - for (int i = 0; i < list.size(); i++) { - CompoundTag tag = list.getCompound(i); - int j = tag.getByte("Slot") & 255; - if (j < this.getContainerSize()) { - this.setItem(j, ItemStack.parse(lookup, tag).orElse(ItemStack.EMPTY)); + for(int i = 0; i < listTag.size(); ++i) { + CompoundTag compoundTag = listTag.getCompound(i); + int j = compoundTag.getByte("Slot") & 255; + if (j >= 0 && j < this.getContainerSize()) { + this.setItem(j, ItemStack.of(compoundTag)); } } } @Override - public @NotNull ListTag createTag(HolderLookup.Provider lookup) { + public ListTag createTag() { ListTag listTag = new ListTag(); - for (int i = 0; i < this.getContainerSize(); i++) { - ItemStack stack = this.getItem(i); - if (!stack.isEmpty()) { + for(int i = 0; i < this.getContainerSize(); ++i) { + ItemStack itemStack = this.getItem(i); + if (!itemStack.isEmpty()) { CompoundTag compoundTag = new CompoundTag(); compoundTag.putByte("Slot", (byte)i); - listTag.add(stack.save(lookup, compoundTag)); + itemStack.save(compoundTag); + listTag.add(compoundTag); } } diff --git a/src/main/resources/assets/galacticraft/shaders/core/rendertype_bubble.fsh b/src/main/resources/assets/galacticraft/shaders/core/rendertype_bubble.fsh deleted file mode 100644 index 69861f0b72..0000000000 --- a/src/main/resources/assets/galacticraft/shaders/core/rendertype_bubble.fsh +++ /dev/null @@ -1,40 +0,0 @@ -#version 150 - -#moj_import - -uniform sampler2D Sampler0; - -uniform vec2 ScreenSize; -uniform vec4 ColorModulator; -uniform float FogStart; -uniform float FogEnd; - -in float vertexDistance; -in vec4 vertexColor; -in vec4 overlayColor; -in vec2 texCoord0; -in vec4 normal; -in vec3 normal2; -in vec3 viewDir; - -out vec4 fragColor; - -void main() { - // - Rim lighting - - vec3 viewAngle = normalize(-viewDir); - - // The more orthogonal the camera is to the fragment, the stronger the rim light. - // abs() so that the back faces get treated the same as the front, giving a rim effect. - float rimStrength = 1 - abs(dot(viewAngle, normal2)); // The more orthogonal, the stronger - - float rimFactor = pow(rimStrength, 6); // higher power = sharper rim light - vec4 rim = vec4(rimFactor); - - vec4 color = texture(Sampler0, texCoord0); - if (color.a < 0.1) { - discard; - } - color *= vertexColor * ColorModulator; - color.rgb = mix(overlayColor.rgb, color.rgb, overlayColor.a); - fragColor = color + rim * linear_fog_fade(vertexDistance, FogStart, FogEnd); -} diff --git a/src/main/resources/assets/galacticraft/shaders/core/rendertype_bubble.json b/src/main/resources/assets/galacticraft/shaders/core/rendertype_bubble.json deleted file mode 100644 index 3ec0af9255..0000000000 --- a/src/main/resources/assets/galacticraft/shaders/core/rendertype_bubble.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "blend": { - "func": "add", - "srcrgb": "srcalpha", - "dstrgb": "1-srcalpha" - }, - "vertex": "galacticraft:rendertype_bubble", - "fragment": "galacticraft:rendertype_bubble", - "attributes": [ - "Position", - "Color", - "UV0", - "UV1", - "UV2", - "Normal" - ], - "samplers": [ - { "name": "Sampler0" }, - { "name": "Sampler1" }, - { "name": "Sampler2" } - ], - "uniforms": [ - { "name": "ModelViewMat", "type": "matrix4x4", "count": 16, "values": [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0 ] }, - { "name": "ProjMat", "type": "matrix4x4", "count": 16, "values": [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0 ] }, - { "name": "ScreenSize", "type": "float", "count": 2, "values": [ 1.0, 1.0 ] }, - { "name": "ColorModulator", "type": "float", "count": 4, "values": [ 1.0, 1.0, 1.0, 1.0 ] }, - { "name": "Light0_Direction", "type": "float", "count": 3, "values": [0.0, 0.0, 0.0] }, - { "name": "Light1_Direction", "type": "float", "count": 3, "values": [0.0, 0.0, 0.0] }, - { "name": "FogStart", "type": "float", "count": 1, "values": [ 0.0 ] }, - { "name": "FogEnd", "type": "float", "count": 1, "values": [ 1.0 ] } - ] -} diff --git a/src/main/resources/assets/galacticraft/shaders/core/rendertype_bubble.vsh b/src/main/resources/assets/galacticraft/shaders/core/rendertype_bubble.vsh deleted file mode 100644 index 4c923f2ab6..0000000000 --- a/src/main/resources/assets/galacticraft/shaders/core/rendertype_bubble.vsh +++ /dev/null @@ -1,40 +0,0 @@ -#version 150 - -#moj_import - -in vec3 Position; -in vec4 Color; -in vec2 UV0; -in ivec2 UV1; -in ivec2 UV2; -in vec3 Normal; - -uniform sampler2D Sampler1; -uniform sampler2D Sampler2; - -uniform mat4 ModelViewMat; -uniform mat4 ProjMat; - -uniform vec3 Light0_Direction; -uniform vec3 Light1_Direction; - -out float vertexDistance; -out vec4 vertexColor; -out vec4 overlayColor; -out vec2 texCoord0; -out vec4 normal; -out vec3 normal2; -out vec3 viewDir; - -void main() { - vec4 viewSpace = ModelViewMat * vec4(Position, 1.0); - viewDir = vec3(viewSpace); - normal2 = Normal; - gl_Position = ProjMat * viewSpace; - - vertexDistance = length((ModelViewMat * vec4(Position, 1.0)).xyz); - vertexColor = minecraft_mix_light(Light0_Direction, Light1_Direction, Normal, Color); - overlayColor = texelFetch(Sampler1, UV1, 0); - texCoord0 = UV0; - normal = ProjMat * ModelViewMat * vec4(Normal, 0.0); -} diff --git a/src/main/resources/assets/galacticraft/textures/block/chiseled_moon_rock_brick.png b/src/main/resources/assets/galacticraft/textures/block/chiseled_moon_rock_brick.png index cc287768e3..e8e2a97511 100644 Binary files a/src/main/resources/assets/galacticraft/textures/block/chiseled_moon_rock_brick.png and b/src/main/resources/assets/galacticraft/textures/block/chiseled_moon_rock_brick.png differ diff --git a/src/main/resources/assets/galacticraft/textures/block/cracked_moon_rock_brick.png b/src/main/resources/assets/galacticraft/textures/block/cracked_moon_rock_brick.png deleted file mode 100644 index 1f828bb7a8..0000000000 Binary files a/src/main/resources/assets/galacticraft/textures/block/cracked_moon_rock_brick.png and /dev/null differ diff --git a/src/main/resources/assets/galacticraft/textures/block/moon_basalt.png b/src/main/resources/assets/galacticraft/textures/block/moon_basalt.png index 66f3fea4e1..534b573f25 100644 Binary files a/src/main/resources/assets/galacticraft/textures/block/moon_basalt.png and b/src/main/resources/assets/galacticraft/textures/block/moon_basalt.png differ diff --git a/src/main/resources/assets/galacticraft/textures/block/moon_rock.png b/src/main/resources/assets/galacticraft/textures/block/moon_rock.png index c08d72f6ee..13ca4673f2 100644 Binary files a/src/main/resources/assets/galacticraft/textures/block/moon_rock.png and b/src/main/resources/assets/galacticraft/textures/block/moon_rock.png differ diff --git a/src/main/resources/assets/galacticraft/textures/block/moon_rock_brick.png b/src/main/resources/assets/galacticraft/textures/block/moon_rock_brick.png index 7791cad7d4..068c26b1ce 100644 Binary files a/src/main/resources/assets/galacticraft/textures/block/moon_rock_brick.png and b/src/main/resources/assets/galacticraft/textures/block/moon_rock_brick.png differ diff --git a/src/main/resources/assets/galacticraft/textures/block/moon_rock_pillar_side.png b/src/main/resources/assets/galacticraft/textures/block/moon_rock_pillar_side.png deleted file mode 100644 index 5b838954bd..0000000000 Binary files a/src/main/resources/assets/galacticraft/textures/block/moon_rock_pillar_side.png and /dev/null differ diff --git a/src/main/resources/assets/galacticraft/textures/block/moon_rock_pillar_top.png b/src/main/resources/assets/galacticraft/textures/block/moon_rock_pillar_top.png deleted file mode 100644 index 08900fb1ad..0000000000 Binary files a/src/main/resources/assets/galacticraft/textures/block/moon_rock_pillar_top.png and /dev/null differ diff --git a/src/main/resources/assets/galacticraft/textures/block/olivine_basalt.png b/src/main/resources/assets/galacticraft/textures/block/olivine_basalt.png deleted file mode 100644 index b165e9454b..0000000000 Binary files a/src/main/resources/assets/galacticraft/textures/block/olivine_basalt.png and /dev/null differ diff --git a/src/main/resources/assets/galacticraft/textures/block/olivine_block_side.png b/src/main/resources/assets/galacticraft/textures/block/olivine_block_side.png deleted file mode 100644 index 9f7b2cb26e..0000000000 Binary files a/src/main/resources/assets/galacticraft/textures/block/olivine_block_side.png and /dev/null differ diff --git a/src/main/resources/assets/galacticraft/textures/block/olivine_cluster_horizontal.png b/src/main/resources/assets/galacticraft/textures/block/olivine_cluster_horizontal.png deleted file mode 100644 index abcff314e3..0000000000 Binary files a/src/main/resources/assets/galacticraft/textures/block/olivine_cluster_horizontal.png and /dev/null differ diff --git a/src/main/resources/assets/galacticraft/textures/block/olivine_cluster_vertical.png b/src/main/resources/assets/galacticraft/textures/block/olivine_cluster_vertical.png deleted file mode 100644 index f93a1960ed..0000000000 Binary files a/src/main/resources/assets/galacticraft/textures/block/olivine_cluster_vertical.png and /dev/null differ diff --git a/src/main/resources/assets/galacticraft/textures/block/polished_moon_rock.png b/src/main/resources/assets/galacticraft/textures/block/polished_moon_rock.png deleted file mode 100644 index 3c7a3223bf..0000000000 Binary files a/src/main/resources/assets/galacticraft/textures/block/polished_moon_rock.png and /dev/null differ diff --git a/src/main/resources/assets/galacticraft/textures/block/rich_olivine_basalt.png b/src/main/resources/assets/galacticraft/textures/block/rich_olivine_basalt.png deleted file mode 100644 index 1b09dc73d4..0000000000 Binary files a/src/main/resources/assets/galacticraft/textures/block/rich_olivine_basalt.png and /dev/null differ diff --git a/src/main/resources/assets/galacticraft/textures/item/olivine_shard.png b/src/main/resources/assets/galacticraft/textures/item/olivine_shard.png deleted file mode 100644 index 751a6b60ec..0000000000 Binary files a/src/main/resources/assets/galacticraft/textures/item/olivine_shard.png and /dev/null differ diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index 55d3d4335c..e5c6f4b7df 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -161,7 +161,6 @@ "dev/galacticraft/mod/accessor/CryogenicAccessor" ], "net/minecraft/class_1937": [ - "dev/galacticraft/api/accessor/LevelBodyAccessor", "dev/galacticraft/api/accessor/LevelOxygenAccessor", "dev/galacticraft/mod/accessor/LevelAccessor" ], @@ -170,7 +169,7 @@ } }, "depends": { - "minecraft": ">=1.21", + "minecraft": ">=1.20.4", "fabricloader": ">=0.15.3" }, "suggests": { diff --git a/src/main/resources/galacticraft-api.mixins.json b/src/main/resources/galacticraft-api.mixins.json index a0113348cd..e7cd42a520 100644 --- a/src/main/resources/galacticraft-api.mixins.json +++ b/src/main/resources/galacticraft-api.mixins.json @@ -1,15 +1,16 @@ { "required": true, "package": "dev.galacticraft.impl.internal.mixin", - "compatibilityLevel": "JAVA_21", + "compatibilityLevel": "JAVA_17", "mixins": [ - "LevelCelestialBodyMixin", "LevelTimeAccessMixin", "MinecraftServerMixin", "gear.LivingEntityMixin", "gear.PlayerListMixin", "gear.ServerPlayerMixin", + "gravity.ArrowGravityMixin", "gravity.EntityGravityMixin", + "gravity.LivingEntityMixin", "oxygen.ChunkHolderMixin", "oxygen.ChunkSerializerMixin", "oxygen.EmptyLevelChunkMixin", @@ -18,6 +19,8 @@ "oxygen.LevelChunkSectionMixin", "oxygen.LevelMixin", "oxygen.ProtoChunkMixin", + "registry.RegistryDataLoaderMixin", + "registry.RegistrySynchronizationMixin", "research.AdvancementRewardsMixin", "research.ServerPlayerMixin" ], diff --git a/src/main/resources/galacticraft.accesswidener b/src/main/resources/galacticraft.accesswidener index 0978836513..089429b6fc 100644 --- a/src/main/resources/galacticraft.accesswidener +++ b/src/main/resources/galacticraft.accesswidener @@ -1,32 +1,53 @@ accessWidener v1 named # constructors -accessible method net/minecraft/client/particle/DripParticle$DripHangParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/particles/ParticleOptions;)V -accessible method net/minecraft/client/particle/DripParticle$FallingParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;)V +accessible method net/minecraft/client/particle/DripParticle$DripHangParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/particles/ParticleOptions;)V +accessible method net/minecraft/client/particle/DripParticle$FallingParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;)V +accessible method net/minecraft/client/resources/model/SimpleBakedModel$Builder (ZZZLnet/minecraft/client/renderer/block/model/ItemTransforms;Lnet/minecraft/client/renderer/block/model/ItemOverrides;)V +accessible method net/minecraft/client/renderer/block/model/ItemOverrides ()V +accessible method net/minecraft/world/level/block/StairBlock (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V +accessible method net/minecraft/world/item/AxeItem (Lnet/minecraft/world/item/Tier;FFLnet/minecraft/world/item/Item$Properties;)V +accessible method net/minecraft/world/item/HoeItem (Lnet/minecraft/world/item/Tier;IFLnet/minecraft/world/item/Item$Properties;)V +accessible method net/minecraft/world/item/PickaxeItem (Lnet/minecraft/world/item/Tier;IFLnet/minecraft/world/item/Item$Properties;)V +accessible method net/minecraft/world/level/levelgen/structure/pools/LegacySinglePoolElement (Lcom/mojang/datafixers/util/Either;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)V # private classes -accessible class net/minecraft/data/models/BlockModelGenerators$BlockStateGeneratorSupplier -accessible class net/minecraft/world/level/levelgen/SurfaceRules$Condition -accessible class net/minecraft/world/level/levelgen/SurfaceRules$LazyYCondition -accessible class net/minecraft/world/level/levelgen/SurfaceRules$Context -accessible class net/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset$SourceProvider +accessible class net/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset$SourceProvider +accessible class net/minecraft/world/level/levelgen/SurfaceRules$Condition +accessible class net/minecraft/world/level/levelgen/SurfaceRules$LazyYCondition +accessible class net/minecraft/world/level/levelgen/SurfaceRules$Context +accessible class net/minecraft/data/models/BlockModelGenerators$BlockStateGeneratorSupplier +accessible class net/minecraft/client/resources/model/ModelManager$ReloadState +accessible class net/minecraft/core/registries/BuiltInRegistries$RegistryBootstrap +accessible class net/minecraft/core/RegistrySynchronization$NetworkedRegistryData # fields in final classes -accessible field net/minecraft/world/level/levelgen/SurfaceRules$Context biome Ljava/util/function/Supplier; +accessible field net/minecraft/world/level/levelgen/SurfaceRules$Context biome Ljava/util/function/Supplier; # final classes extendable class net/minecraft/world/SimpleMenuProvider # static methods -accessible method net/minecraft/data/models/model/ModelTemplates createItem (Ljava/lang/String;[Lnet/minecraft/data/models/model/TextureSlot;)Lnet/minecraft/data/models/model/ModelTemplate; -accessible method net/minecraft/world/level/storage/loot/BuiltInLootTables register (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceKey; -accessible method net/minecraft/stats/Stats makeCustomStat (Ljava/lang/String;Lnet/minecraft/stats/StatFormatter;)Lnet/minecraft/resources/ResourceLocation; +accessible method net/minecraft/world/level/levelgen/NoiseRouterData overworld (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;ZZ)Lnet/minecraft/world/level/levelgen/NoiseRouter; +accessible method net/minecraft/world/level/block/ChestBlock isCatSittingOnChest (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z +accessible method net/minecraft/data/models/model/ModelTemplates createItem (Ljava/lang/String;[Lnet/minecraft/data/models/model/TextureSlot;)Lnet/minecraft/data/models/model/ModelTemplate; +accessible method net/minecraft/data/loot/BlockLootSubProvider createSilkTouchOnlyTable (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; +accessible method net/minecraft/data/worldgen/Structures structure (Lnet/minecraft/core/HolderSet;Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment;)Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings; +accessible method net/minecraft/stats/Stats makeCustomStat (Ljava/lang/String;Lnet/minecraft/stats/StatFormatter;)Lnet/minecraft/resources/ResourceLocation; +accessible method net/minecraft/world/level/storage/loot/BuiltInLootTables register (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; + +# private fields +accessible field net/minecraft/client/resources/model/ModelManager bakedRegistry Ljava/util/Map; +accessible field net/minecraft/data/worldgen/ProcessorLists EMPTY Lnet/minecraft/resources/ResourceKey; +accessible field net/minecraft/world/level/block/DispenserBlock DISPENSER_REGISTRY Ljava/util/Map; +accessible field net/minecraft/client/renderer/LevelRenderer ticks I # private final fields accessible field net/minecraft/data/models/BlockModelGenerators texturedModels Ljava/util/Map; -mutable field net/minecraft/data/models/BlockModelGenerators texturedModels Ljava/util/Map; +mutable field net/minecraft/data/models/BlockModelGenerators texturedModels Ljava/util/Map; accessible field net/minecraft/data/models/BlockModelGenerators fullBlockModelCustomGenerators Ljava/util/Map; -mutable field net/minecraft/data/models/BlockModelGenerators fullBlockModelCustomGenerators Ljava/util/Map; +mutable field net/minecraft/data/models/BlockModelGenerators fullBlockModelCustomGenerators Ljava/util/Map; +accessible field net/minecraft/client/renderer/block/model/BlockModel textureMap Ljava/util/Map; # private static fields accessible field net/minecraft/data/loot/EntityLootSubProvider SPECIAL_LOOT_TABLE_TYPES Ljava/util/Set; @@ -39,5 +60,5 @@ accessible field net/minecraft/client/particle/Particle MAXIMUM_COLLISION_VELOCI accessible field net/minecraft/client/renderer/LevelRenderer RAIN_RADIUS I accessible field net/minecraft/client/renderer/LevelRenderer RAIN_DIAMETER I -# private fields -accessible field net/minecraft/client/renderer/LevelRenderer ticks I +# private methods +extendable method net/minecraft/world/entity/LivingEntity setPosToBed (Lnet/minecraft/core/BlockPos;)V \ No newline at end of file diff --git a/src/main/resources/galacticraft.mixins.json b/src/main/resources/galacticraft.mixins.json index fc983b3213..d9ecfe67e4 100644 --- a/src/main/resources/galacticraft.mixins.json +++ b/src/main/resources/galacticraft.mixins.json @@ -2,13 +2,14 @@ "required": true, "package": "dev.galacticraft.mod.mixin", "plugin": "dev.galacticraft.mod.GalacticraftMixinPlugin", - "compatibilityLevel": "JAVA_21", + "compatibilityLevel": "JAVA_17", "mixins": [ "AbstractContainerMenuAccessor", "AbstractSkeletonEntityAccessor", "BlockBehaviourMixin", "BucketItemAccessor", "BucketItemMixin", + "BuiltInLootTablesAccessor", "DimensionTypeMixin", "EntityMixin", "FlowingFluidMixin", diff --git a/src/main/resources/waila_plugins.json b/src/main/resources/waila_plugins.json index b60143106b..f8c69b9eea 100644 --- a/src/main/resources/waila_plugins.json +++ b/src/main/resources/waila_plugins.json @@ -1,6 +1,6 @@ { "galacticraft:plugin": { - "initializer": "dev.galacticraft.mod.compat.GalacticraftWailaPlugin", + "initializer": "dev.galacticraft.mod.compat.waila.GalacticraftWailaPlugin", "side": "*" } } \ No newline at end of file diff --git a/src/test/java/dev/galacticraft/mod/gametest/ConfigTestSuite.java b/src/test/java/dev/galacticraft/mod/gametest/ConfigTestSuite.java index 22f7343abc..03aa22a093 100644 --- a/src/test/java/dev/galacticraft/mod/gametest/ConfigTestSuite.java +++ b/src/test/java/dev/galacticraft/mod/gametest/ConfigTestSuite.java @@ -49,13 +49,11 @@ public void create() { @BasicTest(batch = "config") public void load() { - writeConfig( - """ + writeConfig(""" { "debug_log": true } - """ - ); + """); ConfigImpl config = new ConfigImpl(CONFIG_FILE); assertTrue(config.isDebugLogEnabled()); diff --git a/src/test/java/dev/galacticraft/mod/gametest/GratingTestSuite.java b/src/test/java/dev/galacticraft/mod/gametest/GratingTestSuite.java index 79c7613c44..60ec50a92b 100644 --- a/src/test/java/dev/galacticraft/mod/gametest/GratingTestSuite.java +++ b/src/test/java/dev/galacticraft/mod/gametest/GratingTestSuite.java @@ -53,7 +53,8 @@ public void gratingFlowingWaterTest(GameTestHelper context) { if (!context.getBlockState(pos2).getFluidState().isEmpty()) { context.fail(String.format("Expected grating to not be filled with fluid but found %s instead!", BuiltInRegistries.FLUID.getKey(context.getBlockState(pos2).getFluidState().getType())), pos2); - } else { + } + else { for (var x = -1; x < 2; x++) { for (var z = -1; z < 2; z++) { if (mutable.set(xz + x, 4, xz + z).equals(pos4)) { @@ -66,18 +67,23 @@ public void gratingFlowingWaterTest(GameTestHelper context) { context.runAtTickTime(context.getTick() + 40L, () -> { if (!context.getBlockState(pos3).getFluidState().is(FluidTags.WATER)) { context.fail(String.format("Expected water to flow downward but found %s instead!", BuiltInRegistries.FLUID.getKey(context.getBlockState(pos3).getFluidState().getType())), pos3); - } else if (!context.getBlockState(pos2).getFluidState().is(FluidTags.WATER)) { + } + else if (!context.getBlockState(pos2).getFluidState().is(FluidTags.WATER)) { context.fail(String.format("Expected grating to be filled with water but found %s instead!", BuiltInRegistries.FLUID.getKey(context.getBlockState(pos2).getFluidState().getType())), pos2); - } else if (!context.getBlockState(pos1).getFluidState().is(FluidTags.WATER)) { + } + else if (!context.getBlockState(pos1).getFluidState().is(FluidTags.WATER)) { context.fail(String.format("Expected water to be found below grating but found %s instead!", BuiltInRegistries.FLUID.getKey(context.getBlockState(pos1).getFluidState().getType())), pos1); - } else { + } + else { context.setBlock(pos4, Blocks.AIR); context.runAtTickTime(context.getTick() + 50L, () -> context.succeedWhen(() -> { if (!context.getBlockState(pos3).getFluidState().isEmpty()) { context.fail(String.format("Expected water to drain itself but found %s instead!", BuiltInRegistries.FLUID.getKey(context.getBlockState(pos3).getFluidState().getType())), pos3); - } else if (!context.getBlockState(pos2).getFluidState().isEmpty()) { + } + else if (!context.getBlockState(pos2).getFluidState().isEmpty()) { context.fail(String.format("Expected grating to not be filled with fluid but found %s instead!", BuiltInRegistries.FLUID.getKey(context.getBlockState(pos2).getFluidState().getType())), pos2); - } else if (!context.getBlockState(pos1).getFluidState().isEmpty()) { + } + else if (!context.getBlockState(pos1).getFluidState().isEmpty()) { context.fail(String.format("Expected no fluid to be found below grating but found %s instead!", BuiltInRegistries.FLUID.getKey(context.getBlockState(pos1).getFluidState().getType())), pos1); } })); @@ -109,7 +115,8 @@ public void gratingFlowingWaterWithFallingStateTest(GameTestHelper context) { if (z == 1) { context.setBlock(mutable, grating.setValue(FluidLoggable.FLUID, BuiltInRegistries.FLUID.getKey(Fluids.WATER))); gratingWaterPos = mutable.immutable(); - } else { + } + else { context.setBlock(mutable, grating); } } @@ -141,8 +148,7 @@ public void dispenserDispenseFluidToGrating(GameTestHelper context) { var blockEntity = context.getBlockEntity(pos1); if (blockEntity instanceof DispenserBlockEntity dispenserBlockEntity) { - dispenserBlockEntity.setItem(0, new ItemStack(Items.WATER_BUCKET)); - dispenserBlockEntity.setChanged(); + dispenserBlockEntity.addItem(new ItemStack(Items.WATER_BUCKET)); } context.runAtTickTime(context.getTick() + 10L, () -> context.setBlock(pos2, Blocks.REDSTONE_BLOCK.defaultBlockState())); @@ -188,8 +194,7 @@ public void dispenserPickupFluidFromGrating(GameTestHelper context) { var blockEntity = context.getBlockEntity(pos1); if (blockEntity instanceof DispenserBlockEntity dispenserBlockEntity) { - dispenserBlockEntity.setItem(0, new ItemStack(Items.BUCKET)); - dispenserBlockEntity.setChanged(); + dispenserBlockEntity.addItem(new ItemStack(Items.BUCKET)); } context.runAtTickTime(context.getTick() + 10L, () -> context.setBlock(pos2, Blocks.REDSTONE_BLOCK.defaultBlockState())); diff --git a/src/test/java/dev/galacticraft/mod/gametest/machine/AdvancedSolarPanelTestSuite.java b/src/test/java/dev/galacticraft/mod/gametest/machine/AdvancedSolarPanelTestSuite.java index 29e392f723..b00f727e94 100644 --- a/src/test/java/dev/galacticraft/mod/gametest/machine/AdvancedSolarPanelTestSuite.java +++ b/src/test/java/dev/galacticraft/mod/gametest/machine/AdvancedSolarPanelTestSuite.java @@ -24,7 +24,7 @@ import dev.galacticraft.machinelib.api.gametest.MachineGameTest; import dev.galacticraft.machinelib.api.gametest.annotation.TestSuite; -import dev.galacticraft.mod.content.GCBlocks; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.content.block.entity.machine.AdvancedSolarPanelBlockEntity; import dev.galacticraft.mod.content.item.GCItems; import net.minecraft.gametest.framework.GameTestGenerator; @@ -36,7 +36,7 @@ @TestSuite("advanced_solar_panel") public final class AdvancedSolarPanelTestSuite extends MachineGameTest { public AdvancedSolarPanelTestSuite() { - super(GCBlocks.ADVANCED_SOLAR_PANEL); + super(GCMachineTypes.ADVANCED_SOLAR_PANEL); } @Override diff --git a/src/test/java/dev/galacticraft/mod/gametest/machine/BasicSolarPanelTestSuite.java b/src/test/java/dev/galacticraft/mod/gametest/machine/BasicSolarPanelTestSuite.java index 6c88af1a58..18864a2994 100644 --- a/src/test/java/dev/galacticraft/mod/gametest/machine/BasicSolarPanelTestSuite.java +++ b/src/test/java/dev/galacticraft/mod/gametest/machine/BasicSolarPanelTestSuite.java @@ -24,7 +24,7 @@ import dev.galacticraft.machinelib.api.gametest.MachineGameTest; import dev.galacticraft.machinelib.api.gametest.annotation.TestSuite; -import dev.galacticraft.mod.content.GCBlocks; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.content.block.entity.machine.BasicSolarPanelBlockEntity; import dev.galacticraft.mod.content.item.GCItems; import net.minecraft.gametest.framework.GameTestGenerator; @@ -36,7 +36,7 @@ @TestSuite("basic_solar_panel") public final class BasicSolarPanelTestSuite extends MachineGameTest { public BasicSolarPanelTestSuite() { - super(GCBlocks.BASIC_SOLAR_PANEL); + super(GCMachineTypes.BASIC_SOLAR_PANEL); } @Override diff --git a/src/test/java/dev/galacticraft/mod/gametest/machine/CircuitFabricatorTestSuite.java b/src/test/java/dev/galacticraft/mod/gametest/machine/CircuitFabricatorTestSuite.java index 0534e0b00a..1936b578e0 100644 --- a/src/test/java/dev/galacticraft/mod/gametest/machine/CircuitFabricatorTestSuite.java +++ b/src/test/java/dev/galacticraft/mod/gametest/machine/CircuitFabricatorTestSuite.java @@ -24,28 +24,28 @@ import dev.galacticraft.machinelib.api.gametest.RecipeGameTest; import dev.galacticraft.machinelib.api.gametest.annotation.TestSuite; -import dev.galacticraft.mod.content.GCBlocks; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.content.block.entity.machine.CircuitFabricatorBlockEntity; import dev.galacticraft.mod.content.item.GCItems; import dev.galacticraft.mod.recipe.FabricationRecipe; import net.minecraft.gametest.framework.GameTestGenerator; import net.minecraft.gametest.framework.TestFunction; +import net.minecraft.world.Container; import net.minecraft.world.item.Items; -import net.minecraft.world.item.crafting.RecipeInput; import org.jetbrains.annotations.NotNull; import java.util.List; @TestSuite("circuit_fabricator") -public final class CircuitFabricatorTestSuite extends RecipeGameTest { +public final class CircuitFabricatorTestSuite extends RecipeGameTest { public CircuitFabricatorTestSuite() { - super(GCBlocks.CIRCUIT_FABRICATOR, List.of( + super(GCMachineTypes.CIRCUIT_FABRICATOR, List.of( machine -> machine.energyStorage().setEnergy(Long.MAX_VALUE / 2), - machine -> machine.itemStorage().slot(CircuitFabricatorBlockEntity.DIAMOND_SLOT).set(Items.DIAMOND, 1), - machine -> machine.itemStorage().slot(CircuitFabricatorBlockEntity.REDSTONE_SLOT).set(Items.REDSTONE, 1), - machine -> machine.itemStorage().slot(CircuitFabricatorBlockEntity.SILICON_SLOT_1).set(GCItems.RAW_SILICON, 1), - machine -> machine.itemStorage().slot(CircuitFabricatorBlockEntity.SILICON_SLOT_2).set(GCItems.RAW_SILICON, 1), - machine -> machine.itemStorage().slot(CircuitFabricatorBlockEntity.INPUT_SLOT).set(Items.REDSTONE_TORCH, 1) + machine -> machine.itemStorage().getSlot(CircuitFabricatorBlockEntity.DIAMOND_SLOT).set(Items.DIAMOND, 1), + machine -> machine.itemStorage().getSlot(CircuitFabricatorBlockEntity.REDSTONE_SLOT).set(Items.REDSTONE, 1), + machine -> machine.itemStorage().getSlot(CircuitFabricatorBlockEntity.SILICON_SLOT_1).set(GCItems.RAW_SILICON, 1), + machine -> machine.itemStorage().getSlot(CircuitFabricatorBlockEntity.SILICON_SLOT_2).set(GCItems.RAW_SILICON, 1), + machine -> machine.itemStorage().getSlot(CircuitFabricatorBlockEntity.INPUT_SLOT).set(Items.REDSTONE_TORCH, 1) ), CircuitFabricatorBlockEntity.OUTPUT_SLOT, 300); } diff --git a/src/test/java/dev/galacticraft/mod/gametest/machine/CoalGeneratorTestSuite.java b/src/test/java/dev/galacticraft/mod/gametest/machine/CoalGeneratorTestSuite.java index 01359accec..6784533092 100644 --- a/src/test/java/dev/galacticraft/mod/gametest/machine/CoalGeneratorTestSuite.java +++ b/src/test/java/dev/galacticraft/mod/gametest/machine/CoalGeneratorTestSuite.java @@ -26,7 +26,7 @@ import dev.galacticraft.machinelib.api.gametest.annotation.MachineTest; import dev.galacticraft.machinelib.api.gametest.annotation.TestSuite; import dev.galacticraft.machinelib.api.storage.slot.ItemResourceSlot; -import dev.galacticraft.mod.content.GCBlocks; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.content.block.entity.machine.CoalGeneratorBlockEntity; import dev.galacticraft.mod.content.item.GCItems; import net.minecraft.gametest.framework.GameTestGenerator; @@ -40,19 +40,19 @@ @TestSuite("coal_generator") public final class CoalGeneratorTestSuite extends MachineGameTest { public CoalGeneratorTestSuite() { - super(GCBlocks.COAL_GENERATOR); + super(GCMachineTypes.COAL_GENERATOR); } @MachineTest public Runnable fuelBurning(CoalGeneratorBlockEntity machine) { - ItemResourceSlot slot = machine.itemStorage().slot(CoalGeneratorBlockEntity.INPUT_SLOT); + ItemResourceSlot slot = machine.itemStorage().getSlot(CoalGeneratorBlockEntity.INPUT_SLOT); slot.set(Items.COAL, 1); return () -> Assertions.assertTrue(slot.isEmpty(), "Failed to consume fuel"); } @MachineTest public Runnable fuelConsumption(CoalGeneratorBlockEntity machine) { - ItemResourceSlot slot = machine.itemStorage().slot(CoalGeneratorBlockEntity.INPUT_SLOT); + ItemResourceSlot slot = machine.itemStorage().getSlot(CoalGeneratorBlockEntity.INPUT_SLOT); slot.set(Items.COAL, 1); return () -> Assertions.assertNotEquals(0, machine.getFuelLength(), "Failed to burn fuel"); @@ -60,7 +60,7 @@ public Runnable fuelConsumption(CoalGeneratorBlockEntity machine) { @MachineTest(workTime = 320) public Runnable multipleFuelBurning(CoalGeneratorBlockEntity machine) { - ItemResourceSlot slot = machine.itemStorage().slot(CoalGeneratorBlockEntity.INPUT_SLOT); + ItemResourceSlot slot = machine.itemStorage().getSlot(CoalGeneratorBlockEntity.INPUT_SLOT); slot.set(Items.COAL, 2); return () -> Assertions.assertTrue(slot.isEmpty(), "Failed to consume two coals!"); diff --git a/src/test/java/dev/galacticraft/mod/gametest/machine/CompressorTestSuite.java b/src/test/java/dev/galacticraft/mod/gametest/machine/CompressorTestSuite.java index 582d8851cd..feabada9ba 100644 --- a/src/test/java/dev/galacticraft/mod/gametest/machine/CompressorTestSuite.java +++ b/src/test/java/dev/galacticraft/mod/gametest/machine/CompressorTestSuite.java @@ -26,34 +26,34 @@ import dev.galacticraft.machinelib.api.gametest.annotation.MachineTest; import dev.galacticraft.machinelib.api.gametest.annotation.TestSuite; import dev.galacticraft.machinelib.api.storage.slot.ItemResourceSlot; -import dev.galacticraft.mod.content.GCBlocks; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.content.block.entity.machine.CompressorBlockEntity; import dev.galacticraft.mod.recipe.CompressingRecipe; import net.minecraft.gametest.framework.GameTestGenerator; import net.minecraft.gametest.framework.TestFunction; +import net.minecraft.world.inventory.CraftingContainer; import net.minecraft.world.item.Items; -import net.minecraft.world.item.crafting.CraftingInput; import org.jetbrains.annotations.NotNull; import org.junit.jupiter.api.Assertions; import java.util.List; @TestSuite("compressor") -public final class CompressorTestSuite extends RecipeGameTest { +public final class CompressorTestSuite extends RecipeGameTest { public CompressorTestSuite() { - super(GCBlocks.COMPRESSOR, List.of( + super(GCMachineTypes.COMPRESSOR, List.of( machine -> machine.fuelLength = machine.fuelTime = 5000, - machine -> machine.itemStorage().slot(CompressorBlockEntity.INPUT_SLOTS).set(Items.IRON_INGOT, 1), - machine -> machine.itemStorage().slot(CompressorBlockEntity.INPUT_SLOTS + 1).set(Items.IRON_INGOT, 1) + machine -> machine.itemStorage().getSlot(CompressorBlockEntity.INPUT_SLOTS).set(Items.IRON_INGOT, 1), + machine -> machine.itemStorage().getSlot(CompressorBlockEntity.INPUT_SLOTS + 1).set(Items.IRON_INGOT, 1) ), CompressorBlockEntity.OUTPUT_SLOT, 200); } @MachineTest public Runnable fuelConsumption(CompressorBlockEntity machine) { - ItemResourceSlot slot = machine.itemStorage().slot(CompressorBlockEntity.FUEL_SLOT); + ItemResourceSlot slot = machine.itemStorage().getSlot(CompressorBlockEntity.FUEL_SLOT); slot.set(Items.COAL, 1); - machine.itemStorage().slot(CompressorBlockEntity.INPUT_SLOTS).set(Items.IRON_INGOT, 1); - machine.itemStorage().slot(CompressorBlockEntity.INPUT_SLOTS + 1).set(Items.IRON_INGOT, 1); + machine.itemStorage().getSlot(CompressorBlockEntity.INPUT_SLOTS).set(Items.IRON_INGOT, 1); + machine.itemStorage().getSlot(CompressorBlockEntity.INPUT_SLOTS + 1).set(Items.IRON_INGOT, 1); return () -> { Assertions.assertTrue(slot.isEmpty(), "Failed to consume fuel"); Assertions.assertNotEquals(0, machine.getFuelLength(), "Failed to burn fuel"); diff --git a/src/test/java/dev/galacticraft/mod/gametest/machine/ElectricArcFurnaceTestSuite.java b/src/test/java/dev/galacticraft/mod/gametest/machine/ElectricArcFurnaceTestSuite.java index 790d6e0daa..b56965ccfc 100644 --- a/src/test/java/dev/galacticraft/mod/gametest/machine/ElectricArcFurnaceTestSuite.java +++ b/src/test/java/dev/galacticraft/mod/gametest/machine/ElectricArcFurnaceTestSuite.java @@ -24,24 +24,24 @@ import dev.galacticraft.machinelib.api.gametest.RecipeGameTest; import dev.galacticraft.machinelib.api.gametest.annotation.TestSuite; -import dev.galacticraft.mod.content.GCBlocks; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.content.block.entity.machine.ElectricArcFurnaceBlockEntity; import dev.galacticraft.mod.content.item.GCItems; import net.minecraft.gametest.framework.GameTestGenerator; import net.minecraft.gametest.framework.TestFunction; +import net.minecraft.world.Container; import net.minecraft.world.item.Items; import net.minecraft.world.item.crafting.BlastingRecipe; -import net.minecraft.world.item.crafting.SingleRecipeInput; import org.jetbrains.annotations.NotNull; import java.util.List; @TestSuite("electric_arc_furnace") -public final class ElectricArcFurnaceTestSuite extends RecipeGameTest { +public final class ElectricArcFurnaceTestSuite extends RecipeGameTest { public ElectricArcFurnaceTestSuite() { - super(GCBlocks.ELECTRIC_ARC_FURNACE, List.of( + super(GCMachineTypes.ELECTRIC_ARC_FURNACE, List.of( machine -> machine.energyStorage().setEnergy(Long.MAX_VALUE / 2), - machine -> machine.itemStorage().slot(ElectricArcFurnaceBlockEntity.INPUT_SLOT).set(Items.RAW_IRON, 1) + machine -> machine.itemStorage().getSlot(ElectricArcFurnaceBlockEntity.INPUT_SLOT).set(Items.RAW_IRON, 1) ), ElectricArcFurnaceBlockEntity.OUTPUT_SLOTS, ElectricArcFurnaceBlockEntity.OUTPUT_LENGTH, 100); } diff --git a/src/test/java/dev/galacticraft/mod/gametest/machine/ElectricCompressorTestSuite.java b/src/test/java/dev/galacticraft/mod/gametest/machine/ElectricCompressorTestSuite.java index ebc474c2c6..197bd018e5 100644 --- a/src/test/java/dev/galacticraft/mod/gametest/machine/ElectricCompressorTestSuite.java +++ b/src/test/java/dev/galacticraft/mod/gametest/machine/ElectricCompressorTestSuite.java @@ -24,25 +24,25 @@ import dev.galacticraft.machinelib.api.gametest.RecipeGameTest; import dev.galacticraft.machinelib.api.gametest.annotation.TestSuite; -import dev.galacticraft.mod.content.GCBlocks; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.content.block.entity.machine.ElectricCompressorBlockEntity; import dev.galacticraft.mod.content.item.GCItems; import dev.galacticraft.mod.recipe.CompressingRecipe; import net.minecraft.gametest.framework.GameTestGenerator; import net.minecraft.gametest.framework.TestFunction; +import net.minecraft.world.inventory.CraftingContainer; import net.minecraft.world.item.Items; -import net.minecraft.world.item.crafting.CraftingInput; import org.jetbrains.annotations.NotNull; import java.util.List; @TestSuite("electric_compressor") -public final class ElectricCompressorTestSuite extends RecipeGameTest { +public final class ElectricCompressorTestSuite extends RecipeGameTest { public ElectricCompressorTestSuite() { - super(GCBlocks.ELECTRIC_COMPRESSOR, List.of( + super(GCMachineTypes.ELECTRIC_COMPRESSOR, List.of( machine -> machine.energyStorage().setEnergy(Long.MAX_VALUE / 2), - machine -> machine.itemStorage().slot(ElectricCompressorBlockEntity.INPUT_SLOTS).set(Items.IRON_INGOT, 1), - machine -> machine.itemStorage().slot(ElectricCompressorBlockEntity.INPUT_SLOTS + 1).set(Items.IRON_INGOT, 1) + machine -> machine.itemStorage().getSlot(ElectricCompressorBlockEntity.INPUT_SLOTS).set(Items.IRON_INGOT, 1), + machine -> machine.itemStorage().getSlot(ElectricCompressorBlockEntity.INPUT_SLOTS + 1).set(Items.IRON_INGOT, 1) ), ElectricCompressorBlockEntity.OUTPUT_SLOTS, ElectricCompressorBlockEntity.OUTPUT_LENGTH, 200); } diff --git a/src/test/java/dev/galacticraft/mod/gametest/machine/ElectricFurnaceTestSuite.java b/src/test/java/dev/galacticraft/mod/gametest/machine/ElectricFurnaceTestSuite.java index 75e440b759..4d98e7dfb5 100644 --- a/src/test/java/dev/galacticraft/mod/gametest/machine/ElectricFurnaceTestSuite.java +++ b/src/test/java/dev/galacticraft/mod/gametest/machine/ElectricFurnaceTestSuite.java @@ -24,24 +24,24 @@ import dev.galacticraft.machinelib.api.gametest.RecipeGameTest; import dev.galacticraft.machinelib.api.gametest.annotation.TestSuite; -import dev.galacticraft.mod.content.GCBlocks; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.content.block.entity.machine.ElectricFurnaceBlockEntity; import dev.galacticraft.mod.content.item.GCItems; import net.minecraft.gametest.framework.GameTestGenerator; import net.minecraft.gametest.framework.TestFunction; +import net.minecraft.world.Container; import net.minecraft.world.item.Items; -import net.minecraft.world.item.crafting.SingleRecipeInput; import net.minecraft.world.item.crafting.SmeltingRecipe; import org.jetbrains.annotations.NotNull; import java.util.List; @TestSuite("electric_furnace") -public final class ElectricFurnaceTestSuite extends RecipeGameTest { +public final class ElectricFurnaceTestSuite extends RecipeGameTest { public ElectricFurnaceTestSuite() { - super(GCBlocks.ELECTRIC_FURNACE, List.of( + super(GCMachineTypes.ELECTRIC_FURNACE, List.of( machine -> machine.energyStorage().setEnergy(Long.MAX_VALUE / 2), - machine -> machine.itemStorage().slot(ElectricFurnaceBlockEntity.INPUT_SLOT).set(Items.PORKCHOP, 1) + machine -> machine.itemStorage().getSlot(ElectricFurnaceBlockEntity.INPUT_SLOT).set(Items.PORKCHOP, 1) ), ElectricFurnaceBlockEntity.OUTPUT_SLOT, 200); } diff --git a/src/test/java/dev/galacticraft/mod/gametest/machine/EnergyStorageModuleTestSuite.java b/src/test/java/dev/galacticraft/mod/gametest/machine/EnergyStorageModuleTestSuite.java index 61adbd0455..dc577d60db 100644 --- a/src/test/java/dev/galacticraft/mod/gametest/machine/EnergyStorageModuleTestSuite.java +++ b/src/test/java/dev/galacticraft/mod/gametest/machine/EnergyStorageModuleTestSuite.java @@ -24,7 +24,7 @@ import dev.galacticraft.machinelib.api.gametest.MachineGameTest; import dev.galacticraft.machinelib.api.gametest.annotation.TestSuite; -import dev.galacticraft.mod.content.GCBlocks; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.content.block.entity.machine.EnergyStorageModuleBlockEntity; import dev.galacticraft.mod.content.item.GCItems; import net.minecraft.gametest.framework.GameTestGenerator; @@ -36,7 +36,7 @@ @TestSuite("energy_storage_module") public final class EnergyStorageModuleTestSuite extends MachineGameTest { public EnergyStorageModuleTestSuite() { - super(GCBlocks.ENERGY_STORAGE_MODULE); + super(GCMachineTypes.ENERGY_STORAGE_MODULE); } @Override diff --git a/src/test/java/dev/galacticraft/mod/gametest/machine/FuelLoaderTestSuite.java b/src/test/java/dev/galacticraft/mod/gametest/machine/FuelLoaderTestSuite.java index bd4f84df08..1cfd7bd9f7 100644 --- a/src/test/java/dev/galacticraft/mod/gametest/machine/FuelLoaderTestSuite.java +++ b/src/test/java/dev/galacticraft/mod/gametest/machine/FuelLoaderTestSuite.java @@ -24,7 +24,7 @@ import dev.galacticraft.machinelib.api.gametest.MachineGameTest; import dev.galacticraft.machinelib.api.gametest.annotation.TestSuite; -import dev.galacticraft.mod.content.GCBlocks; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.content.block.entity.machine.FuelLoaderBlockEntity; import dev.galacticraft.mod.content.block.entity.machine.RefineryBlockEntity; import dev.galacticraft.mod.content.item.GCItems; @@ -37,7 +37,7 @@ @TestSuite("fuel_loader") public final class FuelLoaderTestSuite extends MachineGameTest { public FuelLoaderTestSuite() { - super(GCBlocks.FUEL_LOADER); + super(GCMachineTypes.FUEL_LOADER); } @Override diff --git a/src/test/java/dev/galacticraft/mod/gametest/machine/RefineryTestSuite.java b/src/test/java/dev/galacticraft/mod/gametest/machine/RefineryTestSuite.java index 436422ac15..c79aeed080 100644 --- a/src/test/java/dev/galacticraft/mod/gametest/machine/RefineryTestSuite.java +++ b/src/test/java/dev/galacticraft/mod/gametest/machine/RefineryTestSuite.java @@ -26,8 +26,8 @@ import dev.galacticraft.machinelib.api.gametest.annotation.MachineTest; import dev.galacticraft.machinelib.api.gametest.annotation.TestSuite; import dev.galacticraft.machinelib.api.storage.slot.FluidResourceSlot; -import dev.galacticraft.mod.content.GCBlocks; import dev.galacticraft.mod.content.GCFluids; +import dev.galacticraft.mod.content.GCMachineTypes; import dev.galacticraft.mod.content.block.entity.machine.RefineryBlockEntity; import dev.galacticraft.mod.content.item.GCItems; import net.fabricmc.fabric.api.transfer.v1.fluid.FluidConstants; @@ -41,7 +41,7 @@ @TestSuite("refinery") public final class RefineryTestSuite extends MachineGameTest { public RefineryTestSuite() { - super(GCBlocks.REFINERY); + super(GCMachineTypes.REFINERY); } @Override @@ -56,8 +56,8 @@ public RefineryTestSuite() { @MachineTest public Runnable crafting(RefineryBlockEntity machine) { - FluidResourceSlot fuel = machine.fluidStorage().slot(RefineryBlockEntity.FUEL_TANK); - FluidResourceSlot oil = machine.fluidStorage().slot(RefineryBlockEntity.OIL_TANK); + FluidResourceSlot fuel = machine.fluidStorage().getSlot(RefineryBlockEntity.FUEL_TANK); + FluidResourceSlot oil = machine.fluidStorage().getSlot(RefineryBlockEntity.OIL_TANK); oil.set(GCFluids.CRUDE_OIL, FluidConstants.BUCKET); machine.energyStorage().setEnergy(Long.MAX_VALUE / 2); @@ -69,8 +69,8 @@ public Runnable crafting(RefineryBlockEntity machine) { @MachineTest public Runnable craftingFailFull(RefineryBlockEntity machine) { - FluidResourceSlot fuel = machine.fluidStorage().slot(RefineryBlockEntity.FUEL_TANK); - FluidResourceSlot oil = machine.fluidStorage().slot(RefineryBlockEntity.OIL_TANK); + FluidResourceSlot fuel = machine.fluidStorage().getSlot(RefineryBlockEntity.FUEL_TANK); + FluidResourceSlot oil = machine.fluidStorage().getSlot(RefineryBlockEntity.OIL_TANK); machine.energyStorage().setEnergy(Long.MAX_VALUE / 2); fuel.set(GCFluids.FUEL, fuel.getCapacity()); diff --git a/src/test/resources/fabric.mod.json b/src/test/resources/fabric.mod.json index 3404913a5e..24a47b5698 100644 --- a/src/test/resources/fabric.mod.json +++ b/src/test/resources/fabric.mod.json @@ -2,7 +2,7 @@ "schemaVersion": 1, "id": "galacticraft-test", - "version": "0.1.0", + "version": "$version", "name": "Galacticraft Test Mod", "description": "The test mod for Galacticraft 5.", "license": "MIT",