From 7e0c4d83ac5b43d18c4677b8e5765eb0fe095085 Mon Sep 17 00:00:00 2001 From: bruberu <80226372+bruberu@users.noreply.github.com> Date: Fri, 5 Jul 2024 00:55:13 -0500 Subject: [PATCH 1/9] feat: first recipes --- .../GTFOMaterialHandler.java | 23 +++++++ .../gregtechfoodoption/item/GTFOMetaItem.java | 33 +++++++++ .../recipe/GTFORecipeAddition.java | 1 + .../recipe/chain/ChorusChain.java | 63 ++++++++++++++++++ .../models/item/metaitems/food/antaf.json | 6 ++ .../item/metaitems/food/fermented_chorus.json | 6 ++ .../item/metaitems/food/ice_cream/chorus.json | 6 ++ .../item/metaitems/food/sorbet/apple.json | 6 ++ .../item/metaitems/food/sorbet/apricot.json | 6 ++ .../item/metaitems/food/sorbet/chorus.json | 6 ++ .../item/metaitems/food/sorbet/grape.json | 6 ++ .../item/metaitems/food/sorbet/lime.json | 6 ++ .../item/metaitems/food/sorbet/plain.json | 6 ++ .../item/metaitems/food/sorbet/vibrant.json | 6 ++ .../textures/items/metaitems/food/antaf.png | Bin 0 -> 4352 bytes .../items/metaitems/food/fermented_chorus.png | Bin 0 -> 575 bytes .../items/metaitems/food/ice_cream/chorus.png | Bin 0 -> 575 bytes .../items/metaitems/food/sorbet/apple.png | Bin 0 -> 575 bytes .../items/metaitems/food/sorbet/apricot.png | Bin 0 -> 575 bytes .../items/metaitems/food/sorbet/chorus.png | Bin 0 -> 575 bytes .../items/metaitems/food/sorbet/grape.png | Bin 0 -> 575 bytes .../items/metaitems/food/sorbet/lime.png | Bin 0 -> 575 bytes .../items/metaitems/food/sorbet/plain.png | Bin 0 -> 575 bytes .../items/metaitems/food/sorbet/vibrant.png | Bin 0 -> 575 bytes 24 files changed, 180 insertions(+) create mode 100755 src/main/resources/assets/gregtech/models/item/metaitems/food/antaf.json create mode 100755 src/main/resources/assets/gregtech/models/item/metaitems/food/fermented_chorus.json create mode 100755 src/main/resources/assets/gregtech/models/item/metaitems/food/ice_cream/chorus.json create mode 100755 src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/apple.json create mode 100755 src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/apricot.json create mode 100755 src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/chorus.json create mode 100755 src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/grape.json create mode 100755 src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/lime.json create mode 100755 src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/plain.json create mode 100755 src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/vibrant.json create mode 100755 src/main/resources/assets/gregtech/textures/items/metaitems/food/antaf.png create mode 100755 src/main/resources/assets/gregtech/textures/items/metaitems/food/fermented_chorus.png create mode 100755 src/main/resources/assets/gregtech/textures/items/metaitems/food/ice_cream/chorus.png create mode 100755 src/main/resources/assets/gregtech/textures/items/metaitems/food/sorbet/apple.png create mode 100755 src/main/resources/assets/gregtech/textures/items/metaitems/food/sorbet/apricot.png create mode 100755 src/main/resources/assets/gregtech/textures/items/metaitems/food/sorbet/chorus.png create mode 100755 src/main/resources/assets/gregtech/textures/items/metaitems/food/sorbet/grape.png create mode 100755 src/main/resources/assets/gregtech/textures/items/metaitems/food/sorbet/lime.png create mode 100755 src/main/resources/assets/gregtech/textures/items/metaitems/food/sorbet/plain.png create mode 100755 src/main/resources/assets/gregtech/textures/items/metaitems/food/sorbet/vibrant.png diff --git a/src/main/java/gregtechfoodoption/GTFOMaterialHandler.java b/src/main/java/gregtechfoodoption/GTFOMaterialHandler.java index 8d937278..bdbb50a6 100644 --- a/src/main/java/gregtechfoodoption/GTFOMaterialHandler.java +++ b/src/main/java/gregtechfoodoption/GTFOMaterialHandler.java @@ -461,6 +461,27 @@ public class GTFOMaterialHandler { .color(0x2a7b5a) .build(); + public static final Material EnderPearlSolution = fluidBuilder(21621, "ender_pearl_solution") + .components(EnderPearl, 1, Water, 1) + .color(EnderPearl.getMaterialRGB()) + .build(); + public static final Material EnderSugarSolution = fluidBuilder(21622, "ender_sugar_solution") + .components(Beryllium, 1, Nitrogen, 2, Potassium, 1, Water, 1) + .color(averageRGB(2, EnderPearlSolution.getMaterialRGB(), Beryllium.getMaterialRGB())) + .build(); + public static final Material ChorusJuice = fluidBuilder(21623, "chorus_juice") + .color(0xa670e0) + .build(); + public static final Material FermentedChorusJuice = fluidBuilder(21624, "fermented_chorus_juice") + .color(0xb5e8e6) + .build(); + public static final Material Antaf = fluidBuilder(21625, "antaf") + .color(0xd4b5e8) + .build(); + public static final Material VibrantExtract = fluidBuilder(21626, "vibrant_extract") + .color(0x3dfff7) + .build(); + public static final Material SweetenedDilutedCaneSyrupMixture = fluidBuilder(21970, "sweetened_diluted_cane_syrup_mixture") .color(0xdedcc8) @@ -618,6 +639,8 @@ public static void onMaterialsInit() { DistilledWater.setProperty(CLEANER, new CleanerProperty(2)); SodiumStearate.setProperty(CLEANER, new CleanerProperty(16)); + + ChorusJuice.setFormula("(C6H12O6)?", true); } public static Material.Builder fluidBuilder(int id, String name) { diff --git a/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java b/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java index edea7f16..ec6ceb2a 100644 --- a/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java +++ b/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java @@ -400,6 +400,18 @@ public class GTFOMetaItem extends MetaItem imple public static MetaItem.MetaValueItem KITCHEN_RECIPE; + public static MetaItem.MetaValueItem SORBET_PLAIN; + public static MetaItem.MetaValueItem SORBET_APPLE; + public static MetaItem.MetaValueItem SORBET_APRICOT; + public static MetaItem.MetaValueItem SORBET_CHORUS; + public static MetaItem.MetaValueItem SORBET_GRAPE; + public static MetaItem.MetaValueItem SORBET_LIME; + public static MetaItem.MetaValueItem SORBET_VIBRANT; + + public static MetaItem.MetaValueItem ANTAF; + + public static MetaItem.MetaValueItem FERMENTED_CHORUS; + public GTFOMetaItem() { super((short) 0); } @@ -1073,6 +1085,27 @@ public void registerSubItems() { SEASONED_PELMENI = addItem(341, "food.pelmeni_seasoned").addComponents(new GTFOFoodStats(7, 1f).setEatingDuration(24) .nutrients(0.5f, 0f, 1f, 1f, 1f)); + ANTAF = addItem(344, "food.antaf").addComponents(new GTFOFoodStats(5, 0.5f, true, true, PLASTIC_BOTTLE.getStackForm()) + .nutrients(0, 0.5f, 0f, 0f, 0f)); + + SORBET_PLAIN = addItem(345, "food.sorbet_plain").addComponents(new GTFOFoodStats(0, 0f, false, true) + .nutrients(0, 0f, 0f, 0f, 0f).setEatingDuration(12)); + SORBET_APPLE = addItem(346, "food.sorbet_apple").addComponents(new GTFOFoodStats(0, 0f) + .nutrients(0, 1f, 0f, 0f, 0f).setEatingDuration(12)); + SORBET_APRICOT = addItem(347, "food.sorbet_apricot").addComponents(new GTFOFoodStats(0, 0f) + .nutrients(0, 1f, 0f, 0f, 0f).setEatingDuration(12)); + SORBET_CHORUS = addItem(348, "food.sorbet_chorus").addComponents(new GTFOFoodStats(0, 0f) + .nutrients(0, 0f, 0f, 0f, 1f).setEatingDuration(12)); + SORBET_GRAPE = addItem(349, "food.sorbet_grape").addComponents(new GTFOFoodStats(0, 0f) + .nutrients(0, 1f, 0f, 0f, 0f).setEatingDuration(12)); + SORBET_LIME = addItem(350, "food.sorbet_lime").addComponents(new GTFOFoodStats(0, 0f) + .nutrients(0, 1f, 0f, 0f, 0f).setEatingDuration(12)); + SORBET_VIBRANT = addItem(351, "food.sorbet_vibrant").addComponents(new GTFOFoodStats(0, 0f) + .nutrients(0, 2f, 0f, 0f, 2f).setEatingDuration(12)); + + FERMENTED_CHORUS = addItem(352, "food.fermented_chorus").addComponents(new GTFOFoodStats(0, 0f, false, true) + .nutrients(0, 0f, 0f, 0f, 2f).setEatingDuration(60)); + UNKNOWN_SEED = addItem(158, "seed.unknown"); ONION_SEED = addItem(159, "seed.onion"); ONION_SEED.addComponents(new GTFOCropSeedBehaviour(GTFOCrops.CROP_ONION, ONION_SEED.getStackForm(), ONION.getStackForm())); diff --git a/src/main/java/gregtechfoodoption/recipe/GTFORecipeAddition.java b/src/main/java/gregtechfoodoption/recipe/GTFORecipeAddition.java index 564bdf52..c534fdb7 100644 --- a/src/main/java/gregtechfoodoption/recipe/GTFORecipeAddition.java +++ b/src/main/java/gregtechfoodoption/recipe/GTFORecipeAddition.java @@ -36,6 +36,7 @@ public static void init() { LithiumChain.init(); BerryChain.init(); RussianChain.init(); + ChorusChain.init(); if (Loader.isModLoaded(GTFOValues.MODID_GCYS)) { PopcornChain.init(); diff --git a/src/main/java/gregtechfoodoption/recipe/chain/ChorusChain.java b/src/main/java/gregtechfoodoption/recipe/chain/ChorusChain.java index 65b80baa..e469c9cc 100644 --- a/src/main/java/gregtechfoodoption/recipe/chain/ChorusChain.java +++ b/src/main/java/gregtechfoodoption/recipe/chain/ChorusChain.java @@ -1,7 +1,70 @@ package gregtechfoodoption.recipe.chain; +import gregtech.api.recipes.RecipeMaps; +import gregtech.api.unification.ore.OrePrefix; +import gregtechfoodoption.GTFOMaterialHandler; +import gregtechfoodoption.item.GTFOMetaItem; +import net.minecraft.init.Items; + +import static gregtech.api.GTValues.*; +import static gregtech.api.recipes.RecipeMaps.CANNER_RECIPES; +import static gregtech.api.unification.material.Materials.*; +import static gregtechfoodoption.item.GTFOMetaItem.*; + public class ChorusChain { public static void init() { + RecipeMaps.EXTRACTOR_RECIPES.recipeBuilder().EUt(16).duration(200) + .input(Items.CHORUS_FRUIT) + .fluidOutputs(GTFOMaterialHandler.ChorusJuice.getFluid(50)) + .buildAndRegister(); + RecipeMaps.EXTRACTOR_RECIPES.recipeBuilder().EUt(16).duration(100) + .input(Items.CHORUS_FRUIT_POPPED) + .fluidOutputs(GTFOMaterialHandler.ChorusJuice.getFluid(100)) + .buildAndRegister(); + RecipeMaps.MIXER_RECIPES.recipeBuilder().EUt(7).duration(200) + .input(OrePrefix.dust, EnderPearl) + .fluidInputs(Water.getFluid(1000)) + .fluidOutputs(GTFOMaterialHandler.EnderPearlSolution.getFluid(1000)) + .buildAndRegister(); + RecipeMaps.CENTRIFUGE_RECIPES.recipeBuilder().EUt(30).duration(500) + .fluidInputs(GTFOMaterialHandler.EnderPearlSolution.getFluid(1000)) + .fluidOutputs(GTFOMaterialHandler.EnderSugarSolution.getFluid(1000)) + .chancedOutput(OrePrefix.dust, Potassium, 3, 3000, 1000) + .chancedFluidOutput(Nitrogen.getFluid(3000), 1000, 1500) + .buildAndRegister(); + RecipeMaps.MIXER_RECIPES.recipeBuilder().EUt(VA[HV]).duration(400) + .fluidInputs(GTFOMaterialHandler.EnderSugarSolution.getFluid(1000)) + .fluidInputs(GTFOMaterialHandler.FermentedChorusJuice.getFluid(1000)) + .fluidOutputs(GTFOMaterialHandler.VibrantExtract.getFluid(1000)) + .buildAndRegister(); + + RecipeMaps.FERMENTING_RECIPES.recipeBuilder().EUt(2).duration(1000) + .fluidInputs(GTFOMaterialHandler.LacticAcidBacteria.getFluid(1000)) + .input(Items.CHORUS_FRUIT) + .outputs(GTFOMetaItem.FERMENTED_CHORUS.getStackForm()) + .buildAndRegister(); + RecipeMaps.FERMENTING_RECIPES.recipeBuilder().EUt(2).duration(800) + .fluidInputs(GTFOMaterialHandler.LacticAcidBacteria.getFluid(1000)) + .input(Items.CHORUS_FRUIT_POPPED) + .outputs(GTFOMetaItem.FERMENTED_CHORUS.getStackForm()) + .buildAndRegister(); + RecipeMaps.EXTRACTOR_RECIPES.recipeBuilder().EUt(16).duration(200) + .inputs(GTFOMetaItem.FERMENTED_CHORUS.getStackForm()) + .fluidOutputs(GTFOMaterialHandler.FermentedChorusJuice.getFluid(50)) + .buildAndRegister(); + RecipeMaps.MIXER_RECIPES.recipeBuilder().EUt(60).duration(20) + .fluidInputs(GTFOMaterialHandler.FermentedChorusJuice.getFluid(1000)) + .input(Items.SUGAR, 9) + .fluidInputs(GTFOMaterialHandler.CarbonatedWater.getFluid(1000)) + .fluidOutputs(GTFOMaterialHandler.Antaf.getFluid(2000)) + .buildAndRegister(); + CANNER_RECIPES.recipeBuilder() + .fluidInputs(GTFOMaterialHandler.Antaf.getFluid(500)) + .inputs(PLASTIC_BOTTLE.getStackForm()) + .outputs(ANTAF.getStackForm()) + .EUt(30) + .duration(20) + .buildAndRegister(); } } diff --git a/src/main/resources/assets/gregtech/models/item/metaitems/food/antaf.json b/src/main/resources/assets/gregtech/models/item/metaitems/food/antaf.json new file mode 100755 index 00000000..9f00f3b5 --- /dev/null +++ b/src/main/resources/assets/gregtech/models/item/metaitems/food/antaf.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "gregtech:items/metaitems/food/antaf" + } +} diff --git a/src/main/resources/assets/gregtech/models/item/metaitems/food/fermented_chorus.json b/src/main/resources/assets/gregtech/models/item/metaitems/food/fermented_chorus.json new file mode 100755 index 00000000..c3510012 --- /dev/null +++ b/src/main/resources/assets/gregtech/models/item/metaitems/food/fermented_chorus.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "gregtech:items/metaitems/food/fermented_chorus" + } +} diff --git a/src/main/resources/assets/gregtech/models/item/metaitems/food/ice_cream/chorus.json b/src/main/resources/assets/gregtech/models/item/metaitems/food/ice_cream/chorus.json new file mode 100755 index 00000000..bdce2b13 --- /dev/null +++ b/src/main/resources/assets/gregtech/models/item/metaitems/food/ice_cream/chorus.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "gregtech:items/metaitems/food/ice_cream/chorus" + } +} diff --git a/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/apple.json b/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/apple.json new file mode 100755 index 00000000..3a03b211 --- /dev/null +++ b/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/apple.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "gregtech:items/metaitems/food/sorbet/apple" + } +} diff --git a/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/apricot.json b/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/apricot.json new file mode 100755 index 00000000..80141df1 --- /dev/null +++ b/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/apricot.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "gregtech:items/metaitems/food/sorbet/apricot" + } +} diff --git a/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/chorus.json b/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/chorus.json new file mode 100755 index 00000000..688c5b5e --- /dev/null +++ b/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/chorus.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "gregtech:items/metaitems/food/sorbet/chorus" + } +} diff --git a/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/grape.json b/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/grape.json new file mode 100755 index 00000000..b4b184f9 --- /dev/null +++ b/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/grape.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "gregtech:items/metaitems/food/sorbet/grape" + } +} diff --git a/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/lime.json b/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/lime.json new file mode 100755 index 00000000..fa7c3a42 --- /dev/null +++ b/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/lime.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "gregtech:items/metaitems/food/sorbet/lime" + } +} diff --git a/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/plain.json b/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/plain.json new file mode 100755 index 00000000..4a47ba99 --- /dev/null +++ b/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/plain.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "gregtech:items/metaitems/food/sorbet/plain" + } +} diff --git a/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/vibrant.json b/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/vibrant.json new file mode 100755 index 00000000..e1c3665c --- /dev/null +++ b/src/main/resources/assets/gregtech/models/item/metaitems/food/sorbet/vibrant.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "gregtech:items/metaitems/food/sorbet/vibrant" + } +} diff --git a/src/main/resources/assets/gregtech/textures/items/metaitems/food/antaf.png b/src/main/resources/assets/gregtech/textures/items/metaitems/food/antaf.png new file mode 100755 index 0000000000000000000000000000000000000000..adb0ba41aedd3b688d858bd188fc2b6b85dd8785 GIT binary patch literal 4352 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 N002ovPDHLkV1n!c?BD Date: Sat, 6 Jul 2024 17:13:12 -0500 Subject: [PATCH 2/9] fix: stop AIOOB for SUSY --- .../mixins/late/RecipeMapFluidCannerMixin.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/gregtechfoodoption/mixins/late/RecipeMapFluidCannerMixin.java b/src/main/java/gregtechfoodoption/mixins/late/RecipeMapFluidCannerMixin.java index 36b3947c..5e653148 100644 --- a/src/main/java/gregtechfoodoption/mixins/late/RecipeMapFluidCannerMixin.java +++ b/src/main/java/gregtechfoodoption/mixins/late/RecipeMapFluidCannerMixin.java @@ -68,7 +68,9 @@ public void findLacingRecipe(List inputs, List fluidInput if (inputStack.isEmpty()) { return; } - FluidStack potentialFluid = fluidInputs.get(0); + FluidStack potentialFluid = null; + if (!fluidInputs.isEmpty()) + potentialFluid = fluidInputs.get(0); if (potentialFluid != null && potentialFluid.amount != 0) { inputFluid = potentialFluid.copy(); if (inputFluid.amount < 100) From 224c424ffd2083f0ffe7c29f520177b65a2b50ff Mon Sep 17 00:00:00 2001 From: bruberu <80226372+bruberu@users.noreply.github.com> Date: Thu, 18 Jul 2024 20:28:50 -0500 Subject: [PATCH 3/9] feat: lung cancer --- build.gradle | 41 +++++++++++++--- dependencies.gradle | 4 +- gradle.properties | 2 +- .../java/gregtechfoodoption/CommonProxy.java | 12 +++-- .../late/RecipeMapFluidCannerMixin.java | 3 +- .../potion/CyanidePoisoningPotion.java | 3 +- .../potion/GTFOPotions.java | 1 + .../potion/LungCancerPotion.java | 46 ++++++++++++++++++ .../assets/gregtechfoodoption/lang/en_us.lang | 1 + .../textures/gui/potions.png | Bin 10750 -> 12509 bytes 10 files changed, 98 insertions(+), 15 deletions(-) create mode 100644 src/main/java/gregtechfoodoption/potion/LungCancerPotion.java diff --git a/build.gradle b/build.gradle index 296f03d6..a99d4771 100644 --- a/build.gradle +++ b/build.gradle @@ -1,4 +1,4 @@ -//version: 1719793363 +//version: 1720840170 /* * DO NOT CHANGE THIS FILE! * Also, you may replace this file at any time if there is an update available. @@ -33,9 +33,9 @@ plugins { id 'base' id 'eclipse' id 'maven-publish' - id 'org.jetbrains.gradle.plugin.idea-ext' version '1.1.7' - id 'com.gtnewhorizons.retrofuturagradle' version '1.3.33' - id 'net.darkhax.curseforgegradle' version '1.1.18' apply false + id 'org.jetbrains.gradle.plugin.idea-ext' version '1.1.8' + id 'com.gtnewhorizons.retrofuturagradle' version '1.4.0' + id 'net.darkhax.curseforgegradle' version '1.1.24' apply false id 'com.modrinth.minotaur' version '2.8.7' apply false id 'com.diffplug.spotless' version '6.13.0' apply false id 'com.palantir.git-version' version '3.0.0' apply false @@ -78,8 +78,10 @@ propertyDefaultIfUnset("gradleTokenVersion", "") propertyDefaultIfUnset("useSrcApiPath", false) propertyDefaultIfUnset("includeWellKnownRepositories", true) propertyDefaultIfUnset("includeCommonDevEnvMods", true) +propertyDefaultIfUnset("stripForgeRequirements", false) propertyDefaultIfUnset("noPublishedSources", false) propertyDefaultIfUnset("forceEnableMixins", false) +propertyDefaultIfUnset("mixinConfigRefmap", "mixins.${project.modId}.refmap.json") propertyDefaultIfUnsetWithEnvVar("enableCoreModDebug", false, "CORE_MOD_DEBUG") propertyDefaultIfUnset("generateMixinConfig", true) propertyDefaultIfUnset("usesShadowedDependencies", false) @@ -525,7 +527,7 @@ dependencies { // should use 2.8.6 but 2.8.9+ has a vulnerability fix annotationProcessor 'com.google.code.gson:gson:2.8.9' - mixinProviderSpec = modUtils.enableMixins(mixinProviderSpec, "mixins.${modId}.refmap.json") + mixinProviderSpec = modUtils.enableMixins(mixinProviderSpec, mixinConfigRefmap) api (mixinProviderSpec) { transitive = false } @@ -567,6 +569,10 @@ dependencies { transitive = false } + if ((usesMixins.toBoolean() || forceEnableMixins.toBoolean()) && stripForgeRequirements.toBoolean()) { + runtimeOnlyNonPublishable 'com.cleanroommc:strip-latest-forge-requirements:1.0' + } + if (includeCommonDevEnvMods.toBoolean()) { if (!(modId.equals('jei'))) { implementation 'mezz.jei:jei_1.12.2:4.16.1.302' @@ -700,7 +706,6 @@ tasks.register('generateAssets') { if (usesMixins.toBoolean() && generateMixinConfig.toBoolean()) { def mixinConfigFile = getFile("src/main/resources/mixins.${modId}.json") if (!mixinConfigFile.exists()) { - def mixinConfigRefmap = "mixins.${modId}.refmap.json" mixinConfigFile.text = """{ "package": "${modGroup}.${mixinsPackage}", @@ -1232,6 +1237,30 @@ if (cfApiKey.isPresent() || deploymentDebug.toBoolean()) { additionalFile.changelog = changelogRaw } } + doLast { + // No File IDs in Debug Mode + if (!deploymentDebug.toBoolean()) { + def list = [] + for (def artifact : tasks.curseforge.getUploadArtifacts()) { + list.add(artifact) + for (def additionalArtifact : artifact.getAdditionalArtifacts()) { + list.add(additionalArtifact) + } + } + def summary = "## CurseForge Build Summary (Mod ${modName} | Project ID ${curseForgeProjectId})" + for (def artifact : list) { + def fileId = artifact.getCurseFileId() + def fileName = artifact.getArtifact().getSingleFile().name + println("Uploaded File ${fileName}, With File ID: ${fileId}") + summary = summary + "\n - File: ${fileName} | File ID: ${fileId}" + } + println(summary) + def stepSummary = providers.environmentVariable("GITHUB_STEP_SUMMARY") + if (stepSummary.isPresent()) { + file(stepSummary.get()).write(summary) + } + } + } } tasks.curseforge.dependsOn(build) tasks.curseforge.dependsOn('generateChangelog') diff --git a/dependencies.gradle b/dependencies.gradle index ba2de96a..1db7c4ca 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -28,14 +28,14 @@ dependencies { implementation rfg.deobf("curse.maven:mixin-booter-419286:4828995") compileOnly "CraftTweaker2:CraftTweaker2-MC1120-Main:1.12-4.1.20.554" - implementation rfg.deobf("curse.maven:gregtech-ce-unofficial-557242:5121638") + implementation rfg.deobf("curse.maven:gregtech-ce-unofficial-557242:5519022") implementation rfg.deobf("curse.maven:groovyscript-687577:4991701") implementation "team.chisel.ctm:CTM:MC${project.minecraft.version}-1.0.2.31" //provided files("libs/gregicality-1.12.2-0.23.1.jar") implementation "codechicken:ChickenASM:1.12-1.0.2.9" implementation rfg.deobf("curse.maven:codechicken-lib-1-8-${ccl_pid}:${ccl_fid}") - implementation rfg.deobf("curse.maven:groovyscript-687577:4905039") + implementation rfg.deobf("curse.maven:groovyscript-687577:5507936") //deobfCompile "nuclearcraft-overhauled:NuclearCraft:2o.6.0:1.12.2" implementation "de.ellpeck.actuallyadditions:ActuallyAdditions:${project.minecraft.version}-r144" diff --git a/gradle.properties b/gradle.properties index 0c022506..3f874bc4 100644 --- a/gradle.properties +++ b/gradle.properties @@ -16,7 +16,7 @@ modId = gregtechfoodoption modGroup = gregtechfoodoption -modVersion = 1.11.2.1 +modVersion = 1.11.3 # The name of your jar when you produce builds, not including any versioning info modArchivesBaseName = gregtechfoodoption diff --git a/src/main/java/gregtechfoodoption/CommonProxy.java b/src/main/java/gregtechfoodoption/CommonProxy.java index 5f75334f..d8ed7137 100644 --- a/src/main/java/gregtechfoodoption/CommonProxy.java +++ b/src/main/java/gregtechfoodoption/CommonProxy.java @@ -4,6 +4,9 @@ import crazypants.enderio.base.farming.farmers.CustomSeedFarmer; import gregtech.api.block.VariantItemBlock; import gregtech.api.recipes.RecipeMaps; +import gregtech.api.unification.OreDictUnifier; +import gregtech.api.unification.material.Materials; +import gregtech.api.unification.ore.OrePrefix; import gregtechfoodoption.block.GTFOBerryBush; import gregtechfoodoption.block.GTFOCrop; import gregtechfoodoption.block.GTFOMetaBlocks; @@ -15,10 +18,7 @@ import gregtechfoodoption.item.GTFOMetaItems; import gregtechfoodoption.item.GTFOSpecialVariantItemBlock; import gregtechfoodoption.machines.multiblock.MetaTileEntityGreenhouse; -import gregtechfoodoption.potion.AntiSchizoPotion; -import gregtechfoodoption.potion.CyanidePoisoningPotion; -import gregtechfoodoption.potion.GTFOPotions; -import gregtechfoodoption.potion.LacingEntry; +import gregtechfoodoption.potion.*; import gregtechfoodoption.recipe.GTFOOreDictRegistration; import gregtechfoodoption.recipe.GTFORecipeAddition; import gregtechfoodoption.recipe.GTFORecipeHandler; @@ -75,6 +75,10 @@ public void onPostLoad() { LacingEntry.LACING_REGISTRY.register(1, "antischizo", new LacingEntry(GTFOMaterialHandler.LithiumCarbonate.getItemStack(), new PotionEffect(AntiSchizoPotion.INSTANCE, 1000, 0), "14hez98zk7/2/3/5/9/10/")); + LacingEntry.LACING_REGISTRY.register(2, "lungcancer", new LacingEntry(OreDictUnifier.get(OrePrefix.dust, Materials.Asbestos), + new PotionEffect(LungCancerPotion.INSTANCE, 99999999, 0), + "17aaqe0i1q/1/2/3/7/10/")); + if (Loader.isModLoaded(GTFOValues.MODID_NUGT) && GTFOConfig.gtfoOtherFoodModConfig.enableGTFONutrition) { GTFONutritionCompatibility.init(); diff --git a/src/main/java/gregtechfoodoption/mixins/late/RecipeMapFluidCannerMixin.java b/src/main/java/gregtechfoodoption/mixins/late/RecipeMapFluidCannerMixin.java index 5e653148..6818e6bf 100644 --- a/src/main/java/gregtechfoodoption/mixins/late/RecipeMapFluidCannerMixin.java +++ b/src/main/java/gregtechfoodoption/mixins/late/RecipeMapFluidCannerMixin.java @@ -1,5 +1,6 @@ package gregtechfoodoption.mixins.late; +import gregtech.api.items.metaitem.MetaItem; import gregtech.api.recipes.Recipe; import gregtech.api.recipes.ingredients.GTRecipeItemInput; import gregtech.api.recipes.machines.RecipeMapFluidCanner; @@ -61,7 +62,7 @@ public void findLacingRecipe(List inputs, List fluidInput inputStack.setCount(1); continue; } - if (input.getItem() instanceof GTFOOredictItem) { // Hoping there's only one + if (input.getItem() instanceof MetaItem) { // Hoping there's only one lacingWith = input.copy(); } } diff --git a/src/main/java/gregtechfoodoption/potion/CyanidePoisoningPotion.java b/src/main/java/gregtechfoodoption/potion/CyanidePoisoningPotion.java index 3f010097..fa2ddf52 100644 --- a/src/main/java/gregtechfoodoption/potion/CyanidePoisoningPotion.java +++ b/src/main/java/gregtechfoodoption/potion/CyanidePoisoningPotion.java @@ -8,6 +8,7 @@ import net.minecraft.util.text.TextComponentTranslation; import java.util.ArrayList; +import java.util.Collections; import java.util.List; public class CyanidePoisoningPotion extends GTFOPotion { @@ -57,6 +58,6 @@ public boolean shouldRender(PotionEffect effect) { @Override public List getCurativeItems() { - return new ArrayList<>(); // Nothing :) + return Collections.emptyList(); // Nothing :) } } diff --git a/src/main/java/gregtechfoodoption/potion/GTFOPotions.java b/src/main/java/gregtechfoodoption/potion/GTFOPotions.java index 41f69383..b6fa7252 100644 --- a/src/main/java/gregtechfoodoption/potion/GTFOPotions.java +++ b/src/main/java/gregtechfoodoption/potion/GTFOPotions.java @@ -25,6 +25,7 @@ public static void initPotionInstances() new PotionAmplifierPotion(); new PotionLengthenerPotion(); new AntiSchizoPotion(); + new LungCancerPotion(); } diff --git a/src/main/java/gregtechfoodoption/potion/LungCancerPotion.java b/src/main/java/gregtechfoodoption/potion/LungCancerPotion.java new file mode 100644 index 00000000..6516b248 --- /dev/null +++ b/src/main/java/gregtechfoodoption/potion/LungCancerPotion.java @@ -0,0 +1,46 @@ +package gregtechfoodoption.potion; + +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.SharedMonsterAttributes; +import net.minecraft.entity.ai.attributes.IAttributeInstance; +import net.minecraft.item.ItemStack; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +public class LungCancerPotion extends GTFOPotion { + public static LungCancerPotion INSTANCE = null; + + public LungCancerPotion() { + super("lungcancer", true, 0x663650, 8); + INSTANCE = this; + } + + @Override + protected boolean canRender() { + return true; + } + + @Override + public boolean isReady(int duration, int amplifier) { + return true; + } + + @Override + public List getCurativeItems() { + return Collections.emptyList(); // Nothing :) + } + + @Override + public void performEffect(EntityLivingBase entity, int amplifier) { + int phase = entity.getActivePotionEffect(this).getDuration(); + + if (phase % 600 == 0) { + IAttributeInstance attr = entity.getEntityAttribute(SharedMonsterAttributes.MAX_HEALTH); + attr.setBaseValue(attr.getBaseValue() - 1); + entity.setHealth((float) attr.getBaseValue()); + } + } + +} diff --git a/src/main/resources/assets/gregtechfoodoption/lang/en_us.lang b/src/main/resources/assets/gregtechfoodoption/lang/en_us.lang index 93767bcc..92ad4e93 100644 --- a/src/main/resources/assets/gregtechfoodoption/lang/en_us.lang +++ b/src/main/resources/assets/gregtechfoodoption/lang/en_us.lang @@ -1102,6 +1102,7 @@ gregtechfoodoption.lacing.info.1=Applies effect: gregtechfoodoption.lacing.info.2=Lasts %s ticks gregtechfoodoption.potion.cyanidepoisoning=Cyanide Poisoning gregtechfoodoption.potion.antischizo=Schizophrenia Meds +gregtechfoodoption.potion.lungcancer=Lung Cancer eating.output.name=Eating Recipe metaitem.component.pelmeni_uncooked.name=Uncooked Pelmeni diff --git a/src/main/resources/assets/gregtechfoodoption/textures/gui/potions.png b/src/main/resources/assets/gregtechfoodoption/textures/gui/potions.png index 4ebaff79588194942813951f0a3a77d3ee5467eb..d7856b27fc88823297f6ef245b47166de0aa8206 100644 GIT binary patch delta 8050 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 From 2ca0a1c2f314a7b213425eb76cc8a844735b24a4 Mon Sep 17 00:00:00 2001 From: bruberu <80226372+bruberu@users.noreply.github.com> Date: Tue, 23 Jul 2024 07:50:28 -0500 Subject: [PATCH 4/9] feat: some of the sorbet chain --- .../gregtechfoodoption/item/GTFOMetaItem.java | 3 +- .../potion/EnhancedChorusPotion.java | 51 +++++++++++++ .../potion/GTFOPotions.java | 1 + .../potion/VentingPotion.java | 16 +++-- .../recipe/chain/SorbetChain.java | 68 ++++++++++++++++++ .../metaitems/food/pie/fermented_chorus.json | 6 ++ .../items/metaitems/component/pie_crust.png | Bin 127 -> 337 bytes .../items/metaitems/food/fermented_chorus.png | Bin 575 -> 427 bytes .../metaitems/food/pie/fermented_chorus.png | Bin 0 -> 471 bytes .../textures/gui/potions.png | Bin 12509 -> 13168 bytes 10 files changed, 138 insertions(+), 7 deletions(-) create mode 100644 src/main/java/gregtechfoodoption/potion/EnhancedChorusPotion.java create mode 100644 src/main/java/gregtechfoodoption/recipe/chain/SorbetChain.java create mode 100755 src/main/resources/assets/gregtech/models/item/metaitems/food/pie/fermented_chorus.json create mode 100755 src/main/resources/assets/gregtech/textures/items/metaitems/food/pie/fermented_chorus.png diff --git a/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java b/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java index ec6ceb2a..80a9d5c8 100644 --- a/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java +++ b/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java @@ -1104,7 +1104,8 @@ public void registerSubItems() { .nutrients(0, 2f, 0f, 0f, 2f).setEatingDuration(12)); FERMENTED_CHORUS = addItem(352, "food.fermented_chorus").addComponents(new GTFOFoodStats(0, 0f, false, true) - .nutrients(0, 0f, 0f, 0f, 2f).setEatingDuration(60)); + .nutrients(0, 0f, 0f, 0f, 2f).setEatingDuration(60) + .setPotionEffects(new RandomPotionEffect(EnhancedChorusPotion.INSTANCE, 100, 0, 100 - 80))); UNKNOWN_SEED = addItem(158, "seed.unknown"); ONION_SEED = addItem(159, "seed.onion"); diff --git a/src/main/java/gregtechfoodoption/potion/EnhancedChorusPotion.java b/src/main/java/gregtechfoodoption/potion/EnhancedChorusPotion.java new file mode 100644 index 00000000..8980ebde --- /dev/null +++ b/src/main/java/gregtechfoodoption/potion/EnhancedChorusPotion.java @@ -0,0 +1,51 @@ +package gregtechfoodoption.potion; + +import gregtechfoodoption.client.GTFOClientHandler; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.util.SoundCategory; +import net.minecraft.util.math.MathHelper; + +public class EnhancedChorusPotion extends GTFOPotion { + public static final String TAG_NAME = "gregtechfoodoption - enhanced chorus"; + public static EnhancedChorusPotion INSTANCE = null; + + public EnhancedChorusPotion() { + super("enhancedchorus", false, 0xFF052B, 7); + INSTANCE = this; + } + + @Override + public void performEffect(EntityLivingBase entityLiving, int amplifier) { + // Chorus fruit moment + if (Math.random() < 0.025 * (amplifier + 1)) { + double playerX = entityLiving.posX; + double playerY = entityLiving.posY; + double playerZ = entityLiving.posZ; + + for(int i = 0; i < 16; ++i) { + double newX = entityLiving.posX + (entityLiving.getRNG().nextDouble() - 0.5) * 16.0; + double newY = MathHelper.clamp(entityLiving.posY + (double)(entityLiving.getRNG().nextInt(16) - 8), 0.0, entityLiving.getEntityWorld().getActualHeight() - 1); + double newZ = entityLiving.posZ + (entityLiving.getRNG().nextDouble() - 0.5) * 16.0; + if (entityLiving.isRiding()) { + entityLiving.dismountRidingEntity(); + } + + if (entityLiving.attemptTeleport(newX, newY, newZ)) { + entityLiving.getEntityWorld().playSound(null, playerX, playerY, playerZ, GTFOClientHandler.AMOGUS_VENT, SoundCategory.PLAYERS, 1.0F, 1.0F); + entityLiving.playSound(GTFOClientHandler.AMOGUS_VENT, 1.0F, 1.0F); + break; + } + } + } + } + + @Override + protected boolean canRender() { + return true; + } + + @Override + public boolean isReady(int duration, int amplifier) { + return true; + } +} diff --git a/src/main/java/gregtechfoodoption/potion/GTFOPotions.java b/src/main/java/gregtechfoodoption/potion/GTFOPotions.java index b6fa7252..f0b3cd95 100644 --- a/src/main/java/gregtechfoodoption/potion/GTFOPotions.java +++ b/src/main/java/gregtechfoodoption/potion/GTFOPotions.java @@ -26,6 +26,7 @@ public static void initPotionInstances() new PotionLengthenerPotion(); new AntiSchizoPotion(); new LungCancerPotion(); + new EnhancedChorusPotion(); } diff --git a/src/main/java/gregtechfoodoption/potion/VentingPotion.java b/src/main/java/gregtechfoodoption/potion/VentingPotion.java index 7ef1a618..4b81bce4 100644 --- a/src/main/java/gregtechfoodoption/potion/VentingPotion.java +++ b/src/main/java/gregtechfoodoption/potion/VentingPotion.java @@ -2,8 +2,10 @@ import gregtechfoodoption.client.GTFOClientHandler; import net.minecraft.entity.EntityLivingBase; +import net.minecraft.init.SoundEvents; import net.minecraft.util.SoundCategory; import net.minecraft.util.math.MathHelper; +import net.minecraft.util.math.Vec3d; public class VentingPotion extends GTFOPotion { public static final String TAG_NAME = "gregtechfoodoption - venting"; @@ -22,17 +24,19 @@ public void performEffect(EntityLivingBase entityLiving, int amplifier) { double playerY = entityLiving.posY; double playerZ = entityLiving.posZ; - for(int i = 0; i < 16; ++i) { - double newX = entityLiving.posX + (entityLiving.getRNG().nextDouble() - 0.5) * 16.0; - double newY = MathHelper.clamp(entityLiving.posY + (double)(entityLiving.getRNG().nextInt(16) - 8), 0.0, entityLiving.getEntityWorld().getActualHeight() - 1); - double newZ = entityLiving.posZ + (entityLiving.getRNG().nextDouble() - 0.5) * 16.0; + for (int i = 0; i < 16; ++i) { + Vec3d look = entityLiving.getLookVec(); + + double newX = entityLiving.posX + (entityLiving.getRNG().nextDouble() - 0.5 + look.x) * 16.0; + double newY = MathHelper.clamp(entityLiving.posY + (entityLiving.getRNG().nextInt(8) - 4 + 4 * look.y), 0.0, entityLiving.getEntityWorld().getActualHeight() - 1); + double newZ = entityLiving.posZ + (entityLiving.getRNG().nextDouble() - 0.5 + look.z) * 16.0; if (entityLiving.isRiding()) { entityLiving.dismountRidingEntity(); } if (entityLiving.attemptTeleport(newX, newY, newZ)) { - entityLiving.getEntityWorld().playSound(null, playerX, playerY, playerZ, GTFOClientHandler.AMOGUS_VENT, SoundCategory.PLAYERS, 1.0F, 1.0F); - entityLiving.playSound(GTFOClientHandler.AMOGUS_VENT, 1.0F, 1.0F); + entityLiving.getEntityWorld().playSound(null, playerX, playerY, playerZ, SoundEvents.ITEM_CHORUS_FRUIT_TELEPORT, SoundCategory.PLAYERS, 1.0F, 1.0F); + entityLiving.playSound(SoundEvents.ITEM_CHORUS_FRUIT_TELEPORT, 1.0F, 1.0F); break; } } diff --git a/src/main/java/gregtechfoodoption/recipe/chain/SorbetChain.java b/src/main/java/gregtechfoodoption/recipe/chain/SorbetChain.java new file mode 100644 index 00000000..78328d0c --- /dev/null +++ b/src/main/java/gregtechfoodoption/recipe/chain/SorbetChain.java @@ -0,0 +1,68 @@ +package gregtechfoodoption.recipe.chain; + +import gregtech.api.recipes.RecipeMaps; +import gregtech.api.unification.material.Materials; +import gregtech.api.unification.ore.OrePrefix; +import gregtechfoodoption.GTFOMaterialHandler; +import gregtechfoodoption.item.GTFOMetaItem; + +public class SorbetChain { + public static void init() { + RecipeMaps.MIXER_RECIPES.recipeBuilder().EUt(30).duration(200) + .input(OrePrefix.dust, Materials.Ice, 4) + .input(OrePrefix.dustTiny, Materials.Sugar) + .circuitMeta(1) + .outputs(GTFOMetaItem.SORBET_PLAIN.getStackForm(4)) + .buildAndRegister(); + + RecipeMaps.MIXER_RECIPES.recipeBuilder().EUt(30).duration(200) + .input(OrePrefix.dust, Materials.Ice, 4) + .input(OrePrefix.dustTiny, Materials.Sugar) + .fluidInputs(GTFOMaterialHandler.AppleExtract.getFluid(50)) + .outputs(GTFOMetaItem.SORBET_APPLE.getStackForm(4)) + .buildAndRegister(); + + RecipeMaps.MIXER_RECIPES.recipeBuilder().EUt(30).duration(200) + .input(OrePrefix.dust, Materials.Ice, 4) + .input(OrePrefix.dustTiny, Materials.Sugar) + .fluidInputs(GTFOMaterialHandler.ApricotExtract.getFluid(40), GTFOMaterialHandler.LemonExtract.getFluid(10)) + .outputs(GTFOMetaItem.SORBET_APRICOT.getStackForm(4)) + .buildAndRegister(); + + RecipeMaps.MIXER_RECIPES.recipeBuilder().EUt(30).duration(200) + .input(OrePrefix.dust, Materials.Ice, 4) + .input(OrePrefix.dustTiny, Materials.Sugar) + .fluidInputs(GTFOMaterialHandler.GrapeExtract.getFluid(50)) + .outputs(GTFOMetaItem.SORBET_GRAPE.getStackForm(4)) + .buildAndRegister(); + + RecipeMaps.MIXER_RECIPES.recipeBuilder().EUt(30).duration(200) + .input(OrePrefix.dust, Materials.Ice, 4) + .input(OrePrefix.dustTiny, Materials.Sugar) + .fluidInputs(GTFOMaterialHandler.LimeExtract.getFluid(50)) + .outputs(GTFOMetaItem.SORBET_LIME.getStackForm(4)) + .buildAndRegister(); + + RecipeMaps.MIXER_RECIPES.recipeBuilder().EUt(30).duration(200) + .input(OrePrefix.dust, Materials.Ice, 4) + .input(OrePrefix.dustTiny, Materials.Sugar) + .fluidInputs(GTFOMaterialHandler.ChorusJuice.getFluid(40), GTFOMaterialHandler.LemonExtract.getFluid(10)) + .outputs(GTFOMetaItem.SORBET_CHORUS.getStackForm(4)) + .buildAndRegister(); + + RecipeMaps.MIXER_RECIPES.recipeBuilder().EUt(30).duration(200) + .input(OrePrefix.dust, Materials.Ice, 4) + .input(OrePrefix.dustTiny, Materials.Sugar) + .fluidInputs(GTFOMaterialHandler.VibrantExtract.getFluid(40), GTFOMaterialHandler.LemonExtract.getFluid(10)) + .outputs(GTFOMetaItem.SORBET_VIBRANT.getStackForm(4)) + .buildAndRegister(); + + + /*RecipeMaps.MIXER_RECIPES.recipeBuilder().EUt(30).duration(200) + .input(OrePrefix.dust, Materials.Ice, 4) + .input(OrePrefix.dustTiny, Materials.Sugar) + .fluidInputs(GTFOMaterialHandler.OrangeExtract.getFluid(50)) + .outputs(GTFOMetaItem.SORBET_ORANGE.getStackForm(4)) + .buildAndRegister();*/ + } +} diff --git a/src/main/resources/assets/gregtech/models/item/metaitems/food/pie/fermented_chorus.json b/src/main/resources/assets/gregtech/models/item/metaitems/food/pie/fermented_chorus.json new file mode 100755 index 00000000..392f5030 --- /dev/null +++ b/src/main/resources/assets/gregtech/models/item/metaitems/food/pie/fermented_chorus.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "gregtech:items/metaitems/food/pie/fermented_chorus" + } +} diff --git a/src/main/resources/assets/gregtech/textures/items/metaitems/component/pie_crust.png b/src/main/resources/assets/gregtech/textures/items/metaitems/component/pie_crust.png index 0505c90b016de5cadb04978a7fddd8e3c73e0fa1..5542464259dbbe67fbfe3c8a7b51c40ea5b47224 100644 GIT binary patch delta 309 zcmV-50m}Y=(E^Ype+h6%S#tmYTt)x@Tt)#DltV!P008MpL_t(I5!I4055YhfhCgB{ zLDEzai50t1()cTWh`}y?ligs@DCsJpqywRw@}At~dcLsoCGB0_e$UgpYl;58a@-E? zi*d^3`TpdsKNA4FUSdja3CELFw5U|JNf#*r;L~Bpf@bK{e_Ki-1SWip_7uhE4CmSv zs<{o7Nl8H^&j|<0=MdsDMR_z}=`fmam9Rdd2fcE;LLeocH`IICIeGwNwJ5QLb+Dmc zw<8{WlK}REEiL^}2-H`YPX{R^pGuw);IO?CtP%i(1fyeDF{o45LF5v~JR?AWnvI(5 zpQwYc&R@7cF8~U~ZmwyQT4DeI01jnXNoGw=04e|g00;m8000000Mb*F00000NkvXX Hu0mjfYOaBF delta 97 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≀{VLA@m=F6tP}9zTW*K8-S(e%Rq}2P= ziVA^sp!IR{cK0*2$-iWb&dyFl5!m1bVArl)8Xq55XJ@AlcXTKa2$Xk5`Tc(N^z^79 znbgF@gx>4z)!qB|%V*p2`~4~wi{(PG+D^cfJKKBi*rE|{S{>&1biqsO^3<5*c{&)| zu6vwK%BrB>azCYiOYVf)%`tUOTv1lVSp{ji$-h$7qkTE~SJ44flE1nbTb8B0Ps-F= z1Xh~-e z&axL?c!AOXb}j&=Qpsv=ZZ_|~|GqrWQ>j!c|6RF%TuzSTXnJ~DQP*9ly{xwg)IP?# zcJwV1`RRUz`lZ75l0G~91-%)2@%m(!&!=!Wtlbkw)mzA@dvZt$1f|exbGGY7T=Kh6 za#t^3st6pO+0L0RV8KFF=j&*e`(Bif{oC8yt))hOlK(a@0Fso;I#Tifo}dnRCk4xpYx zfLUh%%9cAB$fO?yVAjrLS(c13waZN;64BJuRNXs->$)cM*ni0S`Z1*+`d1~t^G8d6 z?Vv`IcD~Urlk%(K(@}Xc3d*l371W=2U6y5OY;4S0PD0O@)JrX2?xDdtGj+Vrpa6XG zJF54`->b}c`~LY$%iRtmUB5^um&?hrta4|v;^(lMga;@9t5p6p;mjl>$p>tt0&=0Uh~x)ukvV{$KJj0sm@jI&SWwU(kS}0sx-hN#|KXt(9XCvxD@Ky~Cx4-H-S6tf zpZvQd>6=f#!{i@uGZlazKK7iE-%{8FwRKxcw$E1Qg)`cnx>Ko5DMbnaz1{zRo;Jld zX|gz}2fzMhYq61jPwRedkN&zO>D1}(>q2jrBxx`+sL`<@6)t6U;#=n_1i(6(bt!N- z>?mLd6pgwH1OmD;a#fH1+h1Ff^vV<8H`^MvXm8_g$+px#SX{8pzyHWrtx6$i{dn2A zOFe44>pmqKc4}<&Bb`%^jy@oNbLzi26$q?{$|T?`U;9tfxOInu!Jv|fgr=sZbZs&`!e)5;!n{!NGPX6-G=epmmwEl%lS&fZ;R9Uwnu|+MLKf}8K ztak@+@$#<}3&xa;CsZ;eMO|01s9RYv5D01L+OU-KB)_FdG@_yOwMBz}Kl(R!oANP# zLt=|kjVUD>cIrZ3w^Ff`Qn8dq8;9rufc5SG#ZNhK7|)Bo|HoJ&pU+cGrDsNNmyWrq)X9pNgd_a{&Nuf)2oqxZ1XDs~&mw zs|tn!dg6zp@pMJ+09UH17`smou ztb)*x*dj?PT*~q;0PEcWWT*4`yN91p!AvU_boFXa=bV)XCPrj`S(ajfsN&I>&SlOo z8oY2Rt3YG8a>`GMk52)XmtPz?FOL6#buIut+o#TVUY7zsd7jaqeD`nXB;{ZI;P0(u zBw=J3?Hbx4C+sX5{KU7;TSp&|DbMr|_Vg*x7$*6Fo5UxQd`BOc|H~>!egLyne{`{4 zT~8$qafm~lrQ`TBC^-Og05@e9kp6btiVhKKKkG~!;t*%?IR2aZ8+cY&I6nW&AB#A| zA8;4H=0vnjWx(nbNRER?y;s5{u004m7&;J9n Wqx&~kr8c$z0000@S9k6U^_{`7wMc$s-F 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 KMNUMnLSTZf6jqr4 From bbb6aacc4ae4ab144a67dc71ccf0e0f073cccb7c Mon Sep 17 00:00:00 2001 From: bruberu <80226372+bruberu@users.noreply.github.com> Date: Mon, 29 Jul 2024 20:29:37 -0500 Subject: [PATCH 5/9] fix: NBT in the baking oven --- .../GTFOMaterialHandler.java | 6 ++++++ .../recipe/chain/CoreChain.java | 20 ++++++++++++++++++- .../gregtechfoodoption/utils/GTFOUtils.java | 17 +++++++++------- 3 files changed, 35 insertions(+), 8 deletions(-) diff --git a/src/main/java/gregtechfoodoption/GTFOMaterialHandler.java b/src/main/java/gregtechfoodoption/GTFOMaterialHandler.java index bdbb50a6..be4e7fc1 100644 --- a/src/main/java/gregtechfoodoption/GTFOMaterialHandler.java +++ b/src/main/java/gregtechfoodoption/GTFOMaterialHandler.java @@ -481,6 +481,12 @@ public class GTFOMaterialHandler { public static final Material VibrantExtract = fluidBuilder(21626, "vibrant_extract") .color(0x3dfff7) .build(); + public static final Material ApricotExtract = fluidBuilder(21627, "apricot_extract") + .color(0xe3de9d) + .build(); + public static final Material GrapeExtract = fluidBuilder(21628, "grape_extract") + .color(0xa83351) + .build(); public static final Material SweetenedDilutedCaneSyrupMixture = fluidBuilder(21970, "sweetened_diluted_cane_syrup_mixture") diff --git a/src/main/java/gregtechfoodoption/recipe/chain/CoreChain.java b/src/main/java/gregtechfoodoption/recipe/chain/CoreChain.java index fb6507da..90644319 100644 --- a/src/main/java/gregtechfoodoption/recipe/chain/CoreChain.java +++ b/src/main/java/gregtechfoodoption/recipe/chain/CoreChain.java @@ -181,6 +181,24 @@ public static void liquidFoodExtracts() { .fluidOutputs(CranberryExtract.getFluid(25)) .buildAndRegister(); + EXTRACTOR_RECIPES.recipeBuilder().EUt(2).duration(10) + .inputs(GRAPES.getStackForm()) + .circuitMeta(1) + .fluidOutputs(GrapeExtract.getFluid(25)) + .buildAndRegister(); + + EXTRACTOR_RECIPES.recipeBuilder().EUt(2).duration(10) + .inputs(WHITE_GRAPES.getStackForm()) + .circuitMeta(1) + .fluidOutputs(GrapeExtract.getFluid(25)) + .buildAndRegister(); + + EXTRACTOR_RECIPES.recipeBuilder().EUt(8).duration(40) + .inputs(APRICOT.getStackForm()) + .circuitMeta(1) + .fluidOutputs(ApricotExtract.getFluid(100)) + .buildAndRegister(); + CANNER_RECIPES.recipeBuilder() .inputs(APPLE_JUICE.getStackForm()) .fluidOutputs(AppleExtract.getFluid(100)) @@ -213,7 +231,7 @@ public static void liquidFoodExtracts() { .duration(30) .buildAndRegister(); - // the distillation are temporary + // the distillation is temporary DISTILLATION_RECIPES.recipeBuilder().EUt(120).duration(40) .fluidInputs(AppleExtract.getFluid(1000)) .fluidOutputs(Biomass.getFluid(200)) diff --git a/src/main/java/gregtechfoodoption/utils/GTFOUtils.java b/src/main/java/gregtechfoodoption/utils/GTFOUtils.java index 6a209222..1ea155cb 100644 --- a/src/main/java/gregtechfoodoption/utils/GTFOUtils.java +++ b/src/main/java/gregtechfoodoption/utils/GTFOUtils.java @@ -5,6 +5,9 @@ import gregtech.api.items.metaitem.stats.IItemComponent; import gregtech.api.recipes.RecipeMap; import gregtech.api.recipes.RecipeMaps; +import gregtech.api.recipes.ingredients.GTRecipeItemInput; +import gregtech.api.recipes.ingredients.nbtmatch.NBTCondition; +import gregtech.api.recipes.ingredients.nbtmatch.NBTMatcher; import gregtech.api.unification.OreDictUnifier; import gregtech.api.unification.ore.OrePrefix; import gregtech.api.util.RandomPotionEffect; @@ -194,7 +197,7 @@ public static RecipeMap stellarForgeProxy() { public static void addBakingOvenRecipes(ItemStack input, ItemStack output, int duration, int temperature, int fuelAmount) { BAKING_OVEN_RECIPES.recipeBuilder().duration(duration).temperature(temperature) - .inputs(input) + .inputNBT(new GTRecipeItemInput(input), NBTMatcher.ANY, NBTCondition.ANY) .input(OrePrefix.plank, Wood, fuelAmount * 2) .outputs(output) .buildAndRegister(); @@ -207,33 +210,33 @@ public static void addBakingOvenRecipes(ItemStack input, ItemStack output, int d ItemStack outputx8 = output.copy(); outputx8.setCount(output.getCount() * 8); BAKING_OVEN_RECIPES.recipeBuilder().duration(duration) - .inputs(inputx4) + .inputNBT(new GTRecipeItemInput(inputx4), NBTMatcher.ANY, NBTCondition.ANY) .input(gem, Coal, Math.max(fuelAmount, 1)) .outputs(outputx4) .buildAndRegister(); BAKING_OVEN_RECIPES.recipeBuilder().duration(duration) - .inputs(inputx4) + .inputNBT(new GTRecipeItemInput(inputx4), NBTMatcher.ANY, NBTCondition.ANY) .input(gem, Charcoal, Math.max(fuelAmount, 1)) .outputs(outputx4) .buildAndRegister(); BAKING_OVEN_RECIPES.recipeBuilder().duration(duration) - .inputs(inputx4) + .inputNBT(new GTRecipeItemInput(inputx4), NBTMatcher.ANY, NBTCondition.ANY) .input(dust, Coal, Math.max(fuelAmount, 1)) .outputs(outputx4) .buildAndRegister(); BAKING_OVEN_RECIPES.recipeBuilder().duration(duration) - .inputs(inputx4) + .inputNBT(new GTRecipeItemInput(inputx4), NBTMatcher.ANY, NBTCondition.ANY) .input(dust, Charcoal, Math.max(fuelAmount, 1)) .outputs(outputx4) .buildAndRegister(); if (!OreDictUnifier.get("dustAnthracite").isEmpty()) { BAKING_OVEN_RECIPES.recipeBuilder().duration(duration) - .inputs(inputx8) + .inputNBT(new GTRecipeItemInput(inputx8), NBTMatcher.ANY, NBTCondition.ANY) .input("gemAnthracite", Math.max(fuelAmount, 1)) .outputs(outputx8) .buildAndRegister(); BAKING_OVEN_RECIPES.recipeBuilder().duration(duration) - .inputs(inputx8) + .inputNBT(new GTRecipeItemInput(inputx8), NBTMatcher.ANY, NBTCondition.ANY) .input("dustAnthracite", Math.max(fuelAmount, 1)) .outputs(outputx8) .buildAndRegister(); From 90bd39174255f6ab7a38835a633292a9b3072af1 Mon Sep 17 00:00:00 2001 From: bruberu <80226372+bruberu@users.noreply.github.com> Date: Mon, 29 Jul 2024 20:52:42 -0500 Subject: [PATCH 6/9] feat: sorbet textures --- .../gregtechfoodoption/item/GTFOMetaItem.java | 17 +++++++++-------- .../items/metaitems/food/sorbet/apple.png | Bin 575 -> 4611 bytes .../items/metaitems/food/sorbet/apricot.png | Bin 575 -> 4606 bytes .../items/metaitems/food/sorbet/chorus.png | Bin 575 -> 378 bytes .../items/metaitems/food/sorbet/grape.png | Bin 575 -> 4608 bytes .../items/metaitems/food/sorbet/lime.png | Bin 575 -> 4609 bytes .../items/metaitems/food/sorbet/plain.png | Bin 575 -> 369 bytes .../items/metaitems/food/sorbet/vibrant.png | Bin 575 -> 4600 bytes 8 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java b/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java index 80a9d5c8..8279e918 100644 --- a/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java +++ b/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java @@ -1088,19 +1088,20 @@ public void registerSubItems() { ANTAF = addItem(344, "food.antaf").addComponents(new GTFOFoodStats(5, 0.5f, true, true, PLASTIC_BOTTLE.getStackForm()) .nutrients(0, 0.5f, 0f, 0f, 0f)); - SORBET_PLAIN = addItem(345, "food.sorbet_plain").addComponents(new GTFOFoodStats(0, 0f, false, true) + SORBET_PLAIN = addItem(345, "food.sorbet.plain").addComponents(new GTFOFoodStats(0, 0f, false, true) .nutrients(0, 0f, 0f, 0f, 0f).setEatingDuration(12)); - SORBET_APPLE = addItem(346, "food.sorbet_apple").addComponents(new GTFOFoodStats(0, 0f) + SORBET_APPLE = addItem(346, "food.sorbet.apple").addComponents(new GTFOFoodStats(0, 0f) .nutrients(0, 1f, 0f, 0f, 0f).setEatingDuration(12)); - SORBET_APRICOT = addItem(347, "food.sorbet_apricot").addComponents(new GTFOFoodStats(0, 0f) + SORBET_APRICOT = addItem(347, "food.sorbet.apricot").addComponents(new GTFOFoodStats(0, 0f) .nutrients(0, 1f, 0f, 0f, 0f).setEatingDuration(12)); - SORBET_CHORUS = addItem(348, "food.sorbet_chorus").addComponents(new GTFOFoodStats(0, 0f) - .nutrients(0, 0f, 0f, 0f, 1f).setEatingDuration(12)); - SORBET_GRAPE = addItem(349, "food.sorbet_grape").addComponents(new GTFOFoodStats(0, 0f) + SORBET_CHORUS = addItem(348, "food.sorbet.chorus").addComponents(new GTFOFoodStats(0, 0f) + .nutrients(0, 0f, 0f, 0f, 1f).setEatingDuration(12) + .setPotionEffects(new RandomPotionEffect(EnhancedChorusPotion.INSTANCE, 100, 0, 100 - 40))); + SORBET_GRAPE = addItem(349, "food.sorbet.grape").addComponents(new GTFOFoodStats(0, 0f) .nutrients(0, 1f, 0f, 0f, 0f).setEatingDuration(12)); - SORBET_LIME = addItem(350, "food.sorbet_lime").addComponents(new GTFOFoodStats(0, 0f) + SORBET_LIME = addItem(350, "food.sorbet.lime").addComponents(new GTFOFoodStats(0, 0f) .nutrients(0, 1f, 0f, 0f, 0f).setEatingDuration(12)); - SORBET_VIBRANT = addItem(351, "food.sorbet_vibrant").addComponents(new GTFOFoodStats(0, 0f) + SORBET_VIBRANT = addItem(351, "food.sorbet.vibrant").addComponents(new GTFOFoodStats(0, 0f) .nutrients(0, 2f, 0f, 0f, 2f).setEatingDuration(12)); FERMENTED_CHORUS = addItem(352, "food.fermented_chorus").addComponents(new GTFOFoodStats(0, 0f, false, true) diff --git a/src/main/resources/assets/gregtech/textures/items/metaitems/food/sorbet/apple.png b/src/main/resources/assets/gregtech/textures/items/metaitems/food/sorbet/apple.png index cb0e5e0aadee4fe3391b5fb4f488f87f5bff9ea3..a02683c9962f76fbc762f62100eaa199ad7ebf8d 100755 GIT binary patch literal 4611 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 diff --git a/src/main/resources/assets/gregtech/textures/items/metaitems/food/sorbet/apricot.png b/src/main/resources/assets/gregtech/textures/items/metaitems/food/sorbet/apricot.png index cb0e5e0aadee4fe3391b5fb4f488f87f5bff9ea3..a6205651f17c300b27c69d1b60554a7eee9170cf 100755 GIT binary patch literal 4606 zcmeHKYfuzd7H%Mdu%!?e5QQY|poy;ZboVebOm{JmVP;?^I)H+L4>tC6_dpBtaJpdz z6jKqEAR2ij(ImbfB<{M#7$23-Mz-Smz$mM-vbTqaP)XGmRhxfI zRZri(_nhyX^PO`~-CLHLoHQ6yY@$^|=| zb_Jqr`b!*>aIMzJSE3BFm~}6->J3ip2oNDG(4Yl{>x3L zzK!?G`f&0tVd6r5Md6L|z>dd6^CUyWhurc3n~+UrOr zLf2%}%sn*a!0d%PZWc^X&p#SBeVhhe^5bXko-A{fCES(dAAINj$MP#<1dwW&s}b|7#N?w0(@ zc!T$xh^G3bR7s^)r(0d3m{z7gYqqHC2^8j}xa}el>`` zO9d>`XEv^Qxq5AOaonfX55lVdc(pj|&-JN?pZmVNB4ahx#+1a?(cx9-7bUy)2R9$< zFjj|8joEYHcn|W|OXfE+550dzTCuysv9ILo@u6&5kx}?O;dAT=S z+q+ip+;!sUAM)dN8z}!X&9HZfB0Y7@hOmsSuN^-Uy0f8U)0(Kd>a(?V*9>P+?ZkJb zA!E-)nZqaF+#A@jwdZ_W+Xu)mqa; zJR$k}os*V6aCdb3RQ)WNLchHw1?B1HKpAG5W|OqtDy0~^nU%V&4p5&E6dUh$P;@RU zz-Bg^v#BL_>gpvh$EYP43KM2>XxSXjP~>FOijvdmqFkC_B=Kg|&7k3(KW)DTe6XT!Bmy7XZgP84EdAm)H*hzSNQ& zL2!^L>TWOEJ`HMTcteg1!KN^gHyc8hkp~&FEZ~x92-) zR$su{gvg-~3_Ymt$am&>!eMBX&10=Vlm}MvVJ4G|rqn?Vk%DZ_>hNd*vWH0uoaGr= z!+aB0JmCy=1gH<<4wD{;-6IU7OeRuir}IVkj5@VMv`;d2nqx@MkdBU45EhC?a7;lV zasuRpz?BvxT1KnntVI#6RH=qQ8Ew2k*=SaT0^m{(;Lr+%9H&_&LSYP!$jvGWQDJ5p zv9N?nsbn#^OhpZWNO5wYDyh7oUWrf)fU;mTgqYEq4AiA;(;n@P>11Pf45OJ;MneD|}3bk54A z36#ht9wU=Q18=bUVp>QL3?P;g>l6TZG(aq**2z+W z-I;E;=cy&4OR%UpxNHL3iJ=5aM+qzd#bk04iy>u1x(p)~I2a?Cg2aZ%+ZoPM_`jsZ z%>&2wrQE>rz8PxmBh#&Bs@4l8B>5QYGfen}YGA22HRjDd(_(O+;9>k$~zWPo1Z9B5vk7ovmB zu%9!r?fizn{#^Wq76A09krDAbO4le|BVu4g!lTtSO4o=O7?JR3b^YJy3V3#%Vr}3Q z#R7WEt4S2|2KMSj>2H{6ui!US!m1(hW`YlCUKWh69aJ zXm$7EGrhf~_cGpj{r8XW1x)EZ_q4tDjYsR(r}NP9HTSj^=E_t-T@xp{2>V$5-I+q` zjQGxJx8OuGvUb7r;>2SYug4`k-S@>mx_s8vzOd>xER-G$3irm!ze4r|W6%G@FCH)H zxF1u!J*()2hK819MCXA7+^3{PBTcL+d+TFH(vh(FWM^FIJ*w+*?{^P<_cvZbt7h(f z<+#`NAmLRkK$=%K<=hNuV*+I0G0ZDQb!DtY;XE2a2n;nMQumaSuZmX^Q&yUop}2hEyw z=gmUC>LRp%YKh+we;=REmtNTyp*Adg6c&23Hb4@Zuy6Zi-I$H*7VHT*9R|IZ(tc^H z^6uK6-uT?t&Z?({&WPL0g6(c A;{X5v delta 491 zcmVEX>4Tx04R}lkv~YoKorKmwn`N$7L+35 zkfAzRkSZcLS%o5039&*Im*i60LX(C|ii@M*T5u3u{I@td>Ehtv>Le(FIEuUIq9wjd z#1?4|lK0EUdtdIp1HuK&j6W48?0+DCn#%#^kj)9pE(i<%;c?9(D0GGEdP1^^qc7dTM zOXcd{ZPCB|+-OC_>+BK8Q&zb<;NTD#E0Nbmz&U%`b0Z7rNq9X0`TYP;f^;*B>BCn5 z000JJOGiWi{{a60|De66laoFW9t!3O763al_sO;+lV%VnEdUouL_t(Y$75g^1*2dT hjDk@x3P!<52LK2V00HKa^}+xE002ovPDHLkV1kd#-o*d_ diff --git a/src/main/resources/assets/gregtech/textures/items/metaitems/food/sorbet/chorus.png b/src/main/resources/assets/gregtech/textures/items/metaitems/food/sorbet/chorus.png index cb0e5e0aadee4fe3391b5fb4f488f87f5bff9ea3..d1db76a770286b283fb5e8ea5ddb4a53d793e9c3 100755 GIT binary patch delta 363 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 JUoEX>4Tx04R}lkv~YoKorKmwn`N$7L+35 zkfAzRkSZcLS%o5039&*Im*i60LX(C|ii@M*T5u3u{I@td>Ehtv>Le(FIEuUIq9wjd z#1?4|lK0EUdtdIp1HuK&j6W48?0+DCn#%#^kj)9pE(i<%;c?9(D0GGEdP1^^qc7dTM zOXcd{ZPCB|+-OC_>+BK8Q&zb<;NTD#E0Nbmz&U%`b0Z7rNq9X0`TYP;f^;*B>BCn5 z000JJOGiWi{{a60|De66laoCV9t!3O763al_sO;+lVuPmEdUouL_t(Y$75g^1*2dT hjDk@x3P!<52LK2V00HKa^}+xE002ovPDHLkV1l2F-bMfb diff --git a/src/main/resources/assets/gregtech/textures/items/metaitems/food/sorbet/lime.png b/src/main/resources/assets/gregtech/textures/items/metaitems/food/sorbet/lime.png index cb0e5e0aadee4fe3391b5fb4f488f87f5bff9ea3..6beeac5b7a40d9332506fba2da5d828121199f86 100755 GIT binary patch literal 4609 zcmeHKc~BHr8XqE{A*h%|P{G&?ikh{jyN8~u!$5EboH33fGYV{6q^G-Q=r~6+(=a2( z14S!}8iX>tUhyEBSh`vsi3+>QY7|`Yh~=@XE=G$LVq7(xqHNgL!yzQ8+Olf%A5+!y zy1)1Pe((E!?|ZM_Tb(j<+R&geK_Zc8s9vW{1#O7%gam^BSyZ$bG>`I4>3k~bfjF1b z!rB;!U&t{K<7F)(k@wcR*|&$DL5Fm-g^u+bv;R8pQ;^<=_1y>V~qhDt7mJ6YJ$ za_2OqI1q_%+zeZn@7$vI2y0P;MqCd{uf~+oE8cZl; z^mpai7k~I}{jB)n@7o|NbjZ2qY{JvT)0cFM)bEtpzP$74S2g^x{1emfZFNmq^Tmwa zv?g=Y(RVL16U#5!s&-rpP#4Vpcy8dt%n3nJYpz{N%}ZmIZ-|Qm9&@FI4+3v$yr&QP z2cU}i*BU~bj9cC-8`paI$mxhN?RiJGPT$ff68SA>HJTK?M$?lw$aZV)h6LSfvm>ic zeL$|*pwVgzSI8!;PC9BS@DDQwhQXd$#=lmquPFWG+>SZfAN}t6FXj?ELPHbr zifQnKn{5j>yjeT^ac%v{jwN>&J$WJOoHHkT?ySfw{Oy`OB^x@PCy)R8yCKw5GAJi0 z{oIE!rK_xq;}4a#j4I8nUHtofr&5mke_K?XR!H8WSHx9N5hcj^6}$F_Rv)X=mqv_N ze0HF`13q!hyfpprrVEndvN~?>itEF|7-RJ1;<5n4=cf{$xDp#Bs-1Hd-1ls6EZn*4 zM$;&8;1+lhL-sztrB? zHLl9f`uB}E8rh*UtBk`_+XJ0s@i{bc;z=3I(yg6Jyog~guAI> z^am~8y0$?j&AcJ(ACDxUI=w8Y!gRw7f^ym=B<(aa60e;Dd!d6Ty|BX_El_lEXc;%(b=iFB&=kVh7(0Nv!KhfjA*bmLDZL(o1XkA0`MiMG{g6Csc_~)E*n}Qm zI(-8H?!CPI&^@{PzyM`15LzddD}<-ls>Qk+1f0LcJhNuf>wfzJ+dAv7+AD>&w zH50a-U-8#H7r){NfO=q%SJHPtt^v7TNr6`a4^-EHT(6|SD}e{9>;EQK(97!-;{c~1 z54bGNcsl+(xM&5M-QgngxD6jwil46%hoi?Khp*@ji@nCjS{)5)7}qU<#`sl?6(by(1>}p zJ3iXmWpiD{0At+;pi**^Q_{hs}QJh5!` z9n#HL)z8L6F8n3`~CbW%8wds%}-cT-}l`EX>4Tx04R}lkv~YoKorKmwn`N$7L+35 zkfAzRkSZcLS%o5039&*Im*i60LX(C|ii@M*T5u3u{I@td>Ehtv>Le(FIEuUIq9wjd z#1?4|lK0EUdtdIp1HuK&j6W48?0+DCn#%#^kj)9pE(i<%;c?9(D0GGEdP1^^qc7dTM zOXcd{ZPCB|+-OC_>+BK8Q&zb<;NTD#E0Nbmz&U%`b0Z7rNq9X0`TYP;f^;*B>BCn5 z000JJOGiWi{{a60|De66laoCV9t!3O763al_sO;+lVuPmEdUouL_t(Y$75g^1*2dT hjDk@x3P!<52LK2V00HKa^}+xE002ovPDHLkV1l7{-bVlc diff --git a/src/main/resources/assets/gregtech/textures/items/metaitems/food/sorbet/plain.png b/src/main/resources/assets/gregtech/textures/items/metaitems/food/sorbet/plain.png index cb0e5e0aadee4fe3391b5fb4f488f87f5bff9ea3..9a0e22591453dc5f01de1a2a623b4473f8afaf67 100755 GIT binary patch delta 354 zcmdnb@{wtRL_G%^0|SHn=l_X7inG8YvY3G(#tnoSMW#4AGB7Z5db&7sD0s~_<1G9t!!-&wI|OVzpfCS!G(k#|^EC zE({Hhi;`L5_RY5PoT9TK{DZ@V=8NUiQm1r&H{i)R*qq$+O}xz5!Y@9^Ho|UY688<0 zlWq>d(?fXqrf!ek@wWf$0p^ckp?fx3SajZKC|Pn^=EwTd*xUI|q5BJ&WY!8QEO;7l yDb)4ozqI=ej8hxl&*9q$3@g6W2+uTMUj{88n*)eJ;8O5p5asFW=d#Wzp$P!vl8Qe7 delta 562 zcmV-20?qyL0>1>17=I830000_VUcK;^5%w zBq)M7io58dCB93<7HJNW_shq7U+%sG!WUI$*j*EVVLDvNW`Cr@+PV~dMK2NnW-*{L z+nST*90J$p145$Sr-WB%NZy(LJEqaNVyH*KM8xk!Rq>Y|Yn>fte4|8!at)1oZC! zm$xlV+Xt?8fuSc$9>=DRQR=GRi;C~PpE0Nbmz&U%`a|`H6cs&96 z{QyvcbTfAIEM!`r200tkKDum!rZt5uI$MBG)Xy^|o~**&MnbGrYLb0#x$ z@9+EF@B4kr8 z&0-)v*TF!Hhqa1Co`#~iAKGis0i92$<@FnM^LMv2>o?|kbuZ#AWr~f{M+_W9iEkMj znwt-`XOB|H&p(iIXk+@_yI+?m#+)d_O1EJ_Th8@OxDn8Ic$sYW?P_;Ro$K0!xVHP- zz2&CyAAFAF4PBP|P28Z?j{HQlSgZOnbYczk&-71sE%eTPVqL%27Op$^k8;a`xQlz% z*3|G$B%6H)(5wXt-23Kmw7fv6i&Sw7>6&|eM?~oP0+ST11^rY?|oFb zXkbwKgU|MTIr+N;o4x48;g{O*0@1j%oD?XOBa*01H`;?zR2f%a-Esj(Z7bKac?Lh347jiqBJ zsXr}0)d_!o&GJ#&k>8(}7Vm0x{K@;(kWeN$>{9Wr0Mp*8sE5wzHYvU%Wyv@0?QMlS zcAh>lJv(w&EIIIe9V8y1G$*bu8kM?r_Nn8cJE~hZua2lJy>PO!IrcoFAGuLFV!#&> zma$`Q?;hH^wewO#!W zzVnyW)e{^A&DXE#TdWgDEyqHVf2f3CG+rzkQGDp*45;?N)uGi_Fm&$D8+&T;=Y;F= zozaV*cv_$K-O$dPLjQhW3hL9tf;vny%^@hxCM9Xk!bm+f2PjaHNE_vGkkk@}hb&A6 zYu8C0R#r(Mmexs9l_u2W&@-8AY@U-z&Wkrwc}pmqmPADcX*~oWurWLdd2CsB7va%K ze7ppB7Mc+W45W}Mq$nKYVRK}X$RJ4Tq^(4fVP+Qvc+*KTdEP-F zh}-R!y5&;NnSo$9jw7fHk;!0yfL*zEp7g+WSC~NI=P)oX%E>x-ma{_wCu!lbd7VT8 z`k`0;*&HTQH@)4}r2^0c@sJJ#lcI>thV-;>@i94oq|2e7v~ZchbViaG7nkj%n3x>K z&WH7+ps8+qN47J|7YOvSWR3>T9V8H6pRj#kv z*`Fu{T8%MQnpVJ!Os#+wGC2j4xC({kG_9gQF;SGP9vKv3@>Z>4XqT)lF=l>%=C?yas~x!y{Fw*vQ8*Z)nfpx4JK#twEt zZg5zND7|wH9JB&0akC7fQ1BFaV^vKDxDRy1e&7;`q+!C<$Fn;s2Q>EQji#9XcluB0 zBOkV3+ai2S7|q9|@p{fC?8-&H%_2iXZkEr4gw0~=${{1cf!k~}M4Mx4FQ(|?`bGyA zj7*qREIVG)RR7n5g`EKh%Y(Bb5+;ulRRh zVx#h&SJ!guOzZl+^Z!+6n))cfT5Wx2z@ZCyTSTSf-z$;q(3V_I?Gw0ZMOD#nxNlW6 z%IlAYe1BhDl(TH?BJum&(Z|*U2TqP^`!(}z+2dy&0f&#w(=Ot~akXpKR*1)4npORM zVC=SIcc;r|r*9U|G0eOZ{-5+Ia;%m0m=Qc)i?<}ZTID7H_n^OwTh#$~$<1a*$Usn9qEMC86{*#9*uN?mKu+`;_ z58F2Nac)K0xW7f!Y)(}nct!51>e{*h)V=y;_#Sik)Jcpu#CK9Q#>5-SXQZ$CFX7yz Au>b%7 delta 491 zcmVEX>4Tx04R}lkv~YoKorKmwn`N$7L+35 zkfAzRkSZcLS%o5039&*Im*i60LX(C|ii@M*T5u3u{I@td>Ehtv>Le(FIEuUIq9wjd z#1?4|lK0EUdtdIp1HuK&j6W48?0+DCn#%#^kj)9pE(i<%;c?9(D0GGEdP1^^qc7dTM zOXcd{ZPCB|+-OC_>+BK8Q&zb<;NTD#E0Nbmz&U%`b0Z7rNq9X0`TYP;f^;*B>BCn5 z000JJOGiWi{{a60|De66laoIX9t!3O763al_sO;+lV=boEdUouL_t(Y$75g^1*2dT hjDk@x3P!<52LK2V00HKa^}+xE002ovPDHLkV1k6Z-oXF> From 8a89d14b57b6b290322ba5bc352c2ad1a2e81582 Mon Sep 17 00:00:00 2001 From: bruberu <80226372+bruberu@users.noreply.github.com> Date: Mon, 29 Jul 2024 21:11:36 -0500 Subject: [PATCH 7/9] feat: your favorite naquadah chips --- .../java/gregtechfoodoption/item/GTFOMetaItem.java | 12 +++++++++++- .../gregtechfoodoption/recipe/chain/ChorusChain.java | 7 +++++++ .../recipe/chain/PotatoProcessingChain.java | 8 ++++++++ 3 files changed, 26 insertions(+), 1 deletion(-) diff --git a/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java b/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java index 8279e918..8c9c268e 100644 --- a/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java +++ b/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java @@ -411,6 +411,9 @@ public class GTFOMetaItem extends MetaItem imple public static MetaItem.MetaValueItem ANTAF; public static MetaItem.MetaValueItem FERMENTED_CHORUS; + public static MetaItem.MetaValueItem FERMENTED_CHORUS_PIE; + + public static MetaItem.MetaValueItem NAQUADAH_CHIPS; public GTFOMetaItem() { super((short) 0); @@ -1104,9 +1107,16 @@ public void registerSubItems() { SORBET_VIBRANT = addItem(351, "food.sorbet.vibrant").addComponents(new GTFOFoodStats(0, 0f) .nutrients(0, 2f, 0f, 0f, 2f).setEatingDuration(12)); - FERMENTED_CHORUS = addItem(352, "food.fermented_chorus").addComponents(new GTFOFoodStats(0, 0f, false, true) + FERMENTED_CHORUS = addItem(352, "food.fermented_chorus").addComponents(new GTFOFoodStats(2, 0.5f, false, true) .nutrients(0, 0f, 0f, 0f, 2f).setEatingDuration(60) .setPotionEffects(new RandomPotionEffect(EnhancedChorusPotion.INSTANCE, 100, 0, 100 - 80))); + FERMENTED_CHORUS_PIE = addItem(353, "food.pie.fermented_chorus").addComponents(new GTFOFoodStats(6, 1f, false, true) + .nutrients(0, 0f, 2f, 0f, 2f) + .setPotionEffects(new RandomPotionEffect(EnhancedChorusPotion.INSTANCE, 200, 0, 100 - 100))); + + NAQUADAH_CHIPS = addItem(354, "food.naquadah_chips").addComponents(new GTFOFoodStats(GTFOConfig.gtfoFoodConfig.chipHunger, GTFOConfig.gtfoFoodConfig.chipSaturation, false, true, () -> OreDictUnifier.get(OrePrefix.foil, RhodiumPlatedPalladium)) + .nutrients(0, 0f, 1f, 0f, 1f) + .setPotionEffects(new RandomPotionEffect(MobEffects.BLINDNESS, 500, 0, 100 - 100))); UNKNOWN_SEED = addItem(158, "seed.unknown"); ONION_SEED = addItem(159, "seed.onion"); diff --git a/src/main/java/gregtechfoodoption/recipe/chain/ChorusChain.java b/src/main/java/gregtechfoodoption/recipe/chain/ChorusChain.java index e469c9cc..6aa15064 100644 --- a/src/main/java/gregtechfoodoption/recipe/chain/ChorusChain.java +++ b/src/main/java/gregtechfoodoption/recipe/chain/ChorusChain.java @@ -4,6 +4,7 @@ import gregtech.api.unification.ore.OrePrefix; import gregtechfoodoption.GTFOMaterialHandler; import gregtechfoodoption.item.GTFOMetaItem; +import gregtechfoodoption.recipe.GTFORecipeMaps; import net.minecraft.init.Items; import static gregtech.api.GTValues.*; @@ -53,6 +54,12 @@ public static void init() { .inputs(GTFOMetaItem.FERMENTED_CHORUS.getStackForm()) .fluidOutputs(GTFOMaterialHandler.FermentedChorusJuice.getFluid(50)) .buildAndRegister(); + GTFORecipeMaps.CUISINE_ASSEMBLER_RECIPES.recipeBuilder().EUt(16).duration(300) + .inputs(PIE_CRUST.getStackForm()) + .fluidInputs(GTFOMaterialHandler.FermentedChorusJuice.getFluid(1000)) + .outputs(FERMENTED_CHORUS_PIE.getStackForm()) + .buildAndRegister(); + RecipeMaps.MIXER_RECIPES.recipeBuilder().EUt(60).duration(20) .fluidInputs(GTFOMaterialHandler.FermentedChorusJuice.getFluid(1000)) .input(Items.SUGAR, 9) diff --git a/src/main/java/gregtechfoodoption/recipe/chain/PotatoProcessingChain.java b/src/main/java/gregtechfoodoption/recipe/chain/PotatoProcessingChain.java index adb3b03f..8c3f9f60 100644 --- a/src/main/java/gregtechfoodoption/recipe/chain/PotatoProcessingChain.java +++ b/src/main/java/gregtechfoodoption/recipe/chain/PotatoProcessingChain.java @@ -1,5 +1,6 @@ package gregtechfoodoption.recipe.chain; +import gregtech.api.unification.material.Materials; import gregtechfoodoption.GTFOMaterialHandler; import gregtech.api.recipes.ModHandler; import gregtechfoodoption.utils.GTFOUtils; @@ -93,6 +94,13 @@ public static void init() { .input(foil, StainlessSteel) .outputs(REDUCED_FAT_CHIPS.getStackForm()) .buildAndRegister(); + + CANNER_RECIPES.recipeBuilder().EUt(64).duration(100) + .fluidInputs(Naquadah.getFluid(10)) + .inputs(REDUCED_FAT_POTATO_SLICE.getStackForm(40)) + .input(foil, RhodiumPlatedPalladium) + .outputs(NAQUADAH_CHIPS.getStackForm()) + .buildAndRegister(); CHEMICAL_BATH_RECIPES.recipeBuilder().EUt(60).duration(1000) .inputs(POTATO_STRIP.getStackForm(40)) .fluidInputs(GTFOMaterialHandler.FryingOil.getFluid(700)) From edcf64a971d3594b1ac921b32a345ec1e83e936d Mon Sep 17 00:00:00 2001 From: bruberu <80226372+bruberu@users.noreply.github.com> Date: Wed, 31 Jul 2024 12:00:24 -0500 Subject: [PATCH 8/9] feat: localization for now --- .../gregtechfoodoption/item/GTFOMetaItem.java | 11 +++-- .../potion/EnhancedChorusPotion.java | 44 +++++++++++------- .../potion/LungCancerPotion.java | 4 ++ .../potion/VentingPotion.java | 13 ++---- .../utils/GTFODamageSources.java | 2 +- .../item/metaitems/food/naquadah_chips.json | 6 +++ .../items/metaitems/food/naquadah_chips.png | Bin 0 -> 2097 bytes .../metaitems/food/naquadah_chips.png.mcmeta | 6 +++ .../assets/gregtechfoodoption/lang/en_us.lang | 16 ++++++- .../textures/gui/potions.png | Bin 13168 -> 13985 bytes 10 files changed, 71 insertions(+), 31 deletions(-) create mode 100755 src/main/resources/assets/gregtech/models/item/metaitems/food/naquadah_chips.json create mode 100755 src/main/resources/assets/gregtech/textures/items/metaitems/food/naquadah_chips.png create mode 100755 src/main/resources/assets/gregtech/textures/items/metaitems/food/naquadah_chips.png.mcmeta diff --git a/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java b/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java index 8c9c268e..a6dd2c1a 100644 --- a/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java +++ b/src/main/java/gregtechfoodoption/item/GTFOMetaItem.java @@ -1099,20 +1099,23 @@ public void registerSubItems() { .nutrients(0, 1f, 0f, 0f, 0f).setEatingDuration(12)); SORBET_CHORUS = addItem(348, "food.sorbet.chorus").addComponents(new GTFOFoodStats(0, 0f) .nutrients(0, 0f, 0f, 0f, 1f).setEatingDuration(12) - .setPotionEffects(new RandomPotionEffect(EnhancedChorusPotion.INSTANCE, 100, 0, 100 - 40))); + .setPotionEffects(new RandomPotionEffect(EnhancedChorusPotion.INSTANCE, 600, 0, 100 - 80))); SORBET_GRAPE = addItem(349, "food.sorbet.grape").addComponents(new GTFOFoodStats(0, 0f) .nutrients(0, 1f, 0f, 0f, 0f).setEatingDuration(12)); SORBET_LIME = addItem(350, "food.sorbet.lime").addComponents(new GTFOFoodStats(0, 0f) .nutrients(0, 1f, 0f, 0f, 0f).setEatingDuration(12)); SORBET_VIBRANT = addItem(351, "food.sorbet.vibrant").addComponents(new GTFOFoodStats(0, 0f) - .nutrients(0, 2f, 0f, 0f, 2f).setEatingDuration(12)); + .nutrients(0, 2f, 0f, 0f, 2f).setEatingDuration(12) + .setPotionEffects(new RandomPotionEffect(CreativityPotion.INSTANCE, 1200, 0, 100 - 80), + new RandomPotionEffect(MobEffects.POISON, 1200, 2, 100 - 100), + new RandomPotionEffect(MobEffects.NAUSEA, 1200, 1, 100 - 40))); FERMENTED_CHORUS = addItem(352, "food.fermented_chorus").addComponents(new GTFOFoodStats(2, 0.5f, false, true) .nutrients(0, 0f, 0f, 0f, 2f).setEatingDuration(60) - .setPotionEffects(new RandomPotionEffect(EnhancedChorusPotion.INSTANCE, 100, 0, 100 - 80))); + .setPotionEffects(new RandomPotionEffect(EnhancedChorusPotion.INSTANCE, 300, 0, 100 - 80))); FERMENTED_CHORUS_PIE = addItem(353, "food.pie.fermented_chorus").addComponents(new GTFOFoodStats(6, 1f, false, true) .nutrients(0, 0f, 2f, 0f, 2f) - .setPotionEffects(new RandomPotionEffect(EnhancedChorusPotion.INSTANCE, 200, 0, 100 - 100))); + .setPotionEffects(new RandomPotionEffect(EnhancedChorusPotion.INSTANCE, 1200, 0, 100 - 100))); NAQUADAH_CHIPS = addItem(354, "food.naquadah_chips").addComponents(new GTFOFoodStats(GTFOConfig.gtfoFoodConfig.chipHunger, GTFOConfig.gtfoFoodConfig.chipSaturation, false, true, () -> OreDictUnifier.get(OrePrefix.foil, RhodiumPlatedPalladium)) .nutrients(0, 0f, 1f, 0f, 1f) diff --git a/src/main/java/gregtechfoodoption/potion/EnhancedChorusPotion.java b/src/main/java/gregtechfoodoption/potion/EnhancedChorusPotion.java index 8980ebde..9f353d16 100644 --- a/src/main/java/gregtechfoodoption/potion/EnhancedChorusPotion.java +++ b/src/main/java/gregtechfoodoption/potion/EnhancedChorusPotion.java @@ -2,38 +2,48 @@ import gregtechfoodoption.client.GTFOClientHandler; import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.init.SoundEvents; import net.minecraft.util.SoundCategory; import net.minecraft.util.math.MathHelper; +import net.minecraft.util.math.Vec3d; public class EnhancedChorusPotion extends GTFOPotion { public static final String TAG_NAME = "gregtechfoodoption - enhanced chorus"; public static EnhancedChorusPotion INSTANCE = null; public EnhancedChorusPotion() { - super("enhancedchorus", false, 0xFF052B, 7); + super("enhancedchorus", false, 0xFF052B, 9); INSTANCE = this; } @Override public void performEffect(EntityLivingBase entityLiving, int amplifier) { // Chorus fruit moment - if (Math.random() < 0.025 * (amplifier + 1)) { - double playerX = entityLiving.posX; - double playerY = entityLiving.posY; - double playerZ = entityLiving.posZ; - - for(int i = 0; i < 16; ++i) { - double newX = entityLiving.posX + (entityLiving.getRNG().nextDouble() - 0.5) * 16.0; - double newY = MathHelper.clamp(entityLiving.posY + (double)(entityLiving.getRNG().nextInt(16) - 8), 0.0, entityLiving.getEntityWorld().getActualHeight() - 1); - double newZ = entityLiving.posZ + (entityLiving.getRNG().nextDouble() - 0.5) * 16.0; - if (entityLiving.isRiding()) { - entityLiving.dismountRidingEntity(); - } - if (entityLiving.attemptTeleport(newX, newY, newZ)) { - entityLiving.getEntityWorld().playSound(null, playerX, playerY, playerZ, GTFOClientHandler.AMOGUS_VENT, SoundCategory.PLAYERS, 1.0F, 1.0F); - entityLiving.playSound(GTFOClientHandler.AMOGUS_VENT, 1.0F, 1.0F); - break; + if (entityLiving instanceof EntityPlayer player) { + // Chorus fruit moment + if (entityLiving.ticksExisted % 20 == 0 && player.isSneaking()) { + double playerX = entityLiving.posX; + double playerY = entityLiving.posY; + double playerZ = entityLiving.posZ; + + for (int i = 0; i < 16; ++i) { + Vec3d look = entityLiving.getLookVec(); + + double newX = entityLiving.posX + look.x * 8 + Math.random() * 2; + double newY = MathHelper.clamp(entityLiving.posY + 8 * look.y + Math.random(), 0.0, entityLiving.getEntityWorld().getActualHeight() - 1); + double newZ = entityLiving.posZ + look.z * 8 + Math.random() * 2; + if (entityLiving.isRiding()) { + entityLiving.dismountRidingEntity(); + } + + if (entityLiving.attemptTeleport(newX, newY, newZ)) { + entityLiving.getEntityWorld().playSound(null, playerX, playerY, playerZ, SoundEvents.ITEM_CHORUS_FRUIT_TELEPORT, SoundCategory.PLAYERS, 1.0F, 1.0F); + entityLiving.playSound(SoundEvents.ITEM_CHORUS_FRUIT_TELEPORT, 1.0F, 1.0F); + player.fallDistance = 0; + break; + } } } } diff --git a/src/main/java/gregtechfoodoption/potion/LungCancerPotion.java b/src/main/java/gregtechfoodoption/potion/LungCancerPotion.java index 6516b248..6e2f34b5 100644 --- a/src/main/java/gregtechfoodoption/potion/LungCancerPotion.java +++ b/src/main/java/gregtechfoodoption/potion/LungCancerPotion.java @@ -1,5 +1,6 @@ package gregtechfoodoption.potion; +import gregtechfoodoption.utils.GTFODamageSources; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.SharedMonsterAttributes; import net.minecraft.entity.ai.attributes.IAttributeInstance; @@ -39,6 +40,9 @@ public void performEffect(EntityLivingBase entity, int amplifier) { if (phase % 600 == 0) { IAttributeInstance attr = entity.getEntityAttribute(SharedMonsterAttributes.MAX_HEALTH); attr.setBaseValue(attr.getBaseValue() - 1); + if (attr.getBaseValue() <= 0) { + entity.onDeath(GTFODamageSources.LUNG_CANCER); + } entity.setHealth((float) attr.getBaseValue()); } } diff --git a/src/main/java/gregtechfoodoption/potion/VentingPotion.java b/src/main/java/gregtechfoodoption/potion/VentingPotion.java index 4b81bce4..00f90c16 100644 --- a/src/main/java/gregtechfoodoption/potion/VentingPotion.java +++ b/src/main/java/gregtechfoodoption/potion/VentingPotion.java @@ -24,19 +24,16 @@ public void performEffect(EntityLivingBase entityLiving, int amplifier) { double playerY = entityLiving.posY; double playerZ = entityLiving.posZ; - for (int i = 0; i < 16; ++i) { - Vec3d look = entityLiving.getLookVec(); - - double newX = entityLiving.posX + (entityLiving.getRNG().nextDouble() - 0.5 + look.x) * 16.0; - double newY = MathHelper.clamp(entityLiving.posY + (entityLiving.getRNG().nextInt(8) - 4 + 4 * look.y), 0.0, entityLiving.getEntityWorld().getActualHeight() - 1); - double newZ = entityLiving.posZ + (entityLiving.getRNG().nextDouble() - 0.5 + look.z) * 16.0; + for(int i = 0; i < 16; ++i) { + double newX = entityLiving.posX + (entityLiving.getRNG().nextDouble() - 0.5) * 16.0; + double newY = MathHelper.clamp(entityLiving.posY + (double)(entityLiving.getRNG().nextInt(16) - 8), 0.0, entityLiving.getEntityWorld().getActualHeight() - 1); + double newZ = entityLiving.posZ + (entityLiving.getRNG().nextDouble() - 0.5) * 16.0; if (entityLiving.isRiding()) { entityLiving.dismountRidingEntity(); } if (entityLiving.attemptTeleport(newX, newY, newZ)) { - entityLiving.getEntityWorld().playSound(null, playerX, playerY, playerZ, SoundEvents.ITEM_CHORUS_FRUIT_TELEPORT, SoundCategory.PLAYERS, 1.0F, 1.0F); - entityLiving.playSound(SoundEvents.ITEM_CHORUS_FRUIT_TELEPORT, 1.0F, 1.0F); + entityLiving.getEntityWorld().playSound(null, playerX, playerY, playerZ, GTFOClientHandler.AMOGUS_VENT, SoundCategory.PLAYERS, 1.0F, 1.0F); break; } } diff --git a/src/main/java/gregtechfoodoption/utils/GTFODamageSources.java b/src/main/java/gregtechfoodoption/utils/GTFODamageSources.java index d58c2df2..312e357b 100644 --- a/src/main/java/gregtechfoodoption/utils/GTFODamageSources.java +++ b/src/main/java/gregtechfoodoption/utils/GTFODamageSources.java @@ -9,7 +9,7 @@ public class GTFODamageSources { public static FakePlayer EXTERMINATOR; public static final DamageSource EXTRACTION = new DamageSource("extraction").setDamageBypassesArmor(); public static final DamageSource CYANIDE = new DamageSource("cyanide").setDamageBypassesArmor(); - + public static final DamageSource LUNG_CANCER = new DamageSource("cyanide").setDamageBypassesArmor(); public static DamageSource getExterminationDamage(World worldIn) { return new EntityDamageSource("extermination", EXTERMINATOR).setDamageBypassesArmor(); diff --git a/src/main/resources/assets/gregtech/models/item/metaitems/food/naquadah_chips.json b/src/main/resources/assets/gregtech/models/item/metaitems/food/naquadah_chips.json new file mode 100755 index 00000000..40427b67 --- /dev/null +++ b/src/main/resources/assets/gregtech/models/item/metaitems/food/naquadah_chips.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "gregtech:items/metaitems/food/naquadah_chips" + } +} diff --git a/src/main/resources/assets/gregtech/textures/items/metaitems/food/naquadah_chips.png b/src/main/resources/assets/gregtech/textures/items/metaitems/food/naquadah_chips.png new file mode 100755 index 0000000000000000000000000000000000000000..30e4e836563f30b04d5268786d96d6667d8de41d GIT binary patch literal 2097 zcmYLK2{hDe8~;y}`HNu`Ds*SawW}s&Nz<6ID?8aPnUeixDKxUpn5+@Pge+q#d#FB3 zVPsO_+L!8PiDV2@mMIzycieNn?|aYtp65BwdEVbS&+q-6-?BPMI0v?TPv92X5vPjuNkTpjoYOTRl05rmvBOowT{Qu%Af1 zUsj&!pzPs{9H&3@HGM|y8}`Z7CiOCy!gBx|zh+|}{KMOWP-m3@j z2%h&_Wpc6VH}hL=c;`FAKFk&>d4=`2EQoIW`l9FUrGxGpQWP9!FQ*=Ptt$##aq7RQ zRGSAWCwnlV)s`+9MMVgJsI7Gnz=2uF$8Ts)WSBBiFaWN{27!ExtMc}?27j2-+S!VN-Q+N40sH^j8ooTKIbep22Z?Ud*vuVU;199ASHxL69tfIAXVxV z0FVh{0ZlSz<6UfA#H7!?o1>S*WE!=vyGs1l@O1XHbe%|P3<0nz#K!&2HufqKIVRBb zUaCHf>X2`2?*TST2;Vz!sW@Un^1BLv^O7FaKHyS&!oEh=1y4SibxmbBHF3xxA?8`&cB8rnhGvp>p@BKuIgNan@?n0j?5HdH zA);~QuVHX_NKR$3o=BRLIeD{Jk;k89LHyEXQxKt=e66C!lY=l-=|}=ucEDiUk}jX~ zqZ`|*gcn6LU4aS?;!po;KDnjKE~X>@Wmfj=(&4p#$qewQopzPmmr<@D&o0$IFclVU2^W;Pq|}<|7en04-3d#B@LSSCBxT_*U{&nmaKfo^WUl&y+4Y6Yf7gDgEQoV5iOHq zDm8wodsIYZ4L*Lyhi>0MC}x9IJc>d2bmiLrb=WyB^4AquW40+s5Xjb5TQ5$Lw6A{J z)#yt@T&;Zjb>?-d>zB9^yIJf@iVZ>@dL{gjBW>c4a8u~n_AqeGS7k_yDbGWEjSp;vcV0Jon7j=M zS;IYxL4U_2au7#(6qOMz}s*<@$lIw|-GUo}SG0&}CZ zLcR&LU9X?J9O1SXy~1 zO9Cy)gWkiM&q4fo1{AO|Nr?ex1ceCf0sd#QF6F;bEuc~8@NcL=OnQ3xk(?q}*p(^G%QWXLj0oBfis2oDZcIVF5Edg$+tQWtX`Tf;! z!qPX?@1c_t9U7-U>Irt<<|WO_gj=sM@2Z-ME%Ggq6Jq}X{ch2R literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/gregtech/textures/items/metaitems/food/naquadah_chips.png.mcmeta b/src/main/resources/assets/gregtech/textures/items/metaitems/food/naquadah_chips.png.mcmeta new file mode 100755 index 00000000..3d932eea --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/metaitems/food/naquadah_chips.png.mcmeta @@ -0,0 +1,6 @@ +{ + "animation": { + "interpolate": true, + "frametime": 2 + } +} diff --git a/src/main/resources/assets/gregtechfoodoption/lang/en_us.lang b/src/main/resources/assets/gregtechfoodoption/lang/en_us.lang index 92ad4e93..40789893 100644 --- a/src/main/resources/assets/gregtechfoodoption/lang/en_us.lang +++ b/src/main/resources/assets/gregtechfoodoption/lang/en_us.lang @@ -688,6 +688,7 @@ metaitem.seed.onion.tooltip=For growing YoungOnions death.attack.extermination=%s was exterminated death.attack.extraction=%s's internal organs were harvested death.attack.cyanide=%s smelled some almonds +death.attack.lung_cancer=%s died of lung cancer gregtechfoodoption.machine.mob_exterminator.tooltip.warning=§cThis can easily kill You as well! # Farmer @@ -1196,4 +1197,17 @@ gregtechfoodoption.machine.kitchen.tooltip.3=Place singleblock Machines on the p gregtechfoodoption.machine.kitchen.tooltip.4=Any size larger than the Preview up to 15x15 is fine. gregtechfoodoption.machine.kitchen.tooltip.5=§4Requires cleaning Products to remain efficient! -gregtechfoodoption.seed.water_crop=Must be placed in one block of water \ No newline at end of file +gregtechfoodoption.seed.water_crop=Must be placed in one block of water + +metaitem.food.pie.fermented_chorus.name=Fermented Chorus Pie +gregtechfoodoption.potion.enhancedchorus=Enhanced Chorus +metaitem.food.sorbet.apple=Apple Sorbet +metaitem.food.sorbet.apricot=Apricot Sorbet +metaitem.food.sorbet.chorus=Chorus Sorbet +metaitem.food.sorbet.grape=Grape Sorbet +metaitem.food.sorbet.lime=Lime Sorbet +metaitem.food.sorbet.vibrant=Vibrant Sorbet +metaitem.food.fermented_chorus.name=Fermented Chorus + +metaitem.food.naquadah_chips.name=Naquadah Chips +metaitem.food.naquadah_chips.tooltip=Your scientists were so preoccupied with whether or not they could, they didn't stop to think if they should. \ No newline at end of file diff --git a/src/main/resources/assets/gregtechfoodoption/textures/gui/potions.png b/src/main/resources/assets/gregtechfoodoption/textures/gui/potions.png index adcdcdf456a30fccdb49c764489bcef2fc95dd77..4cfd8940ced9dbde98bf85a6c0d8c7fb79af7b00 100644 GIT binary patch delta 9006 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 delta 8341 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 From 1f772dc6bf52a98fa4c8259c1f572adc323154b5 Mon Sep 17 00:00:00 2001 From: bruberu <80226372+bruberu@users.noreply.github.com> Date: Wed, 31 Jul 2024 20:48:46 -0500 Subject: [PATCH 9/9] feat: enderios recipe! (and remove the crafting recipe) --- .../java/gregtechfoodoption/CommonProxy.java | 10 ++++-- .../java/gregtechfoodoption/GTFOValues.java | 3 +- .../GregTechFoodOption.java | 2 +- .../enderio/GTFOEIORecipeHandler.java | 27 ++++++++++++++ .../gregtechfoodoption/item/GTFOMetaItem.java | 20 ++++++++++- .../recipe/GTFORecipeAddition.java | 5 +++ .../recipe/GTFORecipeRemoval.java | 6 ++++ .../recipe/chain/BreadsChain.java | 6 ++++ .../recipe/chain/CapletChain.java | 13 +++++++ .../item/metaitems/food/caplet/chorus.json | 6 ++++ .../item/metaitems/food/caplet/vibrant.json | 6 ++++ .../item/metaitems/food/sandwich/vibrant.json | 6 ++++ .../items/metaitems/food/caplet/chorus.png | Bin 0 -> 5462 bytes .../items/metaitems/food/caplet/vibrant.png | Bin 0 -> 575 bytes .../items/metaitems/food/sandwich/vibrant.png | Bin 0 -> 6165 bytes .../assets/gregtechfoodoption/lang/en_us.lang | 33 ++++++++++++++---- 16 files changed, 130 insertions(+), 13 deletions(-) create mode 100644 src/main/java/gregtechfoodoption/integration/enderio/GTFOEIORecipeHandler.java create mode 100755 src/main/resources/assets/gregtech/models/item/metaitems/food/caplet/chorus.json create mode 100755 src/main/resources/assets/gregtech/models/item/metaitems/food/caplet/vibrant.json create mode 100755 src/main/resources/assets/gregtech/models/item/metaitems/food/sandwich/vibrant.json create mode 100755 src/main/resources/assets/gregtech/textures/items/metaitems/food/caplet/chorus.png create mode 100755 src/main/resources/assets/gregtech/textures/items/metaitems/food/caplet/vibrant.png create mode 100755 src/main/resources/assets/gregtech/textures/items/metaitems/food/sandwich/vibrant.png diff --git a/src/main/java/gregtechfoodoption/CommonProxy.java b/src/main/java/gregtechfoodoption/CommonProxy.java index d8ed7137..74486229 100644 --- a/src/main/java/gregtechfoodoption/CommonProxy.java +++ b/src/main/java/gregtechfoodoption/CommonProxy.java @@ -37,6 +37,8 @@ import net.minecraftforge.fml.common.Loader; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.Optional; +import net.minecraftforge.fml.common.event.FMLInterModComms; +import net.minecraftforge.fml.common.event.FMLLoadCompleteEvent; import net.minecraftforge.fml.common.eventhandler.EventPriority; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import net.minecraftforge.registries.IForgeRegistry; @@ -83,6 +85,9 @@ public void onPostLoad() { if (Loader.isModLoaded(GTFOValues.MODID_NUGT) && GTFOConfig.gtfoOtherFoodModConfig.enableGTFONutrition) { GTFONutritionCompatibility.init(); } + + GTFOLog.logger.info("Removing recipes during post init (thanks Ender IO!)"); + GTFORecipeRemoval.init(); } @SubscribeEvent @@ -157,11 +162,11 @@ private static ItemBlock createItemBlock(T block, Function event) { GTFOLog.logger.info("Registering recipe very low..."); - GTFORecipeRemoval.init(); + GTFORecipeAddition.compatInit(); } - @SubscribeEvent + @SubscribeEvent @Optional.Method(modid = "enderio") public static void registerEIOFarmerJoes(@Nonnull RegistryEvent.Register event) { for (GTFOCrop crop : CROP_BLOCKS) { @@ -180,7 +185,6 @@ public static void registerEIOFarmerJoes(@Nonnull RegistryEvent.Register imple public static MetaItem.MetaValueItem NAQUADAH_CHIPS; + public static MetaItem.MetaValueItem CHORUS_CAPLET; + public static MetaItem.MetaValueItem VIBRANT_CAPLET; + public static MetaItem.MetaValueItem SANDWICH_VIBRANT; + public GTFOMetaItem() { super((short) 0); } @@ -621,7 +625,7 @@ public void registerSubItems() { PORCHETTA = addItem(310, "component.porchetta") .addComponents(new GTFOFoodStats(7, 0.7f).setEatingDuration(50) - .nutrients(0, 0, 0, 0.5f, 0.1f)); + .nutrients(0, 0, 0, 0.5f, 0.1f)); AGED_PARMIGIANO_ROLL = addItem(312, "component.aged_parmigiano_roll").blacklistKitchen(); BRINED_PARMIGIANO = addItem(313, "component.brined_parmigiano").blacklistKitchen(); @@ -1121,6 +1125,18 @@ public void registerSubItems() { .nutrients(0, 0f, 1f, 0f, 1f) .setPotionEffects(new RandomPotionEffect(MobEffects.BLINDNESS, 500, 0, 100 - 100))); + CHORUS_CAPLET = addItem(355, "food.caplet.chorus").addComponents(new GTFOFoodStats(0, 1f, false, true, ItemStack.EMPTY) + .setPotionEffects(new RandomPotionEffect(EnhancedChorusPotion.INSTANCE, 300, 0, 100 - 100))); + VIBRANT_CAPLET = addItem(356, "food.caplet.vibrant").addComponents(new GTFOFoodStats(0, 1f, false, true, ItemStack.EMPTY) + .setPotionEffects(new RandomPotionEffect(CreativityPotion.INSTANCE, 600, 0, 100 - 60), + new RandomPotionEffect(MobEffects.POISON, 600, 2, 100 - 90))); + + SANDWICH_VIBRANT = addItem(357, "food.sandwich.vibrant").addComponents(new GTFOFoodStats(7, 0.8f) + .setEatingDuration(40) + .nutrients(0f, 1f, 1f, 1f, 0f) + .setPotionEffects(new RandomPotionEffect(CreativityPotion.INSTANCE, 1200, 0, 100 - 80), + new RandomPotionEffect(MobEffects.POISON, 1200, 2, 100 - 100))); + UNKNOWN_SEED = addItem(158, "seed.unknown"); ONION_SEED = addItem(159, "seed.onion"); ONION_SEED.addComponents(new GTFOCropSeedBehaviour(GTFOCrops.CROP_ONION, ONION_SEED.getStackForm(), ONION.getStackForm())); @@ -1264,9 +1280,11 @@ public boolean hasEffect(ItemStack stack) { public class GTFOMetaValueItem extends MetaItem.MetaValueItem { private boolean kitchenBlacklisted; + protected GTFOMetaValueItem(int metaValue, String unlocalizedName) { super(metaValue, unlocalizedName); } + private boolean hasEnchantmentSheen; public void setHasEnchantmentSheen(boolean hasEnchantmentSheen) { diff --git a/src/main/java/gregtechfoodoption/recipe/GTFORecipeAddition.java b/src/main/java/gregtechfoodoption/recipe/GTFORecipeAddition.java index c534fdb7..ed70aa20 100644 --- a/src/main/java/gregtechfoodoption/recipe/GTFORecipeAddition.java +++ b/src/main/java/gregtechfoodoption/recipe/GTFORecipeAddition.java @@ -2,6 +2,7 @@ import gregtechfoodoption.GTFOConfig; import gregtechfoodoption.GTFOValues; +import gregtechfoodoption.integration.enderio.GTFOEIORecipeHandler; import gregtechfoodoption.worldgen.trees.GTFOTree; import gregtechfoodoption.recipe.chain.*; import gregtechfoodoption.tools.GTFOToolItems; @@ -37,6 +38,7 @@ public static void init() { BerryChain.init(); RussianChain.init(); ChorusChain.init(); + SorbetChain.init(); if (Loader.isModLoaded(GTFOValues.MODID_GCYS)) { PopcornChain.init(); @@ -53,5 +55,8 @@ public static void compatInit() { VanillaOverrideChain.init(); CoffeeChain.init(); SmogusChain.init(); + if (Loader.isModLoaded(GTFOValues.MODID_EIO)) { + GTFOEIORecipeHandler.enderios(); + } } } diff --git a/src/main/java/gregtechfoodoption/recipe/GTFORecipeRemoval.java b/src/main/java/gregtechfoodoption/recipe/GTFORecipeRemoval.java index c2733fad..ddd4e545 100644 --- a/src/main/java/gregtechfoodoption/recipe/GTFORecipeRemoval.java +++ b/src/main/java/gregtechfoodoption/recipe/GTFORecipeRemoval.java @@ -4,6 +4,9 @@ import de.ellpeck.actuallyadditions.mod.items.InitItems; import de.ellpeck.actuallyadditions.mod.items.metalists.TheMiscItems; import gregtech.api.recipes.ModHandler; +import gregtechfoodoption.GTFOValues; +import gregtechfoodoption.integration.enderio.GTFOEIORecipeHandler; +import gregtechfoodoption.integration.nc.GTFONCRecipeHandler; import net.minecraft.item.ItemStack; import net.minecraft.util.ResourceLocation; import net.minecraftforge.fml.common.Loader; @@ -22,5 +25,8 @@ public static void init() ModHandler.removeRecipeByName(new ResourceLocation("actuallyadditions:recipes218")); } } + if (Loader.isModLoaded(GTFOValues.MODID_EIO)) { + GTFOEIORecipeHandler.removeEnderios(); + } } } diff --git a/src/main/java/gregtechfoodoption/recipe/chain/BreadsChain.java b/src/main/java/gregtechfoodoption/recipe/chain/BreadsChain.java index ec3c5149..6a32d7c6 100644 --- a/src/main/java/gregtechfoodoption/recipe/chain/BreadsChain.java +++ b/src/main/java/gregtechfoodoption/recipe/chain/BreadsChain.java @@ -22,6 +22,7 @@ import static gregtech.api.unification.ore.OrePrefix.dust; import static gregtech.common.items.MetaItems.SHAPE_MOLD_CYLINDER; import static gregtechfoodoption.GTFOMaterialHandler.TomatoSauce; +import static gregtechfoodoption.GTFOMaterialHandler.VibrantExtract; import static gregtechfoodoption.item.GTFOMetaItem.*; import static gregtechfoodoption.recipe.GTFORecipeMaps.*; @@ -274,6 +275,11 @@ public static void init() { .inputs(PRESLICED_BREAD.getStackForm(), BACON.getStackForm(4)) .outputs(SANDWICH_BACON.getStackForm()) .buildAndRegister(); + CUISINE_ASSEMBLER_RECIPES.recipeBuilder().EUt(120).duration(120) + .inputs(SANDWICH_BACON.getStackForm()) + .fluidInputs(VibrantExtract.getFluid(100)) + .outputs(SANDWICH_VIBRANT.getStackForm()) + .buildAndRegister(); CUISINE_ASSEMBLER_RECIPES.recipeBuilder().EUt(24).duration(120) .inputs(PRESLICED_BREAD.getStackForm(3), CHEDDAR_SLICE.getStackForm(3)) .circuitMeta(2) diff --git a/src/main/java/gregtechfoodoption/recipe/chain/CapletChain.java b/src/main/java/gregtechfoodoption/recipe/chain/CapletChain.java index 161a9fc0..b866de1f 100644 --- a/src/main/java/gregtechfoodoption/recipe/chain/CapletChain.java +++ b/src/main/java/gregtechfoodoption/recipe/chain/CapletChain.java @@ -88,5 +88,18 @@ public static void init() { .outputs(PLUTONIUM_241_CAPLET.getStackForm()) .buildAndRegister(); + // Chorus + CANNER_RECIPES.recipeBuilder().EUt(30).duration(100) + .inputs(CAPLET_BODY.getStackForm()) + .fluidInputs(FermentedChorusJuice.getFluid(100)) + .inputs(CAPLET_CAP.getStackForm()) + .outputs(CHORUS_CAPLET.getStackForm()) + .buildAndRegister(); + CANNER_RECIPES.recipeBuilder().EUt(30).duration(200) + .inputs(CAPLET_BODY.getStackForm()) + .fluidInputs(VibrantExtract.getFluid(100)) + .inputs(CAPLET_CAP.getStackForm()) + .outputs(VIBRANT_CAPLET.getStackForm()) + .buildAndRegister(); } } \ No newline at end of file diff --git a/src/main/resources/assets/gregtech/models/item/metaitems/food/caplet/chorus.json b/src/main/resources/assets/gregtech/models/item/metaitems/food/caplet/chorus.json new file mode 100755 index 00000000..ea2c4a8f --- /dev/null +++ b/src/main/resources/assets/gregtech/models/item/metaitems/food/caplet/chorus.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "gregtech:items/metaitems/food/caplet/chorus" + } +} diff --git a/src/main/resources/assets/gregtech/models/item/metaitems/food/caplet/vibrant.json b/src/main/resources/assets/gregtech/models/item/metaitems/food/caplet/vibrant.json new file mode 100755 index 00000000..7a80f9bd --- /dev/null +++ b/src/main/resources/assets/gregtech/models/item/metaitems/food/caplet/vibrant.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "gregtech:items/metaitems/food/caplet/vibrant" + } +} diff --git a/src/main/resources/assets/gregtech/models/item/metaitems/food/sandwich/vibrant.json b/src/main/resources/assets/gregtech/models/item/metaitems/food/sandwich/vibrant.json new file mode 100755 index 00000000..4b7e3a62 --- /dev/null +++ b/src/main/resources/assets/gregtech/models/item/metaitems/food/sandwich/vibrant.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "gregtech:items/metaitems/food/sandwich/vibrant" + } +} diff --git a/src/main/resources/assets/gregtech/textures/items/metaitems/food/caplet/chorus.png b/src/main/resources/assets/gregtech/textures/items/metaitems/food/caplet/chorus.png new file mode 100755 index 0000000000000000000000000000000000000000..f577aaec7b219b024fd60415a0a6fc529919b5e6 GIT binary patch literal 5462 zcmeHLX;2f{77l^|gA1bwh&qI@quCQkV#1mTK|o}YMNpfh6IuufNdp1Fg~b6Eh&m%a zMFbH=9br&m1XmPvL`M`vP!arp{WU-%zw-qaI21}JA~`Sw_6HKNGPzU)#ei5iNd{s;B_u+j zls5;0L*>1U@$c^2-P6-K{TCzrz&*5LIH^N8$JgGsDdJsoWT=iSMp>tA8(R6{{lG)B zaPP&l1gWyC%ncX0Q<$!L$q`9i{Ow7%v{N&5Pt;hO*t-&=O_KVjzfeKBy$NpOcVsxp zOZ7;CD>>Mh`{wurxiUJ+!XT_5zH?HH`HWV*AV!~L_DR9O7HsZN9RJ1Y6?<#z!(_|deuP>E zAKq%&%vp0eBYef{E`@F0ecjaOdFy5tKnUexF#FuuU3J2T+3pr=;$Sa#wdBfO#Rn*Z6kH&Dri-BmBVf7!LXsT)a z%gH4;dPu`1bBh$9sL#PSF*B{qEBK7RwTT7$*}$H~5p8cvt#C8TLbQx?AL?Ly3Rl7* z=((kj3vW*AZthx~9;}s~u!gxboiDER7S8+q&L;kmrA53``wLP!(FVAqRjBk`l-)D4 zt#r8sH>Q}Yv~;XoJm_+?wh$k@N_cIjHnVi%>vPnCd;V3&uQ7t^Z7X{GYPH5&slfHT z_sS_M_X}(3*TcjoCOF)@Q@5c(arsyr+lJVs?BDUq$<{0tGuivM+OcMCS?0W)wBGi) z*P!v_b3b>}YUO8|$Laeww6c)43qNN6ImLzr__%ZoWU!Rt<&>wr)KQ`ZM-T$6#$XYXdjEJ9fUy#1!lpp)p0vBYw2*n zy=#Soyn6*n%X2GPU6VmdRf9|?NPqvN=XlGB(DB92k6Og~iw8cKzUf>O7LoGO(#yV| zX7i%Y>Qd-s<+y}=IWaWIIZeyZzdzq^pHY;p>AX_=;SRU-Nh;qJ7qs|`oNM>3a8+6p zf;wkR3QxH$zdrl%!VE=bj_87iWN!z%t0VA|X}s(016&2e33sY>dFxNRe=Rp$wEOzA zd{-zK7iN2jk!}=ud{2}A9+TBj^t`?qHqrU>e(pKR8%izrebBVR!{perFqHrbMGC)Q|{ho z2OV+6`9TBw4)+zc1#FVgi8DzU^tp*Rvq2w(G@}9O8A9-O|NLVnldMo~5&9J=ODZ-P!lBReZ z{!XVp^+W3wGit^M%c(1sEgw$HyOoCu^Mg<*t#ruU-H-3?{;AO*?Ik~cqqFB(7sGR> zs+Mu>6AY&QaLI4SY|p82l^9;>On5sxQz>6Xeu&T1q zcA8FEqfG`k)myK;`()06CB(MzdKc;rT_=J22Q zrM0}=v*cQKUW8@Nl=EvPzgCiG#ic8^Fv_M|5B>DqsXr|-d-L3qb1Poi`I_Lj_D8$z z6_1Bz3&vuEQKd!eF*7Vnx9t`l4_k%tUE*-)+Kyf8=e*sJyaH1lb;loF{2!}8;L7nQ ztB-E}5Zc~O<=?XNy4)!(d+Vg-sq1ohux5$4tevfkD?h#C#GV}HDb%w3;3~z-s{2M)sCWL- zx${a}hXhYOaj;l{ybqKR()UAryjcRNga8Poksv`Sksu$w%f6MnRs*axfs-H&BoqEno_9&Q2J%l7#?BKp4O(B{8uImXd?h z;Ifc=wU~&*YE0m04lcyU59=bUhl9@~EM6X?Nk=Fkf-#^3F;yU=lD`_#gYV<_*+Wf%7?Q{|UI^J= zS;CO$3t3;qrq*cE8661X{u%cx>rc6Bj1emz9~M_Ch*yWl=W=lB@mWHt01~n^w`71q zCo@GNJcUXE@ic$|;+a%3h!@gGWB~&d(5WKoC@6lc0tR9Qpc)DRCqM{}Bb7|2J490O zWQvf2r$v&;c!rSdhz9_X16>HvnF7IRi1~5|sY)PbbX006Ap+&Vq>&i{Ar(&*Q0aIY zl}f@h$%05c6+q$?0Sreb1JFbx6tLz>`|FMdAG#lJWL0{wlEZ{qhm zUEk^YCI-IA_sUbij9Ku z3ZLNRd%7iFDLwNB#0F;`Q6O z=uj8Sg}k6Z9+ou5f@E6v=AHMPp0;(i$!qT^_x3n_STo<0`?R3x*bxVWaulEE%Pn(T Gn)Y9=0zHWU literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/gregtech/textures/items/metaitems/food/caplet/vibrant.png b/src/main/resources/assets/gregtech/textures/items/metaitems/food/caplet/vibrant.png new file mode 100755 index 0000000000000000000000000000000000000000..cb0e5e0aadee4fe3391b5fb4f488f87f5bff9ea3 GIT binary patch literal 575 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